Technische Universität Ilmenau Fakultät für

Transcription

Technische Universität Ilmenau Fakultät für
Technische Universität Ilmenau
Fakultät für Elektrotechnik und Informationstechnik
MPLS-Praktikumsanleitung
Einführung in das Multiprotocol Label Switching (MPLS)
Stand:
Juli 2011
Fachgebiet Kommunikationsnetze
Fakultät für Elektrotechnik und Informationstechnik
Praktikumsbetreuer:
M. Sc. Sebastian Schellenberg
E-Mail: [email protected]
Raum: Z 1088
Telefon: 03677/69-4137
Inhaltsverzeichnis
i
Inhaltsverzeichnis
1 Motivation
1
2 Theoretische Grundlagen - Multiprotocol Label
2.1 Label . . . . . . . . . . . . . . . . . . . . . .
2.1.1 Labelcodierung . . . . . . . . . . . .
2.1.2 Labelbindung . . . . . . . . . . . . .
2.1.3 Forwarding Equivalence Class . . . .
2.1.4 Label Switched Path . . . . . . . . .
2.1.5 Next Hop Label Forwarding Entry .
2.1.6 Incoming Label Map . . . . . . . . .
2.1.7 Penultimate Hop Popping . . . . . .
2.1.8 Weitere Funktionen . . . . . . . . . .
2.2 Label Distribution Protocol . . . . . . . . .
2.3 MPLS Traffic Engineering . . . . . . . . . .
2.4 MPLS Virtual Private Networks . . . . . . .
2.5 MPLS in ATM-Netzen . . . . . . . . . . . .
2.6 Quality-of-Service im MPLS-Netz . . . . . .
3 Praktikumsaufgaben
3.1 Vorbereitungsfragen . . . .
3.1.1 Allgemeine Fragen
3.1.2 MPLS-Label . . . .
3.1.3 MPLS-Funktionen
3.2 Versuchsdurchführung . .
3.2.1 Netzstruktur . . .
3.2.2 MPLS (allgemein)
3.2.3 Quality-of-Service /
3.2.4 MPLS-VPN . . . .
3.3 Nachbereitungsfragen . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
Traffic
. . . .
. . . .
Switching
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
Engineering
. . . . . . .
. . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2
3
5
5
6
6
7
7
8
8
10
11
12
13
13
.
.
.
.
.
.
.
.
.
.
15
16
16
17
18
19
19
24
29
36
42
MPLS-Praktikumsanleitung
Inhaltsverzeichnis
Abkürzungsverzeichnis
ii
43
MPLS-Praktikumsanleitung
1 Motivation
1
1 Motivation
MPLS wurde zur schnellen und einfachen Weiterleitung von Datenpaketen in den Kernnetzen der Provider entwickelt. Bisher erfolgte die Weiterleitungsentscheidung für jedes
einzelne Paket in jedem Router anhand der Zieladresse im Kopf der Datenpakete, welche mit den Einträgen in der Routingtabelle des jeweiligen Routers verglichen und
entsprechend weitergeleitet wurden. Bedingt durch die Größe der Routingtabellen und
der Wiederholung des Nachschlagens für jedes einzelne Paket, ist dieser Prozess sehr
zeitaufwendig. Bei MPLS wird die Weiterleitungsentscheidung anhand eines 20 Bit
langen Labels am Anfang eines Paketes getroffen. Das Paket muss nur am Eingang
zum MPLS-Netz einmal näher auf seine Eigenschaften, wie Zieladresse o.Ä., untersucht und entsprechend gelabelt werden. Die nachfolgenden Router betrachten dann
nur das Label des Paketes und leiten es entsprechend vorher definierter Regeln weiter.
Der Umfang der Label ist im Vergleich zu den IP-Adressen gering, sodass der Vorgang
weniger komplex ist. Zusätzlich bietet MPLS weitere Funktionalitäten, wie Virtual Private Networks (VPN) und Traffic Engineering. Die Funktion des Traffic Engineering
ermöglicht die gezielte Wegewahl im Netz, wodurch es den Providern möglich ist, spezielle Pfade für besonders breitbandige oder auch latenzsensitive Dienste anbieten zu
können und somit eine gewisse Dienstgüte für diese Pakete zu realisieren. MPLS-VPNs
werden eingesetzt, um Geschäftstellen einer Firma mit Hilfe von virtuellen Pfaden im
Backbone der Service Provider zu verbinden und somit die Nutzung teurer dedizierter
Standleitungen unnötig zu machen.
MPLS kann als Verbindung der flexiblen, paketvermittelten Übertragungstechnik
durch IP und der traditionellen, leitungsvermittelten Übertragung angesehen werden.
Die Vorteile, die eine Leitungsvermittlung mit sich bringt, werden somit in das IPNetz eingebaut. Demgegenüber stehen folgende Nachteile, wie festgeschriebene Wege
und die feste Zuordnung von Paketen zu einer Klasse, die im kompletten Gegensatz
zum Internet Protocol stehen. MPLS bietet aber die benötigte Flexibilität, da z.B.
Pfade dynamisch angepasst werden können.
MPLS-Praktikumsanleitung
2 Theoretische Grundlagen - Multiprotocol Label Switching
2
2 Theoretische Grundlagen Multiprotocol Label Switching
Die MPLS Architektur wird im RFC 3031 beschrieben. Hinzu kommen verschiedene
RFCs, in denen bestimmte Funktionen und Bestandteile, wie das Label Distribution
Protocol (LDP) näher beschrieben werden. Eine Auswahl wichtiger Protokolle zeigt die
nachfolgende Tabelle 2.1. Die komplette Liste der Internet-Drafts und Standards rund
um MPLS ist auf der Webseite1 der MPLS Working Group der Internet Engineering
Task Force (IETF) zu finden.
Titel
Requirements for Traffic Engineering Over
MPLS
Multiprotocol Label Switching Architecture
MPLS Label Stack Encoding
Use of Label Switching on Frame Relay Networks Specification
MPLS using LDP and ATM VC Switching
LDP Specification
Carrying Label Information in BGP-4
RFC
Jahr
RFC 2702 09-1999
RFC 3031 01-2001
RFC 3032 01-2001
RFC 3034 01-2001
RFC 3035 01-2001
RFC 3036 01-2001
RFC 3107 05-2001
Tabelle 2.1: Auswahl wichtiger Protokolle rund um MPLS
Im Netzwerk wird für jedes einzelne Paket in jedem Router eine seperate Weiterleitungsentscheidung getroffen. Dies geschieht durch die Auswertung der Headerinformationen, wie der Zieladresse oder anderer Parameter. Da der Header noch mehr Informationen enthält, die für die Weiterleitungsentscheidung nicht relevant sind, müssen die
benötigten Informationen einzeln extrahiert und betrachtet werden. Die Weiterleitung
kann in zwei Bereiche unterteilt werden. Zum einen müssen die Pakete einer Weiterleitungsklasse (Forwarding Equivalence Class, FEC) zugeordnet werden. Zum anderen
muss für die FEC der entsprechende nächste Hop gefunden werden. Bei MPLS wird die
Weiterleitungsentscheidung anhand eines fest definierten Labels getroffen. Betritt ein
1
http://datatracker.ietf.org/wg/mpls/
MPLS-Praktikumsanleitung
2 Theoretische Grundlagen - Multiprotocol Label Switching
3
Paket ein MPLS-Netz, so wird es am Eingangsrouter, dem sogenannten Ingress-Router,
näher untersucht und anhand der gewonnenen Informationen aus dem Paketheader zu
einer FEC zugeordnet. Dies wird in der nachfolgenden Abbildung 2.1 dargestellt. Es
zeigt den Vergleich zwischen dem IP-Weiterleitungsmechanismus, dem Longest-PrefixMatch-Verfahren, und der MPLS-Weiterleitung.
Weiterleitungstabelle
nächster Hop
+ Port
Paketklassifizierung
eingehende
Ports
IP Header
ausgehende
Ports
Queuing und
Scheduling
Switchingtabelle
nächster Hop
+ Port
ausgehende
Ports
Queuing und
Scheduling
eingehende
Ports
Daten
MPLS Label
IP Forwarding
Daten
MPLS Forwarding
Abbildung 2.1: Vergleich IP- und MPLS-Forwarding
2.1 Label
Das MPLS-Label ist ein 20 Bit langer Identifier, der zwischen den Sicherungsschichtheader (z.B. Ethernet) und den Vermittlungsschichtheader (z.B. IP) eines Paketes
gesetzt wird und für die Weiterleitung innerhalb eines MPLS-Netzes genutzt wird. Der
Aufbau des Labels ist in Abbildung 2.2 zu sehen. Das Label ordnet ein gelabeltes Paket
einer Forwarding Equivalence Class zu, welche in der Regel durch die IP-Zieladresse
des entsprechenden Paketes repräsentiert wird. Das Label ist jedoch keine Kodierung
der IP-Zieladresse, sondern steht für sich selbst. Die Label haben dabei nur eine lokale
Bedeutung, das heißt, dass sie nicht global eindeutig sein müssen bzw. für eine FEC
immer das gleiche Label verwendet wird.
0
...
Label
19 20
... 22 23 24 ... 31
S
TTL
Exp
Abbildung 2.2: Aufbau eines MPLS-Labels
Nachfolgend ist die Bedeutung der einzelnen Felder aufgelistet:
• Label : lokal eindeutiger Identifier, Länge: 20 Bit
• Exp: Experimental Bits, Länge: 3 Bit
MPLS-Praktikumsanleitung
2 Theoretische Grundlagen - Multiprotocol Label Switching
4
• S : Bottom of Stack - dient zur Kennzeichnung, ob noch weitere Label im Stack
folgen, Länge 1 Bit
• TTL: Time-to-Live - definiert die Lebensdauer eines MPLS-Paketes, Länge: 8
Bit
Es ist zu beachten, dass die Werte für ein Label zwischen 0 und 15 (Wertebereich:
0 bis 220 − 1) reserviert sind und nicht in einem produktiven Netzwerk zu verwenden
sind. Die nachfolgende Tabelle 2.2 gibt Aufschluss über ihre Bedeutung.
Labelwert
Bedeutung
Beschreibung
0
IPv4 Explicit NULL Label Zeigt an, dass es das letzte Label auf
dem Stapel ist und vom Router entfernt werden soll. Anschließend erfolgt
die Weiterleitung anhand des IPv4Headers.
1
Router Alert Label
Dieses Label kann nicht am Ende
des Labelstacks auftreten, sondern nur,
wenn sich danach noch weitere Label auf dem Stack befinden. Ist es
das oberste Label, so wird das Paket
an ein lokales Softwaremodul zur Weiterverarbeitung geschickt. Die MPLSWeiterleitungsentscheidung wird anhand des nachfolgenden Labels bestimmt, jedoch wird das Router Alert
Label wieder als Top-Label gesetzt.
2
IPv6 Explicit NULL Label Zeigt an, dass es das letzte Label auf
dem Stapel ist und vom Router entfernt werden soll. Anschließend erfolgt
die Weiterleitung anhand des IPv6Headers.
3
Implicit NULL Label
Dieser Wert wird nicht als Label verwendet, ist der Vollständigkeit halber
aber reserviert.
4-15
reserviert
Reserviert für zukünftige Verwendung.
Tabelle 2.2: Reservierte MPLS-Label und ihre Bedeutung
Wie bereits angedeutet, können sich auch mehrere Label auf dem sog. Label-Stack
befinden. Das ermöglicht es geschachtelte LSPs aufzubauen, die es erlauben Pakete
und ihre Wege durch das Netz genauer zu differenzieren. Dadurch wird es auch erst
möglich, Virtual Private Networks (VPNs) zu realisieren, indem das MPLS-Label als
MPLS-Praktikumsanleitung
2 Theoretische Grundlagen - Multiprotocol Label Switching
5
Kapselung für das zu übertragende Datenpaket genutzt wird und die Zuordnung zu
bestimmten Kundennetzen erlaubt. Die Label auf dem Label-Stack werden nach dem
last-in, first-out Prinzip (LIFO) abgearbeitet. Das oberste Label bestimmt dabei, wie
das Paket zu bearbeiten ist.
2.1.1 Labelcodierung
MPLS kann auf unterschiedlichen Schicht-2-Protokollen aufsetzen. Das MPLS-Label
kann dabei auf verschiedene Weisen codiert werden. Im Frame-Modus, wie er z.B. bei
Ethernet verwendet wird, wird der Labelwert als eigener Header vorangestellt (siehe
Kapitel 2.1). Im Gegensatz dazu steht der Zell-Modus, der beim Asynchronous Transfer
Mode (ATM) Verwendung findet (siehe Kapitel 2.5), bei dem das MPLS-Label in nicht
benötigten Feldern des Schicht-2-Headers codiert wird, da ATM mit festen Paketgrößen
von 53 Byte, hier Zellen genannt, arbeitet und es daher nicht möglich ist einen weiteren
Header hinzuzufügen. Im MPLS-Netz werden in diesem Fall die Headerfelder für den
Virtual Path Identifier (VPI) und den Virtual Channel Identifier (VCI) als Platz für
das Label verwendet.
2.1.2 Labelbindung
Die Labelbindung, also die Zuordnung zwischen Zieladresse und dem zu verwendenden
MPLS-Label, wird in einem MPLS-Netz von den Ausgangsroutern, die als EgressRouter bezeichnet werden, her aufgebaut. Die Egress-Router bilden den Übergang
zwischen MPLS-Netz und IP-Netz. Dabei ist es möglich, dass sie für jedes IP-Subnetz,
welches sie erreichen, ein MPLS-Label einrichten und diese Information an ihren vorhergehenden MPLS-Knoten weiterleiten. Den Eintrittspunkt in ein MPLS-Netzwerk
stellen die Ingress-Router dar. Sie haben die Aufgabe, eingehende Pakete entsprechend
ihrer Zieladresse oder anderer Kriterien ein Label zuzuweisen und sie in das MPLSNetz weiterzuleiten. Anhand von Abbildung 2.3 werden weitere Begrifflichkeiten im
Zusammenhang mit MPLS erklärt.
Leitet ein Router, z.B. Core-1, ein gelabeltes Paket an den nächsten MPLS-Router,
z.B. Core-3, weiter, so wird der Router Core-1 als Upstream-Router bezeichnet und
der empfangende Router Core-3 wird als Downstream-Router bezeichnet. Allgemein
werden MPLS-fähige Router als Label Switch Router (LSR) bezeichnet.
Die Zuordnung eines Labels zu einer FEC geschieht immer ausgehend von einem
Downstream-Router, welcher dann seine Upstream-Router über die Bindung informiert.
Es wird gesagt, dass die Label downstream-assigned sind und sich die Labelbindung
MPLS-Praktikumsanleitung
2 Theoretische Grundlagen - Multiprotocol Label Switching
6
Core-2
Core-1
Egress
Ingress
MPLS-Kernnetz
Core-4
Core-3
Abbildung 2.3: MPLS-Beispielnetz
vom Downstream-Router in Richtung Upstream-Router ausbreitet. Der Labelaustausch
wird dabei von speziellen Protokollen (siehe Abschnitt 2.2) realisiert.
2.1.3 Forwarding Equivalence Class
Erreicht ein IP-Paket den Ingress-Router eines MPLS-Netzes, wird ihm ein Label zugeordnet, welches in der Regel anhand der Zieladresse bzw. eines Subnetzbereiches
bestimmt wird. Der Weg des gelabelten Paketes durch das MPLS-Netz ist danach vorgegeben. Das Label repräsentiert dabei eine Forwarding Equivalence Class (FEC), die
die Eigenschaften und die Weiterleitungsentscheidungen für das entsprechende Paket
darstellt.
2.1.4 Label Switched Path
Als Label Switched Path (LSP) bezeichnet man den kompletten Weg eines gelabelten
Paketes vom Ingress-Router bis zum Egress-Router durch das MPLS-Netz. Der LSP
wird durch die Zuordnung des Paketes zu einer FEC bestimmt. In der nachfolgenden Abbildung 2.4 bilden die Router R1 bis R4 den LSP mit den einzelnen, lokalen
Labelwerten L1 bis L3.
IP
IP
R1
R2
IP
L1
R3
IP
L2
R4
IP
L3
Abbildung 2.4: Label Switched Path
MPLS-Praktikumsanleitung
2 Theoretische Grundlagen - Multiprotocol Label Switching
7
Es kann beim Aufbau eines LSP zwischen zwei verschiedenen Varianten unterschieden werden. Das ist zum einen der Independent LSP Control Modus, bei dem jeder
LSR bei Erkennen einer neuen FEC eine unabhängige Entscheidung für die Labelauswahl für diese FEC trifft. Diese Bindung verbreitet er dann an seine Nachbarknoten.
Dieses Verfahren ist vergleichbar mit der Weiterleitungsentscheidung in IP-Netzen, da
jeder Knoten unabhängig die Entscheidung zur Handhabung eines Paketes trifft.
Als zweites gibt es den Ordered LSP Control Modus, bei dem der LSR nur eine
Bindung zwischen Label und FEC erstellt, wenn er der Egress-Router für diese FEC
ist, oder der LSR bereits eine Labelbindung von einem anderen LSR für diese FEC
erhalten hat. Um den Weg für eine bestimmte Verkehrsklasse durch das Netz festzuschreiben und die gewünschten Parameter zu sichern, ist die Nutzung des Ordered
LSP Control Modus Pflicht, da es ansonsten bei der Nutzung des Independent LSP
Control Modus möglich ist, dass sich einzelne LSR in den Pfad einbinden, bevor dieser
komplett aufgebaut ist und somit eine Sicherstellung der benötigten Ressourcen nicht
gegeben ist.
Beide Modi können in einem Netz parallel zur Anwendung kommen. Jedoch ist
das Verhalten des Gesamtnetzes vorrangig die des Independent LSP Control Modus,
solange nicht alle LSR den Ordered LSP Control Modus benutzen. Welcher Modus
verwendet wird, hat keinen Einfluss auf die Wahl eines Label Distribution Protocols
(vgl. Abschnitt 2.2).
2.1.5 Next Hop Label Forwarding Entry
Das Next Hop Label Forwarding Entry (NHLFE) wird bei der Weiterleitung von gelabelten Paketen verwendet und entspricht der Label Forwarding Information Base
(LFIB) auf den Routern. Es beinhaltet die folgenden Informationen:
1. Nächster Hop des Pakets
2. Labeloperation (Ersetzen, Entfernen, Hinzufügen)
2.1.6 Incoming Label Map
Die Incoming Label Map (ILM) dient zur Abbildung der eingehenden, gelabelten Pakete
auf die NHLFEs. Es ist möglich, dass einem Paket mehrere NHLFEs durch die ILM
zugeordnet werden. Ist dies der Fall, wird ein Eintrag zufällig ausgewählt. Mehrere
Einträge können dabei dem Lastenausgleich dienen.
MPLS-Praktikumsanleitung
2 Theoretische Grundlagen - Multiprotocol Label Switching
8
Treffen ungelabelte Pakete auf einem Router ein, wird die FEC-to-NHLFE Map
(FTN) verwendet, um ihnen ein Label entsprechend der FEC zuzuordnen und dann
weiterzuleiten. Es ist ebenfalls möglich, mehrere NHLFEs anzugeben, von denen aber
nur jeweils einer für die Weiterleitung ausgewählt wird. Durch die zusätzlichen Einträge
ist es möglich eine Art Lastenausgleich zu realisieren.
2.1.7 Penultimate Hop Popping
Ein Label hat die Aufgabe, ein Paket zu kennzeichnen und somit dessen Weg durch
das MPLS-Netz zu bestimmen. Ausgehend von Abbildung 2.4 wird das Verfahren
Penultimate Hop Popping (PHP) beschrieben, bei dem der Router R3 das Paket ohne
Label an den Router R4 weiterleiten kann. Router R3 erkennt anhand des Labels L2, an
welches Ziel das Paket gerichtet ist und über welches Interface es rausgeschickt werden
muss. Zusätzlich weiß R3, dass er der vorletzte Router auf dem Weg zum Ziel ist, somit
hat das Anhängen eines weiteren Labels keinen Sinn für die Weiterleitung. Router R4
empfängt das Paket ohne Label und da es der letzte Router auf dem LSP ist, trifft
es die Weiterleitungsentscheidung anhand des IP-Headers. Würde Router R3 auf dem
letzten Link ein Label L3 an das Paket anfügen, hätte Router R4 die Aufgabe das Label
zu betrachten und stellt dabei fest, dass es für das Paket der Egress-Router ist und
R4 somit das Label zu entfernen hat, da es für die weiteren Betrachtungen keine Rolle
spielt. Anschließend wird der IP-Header für die Weiterleitungsentscheidung betrachtet.
Mit dem PHP-Verfahren fällt der Schritt des Labelentfernens weg, da dies schon der
vorletzte Router (engl. penultimate hop), hier R3, erledigt hat. Als Vergleich kann die
nachfolgende Abbildung 2.5 herangezogen werden.
IP
IP
R1
R2
IP
L1
R3
IP
L2
R4
IP
Abbildung 2.5: Penultimate Hop Popping
2.1.8 Weitere Funktionen
MPLS bietet weitere Möglichkeiten, den Verkehr im Netzwerk zu steuern und zu beeinflussen. Dabei spielt das Label eine zentrale Rolle, welche durch weitere Funktionen
MPLS-Praktikumsanleitung
2 Theoretische Grundlagen - Multiprotocol Label Switching
9
in den LSR ergänzt werden kann. Die nachfolgenden Punkte stellen eine Auswahl zusätzlicher Funktionen dar und können für den Betrieb eines MPLS-Netzes von großer
Bedeutung sein.
Time-to-Live Das Time-to-Live-Feld (TTL) wird wie beim klassichen IP-Paket für
verschiedene Aufgaben verwendet. Es hat die Aufgabe, die Lebensdauer eines Paketes
zu begrenzen, da jeder Router, den das Paket durchläuft, das TTL-Feld um 1 dekrementiert. Dadurch wird erreicht, dass Pakete, die in einer eventuell auftretenden
Schleife in der Weiterleitungskette gefangen sind, nach einer gewissen Zeit verworfen
werden. Dieser Mechanismus wird auch für die Bereitstellung anderer Funktionen genutzt, so verwendet der Traceroute-Befehl genau diese Funktion, um den Weg eines
Paketes durch das Netz nachzuvollziehen. Erreicht ein IP-Paket einen MPLS IngressRouter, so fügt dieser das entsprechende Label für die Weiterleitung im MPLS-Netz an
und setzt ein Wert in das eigene TTL-Feld ein. Dadurch ist das MPLS-Netz bei einem
Traceroute unsichtbar. Es besteht jedoch die Möglichkeit, den Wert des IP-TTL-Feldes
in das MPLS-TTL-Feld zu übernehmen, um es auf dem Weg durch das Netz dekrementieren zu können. Wenn das Paket das MPLS-Netz am Egress-Router verlässt,
wird der aktuelle Wert wieder in das IP-TTL-Feld zurückgeschrieben. Dies hat den
Vorteil, dass der komplette Pfad des Paketes nachvollziehbar ist. Diese Funktion muss
allerdings in den MPLS-Routern aktiviert werden.
Unsolicited Downstream vs. Downstream-on-Demand Es gibt zwei Varianten, wie
die LSRs die Labelbindung zu einer FEC erhalten können. Es ist möglich, dass sie
die Bindung explizit von ihrem Nachbarrouter anfordern. Dieses Verfahren wird als
Downstream-on-Demand Labelaustausch bezeichnet. Zum anderen können die LSR
eine Labelbindung an ihre Nachbarn senden, ohne das diese sie explizit angefordert
haben. Dieses Verfahren bezeichnet man als Unsolicited Downstream Labelaustausch.
Beide Verfahren können gleichzeitig in einem Netz verwendet werden, jedoch müssen
sich ein Upstream-LSR und der zugehörige Downstream-LSR auf ein Verfahren zum
Labelaustausch einigen.
Aggregation Im Allgemeinen erstellen die LSR für jedes Adresspräfix, welches bei ihnen anliegt und geroutet wird, eine FEC. Dies kann unter Umständen zu einer Vielzahl
von Labeln und FECs führen, die in einem MPLS-Netz verbreitet werden. Angenommen ein Egress-Router erreicht mehrere unterschiedliche Subnetze auf IP-Ebene und
verbreitet für jedes Subnetz ein eigenes Label, dann werden die Pakete für die unter-
MPLS-Praktikumsanleitung
2 Theoretische Grundlagen - Multiprotocol Label Switching
10
schiedlichen Subnetze zwar durch die Label separiert, sie enden jedoch alle auf dem
selben Router. Von daher gibt es die Möglichkeit, verschiedene Label zusammen zu
fassen, die das gleiche Ziel haben. Dadurch kann die Zahl der Label in einem Netz und
somit auch der Verwaltungsaufwand gesenkt werden.
2.2 Label Distribution Protocol
Das Label Distribution Protocol (LDP) dient zum Austausch der Bedeutung der Labelwerte zwischen den einzelnen Label Switch Routern (LSR). Es gibt verschiedene
Protokolle, die dafür verwendet werden. So wurden bestehende Protokolle, wie das
Border Gateway Protocol (BGP), zur Übertragung der Labelinformationen erweitert
oder im Fall von LDP neu spezifiziert. Beim LDP werden die zwei LSRs, die untereinander ihre Labelinformationen austauschen, als LDP Peers bezeichnet. Sie bauen
dazu eine LDP Session auf, welche eine bidirektionale Kommunikation zwischen den
Peers erlaubt. Um eine zuverlässige Übertragung der Daten zu gewährleisten, wird
das Transmission Control Protocol (TCP) für die Übertragung der Session-, Advertisement-, und Notification-Nachrichten verwendet. Einzig die Discovery-Nachrichten
werden mit dem User Datagram Protocol (UDP) übertragen, da die LSR ihre entsprechenden Peers noch nicht kennen und direkt adressieren können. Die einzelnen
Nachrichten haben folgende Aufgaben:
• Discovery-Nachrichten: Bekanntmachung und Aufrechterhaltung der Präsenz eines LSR im Netzwerk
• Session-Nachrichten: Aufbau, Aufrechterhaltung und Beendigung von Sessions
zwischen LDP Peers
• Advertisement-Nachrichten: Erzeugung, Änderung und Löschen von Label zu
FECs Zuordnungen
• Notification-Nachrichten: Signalisierung von Fehlerinformationen
Während der Discovery-Phase senden die LSR periodisch LDP Link Hello-Nachrichten über ihr Interface, welche als UDP Pakete an die Multicastadresse aller Router in
dem entsprechenden Subnetz gerichtet sind. Als Zielport dient bei TCP und UDP
jeweils der Port 646. Die LDP Session wird durch regelmäßige Übertragung von Nachrichten bzw. durch KeepAlive-Nachrichten aufrechterhalten, da sonst ein Timer abläuft
MPLS-Praktikumsanleitung
2 Theoretische Grundlagen - Multiprotocol Label Switching
11
und die Verbindung schließt. Die gelernten Label und die Zuordnung zu den AdressPräfixen speichern die LSR in der Label Information Base (LIB).
Das LDP-Protokoll bietet einen eigenen Mechanismus zur Schleifenerkennung, um
beim Aufbau der LSPs Schleifen zu verhindern. Dafür wird ein Pfadvektor und die Anzahl der durchlaufenen Knoten in den Label Request- bzw. Label Mapping-Nachrichten
gespeichert. In dem Pfadvektor werden alle Router mit ihren Identifiern (ID) aufgelistet, die das jeweilige Paket durchlaufen hat. Dabei hängt jeder Router seine ID an,
wenn er das Paket weiterleitet. Empfängt ein Router ein Paket, in dessen Pfadvektor
bereits die eigene ID eingetragen ist, erkennt der Router eine Schleifenbildung. Zusätzlich kann die Länge des Pfadvektors begrenzt werden, sodass nur eine bestimmte
Anzahl an Routern gelistet werden kann. Ist die maximale Länge erreicht, behandelt
der Router das Paket als habe es eine Schleife durchlaufen.
2.3 MPLS Traffic Engineering
Die Funktion des MPLS Traffic Engineerings erlaubt eine gezielte Planung von Wegen
und Kapazitäten in einem MPLS-Netzwerk. Bisher waren solche Funktionen nur auf
Schicht-2 mit ATM oder Frame Relay möglich. MPLS führt diese Möglichkeiten auf
Schicht-3 ein, sodass nicht wie bisher zusätzliche Overlay-Netzwerke auf die bestehende
Infrastruktur aufgebaut werden müssen.
MPLS Traffic Engineering baut auf eine lauffähige MPLS-Installation auf und benötigt daher auf allen Routern jeweils ein aktiviertes Routingprotokoll (z.B. IS-IS),
das IP Cisco Express Forwarding (CEF) sowie MPLS ansich. Zur Realisierung werden
auf den Routern Tunnelinterfaces angelegt, deren Betriebsart als Traffic Engineering
definiert wird. Die Tunnel sind dabei immer unidirektional, d.h. sie verlaufen in der
Regel nur von den Ingress-Routern zu den Egress-Routern und bilden somit ein virtuell vollvermaschtes Netz. Dabei können die Pfade, die die Pakete durch den Tunnel
wählen, dynamisch durch die entsprechenden zugrunde liegenden Routingprotokolle
generiert werden oder durch die Definition explizieter Pfade manuell bestimmt werden. Somit ist es möglich, Wege und somit auch Kapazitäten im Netzwerk zu planen
und entsprechend zu dimensionieren. Zur Unterscheidung der Datenpakete kann das
Differentiated Services- (DS) bzw. das Traffic Class- (TC) Feld benutzt werden und es
können für verschiedene Verkehrsklassen gezielt Wege geplant werden.
MPLS-Praktikumsanleitung
2 Theoretische Grundlagen - Multiprotocol Label Switching
12
2.4 MPLS Virtual Private Networks
MPLS ermöglicht es, Virtual Private Networks (VPNs) aufzubauen. Dies kann z.B.
für die Verbindung verschiedener Standorte einer Firma über das MPLS Kernnetz des
Providers genutzt werden. Die Spezifikation erfolgt im RFC4364. Beim Aufbau eines
MPLS-VPNs werden drei Kategorien von Routern unterschieden:
• Costumer-Edge (CE) Router: Kundenrouter, die die Verbindung zum Provider
herstellen.
• Provider-Edge (PE) Router: Verbindungsrouter auf der Providerseite zu den
Kundenroutern.
• Provider Router: Router im Kernnetz des Providers.
Die Provider -Router bilden des Kernnetz und sind nur für die Weiterleitung der mit
einem MPLS-Label versehenen Pakete zuständig. Sie benötigen keine Informationen
über die VPNs, da die Kapselung der Pakete für unterschiedliche VPNs durch verschiedene MPLS-Label realisiert wird und die Weiterleitung dieser Pakete durch das reguläre MPLS-Forwarding geschieht. Für diese Kapselung sorgen die Provider-Edge-Router,
die die Pakete von den Costumer-Edge-Routern entgegennehmen und zur Gegenstelle des Kunden weiterleiten. Zum Austausch der Informationen über die Gegenstellen,
wird auf den PE-Routern das BGP-Protokoll verwendet. Dies ist unabhängig von dem
verwendeten Routingprotokoll im Kernnetz des Providers und dient allein dem Austausch der VPN-Informationen. Dadurch ist es möglich, dass die Kernnetzrouter keine
Informationen über das VPN haben, was den Konfigurationsaufwand für das VPN gering hält. Ein weiterer Vorteil ist, dass die CE-Router über keine MPLS-Funktionalität
verfügen müssen, da die Umsetzung von IP auf MPLS durch die PE-Router erledigt
wird. Die CE-Router liefern die Routinginformationen für das interne Kundennetz per
BGP an die PE-Router. Zur Identifikation und Unterscheidung verschiedener VPNs
auf einem PE-Router dient der sog. Route Distinguisher (RD). Nachteilig an dem
MPLS-VPN ist, dass die Kapselung der Pakete ausschließlich durch das MPLS-Label
erfolgt und sie somit nicht verschlüsselt bzw. in irgend einer Form gesichert übertragen
werden. Im Allgemeinen wird mit einem VPN die gesicherte Übertragung von Daten
verbunden, was hier nicht gegeben ist und somit durch weitere Mechanismen ergänzt
werden sollte.
MPLS-Praktikumsanleitung
2 Theoretische Grundlagen - Multiprotocol Label Switching
13
2.5 MPLS in ATM-Netzen
Die Verwendung von MPLS in ATM-Netzen ist bereits in der Architekturbeschreibung
gegeben, sowie durch ein spezielles RFC genauer definiert.
Bei ATM wird zur Codierung des Labels der Zell-Modus verwendet, bei dem die
MPLS-Label in dem Virtual Path Identifier (VPI) bzw. dem Virtual Channel Identifier
(VCI) Feld codiert werden. Dabei können drei verschiedene Formen verwendet werden:
• Switched Virtual Circuit (SVC) Encoding: Verwendet das VPI/VCI-Feld für die
Codierung des Top-Labels. Jeder LSP ist somit als eigener ATM SVC realisiert.
• Switched Virtual Path (SVP) Encoding: Verwendet das VPI-Feld zur Codierung
des Top-Labels, im VCI-Feld kann ein weiteres Label codiert werden.
• Switched Virtual Path (SVP) Multipoint Encoding: Verwendet ebenfalls das VPIFeld zur Codierung des Top-Labels, jedoch nur einen Teil des VCI-Feldes für
ein eventuell zweites Label auf dem Stack. Der noch freie Teil des VCI-Feldes
wird zur Identifizierung des LSP-Ingress-Knoten benutzt. Dadurch ist es möglich,
Multipoint-to-Point Verbindungen aufzubauen.
Werden mehr als zwei Label in einem ATM-Netz benötigt, müssen die jeweiligen
ATM Encodings mit dem generischen Encoding kombiniert werden. Dies sorgt jedoch
für zusätzlichen Overhead bei der Übertragung.
2.6 Quality-of-Service im MPLS-Netz
Das MPLS-Protokoll alleine stellt noch keine Dienstgütefunktionen zur Verfügung. Es
bietet jedoch eine solide Grundlage, um auf den geplanten MPLS-Pfaden im Netz eine
Dienstgüte zu realisieren, da die Grundlage für MPLS die Separierung unterschiedlicher Verkehrsströme ist. Es gibt verschiedene Verfahren, Dienstgüte in einem Netzwerk
zu realisieren, nachfolgend wird das Differentiated Services-Verfahren (DiffServ ) vorgestellt, welches als Erweiterung zu MPLS vorgesehen ist.
Zur Realisierung des DiffServ -Verfahrens wird im IP-Header das Type of ServiceFeld (TOS) bei IPv4 bzw. das Traffic Class-Feld (TC) bei IPv6 benutzt. Allgemein
werden die Felder als Differentiated Services-Feld (DS) bezeichnet. Die Anordnung und
Größe der jeweiligen Felder sind in der nachfolgenden Abbildung 2.6 dargestellt.
Da MPLS eine Kapselung der IP-Pakete vornimmt, ist die direkte Auswertung des
DS -Feldes nicht möglich. MPLS unterstützt das DiffServ -Verfahren, indem die drei
MPLS-Praktikumsanleitung
2 Theoretische Grundlagen - Multiprotocol Label Switching
14
Abbildung 2.6: Vergleich zwischen IPv4- und IPv6-Header
freien Bits im MPLS-Header (Exp), welche für die experimentelle Nutzung gedacht
waren (siehe Abschnitt 2.1), zur Codierung der DiffServ -Klassen verwendet werden.
Die Festlegung zur Nutzung dieses Feldes erfolgte im RFC5462, der die Umbenennung
des EXP -Feldes im MPLS-Header in Traffic Class-Feld (TC) beschreibt. Die Umsetzung des DS -Feldes vom IP-Paket auf das TC -Feld im MPLS-Header übernimmt dabei
der Ingress-Router.
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
15
3 Praktikumsaufgaben
Es werden vier Module bereit gestellt, von denen zwei der Grundlagenvermittlung
dienen und die anderen zwei spezielle Funktionen der MPLS-Technologie behandeln,
von denen jedoch nur eine während des Praktikums zu bearbeiten ist. Die Auswahl
des zu bearbeitenden Moduls kann dabei nach den eigenen Interessen gewählt werden.
Das verbleibende Modul kann, wenn noch genügend Zeit zur Verfügung steht, natürlich
ebenfalls bearbeitet werden. Die nachfolgende Tabelle 3.1 listet die Module auf.
Modulname
Bearbeitung
Grundlagen
Netzstruktur
obligatorisch
MPLS (allgemein)
obligatorisch
Vertiefung QoS / Traffic Engineering
fakultativ
MPLS-VPN
fakultativ
Tabelle 3.1: Übersicht Praktikumsmodule
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
16
3.1 Vorbereitungsfragen
3.1.1 Allgemeine Fragen
(1) Zu welcher Klasse von Routingprotokollen gehört MPLS, auf welcher
Schicht im ISO/OSI-Modell befindet es sich?
•
•
(2) Wie werden bei MPLS die einzelnen Router in der nachfolgenden Abbildung
bezeichnet?
Router-2
Router-3
Router-6
Router-1
MPLS-Netzwerk
Router-4
Router-5
Paketrichtung
Abbildung 3.1: MPLS-Netzwerk
• Router-1:
• Router-2:
• Router-3:
• Router-4:
• Router-5:
• Router-6:
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
17
(3) Welche Funktion haben die Router?
• Ingress:
• LSR:
• Egress:
3.1.2 MPLS-Label
(4) Wie ist der MPLS-Header aufgebaut und welche Werte kann er annehmen?
•
•
•
•
Wertebereich:
(5) Welche reservierten Labelwerte gibt es?
•
•
•
•
•
(6) Welche Richtung gehen die Label beim Aufbau eines Label Switched Path
(LSP) während des Labelaustausches und welche zwei Verfahren gibt es beim
Aufbau des LSP?
• Richtung:
• Verfahren:
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
18
3.1.3 MPLS-Funktionen
(7) Erklären Sie kurz die Funktionsweise und die Ziele von Penultimate Hop
Popping (PHP).
(8) Erklären Sie kurz die Funktionsweise von MPLS-VPN. Welchen Unterschied
zu anderen VPN-Varianten gibt es?
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
19
3.2 Versuchsdurchführung
3.2.1 Netzstruktur
(1) Verschaffen Sie sich, anhand des nachfolgenden Netzbildes, einen Überblick
über das Praktikumsnetz. Unter welcher IP-Adresse erreichen Sie die
Kernnetzrouter R1, R2 und R3?
• R1:
• R2:
• R3:
(2) Überprüfen Sie die Erreichbarkeit der Kernnetzrouter von Ihrer Workstation
aus.
Nutzen Sie dazu den Befehl:
ping <IP-Adresse>
(3) Sind alle Router erreichbar?
•
(4) Loggen Sie sich auf Router R1 ein.
Öffnen Sie dazu eine Telnetverbindung zu Router R1, indem Sie auf die entsprechende
Schaltfläche der GUI klicken:
telnet <IP-Adresse R1>
Trying <IP-Adresse R1> ... Open
User Access Verification
Password:
r1>
Passwort: vtp
Loggen Sie sich mit dem Benutzer student“ ein:
”
r1>login
Username: student
r1#
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
20
(5) Überprüfen Sie auf Router R1 die Interfacekonfiguration.
Nutzen Sie dazu den Befehl:
show interfaces summary
Tragen Sie die Ergebnisse in die nachfolgende Tabelle 3.2 ein.
Interfacename
Status
Tabelle 3.2: Interfaces auf Router R1
(6) Was fällt Ihnen anhand der Ausgabe bei Interface FastEthernet 1/0 auf?
•
(7) Lassen Sie sich die Konfiguration der FastEthernet-Schnittstellen anzeigen.
Nutzen Sie den Befehl:
show interfaces | section FastEthernet
Tragen Sie die IP-Adressen und Subnetzmasken der Interfaces in die nachfolgende
Tabelle 3.3 ein.
Interfacename
IP-Adresse
Subnetzmaske
Status
Tabelle 3.3: Adressen der FastEthernet-Schnittstellen auf Router R1
(8) Was fällt Ihnen anhand der IP-Adresse auf dem Interface FastEthernet 1/0
auf? Vergleichen Sie die Angabe mit der Vorgabe im Netzbild.
•
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
21
(9) Konfigurieren Sie die richtige IP-Adresse auf dem Interface
FastEthernet1/0.
Zur Konfiguration wechseln Sie in den globalen Konfigurationsmodus mit dem Befehl:
configure terminal
Dort können Sie zur Interfacekonfiguration wechseln:
interface FastEthernet1/0
Konfigurieren Sie die IP-Adresse mit:
ip address <adresse> <netzmaske>
Die Angaben entnehmen Sie bitte aus dem Netzbild. (Hinweis: /30 bedeutet in
anderer Schreibweise 255.255.255.252)
Aktivieren Sie anschließend das Interface: (Hinweis: bei Cisco wird mit einem vorangestellten no“ vor dem Befehl dieser deaktiviert oder auf den default Wert zurück”
gestellt)
no shutdown
Anschließend verlassen Sie die beiden Konfigurationsmodi (Interface und global)
jeweils mit:
exit
(10) Überprüfen Sie den Erfolg der Konfiguration, indem Sie sich die
Konfiguration für das Interface FastEthernet1/0 anzeigen lassen
show interfaces | section FastEthernet1/0
Überprüfen Sie nun die Erreichbarkeit von Router R3 von Ihrer Workstation aus.
ping <IP-Adresse R3>
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
22
(11) Lassen Sie sich die Routingtabelle (FIB) auf Router R1 und R2 anzeigen.
Öffnen Sie dazu eine Telnetverbindung zu Router R2, indem Sie auf die entsprechende
Schaltfläche der GUI klicken:
telnet <IP-Adresse R2>
Trying <IP-Adresse R2> ... Open
User Access Verification
Password:
r2>
Passwort: vtp
Loggen Sie sich mit dem Benutzer student“ ein:
”
r2>login
Username: student
r2#
Anzeigen der Routingtabelle:
show ip route isis
Tragen Sie die Ergebnisse in die nachfolgenden Tabellen 3.4 und 3.5 ein.
Ziel
Next Hop
Interface
Tabelle 3.4: ISIS-Routen auf Router R1
Ziel
Next Hop
Interface
Tabelle 3.5: ISIS-Routen auf Router R2
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
23
R1
R2
R3
Workstation
Abbildung 3.2: Weiterleitung im IP-Netz
(12) Zeichnen Sie den Weg des Ping-Paketes zu R3 und die Interfaces in die
Abbildung 3.2 ein.
(13) Überprüfen Sie die Informationen mit Hilfe des Traceroute-Befehls von
Ihrer Workstation aus.
traceroute <IP-Adresse R3>
Tragen Sie die Ergebnisse in die nachfolgende Tabelle 3.6 ein.
Hop-Count
Zwischenknoten
Zeit
Tabelle 3.6: Traceroute zu Router R3
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
24
3.2.2 MPLS (allgemein)
(1) Lassen Sie sich auf allen Routern anzeigen, für welche Interfaces MPLS
aktiviert wurde.
(Hinweis: Öffnen Sie dazu die noch fehlende Telnetverbindung zu Router R3 mit den
bekannten Schritten.)
Zum Anzeigen der MPLS-Interfaces nutzen Sie den Befehl:
show mpls interfaces
Tragen Sie die Ergebnisse in die nachfolgenden Tabellen 3.7, 3.8 und 3.9 ein.
Interface
IP
Tunnel
Operational
Tabelle 3.7: MPLS Interfaces auf R1
Interface
IP
Tunnel
Operational
Tabelle 3.8: MPLS Interfaces auf R2
Interface
IP
Tunnel
Operational
Tabelle 3.9: MPLS Interfaces auf R3
(Hinweis: Das Interface FastEthernet 2/0 auf R2 und das Interface FastEthernet
3/0 auf R3 werden für diese Aufgabe nicht benötigt.)
Sind für eine Datenübertragung von R2 zu R3 alle benötigten Interfaces aktiviert?
•
(2) Welchen Wert können die MPLS-Label auf den Routern annehmen?
Lassen Sie sich dazu den eingestellten Labelbereich anzeigen:
show mpls label range
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
25
• Bereich:
Wozu dient die Ober- bzw. Untergrenze?
•
•
(3) Lassen Sie sich die LFIB auf Router R1 und R2 anzeigen. Was wird
prinzipiell angezeigt?
Nutzen Sie zum Anzeigen der LFIB folgenden Befehl:
(Hinweis: Tag ist gleichbedeutend mit Label.)
show mpls forwarding-table
Sie werden feststellen, dass die LFIB auf Router R1 noch leer ist. Aktivieren Sie
MPLS auf R1 und lassen Sie sich anschließend die LFIB erneut anzeigen.
Um MPLS zu aktivieren, wechseln Sie in den globalen Konfigurationsmodus:
configure terminal
mpls ip
exit
Tragen Sie die Ergebnisse von Router R1 und R2 in die nachfolgenden Tabellen 3.10
und 3.11 ein. (Hinweis: Aktivieren Sie zuerst das MPLS auf R1, da ansonsten auf R2
noch keine Outgoing Tags“ angezeigt werden.)
”
Local tag
Outgoing tag
Prefix
Outgoing interface
Next Hop
Tabelle 3.10: LFIB von Router R1
Local tag
Outgoing tag
Prefix
Outgoing interface
Next Hop
Tabelle 3.11: LFIB von Router R2
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
26
Hinweis: Die Labelwerte sind nicht fest konfiguriert, sie können sie bei mehrmaligem
Aufruf bzw. Konfiguration ändern!
Was bedeutet der ausgehende Labelwert 0“?
”
•
Starten Sie einen Ping von Ihrer Workstation aus zu Router R3. Welche Label werden
dabei verwendet? Tragen Sie die Ergebnisse in die nachfolgende Abbildung 3.3 ein.
ping <IP-Adresse R3>
R1
Label
Ziel-IP
Label
Label
Ziel-IP
Ziel-IP
R2
R3
Label
Ziel-IP
Workstation
Abbildung 3.3: MPLS-Weiterleitung Ping Workstation-R3
(4) Untersuchen Sie die maximale Paketgröße bei der Übertragung im
Netzwerk.
Nutzen Sie dazu den Tracepath-Befehl von ihrer Workstation aus. Starten Sie zuerst
einen Tracepath zu R2:
tracepath <IP-Adresse R2>
Wieviele Hops werden benötigt?
•
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
27
Welche Paketgröße (MTU) wird unterstützt?
•
Starten Sie nun einen Tracepath zu R1:
tracepath <IP-Adresse R1>
Wieviele Hops werden benötigt? (Hinweis: Führen Sie den Befehl zweimal aus, da
beim ersten Mal Router R2 noch doppelt angezeigt wird.)
•
Welche Paketgröße (MTU) wird unterstützt? Erklären Sie die Abweichung.
•
•
(5) Untersuchen Sie die Funktion des TTL-Feldes.
Starten Sie dazu einen Tracepath zu Router R3:
tracepath <IP-Adresse R3>
Wieviele Hops werden angezeigt? (Hinweis: Wiederholen Sie den Befehl, wenn R2
in der Liste doppelt angezeigt wird.)
•
Wird Router R1 auf dem Weg angezeigt?
•
Warum ist das so?
•
•
Wechseln Sie auf Router R2 in den globalen Konfigurationsmodus.
configure terminal
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
28
Aktivieren Sie die Übernahme des IP-TTL-Feldes in den MPLS-Header. Dies wird
durch folgenden Befehl realisiert:
mpls ip propagate-ttl
Verlassen Sie den globalen Konfigurationsmodus wieder.
exit
Starten Sie erneut einen Tracepath zu R3 von ihrer Workstation aus.
tracepath <IP-Adresse R3>
Wieviele Hops werden jetzt angezeigt, ist Router R1 nun sichtbar, warum?
•
•
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
29
3.2.3 Quality-of-Service / Traffic Engineering
(1) Schalten Sie einen zusätzlichen Pfad im Netzwerk, indem Sie das fehlende
Interface auf Router R2 aktivieren.
Wechseln Sie dazu auf Router R2 in den Interfacekonfigurationsmodus für das Interface
FastEthernet2/0.
configure terminal
interface FastEthernet2/0
no shutdown
(2) Welchen Weg nehmen jetzt die Pakete von Ihrer Workstation zu Router R3?
Führen Sie dazu einen Tracepath von ihre Workstation zu Router R3 aus. Was stellen
Sie fest?
•
Lassen Sie sich die aktualisierte Routingtabelle auf Router R2 anzeigen.
show ip route isis
Tragen Sie die Ergebnisse in die nachfolgende Tabelle 3.12 ein und vergleichen Sie
die Einträge mit denen aus Tabelle 3.5.
Ziel
Next Hop
Interface
Tabelle 3.12: Neue ISIS-Routen auf Router R2
Zeichnen Sie den neuen Weg der Pakete von R2 zu R3 in die Abbildung 3.4 ein.
(3) Welchen Durchsatz ermöglicht der Link zwischen Router R2 und R3?
Überprüfen Sie dies, indem Sie einen Floodping von ihrer Workstation zu Router R3
ausführen. (Hinweis: Zum Ausführen eines Floodpings werden normalerweise rootRechte auf dem Linuxsystem benötigt. Zur einfacheren Handhabung wurde der Befehl
jedoch für den normalen Benutzer per sudo freigeschaltet.)
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
30
R1
R2
R3
Workstation
Abbildung 3.4: Wegewahl Workstation - R3
sudo ping -f -w 10 <IP-Adresse R3>
Der Parameter f“ steht für Floodping, bei dem die Pingpakete ohne Unterbrechung
”
gesendet werden. Beim normalen Ping wird nur ein Paket pro Sekunde gesendet, sodass
damit keine Aussage über die Qualität einer Verbindung möglich ist. Der Parameter
w“ gibt die Zeit an, wielange der Ping ausgeführt werden soll. In diesem Fall sind
”
es zehn Sekunden. Dadurch ist es möglich, vergleichbare Ergebnisse zu generieren, da
eine Messung stets zehn Sekunden lang läuft.
•
Berechnen Sie anhand der durch den Ping-Befehl ermittelten Parameter Übertragungszeit t, Paketanzahl n, Paketgröße s und der Verlustrate x die erzielte Übertragungsrate b. Beachten Sie, dass zusätzlich zur angezeigten Paketgröße noch 14 Byte
für den MAC-Header hinzukommen.
• Übertragungszeit t:
• Paketanzahl n:
• Paketgröße s:
• Verlustrate x:
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
31
Verwenden Sie dazu folgende Formel: b =
(Hinweis: Beachten Sie die Verlustrate!)
n
t
·s
• Übertragungsrate b =
(4) Überprüfen Sie, ob alle Grundlagen für das Aktivieren des Traffic
Engineerings gegeben sind.
Dazu muss auf allen Routern MPLS, das IP Cisco Express Forwarding (CEF) sowie ein
Routingprotokoll (z.B. IS-IS) aktiviert sein. Überprüfen Sie dies, indem Sie auf allen
Routern folgenden Befehl ausführen:
show mpls traffic-eng tunnels summary
Das Ergebnis sollte wie folgt aussehen:
Signalling Summary:
LSP Tunnels Process:
RSVP Process:
Forwarding:
[...]
running
running
enabled
Sind diese drei Punkte auf den Routern R1, R2 und R3 entsprechend konfiguriert?
Tragen Sie das Ergebnis in die Tabelle 3.13 ein.
LSP Tunnels Process
RSVP Process
Forwarding
R1
R2
R3
Tabelle 3.13: Vorraussetzung für Traffic Engineering
Die Bedeutung der Einträge sind in Tabelle 3.14 nachzulesen.
(5) Konfigurieren Sie nun einen TE-Tunnel von Router R2 zu Router R3.
Wechseln Sie dazu in den globalen Konfigurationsmodus auf Router R2.
configure terminal
Es ist bereits ein Tunnelinterface vorbereitet. Wechseln Sie in die Interfacekonfiguration für das entsprechende Tunnelinterface.
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
32
LSP Tunnels Process Zeigt an, ob MPLS aktiviert ist oder nicht.
RSVP Process
Zeigt an, ob das Resource Reservation Protocol (RSVP)
aktiviert ist oder nicht. Dies geschieht automatisch beim
Aktivieren von MPLS Traffic Engineering.
Forwarding
Zeigt an, ob das Cisco Express Forwarding (CEF) auf
dem Router aktiviert ist.
Tabelle 3.14: Bedeutung der Einträge für das Traffic Engineering
interface Tunnel0
Es muss noch die Zieladresse für den Tunnel festgelegt werden. Verwenden Sie dazu
folgende Befehle:
tunnel destination <IP-Adresse R3>
Sie können auch noch eine Beschreibung für das Interface hinzufügen:
description <Text>
Hinweis: Alle anderen benötigten Parameter sind schon vorkonfiguriert, da eine Konfiguration mit eingeschränkten Benutzerrechten nicht möglich ist. Die vordefinierten
Parameter und ihre Bedeutung finden Sie in der Tabelle 3.15.
Befehl
ip unnumbered Loopback 0
tunnel mode mpls
traffic-eng
tunnel mpls traffic-eng
bandwidth 1000
tunnel mpls traffic-eng
path-option 10 explicit
name Pfad1
tunnel mpls traffic-eng
autoroute announce
Bedeutung
Weist dem Tunnelinterface eine IP-Adresse
zu.
Setzt den Tunnelmodus auf MPLS Traffic
Engineering
Legt die Bandbreite für den MPLS-TE Tunnel fest
Weist einen explizit definierten Pfad mit dem
Namen Pfad1“ dem Tunnel zu. Alternativ
”
ist es möglich, einen dynamischen Pfad zu
konfigurieren.
Sorgt dafür, dass der Tunnel dem verwendeten Routingprotokoll bekannt gemacht wird
und in die Pfadberechnung mit einfließt.
Tabelle 3.15: Erklärung zur MPLS-TE Tunnelkonfiguration
Der explizite Pfad mit dem Namen Pfad1“ ist dabei bereits wie folgt konfiguriert:
”
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
33
ip explicit-path name Pfad1 enable
next-address 10.0.2.1
next-address 10.0.3.2
Verlassen Sie nun die Interfacekonfiguration und den globalen Konfigurationsmodus
jeweils mit:
exit
(6) Überprüfen Sie die Tunnelkonfiguration.
Wird der Tunnel in der Routingtabelle von Router R2 angezeigt?
show ip route
Tragen Sie die Ergebnisse in die nachfolgende Tabelle 3.16 ein.
Ziel
Next Hop
Interface
Tabelle 3.16: Routen und Tunnel auf Router R2
Details zu dem eingerichteten Tunnel können Sie sich mit folgendem Befehl anzeigen
lassen:
show mpls traffic-eng tunnels
Wie ist der Status des Tunnels?
• Admin:
• Oper:
• Path:
• Signalling:
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
34
(7) Welchen Weg gehen die Pakete durch den Tunnel?
Lassen Sie sich dazu die Eigenschaften des Tunnels anzeigen. Dort wird auch der Pfad
angezeigt, über den der Tunnel verläuft.
show mpls traffic-eng tunnels | section RSVP
Unter dem Punkt explicit Route“ finden Sie die Pfadangabe. Notieren Sie sich die
”
Ergebnisse.
•
Vergleichen Sie den Tunnelpfad mit den vorher ermittelten Werten der Routingtabelle 3.12. Was stellen Sie fest?
•
•
Zeichnen Sie den Pfad in die nachfolgende Abbildung 3.5 ein und vergleichen Sie ihn
mit dem gerouteten Weg aus Abbildung 3.4.
R1
R2
R3
Workstation
Abbildung 3.5: MPLS TE Tunnel zwischen R2 und R3
Überprüfen Sie ihre Beobachtung, indem Sie einen Tracepath von ihrer Workstation
zu Router R3 ausführen.
tracepath <IP-Adresse R3>
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
35
(8) Welchen Durchsatz ermöglicht der neu konfigurierte Tunnel im Vergleich
zum gerouteten Weg?
Überprüfen Sie dies, indem Sie erneut einen Floodping auf Router R3 ausführen. Die
Datenpakete werden jetzt allerdings durch den zuvor konfigurierten Tunnel geschickt.
sudo ping -f -w 10 <IP-Adresse R3>
Was stellen Sie fest?
•
•
Hinweis: Wenn Sie nachfolgend das Modul MPLS-VPN bearbeiten wollen, deaktivieren Sie bitte vorher das Tunnelinterface und die direkte Verbindung zwischen Router
R2 und R3 wieder.
configure terminal
no interface Tunnel 0
interface FastEthernet 2/0
shutdown
exit
exit
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
36
3.2.4 MPLS-VPN
(1) Lassen Sie sich die virtuellen Routinginstanzen auf R2 und R3 anzeigen.
Hinweis: Die VPNs sind auf den Routern R2 und R3 vorkonfiguriert, da eine Bearbeitung mit eingeschränkten Rechten auf den Routern nicht möglich ist.
Zum Anzeigen der angelegten virtuellen Routinginstanzen benutzen Sie folgenden
Befehl:
show ip vrf
Welche wurden angelegt und wie lautet der Route Distinguisher (RD)?
VRF
Default RD
Interface
Tabelle 3.17: Virtuelle Routinginstanzen
Welche Aufgabe hat der RD?
•
(2) Lassen Sie sich die eingerichteten VPNs auf Router R1 anzeigen.
show ip vrf
Was stellen Sie fest? Erklären Sie ihre Beobachtungen.
•
•
(3) Über welche Interfaces und Adressen erreichen Sie die Kundennetze auf
Router R2 und R3?
Lassen Sie sich dazu auf den Routern R2 und R3 die VPN-Interfaces anzeigen:
show ip vrf interfaces
Tragen Sie die Ergebnisse in das Netzbild 3.7 ein.
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
37
(4) Lassen Sie sich auf allen Routern die BGP-Routen anzeigen.
Info: Im Kernnetz wird das Routingprotokoll IS-IS verwendet. Darüber haben Sie
sich bereits im Aufgabenabschnitt 3.2.1 informiert. Für den Austausch der VPNInformationen wird zwischen den PE-Routern (R2 und R3) das BGP-Protokoll gesprochen.
Zum Anzeigen der BGP-Routen verwenden Sie folgenden Befehl:
show bgp all
Welche Router stehen in einer Nachbarschaftsbeziehung, welche nicht?
•
•
Tragen Sie die Routinginformationen für die einzelnen Kundennetze ( Kunde-A“ und
”
Kunde-B“) in die nachfolgenden Tabellen 3.18 und 3.19 ein.
”
Network
Next Hop
Kundennetz
Tabelle 3.18: BGP-Routen auf Router R2
(5) Welche Adressbereiche werden in den Kundennetzen verwendet?
Lassen Sie sich dazu die Routingtabellen auf R2 und R3 anzeigen. (Hinweis: Den
VRF-Namen entnehmen Sie bitte aus der vorherigen Aufgabe, achten Sie auf Großund Kleinschreibung.)
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
Network
38
Next Hop
Kundennetz
Tabelle 3.19: BGP-Routen auf Router R3
show ip route vrf <VRF-Name>
Tragen Sie die Ergebnisse in das Netzbild 3.7 ein.
Welche Adressen sind doppelt vergeben? Wie ist das möglich?
•
•
(6) Überprüfen Sie die Trennung der verschiedenen Kundennetze
Überprüfen Sie dazu stichpunktartig die Erreichbarkeit der IP-Adressen aus einem
Kundennetz, indem Sie sich dazu von Router R2 aus auf dem Router CE1 einloggen.
telnet 10.10.0.2 /vrf Kunde-A
Trying 10.10.0.2 ... Open
User Access Verification
Password:
ce1>
Passwort: vtp
Loggen Sie sich mit dem Benutzer student“ ein:
”
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
39
ce1>login
Username: student
ce1#
Welche Adressen sind erreichbar und welche nicht? Tragen Sie ihre Ergebnisse in die
nachfolgende Tabelle ein.
erreichbar
nicht erreichbar
Tabelle 3.20: Erreichbarkeit aus dem Kundennetz
Kehren Sie wieder auf Router R2 zurück:
logout
(7) Welche Label werden für die Trennung der beiden VPNs verwendet?
Lassen Sie sich dazu die vergebenen Label für das VPN von Kunde-A“ auf Router R2
”
und R3 anzeigen.
show mpls forwarding-table vrf <VRF-Name>
Tragen Sie die Ergebnisse in die nachfolgenden Tabellen 3.21 und 3.22 ein.
Local tag
Outgoing tag
Prefix
Outgoing interface
Next Hop
Tabelle 3.21: LFIB von Router R2 für VPN Kunde-A“
”
Führen Sie einen Traceroute von Router CE1 nach CE3 aus und tragen Sie die
verwendeten Label und Adressen in die nachfolgende Abbildung 3.6 ein. Loggen Sie
sich dazu wieder auf den Router CE1 ein (User: student“, Passwort: vtp“).
”
”
telnet 10.10.0.2 /vrf Kunde-A
[...]
traceroute <IP-Adresse CE3>
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
Local tag
Outgoing tag
40
Prefix
Outgoing interface
Next Hop
Tabelle 3.22: LFIB von Router R3 für VPN Kunde-A“
”
R1
Label
Label
Ziel-IP
Label
Label
Ziel-IP
R2
Label
R3
Label
Ziel-IP
Label
CE1
Label
Ziel-IP
CE3
Abbildung 3.6: MPLS-VPN-Weiterleitung von CE1 nach CE3
Wird Router R1 angezeigt? (Hinweis: * * *“ steht für ein Timeout von R1.)
”
•
Deaktivieren Sie auf Router R2 die TTL-Wert-Verbreitung. Wechseln Sie dazu in
den globalen Konfigurationsmodus auf R2.
configure terminal
no mpls ip propagate-ttl
exit
Loggen Sie sich wieder auf CE1 ein (User: student“, Passwort: vtp“) und wieder”
”
holen Sie den Traceroute zu Router CE3.
telnet 10.10.0.2 /vrf Kunde-A
[...]
traceroute <IP-Adresse CE3>
Wird Router R1 noch angezeigt? Begründen Sie dies.
•
MPLS-Praktikumsanleitung
Lo0
Lo1
Eth0
CE1
ser0.100
10.10.0.2
ser1/0.100
Lo0 10.0.0.2 /32
Workstation
eth0
10.1.0.11
Lo0
Eth0
ser1/1.100
FastEth 2/0
10.0.5.1
FastEth 0/0
10.1.0.1
R2
FastEth 3/0
10.0.2.2
CE2
ser0.100
10.20.0.2
ser1/0.100
FastEth 3/0
10.0.5.2
Lo0
Eth0
CE3
ser0.100
10.30.0.2
Lo0 10.0.0.1 /32
R1
FastEth 1/0
FastEth 0/0
10.0.3.1
10.0.2.1
Lo0 10.0.0.3 /32
Lo0
Lo1
Eth0
CE4
ser0.100
10.40.0.2
ser1/1.100
R3
FastEth 0/0
10.0.3.2
3 Praktikumsaufgaben
41
Abbildung 3.7: Praktikumsnetzwerk
MPLS-Praktikumsanleitung
3 Praktikumsaufgaben
42
3.3 Nachbereitungsfragen
(1) Welche Routingprotokolle wurden im Zusammenhang mit MPLS verwendet
und für welchen Zweck?
•
•
(2) Wie kann man einen bestimmten Pfad für einen TE-Tunnel festlegen?
(Hinweis: Nur zu beantworten, wenn das entsprechende Aufgabenmodul bearbeitet
wurde.)
•
•
(3) Auf welchen Routern muss das MPLS-VPN konfiguriert werden, damit das
VPN funktioniert?
(Hinweis: Nur zu beantworten, wenn das entsprechende Aufgabenmodul bearbeitet
wurde.)
•
•
(4) Mit welchem Befehl ist es möglich, sich den Pfad vom Sender zum
Empfänger in einem Netzwerk anzeigen zu lassen?
•
(5) Wozu dient der globale Konfigurationsmodus“ auf den Cisco Routern?
”
•
MPLS-Praktikumsanleitung
Abkürzungsverzeichnis
43
Abkürzungsverzeichnis
ATM . . . . . . . . . . . . . . .
BGP . . . . . . . . . . . . . . .
CEF . . . . . . . . . . . . . . .
FEC . . . . . . . . . . . . . . .
FTN . . . . . . . . . . . . . . .
ILM . . . . . . . . . . . . . . . .
IS-IS . . . . . . . . . . . . . . .
LDP . . . . . . . . . . . . . . .
LFIB . . . . . . . . . . . . . . .
LIB . . . . . . . . . . . . . . . .
LIFO . . . . . . . . . . . . . . .
LSP . . . . . . . . . . . . . . . .
LSR . . . . . . . . . . . . . . . .
MTU . . . . . . . . . . . . . . .
NHLFE . . . . . . . . . . . .
PHP . . . . . . . . . . . . . . .
RSVP . . . . . . . . . . . . . .
RTT . . . . . . . . . . . . . . .
SVC . . . . . . . . . . . . . . .
SVP . . . . . . . . . . . . . . .
TC . . . . . . . . . . . . . . . . .
TCP . . . . . . . . . . . . . . .
TOS . . . . . . . . . . . . . . .
TTL . . . . . . . . . . . . . . .
UDP . . . . . . . . . . . . . . .
VC . . . . . . . . . . . . . . . . .
VCI . . . . . . . . . . . . . . . .
VPI . . . . . . . . . . . . . . . .
VRF . . . . . . . . . . . . . . .
Asynchronous Transfer Mode
Border Gateway Protocol
Cisco Express Forwarding
Forwarding Equivalence Class
FEC-to-NHLFE Map
Incoming Label Map
Intermediate System to Intermediate System Protocol
Label Distribution Protocol
Label Forwarding Information Base
Label Information Base
last-in, first-out
Label Switched Path
Label Switch Router
Maximum Transmission Unit
Next Hop Label Forwarding Entry
Penultimate Hop Popping
Resource Reservation Protocol
Round Trip Time
Switched Virtual Circuit
Switched Virtual Path
Traffic Class
Transmission Control Protocol
Type of Service
Time-to-Live
User Datagram Protocol
Virtual Circuit
Virtual Channel Identifier
Virtual Path Identifier
Virtual Routing and Forwarding Instanz
MPLS-Praktikumsanleitung

Documents pareils