Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien...

21
Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck

Transcript of Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien...

Page 1: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

Multi-Protocol Label Switching

Eine Einführung in MPLS

Seminar: Mobile KommunikationstechnologienAutor: Uwe SeilerDatum: 5.02.2003Betreuer: Klaus Heck

Page 2: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

2

MPLS - Übersicht

Einführung in MPLS: BegriffserläuterungEinordnung in das OSI-ReferenzmodellEntwicklung von MPLS

Allgemeines zu MPLS: GrundkonzeptVergleich mit Hop-by-Hop-Routing

MPLS im Detail:Die Forwardingkomponente:

LabelForwarding Equivalence Class (FEC)Label Swapping

Die Kontrollkomponente: Label Switched Path (LSP)LabelverteilungLabel Distribution Protocol (LDP)

Traffic Engineering mit MPLS:Allgemeines zum Traffic EngineeringConstraint-based Routing LDP

Zusammenfassung

Page 3: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

3

MPLS„Best of both worlds“

MPLS - Einführung

Was ist MPLS überhaupt?

Packet Forwarding Cell/Ciruit Switching

Bei MPLS handelt es sich um ein verbindungsorientiertes Switching auf der Basis von IP-Routing und zusätzlichen Kontrollprotokollen.

ATM

Frame RelayIP

Flexibility of Hop-by-Hop Routing

Quality of Service + Traffic Engineering

Page 4: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

4

MPLS - Unterstützte Protokolle und Technologien

Welche Protokolle und Technologien werden unterstützt?

Warum dann schon wieder eine neue Technologie?

IP ist heutzutage das dominante Protokoll im Internet.Im Internet am weitesten verbreitet: Best Effort ServicesIP bietet keine Unterstützung von Quality of Service und Traffic Engineering.

MPLS verspricht dagegen:Die Unterstützung von Traffic Engineering für die ProviderDie Realisierung von end-to-end Quality of ServiceDie Möglichkeit der Skalierung in großen NetzwerkenDie Bereitstellung von höherer Performance bei geringeren Kosten

MPLS

IPv6 IPv4 IPX AppleTalk

Ethernet

FDD

I

ATM

Frame

Relay

Point-to-point

Layer 3: Network Layer Protocols

Layer 2: Link Layer Protocols

Layer 2,5: MPLS

Page 5: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

5

MPLS – Geschichte und Standardisierung

Die Entwicklung von MPLS

Hervorgegangen aus unterschiedlichen proprietären Ansätzen:Aggregate Route-Based IP SwitchingCell Switch RoutingTag SwitchingIP NavigatorIP Switching (Ipsilon)

Standardisierung durch die Internet Engineering Task Force. Erstes Framework erschien bereits im März 1997.Mittlerweile sind 12 RFCs und 25 Drafts zu MLPS erschienen.Die Hauptarchitektur von MPLS und die Standards des Signalisierungsprotokolls LDP sind verfügbar, aber die Entwicklung geht natürlich weiter…

MPLS ist ein Proposed Standard der IETF

Page 6: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

6

MPLS – Das Konzept

„Route at the edge, switch in the core.“Versehe Pakete an den Netzwerkgrenzen mit Labels.

MPLS Core Network

Label Edge Router (LER) Analysiert den ankommenden

IP-Verkehr und teilt ihn in Klassen (FEC) ein.

Erfragt und verteilt Labels an den Netzwerkgrenzen.

Führt am Ausgang des Core Networks Routing durch.

Label Switch Router (LSR) Tauscht Labels mit den

benachbarten LSR aus Führt Forwarding im Kern

des MPLS-Netzwerkes aus.

Datenfluss

Ingress Router

Egress Router

Switching

Routing

Routing

Page 7: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

7

MPLS vs. Routing

Ist Hop-by-Hop Routing etwa veraltet?

Traditionelle IP Router haben zeitintensive Aufgaben:Alle Informationen stecken im Paket:

Bei Beginn der Entwicklung von MPLS waren Layer-3-Router noch langsam und teuer.Mittlerweile ist Layer-3-Switching kostengünstig und schnell in der Hardware verfügbar:

Performance ist nicht mehr das Hauptargument für MPLS

MPLS bietet aber andere Funktionen:

Non destination routing Explicit (source) routingTraffic EngineeringLeichte Integration von Virtual Private Networks (VPN)

DatenHeader

Routing Table

000111… Port 1, gw 10.2.3.1001010… Port 4, gw 62.1.7.5011101… Port 7, gw 10.1.1.1

MPLS soll Layer-3-Routing nicht ersetzen!

RouterIP-Paket

Auslesen der Zieladresse Durchführung eines Longest Prefix Matchings

zur Bestimmung des Next Hops Umgang mit Headern variabler Länge

Page 8: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

8

Trennung von Kontroll- und Forwardingkomponente bei MPLS

MPLS Switching besteht aus zwei Hauptkomponenten, die bei MPLS vollkommen getrennt voneinander sind:

Control Component:Dient dem Austausch von Kontrollinformationen mit anderen Routern.Sammelt Informationen über die Netzwerktopologie.Aufbau und Aufrechterhaltung von Forwarding Tables.

Notwendigkeit eines Signalisierungsprotokolls

Forwarding Component:Führt eine Routingentscheidung anhand der Forwarding Table durch.Leitet die Pakete routerintern vom Input Interface zum Output Interface weiter.

Page 9: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

9

MPLS – Definition und Aufbau eines Labels

Was ist ein Label?Ein Label ist ein kurzes Feld fester Größe, das keine interne Struktur aufweist.Ein Label assoziiert immer eine Forwarding Equivalence Class (FEC).Ein Label ist zwischen zwei Label Switch Routern immer eindeutig.

Aufbau und Integration eines Labels:

Label Bits(20 Bits)

Experimental (3Bits)

Stack (1 Bit)

TTL (8 Bit)

Layer-3-HeaderMPLS Shim HeaderLayer-2-Header Data

Label Bits(20 Bits)

Experimental (3Bits)

Stack (1 Bit)

TTL (8 Bit)

Label Bits(20 Bits)

Experimental (3Bits)

Stack (1 Bit)

TTL (8 Bit)

Label 1

Label 2

Label n

Labelstack

MPLS Frame

Page 10: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

10

MPLS – Forwarding Equivalence Class 1

Forwarding Equivalence Class (FEC)

Definition: Eine FEC ist die Menge aller Layer-3 Paketen, die in der gleichen Weise weitergeleitet werden, zum Beispiel über den gleichen Pfad.Eine FEC ist somit eine Menge von Layer-3 Paketen, die auf das gleiche Label gemappt werden können.

Lokale Information

des LERs

Signalling

Label Edge Router (LER) Label Switch Router (LSR)

Classify traffic at the edgeAssign packets to a given FEC

IP Packet

IP Packet

IPPacket

FEC 1

FEC 2

IP Packet

IP Packet

IPPacket

Destination = 10.x.x.xBandwidth = 1000 KBit/s

Priorisation = High

Lokale Speicherung und Verknüpfung mit dem Wert des Labels

Page 11: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

11

MPLS – Forwarding Equivalence Class 2

Forwarding Equivalence Class (Fortsetzung)

Gold Service300 Kbps

Silver Service64 Kbps

Aber auch ein Splitting des Verkehrs von einer Quelle zu einem Ziel ist aus Gründen des Quality of Service möglich.

Normalerweise Bündelung von mehreren Paketen aus verschiedenen Quellen und zu unterschiedlichen Zielen

Aggregation des Verkehrs und Möglichkeit zur Skalierung des Verkehrs

Page 12: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

12

MPLS – Forwarding Table und Algorithmus

Forwarding im Detail

Forwarding Algorithm: Label SwappingWeiterleitung eines Pakets ohne Label:

Ermittlung der zugehörigen FEC durch Analyse des Layer-3-Headers, danach Bestimmung des zugehörigen Labels mittels der Tabelle FTN und Weiterleitung gemäß der Tabelle NHLFE.

Weiterleitung eines Pakets mit Label:Ermittlung des NHLFE mittels der Tabelle ILM und anschließend Weiterleitung

gemäß den entsprechenden Eintragungen in der Tabelle NHLFE.

Weiterleitung am Empfänger eines Pakets: Der LSR stellt anhand der Tabelle NHLFE fest, dass er Empfänger des Pakets ist,

entfernt das Label daraufhin vom Labelstack und reicht das Paket an Schicht 3 zur Weiterverarbeitung

NHLFE

100234300

Next Hop

LSR BLSR DLSR C

Label Operation

Outbound Label

Outbound Port

PushPop

Replace

23

50

3

1

Next Hop Label Forwarding Entry (NHLFE)

FEC-to-NHLFE Map (FTN)FEC NHLFE

ABC

100234300

Incoming Label Map (ILM)Label NHLFE

234450

100234300

Label Information Database (LIB)

MPLS Router

Verwendung eines einzigen

Algorithmus! (Herkömmliches

Routing: 3)

Page 13: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

13

MPLS – Label Switched Path

Label Switched Path (LSP)

Definition: Ein Label Switched Path ist ein virtueller Pfad, der mehrere Label Switch Router miteinander verbindet und entlang dem ein Paket weitergeleitet wird.

Dabei hat jeder Label Switch Router folgende Aufgaben:Verhandlung mit den benachbarten Label Switch Routern über die Label für jede FEC entlang des LSPAufbau der Label Information Base (LIB) zum Mapping der Label zu den zugehörigen FECsNeuverhandlung der Label, falls sich die Topologie ändert oder ein oder mehrere Label verworfen werden

Zur Einrichtung eines LSP müssen die Labelbindings zwischen benachbarten MPLS Routern mit Hilfe eines Signalisierungsprotokolls ausgetauscht werden.

Page 14: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

14

MPLS – Möglichkeiten der Labelverteilung

Labelverteilung

Datenfluss D: 123Upstream (A) Downstream (B)

Upstream (A) Downstream (B)

C: 222 Datenfluss

Upstream (A) Downstream (B)

Request D: 123

D: 123

D: 123

Datenfluss

Datenfluss

Upstream (A)

Downstream (B)

Downstream Label Allocation (Standard):

Upstream Label Allocation:

Downstream-on-Demand:

Unsolicited Downstream:

Page 15: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

15

MPLS – Allgemeines zu Signalisierungsprotokollen

Anforderungen an ein Signalisierungsprotokoll:RobustheitSkalierbarkeitUmsetzung von speziellen Anforderungen des Quality of ServiceAuf- und Abbau von Label Switched PathsSetzen von Prioritäten für einzelne Label Switched PathsMöglichkeiten zum Setzen von alternative Routen sowie zum Rerouting

Signalisierungsprotokolle:Benutzen herkömmliches IP-Routing zur Kommunikation zwischen LSRs und zum Transport von Label BindingsVerfügbare Protokolle und deren Eigenschaften:

Protocol Name Routing Traffic Engineering

LDP Label Distribution Protocol Implicit NO

BGP Border Gateway Protocol Implicit NO

IS-IS Intermediate System-to-Intermediate System Implicit NO

CR-LDP Constraint-based Routing LDP Explicit YES

RSVP-TE Resource Reservation Protocol – Traffic Engineering Explicit YES

OSPF-TE Open Shortest Path First – Traffic Engineering Explicit YES

Page 16: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

16

MPLS – Überblick über das Label Distribution Protocol

Label Distribution Protocol (LDP)

Aufbau eines LSP

Ti me

10.1.x.x 10.2.x.x

HELLO

HELLO

TCP Connectionopen to 10.2.x.x

TCP connect

Initialization

Initialization

Label Request

Label Mapping

1.DiscoveryMessages

2.SessionMessages

3.AdvertisementMessages

+4.Notification

Messages

Page 17: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

17

MPLS – Charakteristiken des Label Distribution Protokolls

Label Distribution Protocol: Hauptmerkmale

LSR Neighbor DiscoveryDer Discovery Mechanismus von LDP läuft über UDP.In periodischen Zeitabständen werden HELLO Messages an alle LSR im gleichen Subnetz geschickt, so dass ein LSR mit der Zeit alle Nachbarn kennt.Danach kann eine LDP Session aufgebaut werden.

Reliable TransportUm einen zuverlässigen Transport sicherzustellen, werden LDP Messages über TCP geschickt.

Extensible MessagesDas LDP ist so designt, dass es einfach erweiterbar ist. Codierung der Messages als eine Sammlung von TLV (type, length, value) Objekten

LDP MessagesDie am meisten benutzten Messages sind:

INITIALIZATION KEEP ALIVE LABEL MAPPING, LABEL WITHDRAWAL, LABEL RELEASE, LABEL REQUEST, LABEL REQUEST ABORT

Page 18: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

18

MPLS – Traffic Engineering

Traffic Engineering

Zielbasiertes Routing tendiert zur Konzentration des Verkehrs:

Ziele des Traffic Engineerings: Reduktion des Verkehrs auf stark benutzten Pfad und Verteilung dieses Verkehrs auf weniger benutzte Pfade Aufbau eines effizienten und zuverlässigen NetzwerkesOptimierung der Benutzung von Netzwerkressourcen und der Performance des Verkehrs (z.B. Minimierung der Paketverluste und der Verzögerung)

Traffic Engineering Anforderungen:Die Netzwerktopologie kann sich ändern.Ressourcen können unterschiedlich zugeteilt werden.Komponenten können ausfallen und somit unerreichbar werden.

Diese Fähigkeit wird als Reoptimization bezeichnet.

?

Page 19: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

19

MPLS – CR-LDP

Constraint-based Routing LDP (CR-LDP)

Arbeitet auf der Ebene von Traffic Trunks: Zusammenfassung von unterschiedlichen TCP- bzw. UDP-Strömen, die den

gleichen Pfad sowie dieselbe Class of Service benutzen.Benutzt dasselbe Protokollformat wie LDP Messages mit zusätzlichen (optionalen) TLVsTeilt sich die TCP-Verbindung mit LDP Definition 7 verschiedener Traffic Parameter:

Peak Data Rate, Peak Burst Size, Committed Data Rate, Committed Burst Size, Excess Burst Size, Frequency, Weight

Erlaubt Traffic Engineering durch die Reservierung von Netzwerkressourcen

Berechnung derexpliziten Route ander Netzwerkgrenze

Jeder LSR muss der Route folgen

Ermöglicht durch die Mitgabe einer Liste von Knoten in einer LABEL REQUEST Message

Ermöglicht Routingauf der Basis von Quality of Service

Explicit Route mit CR-LDP:

Page 20: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

20

MPLS - Fazit

Zusammenfassung: MPLS bietet viele Chancen:

MPLS wird momentan stark von der IETF vorangetriebenMPLS ermöglicht den Providern die Einführung von Quality of ServiceTraffic Engineering ermöglicht eine bessere Auslastung der NetzeEinfache Unterstützung von Virtual Private Networks (VPN)Integration von ATM und IPLässt sich relativ einfach in bestehende Netze integrieren

MPLS birgt aber auch Risiken:MPLS ist im Bereich der Signalisierung noch nicht fertig spezifiziertInteroperabilität zwischen verschiedenen Herstellern kann momentan nicht garantiert werdenAnhebung der Komplexität von IP-Netzen um ein Vielfaches

MPLS wird vor allem beim Neuaufbau von Netzwerken verwendet (China Telecom), aber auch in bestehende Netze wird MPLS integriert (Arcor).

Page 21: Multi-Protocol Label Switching Eine Einführung in MPLS Seminar: Mobile Kommunikationstechnologien Autor: Uwe Seiler Datum: 5.02.2003 Betreuer: Klaus Heck.

21

MPLS – Literaturverzeichnis

Literaturverzeichnis Wichtige Request for Comments (z.B. unter www.rfc-editor.org):

RFC 3031: MPLS ArchitectureRFC 3032: MPLS Label Stack EncodingRFC 3034: Use of Label Switching on Frame Relay Network SpecificationsRFC 3035: MPLS using LDP and ATM VC Switching RFC 3036: LDP SpecificationRFC 3037: LDP ApplicabilityRFC 3038: VCID Notification over ATM Link for LDPRFC 2547: BGP/MPLS VPNsRFC 2702: Requirements for Traffic Engineering over MPLS

Bruce Davie, Yakov Rekhter: MPLS – Technology and Applications, Morgan Kaufmann, 2000

MPLS Resource Center: www.mplsrc.com MPLS Charter: www.ietf.org/html.charters/mpls-charter.html Unofficial MPLS List: www.cellstream.com/MPLS_List.htm