Ограничения классической IP сети
MPLS решает несколько ограничений классической IP сети:
1) hyper aggregation. Выбор маршрута в IP сети происходит на основе наименьшей метрики. При этом, зачастую, не используются все ресурсы сети;
2) end-to-end service level limitations. Выбор next-hop в IP сети происходит на каждом роутере по пути следования пакета. Это очень гибкий механизм, но он не позволяет обеспечить качество сервиса на всем пути следования трафика.
3) address-based forwarding is limiting. Пример проблемы: два кастомера одного провайдера имеют одинаковую серую адресацию. С помощью MPLS, а точнее L2VPN и L3VPN, проблема легко решаема.
Применение MPLS
2) High availability;
3) Traffic engineering - решает проблему качества сервиса на всем пути следования трафика;
4) IGP shortcuts - решает проблему необходимости создания iBGP full mesh topology;
5) Consolidation of services: B2B L2VPN, B2B L3VPN, Triple Play, Mobile aggregation (2G/3G/4G).
Kомпоненты MPLS
Определения для каждого роутера в MPLS домене меняется в зависимости от его положения по отношению к LSP.
LSR (P) - label switch router. Все интерфейсы LSR(P) находятся в MPLS домене. LSR(P) игнорирует ip-заголовки транзитных пакетов и действует только на основе label switching mechanism.
LER (PE) - label edge router. Как минимум один интерфейс LER (PE) находится не в MPLS домене. В зависимости от положения в отношении LSP, LER (PE) инкапсулирует пакет в метку или снимает метку.
Forwarding equivalence class (FEC)
FEC определяет группу пакетов, которые должны быть переданы в одно место назначение и с одним типом обработки.
Пример FEC - префикс сети назначения. Два пакета, у которых совпадает префикс сети назначения, относятся к одному FEC.
Label switching
Основные операции с метками: push - вставить метку, swap - поменять метку, pop label - снять метку.
Простейшая топология
CE1 - PE1 - P1 - P2- PE2 - CE2
Логика работы:
PE1 роутер получает пакет от CE1. Адрес назначения пакета находится за MPLS доменом - CE2. PE1 определяет FEC пакета, добавляет метку и отправляет пакет P1. Все это происходит при условии, что LSP до FEC уже построен. P1 получает получает пакет с меткой, делает lookup и отправляет пакет P2, поменяв метку в соответствии с таблицей меток. P2 проделывает аналогичную операцию - swap label. PE2 получив пакет, делает lookup, снимает метку и отправляет ip пакет CE2.
Label Distribution
Трафик в IP/MPLS сети движется только по заранее созданным туннелям - LSP (Label Switch Path). Для построения LSP используются два способа: создание static LSP вручную и использование протоколов распространения меток.
Протоколы распространения меток:
LDP (Label Distribution Protocol)
tLDP
RSVP-TE (Resource Reservation Protocol–Traffic Engineering)
Multiprotocol BGP
Control plane and Data Plane
Важнейшим принципом работы MPLS является разделение Control plane и Data Plane.
Control plane: запускаем IGP - IGP сошелся - маршруты происталлировались в FIB - LSR генерируют метки для FEC - анонс меток между LSR - метки загружаются в LFIB - LSP построены.
MPLS label structure
Заголовок MPLS добавляется перед ip заголовком. Также фрейм может содержать несколько MPLS меток.
label - MPLS label - 20 bits
TC - traffic class - 3 bits
S - bottom of stack - 1 bits (указывает последняя метка в стеке или нет)
TTL - 8 bits
Label values
Для оптимизации работы с метками используется несколько специальных значений:
0 - IPv4 explicit null (явный нуль)
1 - router alert (используется для тестирования)Для оптимизации работы с метками используется несколько специальных значений:
0 - IPv4 explicit null (явный нуль)
2 - IPv6 explicit null
3 - IPv4 implicit null (неявный нуль)
Penultimate hop popping
Схема: iLER - LSR - eLER
eLER сигнализирует LSR, что он последний в LSP, отсылая label = 3. LSR получив пакет, у которого метка равна 3, снимает метку и отсылает eLER ip пакет уже без метки. Это предотвращает двойной lookup на eLER (LFIB и FIB). Минус использования - теряются значения TC и TTL.
Explicit null label
Схема: iLER - LSR - eLER
eLER сигнализирует LSR, что он последний в LSP, отсылая label = 0. eLER получив пакет, у которого метка равна 0, снимает метку без lookup в LFIB. Сохраняются значения TC и TTL.
Label Distribution Protocols
При использовании MPLS сети для предоставления VPN используется две метки: outer label - transport label, inner label - service label.
Для распространения transport label используются: LDP и RSVP-TE.
Для распространения service label используются: tLDP и MP-BGP.
Downstream and Upstream
Downstream and Upstream
Downstream - направление движения трафика от iLER <--> eLER.
Upstream - направление распространения меток от eLER <--> iLER.
control plane
FEC 1.1.1.1 -------------------------------------------->
<-------------------------------------------
data plane
LER 1.1.1.1 - LSR - LSR - LSR - LSR - LSR - LSR - LER 2.2.2.2
control plane
<--------------------------------------------FEC 2.2.2.2
----------------------------------------------->
data plane
Label distribution mode
Downstream Unsolicited - eLER генерирует метки для всех известных ему FEC и распространяет всем соседям без запроса, последующие LSR начинают рассылать всем своим соседям метки также без запроса.
Downstream on Demand - iLER генерирует запрос на определенный FEC и рассылает своим соседям в сторону eLER. Запрос достигает eLER. eLER выделяет метку для FEC и распространяет метки в сторону запроса.
Ordered and Independant control mode
Independant control mode - LSR рассылает метки о всех известных ему FEC не дожидаясь получения метки от downstream LSR.
Ordered control mode - LSR не рассылает метки о известных ему FEC, пока не получит метку от downstream LSR.
При Ordered control mode LSP строится медленней, но при этом iLSR точно знает, что, получив метку, LSP уже полностью построен.
Label Retention modes
Cуществует два метода хранения меток в LIB.
Liberal label retention - LSR хранит все полученные метки в LIB (быстрее реагирует на изменение топологии, но занимает больше памяти)
Conservative label retention - LSR хранит только одну метку для каждого FEC (медленнее реагирует на изменение топологии, но занимает меньше памяти)
Alcatel-Lucent SR 7750
SR 7750 использует два режима распространения меток:
Downstream Unsolicited, Ordered control with liberal retention (LDP)
Downstream on demand, ordered control with conservative retention (RSVP-TE)