Multiprotocol Label Switching
Multiprotokolové přepojování podle návěští () je metoda směrování síťového provozu používaná ve vysokorychlostních telekomunikačních sítích, která pro směrování nepoužívá relativně dlouhé a protokolově závislé síťové adresy, ale krátká návěští pevné délky. Tím se obchází prohledávání směrovacích tabulek. Návěští neidentifikují koncové body, ale virtuální spoje (cesty) mezi vzdálenými uzly. MPLS nese název „multiprotokolové“, protože může zapouzdřovat pakety různých síťových protokolů a pro přenos může používat nejrůznější technologie včetně linek T1 a E1, ATM, Frame Relay a DSL.

Účel a funkce 
MPLS je protokolově nezávislá a škálovatelná technologie přepojování paketů. V síti používající MPLS je ke každému datovému paketu připojeno návěští, podle kterého se rozhoduje, kam se má paket přeposlat (forwardovat), aniž by bylo třeba analyzovat obsah paketu. To umožňuje vytvářet koncové okruhy () pro přenos libovolných protokolů používající libovolný typ transportních medií. Hlavní výhodou je odstranění závislosti na určité technologii linkové vrstvy OSI modelu, jako je Asynchronous Transfer Mode (ATM), Frame Relay, Synchronous Optical Networking (SONET) nebo Ethernet i odstranění potřeby, aby různé linkové vrstvy sítí vyhovovaly různým typům provozu.

Protože MPLS pracuje na rozhraní vrstvy 2 (linková vrstva) a 3 (síťová vrstva), je často označováno jako „vrstva 2,5“. MPLS poskytuje jednotnou službu pro přenos dat jak pro protokoly používající okruhy, tak pro protokoly používající přepojování paketů, kterým poskytuje datagramový model služeb. MPLS může přenášet různé druhy provozu, od IP paketů po přenos provozu ATM, SONET a Ethernetové rámce.

Pro směrování rámců nebo buněk počítačovou sítí vzniklo v minulosti několik technologií používajících podobný princip – mimo jiné Frame Relay a ATM. Místo návěští obsahuje hlavička ATM buněk nebo rámců u Frame Relay číslo virtuálního okruhu, kterým se buňky nebo rámce přepravují. Jeho hodnota se v každém hopu v síti mění, čímž se odlišují od forwardování IP paketů. Technologie MPLS byla vyvinuta s dobrou znalostí výhod a nevýhod technologie ATM, o níž se mnoho síťových inženýrů domnívá, že ji bude možné nahradit technologií s menší režií, která bude poskytovat spojované služby pro rámce proměnné délky. Předpokládá se, že MPLS bude postupně vytlačovat starší technologie, a že bude použitelné i pro budoucí sítě a protokoly.

MPLS se obejde bez přepojování buněk a balastu signalizačních protokolů v ATM. Prokazuje, že používání velmi krátkých buněk ATM není v moderních sítích nutné, protože tyto sítě jsou tak rychlé, že ani řazení paketů plné délky 1500 bytů do front nepůsobí zpoždění významná pro práci v reálném čase (hlavní motivací pro používání buněk v ATM bylo omezení zpoždění potřebné pro přenos hlasu).

Současně se MPLS snaží zachovat teletraffic engineering a řízení mimo přenosový kanál (), které je velkým kladem technologií Frame Relay a ATM pro správu rozsáhlých sítí.

MPLS přináší významné výhody pro správu sítě (lepší spolehlivost, vyšší výkonnost), významně však omezují viditelnost a přístup ke směrování, na který byla zvyklá IT oddělení.

Historie 
 1994: Firma Toshiba prezentuje základní myšlenky Cell Switch Routeru (CSR) na IETF BOF
 1996: Firmy Ipsilon Networks, Cisco a IBM oznamují své plány v oblasti přepojování podle návěští
 1997: Založení pracovní skupiny IETF MPLS
 1999: První nasazení MPLS VPN (L3VPN) a TE
 2000: MPLS Traffic Engineering
 2001: Vydán první MPLS RFCs
 2002: AToM (L2VPN)
 2004: GMPLS; Large Scale L3VPN (L3VPN velkého rozsahu)
 2006: Large Scale TE
 2007: Large Scale L2VPN
 2009: Label Switching Multicast
 2011: MPLS Transport Profile

V roce 1996 skupina z Ipsilon Networks navrhla „flow management protocol“.
Jejich technologie pro „IP Switching“ pracovala pouze přes ATM, nedosáhla velkého rozšíření. Cisco Systems zavedla podobný návrh nazývaný „Tag Switching“, který nebyl omezený na ATM sítě. Tento proprietární návrh byl přejmenován na „Label Switching“ a předán organizaci Internet Engineering Task Force (IETF) k otevřené standardizaci. IETF zapracovalo návrhy od jiných dodavatelů a dospělo k výslednému protokolu, který kombinuje vlastnosti různých protokolů.

Jednou z původních motivací bylo umožnit vytvoření jednoduchých vysokorychlostních přepínačů, protože dlouhou dobu nebylo možné směrovat IP pakety výhradně hardwarově. Nicméně pokroky v VLSI umožnily vyrábět i taková zařízení. Proto se výhody MPLS primárně odvíjejí od schopnosti podporovat různé modely služeb a provádět traffic management. MPLS také nabízí rámec pro robustní zotavení, který překonává jednoduché okruhy ochrany sítí SONET (SONET/SDH).

Fungování MPLS 
MPLS prefixuje pakety MPLS hlavičkou, která se skládá ze sady MPLS návěští (). Před jeden paket může být vloženo i několik návěští, proto mluvíme o zásobníku návěští.
Každá položka na zásobníku návěští obsahuje čtyři pole:
 20bitová hodnota návěští. Návěští s hodnotou 1 reprezentuje router alert label.
 3bitové pole pro experimentální účely; používá se pro QoS (Quality of Service) prioritu nebo pro ECN ().
 1bitový příznak dna zásobníku. Je nastaven vždy jen v nejspodnějším návěští na zásobníku.
 8bitové pole TTL (Time to live).

Pakety s MPLS-návěštími jsou přepojovány výhradně podle návěští místo prohledávání směrovacích tabulek obsaženého protokolu (například IP). V době návrhu MPLS bylo vyhledávání návěští a přepojování pomocí návěští podstatně rychlejší než prohledávání směrovacích tabulek nebo vyhledávání v RIB (Routing Information Base), protože se mohla provádět přímo ve switched fabric bez účasti procesoru.

Přítomnost MPLS návěští musí být routeru nebo přepínači indikována. V případě Ethernetových rámců se to provádí pomocí EtherType hodnot 0x8847 pro unicast a 0x8848 pro multicast.

Label switch router 
MPLS router, který provádí směrování pouze podle návěští, se nazývá Label switch router (LSR) nebo tranzitní router. Tyto routery se používají uvnitř MPLS sítě. Jsou zodpovědné za změny návěští mezi jednotlivými hopy v MPLS síti.

Když LSR přijme paket, použije návěští obsažené v hlavičce paketu jako indexu do vyhledávací tabulky pro nalezení nového návěští a dalšího hopu na cestě přepínané pomocí návěští (label-switched path, LSP). V hlavičce je před odesláním paketu staré návěští nahrazeno novým.

Hraniční MPLS router 
Hraniční MPLS router (Label edge router, LER, neboli hraniční LSR) je router, které je umístěn na hranici MPLS sítě a funguje jako vstupní a výstupní bod sítě. LER přidává (push) MPLS návěští do příchozích paketů a odebírá (pop) návěští z paketů směřujících mimo MPLS síť. Při uspořádáním nazývaném penultimate hop popping může tuto funkci provádět LSR přímo připojený k LER.

Při forwardování IP datagramů do MPLS domény, LER analyzuje směrovací informace, aby určil, jaká návěští mají být přidána k paketu, a pakety s návěštími předává do MPLS domény. Obdobně při přijetí paketů s návěštími, které opouštějí MPLS doménu, LER návěští odstraní a výsledný IP paket předá pomocí normálního forwardovacího pravidla pro IP.

Provider router 
Ve zvláštním kontextu virtuálních privátních sítí (VPN) používajících MPLS se routery LER, které fungují jako ingress nebo egress routery do VPN často nazývají PE (Provider Edge) routery. Zařízení, která fungují pouze jako tranzitní routery, se analogicky nazývají P (Provider) routery. Úkoly routeru P jsou výrazně snazší než PE routeru, takže mohou být jednodušší a díky tomu i spolehlivější.

Label Distribution Protocol 
Routery v MPLS síti si navzájem pravidelně vyměňují návěští a informace o dosažitelnosti pomocí standardizovaných procedur, aby si vytvořily úplný obraz sítě pro přepínání paketů.
Mezi LER a LSR routery jsou návěští distribuována pomocí Label Distribution Protocol (LDP).
LSP vytváří síťový operátor pro různé účely, např. pro vytvoření virtuálních soukromých sítí s protokolem IP nebo pro směrování provozu sítí zadanými cestami. V mnoha aspektech se LSP neliší od permanentních virtuálních okruhů (PVCs) v ATM nebo Frame Relay sítích, až na to, že nejsou závislé na konkrétní technologii vrstvy 2.

Směrování 
Pro každý paket, který nemá návěští, vstoupí do ingress routeru a má být přenesen MPLS tunelem, musí router nejdříve určit třídu ekvivalence pro jeho směrování (forwarding ekvivalence class, FEC). Pak na začátek paketu vloží jako MPLS hlavičku obsahující jedno nebo více návěští a přepošle paket na router pro další hop pro toto návěští.

Při přijetí paketu opatřeného návěštím MPLS router zkontroluje návěští na vrcholu zásobníku. Podle jeho hodnoty provede se zásobníkem návěští operaci swap (nahrazení), push (uložení) nebo pop (odebrání). Routery mohou mít předem připravené vyhledávací tabulky, které určují, jakou operaci provést pro jednotlivé hodnoty návěští na vrcholu zásobníku v přicházejícím paketu, díky čemuž mohou pakety velmi rychle zpracovávat.

 Při operaci swap se návěští nahradí novým návěštím a paket je forwardován cestou podle nového návěští.
 Při operaci push se nové návěští uloží nad existující návěští, což funguje jako „zapouzdření“ paketu do jiné vrstvy MPLS. To umožňuje hierarchické směrování MPLS paketů, což se používá především v MPLS VPNs.
 Při operaci pop se z paketu návěští odstraní, přičemž se může zpřístupnit další návěští. Tento proces se nazývá „decapsulation“. Jestliže odstraněné návěští bylo poslední na zásobníku, paket „opustí“ MPLS tunel. To obvykle provádí egress router, ale viz penultimate hop popping (PHP) níže.

Tranzitní routery obsah paketu pod zásobníkem MPLS návěští nekontrolují; obvykle kontrolují pouze nejvyšší návěští na zásobníku. Forwardování paketu se provádí podle hodnoty návěští, což umožňuje „forwardování paketů nezávislé na protokolu“, při kterém není nutné prohledávat směrovací tabulky jednotlivých protokolů a není nutné náročné hledání nejdelšího souhlasného prefixu používané protokolem IP v každém hopu.

Když egress router odebere poslední návěští, zůstane pouze obsah paketu. Tím může být IP paket nebo paket jiného protokolu. Proto musí egress router mít směrovací tabulky pro všechny použité protokoly, aby mohl pakety forwardovat mimo MPLS síť. Naproti tomu tranzitní routery MPLS žádné protokolově závislé směrovací tabulky nepotřebují.

V některých speciálních případech může být poslední návěští odstraněno už v předposledním hopu (hop před egress routerem), což se nazývá penultimate hop popping (PHP). To může pomoci snížit zátěž egress routeru, který jinak musí zpracovávat spousty paketů, které opouštějí MPLS tunely, což vede k velkému zatížení jeho procesoru. Použitím PHP (odstraněním posledního návěští) se část zátěže přenese na tranzitní routery připojené přímo egress routery. V protokolech pro distribuování návěští, je tato akce oznamována pomocí hodnoty 3 „implicitně prázdné“, které se nikdy nemůže objevit v návěští, protože znamená „odstranit návěští“.

MPLS a IP 
MPLS spolupracuje s IP a jeho interními směrovacími protokoly (Interior Gateway Protocol – IGP). Zařízení podporující MPLS se nazývají LSRs. Cesty, které LSR zná, mohou být definovány pomocí explicitních hop-by-hop konfigurací nebo jsou dynamicky směrovány algoritmem constrained shortest path first (CSPF) nebo jsou nakonfigurovány jako loose route, ve kterých není uvedena konkrétní IP adresa, nebo je cesta částečně explicitní a částečně dynamická.

V IP-only sítích se vybere nejkratší cesta k cíli, i pokud je zahlcená. Naproti tomu v IP síti s MPLS Traffic Engineering CSPF směrováním se mohou brát v úvahu další parametry jako například RSVP šířka pásma použitého spoje, takže bude vybrána nejkratší cesta s požadovanou šířkou pásma. MPLS Traffic Engineering vyžaduje použití TE rozšíření Open Shortest Path First (OSPF) nebo Intermediate System To Intermediate System (IS-IS) a RSVP. Kromě využití omezení šířky pásma skrz RSVP, mohou uživatelé také definovat svá vlastní omezení uvedením atributů spoje a speciálních požadavků na tunely, které mají (nebo nemají) být směrovány spoji s určitými atributy.

Pro koncové uživatele není používání MPLS přímo viditelné. Lze je však odhalit pomocí traceroute, který jako hopy na cestě zobrazuje pouze uzly provádějící plné IP směrování, zatímco mezilehlé MPLS uzly vidět nejsou. Proto když je vidět, že paket putuje mezi dvěma velmi vzdálenými uzly a žádný jiný 'hop' není v síti tohoto poskytovatele (nebo v daném AS) vidět, je velmi pravděpodobně, že síť používá MPLS.

MPLS local protection 

Používají-li se mechanismy zotavení na vrstvě IP, může obnovení provozu po selhání prvku sítě trvat několik sekund, což může být pro fungování aplikací v reálném čase jako například VoIP nepřijatelné. Naproti tomu MPLS local protection (též MPLS Fast Reroute nebo MPLS local restoration) splňuje požadavky aplikací pracujících v reálném čase s časy zotavení srovnatelnými s vlastnostmi SONET okruhů s méně než 50 ms.

Odkazy

Poznámky

Reference

Literatura 
 „Deploying IP and MPLS QoS for Multiservice Networks: Theory and Practice“ by John Evans, Clarence Filsfils (Morgan Kaufmann, 2007, )
 Rick Gallaher's MPLS Training Guide ()

Související články 
 Generalized Multi-Protocol Label Switching
 MPLS VPN
 IEEE 802.1aq – Shortest Path Bridging (SPB)

Externí odkazy 
 
 MPLS Working Group, IETF.
 MPLS IP Specification , Broadband Forum.
 Stručná historie MPLS, RIPE

MPLS sítě