mpls ( multiprotocol label switching )

56
UNIVERSITÉ DE TECHNOLOGIE COMPIÈGNE Cours SR04 du 09/12/2013 UTC – Cours MPLS MPLS (MultiProtocol Label Switching) Christophe Fillot DSI

Upload: tynice

Post on 24-Feb-2016

60 views

Category:

Documents


1 download

DESCRIPTION

MPLS ( MultiProtocol Label Switching ). Christophe Fillot DSI. Rappels sur le routage IP Intérêt de MPLS. Routage des paquets IP Le routeur reçoit un paquet IP sur une de ses interfaces, Il extrait l ’adresse IP de destination présente dans le paquet, - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: MPLS ( MultiProtocol  Label  Switching )

UNIVERSITÉ DE TECHNOLOGIE COMPIÈGNE

Cours SR04 du 09/12/2013UTC – Cours MPLS

MPLS(MultiProtocol Label Switching)

Christophe Fillot DSI

Page 2: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 562

Rappels sur le routage IPIntérêt de MPLS

Page 3: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 563

Routage des paquets IP

• Le routeur reçoit un paquet IP sur une de ses interfaces,

• Il extrait l ’adresse IP de destination présente dans le paquet,

• Il consulte sa table de routage et détermine l’interface de sortie et l’adresse IP du routeur suivant (next-hop ou prochain saut),

• Il construit une nouvelle entête de niveau 2 (avec des protocoles comme ARP par exemple) en fonction des informations obtenues.

• Il envoie le paquet sur l’interface de sortie.

Page 4: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 564

Routage IP « saut par saut »: chaque saut doit connaitre l’ensemble des routes!

Page 5: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 565

Internet: des interconnexions complexes de réseaux…

• Peering : échange de trafic « utilisateur » entre 2 AS

• Transit: fourniture d’une connectivité Internet complète

Page 6: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 566

Problématique

• Une recherche dans la table de routage IP est dite « longest match » : pour une adresse IP donnée on doit trouver le préfixe le plus spécifique (ex: 192.168.1.0/24 est plus spécifique que 192.168.0.0/18)

• Complexe pour les routeurs ayant toutes les routes Internet (plus de 430000 en 2012, actuellement: ~480000).

• MPLS visait à l’origine à accélérer la commutation des paquets, en utilisant un numéro/label plutôt que l’adresse IP de destination (ou une combinaison de plusieurs critères). Un label est ajouté en entrée de réseau, et supprimé à la sortie, ce qui rend l’opération transparente au final. Sur le chemin, il y a « remplacement » (swap) de label.

• Ainsi, les routeurs intermédiaires n’ont plus à prendre de décision complexe à chaque paquet, juste à analyser un label (lookup dans une table).

• Il faut toutefois mettre en place un système de distribution des labels pour créer des chemins (LSP – Label Switched Path).

Page 7: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 567

Principes de base de MPLS

Page 8: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 568

Encapsulation

• Les labels sont insérés entre l’entête de niveau 2 (Ethernet, …) et l’entête de niveau 3 (IPv4, IPv6, …)

• On peut dire qu’il s’agit du niveau « 2.5 »…

• Il est possible d’avoir plusieurs labels consécutifs (stacking)

• Un label a une taille de 4 octets (32-bits) et contient les informations suivantes:• Label : entier sur 20 bits• TTL (Time-To-Live) : 8 bits• CoS/EXP : 3 bits (utilisé pour la qualité de service)• BoS (Bottom of Stack): 1 bit (dernier label de la pile si = 1)

Page 9: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 569

Commutation de label

• On peut résumer les opérations de commutation:

• « Push Label » : insère un nouveau label (en tête) => routeur d’entrée (ingress)• « Pop Label » : supprime le 1er label => routeur de sortie (egress)• « Swap » : remplacement de label => routeurs intermédiaires

• Les routeurs utilisent le 1er label de la pile pour la commutation.

• Un peu de terminologie:• Label Switched Path (LSP): chemin MPLS• Label Switch Router (LSR): routeur supportant MPLS• Ingress LSR: routeur d’entrée (insertion de label)• Egress LSR: routeur de sortie (pop de label)• Forwarding Equivalent Class (FEC): groupe de paquets qui sont commutés de la

même manière, suivant les mêmes critères (ex le plus courant: adresse IP destination), avec le même chemin.

Page 10: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5610

Distribution de Labels

• Protocole : LDP (Label Distribution Protocol) – RFC 5036

• Les routeurs voisins établissent une adjacence (Hello en UDP multicast, puis connexion TCP)

• 2 modes:• Downstream on Demand : un routeur demande explicitement un label pour une

FEC ;• Unsollicited Downstream : le routeur annonce à ses voisins un label pour

chaque préfixe/FEC qu’il connait.

• Les routeurs construisent une LIB (Label Information Base), en consolidant les informations reçues de leurs voisins LDP.

• On a typiquement plusieurs labels pour un même préfixe IP => comment choisir ?

Page 11: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5611

Page 12: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5612

Construction de la LFIB

• Les routeurs utilisent toujours un IGP pour calculer le meilleur chemin : ils construisent une RIB (Routing Information Base), à partir des différents protocoles configurés (routes connectées, statiques, OSPF, etc)

• Avec l’aide de la RIB, on peut déterminer le meilleur label à utiliser pour un préfixe donné (le nexthop figure dans la LIB).

• On garde les meilleurs labels pour générer la LFIB (Label Forwarding Information Base)

• Le routeur utilise la LFIB pour la commutation des paquets MPLS. La LFIB contient typiquement ces informations:• Label d’entrée• Label de sortie (ou indication de « pop label » si dernier saut)• Interface de sortie• Préfixe IP

• Pour les routeurs hardware, la LFIB est programmée dans le matériel (TCAM, …)

Page 13: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5613

Construction de la LFIB : résumé

Page 14: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5614

Exemple de LFIB

Page 15: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5615

Pen-Ultimate Hop Popping (PHP)

• Plutôt qu’annoncer un « vrai » label, le dernier routeur du LSP peut annoncer un label appelé « Implicit-Null » (label réservé « 3 »).

• L’avant-dernier routeur, lorsqu’il reçoit ce binding, sait qu’il doit réaliser une opération « pop » au lieu d’une opération « swap ». Le label Implicit-Null n’apparaît en fait jamais sur le lien.

• => Cela évite que le dernier routeur ait à analyser un label puis à faire un lookup IP dans sa FIB (il ne fait plus que le lookup IP).

• Par défaut sur Cisco IOS

Page 16: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5616

Qualité de service (QoS)

• Un label MPLS contient un champ de 3 bits appelé CoS (ou EXP) qui sert au marquage de la QoS.

• Similaire à l’IP Precedence du champ DSCP d’un paquet IP.

• Les routeurs MPLS se basent sur ce champ CoS pour appliquer les règles de QoS (les routeurs « IP » utilisent le champ DSCP).

• Par défaut, les routeurs ingress recopient le champ IP DSCP dans le champ CoS MPLS.

• Possibilité sur le routeur Egress d’annoncer un label « Explicit-Null » pour garder l’information de CoS MPLS jusqu’au bout. Explicit-Null est un label réservé (0 pour IPv4, 2 pour IPv6) qui apparaît sur le lien.

Page 17: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5617

Cœur de réseau « BGP-free »

• On reprend notre exemple initial, où tous les routeurs sont peers BGP et connaissent l’ensemble des routes.

• On active MPLS sur l’ensemble des routeurs, et on ne garde BGP qu’entre routeurs de bordure (il faut donc juste un IGP (pour les routes du coeur) et LDP sur les routeurs intermédiaires).

• Les routeurs d’entrée encapsulent les paquets avec un label MPLS. Ce label correspond au routeur de bordure de sortie (next-hop BGP pour le préfixe correspondant à l’adresse IP de destination).

• C’est le chemin optimal, puisque le label a été choisi en fonction de ce qui a été calculé par l’IGP.

• Les routeurs intermédiaires acheminent le trafic en se basant sur le label, et n’examinent plus l’entête IP. Ils peuvent donc acheminer des paquets pour lesquels l’adresse IP de destination leur est totalement inconnue.

• En sortie, le routeur reçoit un paquet IP (PHP…) et le route normalement.

Page 18: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5618

Routage IP/MPLS : seuls les routeurs de bordure connaissent toutes les routes

Page 19: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5619

VPN niveau 3 avec MPLS/VPN

Page 20: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5620

VPN niveau 3 (L3VPN)

• De nombreuses entreprises disposent de sites externes (agences) qui doivent se raccorder à un site central (le siège)

• On utilise généralement des adresses IP privées (RFC 1918), non routables sur Internet, pour l’adressage interne (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16).

• Elles peuvent faire appel à des opérateurs capables de leur fournir un service de VPN niveau 3 (l’opérateur s’occupe du routage entre les sites de l’entreprise)

• Problème: différents clients sont susceptibles d’utiliser des plans d’adressage privés qui se recouvrent.

• MPLS/VPN permet de résoudre ce problème, en isolant complètement le trafic des clients.

• Attention, MPLS/VPN ne fournit aucun chiffrement, il s’agit d’isoler du trafic. Pour sécuriser le trafic, il faut utiliser un protocole comme IPSec.

Page 21: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5621

Exemple d’opérateur raccordant 3 clients différents

Page 22: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5622

Virtual Routing and Forwarding (VRF)

• Un routeur IP « classique » ne dispose généralement que d’une seule table de routage, utilisée pour tout le trafic IP.

• Pour MPLS/VPN, il est nécessaire d’isoler le trafic entre les différents clients, qui peuvent en plus avoir des plans d’adressages recouvrants (adressage privé)

• => Les routeurs MPLS/VPN supportent plusieurs tables de routage dissociées appelées « VRF ». Chaque VRF dispose de ses propres RIB et FIB.

• Pour placer le trafic dans une VRF donnée, il existe plusieurs méthodes:• Assignation en « dur » d’une interface ou d’une sous-interface dans la VRF• Méthode dynamique, en fonction de différents critères (typiquement adresses IP

des paquets entrants).

• Il est possible d’utiliser les VRF sans utiliser MPLS/VPN, il s’agit de VRF Lite.

Page 23: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5623

Exemples de configuration Cisco IOS

! Definition de la VRFip vrf BLUE rd 100:1 route-target import 100:1 route-target export 100:1!interface Ethernet1/0 ip vrf forwarding BLUE ip address 10.0.0.1 255.255.255.0!ip route vrf BLUE 10.1.0.0 255.255.255.0 10.0.0.2!router ospf 200 vrf BLUE network 10.0.0.0 0.0.0.255 area 0!router bgp 65000 address-family ipv4 vrf BLUE neighbor 10.0.0.3 remote-as 65001 neighbor 10.0.0.3 activate !!

Page 24: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5624

Mapping de sous-interfaces dans des VRF différentes

Page 25: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5625

Mapping de sous-interfaces dans des VRF différentes: Cisco IOS

interface Ethernet1/0.1 encapsulation dot1Q 100 ! Description VLAN 100: « Personnels » ip vrf forwarding pers ip address 10.0.0.1 255.255.255.0!interface Ethernet1/0.2 encapsulation dot1Q 200 ! Description VLAN 200: « Etudiants » ip vrf forwarding etu ip address 10.1.0.1 255.255.255.0!interface Ethernet1/0.3 encapsulation dot1Q 300 ! Description VLAN 300: « Invités » ip vrf forwarding guests ip address 10.2.0.1 255.255.255.0!

Page 26: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5626

Terminologie

• 3 types de routeurs : P, PE, CE

• Router « P » (Provider) : appartient au cœur de réseau de l’opérateur, il n’a aucune notion de VRF ou de VPN (pas de connexion de clients)

• Router « PE » (Provider Edge): appartient à l’opérateur, ces routeurs raccordent les clients et utilisent des VRF pour isoler leur trafic.

• Routeur « CE » (Customer Edge): appartient au client, et n’a aucune notion de MPLS ou de VRF.

• Les routeurs « P » ne sont pas obligatoires, il est tout à fait possible de monter un backbone avec uniquement des routeurs PE.

Page 27: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5627

MP-BGP

• Les routeurs PE « peerent » entre eux en MP-BGP (Multi-Protocol BGP), en utilisant l’address-family « VPNv4  » [AFI 1 (IPv4), SAFI 128 (VPN)]

• Les routes échangées contiennent notamment un préfixe dit « VPN-IPv4 » (Préfixe IPv4 + Route Distinguisher) et un Label MPLS, local au PE qui fait l’annonce.

• Le RD (Route Distinguisher) permet de distinguer les routes de clients différents. Le RD a une taille de 8 octets (il est configuré manuellement par l’opérateur).

Page 28: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5628

Exemple d’update MP-BGP

Page 29: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5629

Acheminement du trafic

• Dans notre exemple, on voit que PE1 reçoit le label 28 du routeur PE2 pour la route VPN-IPv4 100:1:192.168.1.0/24

• Problème: comment utiliser ce label qui est local à PE2 ? Si on envoie un paquet avec le label 28 à P1, celui-ci ne connaît pas ce label (ou il est utilisé pour tout autre chose) => il faut pouvoir aiguiller le trafic vers PE2 !

• Dans l’update MP-BGP, on connait le next-hop (PE2), et on a appris par LDP un label pour cette adresse.

• PE1 va construire un paquet avec 2 labels MPLS:• Le 1er label correspond au label pour atteindre PE2. Il est appris via LDP• Le 2nd label correspond au label VPN utilisé par PE2. Il est appris par MP-BGP

• Les routeurs intermédiaires ne s’occupent que du 1er label: lorsque le paquet arrive à PE2, le 1er label a été retiré (PHP), seul reste le 2nd label, qui va permettre à PE2 d’aiguiller le paquet vers la bonne interface de sortie.

Page 30: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5630

Exemple d’acheminement

Page 31: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5631

Route-Targets (RT)

• Les RT sont des communautés étendues BGP

• Un routeur PE annonce les routes d’une VRF avec les RT spécifiés en export.

• Les autres routeurs PE importent ces routes dans les VRF qui sont configurées pour importer ces valeurs de RT.

• Ne surtout pas confondre avec le RD qui sert à distinguer les routes!

• Exemple: le routeur 1 exporte les routes de la VRF « FOO » avec le RT « 100:1 ». Le routeur 2 importe les routes marquées avec le RT 100:1 dans la VRF « BAR ».

!hostname Router1!ip vrf FOO rd 400:150 route-target export 100:1!

!hostname Router2!ip vrf BAR rd 300:200 route-target import 100:1!

Page 32: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5632

Route-Targets: Topologie Any To Any

Page 33: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5633

Route-Targets: Topologie Hub & Spoke

Page 34: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5634

Configuration Cisco IOS

!hostname PE2!ip vrf BLUE rd 100:1 route-target both 100:1 ! Both= Import + Export!interface Loopback0 ip address 10.2.2.2 255.255.255.255!interface Ethernet0/1 description Client 1 ip vrf forwarding BLUE ip address 192.168.1.1 255.255.255.0!router bgp 65000 neighbor 10.1.1.1 remote-as 65000 neighbor 10.1.1.1 update-source Loopback0 ! address-family vpnv4 neighbor 10.1.1.1 activate neighbor 10.1.1.1 send-community extended ! address-family ipv4 vrf BLUE redistribute connected !!

Page 35: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5635

6PE(IPv6 Provider Edge)

Page 36: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5636

Principes de 6PE

• Raccordement de clients IPv6, à travers un cœur MPLS (RFC 4798)

• Pas de normalisation de LDP pour IPv6 => Utilisation de MP-BGP [AFI 2 (IPv6), SAFI 4 (label)]

• Avec 6PE, le cœur n’a pas besoin d’être « IPv6-aware »

• Avantages : • Ne nécessite pas un upgrade du cœur, on conserve l’existant• Seuls les routeurs PE doivent être mis à jour et supporter 6PE, cela peut se faire

de manière incrémentale

• Même principe que pour VPNv4 => 2 labels sont utilisés, le 1er pour atteindre le PE de sortie, le 2nd correspondant au préfixe IPv6 sur le PE.

• Le Next-Hop BGP est annoncé sous forme d’adresse IPv6 « IPv4-Mapped ». Les PE extraient l’adresse IPv4 et recherchent le label annoncé par LDP pour cette adresse.

Page 37: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5637

Exemple d’acheminement

Page 38: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5638

Configuration Cisco IOS

!hostname PE2!ipv6 unicast-routingipv6 cef!interface Loopback0 ip address 10.2.2.2 255.255.255.255!interface Ethernet0/1 description Client IPv6 ipv6 address 2001:660::1/48!router bgp 65000 neighbor 10.1.1.1 remote-as 65000 neighbor 10.1.1.1 update-source Loopback0 ! address-family ipv6 neighbor 10.1.1.1 activate neighbor 10.1.1.1 send-label redistribute connected !!

Page 39: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5639

6VPE(IPv6 VPN Provider Edge)

Page 40: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5640

Principes de 6VPE (RFC 4659)

• 6PE permet de raccorder des sites en IPv6, mais sans notion d’isolation de trafic (trafic « global »).

• 6VPE reprend les mêmes concepts que pour VPNv4 (VRF, RD/RT)

• Les avantages sont les mêmes que pour 6PE (pas de mise à jour du cœur qui reste en IPv4/MPLS, pas de configuration supplémentaire sur le cœur, …).

• Le Next-Hop BGP est annoncé sous forme d’adresse IPv6 « IPv4-Mapped ». Les PE extraient l’adresse IPv4 et recherchent le label annoncé par LDP pour cette adresse.

Page 41: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5641

AToM« AnyThing Over MPLS »

Page 42: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5642

AnyThing Over MPLS

• AToM permet de transporter des paquets de niveau 2 (ATM, Frame-Relay, Ethernet, HDLC, PPP…) à travers un cœur de réseau MPLS: émulation d’une liaison niveau 2 point-à-point (Pseudo-wire – PW).

• Session LDP directe établie entre les 2 routeurs d’extrémités: affectation d’un label pour le circuit.

• Aucune configuration nécessaire sur les routeurs intermédiaires (routeurs P)

• 2 labels utilisés sur le chemin:• 1er label (appris par LDP) pour atteindre le routeur d’extrémité• 2nd label (appris par la session LDP entre routeurs PE) pour déterminer le circuit

• « Cross-connect »

• Intérêt : permet de raccorder 2 sites avec une technologie niveau 2 sans avoir besoin de créer une liaison spécialisée.

Page 43: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5643

MPLS-TETraffic Engineering

Page 44: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5644

Principes de MPLS-TE

• L’IGP sélectionne le meilleur chemin suivant différents critères (bande passante,…)

• Sur les réseaux fortement maillés, des liens sont susceptibles d’être sous-utilisés voire pas utilisés du tout

• Le Traffic Engineering permet de créer des chemins alternatifs pour re-router du trafic.

• On créée par configuration des LSP qui vont passer par les liens sous-utilisés

• 2 méthodes:• Chemin explicite: on liste les next-hops sur le routeur de départ• Par « affinité »: utilisation de valeurs avec masques binaires (à définir par les

gestionnaires du réseau)

• Protocoles mis en jeu: • Extensions IGP (OSPF et IS-IS) pour le calcul du chemin ;• RSVP-TE (Extension de RSVP – Resource Reservation Protocol) –

Signalisation/mise en place du LSP

Page 45: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5645

Pour aller plus loin…

Page 46: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5646

Autres possibilités

• VPLS (Virtual Private LAN Service) : Emulation d’un LAN par-dessus MPLS

• MPLS CsC (Carrier Supporting Carrier) : Permet de construire son propre réseau MPLS par-dessus un réseau MPLS d’un autre opérateur

• Inter-AS MPLS/VPN …

• etc

Page 47: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5647

Questions ?

Page 48: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5648

Démonstration / Maquette

Page 49: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5649

Topologie / Adressage IP

Page 50: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5650

Partie 0: Configuration backbone

• Initialement, on a préparé la configuration suivante:• Routeurs P et PE configurés avec:

• Loopbacks, Interconnexions IP (/30)• OSPF (une seule aire, l’aire 0)

• Les routeurs clients, avec:• L’interconnexion IP avec le routeur PE correspondant• Une route par défaut vers le PE• Une loopback pour simuler le LAN

• Au départ, les routeurs clients (CE) n’ont bien sûr pas de connectivité entre eux.

Page 51: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5651

Partie 0: Exemple avec P1

!hostname P2!ip cef!interface Loopback0 ip address 10.254.0.1 255.255.255.255!interface Ethernet0/0 description Vers PE1 ip address 10.0.0.1 255.255.255.252!interface Ethernet0/1 description Vers PE2 ip address 10.0.0.5 255.255.255.252!router ospf 100 network 10.0.0.0 0.255.255.255 area 0!

Page 52: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5652

Partie 1: Etapes pour l’activation de MPLS

• Vérifier la connectivité (ping, traceroute) dans le backbone avant d’activer MPLS

• Activer MPLS (+ LDP) sur les interfaces du backbone (pas sur les interfaces côté clients!) avec la commande « mpls ip ».

• Vérifier que les adjacences LDP sont bien établies avec « show mpls ldp neighbor ».

• Tester (ping, traceroute) la connectivité. Le traceroute donne les indications de label.

• Note: sur un réseau de production, attention aux problématiques de MTU !

Page 53: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5653

Partie 2: Etapes pour l’activation de MPLS/VPN

• Configurer le peering BGP entre PE1 et PE2.

• Configurer les VRF « BLUE » et « RED » sur PE1 et PE2, avec les informations suivantes:• PE1 / BLUE : RD 100:1, RT 65000:100• PE1 / RED : RD 200:1, RT 65000:200• PE2 / BLUE : RD 100:2, RT 65000:100• PE2 / RED : RD 200:2, RT 65000:100

• Configurer les interfaces clientes pour les placer dans les VRF (commande « ip vrf forwarding <VRF> »). Mettre en place les routes statiques pour les subnets en 172.x.x.x (commande ip route vrf <VRF> <subnet> <mask> <nexthop>)

• Redistribuer les routes connectées et statiques dans BGP (redistribute connected et redistribute static dans BGP, sous l’address-family ipv4 vrf <VRF>)

• Vérifier la bonne réception des routes BGP avec « show ip route vrf <VRF> »

• Tester (ping, traceroute) la connectivité entre routeurs PE puis entre routeurs clients. Le traceroute donne les indications de label.

Page 54: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5654

Partie 2: Exemple avec PE1 (1/2)

ip vrf BLUE rd 100:1 route-target export 65000:100 route-target import 65000:100!ip vrf RED rd 200:1 route-target export 65000:200 route-target import 65000:200!interface Ethernet0/2 description Vers RED1 ip vrf forwarding BLUE ip address 192.168.1.1 255.255.255.252!interface Ethernet0/3 description Vers BLUE1 ip vrf forwarding RED ip address 192.168.2.1 255.255.255.252!ip route vrf BLUE 172.16.0.0 255.255.0.0 192.168.1.2ip route vrf RED 172.20.0.0 255.255.0.0 192.168.2.2!

Page 55: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5655

Partie 2: Exemple avec PE1 (2/2)

router bgp 65000 no synchronization bgp log-neighbor-changes neighbor 10.254.1.2 remote-as 65000 neighbor 10.254.1.2 update-source Loopback0 no auto-summary ! address-family vpnv4 neighbor 10.254.1.2 activate neighbor 10.254.1.2 send-community extended exit-address-family ! address-family ipv4 vrf BLUE no synchronization redistribute connected redistribute static exit-address-family ! address-family ipv4 vrf RED no synchronization redistribute connected redistribute static exit-address-family!

Page 56: MPLS ( MultiProtocol  Label  Switching )

09/12/2013Christophe FILLOT

DSI

www.utc.fr/[email protected] MPLS

/ 5656

Commandes Cisco IOS utiles

• show ip vrf : liste les VRF avec les interfaces associées

• ping vrf <VRF> <adresse_ip> : réalise un ping dans la VRF indiquée

• traceroute vrf <VRF> <adresse IP> : Traceroute

• show ip route vrf <VRF> : affiche les routes de la VRF

• show mpls ldp neighbor : affiche les voisins LDP

• show mpls ldp bindings : affiche la LIB (Label Information Base)

• show mpls forwarding-table : affiche la LFIB (Label Forwarding Information Base)

• show ip cef vrf <VRF> <subnet> <masque> : affiche les informations de forwarding (y compris les labels MPLS utilisés)