RSX 103 : Chapitre 07 -MPLS « Multi-Protocol Label Switching » Cours RSX103 – Chapitre 07 - MPLS Page 1 MPLS Plan Multiprotocol Label Switching Motivations pour la commutation par label Intégration I té ti d de llabel b l swapping i avec IP Applications de MPLS • Transfert T f classique l i par d destination i i • Simplification des backbones des ISP • Ingénierie de Trafic « Trafic engineering » • Restauration Rapide « Fast restoration » • VPN : Virtual Private Network Cours RSX103 – Chapitre 07 - MPLS Page 2 MPLS - MultiProtocol Label Switching (MPLS) Objectif du chapitre : • Ce Chapitre présente les principes de base du fonctionnement de MultiProtocol Label Switching (MPLS). Tout d'abord, d abord, les critères de performance qui ont poussés au développement de MPLS sont présentés. Ensuite, le cours explique en détails le fonctionnement de base de MPLS (attribution des labels, LSP, label stacking, mécanismes de distribution des labels, ...). • Comme MPLS n'est utile que par les "services" qu'il peut supporter dans de gros réseaux, nous abordons ensuite ces différents services. • Le premier est la transmission des paquets IP suivant le même chemin que celui qui serait suivi avec des routeurs classiques. • Le deuxième est l'utilisation de MPLS pour simplifier le fonctionnement des gros réseaux de transit en utilisant BGP pour distribuer des labels. • Un troisième service est l'ingénierie g de trafic afin d'optimiser p la répartition p du trafic à l'intérieur du réseau de gros ISP. • Un quatrième service est de fournir une réparation rapide en cas de panne. Un cinquième service est le support efficace des réseaux privés virtuels (VPNs). Cours RSX103 – Chapitre 07 - MPLS Page 3 Commutation de paquets à hautes performances Le Défi : • Pour supporter efficacement des réseaux hautement performant, le routeur doit être capable de d ’effectuer la commutation et la retransmission ‘ forwarding » des paquets qui arrivent sur toutes ses interfaces, à des vitesses compatibles avec les débits des ses interfaces. • Temps qui sépare deux paquets en fonction du débit sur l ’interface du routeur • Le tableau suivant donne une idée du temps qui sépare l ’instant de la prise en compte d ’un paquet par rapport à l ’arrive d ’un autre paquet (<=> c ’est le temps dont le routeur dispose pour effectuer le traitement d ’un un paquet . Ce temps évalué en µsec dépend bien sur de la taille des paquets ) Interface 40 octets 500 octets 1500 octets 10 Mbps 100 Mbps 32 3.2 200 20 1200 120 150 Mbps 2.06 12.9 77.42 622 Mbps p 0.51 3.22 19.29 2.4 Gbps 10 Gbps 0.13 0.03 0.83 0.2 5 1.2 Rappel : Temps d’accès mémoire : 10 nsec pour une SRAM Cours RSX103 – Chapitre 07 - MPLS Page 4 Forwarding des paquets IP • Comment re re-transmettre transmettre efficacement les paquets d'IP? d IP? • Principe • sur l'arrivée de p paquet, q utilisation d ’une table de p pour décider sur quel q lien de sortie transmettre le paquet • Consultation de table de cheminement d'IP • rechercher dans la table de forwarding, la route la plus spécifique • taille actuelle des table de forwarding dans les routeurs de backbone des ISP : environ 80.000 à 100.000 routes • Exemple E l : Subnet Préfixe Next-Hop 138.48.0.0 139.165.0.0 16 16 A B 139.165.16.0 138 48 32 0 138.48.32.0 24 24 C E 0.0.0.0 0 F Cours RSX103 – Chapitre 07 - MPLS Page 5 Forwarding des paquets IP(2) Consultation de table De forwarding : principe de base similaire à l ’idée de recherche de préfixe le plis long Recherche basée sur une structure Trie : sommet { }* Subnet Préfixe Next-Hop 138.48.0.0 139 165 0 0 139.165.0.0 16 16 A B 139.165.16.0 138.48.32.0 24 24 C E 0000 0.0.0.0 0 F 138.48 32 Nul A 138.48.*) 232 E F 139.165 16 B (139.165.*) C (138.48.232.*) (139.165.16*) Coût de consultation de table de forwarding fonction de la longueur moyenne des préfixes 200 comparaisons G accès mémoire Utilisation d ’une cache pour améliorer les performances (138.48.33.200) Cours RSX103 – Chapitre 07 - MPLS Page 6 Commutation d’étiquettes -Label swapping« Vers un mécanisme de forwarding plus simple » Principe Pi i Sur l'arrivée de paquet, le routeur analyse : Étiquette « label » De Paquet Port D'Entrée Sur la base d ’une table de forwarding g des labels,, le routeur décide Du Port de sortie pour le paquet sortant Label a affecter au paquet sortant R1 Label forwarding table Inport Inlabel Outport Outlabel West West A B East East X Y Cours RSX103 – Chapitre 07 - MPLS • Coût de recherche dans la table • un seul accès mémoire Page 7 Commutation d’étiquettes -Label swapping« Exemple » Table de routage de R2 Table de routage de RA default via R3 R1, R3 : direct RA, RB via R1 default via R1 Table des Labels Flux1 : L1 via R1 Flux2 : L2 via R1 Table des Labels Inport Inlabel Outport Outlabel South L2 S− E L1 Flux 1 Flux 2 Table de routage de R3 Table de routage de R1 Flux 3 Table de routage de RB default via R1 Table des Labels Flux3 : L1 via R1 default −> Internet R1, R2, RB : direct RA, RB via R1 default via R3 R2 RA, R2, RA RB : direct Table des Labels R3 Label forwarding table Inport Inlabel Outport Outlabel Inport Inlabel Outport Outlabel West West S−W West West N−W Cours RSX103 – Chapitre 07 - MPLS L1 L2 L1 North East East L2 L1 L2 L1 L2 L1 East East North L1 L3 L1 Page 8 Perspectives historiques Le début des années 90 Les routeurs IP étaient essentiellement de travail sous dimensionnées sur lesquelles on faisait exécuter des SE particuliers optimisées pour traiter le routage des paquets et implémenter les protocoles de routage C’était Impossible d’implémenter dans le hardware les fonctions de sélection dans les tables de routage pour trouver le port de sortie auquel, il faut envoyer un paquet Utilisation des caches par les routeurs pour améliorer les performances ( éviter diminuer le coût important lié au parcours des tables de routages ) Une autre technologie en développement : Asynchronous Transfer Mode Technologie naissante basée utilisant le mécanisme de label « étiquettes » swapping Avec A des d iinterface t f quii travaillaient t ill i t à d des vitesses it él élevées é 155 Mbps, 622 Mbps Proposées par les sociétés de télécom Pour supporter la voix (téléphonie) tous les paquets ont été divisés cellules de 48 octets avec en-tête de 5 octets pour l'étiquette Dés performances améliorées au niveau de la commutation par rapport aux routeurs IP Cours RSX103 – Chapitre 07 - MPLS Page 9 Perspective historique (2) Début des années 2000 La Loi De Moore Les performances des CP doublent tous les 18 mois L L’apparition apparition des circuits VLSI permet des intégrations meilleurs des CPU et l’apparition l apparition des CPUs plus complexe Routeurs IP Développement Dé l t plus l iimportants t t d des iinfrastructures f t t IP Nouvelles avances dans des algorithmes de routage Le routage IP peut être facilement implémenté dans le matériel les chips sont complexes, complexes permettant des travailler à des vitesse 2 2,4 4 Gbps ou 10 Gbps La technique de swapping des labels « d'étiquette » n'est pas plus nécessaire pour construire des équipements à hautes performances (car on arrive à construire des routeurs qui font un routage IP normal et fonctionnent bien ) Le critère de performances n’est plus le critère principale Côté ATM : Le choix d’une cellule de petite taille pour supporter efficacement lé téléphonie IP s’est avéré le plus grand inconvénient d’ATM et une source de difficulté d’implémentation n existent pas au-dessus au dessus de 622 Mbps Mbps. Les interfaces ATM sur des routeurs IP n'existent L’utilisation d’ATM principalement limitée dans les réseaux d’accès pour ADSL->1Gbps Cours RSX103 – Chapitre 07 - MPLS Page 10 Perspective historique (3) Motivations principale pour MPLS Applications Transfert classique par destination Simplification les backbones des ISP Ingénierie de Trafic « Trafic engineering » Restauration Rapide « Fast restoration » VPN : Virtual Private Network Utilisation de MPLS est justifiée essentiellement par des critères de facilité d’implémentation et la facilité des construire des réseaux IP (réseaux d’accès à internet) qui sont plus simple grâce à l’utilisation de MPLS Switchs optiques switchs lambda Switchs TDM (SONET/sdh) Cours RSX103 – Chapitre 07 - MPLS Page 11 Perspective historique (4) E i Equipements t contrôlés t ôlé par MPLS Le routage IP et MPLS sont employés pour établir des flux à travers ces équipements l'équipement utilise un mécanisme spécial de routage Switchs fibre Switchs lambda Table de commutaion d’un switch Fibre Inport West West West Cours RSX103 – Chapitre 07 - MPLS InFiber F1 F2 F3 OutPort East East South OutFiber F5 F3 F2 Page 12 Architecture d’un équipement Label-Switch Plan de contrôle « dépende de la technologie » ATM Frame relay Optical switch Shaping Q[2] Classification Paq quets étiq quetés « La abeled paq quets » Q[1] Policing Paquets étiquetés Q[N] Table de forwarding des labels Shaping Q[1] Q[2] Classification Policing Paquets étiquetés Q[N] Les décisions de routage sont basées sur un « match » exacte Maj des labels à l’intérieur des paquets Cours RSX103 – Chapitre 07 - MPLS Page 13 Intégration de la commutation des Labels avec IP Plan Multiprotocol Label Switching Motivations pour la commutation par label Intégration I té ti d de llabel b l swapping i avec IP Applications de MPLS • Transfert T f classique l i par d destination i i • Simplification les backbones des ISP • Ingénierie de Trafic « Trafic engineering » • Restauration Rapide « Fast restoration » • VPN : Virtual Private Network Cours RSX103 – Chapitre 07 - MPLS Page 14 Intégration de la commutation des Labels avec IP Intégration I té ti de d MPLS avec IP de d façon f à voir i des d roueturs t au cœur du d réseau é quii fonctionnent avec des étiquettes à fin de transmettre des paquets IP à travers le réseau ( combiner les deux technologies de façon à avoir des roueturs à hautes performances) sur lesquels on peut déployer des applications particuliers (qu’on Vera plus tard) Flux 1 Labelled packets Paquets IP pures Flux 2 Flux 3 LSR : Label−Switching Router Le routage des paquets est exclusivement fait sur base des étiquettes Edge Router « Ingress »: • Associer des étiquettes à des paquets IP qui sont envoyés dans le cœur de backbone • Le choix des étiquettes est basé sur une table de routage Cours RSX103 – Chapitre 07 - MPLS Paquets IP pures Edge router « Egress »: Extrait les labels des paquets IP avant de laisser sortir le flux MPLS en dehors de l’environnement MPLS Page 15 Intégration de Label swapping avec IP(2) PROBLEMES A RESOUDRE 1. Comment étiqueter (insérer les labels) les paquets IP? 2. Comment créer des flux avec les paquets étiquetés ? 3. Comment construire correctement tables de routage dans les routeurs LSR pour router correctement mes paquets IP étiquetés Ceci nécessite des mécanismes de distribution des informations d’’étiquettage entre les routeurs LSR 4. Comportement des routeurs LSR distribution des labels Cours RSX103 – Chapitre 07 - MPLS Page 16 Insertion des étiquettes dans les paquets IP « Labelling des paquets IP » 1 1. Solution générique « dans un réseau IP » Insérer dans le paquet IP un en-tête spécial sur 32 bits En-tête couche Liaison de données En-tête MPLS En-tête couche réseau 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 90 1 En-têtes d ’autres couches LABEL Exp S TTL 20 bits bit d de poids id ffaibles ibl (1048576 labels l b l diffé différents) t ) Exp : Expérimental S : « Bottom of Stack » (First label in stack) TTL : Time To Live 2. Solution à base des technologies existantes Réutiliser les " étiquettes " déjà disponibles (pour identifier les labels) • Frame Relay (DLCI : Data Link Circuit Identifier) • Asynchronous Transfer Mode :VCI (Virtual Circuit Identifier)/ VPI (Virtual Path Identifier) • S it h Fiber/lambda Switch Fib /l bd avec encodage d particulier ti li des d des d étiquettes éti tt • SONET/SDH avec encodage particulier des des labels Cours RSX103 – Chapitre 07 - MPLS Page 17 Architecture d’un routeur label switch Protocole de routage IP Table de routage IP Distribution des labels Table de des labels Shaping Q[2] Classification Paq quets étiq quetés « La abeled paq quets » Q[1] Policing Paquets étiquetés Q[N] Table de forwarding des labels Shaping Q[1] Q[2] Classification Policing Paquets étiquetés Q[N] Les décisions de routage sont basées sur un « match » exacte Maj des labels à l’intérieur des paquets Cours RSX103 – Chapitre 07 - MPLS Page 18 PROBLEMES A RESOUDRE –SUITE1. Comment étiqueter (insérer les labels) les paquets IP? 2. Comment créer des flux avec les paquets étiquetés ? 3. Comment construire correctement tables de routage dans les routeurs LSR pour router correctement mes paquets IP étiquetés Ceci nécessite des mécanismes de distribution des informations d’’étiquettage entre les routeurs LSR 4. Comportement des routeurs LSR distribution des labels Cours RSX103 – Chapitre 07 - MPLS Page 19 Allocation des labels COMMENT ASSIGNER LES LABELS A L’ENTREE DU RESEAU (Domaine MPLS) ? Le routeurs d'entrée (Ingress) divisent l'ensemble des paquets en plusieurs Classes D'équivalence D équivalence de Forwarding (FEC: Forwarding Equivalence Classes ) ( Opération de classification des paquets) La définition du FEC peut dépendre de la caractéristique du paquet IP reçu Exempls : Tous les paquets qui ont le même préfixe de destination Tous les paquets d’une même connexion TCP envoyés vers le même Next-Hop ou LSR Egress Tous les paquets qui appartiennent au même flux applicatif par exemple FEC pour UDP et FEC pour le TCP La même étiquette est attachée à tous les paquets appartenant à une seule classe FEC (ils doivent être traités de la même façon par le routeur) Ces paquets sont routés en utilisant la commutation de labels dans le réseau Les étiquettes est retirées à la sortie de réseau Cours RSX103 – Chapitre 07 - MPLS Page 20 Allocation des labels (2) • Mapping M i : One O to t One O • Un même FEC , différents Labels FEC F FEC Label L1 Re 1 Une partie du trafic passe par Re1 et une autre partie passe par Re2 RD associe ces deux labels (L1 et FEC F Re 2 L2 RD L2) à un seul traitement •Est-ce qu’on peut avoir un même Label pour plusieurs trafics différents ? ( plusieurs FEC) FEC F1 FEC F1 L R1 FEC F2 R2 L R1 L RD Exemple ou c’est impossible (car rien ne permet de différentier les paquets provenant de FEC F1 de ceux en provenance de FEC F2 ( fusion aussi bien au niveau des labels que au niveau des connexions) ( adressage plate-forme : un seul ensemble pour le routeur entier) Cours RSX103 – Chapitre 07 - MPLS FEC F2 R2 L RD Exemple ou c’est possible (car le label L arrive sur deux connexions différentes selon qu’il s’agit FEC F1 ou FEC F2) L’intérêt est de pouvoir combiner l’espace des Label avec des connexions (interfaces physiques ) et augmenter la possibilité d’adressage (un ensemble de 1 000 000 par interface) Page 21 Espaces des Labels • Un U LSR SR peut assigner i d des étiquettes éi de d deux d différents diffé types d'espaces d' d'étiquette • Espace d'étiquette d étiquette par LSR (Per LSR label space) • Un espace de labels unique pour toues les interfaces • Espace d'étiquette par d'interface (Per Interface Label Space) • Un espace de label unique pour chaque interface L3 : Espace des labels par d'interface L4 : Espace des labels par LSR Inlabel I l b l Inlabel Outport West : L3 South West : L4 East South : L3 West OutLabel L0 L3 L5 Cours RSX103 – Chapitre 07 - MPLS O Outport O OutLabel b l L0 East L0 L4 South L3 L3 East L5 Page 22 Exemple commutation MPS – Mode Frame Relay src * * dst out 128 128.178/15 178/15 b/70 129.88/16 b/70 b a i in out t in out a/70 d/28 d/30 b/25 b/25 c/33 a/25 b/77 a b b c a d 128.178/15 b a c 129.88/16 b a src dst a out * 129.88/16 b/28 * 128.178/15 b/28 18/8 129 129.88/16 88/16 b/30 b in out a/33 b/37 in out a/77 c/37 pop pop src= 18.1.2.3 30 129.88.3.3 33 129.88.3.3 37 129.88.3.3 129.88.3.3 src= 122.1.2.3 28 129 88 38 1 129.88.38.1 25 129 88 38 1 129.88.38.1 77 129 88 38 1 129.88.38.1 129 88 38 1 129.88.38.1 Cours RSX103 – Chapitre 07 - MPLS Page 23 Opération sur un paquet étiqueté TROIS TYPES D’OPERATIONS : 1. PUSH : Insert un label en en-tête du paquet reçu 2. SWAP : changer la valeur du label d’un paquet par un autre label 3. POP : suppression du label de l’en-tête du paquet (opération duale de PUSH, effectuée en sortie du domaine MPLS) PUSH SWAP POP Flux 1 Paquets IP pures Flux 2 Cours RSX103 – Chapitre 07 - MPLS Paquets IP pures Page 24 PROBLEMES A RESOUDRE –SUITE1. Comment étiqueter (insérer les labels) les paquets IP? 2. Comment créer des flux avec les paquets étiquetés ? 3. Comment construire correctement tables de routage dans les routeurs LSR pour router correctement mes paquets IP étiquetés Ceci nécessite des mécanismes de distribution des informations d’’étiquettage entre les routeurs LSR 4. Comportement des routeurs LSR distribution des labels Cours RSX103 – Chapitre 07 - MPLS Page 25 Contenu de la table de routage des Labels – informations de base L b l Forwarding Label F di Table T bl : Identification du label entrant • Identification de l’étiquette du paquet entrant InLabel NextHop ; Op Next-Hop pour le paquet • Interface de sortie • Le paquet est envoyé vers un autre LSR • • Destination du paquet : LSR lui-même Paquet à router après une opération du type POP • LSR lui-même lui même Cours RSX103 – Chapitre 07 - MPLS Opération à effectuer sur la pile • SWAP Label au sommet de la pile • PUSH une nouvelle étiquette q au sommet de la pile • POP la pile de labels Page 26 Création de LSP : Label Switch Path : Exemple Table de Forwarding g de LSR 4 LSP : un chemin suivi d'un paquet étiqueté à travers de plusieurs Routeurs « Hops » dont le début est le LSR Ingress et la fin est le LSR Egress Un LSP est normalement uni-directionnel Inport Inlabel Outport Operation SE SE L1 L6 NE NW SWAP(L5) SWAP(L2) Table de Forwarding de LSR 7 POP POP LSP1: • • • Ingress: LSR 3, Via LSR 5, LSR 7, LSR 4, Egress: LSR 2 Inport Inlabel Outport Operation SW SW SWAP(L1) SWAP(L6) L0 L5 NW NW Table de Forwarding de LSR 6 PUSH(L3) ( ) Inport W W Inlabel L5 L0 Outport Operation NE NE SWAP(L5) SWAP(L0) Table de Forwarding de LSR 5 LSP2 : • Ingress: g LSR 1,, • Via LSR 5, LSR 7, LSR 4, • Egress: LSR 0 PUSH(L4) Cours RSX103 – Chapitre 07 - MPLS Inport Inlabel Outport Operation NW S L3 L4 E E SWAP(L0) SWAP(L5) Page 27 Comment améliorer la scalabilité Exemple : Petit LSP Ingress: L3, L5, L7, L4, Egress:L2 Petit LSP : Ingress: L1, L5, L7, L4, Egress:L0 L6 voie seulement une seule LSP Un LSP plus gros contenant plusieurs LSPs différents Ingress: L5, L6 L6, Egress:L7 Cours RSX103 – Chapitre 07 - MPLS Page 28 Empilement des Labels « Label stacks » • Scalabilité des LSPs • il devrait être possible de placer des petits LSPs à l'intérieur de grands LSPs et d préférence de éfé réciproquement é i t • Solution adoptée par MPLS 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 90 1 LABEL S • chaque paquet peut contenir une pile de labels • L'étiquette au dessus de la pile apparaît d'abord en premier dans le paquet • S = 1 si l'étiquette est au fond de la pile • S = 0 si l'étiquette n'est pas au fond de la pile Cours RSX103 – Chapitre 07 - MPLS Page 29 Table de routage des Labels - plus de détails Identification du label entrant • Interface : Label (Per-Interface) pour pour l ’espace p p des labels par p interface • Label (Per-LSR) pour espace des labels par LSR InLabel NextHop1; Op1 ( NextHop2 ;Op2 ...) Nextt h N hop pour le l paquett • Interface de sortie • LSR lui-même Opération à effectuer sur la pile • SWAP Label au sommet de la pile • SWAP Label au sommet de la pile et PUSH un nouveau Label au sommet de la pile • POP la pile de labels N.B : En général, un seule (NextHop,Op) parie par InLabel Cours RSX103 – Chapitre 07 - MPLS Page 30 Table de routage des Labels - plus de détails Exemple : distribution des labels dans le réseau Table de Forwardind de L3 Inlabel Nexthop Operation West:L3 West:L4 W t L5 West:L5 West:L6 West:L9 North−E SWAP L0 East POP S th E South−E PUSH L1 Local POP (South−East SWAP L1) (North−E SWAP L2) L2 L2 L2 L0 L4 L5 L0 L5 L9 L0 L0 L5 L0 L5 L1 L1 Cours RSX103 – Chapitre 07 - MPLS Page 31 MPLS et l ’empilement des labels « label stacks» [Hérarchie des labels] Table de Forwarding g de LSR4 Exemple : Inport Inlabel Outport Operation SE SE L1 L6 NE NW SWAP(L5) SWAP(L2) Table de Forwarding de LSR7 Petit LSP1 g LSR1,, • Ingress: • Via LSR5, LSR7, LSR4, • Egress:LSR0 Inport Inlabel Outport SW SW Petit LSP2 • Ingress: LSR3, • Via LSR5, LSR7, LSR4, • Egress:LSR2 L5 L0 NW NW Operation SWAP(L6) SWAP(L1) T bl de Table d Forwarding F di de d LSR6 Inport Inlabel W L1 Outport NE Operation POP L6 voie seulement une seule LSP Table de Forwarding de LSR5 Inport Inlabel Outport Operation NW S L3 L4 E E SWAP(L0), PUSH L1 SWAP(L5), PUSH L1 Cours RSX103 – Chapitre 07 - MPLS Un gros LSP porte plusieurs LSP différents • Ingress: LSR5, • via LSR6, • Egress:LSR7 Page 32 MPLS et les boucles • Ce qui se passe si le routage crée une boucle pendant la phase de la création des LSP • LSP peut entrer en boucle à l'intérieur du réseau tant que le LSP existe • Comment s ’en sortire ? • Dans un réseau IP 1. copier le champs TTL du paquet IP dans l’en-tête MPLS 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 90 1 LABEL Exp S TTL 2.Décrémenter le MPLS-TTL (à chaque saut) 3.Au routeur de sortie en aval (Egress LSR) : copier la valeur MPLS-TTL dans le champs IP-TTL • N.B N B : comme ne MPLS MPLS, on travaille plus au niveau de la couche réseau ( on remonte plus dans la couche réseau), il faut donc garder ce mécanisme au niveau de MPLS • Dans un réseau autre que IP : technologies (ATM (ATM, Frame Relay) • Comment Empêcher les boucles à l'intérieur de LDP ? • indiquez le chemin explicitement dans le LSP (lorsque le LSP passe par un nœud et si le nœud se reconnaît comme existant déjà dans le LSP une boucle, on ne re-propage pas le LSP • Ou bien, créer un TTL explicite au delà duquel, le LSP ne doit plus propager Cours RSX103 – Chapitre 07 - MPLS Page 33 MPLS et Diffserv A la manière d’IP" (<=> E-LSPs) • un LSP peut transporter des paquets possédant des services différenciés différents 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 90 1 LABEL Exp S TTL • Chaque routeur MPLS s ’appuie appuie sur le champ EXP pour déterminer le service associé à au paquet entrant • • • • Le champ EXP fait partie de l ’en-tête MPLS et c'est composé de trois bits L encapsulation ATM/FrameRelay ne supporte pas le champs EXP Utile pour réduire le nombre de LSPs nécessaires Peut-être utilisé aussi pour supporter l ’ECN Cours RSX103 – Chapitre 07 - MPLS Page 34 MPLS et Diffserv (2) • La manière d ’ATM’ (<=> L-LSPs) • un LSP porte des paquets recevant un seul service • le champ d'EXP de l'en-tête de MPLS peut être employé pour spécifier la préférence à la perte pour chaque paquet (par exemple pour l'Assured Forwarding) • Le routeur MPLS décide du type de service pour un paquet entrant sur la base de la valeur de label • le service employé par le LSP est indiqué à l ’établissement LSP • avantages • utile dans des réseaux de ATM / Frame Relay • chaque L-LSP L LSP peut avoir sa propre route explicite • inconvénient • plus de L-LSPs que E-LSPs sera nécessaire Cours RSX103 – Chapitre 07 - MPLS Page 35 Rôle du routeur Edge LSR PROBLEMES A RESOUDRE –SUITE1. Comment étiqueter (insérer les labels) les paquets IP? 2. Comment créer des flux avec les paquets étiquetés ? 3. Comment construire correctement tables de routage dans les routeurs LSR pour router correctement mes paquets IP étiquetés Ceci nécessite des mécanismes de distribution des informations d’’étiquettage entre les routeurs LSR 4. Comportement des routeurs LSR Cours RSX103 – Chapitre 07 - MPLS Page 36 Rôle du routeur Edge LSR Comment le routeur Edge LSR à l’entrée « Ingress » détermine le label qu’il faut utiliser pour forwarder un paquet reçu ? PRINCIPE : 1. Le routeurs d'entrée (Ingress) divisent l'ensemble des paquets en plusieurs Classes D'équivalence de routage (FEC: Forwarding Equivalence Classes ) ( opération de classification des paquets) La définition du FEC peut dépendre de la caractéristique du paquet IP reçu Informations du niveau réseau Souvent adresse de destination, sous-réseaux de destination ou Next-Hop informations du niveau transport Tous les paquets TCP qui ont le même préfixe de destination La même étiquette est attachée à tous les paquets appartenant à une seule classe FEC (ils doivent être traités de la même façon par le routeur) 2. Ces paquets sont routés en utilisant la commutation de labels dans le réseau Les étiquettes est retirées à la sortie de réseau Cours RSX103 – Chapitre 07 - MPLS Page 37 Rôle du routeur Edge LSR (2) • La distribution des labels assure que tous les routeurs aient une vue commune d mapping des labels aux classe d’équivalence (FEC label binding) Table de routage: Table de routage: Addr-prefix 47.0.0.0/8 Addr-prefix 47.0.0.0/8 Next Hop LSR2 LSR1 IP Packet Next Hop LSR3 LSR3 LSR2 47.80.55.3 Label Information Base: Pour 47.0.0.0/8 Utilise label ‘17’ Label-In FEC Label-Out XX 47.0.0.0/8 17 Label Information Base: Label-In FEC Label-Out 17 47.0.0.0/8 XX Etape 3: LSR insère la valeur de Etape 2 : LSR communique le Etape 1: LSR crée un mapping label dans sa forwarding base mapping aux LSR voisins entre FEC et une label donnée Cours RSX103 – Chapitre 07 - MPLS Page 38 Rôle du routeur Edge LSR ( 3) Exemple : attribution de classes de labels par RA Table de routage de RA Sous-réseau 138.48.0.0 139.165.0.0 12.0.0.0 11.0.0.0 192.163.13.1 p préfixe 16 16 8 8 32 Label L1 L2 L3 L2 L3 LSP1 • Ingress=RA, via LSR1, LSR2, Egress=RC LSP2 • Ingress=RA, via LSR1, LSR3, Egress=RD LSP3 Ingress RA, vai LSR1, • Ingress=RA, Egress Egress=RB RB Tous ce qui est joignable via RC : Label bleu Cours RSX103 – Chapitre 07 - MPLS Page 39 Architecture d’un routeur Edge LSR « Ingress » Protocole de routage IP Table de routage IP LDP : Distribution des labels Table de des labels Shaping Q[2] Paq quets étiq quetés « La abeled paq quets » Classification Policing Identification de FEC Insertion des labels Q[1] Shaping Q[N] Q[1] Q[2] Classification Policing Paquets étiquétés Paquets étiquétés Q[N] Les décisions de routage sont basées sur un « match » exacte Maj des labels à l’intérieur des paquets Cours RSX103 – Chapitre 07 - MPLS Page 40 Distribution des labels • Pour p pouvoir établir des LSP,, il faut qu’on q ait des protocoles p pour p distribuer les labels à l’intérieur du réseau. • Différentes façons qui existent pour coordonner les les tables de routage des labels de différentes LSR dans un réseau donné ? Soit utiliser un protocole spécialisé pour distribuer le mapping entre les tables de f foarwarding di ett les l classes l d’équivalences d’é i l (FEC-labels) (FEC l b l ) • LDP: Label Distribution Protocol g de trafic de RSPV • RSVP-TE : extensions d’ingénierie • CR-LDP (Constraint-Based LDP) Soit Utiliser les protocoles existants pour ajouter l’information de correspondance entre g des labels (Piggyback ( ggy les mapping pp g FEC-label dans les les FEC et les tables de forwarding messages envoyés par les protocoles de routage ) • possible si le protocole de routage est extensible • Le BGP peut être facilement modifié pour ajouter dans les annonces BGP des annonces sur les labels utilisé par MPLS (RS-VPN BGP - RFC 4547) • RIP ne peut pas être employée parce que sa syntaxe n'est pas extensible • les protocoles à états de lien (OSPF, IS-IS) ne distribuent pas des routes Cours RSX103 – Chapitre 07 - MPLS Page 41 Modes de distribution des Labels • L’élément la plus important est de savoir comment distribuer les étiquettes dans le réseau (car ça sera l’élément important sur lequel on s’appuie pour déterminer les LSP) • Qui détermine le mapping de FEC-label ? • On est dans un environnement ou on a en amont un LSR « UpStream » qui envoie des paquets et en aval un autre LSR en aval « Downstream » • En général, on demande au LSR « Downstream » d’attribuer les labels pour chaque classe d’équivalence qu’il est capable de transmettre : • Les mapping des FEC-label sont attribués et envoyés par le LSR qui se trouve en aval au LSR « Upstream » ( celui qui reçoit les paquets qui va déterminer qu’elles sont les étiquettes à utiliser pour transmettre ces paquets) Cours RSX103 – Chapitre 07 - MPLS Page 42 Modes de distribution des Labels(2) • Comment faire pour distribuer les étiquettes et à quel moment on va les distribuer ? qui se trouve en amont 1. Le LSR en aval va les distribuer sur demande de LSR q On va avoir un message spécifique envoyé par le LSR en amont : message de demande d’étiquettes en spécifiant la classe d’équivalence qu’il veut envoyer Le LSR en aval, répond en fournissant un mapping entre les FEC et les labels à utiliser pour cette classe d’équivalence downstream-on-demand: • Avantages : • Les mapping des FEC-label sont distribués uniquement si nécessaires • Le LSR a besoin de stocker seulement les mapping des FEC-label utilisés • inconvénient : • Si le LSR en avale tombe en erreur, il faudra obtenir un autre mapping via un autre chemin pour rjoindre la destination Page 43 Cours RSX103 – Chapitre 07 - MPLS Modes de distribution des Labels (3) 2. Soit permettre à un routeur LSR d’annoncer à sa guise (mode DownStream Non solicité) les mapping entre les labels et les classes d’équivalence d’il souhaite utiliser • Le LSR downstream annonce des mapping FEC-label au LSR Upstream ( nouvelle route => Envoi un nouveau label) downstream- unsolicited: • avantage : • Chaque LSR en amont peut obtenir plusieurs labels pour chaque FEC • inconvénients : • Les labels peuvent ne pas être envoyées au bon moment • N.B N B : ce n’est n est pas la solution adoptée au niveau de TE Cours RSX103 – Chapitre 07 - MPLS Page 44 Modes de distribution des Labels (4) • Quel LSR DownStream qui initie la distribution des labels pour un FEC donné? 1. Soit de façon ardonnée : Contrôle ordonné • Un LSR Egress particulier qui annonce la distribution des labels. Les étiquettes se propagent petit à petit dans le réseau de l’aval du réseau vers l’amont du réseau • Le LSR UpStream propage l ’information de label 2. Soit de façon indépendante : Contrôle indépendant • Chaque LSR choisit indépendamment quand il distribue son mapping FEClabel Cours RSX103 – Chapitre 07 - MPLS Page 45 Protocole de distribution des Labels : LDP • Label Distribution Protocol • Conçu pour distribuer le mapping FEC-labels sur a base saut par saut ( (Hop-By-Hop) ) l'intérieur é de réseau é lorsque les labels ne peuvent pas ê être distribués par les protocoles de routage • Fonctionne en mode ordonné • Le LSR en aval établit le mapping sans demande explicite • Fonctions : • Découverte de voisine • • détermine si le voisin est un routeur LSR ou bien un routeur normal Distribution de mapping des FEC • Plusieurs Pl i modes d de d distribution di t ib ti sontt supportés té par LDP Cours RSX103 – Chapitre 07 - MPLS Page 46 Messages LDP Initialisation Utilisé pendant l'établissement de session de LDP pour annoncer et négociez les options Keepalive envoyé périodiquement en l'absence d'autres messages Label Mapping utilisé par LSR pour annoncer le Mapping FEC-label Label Withdrawal utilisé par LSR pour retirer vieux Mapping FEC-label Label Release utilisé par LSR pour indiquer qu ’un Mapping reçu précédemment n ’est plus utilisé Label Requeste utilisé par LSR pour demander un label pour un FEC spécifique Cours RSX103 – Chapitre 07 - MPLS Page 47 Découverte de voisin « Neighbor discovery » • Principe Pi i : • Le LSR envoie périodiquement des paquets LDP Hello à voisin sur en multicast • La découverte voisine de LDP utilise le protocole UDP / port 646 • • les voisins répondent avec LDP Hello s' ils sont des LSR ADDRESSE IP la plus élevée devient actif et établit une connexion • le LSR qui a l ’ADDRESSE TCP pour LDP sur le port 646 • LSR quii a l ’ADDRESSE IP lla plus l petite tit d devient i t passif if ett attend tt d l'ét l'établissement bli t d ’une connexion TCP pour la session LDP • La session TCP est établie sur le port 646 • L'établissement de session LDP permet la négociation des options Cours RSX103 – Chapitre 07 - MPLS Page 48 Protcole LDP : Echange des messages UDP-Hello UDP-Hello TCP-open Initialization(s) Label request for a FEC Label binding: FEC - Label Cours RSX103 – Chapitre 07 - MPLS Page 49 MPLS • Applications de MPLS • Transfert classique par destination • Simplification des backbones des ISP • Ingénierie de Trafic « Trafic engineering » • Restoration Rapide « Fast restoration » • VPN : Vi Virtual t lP Private i t N Network t k Cours RSX103 – Chapitre 07 - MPLS Page 50 Transfert classique par destination « Destination based forwarding » • Principe : • Les paquets étiquetés devraient suivre le même chemin par le réseau comme si ils étaient des paquets IP purs • Les routeurs de sortie (Egress) assignent les labels FEC sur base de sousréseaux de destination • Les LSR intérieurs distribuent les FEC-labels sur la même base • Les routeurs « Ingress » attachent les labels aux paquets en s ’appuyant sur le mapping FEC-label reçu Cours RSX103 – Chapitre 07 - MPLS Page 51 Modes de distribution des Labels (5) • Sur base des mécanismes p précédent,, si on veut utiliser MPLS pour p envoyer y des paquets p q IP,, on va s’appuyer sur un protocole LDP (mode ordonnée et sans demande explicite) Le routeur LSR de sortie du réseau (RD) va annoncer vers l’amont les étiquettes qu’il peut utiliser pour joindre les destinations qui sont joignables par lui Dans ce exemple, il les annonce à LSR3 LSR3 va faire f i de d même, ê en lles annonçantt à RC ett LSR1 (il annonces lles éti étiquettes tt qu’il ’il ffautt utiliser tili pour joindre les destinations qui sont joignables par RD RC et LSR1 feront de même A la fin, tous les routeurs vont recevoir les informations qui leur permettent de joindre les destinations joignables par RD Sur base de la connaissance de la topologie du réseau, chacun va déterminer le chemin le plus court pour joindre la destination via MPLS Ceci permet de construire un arbre centré sur le routeur de sortie et qui part de toutes les sources possibles à l’intérieur du réseau. Les paquets sont envoyés suivant cet arbre. Normalement cet arbre serait le même arbre qui serait suivi par les paquets IP si ces paquets avaient été envoyés normalement dans le réseau IP Paqutes envoyés à RD vont suivre l’arbre LSP Paquets IP pures Paquets IP pures Mode de fonctionnement nbormal d’un réseu IP avec MPLS Cours RSX103 – Chapitre 07 - MPLS Page 52 Transfert classique par destination(1) Exemple p : Mode Ordered Un-solicitaed DownStream « mode ordonné non sollicité » Table de routage de LB Table de routage de LA RC : Est RC : Est [via LSR B] Table des labels Table des labels Mapping Reçus Table des FEC Mapping Reçus Table de routage de LE Table de routage de LD RC : Nord-Est Table des labels RC : Nord [via LSR A] Table des labels Table des FEC • Mapping Reçus • Orderd <=> ordonnée) -> les LSR Egress B et E anoncent les informations de binding (on commence par les routeurs de sortie et en remonte en amont)) Table des FEC Mapping Reçus Unsolicitaed (Non colicité) -> LSR B et LSR E n ’attendent pas pour une requêtte Cours RSX103 – Chapitre 07 - MPLS Page 53 Transfert classique par destination(1.1) Exemple p : Mode Ordered Unsolicitaed DownStream « mode ordonné non sollicité Table de routage de LB Table de routage de LA RC : Est RC : Est [via LSR B] Table des labels Table des labels Sud : L3 Est : L4 Table des FEC RC PUSH(L4), PUSH(L4) Est Mapping Reçus S Sud • LSR B découvre que le Next Hop « RC » est un routeur IP pure. • Le label reçu de LSR E est sauvegardé pour utilisations futures : L3 POP O : Est Ouest : L4 POP : Est Mapping Reçus RC : Sud : L2 (inutilisé) RC : Est : L4 (choisi) Table de routage de LE Table de routage de LD RC : Nord-Est Table des labels RC : Nord [via LSR A] Est : L1 POP, Nord-Est Table des labels Nord : L2 POP, Nord-Est Table des FEC RC PUSH (L3) ; Nord Mapping Reçus RC : EST : L1 • LSR E découvre que le Next Hop « RC » est un routeur IP pure. • Le label reçu de LSR E est sauvegardé pour utilisations futures Cours RSX103 – Chapitre 07 - MPLS Table des FEC Mapping Reçus RC : Nord : L3 (inutilisé) Page 54 Transfert classique par destination(1.2) Exemple p : Mode Ordered Unsolicitaed DownStream « mode ordonné non sollicité Table de routage de LB Table de routage de LA RC : Est RC : Est [via LSR B] Table des labels Table des labels S Sud : L3 POP O : Est Ouest : L4 POP : Est Table des FEC RC PUSH(L4), Est Mapping Reçus Mapping Reçus RC : Sud : L2 (inutilisé) RC : Est : L4 (choisi) Table de routage de LD Table de routage de LE RC : Nord-Est Table des labels RC : Nord [via LSR A] Table des labels Est : L1 POP, Nord-Est T bl des Table d FEC Nord : L2 POP, Nord-Est • Mapping Reçus RC : EST : L1 RC : Nord : L3 (Choisi) • Les LSR B et E négligent les autres mappings puisque ils possèdent une meilleur route pour attendre RC LSR D néglige le mapping de LSR E puisque la route vers RC passe par le Nord Cours RSX103 – Chapitre 07 - MPLS Table des FEC Mapping Reçus RC : Nord : L3 (inutilisé) Page 55 Transfert classique par destination(1.3) Exemple p : Mode Ordered Unsolicitaed DownStream « mode ordonné non sollicité Table de routage de LB Table de routage de LA RC : Est RC : Est [via LSR B] Table des labels Table des labels S Sud Sud : L3 Est : L4 Ouest : L4 POP : Est Table des FEC Mapping Reçus RC PUSH(L4), PUSH(L4) Est Mapping Reçus RC : Est : L4 (choisi) : L3 POP O : Est LSR A swape le label L3 avec L4 Table de routage de LD RC : Sud : L2 (inutilisé) LSR B enlève le label L4 et envoie à RC RC Table de routage de LE RC : Nord-Est Table des labels RC : Nord [via LSR A] Table des labels Est : L1 POP, Nord-Est T bl des Table d FEC RC PUSH (L3) ; Nord Mapping Reçus LSR D ajoute le label L3 aux paquets envoyés vers RC RC : EST : L1 RC : Nord : L3 (Choisi) Cours RSX103 – Chapitre 07 - MPLS Nord : L2 POP, Nord-Est Table des FEC Mapping Reçus RC : Nord : L3 (inutilisé) Page 56 Transfert classique par destination(1.4) Flux de p paquets q à destination de RC depuis p une source connectée à LSR D Table de routage de LB Table de routage de LA RC : Est RC : Est [via LSR B] Table des labels Table des labels S Sud Sud : L3 Est : L4 Ouest : L4 POP : Est Table des FEC Mapping Reçus RC PUSH(L4), PUSH(L4) Est Mapping Reçus : L3 POP O : Est LSR A swape le label L3 avec L4 RC : Sud : L2 (inutilisé) LSR B enlève le label L4 et envoie à RC RC RC : Est : L4 (choisi) Table de routage de LD Table de routage de LE RC : Nord-Est Table des labels RC : Nord [via LSR A] Table des labels Est : L1 POP, Nord-Est T bl des Table d FEC RC PUSH (L3) ; Nord Mapping Reçus Nord : L2 POP, Nord-Est LSR D ajoute le label L3 aux paquets envoyés vers RC D :RC RC : EST : L1 RC : Nord : L3 (Choisi) Cours RSX103 – Chapitre 07 - MPLS D :RC L3 D :RC L4 Table des FEC Mapping Reçus RC : Nord : L3 (inutilisé) Page 57 Transfert classique par destination(1.5) Panne d’une liaison Table de routage de LB Table de routage de LA RC : Est RC : Est [via LSR B] Table des labels Sud : L3 Est : L4 Table des FEC RC PUSH(L4), PUSH(L4) Est • LSR B remarque la panne sur le lien. Table des labels S Sud : L3 POP O : Est • Comme, il vient de recevoir un mapping de LSR E, • il peut immédiatement mettre à jour sa table de labels pour re-router le trafic vers LSR E p Ouest : L4 POP : Est Mapping Reçus RC : Sud : L2 (inutilisé) Mapping Reçus RC : Est : L4 (choisi) Table de routage de LD Table de routage de LE RC : Nord-Est Table des labels RC : Nord [via LSR A] Table des labels Est : L1 POP, Nord-Est T bl des Table d FEC RC PUSH (L3) ; Nord Mapping Reçus RC : EST : L1 RC : Nord : L3 (Choisi) Cours RSX103 – Chapitre 07 - MPLS Nord : L2 POP, Nord-Est LSR E va retire le label RC:Nord : L3 Table des FEC de son mappig reçu Mapping Reçus RC : Nord : L3 (inutilisé) Page 58 • Applications de MPLS • Transfert classique par destination • Simplification des backbones des ISP • Ingénierie de Trafic « Trafic engineering » • Restauration Rapide « Fast restoration » • VPN : Virtual Private Network Cours RSX103 – Chapitre 07 - MPLS Page 59 Déploiement de MPLS à l ’échelle d ’un réseau d ’ISP • Réseau d ’un un ISP « Fournisseur d ’accès accès Internet » - vision globale : • eBGP sur des routeurs frontières • Une table de routage BGP # 100.000 routes • iBGP full mesh entre les routeurs de frontière Pour router efficacement les paquets IP, au niveau de backbon, on a besoin d ’une table de routage complète Routeurs frontières p du mesh iBGP Pour cette raison,, elles doivent faire partie Cours RSX103 – Chapitre 07 - MPLS Page 60 Déploiement de MPLS à l ’échelle d ’un réseau d ’ISP(2) Routeurs de backbone Maintiennent la table de routage du réseau de l ’ISP Sait seulement atteindre des routeurs à l'intérieur l intérieur d'ISP d ISP Routeurs de bordure Maintiennent la table de routage BGP La table de routage indique pour chaque destination Le chemin d ’AS-PATH AS PATH vers la destination L’adresse IP du Next-Hop pour atteindre la destination Cours RSX103 – Chapitre 07 - MPLS Page 61 Déploiement de MPLS à l ’échelle d ’un réseau d ’ISP(3) Pour forwarder les paquets, tous les routeur (backbone et frontière) doivent connaître les tables de routage complètes Les routeurs de backbone font partie des routeurs qui tournent iBGP Cours RSX103 – Chapitre 07 - MPLS Page 62 Déploiement de MPLS à l ’échelle d ’un réseau d ’ISP(4) Pour forwarder les paquets, tous les routeur (backbone et frontière) doivent connaître les tables de routage complètes Les routeurs de backbone font partie des routeurs qui tournent iBGP 4 routeurs t de d bordure b d + 3 routeurs t backbone b kb = 7 routeurs t BGP Nombre de sessions BGP = N(N-1)/2 = 21 sessions Cours RSX103 – Chapitre 07 - MPLS Page 63 Déploiement de MPLS à l ’échelle d ’un réseau d ’ISP(5) Hiérarchie de labels MPLS : Premier niveau de label (Top Label) est utilisé pour atteindre le routeur de sortie : Egresse LSR router : Label rouge Deuxième niveau de label est utilisé pour atteindre le routeur BGP paire (E-Peer Router) : Label vert Les routeurs de bordure maintient une table de BGP complète Routeur Ingress : Table de BGP complète Insertion de deux labels Routeur Egress Packet Label Switched Routeurs de backbone M i ti Maintiennent t les l tables t bl de d routages t internes i t pour atteindre tt i d lles réseaux é d de l’ISP Connaissent seulement comment atteindre les routeurs interne de l’ISP Les LSP’s remplacent les routes iBGP entre les routeurs de frontières BGP Cours RSX103 – Chapitre 07 - MPLS Page 64 Déploiement de MPLS à l ’échelle d ’un réseau d ’ISP(3) Exemple Table de routage de R1 LSR A /32 : Est LSR B /32 : Est R2 /32 : Est + Table BGP complète Table de routage de LSR A R1 /32 LSR B /32 R2 /32 : Ouest : Est : Est Table de routage de LSR B R1 /32 : Ouest LSR A /32 : Ouest R2 /32 : Est Table de routage de R2 LSR A /32 : Ouest LSR B /32 : Ouest R1 /32 : Ouest + Table BGP Complète Première étape : LDP permet de distribuer les labels pour atteindre le routeur « Egress BGP » Cours RSX103 – Chapitre 07 - MPLS Page 65 Déploiement de MPLS à l ’échelle d ’un réseau d ’ISP(4) Exemple p Mappin du nouveau L1 FEC Routes distribuées par iBGP : R2/32 : PUSH L8 AS1 : PUSH (L1); PUSH (L8) AS2 : PUSH (L2); PUSH (L8) AS1, label L1, Next−Hop : R2 AS2, label L2, Next−Hop : R2 AS1 Table de routage de R1 LSR A /32 : Est LSR B /32 : Est R2 /32 : Est + Table BGP complète Le Mapping FEC AS2 L1 L8 Table de routage de LSR A R1 /32 LSR B /32 R2 /32 : Ouest : Est : Est L1 L9 Table de routage de LSR B R1 /32 : Ouest LSR A /32 : Ouest R2 /32 : Est Table des labels table des labels Ouest: L8 Est : L9 Ouest : L9 Est: : L3 R2 /32 : PUSH (L8) Deuxième étape : R2 distribue les routes BGP via iBGP Cours RSX103 – Chapitre 07 - MPLS AS2 L1 L3 Table de routage de R2 LSR A /32 : Ouest LSR B /32 : Ouest R1 /32 : Ouest + Table BGP Complète Table des labels Ouest : L3 Local: POP L1 Nord : POP L2 Sud : POP Page 66
© Copyright 2024 ExpyDoc