Vous êtes sur la page 1sur 56

Le protocole MPLS

F. Nolot ©2009 1
Le protocole MPLS

Introduction

F. Nolot ©2009 2
Introduction

Les fournisseurs d'accès veulent


Conserver leur infrastructure existante ET
Ajouter de nouveaux services non supportés par la technologie existante comme le
packet forwarding
Le protocole IP, protocole de packet forwarding, possède donc pour les
opérateurs des limites
La technologie MPLS lève ces limites
Apporte l'intelligence du routage avec les performances de la commutation
Supporte les VPN
Supporte la QoS
Gestion efficace de la bande passante

F. Nolot ©2009 3
Les topologies WAN

F. Nolot ©2009 4
Le Full Mesh Topology

Fourni un circuit virtuel entre tous les


customer edge (CE)
Nécessaire pour avoir un routage
optimal entre chaque CE
MAIS solution très couteuse

F. Nolot ©2009 5
Partial Mesh Topology

Également appelé hub-and-spoke


Solution moins couteuse que le full
mesh
Utilisation d'un point central qui
coordonne les communications
Ne fournit pas un routage optimal
Pour prévenir d'une interruption de
service, le point central peut être
« dupliquer » en étendant cette
topologie à une deuxième « hub-
and-spoke »

F. Nolot ©2009 6
MPLS Topology

MPLS va fournir des routes optimales


Chaque entité n'a besoin que d'une
connexion vers le MPLS Service
Provider
Elle fournit de la commutation niveau
2 et du routage niveau 3 en utilisant
des labels de longueur fixe (à la
frame relay)

F. Nolot ©2009 7
Avantages

Dans un réseau IP traditionnel, chaque routeur fait une recherche dans sa table
de routage
Indépendance totale entre les décisions prises par chaque routeur
MPLS réduit le nombre de recherche de routage
Élimine la nécessité d'avoir un protocole de routage particulier sur chaque routeur
MPLS affecte un label (ou nombre) à chaque paquet et utilise ce label pour le
transmettre
Ce label est positionné à l'entrée du réseau MPLS et est utilisé en interne
Est utilisé pour faire le chemin vers la destination
Le label peut aussi correspondre à la destination d'un VPN niveau 3 ou à un
paramètre non-IP comme un circuit niveau 2 ou une interface de sortie d'un
routeur
MPLS supporte la transmission de données non TCP/IP. L'utilisation des label se
fait de la même manière que le protocole de niveau 3 utilisé

F. Nolot ©2009 8
Le protocole MPLS

Fonctionnement

F. Nolot ©2009 9
Le fonctionnement de MPLS

Seuls les routeurs d'extrémité du réseau font une recherche dans leur table de
routage, les autres utilisent les labels uniquement
Ce qui accélère le transfert

F. Nolot ©2009 10
Les mécanismes de commutation

Il existe 3 mécanismes de commutation sur les plateformes Cisco


Process switching
Fast Switching
Cisco Express Forwarding (CEF)
Process switching est le mécanisme le plus simple et le plus lent
Une recherche est faite dans la table de routage et la construction d'un nouveau
paquet de niveau 2 est effectuée pour chaque paquet
Fast-switching : un cache est utilisé pour accélérer la communication
L'en-tête de niveau 2 est intégralement conservée en cache. Quand il n'existe pas
d'informations vers la destination recherchée en cache, une entrée dans ce cache est
alors créée. Ainsi, cela accélèrera le processus pour les prochains paquets
La technique la plus récente : Cisco Express Forwarding
Utilisation d'une « Forwarding Information Base » (FIB)
Équivalent à une table de routage mais avec le next-hop de stocké pour chaque
destination

F. Nolot ©2009 11
Routage IP en fast-switching

F. Nolot ©2009 12
CEF Switching

F. Nolot ©2009 13
MPLS : les bases

Sur un réseau IP connecté à un réseau MPLS


Les routeurs dans le domaine MPLS sont appelés Core Router et Label Switching
Routers (LSR)
Les routeurs qui inter-connectent les 2 réseaux sont appelés Edge Router et Edge-LSR

F. Nolot ©2009 14
MPLS : les bases

Quand un packet IP arrive sur un Edge LSR, celui-ci le transforme en paquet


MPLS. Et inversement pour les paquets MPLS vers IP
Dans l'exemple, pour un paquet de A vers B : ajout d'un Label entre l'en-tête de
Couche 2 et de Couche 3

F. Nolot ©2009 15
Caractéristiques

Fonctionne quelque soit la couche 1 et l'encapsulation de couche 2


Utilisation d'un label de 32 bits inséré entre les en-têtes des couches 2 et 3
Dans le cas d'utilisation d'ATM, comme chaque cellule ATM est de taille fixe (53
octets), il est impossible d'ajouter des label MPLS
Les labels ATM sont alors utilisés comme label MPLS, c'est le MPLS over ATM
Ce label ne contient aucune information correspondant au type de protocole de
couche 3 transporté
La détermination du protocole de couche 3 va être déterminée en fonction de la valeur
du label
Il est possible d'avoir plusieurs labels par exemple dans les cas suivants :
MPLS VPN : un deuxième label peut être utilisé pour identifier le concentrateur VPN à
utiliser
MPLS Traffic Engineering (MPLS TE) : pour établir, dans le cas de l'utilisation de RSVP
(Ressource Reservation Protocol), un tunnel à utiliser
3 labels ou plus peuvent être utilisés dans le cas d'un couplage entre MPLS TE et MPLS
VPN

F. Nolot ©2009 16
Format des Label MPLS

F. Nolot ©2009 17
La Label Stack MPLS

L'identification du protocole de couche 3 transportée se détermine en fonction


de la valeur du label
Unlabeled IP Unicast : PID = 0x0800, payload classique de packet IP unicast
Labeled IP Unicast : PID =0x8847, payload avec au moins un label qui précède l'en-tête
IP
Labeled IP multicast : PID = 0x8848, payload multicast IP avec au moins un label qui
précède l'en-tête IP

F. Nolot ©2009 18
Exemple de fonctionnement

F. Nolot ©2009 19
Architecture MPLS

On distingue 2 composants majeurs dans le routage MPLS


Control plane : contrôle des informations et des labels échangés entre les
périphériques adjacents
Data plane : connu également sous le nom des forwarding plane, contrôle la
transmission des informations en se basant soit sur les adresses de destination ou sur
les labels
Le Control Plane est dépendent de l'algorithme de routage : OSPF, EIGRP, IS-IS,
RIP ou BGP
Il nécessite également un protocole d'échange de labels comme LDP (Label
Distribution Protocol, BGP (utilisé par MPLS VPN) ou RSVP (utilisé par MPLS TE)
Le Data Plane est indépendant des algorithmes de routages et d'échanges de
label
Utilisation d'une base appelée Label Forwarding Information Base (LFIB) pour forwarder
les paquets avec les bons labels
Cette base est remplie par les protocoles d'échange de label

F. Nolot ©2009 20
Les composants du Control Plane

Exemple
Réception du label 17 pour les paquets à destination du 10.0.0.0/8
Génération d'un label 24 pour ces paquets et expédition de l'information aux autres
routeurs
Insertion de l'information dans la LFIB

F. Nolot ©2009 21
Les LSR ?

Label Switch Router fonctionne différemment en fonction de leur position

F. Nolot ©2009 22
LSR, P router et PE router ?

LSR et Edge LSR sont définis dans la RFC du MPLS


Cisco utilise le terme de LSR pour référencer TOUS les routeurs MPLS

Au lieu de parler de LSR (au sens RFC), Cisco parle de Provider router ou P
Router
Au lieu de parler de Edge LSR (au sens RFC), Cisco parle de Provider Edge Router
ou PE Router

F. Nolot ©2009 23
Fonctionnement d'un LSR

Un LSR a besoin d'un


protocole de routage
ET d'un protocole
d'échange de label
LDP permet de
remplir la LFIB table
dans le dat aplane

F. Nolot ©2009 24
Fonctionnement d'un Edge LSR

Il route de l'IP
Il route des paquets
avec label
Il forward de l'IP
vers du « label » et
inversement

F. Nolot ©2009 25
En cas de mauvaises configurations

Exemple 1 : le Edge LSR supprime un paquet MPLS reçu car n'a pas la
connaissance de ce label dans sa table LFIB, même si l'adresse IP de destination
est dans sa table de forwarding IP (également appelée FIB)
Exemple 2 : un paquet IP reçu est supprimé car l'adresse IP destination n'est pas
dans sa FIB alors qu'il existe un chemin et un label dans sa LFIB pour cette
destination

F. Nolot ©2009 26
Le protocole MPLS

Utilisation des labels

F. Nolot ©2009 27
Fonctionnement

Un routeur effectue 4 étapes pour attribuer et distribuer les labels


1. Echange d'informations en utilisant l'IGP comme OSPF, IS-IS ou EIGRP
2. Les labels locaux sont générés. Un unique label est affecté à chaque destination IP
contenu dans la table de routage et stocké dans la table appelé Label Information Base
(LIB)
3. Les labels locaux sont diffusés aux routeurs voisins pour être utilisés comme next-hop
label. (Stockage dans les tables FIB et LFIB)
4. Chaque LSR construit ses propres structures FIB, LFIB et LIB
La FIB est utilisé pour transmettre les paquets IP ne portant pas encore de label
Création des labels au fur et à mesure du passage des paquets

F. Nolot ©2009 28
LIB, LFIB et FIB ?

Table LIB (dans le control plane) est utilisée par le LDP (Label Distribution
Protocol). Dans cette base, nous avons la correspondance IP est Label
Table LFIB (dans le date plane) permet de faire le forward des paquets avec label
Table FIB (dans le control plane) permet de forwarder les paquets IP sans label.
Rappel:
Control plane : apprentissage et échange des prefix IP et label
Data plane : forward des paquets MPLS

F. Nolot ©2009 29
Allocation des labels

F. Nolot ©2009 30
Allocation des labels

F. Nolot ©2009 31
Stockage des labels

F. Nolot ©2009 32
Distribution des labels (LDP)

F. Nolot ©2009 33
Distribution des labels

F. Nolot ©2009 34
Un routeur n'a pas de label pour une destination ?

F. Nolot ©2009 35
Distribution des labels

Création des labels est


asynchrone donc
émission vers tous les
voisins dès création d'un
nouveau label pour un
réseau
Router D est
directement connecté
au réseau X donc il
prévient ses voisins en
envoyant un label null
pour le réseau X.
Les paquets pour X
expédié par C seront
donc sans label, c'est
l'action pop :
suppression du top-
label dans la trame.

F. Nolot ©2009 36
A la réception d'un label advertisement

F. Nolot ©2009 37
Remplir la LFIB

F. Nolot ©2009 38
Propagation des paquets

F. Nolot ©2009 39
Penultimate Hop Popping (PHP) !!!

C'est l'opération qui consiste à retirer le label sur le Edge LSR

F. Nolot ©2009 40
Sans le PHP

Sans le Penultimate Hop Popping, double lecture (LFIB et FIB) sur le Edge LSR !!

F. Nolot ©2009 41
With PHP

F. Nolot ©2009 42
MPLS

Configuration

F. Nolot ©2009 43
Configuration

3 étapes
Activation de CEF (Cisco Express Forwarding)
Activation de MPLS
Optionnel : configuration de la MTU
L'ajout de Label entre l'en-tête de niveau 2 et l'en-tête IP va augmenter la taille
de datagramme. Risque donc de dépasser la MTU standard configuré (1500
octets) sur les interfaces
Donc vérifier à avoir une MTU suffisante sur les interfaces MPLS

F. Nolot ©2009 44
Configuration de CEF

Enable CEF switching to create the FIB table


Router(config)#ip cef
Enable CEF switching on all interface
Router(config)#ip route-cache cef
Généralement inutile
Visualisation de la FIB table
sh ip cef

F. Nolot ©2009 45
show ip cef

F. Nolot ©2009 46
Configuration MPLS on a Frame mode Interface

Activation mpls sur l'interface et les échanges de label avec les voisins mpls
Router(config-if)#mpls ip

Le protocole d'échange de label peut être


TDP (propriétaire Cisco) Tag Distribution Protocol
Utilise un protocole orienté connexion de couche transport (TCP)
LDP (le standard)
Protocole multi-marque
Le choix du protocole sur une interface se fait par la commande
mpls label-protocol [tdp | ldp | both]
both active les 2 protocoles
Suivant les versions d'IOS, à la place de mpls lpd, vous pouvez voir tag-
switching

F. Nolot ©2009 47
Refuser TDP ou LDP

TDP fonctionne en TCP port 711 et LDP en TCP port 646

F. Nolot ©2009 48
Changer la MTU

MPLS ajoute un label dans le datagramme entre l'en-tête couche 2 et couche 3


Avec un label, il faut donc une MTU de 1504 octets
En MPLS VPN, 2 labels sont ajoutés dont une MTU de 1508 octets
Et en MPLS VPN avec Traffic Engineering, il y a 3 labels donc une MTU de 1512 octets
Sur les interfaces du routeur MPLS
mpls mtu … ou mpls override mtu

F. Nolot ©2009 49
Configuration sur le switch

F. Nolot ©2009 50
Le protocole MPLS

Architecture MPLS VPN

F. Nolot ©2009 51
Vocabulaire

F. Nolot ©2009 52
Overlay VPN

Overlay VPN : le Service Provider (SP) fournit une connexion virtuelle point à
point
Layer 1 overlay VPN : VPN historique car la connexion est assurée par le SP sur
la couche 1 en fonction de la technologie de transmission utilisée
Layer 2 overlay VPN : Les technologies comme X25, Frame Relay ou ATM sont
utilisées pour mettre en place ce type de VPN
Des circuits virtuels sont mis en place par le SP entre les sites des utilisateurs
Layer 3 overlay VPN : le SP est transparent pour les utilisateurs qui sont reliés
par des liaisons émulés de type point-to-point. Le SP n'assure que le transport
des données.
La mise en place d'un tunnel peut permettre d'utiliser des adresses privées entre les
utilisateurs, sans avoir besoin du NAT
Le tunnel est mise en place avec les protocoles GRE ou IPSEC
Le routage entre les sites n'est pas assuré par le SP

F. Nolot ©2009 53
Exemple de Layer 2 overlay VPN sur Frame Relay

F. Nolot ©2009 54
Peer-to-peer VPN

Inconvénient majeur du Layer 2 overlay VPN est de mettre en place des VC entre
les sites
Dans un P2P VPN, le SP et l'utilisateur utilisent le même protocole réseau et le SP
transporte toutes les routes des utilisateurs
Le Provider Edge (PE) échange les informations de routage avec le Customer
Edge router (CE)
Le PE et le CE établissent une adjacence de routage niveau 3 entre-eux
Plus besoin de mettre en place des connexions P2P ou des VC dans un fully
meshed pour obtenir un routage optimal
Dans ce type de configuration, le SP participe au routage des utilisateurs

F. Nolot ©2009 55
Exemple de routage Peer-to-peer

F. Nolot ©2009 56