MPLS

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
MPLS
Название:

multiprotocol label switching

Уровень (по модели OSI):

cетевой

Создан в:

2001 г.

Спецификация:

RFC 3031

MPLS (англ. multiprotocol label switching — многопротокольная коммутация по меткам) — механизм в высокопроизводительной телекоммуникационной сети, осуществляющий передачу данных от одного узла сети к другому с помощью меток.

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

Содержание

[править] История

В 1996 г. группа инженеров из Ipsilon Networks разработала «Протокол управления потоком» (англ. Flow Management Protocol).[1]

Основанная на этом протоколе технология «Коммутации IP-пакетов» (англ. IP Switching), работающая только поверх упрощенной ATM-сети, не получила коммерческого успеха. Cisco Systems разработала похожую технологию «Коммутатции на основе тэгов» (англ. Tag Switching), но не ограниченную передачей поверх сети ATM.[2]

Данная технология, впоследствии переименованная в «коммутацию меток» (англ. Label Switching), была закрытой разработкой Cisco. Позднее она была передана в Специальную комиссию интернет-разработок (IETF) для открытой стандартизации.

[править] Преимущества технологии

MPLS позволяет достаточно легко создавать виртуальные каналы между узлами сети.

Технология позволяет инкапсулировать различные протоколы передачи данных.

Основным преимуществом MPLS является независимость от особенностей технологий канального уровня таких как ATM, Frame Relay, SONET/SDH или Ethernet и отсутствия необходимости поддержания нескольких сетей второго уровня, необходимых для передачи различного рода трафика. По виду коммутации MPLS относится к сетям с коммутацией пакетов.

Технология MPLS была разработана для организации единого протокола передачи данных как для приложений с коммутацией каналов, так и приложений с коммутацией пакетов (подразумеваются приложения с дейтаграммной передачей пакетов). MPLS может быть использован для передачи различного вида трафика, включая IP-пакеты, ячейки ATM, фреймы SONET/SDH[3] и кадры Ethernet.

Для решения идентичных задач ранее были разработаны такие технологии как Frame Relay и ATM. Многие инженеры считали, что технология ATM будет заменена другими протоколами с меньшими накладными расходами на передачу данных и при этом обеспечивающими передачу пакетов данных переменной длины с установлением соединения между узлами сети. Технология MPLS разрабатывалась с учетом сильных и слабых сторон ATM. В настоящее время оборудование с поддержкой MPLS заменяет на рынке оборудование с поддержкой вышеупомянутых технологий. Вероятно, что в будущем MPLS полностью вытеснит данные технологии.[4]

В частности, MPLS обходится без коммутации ячеек и набора сигнальных протоколов, характерных для ATM. При разработке MPLS пришло понимание того, что на уровне ядра современной сети нет необходимости в ячейках ATM маленького фиксированного размера, поскольку современные оптические сети обладают такой большой скоростью передачи данных[5], что даже пакет данных максимальной длины в 1500 байт испытывает незначительную задержку в очередях буферов коммутационного оборудования (необходимость сокращения таких задержек, например, для обеспечения заданного качества голосового трафика, повлияла на выбор ячеек малого размера, характерных для ATM).

В то же время MPLS попытался сохранить механизмы оптимизации и управления трафиком (англ. traffic engineering) и управления отдельно от передаваемого потока данных, которые сделали технологии Frame relay и ATM привлекательными для внедрения в больших сетях передачи данных.

Несмотря на то, что переход на MPLS дает преимущества управления потоками данных (улучшение надежности и повышение производительности сети), существует проблема потери контроля потоков данных, проходящих через сеть MPLS, со стороны обычных IP-приложений.[6]

[править] Принципы работы MPLS

Технология MPLS основана на обработке заголовка MPLS, добавляемого к каждому пакету данных. Заголовок MPLS может состоять из одной или нескольких «меток». Несколько записей (меток) в заголовке MPLS называются стеком меток. Каждая запись в стеке меток состоит из следующих четырех полей:

  • значение метки; занимает 20 бит;
  • поле класса трафика (англ. Traffic Class), необходимое для реализации механизмов QoS (экспериментальная поддержка) и явного уведомления о перегрузке (англ. Explicit Congestion Notification, ECN); занимает 3 бита;
  • флаг дна стека (англ. Bottom of stack); если флаг установлен, то это означает, что текущая метка последняя в стеке; занимает 1 бит;
  • поле TTL (Time to live); занимает 8 бит.

В MPLS-маршрутизаторе пакет с MPLS-меткой коммутируется на следующий порт после поиска метки в таблице коммутации вместо поиска в таблице маршрутизации. При разработке MPLS поиск меток и коммутация по меткам выполнялись быстрее, чем поиск в таблице маршрутизации или RIB (англ. Routing Information Base — информационная база маршрутизации), так как коммутация может быть выполнена непосредственно на коммутационной фабрике вместо центрального процессора.

Маршрутизаторы, расположенные на входе или выходе MPLS-сети называются LER (англ. Lable Edge Router — граничный маршрутизатор меток). LER на входе в MPLS-сеть добавляют метку MPLS к пакету данных, а LER на выходе из MPLS-сети удаляет метку MPLS из пакета данных. Маршрутизаторы, выполняющие маршрутизацию пакетов данных, основываясь только на значении метки, называются LSR (англ. Lable Switching Router — коммутирующий метки машрутизатор). В некоторых случаях пакет данных, поступивший на порт LER, уже может содержать метку, тогда новый LER добавляет вторую метку в пакет данных.

Метки между LER и LSR распределяются с помощью LDP (англ. Label Distribution Protocol — протокол распределения меток).[7] Для того чтобы получить полную картину MPLS сети LSR постоянно обмениваются метками и информацией о каждом соседнем узле используя стандартную процедуру. Виртуальные каналы (туннели), называемые LSP (англ. Label Switch Path — пути коммутации меток}}), устанавливаются провайдерами для решения различных задач, например, для организации VPN или для передачи трафика через MPLS-сеть по указанному туннелю. Во многом LSP ничем не отличается от PVC в сетях ATM или Frame Relay за исключением того, что LSP не зависят от особенностей технологий канального уровня.

При описании виртуальных частных сетей, основанных на технологии MPLS, расположенные на входе или выходе сети LER обычно называются PE-машрутизаторы (англ. Provider Edge — маршрутизаторы на границе сети провайдера), а узлы, работающие как транзитные маршрутизаторы, называются P-маршрутизаторы (англ. Provider — маршрутизаторы провайдера).[8]

[править] Пространство значений меток

Поле значения метки в MPLS заголовке занимет 20 байт, таким образом максимально возможное значение метки равно 1 048 575. Из этого пространства значений меток зарезервированно несколько меток:

  • Метка с номером 0 может быть использована только как последняя метка в стеке. Наличие метки с номером 0 обозначает что заголовок MPLS должен быть удален и последующая маршрутизация пакета должна основываться на значении заголока IPv4.
  • Метка с номером 2 может быть использована только как последняя метка в стеке. Наличие метки с номером 2 обозначает что заголовок MPLS должен быть удален и последующая маршрутизация пакета должна основываться на значении заголока IPv6.

[править] Установление и удаление MPLS-туннелей

Существует два стандартных протокола управления туннелями в MPLS-сети: LDP (англ. Label Distribution Protocol — протокол распределения меток) и RSVP-TE, расширение RSVP (англ. Resource Reservation Protocol — протокола резервирования сетевых ресурсов) для оптимизации и управления трафиком.[9][10] Также существуют расширения протокола BGP, способные управлять виртуальными каналами в MPLS сети.[11][12][13]

Заголовок MPLS не указывает тип данных, передаваемых в MPLS-туннеле. В случае, если возникает необходимость передать два различных типа трафика между двумя маршрутизаторами так, чтобы они по разному обрабатывались маршрутизаторами ядра сети MPLS, необходимо установить два различных MPLS-туннеля для каждого типа трафика.

[править] MPLS и IP

MPLS как протокол некорректно сравнивать с протоколом IP, поскольку MPLS работает совместно с IP и протоколами IGP.

[править] Построение MPLS-сетей

Технология MPLS используется для построения IP-сетей.

На практике MPLS используется для передачи IP- и Ethernet-трафика. Основными областями примения MPLS является оптимизации и управления трафиком (англ. traffic engineering) и организация виртуальных частных сетей (VPN).

[править] Конкурирующие с MPLS технологии

На уровне транспортной сети с MPLS конкурируют такие технологии, как PBB и MPLS-TP. С помощью этих технологий так же возможно предоставлять услуги L2 VPN и L3 VPN. Также в качестве конкурентной MPLS технологии предлагается использование протокола L2TPv3, однако он не популярен для решения задач, характерных для MPLS.

[править] См. также

[править] Примечания

  1. RFC 1953 Ipsilon Flow Management Protocol Specification for IPv4
  2. Yakov Rekhter et al., Tag switching architecture overview // Proc. IEEE 82 (December, 1997), 1973—1983.
  3. RFC 4842 SONET/SDH Circuit Emulation over Packet (CEP)
  4. Applied Data Communications (A Business-Oriented Approach) James E. Goldman & Phillip T. Rawles, 2004 (ISBN 0-471-34640-3)
  5. По состоянию на 2011 год пропускная способность магистралей большинства провайдеров составляет 40 Гбит/с или 100 Гбит/c.
  6. Routers Hold key to MPLS Measurement
  7. RFC 3037 LDP Applicability
  8. RFC 4364 BGP/MPLS IP Virtual Private Networks (VPNs)
  9. RFC 3036 LDP Specification
  10. RFC 3209 RSVP-TE: Extensions to RSVP for LSP Tunnels
  11. RFC 2547 BGP/MPLS IP Virtual Private Networks (VPNs)
  12. RFC 3107 Carrying Label Information in BGP-4
  13. RFC 4781 Graceful Restart Mechanism for BGP with MPLS

[править] Литература

Личные инструменты
Пространства имён
Варианты
Действия
Навигация
Участие
Печать/экспорт
Инструменты
На других языках