Успехи технологий Web и утверждение единого протокола IP в сетевой отрасли привели к появлению еще одной альтернативы: услугам глобальной сети через общедоступную сеть IP — Internet.

Многие услуги глобальных сетей, пользующиеся спросом в сфере бизнеса, в настоящее время реализуются с помощью выделенных линий, frame relay или сервисов ATM. Несмотря на высокую стоимость, они получили широкое распространение, что обусловлено надежными гарантиями качества и конфиденциальностью. Например, сеть frame relay обеспечивает гарантированный уровень пропускной способности (Commited Information Rate, CIR) и конфиденциальность посредством организации постоянных виртуальных соединений (Permanent Virtual Circuit, PVC). Помимо того, что технологии второго уровня недешевы, они, как правило, обеспечивают лишь соединение «точка-точка», что создает проблемы при масштабировании. Поскольку IP — это протокол третьего уровня, не предусматривающий установление соединений, он позволяет осуществлять связь «каждого с каждым» и потому предоставляет гораздо лучшие возможности масштабирования по сравнению с технологиями второго уровня. Однако при разработке технологии IP не ставилась задача сделать предоставляемые услуги надежными и прогнозируемыми. Большая часть трафика IP все еще доставляется «по мере возможности», практически без гарантии качества, хотя для многих приложений качество обслуживания может оказаться критическим фактором. Беспокойство вызывают и вопросы, связанные с конфиденциальностью данных и безопасностью, несмотря на то, что современные решения для виртуальных частных сетей (Virtual Private Network, VPN) на уровне протокола IP предусматривают создание туннелей c шифрованием трафика. Однако такие туннели, напоминающие каналы глобальной сети, создают проблемы при масштабировании.

Необходимость введения новых услуг IP определяется двумя факторами: появлением новых приложений и расширением инфраструктуры. За многие годы приложения IP стали гораздо разнообразнее: теперь они включают в себя передачу речи, видео, VPN, Extranet, приложения электронной коммерции и предъявляют более высокие требования к услугам доставки IP. Расширяющаяся физическая инфраструктура также готова к предоставлению более качественных услуг. Все большую актуальность приобретают такие технологии высокоскоростного доступа, как цифровые абонентские линии (Digital Subscriber Line, DSL) и волоконно-оптические кабели, в значительной степени модернизирована магистральная сеть Internet.

Для обеспечения более качественных услуг IP с возможностью масштабирования IETF переориентируется на технологию многопротокольной коммутации меток (MultiProtocol Label Switching, MPLS). Это технология коммутации, которую провайдеры услуг и организации могут применять для предоставления на третьем уровне услуг того же типа, что и на втором уровне, т. е. услуг с установлением соединения на базе инфраструктуры без установления соединений. Второй уровень в модели взаимодействия открытых систем (Open System Interconnection, OSI) — канальный уровень. Примером услуг глобальной сети второго уровня могут служить постоянные виртуальные соединения frame relay. Следующий уровень — сетевой. IP является примером протокола третьего уровня.

В статье приведены убедительные доводы в пользу MPLS и описываются принципы работы этой технологии. Подробно рассматриваются два примера услуг MPLS: VPN и регулирование трафика (Traffic Engineering, TE). В завершение предлагается краткий прогноз развития MPLS и некоторых других технологий сетевой отрасли.

ПОЧЕМУ MPLS?

Рисунок 1. Наложенная модель глобальной сети.
Многие провайдеры услуг Internet (Internet Service Providers, ISP) и учреждения строят свои распределенные сети IP, используя наложенную модель (это значит, что IP независимо работает поверх технологий второго канального уровня, например ATM). Так как протокол IP не предусматривает установление соединения, в нем отсутствует понятие тракта. Как видно из Рисунка 1, нижележащая инфраструктура глобальной сети невидима для IP, она образует так называемое облако глобальной сети. Маршрутизаторы IP на границе сети взаимодействуют друг с другом по виртуальным соединениям. IP может быть отображен на топологию глобальной сети множеством способов, порой весьма нетривиальных, однако предоставить качество услуг второго уровня на третьем оказалось довольно сложно.

Рисунок 2. Звездообразная конфигурация.
Двумя наиболее распространенными типами сетевой архитектуры являются топология «звезда» (hub-and-spoke) и полносвязная архитектура (fully mashed). В первом случае узловой маршрутизатор (концентратор) соединен со всеми периферийными маршрутизаторами, не связанными друг с другом (см. Рисунок 2). Чтобы один такой маршрутизатор мог обратиться к другому, он должен прибегнуть к помощи центрального маршрутизатора. Эта архитектура позволяет сократить количество линий связи и, следовательно, затраты, но создает дополнительный этап пути для трафика при взаимодействии двух периферийных устройств; при этом центральный маршрутизатор становится критическим местом в системе.

Рисунок 3. Полносвязная конфигурация.
Полносвязная ячеистая архитектура предполагает наличие соединений между каждой парой маршрутизаторов (см. Рисунок 3). Такая топология обеспечивает соединение «каждый с каждым», но при этом возникает проблема с масштабированием. По мере увеличения числа маршрутизаторов количество связей возрастает экспоненциально. Например, чтобы соединить четыре маршрутизатора, необходимо шесть линий связи, но для соединения шести маршрутизаторов их понадобится уже 15. Увеличение числа линий связи означает и появление большего числа «соседей» у протоколов маршрутизации, что, в свою очередь, ведет к неустойчивости сети. Преодоление этих трудностей заключается в том, чтобы при помощи MPLS сделать коммутаторы глобальной сети видимыми для IP.

В настоящее время технологии продвижения пакетов в Internet ориентируются на маршрутизацию по месту назначения, т. е. трафик маршрутизируется на основании адреса узла назначения пакетов IP. Но при этом каждый маршрутизатор вынужден осуществлять поиск по адресу, чтобы отыскать самый длинный соответствующий префикс, а это довольно медленный процесс. Кроме того, IP-адрес должен быть уникальным для всей сети. Для преобразования запрещенных, частных или повторяющихся адресов приходится прибегать к таким приемам, как преобразование сетевого адреса (Network Address Translation, NAT). Для сетей VPN необходимо построить туннели с шифрованием трафика с использованием протоколов наподобие IPsec. Поскольку туннели подразумевают соединение «точка-точка», вновь возникает проблема масштабируемости. Поддержка этих туннелей может вызвать массу проблем. Чтобы их избежать, MPLS разделяет функцию управления (например, поиск маршрута) и функцию продвижения.

Хотя заголовок пакета четвертой версии IP содержит три бита для указания приоритета, при пересылке они используются редко. Кроме того, качество и класс предоставляемых услуг (Quality of Service, QoS) второго канального уровня плохо отображается на третий уровень. Доставка большей части трафика IP осуществляется «по мере возможности». В настоящее время большинство протоколов маршрутизации при вычислении путей использует единую метрику, в основе которой лежит критерий стоимости. Как результат, они не учитывают перегрузки, которые могут возникнуть или уже возникли в линиях связи. Выбор пути между двумя узлами сети — сама по себе задача не тривиальная. Технология MPLS основана на протоколах маршрутизации с учетом ограничений, она способна предоставить требуемый класс сервиса (Class of Service, CoS) и обеспечить регулирование трафика на уровне IP.

Так что же такое MPLS? Говоря кратко, MPLS — это технология независимой коммутации второго уровня, использующая третий уровень для предоставления услуг того же типа, что и на втором уровне, и основанная на обмене меток. Она не зависит от второго уровня, поскольку может применяться как в сетях с передачей кадров, так и в сетях с передачей ячеек. Для построения таблиц трансляции меток MPLS задействует такие функции третьего уровня, как маршрутизация IP. Она предоставляет услуги, соответствующие второму уровню, поскольку путь коммутации меток играет роль виртуальной линии связи. Пути могут строиться на основании адресов назначения, класса обслуживания или каких-либо других требований.

ПРИНЦИПЫ РАБОТЫ MPLS

В маршрутизации IP присутствуют две фундаментальные составляющие: управление и продвижение. Управление включает в себя выбор пути через сеть. Продвижение заключается в том, что данные снабжаются необходимыми заголовками и отсылаются на сетевой интерфейс. Обычные маршрутизаторы выполняют эту процедуру на каждом этапе пути. Подход MPLS отличается большей гибкостью и состоит в разделении указанных функций. Для получения информации о достижимости определенных узлов сети MPLS по-прежнему использует такие протоколы маршрутизации, как протокол с определением кратчайшего пути (Open Shortest Path First, OSPF), но продвижение основывается не на IP-адресах назначения, а на метках фиксированной длины.

Два имеющихся типа устройств MPLS отличаются реализацией в них функции пересылки: пограничный маршрутизатор с коммутацией меток (Label Edge Router, LER, или Edge Label Switch Router, Edge LSR) и внутренний (транзитный) маршрутизатор c коммутацией меток (Core Label Switch Ruter, LSR). LER вставляет метки в пакеты IP, а LSR заменяет их (иными словами, LSR пересылает снабженные метками пакеты, не обращаясь к своей таблице маршрутизации). Метка — это число, имеющее локальное значение для маршрутизатора. Ее функция эквивалентна идентификатору виртуального пути (Virtual Path Identifier, VPI) или идентификатору виртуального соединения (Virtual Circuit Identifier, VCI) в ячейках ATM. LER может вставить метку в заголовок пакета, превращая обычный пакет в маркированный. Она часто задается на основании адреса назначения и впоследствии динамически заменяется различными LSR. Таким образом, LSR формирует таблицу продвижения меток, устанавливая соответствие между входящими и исходящими метками.

Когда LSR получает пакет, он отсылает его дальше, заменив входящую метку на исходящую. LSR действует как коммутатор ATM, только вместо коммутации ячеек по идентификаторам VPI/VCI он коммутирует маркированные пакеты по заданным значениям меток. После того как маркированный пакет достигнет другого конца сети MPLS, соответствующий маршрутизатор LER удаляет из него метку и пересылает пакет, используя обычные средства IP. Таким образом, путь с взаимосвязанным набором меток в сети MPLS называется путем коммутации меток (label switched path, LSP); он аналогичен виртуальному соединению в сети ATM, определяемому набором идентификаторов VPI/VCI.

MPLS формирует LSP с помощью внутреннего протокола маршрутизации (Interior Gateway Protocol, IGP) и протокола распределения меток (Label Distribution Protocol, LDP). Как и в обычных маршрутизаторах, IGP необходим для заполнения таблицы маршрутизации. Когда таблицы сформированы, LSR строит LSP посредством метода «вперед по мере надобности» (downstream on-demand). Этот метод связан с обновлениями маршрутизации. LSR, получая маршруты, пытается создать метки для всех маршрутов, а затем обращается к следующему LSR с запросом о назначении метки маршруту с помощью LDP. Таким образом, таблица продвижения меток строится на каждом LSR. Примечательно, что LSP создается до того, как появляется трафик. Когда приходит маркированный пакет, LSR отыскивает соответствующую исходящую метку, ставит ее на место входящей и отсылает пакет, не обращаясь к таблице маршрутизации на предмет поиска IP-адреса назначения пакета.

Рисунок 4. MPLS поверх АТМ.
Хотя MPLS не зависит от второго уровня, маршрутизаторам LSR в сетях ATM стоит уделить особое внимание, поскольку провайдеры услуг часто применяют данную технологию в своих магистральных сетях. Маршрутизатор ATM с коммутацией меток (ATM-LSR) — это коммутатор ATM с функциональностью маршрутизации IP и поддержкой MPLS. В результате преобразования обычного коммутатора ATM в ATM-LSR все облако ATM становится прозрачным для IP. Вместо того чтобы создавать множество сквозных соединений, пограничным маршрутизаторам теперь достаточно взаимодействовать с одним или несколькими маршрутизаторами ATM-LSR в сети MPLS (см. Рисунок 4). Такая архитектура сокращает количество необходимых соединений и при этом предоставляет возможность соединения «каждый с каждым».

VPN

MPLS позволяет реализовать услуги виртуальных частных сетей нового поколения. Информация о маршрутизации в VPN носит по определению конфиденциальный характер в пределах общедоступной инфраструктуры (например, Internet). Построенные поверх виртуальных соединений глобальные сети по своей природе конфиденциальны. В сетях VPN шифрование применяется также для того, чтобы скрыть адреса и контент. Технология многопротокольной коммутации меток для VPN предоставляет ту же степень защиты, что и соединения второго уровня, но без сложностей, присущих шифрованию. Поскольку при пересылке данных по сети MPLS IP-адреса не используются, внутренние адреса можно сделать конфиденциальными.

В сети VPN, основанной на технологии MPLS, маршрутизаторы LSR обычно называются поставщиками (Provider, P), а маршрутизаторы LER — пограничными поставщиками (Provider Edge, PE). Распознать поступающий трафик VPN сумеют лишь PE-маршрутизаторы, а P-маршрутизаторы — это обычные LSR. В отличие от сетей второго канального уровня, PE-маршрутизаторам не требуется полносвязная сеть соединений, сколько бы VPN к ним не было присоединено. Маршрутизаторам абонентов (в том числе пограничным) не надо выполнять ничего другого, кроме обычной маршрутизации IP. Множество PE с различными сетями VPN многих абонентов способны совместно использовать магистральную сеть MPLS. Для усиления защиты данных трафик может шифроваться и пересылаться через туннели, хотя это необязательно. Чтобы различать трафик VPN, PE-маршрутизаторы снабжают пакеты дополнительными метками. Однако P-маршрутизатор только считывает и заменяет верхнюю метку стека. PE-маршрутизатор на другом конце сети распознает соответствующий трафик VPN, изымает метку VPN из стека и доставляет пакет в надлежащую сеть VPN. Чтобы гарантировать уникальность маршрутов VPN через магистральную сеть MPLS, каждому из них приписывается отличительный признак маршрута (Route Distinguisher, RD). Для повышения масштабируемости PE обмениваются между собой маршрутами VPN с помощью протокола пограничной маршрутизации (Border Gateway Protocol, BGP) с мультипротокольными расширениями, что позволяет собирать информацию о маршрутах VPN, проходящих через магистральную сеть.

MPLS предоставляет новый вид услуг VPN. В современных IP VPN организуются защищенные прямые туннели. В результате по мере увеличения числа узлов VPN возникает проблема масштабирования. Вдобавок корпоративным пользователям приходится управлять функционированием этих VPN. В сетях MPLS VPN обслуживание VPN осуществляет провайдер услуг, и корпоративным пользователям не надо думать об управлении VPN. А благодаря тому, что VPN строятся на базе архитектуры MPLS, добавление новых узлов VPN не привносит сложностей с масштабированием.

Рисунок 5. Виртуальная частная сеть на базе VPN.
Принцип работы MPLS VPN лучше всего объяснить на простом примере. Допустим, у небольшого предприятия есть два узла, которые надо связать одной виртуальной частной сетью VPN1. Будем считать, что сеть имеет топологию, как показано на Рисунке 5: узел 1 — слева, узел 2 — справа. В обоих узлах подсети используют частный адрес 172.16.0.0 и протокол маршрутизации OSPF. Пограничные абонентские маршрутизаторы (Customer Edge, CE), напрямую связанные с PE-маршрутизаторами, являются маршрутизаторами OSPF базовой сети. Ни одному из абонентских устройств, включая оба маршрутизатора CE, не требуется поддерживать MPLS или VPN. Вся конфигурация VPN выполняется провайдером на PE-маршрутизаторах. Обновленная информация о маршрутизации от удаленного маршрутизатора CE передается по магистральной сети MPLS VPN, и оба CE-маршрутизатора становятся пограничными маршрутизаторами OSPF. Маршруты от удаленного узла на локальном узле воспринимаются как внутренние маршруты OSPF.

Пакеты, сформированные на узле 1 для узла 2, сначала пересылаются от маршрутизатора CE на узле 1 к подключенному PE. PE-маршрутизатор определяет, пользуясь конфигурацией, что трафик от CE принадлежит сети VPN1, поэтому он ассоциирует все маршруты от данного CE с предварительно сконфигурированным RD для конкретной виртуальной частной сети. Как уже говорилось, метки MPLS и LSP создаются еще до того, как появляется пользовательский трафик.

Для сетей VPN существует два уровня меток: верхняя направляет трафик через магистральную сеть MPLS к PE-маршрутизатору на другой конец сети, а нижняя указывает PE, что делать с трафиком VPN. Поэтому взаимодействующий с первым узлом PE вставляет два уровня меток в пакеты и пересылает их следующему транзитному P-маршрутизатору, а тот в свою очередь анализирует верхнюю метку и пересылает пакет с меткой далее по пути к PE следующему транзитному узлу и т. д. При этом P-маршрутизатор ничего не знает о VPN и игнорирует нижнюю метку.

Как только пакеты с метками поступают на последний P-маршрутизатор, тот обнаруживает, что установлено прямое соединение с целевым PE-маршрутизатором, после чего изымает верхнюю метку из стека и пересылает пакет с нетронутой нижней меткой на PE. PE анализирует оставшуюся метку VPN, определяет по конфигурации, что она относится к VPN1, затем удаляет ее и отсылает пакет на CE. Трафик VPN между двумя маршрутизаторами PE вообще не виден устройствам, не входящим в VPN. Этот уровень безопасности эквивалентен тому, который предоставляется виртуальными соединениями второго уровня.

РЕГУЛИРОВАНИЕ ТРАФИКА

Современные протоколы IGP, например OSPF, вычисляют пути через сеть, применяя алгоритм наподобие поиска кратчайшего пути (Shortest Path First, SPF). При этом они руководствуются критерием наименьшей стоимости и часто практически не принимают во внимание такие факторы, как загрузка канала или перегрузка сети. Чтобы направить трафик по заданному пути, на каждом его этапе нередко требуется производить конфигурацию вручную. В случае применения регулирования трафика MPLS потокам трафика можно ставить в соответствие пути, отклоняющиеся от путей IGP, используя сигнальный протокол, например протокол резервирования ресурсов (Resource ReserVation Protocol, RSVP). Такой способ позволяет более равномерно распределить нагрузку по сети и рациональнее использовать ресурсы.

Чтобы регулировать трафик средствами MPLS, необходимо следующее. Во-первых, важно, чтобы выбранный протокол IGP умел анализировать информацию о ресурсах канала и распространять ее. Протоколы маршрутизации, учитывающие состояние канала, например OSPF и «транзитная система — транзитная система» (Intermediate System to Intermediate System, IS-IS), предназначены как раз для того, чтобы переносить и обновлять информацию о загруженности канала. Во-вторых, сигнальный протокол должен обеспечивать резервирование необходимых ресурсов и прокладывать LSP через сеть. Одним из таких сигнальных протоколов является расширение RSVP для MPLS. В-третьих, нужна возможность задать путь в явном виде или использовать маршрутизацию с учетом ограничений. Явно заданный путь — это заранее заданный LSP, проходящий через последовательность маршрутизаторов LSR. LSP, используемые для регулирования трафика, часто называют туннелями с регулируемым трафиком (traffic engineered tunnel) или трактами трафика (traffic trunks). Для маршрутизации с учетом ограничений характерно принятие решений с учетом доступных ресурсов. Ограничения могут включать в себя требования к пропускной способности и к качеству предоставляемых услуг (QoS).

Как правило, построение туннеля MPLS с регулируемым трафиком осуществляется в несколько этапов. Протокол IGP, расширенный для поддержки регулирования трафика (IGP-TE), записывает информацию о состоянии каналов, в результате создается база данных состояния канала для регулирования трафика (TE-LSDB). LSR на входе в туннель (головной узел туннеля) осуществляет запрос к базе данных с указанием ограничения и генерирует список кратчайших путей, соответствующих этим условиям. Ограничения могут быть заданы административно либо динамически. Сигнальный протокол, наподобие RSVP, начинает заменять метки, в результате создаются пути LSP от маршрутизаторов LSR на входе до LSR на выходе. Затем LSR на входе указывает назначения для различных LSP, руководствуясь предписанными правилами. Теперь пути LSP сформированы, и по ним может идти трафик. Эти туннели продолжают функционировать до тех пор, пока администраторы не модифицируют их или пока не изменятся ресурсы канала. В случае сбоя в канале туннели могут быть проложены динамически.

ЗАГЛЯДЫВАЯ В БУДУЩЕЕ

Технология MPLS — это будущее услуг Internet. Она позволяет провайдерам предоставлять больший ассортимент услуг на управляемом уровне, а пользователи получают более качественные услуги по низким ценам. В дополнение к двум услугам MPLS, описанным в данной статье, в настоящее время разрабатываются и другие. Некоторые из них могут заменить имеющиеся сейчас услуги глобальных сетей: выделенная линия поверх MPLS, ATM поверх MPLS и frame relay поверх MPLS.

Хотя некоторые вопросы находятся на стадии обсуждения, протоколы MPLS близки к ратификации IETF. MPLS предполагается также использовать непосредственно в оптических сетях (с соответствующим названием MPLambdaS). Можно предположить, что по мере того, как Internet в своей основе все больше переходит на волоконно-оптические линии передачи данных, наиболее эффективным будет применение технологии MPLS непосредственно поверх оптических кроссов.

Рэнди Жанг — специалист по программному обеспечению компании Cisco Systems, имеющий степень CCIE. С ним можно связаться по адресу: randy.zhang@cisco.com.


Ресурсы Internet

Результаты деятельности рабочей группы IETF по MPLS публикуются по адресу: http://cell.onecall.net/ cell-relay/ archives/ mpls/ mpls.index.html.

Независимо от IETF несколько поставщиков организовали «Форум MPLS» по адресу: http://www.mplsforum.org.

Дополнительную информацию можно найти на узлах многих поставщиков оборудования MPLS: например, http://www.cisco.com, http://www.juniper.net и http://www.nortel.com.