1. Introduction
Dans un domaine MPLS [MPLS_ARCH], lorsqu'un flux de données traverse un chemin commun, un chemin à commutation d'étiquettes (Label Switched Path, LSP) peut être établi à l'aide de protocoles de signalisation MPLS. Au niveau du routeur de commutation d'étiquettes d'entrée (ingress Label Switch Router, LSR), chaque paquet se voit attribuer une étiquette et est transmis en aval. À chaque LSR le long du LSP, l'étiquette est utilisée pour transférer le paquet vers le saut suivant.
Dans un domaine de services différenciés (Differentiated Service, Diff-Serv) [DIFF_ARCH], tous les paquets IP traversant un lien et nécessitant le même comportement Diff-Serv sont dits constituer un agrégat de comportement (Behavior Aggregate, BA). Au nœud d'entrée du domaine Diff-Serv, les paquets sont classés et marqués avec un point de code Diff-Serv (Diff-Serv Code Point, DSCP) qui correspond à leur agrégat de comportement. À chaque nœud de transit, le DSCP est utilisé pour sélectionner le comportement par saut (Per Hop Behavior, PHB) qui détermine le traitement d'ordonnancement et, dans certains cas, la probabilité de rejet pour chaque paquet.
Ce document spécifie une solution pour prendre en charge les agrégats de comportement Diff-Serv dont les PHB correspondants sont actuellement définis (dans [DIFF_HEADER], [DIFF_AF], [DIFF_EF]) sur un réseau MPLS. Cette solution offre également une flexibilité pour une prise en charge aisée des PHB qui pourraient être définis à l'avenir.
Cette solution repose sur l'utilisation combinée de deux types de LSP :
-
des LSP qui peuvent transporter plusieurs agrégats ordonnés (Ordered Aggregates), de sorte que le champ EXP de l'en-tête MPLS Shim transmet au LSR le PHB à appliquer au paquet (couvrant à la fois les informations sur le traitement d'ordonnancement du paquet et sa priorité de rejet) ;
-
des LSP qui ne transportent qu'un seul agrégat ordonné, de sorte que le traitement d'ordonnancement du paquet est déduit par le LSR exclusivement à partir de la valeur de l'étiquette du paquet, tandis que la priorité de rejet du paquet est transmise dans le champ EXP de l'en-tête MPLS Shim ou dans le mécanisme de rejet sélectif spécifique à la couche de liaison d'encapsulation (ATM, Frame Relay, 802.1).
Comme mentionné dans [DIFF_HEADER], « les fournisseurs de services ne sont pas tenus d'utiliser les mêmes mécanismes ou configurations de nœuds pour permettre la différenciation de service au sein de leurs réseaux, et sont libres de configurer les paramètres des nœuds de la manière qui convient à leurs offres de service et à leurs objectifs d'ingénierie de trafic ». Ainsi, la solution définie dans ce document donne aux fournisseurs de services la flexibilité de choisir comment les classes de service Diff-Serv sont routées ou soumises à l'ingénierie de trafic au sein de leur domaine (par exemple, des classes de service distinctes prises en charge via des LSP distincts et routées séparément, toutes les classes de service prises en charge sur le même LSP et routées ensemble).
Parce que MPLS est orienté chemin, il peut potentiellement fournir des capacités de protection et de restauration plus rapides et plus prévisibles face aux changements de topologie que les systèmes IP routés conventionnels saut par saut. Dans ce document, nous désignons de telles capacités sous le nom de « protection MPLS ». Bien que de telles capacités et les mécanismes associés soient hors du champ d'application de cette spécification, nous notons qu'elles peuvent offrir différents niveaux de protection à différents LSP. Étant donné que la solution présentée ici permet aux fournisseurs de services de choisir comment les classes de service Diff-Serv sont mappées sur les LSP, la solution donne également aux fournisseurs de services de la flexibilité quant au niveau de protection fourni aux différentes classes de service Diff-Serv (par exemple, certaines classes de service peuvent être prises en charge par des LSP qui sont protégés tandis que d'autres classes de service sont prises en charge par des LSP qui ne sont pas protégés).
En outre, la solution spécifiée dans ce document réalise une conservation de l'espace d'étiquettes et réduit le volume de signalisation d'établissement/suppression d'étiquettes lorsque cela est possible en ne recourant à plusieurs LSP pour une Forwarding Equivalent Class (FEC) [MPLS_ARCH] donnée que lorsque cela est utile ou requis.
Cette spécification permet la prise en charge des services différenciés pour le trafic IPv4 et IPv6 transporté sur un réseau MPLS. Ce document ne décrit les opérations que pour l'unicast. La prise en charge du multicast est réservée à une étude future.
La solution décrite dans ce document n'empêche pas l'utilisation signalée ou configurée des bits EXP pour prendre en charge la Notification explicite de congestion [ECN] simultanément avec Diff-Serv sur MPLS. Cependant, les techniques pour prendre en charge l'ECN dans un environnement MPLS sont hors du champ d'application de ce document.
1.1. Terminologie
Les mots clés « MUST », « MUST NOT », « REQUIRED », « SHALL », « SHALL NOT », « SHOULD », « SHOULD NOT », « RECOMMENDED », « MAY » et « OPTIONAL » dans ce document doivent être interprétés comme décrit dans le RFC 2119.
Le lecteur est supposé être familier avec la terminologie de [MPLS_ARCH], [MPLS_ENCAPS], [MPLS_ATM], [MPLS_FR], y compris ce qui suit :
-
FEC: Forwarding Equivalency Class (classe d'équivalence de transfert)
-
FTN: FEC-To-NHLFE Map (mappage FEC vers NHLFE)
-
ILM: Incoming Label Map (mappage d'étiquette entrante)
-
LC-ATM: Label Switching Controlled-ATM (interface) (interface ATM contrôlée par commutation d'étiquettes)
-
LC-FR: Label Switching Controlled-Frame Relay (interface) (interface Frame Relay contrôlée par commutation d'étiquettes)
-
LSP: Label Switched Path (chemin à commutation d'étiquettes)
-
LSR: Label Switch Router (routeur de commutation d'étiquettes)
-
MPLS: Multi-Protocol Label Switching (commutation multiprotocole par étiquettes)
-
NHLFE: Next Hop Label Forwarding Entry (entrée de transfert d'étiquette vers le saut suivant)
Le lecteur est supposé être familier avec la terminologie de [DIFF_ARCH], [DIFF_HEADER], [DIFF_AF], [DIFF_EF], y compris ce qui suit :
-
AF: Assured Forwarding (transfert assuré)
-
BA: Behavior Aggregate (agrégat de comportement)
-
CS: Class Selector (sélecteur de classe)
-
DF: Default Forwarding (transfert par défaut)
-
DSCP: Differentiated Services Code Point (point de code des services différenciés)
-
EF: Expedited Forwarding (transfert accéléré)
-
PHB: Per Hop Behavior (comportement par saut)
Le lecteur est supposé être familier avec la terminologie de [DIFF_NEW], y compris ce qui suit :
-
OA: Ordered Aggregate (agrégat ordonné). L'ensemble des agrégats de comportement qui partagent une contrainte d'ordonnancement.
-
PSC: PHB Scheduling Class (classe d'ordonnancement PHB). L'ensemble d'un ou plusieurs PHB appliqués aux agrégats de comportement appartenant à un OA donné. Par exemple, AF1x est un PSC comprenant les PHB AF11, AF12 et AF13. EF est un exemple de PSC comprenant un seul PHB, le PHB EF.
Les acronymes suivants sont également utilisés :
-
CLP: Cell Loss Priority (priorité de perte de cellule)
-
DE: Discard Eligibility (éligibilité au rejet)
-
SNMP: Simple Network Management Protocol
Enfin, les acronymes suivants sont définis dans cette spécification :
-
E-LSP: EXP-Inferred-PSC LSP (LSP à PSC déduit du champ EXP)
-
L-LSP: Label-Only-Inferred-PSC LSP (LSP à PSC déduit uniquement de l'étiquette)
1.2. LSP à PSC déduit du champ EXP (E-LSP)
Un seul LSP peut être utilisé pour prendre en charge un ou plusieurs OA. De tels LSP peuvent prendre en charge jusqu'à huit BA d'une FEC donnée, quel que soit le nombre d'OA que ces BA couvrent. Avec de tels LSP, le champ EXP de l'en-tête MPLS Shim est utilisé par le LSR pour déterminer le PHB à appliquer au paquet. Cela inclut à la fois le PSC et la préférence de rejet.
Nous appelons ces LSP « LSP à PSC déduit du champ EXP » (EXP-inferred-PSC LSPs, E-LSP), car le PSC d'un paquet transporté sur ce LSP dépend de la valeur du champ EXP pour ce paquet.
Le mappage du champ EXP vers le PHB (c'est-à-dire vers le PSC et la priorité de rejet) pour un tel LSP donné est soit explicitement signalé lors de l'établissement de l'étiquette, soit s'appuie sur un mappage préconfiguré.
Le fonctionnement détaillé des E-LSP est spécifié à la section 3 ci-dessous.
1.3. LSP à PSC déduit uniquement de l'étiquette (L-LSP)
Un LSP distinct peut être établi pour une paire unique <FEC, OA>. Avec de tels LSP, le PSC est explicitement signalé au moment de l'établissement de l'étiquette, de sorte qu'après l'établissement de l'étiquette, le LSR peut déduire exclusivement de la valeur de l'étiquette le PSC à appliquer à un paquet étiqueté. Lorsque l'en-tête Shim est utilisé, la priorité de rejet (Drop Precedence) à appliquer par le LSR au paquet étiqueté est transmise à l'intérieur de l'en-tête MPLS Shim du paquet étiqueté en utilisant le champ EXP. Lorsque l'en-tête Shim n'est pas utilisé (par exemple, MPLS over ATM), la priorité de rejet à appliquer par le LSR au paquet étiqueté est transmise à l'intérieur de l'encapsulation d'en-tête de la couche de liaison en utilisant des champs de priorité de rejet spécifiques à la couche de liaison (par exemple, ATM CLP).
Nous appelons ces LSP « LSP à PSC déduit uniquement de l'étiquette » (Label-Only-Inferred-PSC LSPs, L-LSP) car le PSC peut être entièrement déduit de l'étiquette sans aucune autre information (par exemple, indépendamment de la valeur du champ EXP). Le fonctionnement détaillé des L-LSP est spécifié à la section 4 ci-dessous.
1.4. Fonctionnement global
Pour une FEC donnée, et sauf si des restrictions spécifiques au média s'appliquent comme identifié aux sections 7, 8 et 9 ci-dessous, cette spécification permet n'importe laquelle des combinaisons suivantes au sein d'un domaine MPLS Diff-Serv :
-
zéro ou un nombre quelconque d'E-LSP, et
-
zéro ou un nombre quelconque de L-LSP.
L'administrateur réseau sélectionne la combinaison réelle de LSP parmi l'ensemble des combinaisons autorisées et sélectionne comment les agrégats de comportement sont effectivement transportés sur cette combinaison de LSP, afin de mieux correspondre à son environnement et à ses objectifs en termes de prise en charge Diff-Serv, d'ingénierie de trafic et de protection MPLS. Les critères pour sélectionner une telle combinaison sont hors du champ d'application de cette spécification.
Pour une FEC donnée, il peut y avoir plus d'un LSP transportant le même OA, par exemple à des fins d'équilibrage de charge de l'OA ; cependant, afin de respecter les contraintes d'ordonnancement, tous les paquets d'un microflux donné, s'étendant éventuellement sur plusieurs BA d'un agrégat ordonné donné, MUST être transportés sur le même LSP. Inversement, chaque LSP MUST être capable de prendre en charge tous les BA (actifs) d'un OA donné.
Des exemples de scénarios de déploiement sont fournis à titre d'information dans l'ANNEXE A.
1.5. Relation entre étiquette et FEC
[MPLS_ARCH] indique à la section « 2.1. Overview » que : « Certains routeurs analysent l'en-tête de la couche réseau d'un paquet non seulement pour choisir le saut suivant du paquet, mais aussi pour déterminer la « precedence » ou la « class of service » d'un paquet. Ils peuvent alors appliquer différents seuils de rejet ou disciplines d'ordonnancement à différents paquets. MPLS permet (mais n'exige pas) que la precedence ou la class of service soit entièrement ou partiellement déduite de l'étiquette. Dans ce cas, on peut dire que l'étiquette représente la combinaison d'une FEC et d'une precedence ou class of service. »
Conformément à cela, nous observons que :
-
Avec les E-LSP, l'étiquette représente la combinaison d'une FEC et de l'ensemble des BA transportés sur l'E-LSP. Lorsque tous les BA pris en charge sont transportés sur un E-LSP, l'étiquette représente alors la FEC complète.
-
Avec les L-LSP, l'étiquette représente la combinaison d'une FEC et d'un OA.
1.6. Réservation de bande passante pour les E-LSP et L-LSP
Indépendamment du protocole de liaison d'étiquette utilisé, les E-LSP et L-LSP peuvent être établis avec ou sans réservation de bande passante.
Établir un E-LSP ou un L-LSP avec réservation de bande passante signifie que les exigences de bande passante pour le LSP sont signalées au moment de l'établissement du LSP. De telles exigences de bande passante signalées peuvent être utilisées par les LSR au moment de l'établissement pour effectuer un contrôle d'admission du LSP signalé sur les ressources Diff-Serv provisionnées (par exemple, via la configuration, SNMP ou des protocoles de politique) pour le(s) PSC pertinent(s). De telles exigences de bande passante signalées peuvent également être utilisées par les LSR au moment de l'établissement pour effectuer un ajustement des ressources Diff-Serv associées au(x) PSC pertinent(s) (par exemple, ajuster le poids d'ordonnancement du PSC).
Notez qu'établir un E-LSP ou un L-LSP avec réservation de bande passante ne signifie pas qu'un ordonnancement par LSP est requis. Étant donné que les E-LSP et L-LSP sont spécifiés dans ce document pour la prise en charge des services différenciés, le traitement de transfert requis (ordonnancement et politique de rejet) est défini par le PHB Diff-Serv approprié. Ce traitement de transfert MUST être appliqué par le LSR à la granularité du BA et MUST être conforme à la spécification PHB pertinente.
Lorsque des exigences de bande passante sont signalées à l'établissement d'un L-LSP, la bande passante signalée est manifestement associée au PSC du L-LSP. Ainsi, les LSR qui utilisent la bande passante signalée pour effectuer un contrôle d'admission peuvent effectuer un contrôle d'admission sur des ressources Diff-Serv qui sont dédiées au PSC (par exemple, sur la bande passante garantie au PSC par son poids d'ordonnancement).
Lorsque des exigences de bande passante sont signalées à l'établissement d'un E-LSP, la bande passante signalée est associée collectivement à l'ensemble du LSP et donc à l'ensemble des PSC transportés. Ainsi, les LSR qui utilisent la bande passante signalée pour effectuer un contrôle d'admission peuvent effectuer un contrôle d'admission sur des ressources globales, qui sont partagées par l'ensemble des PSC (par exemple, sur la bande passante totale du lien).
Des exemples de scénarios où la réservation de bande passante n'est pas utilisée et de scénarios où la réservation de bande passante est utilisée sont fournis à titre d'information dans l'ANNEXE B.