You are on page 1of 35

MPLS : Introduction

• Avant :
– réseau en « mesh » totalement maillé
– Réseau partiellement maillé (hub and spoke)
Réseaux point à point
• Aujourd’hui :
– Réseau multi-points
– Réseau scalable

1
Topologies réseaux

•Topologie mesh : pour un routage optimal, nécessité d’un circuit virtuel entre
Deux sites dans le réseau  solution très chère et difficile à mettre en place
•Toplogie partiellement en mesh : Topologie hub-and-spoke moins chère,
mais routage non optimal
• Solution MPLS VPN : routage optimal entre les sites et ne nécessite q’une
seule connexion vers l’opérateur (SP).
2
MPLS (Multiprotocol Label Switching)
Normes IETF : RFC 3031
•MPLS est une norme proposée par l’IETF pour l’ensemble des architectures et
des protocoles hauts (IP, IPX, AppleTalk, etc.), Cependant, initialement son
implémentation la plus classique a concerné uniquement le protocole IP.
•Etendue aujourd’hui à de multiples protocoles
•Les nœuds de transfert spécifiques utilisés dans MPLS sont appelés LSR
(Label Switched Router).
•Les LSR se comportent comme des commutateurs pour les flots de
données utilisateur et comme des routeurs pour la signalisation.
•Pour acheminer les trames utilisateur, on utilise des références, ou
labels. A un label d’entrée correspond un label de sortie.
•La succession des labels définit la route suivie par l’ensemble des trames
ou paquets du flot IP
•Entre la couche 2 et 3 souvent appelé protocole 2.5
Multiprotocol (multi protocoles) :
•capable de supporter les différents protocoles niveau 2 (ATM, Frame
Relay, Ethernet,…), n’est pas lié à une couche 2 spécifique.
Label Switching (commutation d’étiquettes) :
•basée sur une étiquette (Label)
3
MPLS :
Dans les réseaux IP traditionnels, chaque routeur exécute l’algorithme de
routage IP classique et fait sa décision indépendante pour l’acheminement
du paquet.
MPLS est un mécanisme de commutation dans lequel les paquets sont
transmises en se basant sur des étiquettes ou références (Labels en anglais).
Les étiquettes (Labels) correspondent généralement à la destination
réseaux IP (équivalent au routage IP traditionnel).
Les Labels peuvent aussi correspondre à autres paramètres:

Destination VPN couche 3 (MPLS VPN)


interface de sortie dans le routeur d’extrémité (egress)
QoS,…

Les labels sont affectés à l’entrée du réseau MPLS et l’acheminement à


l’intérieur du réseau ne se fait qu’à base des labels.
Généralement dans les réseaux MPLS le routeur d’extrimité réalise le
routage IP, ce qui permet un acheminement rapide des paquets ou
trames à travers le réseau SP

4
MPLS & OSI

Appele Couche 3
IPv4 IPv6 IPX
Talk

MPLS

Frame Couche 2
ATM PPP Ethernet
Relay

5
Objectives MPLS
Rôle principal:

• Combiner les concepts de routage IP de niveau 3, et les


mécanismes de commutation de niveau 2
• apporte à IP le mode connecté et qui utilise les services
niveau 2
• Le principal avantage apporté par le protocole MPLS est la
possibilité de transporter les paquets IP sur plusieurs types de
réseaux commutés. Il est ainsi possible de passer d’un réseau
ATM à un réseau Ethernet ou à un réseau Frame Relay. En
d’autres termes, il peut s’agir de n’importe qu’il type de
trame, à partir du moment où un label peut y être incluse.

Objectif initial :
• D’accroitre la vitesse du traitement des datagrammes dans
l’ensemble des équipements intermédiaires
6
Basé sur un label
• Qu’est-ce que c’est ?
– C’est un entier qui est associé à un paquet lorsqu'il circule
dans un réseau MPLS et sur lequel ce dernier s'appuie
pour prendre des décisions de routage.

• Comment ça marche ?
– Un label (appelé aussi tag) est ajouté a tous les paquets
entrants dans le réseau MPLS
– L’acheminement des paquets est basé sur l’analyse du
label et non plus sur l’analyse de l’adresse IP de destination

• MPLS est une technique de commutation

7
Principes MPLS
• L'affectation des étiquettes (label) aux paquets
– dépend des groupes ou des classes de flux FEC (forwarding
equivalence classes)

• Les paquets d’une même classe FEC sont traités de la même


manière
– Le chemin établi par MPLS est emprunté par tous les paquets de ce
flux

• L'étiquette (label) est ajoutée :


– entre la couche 2 et l'en-tête de la couche 3 (dans un environnement
de trames ou paquets)
– ou dans le champ VPI/VCI (identificateur de chemin
virtuel/identificateur de canal virtuel dans les réseaux ATM)

8
Routage
• Pour qu’un chemin soit construit, c’est nécessaire :
– Les tables des commutateurs participant à l’établissement de ce
chemin soient remplies
– Chaque commutateur a une entrée correspondant aux labels du
paquet IP a commuter
• Le commutateur suivant a une entrée pour le label de sorti du commutateur
précèdent

• 2 méthodes pour construire un chemin


– 1ère méthode
• Routage explicite : Une entité spécialisée établit des chemins au sein du réseau
– 2ème méthode
• Donner a chaque routeur-commutateur la possibilité de choisir le routeur-
commutateur voisin à qui il devra passer le paquet
– LDP : Label Distributed Protocol
• Prive l’opérateur d’un niveau de management du réseau

9
Routage associé aux FECs

• FEC
– Est la représentation d 'un groupe de paquets qui ont en commun les
mêmes besoins quant à leur transport
– Sont basés sur les besoins en terme de service pour certains groupes
de paquets, ou même un certain préfixe d'adresses
• Contrairement aux transmissions IP classiques, un paquet est
assigné à une FEC une seule fois, lors de son entrée sur le
réseau
• Les paquets d’une FEC déjà existante sur un LSR :
– Reçoivent le même traitement au cours de leur acheminement
• Sont routés de la même façon en utilisant le "label" associé à la
FEC
– Aucun recalcule est nécessaire à chaque saut
10
Exemple du concept de base du MPLS

Seulement les routeurs “edge “ manipule le routage IP.


les routeurs à l’intérieur du backbonne commutent les paquets à base des
labels
11
Mécanisme de routage IP classique (ex :
Routeurs Cisco)
Trois mécanismes de routage sont supportés:
– L’application de l’algorithme de routage classique (processus de
routage)
« Routing table-driven switching—process switching:
• Full lookup is performed at every packet »

– commutation rapide à base du cache


• Les destinations récentes sont stockés au niveau du cache
« Cache-driven switching—fast switching:
• Most recent destinations are entered in the cache
• First packet is always process-switched »

– Routage à base de CEF (Cisco Express Forwarding)


« Topology-driven switching:
• CEF (prebuilt FIB table) »

12
Process Switching (routage IP classique)

13
Vue routage à base de la technologie CEF

14
Architecture « routeur » MPLS
– Plan de contrôle: (control plane)
• Echanges des informations de routage et des labels ‘entre les
routeurs adjacents’
• plusieurs mécanismes ou protocoles peuvent être utilisés à ce
niveau pour échanger les informations de routage , tel que OSPF,
EIGRP, IS-IS, RIP et BGP
• Echanges des labels avec des protocoles tel que LDP, BGP, et RSVP

– Plan de données: (data plane ou forwarding plane)


• Commute ou achemine les paquets à base des labels
• Simple machine d’acheminement
• LFIB (Label Forwarding Information Base) table utilisée pour
stocker les informations sur les labels qui vont servir pour
l’acheminement des paquets. Cette table est publiée par LDP, BGP
ou RSVP
15
Exemple de composantes du plan de contrôle

L’information est envoyé à partir du plan de contrôle vers le plan des


données

16
Label MPLS
Label : c’est un entier associé à un paquet lorsqu’il traverse un
nuage MPLS et sur lequel ce dernier s’appuie pour pendre des
décisions de routage.
– MPLS est transparente vis à vis du protocole de la
couche 3 et la couche 2.
– MPLS utilise 32-bit comme champ de label inséré
entre les en-têtes de la couche 2 et 3 (MPLS mode
trame).
– MPLS sur ATM utilise l’en-tête ATM comme label
(MPLS mode cellule).

17
Format du Label

•SHIM : introduit entre la couche 2 et la couche 3


•20 bits: contiennent le label
•3 bits: appelé Classe of Service (CoS) sert actuellement pour la QoS
•un bit S: pour indiquer s'il y a l’empilement de labels
•8 bits: TTL, même signification que pour IP
•Lorsque la valeur du TTL est nulle, le paquet MPLS est détruit
•Pas nécessaire d'extraire le paquet IP et de parcourir l'ensemble de la table
de routage
•Il suffit d'analyser l'étiquette MPLS après l'en-tête de la trame de
niveau2 (Eth) ou dans la cellule/trame de niveau2 (ATM, FR)
18
Label stack (pile de label)

L’ID du protocole (PID) au niveau de l’en-tête de la


couche 2 spécifie que le payload (charge utile)
commence avec un label (ou des labels) et suivi avec un
en-tête IP.
Le bit Bottom-of-stack indique si l’en-tête suivant est un
autre label ou une en-tête couche 3.
Le routeur qui reçoit le paquet utilise seulement le top
label.
19
MPLS mode trame

Le routeur d’entrée (Ingress edge router) reçoit le paquet et opère une consultation
de la table de routage Pour déterminer l’interface de sortie
Si l’interface de sortie est configurée pour MPLS et si le label de destination pour le
prochain saut (next –hop) existe il est affecté et inséré entre l’en-tête niveau 2 et 3

20
LSR (label switch Router)

LSR achemine ou commute les paquets étiquetés (swap label).


Edge LSR:
Labélise ou marque les paquets IP avec un label (impose label) et
les achemine dans le domaine MPLS
Retire les labels (pop label) et achemine les paquets IP en dehors
du domaine MPLS

21
Composantes et architecture LSR et
LSR edge

22
Allocation du label dans MPLS mode trame
– L’allocation et la distribution des Label dans le réseau
MPLS suit les étapes ci-dessous:
1. Construction de la table de routage par le protocole de
routage.
2. Chaque routeur LSR assigne et d’une manière indépendante
un label pour chaque destination dans la table de routage IP.
3. Les routeurs LSRs annoncent leur attribution des labels aux
autres routeurs LSRs.
4. Chaque routeur LSR construit ces structures de données LIB,
LFIB, et FIB en se basant sur les labels reçus.
– Rq: (affectation) Label allocation, (empilement ou
insertion) label imposing, (commutation) label swapping,
et (dépilement) label popping sont des opérations au
niveau du réseau de l’opérateur et non au niveau du
réseau de l’entreprise.

23
Table de routage IP

Les protocoles de routage IP sont utilisés pour construire


les tables de routage dans tous les routeurs LSR.
Les FIBs sont construites en se basant sur les tables de
routage IP, initialement sans information de labellisation.
Dans ce cas acheminement des paquets d’une manière
traditionnelle

24
Allocation des labels

Chaque routeur LSR alloue un label pour chaque


destination dans la table de routage.
Les Labels ont des significations locales.
L’allocation des labels est asynchrone.

25
Structures LIB et LFIB

Les structures LIB et LFIB sont initialisés dans le routeur LSR


qui alloue le label.
L’action Untagged doit retirer le label à partir de la trame et le
routeur doit envoyer un paquet IP pur.
26
Distribution des labels et notification

Les labels alloués ou affectés sont notifiés pour les routeurs


LSRs voisins en amont et en aval.

27
Réception des notifications des labels

Chaque routeur LSR stocke le label reçu dans sa structure


LIB.

28
Interim Packet Propagation

Les paquets IP acheminés sont étiquetés seulement sur le


segment du chemin dans lequel les labels sont déjà
affectés.
Further Label Allocation

Chaque routeur LSR doit éventuellement affecté un label pour


chaque destination.
30
Receiving Label Advertisement

Chaque LSR stocke les informations reçues dans sa table LIB.

31
Propagation des paquets via le réseau
MPLS

32
Technologie : PHP (Penultimate Hop
Popping)
– PHP optimise les performances MPLS (moins de
manipulation LFIB).
– « pop or implicit null » label utilise une valeur de
label réservée lors de la notification d’un voisin.

33
Sans PHP

34
Avec PHP

Le label est retiré du routeur avant le dernier saut dans un


domaine MPLS.
35