Les réseaux IP/MPLS

Principe du MPLS

La commutation de labels

Les réseaux IP/MPLS se base sur l'établissement de chemin entre deux machines (Les Label Switched Path ou LSP). La commutation des paquets circulant sur ce chemin est faites en analysant un label contenu dans l'entête MPLS qui est ajouté entre la couche 2 (souvent Ethernet) et la couche IP.
Voici un schéma résumant le principe de la commutation de label tout au long d'un chemin ou Label Switched Path :

A l’entrée du réseau MPLS, les paquets IP se voient insérés un label par le "Ingress Label Edge Routeur" ou "Ingress LER". Les LER sont les routeurs MPLS se situant à la périphérie du réseau de l'opérateur. Les paquets labelisés sont ensuite commutés vers le cœur du réseau selon son numéro de label. Les routeurs MPLS du cœur de réseau, les Label Switching Router, commute ensuite les labels jusqu’au LER de sortie (Egress LER) Le chemin qui a été pris par le paquet, et préalablement établi, au travers du réseau s’appelle un Label Switched Path (LSP).

Le schéma nous montre le détail de la pile de protocole mis en oeuvre durant cette transmission, on remarque la présence du label MPLS entre la couche Ethernet et la couche IP. Nous allons maintenant analyser le format de l'entête MPLS :


L’entête MPLS a une taille de 4 octets et est composé par les champs suivants :

Nous allons maintenant voir, comment se fait la décision d’attribuer un label particulier à un paquet IP. Ensuite nous allons voir comment sont échanger les Labels entre les LSR, car des echanges sont indispensable pour construire les LSP et les tables de commutations.

Forwarding Equivalent Class

Les paquets IP entrant sur le réseau MPLS sont associés à une FEC : Forwarding Equivalent Class.

Une FEC va définir comment sera acheminé à travers tous le réseau MPLS. En IP, la classification d’un paquet dans une FEC est fait sur chaque routeur, à partir de l’IP destination. En MPLS, le choix d’une FEC peut être fait selon plusieurs paramètres (adresse IP source, destination et paramètre de QoS (débit, delai)).
Les paramètres intervenant dans la classification d’un paquet dans une FEC dépend du protocole de distribution de label utilisé : LDP ou RSVP-TE. En effet seul RSVP-TE, que nous détaillerons plus tard, permet de classifier un paquet dans une FEC selon des paramètres de QoS.

Pour classifier un paquet dans une FEC, MPLS s’appuie sur le protocole de routage mis en oeuvre sur le réseau IP. Par exemple, le protocole LDP associe une FEC par prefixe réseau présent dans la table de routage du routeur. De plus, une FEC peut se voir attribuer plusieurs "Class of service", afin de permettre différentes « discard politics » ou « scheduling politics » (champ CoS de l’entête MPLS).
Ainsi, chaque FEC se voit associer un label de sortie. Le routeur saura donc quel label il doit attribuer aux paquets IP correspondant à telle ou telle FEC.

Nous allons maintenant voir comment sont distribuer ces associations FEC/labels entre tous les routeurs du réseau. En effet, ces échanges sont indispensable à l'établissement de LSP, car chaque noeud doit savoir quel label il doit attribuer a une FEC avant de l'envoyer à son voisin.

Distribution des labels

Dans les réseaux IP/MPLS il existe deux modes de distribution des labels.

Le premier mode de distribution est le "Unsolicited DownStream ". Voici un schéma synthétisant son fonctionnement :


Le principe est simple, dès qu'un routeur à associé un label à une FEC, il informe tous ses voisins de cette association. Et cela de manière automatique. Ceci à pour but d'augmenter le trafic dû à la "signalisation" sur le réseau.

Le deuxième mode de distribution, qui est le plus utilisé dans les réseaux IP/MPLS, se nomme "DownStream On Demand".


Avec ce mode de distribution, le UpStream LSR demande au DownStream LSR de lui fournir le numéro de label qu'il a associé à une FEC particulière. Le UpStream LSR est le routeur qui envoit le trafic vers le DownStream LSR, ainsi lors du passage d'un paquet qui n'est pas encore associé à une FEC, le UpStream LSR va devoir demander l'association d'un label pour cette FEC au LSR suivant (le DownStream LSR sur ce schéma).
C'est ce dernier mode de distribution qui est utilisé par le protocole RSVP-TE que nous verrons par la suite.

Rétention des labels

Nous avons vu dans la partie précédente que les routeurs recevaient de nombreuses informations à propos des associations FEC/label qui ont été faites par leur voisins.
On peut donc s'interroger sur la politique qui est mise en place par rapport à la conservation de ces associations FEC/label.
L'architecture MPLS prévoit deux politiques de rétention des labels :

Label Switching Path

La création d'un Label Switched Path à travers le réseau est différentes selon le mode de distribution de labels utilisé dans le réseau.

En mode "Unsolicited DownStream", le Egress LER qui est le dernier routeur MPLS avant la destination annonce à ses voisins une association de label à une FEC. Chaque noeud, entre le Egress LER et le Ingress LER vont propager à leur voisins l'association qu'ils ont faites pour la même FEC. Une fois que cette annonce parvient au Ingress LER, le LSP est établi !


En mode "DownStream On Demand", lorsque le Ingress LER voit arrivé pour la première fois un paquet qui n'est pas associé à une FEC, il va faire une demande de Label pour cette FEC au LSR faisant office de "next-hop" pour ce paquet IP. Chaque noeud, de proche en proche, va propager cette demande jusqu'au Egress LER. Ce dernier va alors associer un label à la FEC et propager cette association, en sens inverse, du Egress LER au Ingress LER. Une fois que l'association FEC/label est parvenu au Ingress LER, le LSP est établi.

LSP Tunneling

Précédemment, je vous ai parler de la possibilité d'empiler les entêtes MPLS, et donc les labels MPLS. Ce principe nommé "Label Stacking" est utilisé pour créer des Tunnel LSP. Le LSP Tunneling est une composante importante de la technologie VPLS que je vous présenterai dans une autre section de ce site Web. Enfin, le LSP Tunneling est souvent mis en oeuvre pour aggréger plusieurs LSPs dans un seul, comme dans le schéma ci-dessous.



Le schéma ci-dessus montre un réseau IP/MPLS contenant 3 Ingress LER, 3 LSR et 3 Egress LER. Trois LSP sont mis en place : On remarque que ces 3 LSP traverse les mêmes LSR dans le coeur du réseau. Pour aggréger ces 3 LSP dans un seul dans le backbone, un Tunnel LSP est présent.
Le Tunnel LSP est marqué en rouge, et les différents labels associés à ce Tunnel LSP sont marqué en rouge. Ainsi, dans le coeur du réseau, le LSR du milieu ne connait qu'un seul LSP : le LSP rouge, qui encapsule tous les autres. Dans un vrai réseau, on pourrait imaginer que plusieurs LSR du backbone soit traversé par le Tunnel LSP.

En résumé, on remarque que cette technique permet de diminuer le nombre de LSP connu par les LSR !