Vous êtes sur la page 1sur 27

MPLS

Multi Protocol Label Switching

Emilie CAMISARD – GIP RENATER


Plan de la présentation
• Origines du MPLS
• Principes
• Terminologie
• La commutation MPLS
• Distribution de labels
• Exemple de service: VPN MPLS de niveau 3

06/11/2006 2
MPLS
• Multi Protocol Label Switching

Transparence vis- Ajout d’un label


à-vis du protocole aux données pour
employé (IPv4, pouvoir les
IPv6, Ethernet...) commuter
Cœur du réseau
simplifié

06/11/2006 3
Pourquoi le MPLS ?
• Milieu des années 90: apparition de solutions
propriétaires multicouches, afin de simplifier le
modèle IP over ATM et de réduire les
congestions au niveau des routeurs.
• Puis, standardisation de ces solutions par l'IETF:
naissance du MPLS.
• Les goulots d'étranglement disparaissent ensuite
avec l'arrivée des routeurs basés sur du
hardware: focalisation sur les services offerts
par MPLS: Traffic Engineering, VPN de niveaux 2
et 3…
06/11/2006 4
Terminologie MPLS

• LSR: Label Switching Router


• ELSR: Edge Label Switching Router
• LSP: Label Switched Path
• FEC: Forwarding Equivalence Class
LSR
LSP
ELSR ELSR

ELSR
06/11/2006 5
Principes
• Next hops des routeurs déterminés par un
protocole de routage
• Classification en FEC à l’entrée du réseau
• Les nœuds du réseau MPLS associent un label à
chaque FEC
• Ajout d’un label à chaque paquet entrant
• Commutation au cœur du réseau grâce au label
• Une FEC peut être basée sur l’@ destination
et/ou d’autres critères (QoS, TE…)
06/11/2006 6
Architecture
• Forwarding: basé sur l’analyse du label, qui détermine la
route vers une destination.
• Contrôle: création et maintien de la base des labels.
• Routes apprises par un IGP
• Lien fait entre l’IGP et le label à apposer
• Distribution des labels avec un protocole spécifique

ELSR 1 LSR ELSR 2


Topologie IGP Topologie IGP Topologie
labels réseau réseau labels réseau labels
LDP LDP
Contrôle Contrôle Contrôle

Forwarding Forwarding Forwarding


Data Data
Switching Switching
06/11/2006 7
Encaspulation MPLS
• ATM ATM header Label Données

VPI/VCI Données

• PPP PPP SHIM En-tête couche 3

• Ethernet MAC SHIM Datagram IP

préambule

SD @dest @source TypeValue Label CoS S TTL


7 1 6 octets 6 octets 0x8847 20 bits 3 bits 1 bit 8 bits

06/11/2006 8
Attribution de labels

Label If Label If
@ dest @ dest If In
out Out in out
45.2.0.0 #4 2 45.2.0.0 2 # pop 1

45.1.0.0 45.2.0.0

op
M

#p
ap

ng
pi

0
Re

ng

.
pi

.0
ap
qu

#4

.2
Mapping #15

45
es
t

t
45

es
qu
.2
.0

Re
0 .

Request 45.2.0.0
If label If label If label If label
@ dest @ dest
In in Out out In in Out out
2 # 4 45.2.0.0 1 # 15 2 # 15 45.2.0.0 1 # pop

06/11/2006 9
Commutation de labels
Label If Label If
@ dest @ dest If In
out Out in out
45.2.0.0 #4 2 45.2.0.0 2 # pop 1

45.1.0.0 45.2.0.0

Dest 45.2.0.0 Dest 45.2.0.0

0
0.
2.
#

5.
4

4
D

st
es

De
t4
5.

p
2.

po
0.
0

#
# 15 Dest 45.2.0.0
If label If label If label If label
In in Out out In in Out out
2 #4 1 # 15 2 # 15 3 # pop

06/11/2006 10
Distribution des labels
• Permet de s’assurer que le mapping FEC-
label est bien cohérent dans tous les
routeurs.
• 2 protocoles de distribution, compatibles
IPv4 et IPv6:
• CR-LDP: Constraint-based Routed Label
Distribution Protocol
• RSVP-TE: ReSerVation Protocol – Traffic
Engineering
06/11/2006 11
Méthodes de distribution

LSR1 LSR2

Downstream unsolicited Downstream on demand


• LSR1 découvre que LSR2 est son
• LSR1 et LSR2 sont adjacents
nexthop pour une certaine FEC
• LSR2 découvre un next hop pour
• LSR1 demande à LSR2 d’associer
une FEC particulière
un label à cette FEC
• LSR2 génère un label pour la FEC
• Si LSR2 reconnaît la FEC et
et communique l’association à
possède un next hop, il crée une
LSR1
association et répond à LSR1
• LSR1 insère l’équivalence dans
ses tables de commutation
• Si LSR2 est son next hop pour le
FEC, LSR1 peut utiliser le label en
sachant qu’il sera reconnu
06/11/2006 12
Contrôles de distribution
Independent LSP control Ordered LSP control
• La décision de générer et de • dans un LSR, une association FEC-
communiquer des labels aux LSR label n’est communiquée que si:
amont est prise indépendamment •Le routeur est le LSR egress de la
par chaque routeur FEC
• Labels échangés dans un court •Un LSR amont a envoyé un
délai mapping FEC-label

•Ne dépend pas de la disponibilité •Un LSP se forme de l’egress vers


l’ingress
du routeur edge
•Délai + important pour obtenir le LSP
•Requiert une méthode
indépendant de détection des •Utilisé pour du routage explicite et du
boucles multicast

06/11/2006 13
Conservation des labels
Liberal label retention Conservative label
• Un LSR conserve tous les labels retention
envoyés par les LSR avals, même si
certains ne sont pas des Next Hops
• Un LSR ne conserve que les labels
pour un Next Hop valide
• Si le Next Hop d’une FEC change, le
•Si le Next Hop change, le LSR doit lui
LSR peut alors immédiatement utiliser
demander un label
le lien adéquat grâce au label conservé
•Adaptation + lente aux modifications
•Adaptation plus rapide aux
de routage
changements de routage
•Le LSR conserve moins de labels
•Requiert une mémoire + importante
pour conserver les labels

06/11/2006 14
RSVP-TE
• RSVP-TE permet de :
• Créer un LSP le long d’une route explicite
• Etablir un LSP en distribuant des labels
• Définir les besoins en bande passante des
liens qui forment un LSP

06/11/2006 15
RSVP-TE: établissement
d’un tunnel

Path message
(Session, label request, ERO, RRO, Session attribute)
RESV message
(Session, label, style, RRO)

Session: LSP transportant de l’IPv4 ou IPv6 ?


ERO: EXPLICIT_ROUTE (par quels LSR veut-on passer?)
RRO: ROUTE_RECORD (quels LSR ont été traversés?)
Style: quelle sorte de réservation? Avec QoS sur le lien? Etc.
Session attribute:LSP_TUNNEL_RA ou LSP tunnel
06/11/2006 16
RSVP-TE: Format des
messages
Path, Resv,
• En-tête commune: PathErr,
0 1 2 3 ResvErr…
+-------------+-------------+-------------+-------------+
| Vers | Flags| Msg Type | RSVP Checksum |
+-------------+-------------+-------------+-------------+
| Send_TTL | (Reserved) | RSVP Length |
+-------------+-------------+-------------+-------------+

• Format des objets:


0 1 2 3
+-------------+-------------+-------------+-------------+
| Length (bytes) | Class-Num | C-Type |
+-------------+-------------+-------------+-------------+
| |
// (Object contents) //
16: RSVP_LABEL | Si Class-Num = HELLO :
|
+-------------+-------------+-------------+-------------+
19: LABEL_REQUEST 1: Request
22: HELLO … 2: Acknowledgement
06/11/2006 17
VPN MPLS de niveau 3

06/11/2006 18
Terminologie

• CE: Customer Edge Router


• PE: Provider Edge router
• P: Provider router

P = LSR
Site client Site client
CE PE PE CE
= ELSR = ELSR
PE = ELSR
06/11/2006 19
VPN L3 et MPLS : les VRF

• Isolation du trafic entre sites clients


n’appartenant pas au même VPN
• Les PE gèrent plusieurs tables de
routage grâce au VRF (VPN Routing
and Forwarding)
• 1 VRF = table de routage + FIB +
CEF + nom spécifique (red, green…)
06/11/2006 20
VPN L3 et MPLS

• Chaque interface de PE est liée à un site


client et rattachée à une VRF particulière
• Pour construire les tables VRF, les PE
échangent des routes des VPN avec MP-
BGP (MultiProtocol BGP)
• Utilisation du label stacking: encapsulation
de 2 labels par le PE
• PE de destination
• Interface de sortie du PE relié au CE
06/11/2006 21
Principes
• Le PE reçoit et maintient l’information de routage sur les
VPN qui y sont connectés
• Cœur du réseau en MPLS
• Pas d’information sur les VPN au cœur du réseau
• Dans le PE, il y a:
• Une table de routage (ensemble des routes internes au cœur du
réseau, apprises par un IGP)
• Une ou plusieurs VRF (VPN Routing & Forwarding instance),
table associée à un ou plusieurs CE. Virtualisation du PE au
niveau 3 pour 1 VPN.
• Entre les PE, des communications MiBGP transportent les
informations de routage provenant des CE + les labels
identifiant la VRF et l’interface de sortie du cœur MPLS
• Empilement de 2 labels: VPN + LSP

06/11/2006 22
Commutation de labels

VPN A Site 1 VPN A Site 2


PE PE
@ destination
@ destination

VPN A @ destination
# 4 VPN A @ destination P P

# 15 VPN A @ destination

06/11/2006 23
Exemples de VRF

06/11/2006 24
Sujets à l’étude
• Traffic Engineering inter-AS
• Encapsulation de MPLS dans IP
• TE avec DiffServ, allocation de bande
passante
• Restauration de liens
• MIB pour TE
• 6PE
• MPLSv6
06/11/2006 25
Conclusion

• MPLS permet d'implémenter facilement des


services non supportés par le routage IP
traditionnel: Traffic Engineering, classes de
services, VPN…
• De nouvelles possibilités de routage sont
offertes: on ne se base pas exclusivement sur
une adresse IP de destination pour déterminer
une FEC.
• Les composants de contrôle sont séparés de
ceux du forwarding: il y a donc flexibilité dans
l'évolution des fonctionnalités de contrôle.
06/11/2006 26
Des questions ?
Merci de votre attention !

06/11/2006 27