- Multiprotocol Label Switching
-
Pile de protocoles 7. Application 6. Présentation 5. Session 4. Transport 3. Réseau 2. Liaison 1. Physique Modèle Internet
Modèle OSIDans les réseaux informatiques et les télécommunications, MultiProtocol Label Switching (MPLS) est un mécanisme de transport de données basé sur la commutation d'étiquettes ou "labels". La notion d'étiquette provient du fait que les labels sont insérés à l'entrée du réseau MPLS et retirés à sa sortie.
A la base, cette insertion s'opère entre la couche de liaison de données et la couche réseau afin de transporter des protocoles comme IP. C'est pourquoi MPLS est qualifié de protocole de couche "2,5".
Ce protocole a ensuite évolué pour fournir un service unifié de transport de données pour les clients en utilisant une technique de commutation de paquets. MPLS peut être utilisé pour transporter pratiquement tout type de trafic, par exemple la voix ou des paquets IPv4, IPv6 et même des trames Ethernet ou ATM.
MPLS permet un déploiement à grande échelle pour acheminer différents types de trafic tout en respectant les contraintes de fonctionnement associées et sur une unique infrastructure.
Sommaire
Historique
L'idée de MPLS vient d'un groupe d'ingénieurs de Ipsilon Networks, mais la technologie n'était prévue pour fonctionner que sur ATM ce qui limita sa place sur le marché. Cisco Systems, Inc. proposa ensuite l'idée de ne pas limiter MPLS sur ATM et créa le "Tag Switching", qui sera ensuite renommé en "Label Switching" pour standardisation par l'IETF en tant que MPLS.
Introduction
Deux groupes de travail ont été désignés par l'IETF pour combler les lacunes d'IP. Un groupe de sécurité travaillant sur l'IPSec et l'autre sur le routage travaillant sur MPLS. Comme son acronyme l'indique (MPLS) ses caractéristiques sont :
- multiprotocol (multi-protocoles) : il est capable de supporter les différents protocoles de niveau inférieur, au sens OSI (ATM, Frame relay ...)
- label switching (commutation d'étiquettes) : il se base sur une étiquette (en anglais : label) ou identifiant pour la commutation des paquets. Cette étiquette est attribuée aux paquets par l'équipement PE (Provider Edge) lors de leur entrée dans l'infrastructure MPLS.
Fonctionnement
MPLS fonctionne par commutation d'étiquettes. Des chemins entre PE (Provider Edge) sont établis de façon manuelle (action d'un administrateur dans le plan d'administration) ou automatique (via un protocole de signalisation comme LDP - Label Distribution Protocol - dans le plan de contrôle).
Un chemin MPLS étant toujours unidirectionnel, on fait la différence en MPLS entre les routeurs d'entrée (PE ou iLSR - ingress Label Switch Router -), de transit (P-router pour Provider router), et de sortie (PE ou eLSR - egress Label Switch Router -).
Le routeur d'entrée a pour rôle d'encapsuler le trafic reçu sur ses interfaces « clients ». Il applique (au moins) une étiquette au paquet reçu et l'envoie vers une de ses interfaces sortantes. Pour créer l'étiquette, le routeur utilise les FEC (Forwarding Equivalence Class), qui sont des tables de correspondances dont les clefs sont un élément du paquet (adresse MAC, adresse IP, Class of Service, port TCP/UDP, etc.).
Le paquet atteint ensuite des commutateurs de transit (P-router). Ceux-ci possèdent une table de commutation comportant quatre entrées :
Deux clefs :
- interface d'entrée du paquet
- étiquette MPLS en entrée
Deux valeurs :
- étiquette MPLS de sortie (ou retrait du label)
- interface de sortie du paquet
L'opération de commutation est donc extrêmement simple, puisqu'il suffit d'analyser l'étiquette MPLS qui se trouve directement après l'en-tête de la trame de niveau 2 (Ethernet), ou dans l'équivalent de la cellule/trame de niveau 2 (VPI/VCI de l'ATM, DLCI du Frame Relay, etc.). Il n'est donc pas nécessaire d'extraire le paquet IP et de parcourir l'ensemble de la table de routage. Toutefois, si cet argument était à l'origine de la création de MPLS, il a perdu beaucoup de poids, car l'augmentation de la puissance des routeurs et l'avènement de nouvelles puces dédiées permettent largement de parcourir la table de routage IP à chaque nouveau paquet. Ce sont donc les autres possibilités attribuées à MPLS qui en font une technique de plus en plus utilisée.
Si la configuration manuelle est toujours possible, elle s'avère très fastidieuse pour l'administrateur, c'est pourquoi la plupart du temps un protocole de signalisation est utilisé pour établir la connexion, c'est-à-dire les chemins MPLS (LSP, Label Switched Path). LDP, norme IETF, est le principal utilisé, mais d'autres protocoles pré-existants ont été étendus (cas de OSPF dit OSPF-TE) ou modifiés (cas de RSVP). Il ne faut en effet pas confondre le RSVP initial, de bout en bout, et le RSVP-TE modifié pour les environnements MPLS, entre PE donc.
Contrairement à IP, MPLS n'est pas un protocole de bout en bout. Il définit seulement une façon d'encapsuler des protocoles de couche 3 (IPv4 comme IPv6), de couche 2 (Ethernet, PPP, ATM, FR entre autres), et même de couche 1 (PDH, SDH). Il ne faut pas confondre ces protocoles encapsulés, donc transportés par MPLS, avec les protocoles inférieurs (dits de niveau 2) qui permettent de transporter MPLS. Cet ensemble peut paraître confus puisqu'un même protocole peut en même temps être transporté par et transporter MPLS : ainsi des cellules ATM arrivant sur des PE pourront être encapsulées par des PE MPLS reliés à des P-routeurs en ATM !
Déploiement
MPLS est actuellement utilisé dans de grands réseaux et est standardisé par l'IETF dans la RFC 3031.
En pratique, MPLS est principalement utilisé pour transporter des datagrammes IP et du trafic Ethernet.
On oppose souvent MPLS qui permet de garantir un niveau de qualité de service et le VPN via Internet qui assure la confidentialité par un mécanisme de chiffrement. MPLS est une technique de commutation, le RPV/VPN sur Internet une technique de tunnel IP. La qualité de service n'est pas propre à MPLS mais au fait qu'un fournisseur de services (un opérateur) s'engagera sur cette qualité de service. La confusion vient du fait que les opérateurs qui fournissent des services aux entreprises utilisent des infrastructures dédiées utilisant MPLS aujourd'hui (X.25, FR, ATM dans le passé), alors que sur Internet il n'y a pas de fournisseur qui puisse prendre des engagements puisqu'Internet constitue une sorte de réseau public dont aucun acteur n'a l'entière responsabilité. On notera cependant que certains opérateurs prennent des engagements de qualité de service sur la portion d'Internet qu'ils gèrent et appellent alors leur « Internet privé ».
Techniques complémentaires (applications réseaux opérateurs & grandes entreprises)
La majorité des grands opérateurs utilise aujourd’hui MPLS dans la partie centrale de leur réseau pour assurer l’ingénierie de trafic et la qualité de service. En revanche, l’extension de MPLS à l’accès et dans la partie métropolitaine du réseau est moins avancée. Cette solution, si elle est techniquement viable, introduit dans de nombreux cas un ensemble de difficultés liées à la gestion et à l'évolutivité du réseau, qui en fin de compte augmentent le coût et la complexité d'exploitation ainsi que la fiabilité. Plusieurs solutions alternatives ont été proposées parmi lesquelles:
- "Transport MPLS" (T-MPLS): Le principe est de définir un sous-ensemble de MPLS en masquant certaines de ses complexités, et donc ses problèmes de coûts et de scalabilité.
- "Provider VLAN Transport" (PVT), également appelé "brassage de VLAN", "VLAN cross connect" ou "VLAN-xc"
- "Provider Backbone Bridging Traffic Engineering" (PBB-TE]), également connu sous le nom de "Provider Backbone Transport" (PBT).
Pour éviter des redites, voir les articles détaillés correspondants.
Concurrents
Dans le cadre des VPNs, L2TPv3 et Provider Backbone Bridges apparaissent en tant que technologies concurrentes à MPLS, particulièrement dans les réseaux IP.
On peut aussi noter l'existence de la technologie IEEE 1355 qui est également de la commutation d'étiquettes mais de façon matérielle.
Liens externes
- (en) MPLS sur ietf.org
- (en) MPLS pour les VPNs
- (en) MPLS-LINUX
- (fr) MPLS en détail
- (fr) MPLS dans le contexte Cisco
- (en) OpenSimMPLS: Un simulateur de réseau MPLS libre et ouverte pour l'enseignement, de recherche et de conception.
Catégories :- Protocole de télécommunication
- Architecture réseau
- Protocole de routage
Wikimedia Foundation. 2010.