Технология инжиниринга трафика преодолевает ограничения традиционной маршрутизации IP за счет оптимизации общей производительности сети.
Хотя маршрутизация IP позволила сделать огромный шаг вперед в том, что касается обеспечения соединения, вопросы повышения эффективности передачи информации остаются по-прежнему актуальными. Резервирование ресурсов и, в частности, оптимизация производительности рассматриваются как второстепенная задача маршрутизации IP, а основное внимание фокусируется на поддержке соединения в противовес таким более тонким вопросам, как эффективный выбор пути и сокращение числа узких мест.
Это происходит потому, что протоколы маршрутизации IP не были предназначены для оптимизации производительности сети; их главная цель — обеспечить связь при изменении топологии или возникновении сетевых ошибок. При маршрутизации IP кратчайший путь к адресату зачастую выбирается на основе простых параметров, таких, как задержка. Подобный подход оправдывает себя в случае применения в Internet модели «по мере возможности», но он не в состоянии предложить адекватную поддержку эффективного резервирования и оптимизации ресурсов.
Рассмотрим для примера резервирование пропускной способности. Сейчас маршрутизация IP не имеет необходимой информации о конкретных каналах для нахождения пути с определенной пропускной способностью. Выбор маршрута на основе алгоритма кратчайшего пути с учетом ограничений на пропускную способность скорее всего приведет к резкому росту числа отвергнутых пакетов и неэффективному использованию ресурсов. Маршрутизация по кратчайшему пути часто создает несбалансированное распределение трафика, в результате чего на одних участках сеть не справляется с нагрузкой, в то время как в других ее частях уровень трафика весьма невелик.
Оптимизация производительности требует реализации дополнительных возможностей в маршрутизации IP и создания более качественного инструментария управления. Для оптимизации уровня использования сетевых ресурсов необходимо следить за тем, чтобы объем передаваемого трафика точно соответствовал возможностям сетевых ресурсов вдоль его пути.
Процесс оптимизации производительности сети, так называемый «инжиниринг трафика», задействует усовершенствованные алгоритмы выбора пути для организации каналов передачи трафика в сетевых магистралях и распределения потоков трафика с целью максимального увеличения общей эффективности сети. В данной статье мы рассмотрим некоторые базовые проблемы маршрутизации IP, подходы к оптимизации уровня использования ресурсов, основные элементы системы инжиниринга трафика, а также поговорим о том, как эти элементы взаимодействуют друг с другом.
«РЫБА» В МАРШРУТИЗАЦИИ IP
При маршрутизации IP решения принимаются на основе таких параметров, как число промежуточных узлов или задержка. Хотя в силу простоты подобного подхода маршрутизация IP хорошо масштабируется, как правило, в этом случае не удается оптимизировать уровень использования ресурсов в сетевой магистрали. Указанные недостатки можно проиллюстрировать на примере «проблемы рыбы» (см. Рисунок 1). В данной топологии, напоминающей по форме рыбу, узел G представляет голову «рыбы», а узлы A и B — хвост. Трафик передается с узлов A и B на узел G.
![]() |
Рисунок 1. «Проблема рыбы» показывает, что маршрутизация IP в Internet может привести к неэффективному использованию ресурсов. |
От хвоста рыбы к ее голове можно добраться двумя путями: C-D-F или C-E-F. Если C-D-F короче, чем C-E-F, то маршрутизация IP выберет кратчайший путь (C-D-F) для всего трафика, передаваемого с обоих узлов A и B на узел G. Это значит, что на маршруте C-D-F нагрузка окажется очень большой, а маршрут C-E-F вообще не будет задействован.
«Проблема рыбы» возникает из-за двух особенностей маршрутизации IP. Во-первых, по своей природе маршрутизация ориентирована на получателя. При передаче по протоколу IP все пакеты, адресаты которых имеют один и тот же префикс, будут отправляться на следующий общий для всех них промежуточный узел. Это значит, что в таблице маршрутизации для каждого адресата обычно существует только один путь (из этого правила бывает исключение, когда имеется несколько путей с одинаковой стоимостью).
Маршрутизация в соответствии с адресатом не всегда дает возможность задействовать все разнообразные соединения, существующие в сети. Распределение трафика обычно предсказать очень сложно, и зачастую оно несбалансированно. В силу этого ресурсы на многих участках сети могут использоваться недостаточно эффективно.
Вторая потенциально неприятная особенность маршрутизации IP состоит в том, что маршруты рассчитываются с учетом локальной оптимизации. Поскольку каждый узел выбирает путь со своей «точки зрения», в рамках всей сети такой выбор может оказаться неоптимальным. На Рисунке 1, к примеру, кратчайший путь может оказаться самым напряженным, поскольку множество узлов в сети могут выбрать его независимо друг от друга. В данном случае длинный путь может оказаться более эффективным. Чтобы оптимизировать использование ресурсов в масштабах всей сети, решение о маршрутизации должно приниматься с учетом назначения всей сети и общего представления о ней.
В исключительных случаях маршрутизация по кратчайшему пути может привести к осцилляции маршрутов. Вернемся опять к Рисунку 1. Предположим, что в определенный момент протокол маршрутизации выбрал C-D-F в качестве кратчайшего пути от C к F. Поскольку весь трафик будет передаваться именно по этому пути, то данный маршрут будет перегружен, в то время как маршрут C-E-F вообще не задействуется. При следующем обновлении таблицы маршрутизации протокол маршрутизации может посчитать, что маршрут C-E-F предпочтительнее, и выбрать его в качестве кратчайшего пути от C к F. В результате подобного изменения весь трафик окажется переведен с маршрута C-D-F на маршрут C-E-F. Это значит, что теперь будет простаивать канал C-E-F. Выбор пути изменится при следующем обновлении таблицы маршрутизации, и рассматриваемый процесс, теоретически, может продолжаться до бесконечности.
НЕХОЖЕНЫЕ ТРОПЫ
Первая проблема может быть решена только путем преодоления ограничений маршрутизации в соответствии с адресатом и внедрением в сети механизмов управления трафиком.
В прошлом крупные провайдеры услуг решали подобные вопросы за счет применения технологии IP поверх ATM. Распределением трафика в магистралях ATM можно эффективно управлять с помощью отображения виртуальных каналов ATM на топологию физической сети. За прошедший год основным механизмом инжиниринга трафика в сетях IP стала многопротокольная коммутация с использованием меток (Multiprotocol Label Switching, MPLS). Расширения для протоколов распространения меток MPLS и протоколов маршрутизации IP утверждаются в качестве стандартов в IETF.
Подход к инжинирингу трафика на базе MPLS ориентируется на наложенную модель. Провайдеры услуг используют MPLS для создания виртуальной сети, которая включает в себя полную сеть логических соединений между всеми пограничными узлами. Эти логические соединения могут представлять собой заданные явным образом точные маршруты, реализуемые путем резервирования пропускной способности. Поставленные перед инжинирингом трафика цели достигаются с помощью организации явно заданных маршрутов в физической сети так, чтобы распределение трафика по всем магистралям в сети было сбалансированным.
Наложенный подход эффективно работает, если применяется протокол пограничной маршрутизации (Border Gateway Protocol, BGP). В обычной магистрали Internet пограничные узлы представляют собой маршрутизаторы BGP, связанные с другими доменами маршрутизации. Для обмена информацией с другими доменами маршрутизаторы BGP должны установить друг с другом одноранговые отношения. Эти логические одноранговые соединения могут отображаться с помощью наложенного подхода на пути MPLS с коммутацией меток (Label Switched Path, LSP). Сформированные между всеми парами краевых маршрутизаторов. MPLS LSP могут использоваться в качестве замены маршрутов между маршрутами BGP, которые, как правило, предоставляются протоколом внутренней маршрутизации (Interior Gateway Protocol, IGP), таким, как протокол выбора кратчайшего свободного пути (OSPF). MPLS LSP могут определяться с учетом целей инжиниринга трафика, а не только на основе параметров маршрутизации IGP, что позволяет более эффективно использовать ресурсы.
В представленной на Рисунке 2 магистральной сети A, B, C, D и E — пограничные маршрутизаторы, связанные с внешними доменами маршрутизации. (Сплошными линиями на рисунке отмечены физические каналы, а пунктирными — логические соединения.) При наложенном подходе виртуальная сеть формируется с помощью логических соединений между всеми парами краевых узлов. Эти логические соединения могут быть организованы в виде MPLS LSP с явно заданным управлением по конкретным маршрутам в рамках физической топологии.
![]() |
Рисунок 2. Пример наложенного подхода для выполнения инжиниринга трафика, когда требуется полносвязная сеть соединений. |
Проанализируем MPLS LSP между узлами A и C на Рисунке 2, чтобы понять, в чем состоят преимущества наложенного подхода. Между узлами A и C возможны четыре пути: A-G-H-C, A-F-H-C, A-G-F-H-C и A-F-G-H-C. Предположим, что кратчайший путь из A в C — это A-G-H-C; в таком случае маршрутизация по кратчайшему пути выберет именно этот маршрут. Наложенный подход значительно более гибкий, чем маршрутизация по кратчайшему пути. В данной ситуации возможен любой из четырех путей, и выбор одного из них может быть сделан с учетом объема трафика между двумя узлами. Если между узлами A и B, к примеру, уровень трафика высок, то LSP может быть проложен из A в C через A-F-H-C; при этом вся пропускная способность канала A-G будет использоваться для передачи трафика между узлами A и B.
Несмотря на свою простоту и эффективность, наложенный подход может привести к определенным ограничениям масштабируемости (в данной статье эта проблема называется проблемой «N в квадрате»). Чтобы сформировать все возможные логические соединения между N пограничными узлами, каждый из них должен установить LSP с (N-1) других узлов, так что в итоге количество LSP будет равно N x (N-1). В крупной сетевой магистрали, где существует множество краевых узлов, подобный подход не будет масштабироваться приемлемым образом.
КОМПОНЕНТЫ ИНЖИНИРИНГА ТРАФИКА
Чтобы в полной мере воспользоваться преимуществами наиболее эффективных методик инжиниринга трафика, сначала следует понять, из каких элементов состоит система инжиниринга трафика. Система, изображенная на Рисунке 3, имеет шесть основных компонентов: выявление топологии/состояния, вычисление маршрута, оценка требований трафика, графический пользовательский интерфейс, сетевой интерфейс и хранилища данных.
![]() |
Рисунок 3. Шесть основных компонентов системы инжиниринга трафика. |
Модуль хранилища данных системы инжиниринга трафика состоит из центральной базы данных и постоянной памяти для всех разделяемых объектов данных, таких, как топология сети, информация о состоянии канала, требования трафика, маршруты и правила. Другие модули могут хранить информацию, получать к ней доступ и обмениваться ею через базу данных. Кроме того, каждый объект имеет соответствующую машину состояний, где каждый переход связан с модулем-отправителем, входным событием, модулем-получателем и выходным событием.
Эффективной системе инжиниринга трафика необходима точная информация о требованиях трафика. В некоторых ситуациях, например для службы виртуальной частной сети (VPN), эти требования могут быть указаны в соглашении об уровне сервиса (Service Level Agreement, SLA) между провайдером услуг и клиентом. В других случаях требования оцениваются на основе параметров трафика. Многие виды статистических данных теперь можно получить из сети, в том числе уровень его объема в конкретных каналах и результаты анализа по типам трафика. Однако инжиниринг трафика, как правило, использует совокупные статистические параметры трафика, и для оптимизации маршрута должен быть известен объем трафика между всеми парами входных и выходных узлов.
Как только система инжиниринга трафика определила оптимальные маршруты в соответствии с требованиями трафика, она должна сконфигурировать элементы сети так, чтобы эти требования выполнялись. Система инжиниринга трафика может взаимодействовать с сетевыми элементами самыми разными способами. Сейчас, к примеру, все популярнее становятся встроенные серверы Web. Когда сервер Web встроен в контроллер сетевого элемента, система инжиниринга трафика может конфигурировать такой элемент через интерфейс на базе Web.
Хотя данный подход достаточно гибок, эти виды интерфейса специфичны для решений конкретных производителей и не могут взаимодействовать с интерфейсами других разработчиков. Альтернативный подход на базе стандартов состоит в использовании SNMP для конфигурации сетевых элементов. Совсем недавно в качестве стандарта была предложена единая служба открытых правил (Common Open Policy Service, COPS), с помощью которой система инжиниринга трафика может сообщать пограничному узлу о необходимости установить специфичные маршруты MPLS. Первоначально COPS создавалась как средство передачи на сервер информации о резервировании ресурсов, а также как механизм для сообщения сервером маршрутизаторам на границе сети о принятых с учетом заданных правил решениях.
Тот же самый механизм позволяет передавать результаты вычисления маршрута с сервера инжиниринга трафика на сетевые узлы. Точные маршруты могут быть вычислены на сервере централизованным образом, а затем доставлены на выходные узлы указанных маршрутов. Для установления этих точных маршрутов могут применяться протоколы распространения меток.
В следующих двух разделах мы более детально обсудим вопросы определения топологии/состояния и вычисления маршрутов.
РИСУЕМ КАРТУ
В системе инжиниринга трафика необходимо тщательно отслеживать изменения в топологии сети и состояние каналов, для чего используется несколько подходов. Например, некоторую информацию о топологии и состоянии можно найти в сетевой конфигурации, хотя это главным образом касается статических данных. Динамическую информацию — сведения о незадействованной пропускной способности или уровне загруженности канала — можно получить с помощью систем управления сетью, таких, как прерывания простого протокола управления сетью (SNMP) и системы опросов. Еще один подход заключается в расширении протоколов маршрутизации, например OSPF, так, чтобы они периодически рассылали информацию о состоянии канала.
Одно из преимуществ подхода на базе OSPF состоит в его широком применении, т. е. он уже имеет механизмы для распространения информации о статусе каналов и создания базы данных топологии. Расширение OSPF с целью поддержки определения топологии и состояния при инжиниринге трафика позволяет избежать применения дополнительного протокола для распространения подобной информации. Это должно ускорить темпы внедрения систем инжиниринга трафика в действующих сетях.
При использовании подхода на базе OSPF, все узлы сначала пытаются установить и поддерживать одноранговые отношения со своими соседями. Соседи узла представляют собой узлы, с которыми данный узел напрямую обменивается управляющей информацией. Каждый узел отслеживает состояние своего локального канала, и информация, касающаяся этого состояния, сообщается всем другим узлам в сети или станции управления сетью. Система инжиниринга трафика может использоваться для создания базы данных о топологии с помощью сведений о состоянии канала, получаемых при обмене сообщениями OSPF о маршрутизации.
Поскольку для инжиниринга трафика требуются не только те параметры, которые OSPF предоставляет в сообщениях о состоянии канала, предложенное расширение предполагает добавить к протоколу OSPF следующие сообщения о состоянии канала для инжиниринга трафика.
- IP-адреса канала для локального и удаленного интерфейса.
- Метрика инжиниринга трафика. Она используется только при вычислении маршрута с учетом ограничений.
- Максимальная пропускная способность. Этот параметр определяет максимальную величину пропускной способности, доступную для конкретного канала в определенном направлении.
- Максимальная резервируемая пропускная способность. Данная характеристика уточняет доступную для резервирования пропускную способность в конкретном канале в определенном направлении.
- Нерезервируемая пропускная способность. Указывает, какую долю пропускной способности нельзя зарезервировать.
- Атрибуты класса ресурсов. Эти присваиваемые администратором параметры описывают классы ресурсов.
Как только база данных о топологии и информация о состоянии канала получены, маршрутизация с учетом ограничений позволяет вычислить в сети маршруты в соответствии с заданными целями инжиниринга трафика.
АЛЬТЕРНАТИВНЫЕ ПУТИ
Центральным компонентом системы инжиниринга трафика является механизм вычисления маршрута в соответствии с требованиями трафика к сети. С точки зрения целей инжиниринга трафика выбор маршрута должен выходить за рамки относительно простого подхода определения кратчайшего пути и решать такие вопросы, как оптимизация ресурсов, восстановление и априорные (на основе приоритетов) ограничения. Выбор маршрута также называют маршрутизацией с учетом ограничений.
Маршрутизация с учетом ограничений может выполняться в двух разных режимах: автономно (off-line) или интерактивно (on-line). В автономном режиме вычисление маршрута осуществляется для всех маршрутов периодически, с учетом текущей информации, и в период обслуживания сеть разделяется на новые маршруты. Автономный подход, как правило, дает оптимальные результаты, поскольку все маршруты систематически повторно оптимизируются после сделанных изменений. Но поскольку частое крупномасштабное изменение маршрутов может разрушить потоки трафика, с практической точки зрения данный подход нежелателен. Кроме того, поскольку вычисление маршрута выполняется периодически, это приводит к накоплению дополнительных задержек по мере добавления в сеть новых требований трафика.
При интерактивной маршрутизации с учетом ограничений вычисление маршрута выполняется постепенно, шаг за шагом, по мере появления каждого нового требования трафика. Когда сделан новый очередной запрос, модуль вычисления маршрута определяет оптимальный маршрут только для нового требования; маршруты для существующих требований не меняются. Это минимизирует изменение маршрутов существующих потоков трафика, хотя использование ресурсов может оказаться не столь эффективным, как в случае автономной маршрутизации с учетом ограничений. Однако преимущества вычисления маршрута по требованию и минимизация влияния на существующий трафик часто оправдывают снижение эффективности.
Эти два режима маршрутизации с учетом ограничений могут быть скомбинированы в различные промежутки времени. Например, маршруты для новых требований могут формироваться шаг за шагом, а через определенный интервал, в период менее высокой нагрузки в сети, выполняется общая повторная оптимизация для всех требований.
Маршрутизация с учетом ограничений имеет два основных элемента: оптимизация маршрута и его размещение. Оптимизация маршрута отвечает за выбор маршрутов для требований трафика в соответствии с заданным набором ограничений. Как только маршруты определены, размещение маршрутов реализует их в сети так, что потоки трафика будут передаваться именно по ним.
Маршрутизация может производиться в соответствии с различными схемами с учетом ограничений. Некоторые из них основаны на передовых математических методах, используемых для оптимизации общей эффективности сетевых ресурсов, в других применяются эвристические подходы в рамках существующей инфраструктуры маршрутизации IP. Хотя их детальное описание выходит за рамки данной статьи, важно иметь в виду, что выбор наиболее приемлемого метода требует учета характеристик конкретной сети, в которой этот метод предполагается реализовать.
ОСТАВАЙТЕСЬ НА ПРАВИЛЬНОМ ПУТИ
По мере усложнения сетей и роста требований к ресурсам, инжиниринг трафика будет становиться все более важным средством управления сетевыми ресурсами, позволяя оптимизировать производительность, увеличивать общую эффективность и минимизировать нагрузки. Чтобы предоставить необходимый для таких сетей уровень инжиниринга трафика, предстоит преодолеть ограничения маршрутизации IP.
Но инжиниринг трафика — отнюдь не универсальное решение. Самые приемлемые методы инжиниринга трафика для сети конкретной организации будут зависеть от множества параметров, в том числе конфигурации сети, типа передаваемого трафика по сети и распределения спроса на ресурсы в рамках сети.
Женг Ванг является главным специалистом по системной архитектуре компании Teradiant Networks. С ним можно связаться по адресу: zheng@wang.net.
Ресурсы Internet
Превосходный обзор требований к инжинирингу трафика на основе Multiprotocol Label Switching (MPLS) можно найти в документе RFC 2702 «Требования к инжинирингу трафика на основе MPLS» («Requirements for Traffic Engineering Over MPLS,» (RFC 2702) D. Awduche, J. Malcolm, J. Agogbua, M. O?Dell, and J. McManus (September 1999)). Его электронную версию можно получить по адресу: http://www.ietf.org/rfc/rfc2702.txt.
Более подробная информация о рабочей группе IETF, занимающейся вопросами инжиниринга трафика в Internet, размещена на сайте Web по адресу: http://www.ietf.org/ html.charters/tewg-charter.html.