Vous êtes sur la page 1sur 42

1

Objectifs

Lobjectif de cette TX tait dtudier les diffrents mcanismes de Qualit de Service (QoS) uvrant dans les rseaux MPLS (Multi Protocol Label Switching), ainsi que la ralisation dun TP sur la mise en place de la QoS dans MPLS. Nous avons galement tudi plusieurs topologies permettant la mise en uvre de la QoS dans les rseaux MPLS. Les principaux sujets tudis furent les deux modles darchitecture de QoS : Intserv et Diffserv, le protocole de signalisation RSVP, limplmentation du champ TOS ainsi que le champ EXP et lingnierie de trafic (avec MPLS-TE et RSVP-TE). Finalement nous avons choisi de mettre en place une QoS base sur le modle darchitecture Diffserv tout en justifiant ce choix. Nous avons conclu sur les forces et les faiblesses des diffrents protocoles ainsi que sur la haute qualit de service dans les rseaux MPLS.

Introduction
Lobjectif de cette TX est de travailler sur la QoS dans les rseaux MPLS (Multi Protocol Label Switching). MPLS est une architecture rseau qui permet dacheminer des donnes en utilisant un systme de Label qui permet de fournir un service bas sur la commutation de paquets et qui unifie le transport des donnes. Lun des points fort de ce mcanisme est quil peut transporter nimporte quel type de trafic (IP, ATM, Ethernet, ) sans se soucier du protocole rseau que celui-ci utilise. La QoS consiste assurer les performances dsires pour un trafic donn dans un rseau. Les performances peuvent tre de diffrents types : dbit, dlai de transmission, gigue, etc Dans le cadre de cette TX les exprimentations ralises, seront orientes particulirement sur le dbit. Dans le cadre de ce travail nous prsenterons deux solutions diffrentes qui correspondent aux modles Intserv et Diffserv. Le modle Intserv est bas sur ltablissement dun chemin et la rservation des ressources ncessaires au flux traversant ce chemin. Le modle Diffserv quand lui, consiste regrouper les flux par classes de faon les associer des QoS prdfinies. Nous avons choisi dimplmenter le modle Diffserv car il rsiste au facteur dchelle et de ce fait il est plus utilis, alors que le modle Intserv nest pas adapt aux grands rseaux car il demande trop de traitements au niveau des quipements rseaux.

Contexte
MPLS Pour stablir, un rseau MPLS a besoin dun IGP (Interior Gateway Protocol). LIGP est un protocole de routage qui effectue plusieurs actions qui permettront MPLS de se mettre en place (dcouverte de larchitecture, remplissage des tables de routage etc). Le choix des labels nest effectu quune seule fois, lors de ltablissement du rseau MPLS. Le protocole MPLS (Multi-Protocol Label Switching) vient sinterposer entre la couche 2, appele liaison de donnes, et la couche 3, appele rseau, du modle OSI. Lavantage de ce mcanisme et quil combine les mthodes de routage de la couche 3 avec les mcanismes de commutation de niveau 2. En effet, quand un flux entre dans un routeur de bordure dun rseau MPLS (ingress router) on lui associe un label appel LSP (Label Switched Path) qui dterminera son chemin. La cration du LSP peut se faire de deux faons : En saut par saut on ralise un routage identique au rseau IP en se basant sur les tables de routage de lIGP, ou en Explicit routing , lIngress routeur prcisera alors tous les routeurs que le flux devra traverser, on parle alors de tunnel-LSP (utilis par MPLS-TE). Ensuite lacheminement des flux seffectue seulement grce la commutation des labels. MPLS dispose de plusieurs avantages car il est capable dintgrer plusieurs notions importantes des rseaux actuels, comme le routage multicast ou la cration de VPN mais il intgre aussi une notion de flexibilit en offrant la possibilit de relier plusieurs types de rseaux (Ethernet, IP, ATM, Frame Relay, PPP). Sa flexibilit permet donc aux oprateurs dutiliser un mme rseau pour transmettre des donnes provenant denvironnements diffrents. Cest pourquoi MPLS est de plus en plus utilis dans les rseaux doprateurs. Le principe de fonctionnement est simple, les donnes se voient assigner des labels de faon pouvoir tre achemines dans

le rseau MPLS, ce qui permet alors de les faire circuler sans se soucier du type de rseau do elles proviennent. La dcision des transferts des trames se fait uniquement sur le contenu de ce Label et donc ne ncessite pas dexaminer le paquet achemin [1]. Voici les rles des quipements fonctionnement dun rseau MPLS (figure 1) : ncessaires au

- Les routeurs CE (Customer Edge router) sont les routeurs appartenant des rseaux ATM, IP, FR. Ils ne peroivent pas le rseau MPLS et en sont donc indpendants. Dans notre cas, les routeurs CE font partie dun rseau IP. - Les routeurs PE (Provider Edge router) sont les routeurs qui sont chargs de mettre/enlever le Label sur le paquet de donnes provenant ou destination des routeurs CE pour quil puisse tre achemin correctement soit par le rseau MPLS ou par le rseau o se situent les routeurs CE . - Les routeurs P (Provider device) sont les routeurs de cur chargs de la distribution des trames MPLS.

Figure 1 : Exemple dun rseau MPLS

Il serait donc intressant dassocier cette architecture avec de la QoS de faon obtenir un rseau flexible, pouvant offrir de meilleures performances aux applications les plus critiques. Il est possible dimplmenter la QoS en utilisant un modle de type Intserv ou un modle de type Diffserv. Limplmentation de ces deux modles est compltement diffrente car : - Le modle Intserv permet d'associer des ressources et de garantir de la QoS sur un LSP qui reprsente le chemin tabli pour la transmission des paquets via un protocole de distribution de labels comme LDP (Label Distribution Protocol), par exemple. - Limplmentation du modle Diffserv consiste, quant elle, faire une analogie entre le champ ToS (Type Of Service) de l'en-tte du paquet IP et le champ EXP (champ exprimental) de l'en-tte MPLS, pour ensuite y appliquer des rgles de QoS prdfinies. Comme nous lavons expliqu dans lintroduction de ce rapport nous avons choisi de mettre en place un modle de type Diffserv car il rsiste au facteur dchelle ce qui concorde plus avec lutilisation dun rseau MPLS.

QoS Dans le monde les tlcommunications, la QoS est un sigle qui signifie Quality of Service en anglais, que l'on traduit par qualit de service en franais. La Qualit de Service est la capacit vhiculer dans de bonnes conditions un type de trafic, en termes de disponibilit, dbit, dlais de transmission, taux de perte de paquets *2+. Son but est ainsi doptimiser les ressources du rseau et de garantir de bonnes performances aux applications critiques. La Qualit de Service dans les rseaux permet doffrir aux utilisateurs des dbits et des temps de rponse diffrencis par application. Elle permet ainsi aux fournisseurs de services (dpartements rseaux dentreprises, oprateurs) de sengager formellement auprs de leurs clients sur les caractristiques de transport des donnes applicatives sur leurs infrastructures IP. Selon le type de service envisag, la qualit pourra rsider dans le dbit (tlchargement ou diffusion vido), le dlai (pour les applications interactives ou la tlphonie), la disponibilit (accs un service partag) ou encore, le taux de pertes de paquets (pertes sans influence pour de la voix ou de la vido, mais critiques pour le tlchargement). Il existe deux grands modles pour implmenter la QoS dans un rseau. Le premier modle, Intserv, est utilis seulement dans les rseaux locaux car il ne rsiste pas au facteur dchelle. En effet, une QoS de type Interv demande beaucoup de ressources au niveau des quipements o elle est implmente car chaque flux est trait indpendamment et se voit appliqu des rgles qui lui sont propres. De ce fait, il nest pas utilis dans les grands rseaux o circulent beaucoup de flux. Le second modle, Diffserv, rsiste au facteur dchelle car il classifie les flux (temps rel, transfert de donnes) pour ensuite

appliquer des rgles de qualit de service en fonction des besoins ou contraintes de ces catgories de flux. Ce modle utilise le champ ToS ou DSCP du protocole IP pour les classer alors que le modle Intserv ne touche pas ce champ mais utilise un protocole de signialisation appel RSVP (Resource ReSerVation Protocol). De nos jours les applications sont de plus en plus gourmandes en ressources, comme par exemple en bande passante avec la vido confrence ou pour le transfert de fichiers volumineux. Combin lextension de certaines technologies, comme la VoIP ncessitant davoir un faible dlai, certains rseaux seraient incapables de supporter ce genre de trafic sans mcanisme de QoS. Certes un surdimensionnement du rseau est beaucoup plus simple mettre en place mais dans la plupart des cas coteux, cest donc pour cette raison que la QoS devient indispensable. Cela est dautant plus vrai pour les rseaux doprateurs, o un trs grand nombre de donnes transitent. Pour optimiser leur bande passante et pouvoir proposer des services payants incluant un excellent acheminement des donnes, la QoS est primordiale. Nous allons donc nous pencher sur la mise en place de la QoS dans un rseau MPLS (rseau de plus en plus utilis par les oprateurs) via le modle Diffserv. Bien videmment, il est impossible pour un oprateur de vendre de la QoS tous ses clients. En effet, le principe mme de la QoS est de prioriser certains types de flux par rapport dautres en fonction des besoins, mais dun client lautre on retrouvera souvent les mmes types de flux (vido, data). Si tous les clients disposaient des mmes rgles de QoS, comment loprateur pourrait-il assurer le mme service tous ses clients ? Larchitecture Diffserv ncessite la mise en place de plusieurs mcanismes pour pouvoir fonctionner sur les quipements Cisco. Elle implique dutiliser :

La classification des paquets Cest la premire tape appliquer dans larchitecture Diffserv. Elle permet de classifier les flux afin de pouvoir les marquer. Les flux sont classifis en fonction de leur importance, on peut retrouver le type de classification illustr sur la figure 2.

Figure 2 : Classification des diffrents types de flux

Les classes vont de la moins importante (Best Effort) la plus importante (Premium). Tous les types de flux ne sont bien videmment pas reprsents sur cette figure, seuls les plus courants y sont prsents. Le marquage des paquets Une fois que les flux sont classifis, ils sont marqus via un champ ddi (ToS ou DSCP pour IP, EXP pour MPLS) pour faciliter leurs traitements dans le rseau. Les champs ToS et DSCP sont composs de plusieurs lments (voir figure 3 et 4).

Figure 3 : Composition du champ ToS

Figure 4 : Composition du champ DSCP

Comme nous pouvons le voir sur la figure 3, le champ ToS est compos de plusieurs lments : Precedence Field qui dtermine la priorit du paquet, Type of Service qui indique la classification du paquet et le dernier bit appel Extra qui nest pas utilis. Le champ DSCP est compos de 6 bits dont les trois premiers correspondent au Class selector codepoint et permettent de dterminer la classe des paquets. Dans le modle Diffserv, il est trs courant dutiliser le Precedence Field du champ ToS pour implmenter le Class selector codepoint du champ DSCP. Par exemple, dans un rseau IP on peut marquer de la faon suivante les 4 bits appels Type of Service sur la figure 3, en fonction des diffrentes classes (figure 5) [3].

Figure 5 : Exemple de marquage de flux via le Type of Service (rseau IP)

10

La rgulation Elle permet de limiter le dbit pour un type de flux donn de faon pouvoir prserver de la bande passante ou mettre des paquets en attente lorsque le trafic provenant dune source est trop lev. Lordonnancement Cette tape permet dtablir un ordre dimportance de traitement des paquets dans les quipements. Il existe diffrents mcanismes de gestion de file dattente, FIFO (First In First Out), MDRR (Modified Deficit Round Robin), CBWFQ (Class-Based Weighted Fair Queuing), LLQ (Low-Latency Queuing). Ces diffrents mcanismes sont souvent implments de faon implicite dans les routeurs Cisco.

11

Intserv : RSVP
Description Dans le cadre de notre dmarche, nous avons tudi le protocole RSVP, qui permet une QoS de type Intserv. RSVP est un protocole de signalisation qui permet de rserver dynamiquement une qualit de service de bout en bout dun rseau, ce type de rservation permet donc davoir une qualit de service uniforme tout au long du trajet du flux. La QoS dans le cadre de RSVP doit tre demande par le rcepteur. En effet, si cette rservation tait ralise par lmetteur alors tous les rcepteurs auraient la mme QoS et celleci ne serait pas adapte pour tous. Par exemple dans la figure 6, les deux rcepteurs ne demandent pas la mme qualit de service.

Figure 6 : Rservation diffrencie avec RSVP

Il est important de souligner que RSVP rserve des ressources dans un seul sens, ainsi dans la figure 6, les flux allant des rcepteurs lmetteur ne profiteront pas de la QoS [4]. RSVP fonctionne avec les protocoles de routage, mais il nen nest pas un : il rcupre les tables de routage, dtermine les quipements dinterconnexion qui seront traverss par le flux et demande une rservation des ressources sur ceux-ci.

12

Ensuite, les quipements dinterconnexion inspectent la demande en utilisant deux critres de dcision, Admission Control qui vrifie si les ressources matrielles sont suffisantes et Policy Control qui permet de vrifier si lutilisateur a le droit de rserver cette QoS (permet aussi la facturation du service). Enfin, les routeurs rpondent la demande de rservation et tabliront la session si la demande est accepte. [5] Limitations RSVP oblige maintenir des sessions sur tous les quipements qui sont traverss par les flux, or ces sessions nuisent aux performances des quipements et gnrent du trafic sur le rseau (pour les maintenir, les rafrachir, etc). Quand le nombre dutilisateurs augmente, le nombre de sessions augmente et les performances de larchitecture diminuent. Ce modle nest donc pas adapt aux rseaux de grande taille. De plus, RSVP est compliqu mettre en place, et cette complexit est exponentielle avec la taille du rseau. Pour ces diverses raisons, RSVP nest pas beaucoup utilis dans les rseaux MPLS, le facteur principal tant sa faible rsistance au facteur dchelle *6+ et que les rseaux MPLS sont souvent des rseaux trs tendus. Cependant, il nous a sembl important dtudier RSVP car bien quil soit peut utilis tel quel, il est souvent utilis pour lingnierie de trafic avec MPLS-TE, on parle alors de RSVP-TE.

13

Ingnierie de trafic
Lingnierie de trafic consiste manipuler nos flux pour quils sadaptent notre rseau. Autrement dit, on identifie nos flux et on dfinit les meilleurs chemins possibles en prenant en compte des contraintes (bande passante, etc). Lobjectif est damliorer lutilisation de la bande passante ainsi que de la topologie. [6] Il ne faut pas confondre lingnierie de trafic avec lingnierie de rseau qui consiste adapter le rseau en fonction des flux qui risquent de le traverser. De base, les rseaux MPLS nont pas de solution dingnierie de trafic, MPLS-TE a donc t dfini pour palier ce manque. MPLS-TE MPLS-TE (MPLS - Traffic Engineering) est un terme gnrique qui englobe lutilisation de plusieurs technologies telles que RSVP-TE, OSPF, le tunnelling, etc afin de permettre le Traffic Engineering. Le fonctionnement de MPLS-TE peut se rsumer de cette faon : - Une fois que lIGP a complt la base de donnes des routes, MPLS-TE consulte cette base de donnes et calcule les meilleurs chemins. - Il cre les tunnels (Explicit routing). - Il utilise RSVP-TE pour que celui-ci annonce aux routeurs Ingress que les tunnels sont tablis. - Il ajoute la base de donnes les LSP pour que lIGP prenne en compte les nouvelles routes. Ensuite, quand un flux arrive sur le premier routeur (LSR), celui-ci regarde sa base de donnes et utilise le LSP le plus adapt. Par

14

exemple, dans la figure 7 le routeur 1 routera les paquets, soit par le tunnel 1 soit par le tunnel 2 en fonction des LSP dtermins par MPLS-TE. [7]

Figure 7 : Exemple de Traffic Engineering

Il est important de mettre en valeur le fait que MPLS-TE ne ralise pas de QoS. En effet, selon Cisco la QoS est compose de deux parties : - Trouver un chemin qui offre le service dsir travers le rseau. - Amliorer ce service. Toujours selon Cisco, trouver le chemin peut se rsumer utiliser les mtriques de lIGP pour dterminer la destination, et amliorer le service peut se rsumer attribuer de la bande passante des

15

flux. La vision de Cisco est donc que MPLS-TE est un simple outil qui va permettre davoir un haut niveau de Qualit de service mais qui ne ralise pas cette QoS [6]. Il apparait que MPLS-TE est un lment important des rseaux MPLS car il permet damliorer drastiquement la qualit de notre rseau en optimisant son utilisation en grant les congestions et les dfaillances des liens et des nuds. RSVP-TE RSVP-TE est une modification du protocole RSVP dvelopp par lIETF MPLS working group. Il permet MPLS-TE de rserver des tunnels LSP. Pour cela, RSVP-TE signale aux routeurs quils vont faire partie dun tunnel, puis le tunnel est cr ainsi quun ouveau LSP. Puis il tablit une session dans chaque routeur pour maintenir le tunnel oprationnel. Ce protocole est trs utilis dans les rseaux MPLS pour deux raisons principales : - Cest un protocole non propritaire et comme les rseaux MPLS sont composs de matriels de constructeurs diffrents (Cisco, Nortel, etc), cela permet davoir une interoprabilit pour la signalisation. - Cest un protocole soft-state , il tablit donc une session dans chacun des nuds du tunnel. Ce mcanisme permet une ractivit forte en cas de panne (RSVP prvient que le tunnel nest plus maintenu et le LSP est supprim). Mise en place de MPLS-TE MPLS-TE allant souvent de paire avec la QOS de type Diffserv, nous avons donc tudi la dmarche de configuration de celui-ci [6] :

16

- Il faut dabord avoir un rseau MPLS fonctionnel. - Permettre lIGP de prendre en compte le trafic engineering mpls trafic-eng area 100 : permet OSPF dautoriser le trafic engineering sur la zone 100 (le systme de zone est propre OSPF) mpls trafic-eng router-id Loopback : adresse de loopback avec laquelle OSPF communique. - Activer MPLS-TE sur les routeurs, et activer sur les interfaces concernes. ip cef distributed : Cisco Express Forwarding, mcanisme propritaire Cisco. Cette commande nest pas obligatoire mais recommande. mpls ip : commande non obligatoire, elle permet aux interfaces de communiquer comme si elles taient dans un rseau IP. mpls traffic-engineering tunnel : Activation de MPLS-TE. - On peut ensuite crer des tunnels : soit manuellement, soit automatiquement avec CSPF (qui utilise lalgorithme de Dijkstra). Lobjectif ici est de crer des TE tunnels , ces tunnels serviront pour le trafic engineering. Configuration manuelle des tunnels: interface tunnel1 : configure une interface et permet dentrer dans le mode de configuration. tunnel destination A.B.C.D : permet de dfinir la destination du tunnel . tunnel mode mpls traffic-eng : permet lutilisation du tunnel pour le traffic engineering. tunnel mpls traffic-eng bandwidth : configure une bande passante pour le traffic engineering tunnel mpls traffic-eng path-option 1 explicit name boston : configure un nom notre chemin. tunnel mpls traffic-eng path-option 2 dynamic : configure notre chemin pour quil soit calcul dynamiquement dans notre topologie dingnierie de trafic.

17

La mise en place permet de mettre en avant que MPLS-TE nest pas un protocole mais une pile de plusieurs composants (mise en place de tunnels, de RSVP, de lingnierie de trafic, etc). Ces composants sont catalogus et rsums dans le tableau 1.

Tableau 1

: Composants de MPLS-TE

La dcision de ne pas orienter nos recherches vers RSVP fut base sur le fait que ce protocole ne rpondait pas notre sujet. En effet, dans les rseaux MPLS lutilisation de RSVP se limite au fonctionnement avec le protocole MPLS-TE. Le protocole MPLS-TE permet la ralisation dingnierie de trafic, or lingnierie de trafic nest pas, proprement parl, de la QoS.

18

Diffserv : TOS et EXP


Description Le modle Diffserv a t dfini dans la RFC 2475. Lobjectif de ce modle est dapporter une QoS diffrente pour chaque classe de flux. Diffserv peut tre divis en trois composants : La classification de paquets, Le conditionnement de trafic et lordonnancement [6] La classification La premire tape du modle Diffserv consiste sparer le trafic en classes. Ces classes sont identifies par une valeur dun champ situ dans len-tte, ce champ appel le DS-Field (champ diffserv) est par exemple le champ TOS pour les rseaux IP et EXP pour les rseaux MPLS. La modification de la valeur des en-ttes sappelle le marquage de paquet . Le marquage de paquet peut tre ralis de deux faons : - Marquage par lhte : ici cest lapplication situe sur le poste utilisateur qui va marquer le paquet avant de lenvoyer. Cette mthode demande une configuration de lapplication pour que celle-ci marque les paquets avec la bonne QoS. - Marquage par les routeurs : dans ce cas cest un routeur (situ en priphrie du rseau concern par la QoS) qui va marquer les paquets. Une fois que les champs sont marqus (en entre du rseau), les routeurs de cur traitent les donnes selon leur classe et nont plus besoin de modifier la valeur des champs (mais peuvent le faire) (Figure 8). La figure 8 prsente un cas o lon utilise une pile de deux

19

EXP (il est possible davoir un EXP par label). Cette mthode ninflue en rien sur le mcanisme de classification.

Figure 8 : Cas standard de QoS via EXP et TOS [10]

Les routeurs possdent un contrat pour chaque classe de service. Ce contrat est fixe, la QoS dune classe sera donc toujours la mme au sein dun routeur. Le conditionnement Le conditionnement du trafic permet de ladapter aux rgles de la classe laquelle il appartient. On commence donc par vrifier que ces rgles ne sont pas hors profil (par exemple en terme de charge du routeur). Si on ne peut pas donner au trafic la QoS dsire, deux options sont possibles : soit on dtruit le trafic (drop), soit on modifie sa classe (en gnral en la dcrmentant) et on ressaie. Ensuite, si on le dsire, on peut modifier la valeur du champ DS (voir le chapitre 4.3 sur les modifications du champ EXP). Enfin, on applique les rgles de QoS en adaptant le dbit (figure 9).

20

Lordonnancement Lordonnancement des paquets permet de dcider de lordre de traitement des paquets dans un routeur. Par dfaut cest le protocole FIFO (First In First Out) qui est utilis sur les routeurs Cisco. Cependant les protocoles dordonnancement les plus utiliss sont WFQ (Wair Fair Queueing) et son extension CBWFQ (Class Based Wair Fair Queueing). CBWFQ permet de partager le dbit dun routeur de faon pondre. Pour cela CBWFQ regarde en continu la file dattente, simule ce qui se passerait si on dcoupait tous les paquets en morceaux de taille gale, et si on les envoyait en appliquant une politique de rpartition par permutation circulaire. Une fois cette simulation ralise, CBWFQ envoie le paquet qui selon la simulation aurait t envoy en premier, puis il recommence la simulation [9]. Lavantage de ce systme est quil prend en compte les classes de trafic pour pondrer sa simulation. Ainsi pour deux paquets de tailles gales et arrivant au mme moment dans la file dattente, CBWFQ enverra en premier le paquet dont la classe de service demande la plus grande bande passante. Fonctionnement des nuds On peut donc rsumer le fonctionnement des nuds priphriques par quatre actions : La classification des trafics, le conditionnement des trafics, lordonnancement dans la file dattente, et lacheminement (figure 9). Les routeurs curs ralisent les mmes actions lexception de la classification.

21

Figure 9 : fonctionnement de Diffserv dans les routeurs bordures

La classification comme vue prcdemment consiste attribuer un flux une classe de service. Architecture Diffserv Un ensemble de nuds contigus ayant un service commun de rgles est appel un Domaine Diffserv (DS Domain). Ce domaine est compos de deux types de nuds : les nuds frontires (qui marquent le trafic et appliquent la QoS) et les nuds intrieurs (qui appliquent la QoS). Un exemple de Domaine Diffserv est prsent sur la (figure 10) (partie en jaune). Un ensemble de domaine Diffserv contigus ayant des SLA (Service Level Agreement) permettant dassurer que la QoS soit ralise de bout en bout, forme une Rgion Diffserv. Un SLA est un accord qui dfinit comment le trafic transitant dun domaine

22

lautre doit tre conditionn pour assurer la continuit de la QoS. La rgion Diffserv est reprsente en bleue sur la figure 10.

Figure 10 : Rgion et Domaine Diffserv [7]

Les principes de modification dEXP Le rseau que nous avons mis en place nous permet de raliser une continuit de service entre les rseaux IP (reprsentant les rseaux locaux) et le rseau MPLS (reprsentant le rseau oprateur). Pour assurer cette continuit, nous utilisons plusieurs principes [6] : IP2MPLS Condition Ce principe consiste copier la valeur du champ ToS dIP dans le label EXP de MPLS. (Figure 11). Il est utilis par les routeurs E-LSR (en entre du rseau MPLS). Il assure la translation des valeurs de classe entre IP et MPLS.

23

Figure 11 : IP2MPLS Condition [14]

MPLS2MPLS Condition-Swap Ce principe est ralis automatiquement par les routeurs Cisco, il consiste garder la valeur du champ EXP entre chaque routeur. (Figure 12) Seuls les routeurs coeurs ralisent cette action, sauf sils ralisent MPLS2MPLS Condition-Pop la place.

Figure 12 : MPLS2MPLS Condition-Swap [14]

MPLS2MPLS Condition-Push Cette action est optionnelle, elle permet de rajouter un label. Elle est intressante dans certains cas comme par exemple pour

24

utiliser une nouvelle QoS sur une partie du rseau et permettre de garder lancienne QoS aprs. (Figure 13) Ce principe ne peut tre utilis que par le routeur cur.

Figure 13 : MPLS2MPLS Condition-Push [14]

MPLS2MPLS Condition-Pop Cette action est optionnelle, elle permet de changer la valeur du champ EXP (figure 14) ou mme denlever un champ EXP (figure 15). Seuls les routeurs curs ralisent ces actions.

Figure 14 : MPLS2MPLS Condition-Pop : modification dun label [14]

25

Figure 15 : MPLS2MPLS Condition-Pop : suppression dun label [14]

MPLS2IP Condition Cette action assure la continuit de bout en bout de rseau MPLS, cest linverse de IP2MPLS (figure 16). Dans notre cas, seuls les routeurs en bordure sont concerns, ils ralisent cette action pour les flux sortants du rseau MPLS.

Figure 16 : MPLS2IP Condition [14]

26

DiffServ Tunneling Modes


Diffserv Tunneling Modes est un systme qui permet davoir un contrle sur la QoS entre chaque routeur, grce lajout, le retrait, la modification des champs EXP et TOS. Le principe consiste dfinir une politique de QoS commune sur tous les routeurs (ex : si EXP est 1 on rserve 10% de la bande passante, sil est 2 on rserve 20%, etc). Puis on cre des tunnels qui commencent lentre du rseau MPLS et finissent en sortie de ce mme rseau (dans les routeurs PE). Enfin, comme on connat le chemin qui sera pris par les flux, on peut dfinir quel label doit tre attribu lentre du rseau, si on doit le modifier en cours de route, et quand on doit le retirer (figure 17) [11].

Figure 17 : Diffserv Tunneling Modes (Pipe Mode) [11]

Dans cet exemple, on voit que la valeur du champ EXP a t modifie dans le rseau MPLS de faon mieux correspondre aux besoins du flux. On remarquera aussi que la valeur du champ DSCP na pas t modifie, car cest un mode particulier de Diffserv Tunneling Modes nomm Pipe . Ce mode consiste re-classifier

27

le flux en sortie du rseau MPLS (au niveau du routeur PE2), avec une classification base, non pas sur la valeur du champ DSCP, mais sur la valeur du champ EXP. DiffServ TE Comme nous avons vu prcdemment, le systme de Diffserv permet dajouter de la QoS dans les rseaux MPLS. Cependant, ce systme na pas la capacit de raliser du routage bas sur des contraintes et ne peut pas rserver des ressources pour les flux. Pour palier ce manque, il est ncessaire de combiner au systme Diffserv le systme RSVP. La combinaison de ces deux techniques (nomme Diffserv TE) permet alors aux nuds du rseau de pouvoir classifier et prioriser le trafic tout en optimisant le routage et les ressources de transmission [13].Par exemple dans la figure 18 il existe plusieurs chemins pour arriver dun rseau LAN lautre. Pour choisir le meilleur chemin DS-TE va se baser sur la classe du trafic acheminer ainsi que sur les contraintes de trafic engineering (charge des routeurs, qualit des liens etc)

Figure 18 - Exemple de rseau MPLS avec DS-TE [12]

28

Mise en uvre
Dmarche Aprs avoir prsent un Etat de lart de la Qualit de service dans les rseaux MPLS, nous avons dcid dorienter notre mise en oeuvre sur Diffserv, car cette solution est la plus utilise [6] et semblait donc la plus intressante pour la ralisation dun TP. Lobjectif de notre dmarche fut de raliser un systme dans lequel un client (sur un rseau IP) pourrait classifier ces flux (par exemple 0 pour les flux normaux jusqu 7 pour les flux les plus importants) avant de les envoyer son fournisseur (sur un rseau MPLS). Le fournisseur pourrait ensuite rcuprer ces flux classs et leur attribuer une qualit de service correspondant au besoin du client (en priorisant les flux, attribuant de la bande passante, ou mme en faisant transiter certains flux dans un tunnel). Pour raliser cela nous avons, dans un premier temps, mis en place la topographie rseau qui correspondait le mieux nos objectifs. Nous avons ensuite mis en place les rseaux MPLS et IP puis nous avons cr une classification des flux dans les rseaux IP. Enfin nous avons cr les correspondances dans le rseau MPLS. Pour finir, nous avons mis en place les rgles de QoS dans notre rseau MPLS. Lors de notre travail, pour des raisons pratiques, nous avons aussi bien travaill sur une solution virtualise, que sur les routeurs physiques.

29

Choix de larchitecture Pour notre travail, nous avons dcid dutiliser les routeurs Cisco 2800. Pour interconnecter les routeurs entre eux nous avons choisi de prendre le Switch Catalyst 2950. o Rseau MPLS Dans un premier temps, nous avons mis en place une architecture triangulaire (figure 19) avec des postes aux extrmits. Cette architecture simple nous a permis de mettre en place un rseau MPLS fonctionnel.

Figure 19 : Architecture rseau MPLS

30

o Architecture oprationnelle Notre premire architecture ne nous a pas permis dinstaller une QoS de type Diffserv, car nous avions besoin de marquer deux fois les flux. En effet le marquage dun flux ne peut tre ralis quen sortie dun routeur. Un routeur ne peut donc marquer un flux quune seule fois (sauf si il possde une VRF). Nous avons donc d rajouter un premier routeur pour marquer le champ ToS (dans les rseaux IP) et configur un second routeur pour marquer le champ EXP (dans le rseau MPLS) (Figure 20). Lintrt du marquage de ces champs est expliqu dans la partie DiffServ de ce rapport.

Figure 20 : Architecture final

Cette architecture possde donc deux rseaux IP et un rseau MPLS, et requiert lutilisation de cinq routeurs. Cependant les routeurs 4 et 5 peuvent tre virtualiss respectivement dans les routeurs 1 et 2 en utilisant le principe des VRF (Virtual Routing and

31

Forwarding). Ce qui diminue le nombre de routeur, mais complexifie la configuration de ceux-ci. o Virtualisation Larchitecture que nous proposons requiert lutilisation de cinq routeurs, or la salle TP ne possde que neuf routeurs. Dans loptique de la mise en place dun TP, nous avons tudi la possibilit de la virtualisation. Pour cela, nous avons utilis le logiciel GNS3. Cest un logiciel permettant de simuler un rseau, pour cela il exploite un moteur de virtualisation Qemu et un programme nomm Dynamips qui permet lmulation des routeurs Cisco. Tous les routeurs ne sont pas compatibles avec GNS3, et son fonctionnement requiert les IOS de Cisco. Nous avons donc virtualis des routeurs 2600 car les routeurs 2800 (Prsents en salle de tp) ne peuvent pas tre virtualiss par le logiciel. Cependant, les configurations que nous avons ralises sont interoprables. Le fonctionnement du rseau virtualis (figure 21) est similaire celui de la figure 20. Les 2 routeurs en bas ont t configurs pour quils fonctionnent comme des postes utilisateurs standard.

Figure 21 : Rseau virtualis avec GNS3

32

o MQC (Modular QoS CLI) MQC est un systme dvelopp par Cisco qui a pour objectif dunifier toutes les tapes de configurations de la QoS en une seule [6]. Cest cette mthode que nous avons utilise tout au long de notre TX. MQC est compos de trois parties : - Class map : o lon dfinit le type de trafic qui nous intresse. - Policy map : o lon dfinit ce que le routeur doit faire au trafic dfini dans la class map. - Service Policy : lactivation de la Policy map sur une interface. Mise en place de la QoS Dans les exemples de mise en place (chapitre 5.5.1, 5.5.2 et 5.5.3) lobjectif tait de permettre une rservation de bande passante de 10% pour un trafic SMB (Server Message Block). Cependant, on peut raliser nimporte quelle rgulation en modifiant juste la commande set bandwitch percent 10 . Les configurations ont donc pour but de prsenter un cas simple, mais les possibilits ous jacentes sont nombreuses. Par exemple en remplaant set bandwitch percent 10 par police 5000000 conform-action transmit exceed-action drop on aurait limit le dbit du flux 5 MO/s. On aurait aussi pu vouloir rediriger une classe de trafic dans un tunnel, ou encore changer la QoS dun flux en cours de chemin.

33

o Les routeurs IP Les routeurs IP permettront dassurer une QoS de bout en bout. En effet, ce sont les premiers routeurs que les flux vont rencontrer, et donc ce sont eux qui vont commencer initier la QoS. Pour cela il faut marquer les flux qui nous intressent avec le champ ToS. Dans notre cas, nous dcidons de nous intresser au trafic smb. - Nous dfinissons le trafic qui nous intresse (smb utilise les ports 445 et 139), pour cela nous nous servons dune access-list pour slectionner le flux: router4(config) #access-list 101 permit tcp any eq 445 any router4(config) #access-list 101 permit tcp any eq 139 any - Nous crons une class map que nous appelons smb router4(config) #class-map match-all smb - Puis nous dfinissons le trafic qui nous intresse router4(config-cmap) #match access-group 101 Nous avons donc ici dfini le trafic qui nous intresse. Nous crons ensuite une Policy map pour pouvoir marquer ce trafic. - On commence par crer notre Policy map quon appel Smb router4(config) #policy-map Smb - Puis on prcise que le trafic qui nous intresse vient de la class map smb router4(config-pmap) #class smb

34

- Ensuite, on prcise que ce trafic devra tre marqu dans son champ TOS 1 : router4(config-pmap-c) #set ip precedence 1 Maintenant notre trafic est slectionn et marqu, il ne reste plus qu installer notre Policy map sur une interface. - On installe donc notre politique sur linterface par laquelle le trafic arrivera, et on prcise que cette rgle ne sapplique quau trafic entrant (on ne peut pas marquer du trafic sortant). router4(config) #interface FastEthernet0/1 router4(config) #service-policy input Smb Il ne reste plus qu refaire cette dmarche mais cette fois pour rcuprer le trafic que lon a marqu et pour lui rserver une bande passante de par exemple 10%. Le rsum de la configuration est donn sur la figure 22.

Figure 22 : routeur IP dtaill

35

o Les routeurs Provider Edge Les routeurs PE (routeurs 1 et 2) sont les routeurs de bordure de notre rseau MPLS. Ces routeurs sont configurs pour assurer la translation IP vers MPLS. On doit donc faire en sorte de copier la valeur du champ ToS dans le champ EXP en entre et assurer de donner la QoS dsire en sortie. - Nous commenons par crer une class map que nous appelons IPAF12 : router4(config) # class-map match-all IP-AF12 - Puis comme le trafic a dj t marqu (par les routeurs IP), il ne nous reste plus qu rcuprer les flux pour lesquels la valeur du champ ToS nous intresse: router4(config-cmap) # match ip precedence 1 Nous crons ensuite une Policy map pour pouvoir ajouter un label EXP avec la mme valeur que le champ ToS. - On commence par crer notre Policy map quon appelle set-MPLSPHB : router4(config) # policy-map set-MPLS-PHB - Puis on prcise que le trafic qui nous intresse vient de la class map smb : router4(config-pmap) # class IP-AF12 - Il existe plusieurs faons de raliser la translation de la valeur du champ ToS vers la valeur du champ EXP (figure 11). Dans notre cas, on dcide que si le trafic ne dpasse pas 1 mega octet/s il sera marqu dans son champ EXP 1 :

36

router4(config-pmap-c) # police 10000 conform-action set-mpls-expimpositiontransmit 1 On peut cependant dfinir dautres options comme par exemple choisir de mettre le champ 1 quelque soit le dbit, ou bien encore le mettre 1 sil respecte le dbit et 0 sil le dpasse. On peut aussi limiter directement le dbit en lui imposant une valeur maximale. Une fois le marquage du champ EXP ralis, il ne reste plus qu dfinir notre QoS en sortie pour notre flux. - On cre donc une nouvelle class-map qui slectionne le trafic dont la valeur du champ EXP est gale 1 : routerX(config) # class-map match-all MPLS-AF12 routerX(config-cmap) #match mpls experimental topmost 1 - On met ensuite en place notre Policy-map : routerX(config) # policy-map output-qos routerX(config-pmap) # class MPLS-AF12 routerX(config-pmap-c) # bandwidth percent 10 - On applique notre politique sur linterface MPLS : router4(config) # service-policy output output-qos o Le Routeur Cur Le routeur cur est un lment particulier du rseau, en effet cest le seul qui possde la mme politique de QoS sur ses deux interfaces. De plus il ne modifie normalement pas le champ EXP (figure 12), sauf si on lui demande explicitement (figure 14). Le routeur cur se contente donc dappliquer la QoS en fonction de la valeur du champ EXP.

37

- Nous crons et configurons notre classe : routerX(config) # class-map match-all mpls-in routerX(config-cmap) # match mpls experimental topmost 1 - Notre politique : routerX(config) # policy-map mpls-in routerX(config-pmap) # class mpls-in routerX(config-pmap-c) # bandwidth percent 10 Une fois que cette politique est cre, il suffit de lappliquer nos deux interfaces. Cependant, les interfaces possdent chacune un mode entr et un mode sortie (en fonction du sens du flux). Il faut appliquer cette politique en sortie , cest dire quand le trafic sort du routeur car linverse est impossible. Proposition de TP Lors de nos diffrentes phases de tests, nous avons remarqu que notre architecture ncessitait cinq routeurs. Sachant que nous ne disposons que de neuf routeurs dans la salle de TP, nous avons donc recherch des solutions de faon pouvoir effectuer une sance de TP compose de 14 personnes (7 binmes). Virtualisation de larchitecture via GNS3 Cette premire solution consiste demander chaque binme de virtualiser lensemble de larchitecture rseau prsente dans ce rapport via un logiciel de virtualisation appel GNS3 [15]. Cela permettrait de faire travailler chaque binme sur la globalit de larchitecture mais impliquerait de configurer deux routeurs CE ainsi que deux routeurs PE pour chacun dentre eux. Configurer deux fois les mmes types de routeurs ne serait pas la

38

solution la plus judicieuse sachant quen plus chaque binme devra galement configurer le routeur P . Il faudrait aussi virtualiser les serveurs de faon pouvoir gnrer le trafic ncessaire pour les diffrents tests. Cette solution demanderait une charge de travail probablement trop importante mais serait envisageable sur un TP de deux sances (8h). Toute fois, nous pensons quil serait dommage de ne pas utiliser le matriel physique dont nous disposons en salle de TP. Collaboration de quatre binmes Une autre solution serait deffectuer le TP par groupe de quatre binmes en leur confiant la configuration dun routeur. Deux binmes seraient alors chargs de configurer les routeurs CE et les deux autres devraient configurer les routeurs PE . Le routeur P serait, quant lui, configur par le charg de TP (un routeur de type P suffit pour tout le groupe). Une fois larchitecture mise en place et les exprimentations effectues, il serait intressant de proposer aux tudiants dintervertir leurs routeurs (exemple : un binme ayant configur un routeur CE changerait son routeur avec un binme ayant configur un routeur PE ) de faon ce quils puissent tous implmenter la globalit de larchitecture. Au final, chaque binme aurait donc deux routeurs configurer ce qui est largement envisageable en une sance de 4h. Utilisation de la fonctionnalit VRF (Virtual Routing and Forwarding) Cette dernire solution consiste utiliser le principe des VRF de faon regrouper le routeur CE avec le routeur PE dans un mme quipement. Le fait de les regrouper permettrait aux 7 binmes de travailler la fois sur les deux types de routeur en nutilisant quun seul routeur physique. En regroupant les binmes par groupe de deux, il y aurait suffisamment dquipements dans la salle de TP pour que chaque groupe implmente sa propose

39

architecture. La configuration du routeur P serait effectue l encore par le charg de TP. Cependant, la mise en place de VRF implique lutilisation de VPN et est complique mettre en place. Nous pensons galement que regrouper les routeurs CE et PE dans en mme routeur, compliquerait la comprhension du rle des diffrents routeurs. Nous conseillons donc dutiliser la solution appele Collaboration de quatre binmes pour simplifier la comprhension des tudiants et utiliser le matriel mis notre disposition.

Objectif du TP La dmarche de travail sera la suivante : Dfinition de la politique (classification, marquage, contrle de trafic, ordonnancement et gestion de la file dattente) pour un routeur dentreprise (rseau IP) et pour un routeur oprateur (rseau MPLS). Correspondance de la QoS entre le rseau IP et le rseau MPLS Gnration de diffrents trafics Confrontation des performances rseau avec et sans Qualit de Service. o Architecture La figure 23 prsente larchitecture du rseau global (entreprise + oprateur). Chaque binme devra configurer son routeur dentreprise ainsi que le routeur oprateur permettant linterconnexion au rseau MPLS. Ensuite, les rgles de QoS devront tre dployes sur les routeurs.

40

Figure 23 : Architecture TP

o Mise en plcae de larchitecture X est votre numro de TP Par exemple pour le groupe 1 : CX => C1 : Ce qui correspond au routeur de votre entreprise (Customer) PX => P1 : Ce qui correspond la passerelle de votre fournisseur (Provideur) Premire tape Configurez le routeur dentreprise (CX) qui vous a t attribu (adresse, routage, etc) en respectant larchitecture de la figure 1.

41

Deuxime tape Configurez le routeur oprateur (PX) qui vous a t attribu (adresse, routage, etc) en respectant larchitecture de la figure 1. Lalgorithme de routage choisi par loprateur est OSPF. Pour le mettre en place : routeurPX(config) # router ospf 100 routeurPX(config-router) # log-adjacency-changes routeurPX(config-router) # redistribute connected routeurPX(config-router) # network 172.16.0.0 0.0.255.255 area 10 Pour assurer le routage vers les rseaux IP il est essentiel dajouter des routes, exemple : routeurPX(config) # ip route rseau IP dun autre groupe 255.255.255.0 adresse de linterface 0/1 du routeur PX de lautre groupe routeurPX(config) # ip route votre rseau IP 255.255.255.0 adresse de linterface 0/0 de votre CX Mettez MPLS sur linterface 0/1 du routeur PX : RouteurPX(config-if)# mpls label protocol ldp RouteurPX(config-if)# mpls ip o Mise en place des serveurs et exprimentations

A vos machines !!!

42

Vous aimerez peut-être aussi