MPLS (англ. Multiprotocol Label Switching - мультипротокольна комутація по мітках) - механізм передачі даних, який емулює різні властивості мереж з комутацією каналів поверх мереж з комутацією пакетів.
MPLS працює на рівні, який можна було б розташувати між другим (канальним) і третім (мережевим) рівнями моделі OSI, і тому його зазвичай називають протоколом другого з половиною рівня (2.5-рівень). Він був розроблений з метою забезпечення універсальної служби передачі даних як для клієнтів мереж з комутацією каналів, так і мереж з комутацією пакетів. За допомогою MPLS можна передавати трафік самої різної природи, такий як IP-пакети, ATM, SONET і кадри Ethernet.
Основною перевагою MPLS вважається прискорення швидкості просування пакетів (IP) в ядрі мережі. Однак існують і інші, не менш важливі, додатки для цієї технології.
MPLS ATM інтеграція
Перш за все, MPLS надає додаткову можливість з'єднання IP і ATM-мереж. Вважається, що на сьогодні це найкращий варіант консолідації мережевої інфраструктури, що містить ATM елементи. MPLS і ATM зазвичай розглядають як доповнюють один одного технології. Можливість розгорнути MPLS поверх ATM інфраструктури практично дає друге життя ATM.
MPLS не визначає нову QoS архітектуру, а базується на використанні широко відомої і зарекомендувала себе на практиці IP QoS парадигми.
Для IP QoS визначено дві моделі: IntServ і DiffServ.
IntServ визначає потоковий QoS і використовує RSVP для сигналізації.
DiffServ використовує маркування пакетів на кордоні мережі і подальшу обробку. Трафік розбивається на класи і в залежності від цього обробляється механізмами обмеження, вирівнювання і пріоритетності.
MPLS QoS використовує DiffServ підхід, поміщаючи необхідну маркування в заголовку. Еквівалентом DSCP мітки може бути трехбітовое Experimental поле в MPLS.
Крім того, реалізація TE в принципі може автоматично виконувати функції QoS.
MPLS Traffic Engineering (TE)
Traffic Engineering (TE).
Traffic Engineering (TE) - це можливість управління напрямом проходження трафіку з метою виконання певних умов (резервування каналів, розподіл завантаження мережі, балансування і запобігання перевантажень).
Звичайні протоколи маршрутизації (IGP протоколи IS-IS, OSPF) надають обмежені можливості по управлінню трафіком на основі метрик складають мережу лінків.
Основний механізм TE в MPLS - використання односпрямованих тунелів (MPLS TE tunnel) для завдання шляху проходження певного трафіку. Наприклад, для одного виду трафіку, наприклад високопріоритетного голосового можна прокласти один шлях через мережу, а для низькопріоритетного - інший. Так як тунелі - односпрямовані, то зворотний шлях може бути зовсім іншим.
Технологічно MPLS TE грунтується на формуванні маршрутів проходження пакетів (LSP) через мережу за допомогою механізму створення тунелів (MPLS Tunnel), який в свою чергу базується на стекирования міток (Labels Stack).
Примітивний MPLS TE можна забезпечити, вручну встановивши тунелі, відповідні необхідним напрямкам проходження трафіку.
Однак повний комплекс заходів MPLS TE виглядає дещо складніше і умовно розбивається на наступні стадії (етапи).
1. Організація MPLS домену.
Є певна мережева топологія, що складається з набору маршрутизаторів і каналів з певними властивостями між ними (смуга пропускання та інше).
2. Накладення обмежень.
У MPLS домені включається механізм TE і описуються мінімальні вимоги до мережі: початкові і кінцеві точки проходження трафіку, графи шляхів між ними (не обов'язково все) і методи обчислення маршрутів по ним (явний або динамічний), необхідна смуга пропускання.
3. Вивчення параметрів мережного середовища.
Для поширення інформації про каналах (атрибутах лінків) використовується механізм розширення протоколів маршрутизації (Link State Protocols: IS-IS, OSPF).
В результаті кожен маршрутизатор отримує розширену топологічну інформацію про мережі, що включає пропускну здатність кожного каналу зв'язку (лінка). Виходить база лінків і їх станів (властивостей) link state database.
4. Обчислення шляхів проходження трафіку у відповідності з адміністративними вимогами і можливостями мережі.
На граничних вхідних (по відношенню до потоку трафіку) маршрутизаторах виконується спеціальний алгоритм Constrained Base Algorithm, враховує політику вибору кращого шляху для LSP тунелю (тобто набір роутерів, через які передавати трафік): як можливості каналів, так і адміністративні вимоги (межі MPLS домену , смуга пропуску). Алгоритм перебирає лінки (їх властивості) і в підсумку по Меріке обчислює маршрути (шляху) проходження трафіку з урахуванням накладених обмежень. Тобто в підсумку на вхідному маршрутизаторі (head-end) конструюються необхідні LSP до вихідного маршрутизатора (head-tail) відповідно до накладеними вимогами на проходження трафіку між ними.
5. Встановлення шляхів.
Прораховані шляху встановлюється в мережі за допомогою спеціального протоколу сигналізації, який вміє поширювати інформацію про явне (explicit) маршруті.
Сьогодні відомо два таких протоколу: RSVP-ext і CR-LDP.
MPLS підтримує два види явних шляхів: строгий (strict) з визначенням всіх проміжних вузлів і вільний (loose), коли задається тільки їх частина.
За допомогою RSVP ext встановлюється LSP (TE Tunnel) уздовж обчисленого шляху. Це автоматична установка. RSVP використовує PATH і RESV повідомлення для проброса LSP уздовж розрахованого шляху. При цьому узгоджуються ще й параметри смуги пропускання (Admission Control).
6. Установка маршрутів з урахуванням тунелів TE.
IGP встановлює маршрут з урахуванням наявності тунелів (як tunnel інтерфейси). В результаті процес маршрутизації на вхідному маршрутизаторі (head-end) просто оперує LSP тунелями як інтерфейсами. А в таблиці маршрутів head-end буде маршрут до head-tail з next-hop - TE tunnel.
7. Просування пакетів.
За допомогою механізму MPLS (Label Stacking) відбувається забезпечення необхідного тунелювання і просування пакетів.
Технологія Fast ReRoute (FRR) дозволяє тимчасово направити трафік по запасному каналу в обхід відмовив линка на ділянці шляху LSP до тих, пір поки head-end зможе змінити весь LSP. Час відновлення порядку 50 ms. Попередньо конфігурується запасний тунель (backup tunnel). Контролюється маршрутизаторами на кінцях відмовив линка. Використовується стекирование міток в разі обходу проблемної ділянки.
MPLS дозволяє створювати віртуальні приватні мережі Layer 3, не вдаючись до тунелюванні (GRE) та шифрування (IPsec).
MPLS VPN мережу ділиться на дві області: IP мережі клієнтів і магістраль провайдера. Класична конструкція MPLS L3 VPN складається з наступних компонентів: граничні маршрутизатори провайдера PE, звернені до клієнтського обладнання CE, з'єднані між собою P маршрутизаторами в MPLS домені. В принципі, P маршрутизаторів може і не бути, необхідно щоб забезпечувалася зв'язність між PE.
MPLS L3 VPN інфраструктура передбачає забезпечення ізоляції розподілених клієнтських IP мереж в рамках VPN. Тобто забезпечується тільки обмін пакетами між IP мережами однієї VPN.
У термінах MPLS VPN окреме CE підключення називається сайтом. Кожен сайт являє собою окрему клієнтську підмережа, що входить в ту чи іншу VPN структуру.
Кожна VPN логічно пов'язана з одним або довше комплексів маршрутизації і пересилання (VPN Routing and Frowarding instance - VRF). VRF визначає членство в VPN підмережі за вузлом CE, підключеного до PE. Інтерфейси PE маршрутизаторів, звернені до CE, логічно пов'язані з індивідуальними VRF.
Примірник VRF складається з таблиці маршрутизації (IPv4), одержуваної з неї CEF, набору інтерфейсів, які використовують VRF і інших даних. VRF таблиці IP маршрутизації використовуються для обміну інформацією про маршрути тільки всередині VPN мережі і не виходять за кордон VPN, тобто ззовні не можна здійснити пакет на маршрутизатор, що знаходиться всередині VPN (цей маршрут просто невідомий). В результаті VRF є "віртуальний маршрутизатор" всередині PE.
Для обміну маршрутною інформацією між VRF різних PE використовується MP-BGP протокол. MP-BGP оперує VPN-IPv4 маршрутами.
У підсумку виходить наступна схема. Кожен клієнтський сайт (інтерфейс на PE) має свою VRF (таблицю IPv4 маршрутизації). PE може дізнатися IP префікс клієнта різними способами (статична конфігурація, BGP, RIP, OSPF, IS-IS). PE поміщає IPv4 маршрут клієнта в VRF даного сайту. Крім того, за допомогою заздалегідь обраного ідентифікатора VPNов, в які входить даний сайт, IPv4 маршрути (префікси) перетворюються в VPN-IPv4 маршрути і поміщаються в MP-BGP. MP-BGP згідно з політикою імпорту / експорту пов'язує між собою всі PE маршрутизатори (їх VRF). У підсумку в VRFи різних PE, але належать одній VPN, потрапляють всі маршрути з даної VPN. Причому в записах VRF Next Hopамі є PE, як ніби вони пов'язані між собою (віртуально за допомогою MPLS).
Реальна передача пакетів (комутація) відбувається за допомогою MPLS. MPLS мітки використовуються наступним чином: пакет містить два рівня міток (використовується стек). Перша мітка направляє пакет до необхідного PE (next hop), а друга вказує комплекс VRF, логічно пов'язаний з вихідним інтерфейсом CE маршрутизатора пункту призначення.
Розглянемо на прикладі проходження пакетів в MPLS L3 VPN.
Припустимо, CEx посилає пакет для CEy. Від CEx до PEx приходить пакет з DST = NETY (мережа за CEy) і без міток. Даний пакет приходить з певного інтерфейсу і тому обробляється конкретної VRFx. У VRFx є маршрут до NETY з NEXT-HOP - PEy і мітка VPN (мітка L1 для потрапляння в необхідну VRFy на PEy). Мітку для досягнення PEy PEx шукає у своїй глобальній таблиці маршрутизації. Таким чином, PEx відправляє в сторону PEy пакет зі стеком міток: L2 для досягнення PEy як NEXT-HOP і L1 для досягнення потрібної VPN (VRFy) на PEy. За мітці L2 пакет доходить до PEy і вона там буде видалено. PEy по мітці L1 з'ясовує який VRF користуватися для досягнення NETY. У VRFy для NETY вказаний відповідний інтерфейс PEy-CEy. В сторону CEy пакет йде без міток у вигляді IPv4.
Point-to-Point VPN (AToM, EoMPLS)
Для створення VPN Layer 2 по схемі точка-точка (point-to-point) розроблена технологія Any Transport Over MPLS (AToM), що забезпечує передачу Layer 2 фреймів через MPLS мережа. AToM - це інтегральна технологія, що включає Frame Relay over MPLS, ATM over MPLS, Ethernet over MPLS.
Для споживача мережу провайдера послуг в рамках сервісу AToM виглядає як віртуальний патчкорд.
AToM використовує безпосередні LDP сесії між граничними маршрутизаторами провайдерської мережі (PE) для встановлення і підтримки з'єднань. Безпосереднє просування пакетів відбувається з використанням стекирования міток MPLS, коли одна мітка (Top) з'єднує граничні маршрутизатори, а друга (Bottom) - визначає безпосередньо VPN клієнта (інтерфейс на PE маршрутизатор).
Так як найбільш затребуваною в даний час є технологія Ethernet over MPLS (EoMPLS), то деталі функціонування AToM розглянемо на її прикладі.
EoMPLS инкапсулирует Ethernet фрейми в MPLS пакети і використовує стек міток для просування через MPLS мережа. На кожному PE-CLE (Customet Leading Edge) організовується Virtual Circuit (VC). Обов'язково встановлюються прямі LDP сесії між вхідним і вихідним PE-CLE для обміну інформацією про VC. Кожна VC складається з двох односпрямованих LSP.
Безпосередньо передача пакетів використовує стек міток Верхня мітка (Top Label), звана ще Tunnel Label, використовується для досягнення вихідного (Egress) PE-CLE. Нижня мітка (Bottom Label), звана VC Label, використовується для визначення інтерфейсу на PE-CLE. VC Label забезпечується Egress PE-CLE для Ingress PE-CLE для направлення трафіку в потрібний інтерфейс на Egress PE-CLE. VC Label ототожнюється з VC ID і встановлюється на етапі VC setup.
З метою подолання обмежень point-to-point VPN розроблена технологія Virtual Private LAN Service (VPLS). VPLS - Layer 2 VPN технологія, що забезпечує багатоточкові сполуки (Multipoint Services) поверх пакетної мережевої інфраструктури. VPLS дають можливість об'єднання розподілених локальних мереж в єдину мережу.
Для споживача мережу провайдера послуг виглядає як віртуальний Ethernet свіч. При цьому мережа оператора зв'язку абсолютно прозора і не видно для мережі замовника.
Логічна структура VPLS виглядає наступним чином.
Для кожного VPN на кожному PE виконується Virtual Switching Instance (VSI), яка забезпечує forwarding decision для кожної VPLS. Ethernet фрейми коммутируются між PE пристроями, використовуючи VSI. В принципі VPLS розширює модель AToM до багатоточкових з'єднань, використовуючи ті ж методи інкапсуляції.
Подальшим розвитком масштабування даної технології є Hierarchical VPLS (H-VPLS). H-VPLS увазі декомпозицію PE пристрою на два User-Facing PE (u-PE) і Network PE (n-PE).
Відмінність VPLS від AToM в тому, що AToM - p-t-p L2 сервіс, а VPLS - multipoint.
У той же час MPLS L3 VPN теж multipoint, але обмежений IP трафіком. VPLS ж L2 сервіс і може підтримувати кілька високорівневих протоколів.
В даний час, поряд зі стандартною комутацією, як протокол маршрутизації і сигналізації пропонується використання протоколу Generalized MPLS (GMPLS). На оптичному рівні даний протокол дає можливість маршрутизировать і передавати потоки даних, ґрунтуючись тільки на довжині хвилі несе світлового сигналу. На сьогодні це найвищий ступінь інтеграції пакетної технології і оптичної транспортної середовища.
Спрощено MPLS можна уявити як додавання міток в пакети і їх подальше використання при швидкісний комутації.
MPLS може використовувати успадковану ATM інфраструктуру, що дозволяє проводити плавну модернізацію застарілого обладнання.
MPLS QoS використовує DiffServ модель і принципово нічим від неї не відрізняється.
MPLS Traffic Engineering є можливістю гнучкого і в тому числі автоматичного керування напрямком проходження трафіку з урахуванням адміністративних вимог і реальних параметрів мережі.
MPLS Layer 3 VPN - технологія об'єднання IP підмереж клієнтів з повною ізоляцією їх один від одного.
MPLS Layer 2 VPN дозволяє об'єднувати клієнтські підмережі на другому рівні. Може являти собою віртуальний пачкорд (Point-to-point, AToM) або віртуальний свіч (Multipoint, VPLS).
В даний час MPLS знаменує собою перемогу IP як універсального транспорту для всіх видів додатків.
MPLS є провідною технологією здатної стати фундаментом для інфраструктури мультисервісних мереж наступного покоління NGN, в рамках яких стане можлива передача будь-якого трафіку через єдину телекомунікаційну інфраструктуру.