Zum Inhalt springen

Multiprotocol Label Switching

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 11. Dezember 2005 um 16:51 Uhr durch Stefan506 (Diskussion | Beiträge) (linkfix Hintergrund). Sie kann sich erheblich von der aktuellen Version unterscheiden.
MPLS im TCP/IP-Protokollstapel
 Anwendung   HTTP 
 Transport   TCP 
 Netzwerk   IP 
 Netzzugang   MPLS 

Beim Multiprotocol Label Switching (MPLS) handelt es sich um die Konvergenz der verbindungsorientierten Forwarding-Technik und den paketbasierten Internet Routing-Protokollen. Dabei arbeitet MPLS unterhalb des IP Layers wo es Datenübertragungsdienste sowohl für circuit-basierte als auch für paket-basierte Anwendungen leisten soll. Hierdurch wird die Möglichkeit gegeben vielfältige Arten von Daten – wie Telefonverkehr oder IP-Pakete – zu übertragen.

Hintergrund

Während MPLS auf den hohen Verwaltungsaufwand der Cell-Switching und Signalling-Protokolle von ATM verzichtet, bietet es trotzdem die Vorteile des aus der ATM-Welt bereits bekannten Traffic Engineering und Quality of Service (QoS). MPLS vereint somit die Vorteile zahlreicher Produkte und Technologien wie Frame Relay oder ATM und eignet sich ideal für den Einsatz in großen Carrier-Backbone-Netzen. Ursprünglich wurde MPLS bei Cisco Systems durch eine Gruppe von Ingenieuren unter dem Namen „Tag Switching“ entwickelt. Später wurde es durch die IETF als offener Standard spezifiziert und in „Label Switching“ umbenannt. Hinzu kam der Zusatz „Multiprotocol“, da es unterhalb des IP-Layers angesiedelt ist und somit beliebige Protokolle hier drauf aufsetzen können. Eine der ursprünglichen Motivationen lag in der Erzeugung von Hochgeschwindigkeits-Switches. Zum damaligen Zeitpunkt ging man davon aus, dass das Forwarding von IP Paketen vollständig in Hardware unmöglich sei. Große Fortschritte in der VLSI-Technik ermöglichten in der Zwischenzeit aber solche Geräte, womit die ursprüngliche Motivation weitgehend entfällt. Jedoch gehören die weit reichenden Traffic Engineering und Quality of Service (QoS) Fähigkeiten weiterhin zu den großen Vorteilen von MPLS. Als Einsatzgebiete eignen sich hierbei vor allem die großen Carrier-Backbone Netze.

Wie funktioniert MPLS

Bei MPLS werden Datenpakete mit einem sehr einfachen Header versehen, der ein (oder mehrere) „Labels“ enthält. Diese Datenpakete können aufgrund der einfachen Struktur der „Labels“ durch spezielle Hardware sehr schnell entlang von MPLS Tunnel weitergeleitet werden. Hierbei kann der MPLS Datenverkehr entweder über alte ATM Hardware laufen, oder auch durch neue native MPLS Geräte übernommen werden. Zunächst wird hierzu ein MPLS Tunnel (ein so genannter Label Switched Path – LSP) zwischen zwei Routern aufgebaut. Der Aufbau eines solchen LSP geschieht über Topologie-basierte Label-Creation Methoden, d.h. durch die Nutzung der Information bekannter Internet-Routing Protokolle wie Interior Gateway Protocol (IGP) oder Border Gateway Protocol (BGP). Im Gegensatz dazu stehen die requestbasierten Methoden, die über spezielle dynamische Signalisierungsprotokolle wie RSVP-TE, LDP oder CR-LDP Tunnel aufbauen können, welche bestimmten Traffic Engineering Aspekten oder sonstigen Einschränkungen unterliegen. Weiterhin ist zu beachten, dass LSPs unidirektional sind, wobei beide Label-Creation Methoden meist ebenfalls einen Tunnel in Gegenrichtung aufbauen, der bei der Request-basierten Methode jedoch nicht symmetrisch sein muss. Die Wahl des LSP kann wie aus dem IP-Routing bekannt Hop-by-Hop erfolgen. Dies bedeutet, dass jeder beteiligte Router unabhängig den nächsten Hop auswählt. Als Alternative steht hierbei die explizite Routing-Methode zur Verfügung die vor allem von Request-Basierten Label Creation Methoden verwendet wird. Dabei wird der vollständige LSP durch den eingehenden Router bestimmt. Bei MPLS wird der LSP verwendet um eine Forwarding Equivalence Class (FEC) zu spezifizieren. Dies bedeutet, dass alle Pakete mit dem gleichen Label auch auf die gleiche Art bearbeitet werden. Der eingehende Router eines MPLS Tunnel wird auch als Ingress Router bezeichnet. Der ausgehende Router hingegen als Egress Router. Beide Router werden als Edge Label Switch Router (ELSR) bezeichnet, da sie die Grenze des MPLS Netzwerkes darstellen. Router zwischen den Edge LSRs – also Router im Inneren des MPLS Netzwerkes – werden als Label Switch Router (LSR) bezeichnet. Nach Eintreffen eines Paketes am Ingress Router wird das entsprechende Paket mit einen (oder mehreren) Labels versehen und anschließend an den nächsten Router des MPLS Tunnels weitergeleitet. Wird ein mit einem Label versehenes Paket von einem LSR empfangen, wertet dieser das oberste Label aus. Nachdem der Austausch des Labels vorgenommen wurde, kann das Paket an den nächsten Router des Tunnels weitergeleitet werden. Zudem ist es möglich, dass ein weiteres Label hinzugefügt wird, was auch „Encapsulating“ genannt wird und über eine Push-Operation realisiert wird. Genauso kann auch ein Label durch eine Pop-Operation entfernt werden und ein darunter liegendes Label zum Vorschein zu bringen, was „Decapsulation“ genannt wird. Diese Vorgehensweise erlaubt ein hierarchisches Routing von MPLS Paketen. Während der oben geschilderten Operationen wird der Inhalt des Paketes außerhalb des MPLS Label Stack nicht beachtet, und es muss sogar stets nur das oberste Label beachtet werden. Somit geschieht die Weiterleitung der Pakete lediglich auf den Inhalten der Labels und erlaubt eine protokollunabhängige Weiterleitung. Nachdem der Egress Router am Ende des MPLS Tunnels das letzte Label entfernt hat, bleibt lediglich die Nutzlast übrig, wobei es sich um ein IP-Paket oder das Paket eines anderen Datentyps handeln kann.

Vergleich zwischen MPLS und IP

Im Gegensatz zu IP handelt es sich bei MPLS nicht um ein direkt nutzbares Ende-zu-Ende Protokoll. Es wird lediglich eine Methode beschrieben, um Layer 2 und Layer 3 Protokolle zu kapseln. Somit kann MPLS mit dem bekannten Protokoll PPP verglichen werden. Zudem wird bei MPLS explizit zwischen Paket-Forwarding (Forwarding-Engine) und Routing (Management-Engine) unterschieden. Jedoch können weiterhin alle bekannten Routing-Verfahren aus IP angewendet werden. Somit stellt MPLS eine Ergänzung zu IP dar und nicht dessen vollständiger Ersatz.

Vergleich zwischen MPLS und ATM

MPLS Pakete können wesentlich größer sein als ATM Zellen. Heutige MPLS Netzwerke können problemlos 1500 Bytes große Pakete befördern, was einen Vorteil gegenüber den 48-Byte Zellen von ATM darstellt, da somit der Protokoll-Overhead minimiert wird. Weiterhin erlaubt die Stacking Möglichkeit der MPLS Labels ein hierarchisches Routing, was sich wesentlich flexibler gestaltet als die Möglichkeiten vom ATM.

MPLS header

MPLS Paket

MPLS labelstack

MPLS labelstack