MPLS - Multi-Protocol Label Switching
Multi-Protocol Label Switching kombiniert die Vorteile von Switching mit Routing.
MPLS arbeitet zwischen den Schichten 2 und 3 des OSI-Schichtenmodells. Es baut sich also als Zwischenschicht ein. Ein Beispiel für Schicht 2 ist das Ethernet. Auf dieser Schicht werden die Frames (Datenpakete) geswitcht. Ein Beispiel für Schicht 3 ist das Internet Protocol (IP). Auf dieser Schicht werden die Datenpakete geroutet. MPLS eignet sich um Datenpakete in einem IP-Netz priorisiert zu routen.
Wie war das noch mal mit dem Routing?
Router haben die Aufgabe, für Datenpakete anhand ihrer Zieladresse die Route an das Ziel zu bestimmen und es an den nächsten zuständigen Router weiterzuleiten. Zu diesem Zweck führt der Router intern sehr umfangreiche Tabellen von bekannten Netzen und den zuständigen Routern. Der Router muss für jedes eingehende Datenpaket die Tabellen durchlaufen und die Route heraussuchen, die am besten geeignet ist. Nicht immer ist die erstbeste Route geeignet. Deshalb werden die Tabellen jedes mal komplett abgearbeitet.
Erschwerend ist, dass nicht jeder Router einen Überblick über das gesamte Routing hat. Das wäre auch weniger sinnvoll. Routen können sich ändern. Es wäre ein aufwendiger Abgleichvorgang zwischen allen Routern notwendig.
Wie funktioniert MPLS?
Statt für jedes Datenpaket in jedem Router die Route neu zu ermitteln, wird pro Route ein Label vergeben. Router analysieren die Zieladresse der Datenpakete und ermitteln dann, welche Route dazu am besten passt. Diese Entscheidung wird nur einmal, beim Eingang in das Netzwerk, getroffen. Dabei wird dem Datenpaket ein Label zugewiesen. Durch das Label wird festgelegt, welchen Weg dieses und alle weiteren Pakete nehmen sollen. Auf diese Weise entstehen Tunnel durch das Netzwerk.
In dem Label sind Routing- und Service-Informationen enthalten. MPLS-Router lesen diesen Header aus und leiten die Pakete in Abhängigkeit der Angaben weiter. Auf diese Weise kann man die MPLS-Router anweisen die Datenpakete immer über die gleiche Wegstrecke zu übertragen.
Kommt also ein Datenpaket mit MPLS-Header, nimmt sich der Router das Label aus dem MPLS-Header und vergleicht es mit seiner Label-Tabelle. Dort steht drin, welches Interface als Ausgang genommen werden muss. Gleichzeitig wird dem Datenpaket ein neues Label übergeben und dann an den nächsten Router übermittelt.
Hat ein Datenpaket keinen MPLS-Header wird der zuständige Router ermittelt und von diesem ein Label für die Ziel-IP des Paketes angefordert. Im MPLS-Header wird das Label dann eingetragen und an den Router weitergeleitet.
Das Protokoll, mit dem Router die Label beantragen und Änderungen bekannt geben, nennt sich Label Distribution Protocol (LDP). Über BGP (Border Gatway Protocol) lassen sich Label auch austauschen. BGP wird bereits als Protokoll zwischen den Routern benutzt, mit dem sie ihre Routingtabellen miteinander austauschen.
Welche Vorteile bietet MPLS?
MPLS-Router haben den Vorteil, dass sie nur noch das Label im MPLS-Header betrachten müssen. Dadurch wird das Protokoll auf Schicht 3 austauschbar. Für das Routing mit MPLS spielt es keine Rolle mehr. Deshalb können MPLS-Router auch automatisch IPv6 routen.
Außerdem unterstützt MPLS Quality-of-Service (QoS). Pakete mit höherer Priorität bekommen ein anderes Label mit dem die Route schneller zum Ziel führt. So ist es möglich Quality-of-Service-Parameter zu definieren. Zum Beispiel Transit Delay (Übertragungsverzögerung) und Packet Loss (Paketverlust). Der MPLS-Header besteht aus dem Label für das Forwarding, dem Class-of-Service-Feld (CoS) zur Unterscheidung von Dienste-Klassen, dem Bottom-of-Stack-Feld (S) und dem Time-to-Live-Feld (TTL).
Weiterhin bietet MPLS ein Feature namens Label Stack. An einem Datenpaket können gleichzeitig mehrere Label angehängt werden. Geht bei einem Router ein solches Paket ein, dann verwirft er das erste Label und lässt das nächste nachrutschen. Dadurch wird die Route eines Datenpakets schon von Anfang an festgelegt. Normalerweise ist das nicht sinnvoll, da sich Routen ändern oder kurzfristig ausfallen können. Handelt es sich dabei aber um ein Paket einer VPN-Verbindung, ist es besser, das Datenpaket kommt nicht beim Empfänger an, anstatt das es über eine unsichere Backup-Route weitergeleitet wird. Sofern man der Route hinsichtlich ihrer Sicherheit und Stabilität genug Vertrauen entgegen bringt, kann man dann auch auf die aufwendige und Performance-fressende Verschlüsselung verzichten. Was allerdings nicht zu empfehlen ist.
Wo sind MPLS-Router im Einsatz?
Die sogenannte Routing-Performance von Routern ist nur bei extrem hohen Bandbreiten mit z. B. Multi-Gigabit-Glasfaserstrecken der Carrier ein Problem. Hier bringt MPLS einen direkt sichtbaren Vorteil, um den Geschwindigkeitsengpässe für ein paar Jahre weiter in die Ferne zu verschieben. Im Endkunden-Bereich mit typischen Dialup-Geräten über die analoge Telefonleitung oder ISDN spielt MPLS jetzt und in Zukunft keine Rolle. Aber wenn sich Breitband-Internet-Zugänge ohne Ausnahmen auf der ganzen Linie durchsetzen, dann ist MPLS-Routing gegenüber IP-Routing eine Ernst zunehmende Alternative.
T-MPLS - Transport Multiprotocol Label Switching
T-MPLS ist eine Weiterentwicklung von MPLS mit einer geringeren Komplexität und ein offener Standard der IETF. T-MPLS fließt zusätzlich in die ITU-T-Empfehlungen mit ein.
Eine Alternative zu MPLS und T-MPLS ist PBB-TE.