Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 50 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
50
Dung lượng
1,59 MB
Nội dung
Dộfinition du style : TM Institut de la Francophonie pour l'Informatique Mộmoire de fin dộtudes du : DIPLOME DETUDES PROFESSIONNELLES APPROFONDIES par NGUYEN Phan Quang Gestion de lAccốs aux Rộseaux MPLS-DiffServ par des Agents Intelligents Janvier, 2004 Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents Remerciements Je tiens remercier Guy PUJOLLE et Dominique Gaùti de mavoir accueilli dans leur ộquipe durant mon stage de DEPA, et davoir encadrộ et animộ ce stage avec enthousiasme Grõce vos connaissances profondes et vastes jai ộtộ encouragộ accomplir ce stage Jai lhonneur dadresser tous mes remerciements Kim Loan THAI pour ses aides et conseils dans la recherche et dans ma vie professionnelle durant mon stage Je remercie chaleureusement Hugues LECARPENTIER et Davor MALES de mavoir encadrộ durant mon stage Jexprime avec enthousiasme ma gratitude Duc Minh NGUYEN et Huyen Trang VU pour leurs aides dans la recherche et ma vie quotidienne Je remercie amicalement Duy LE, mon collốgue pour ses travaux, sa coopộration et ses aides dans lộquipe et la vie quotidienne Jadresse mes remerciements tous les membres du projet IANET pour leurs conseils et leurs soutiens amicaux Je tiens aussi remercier chaleureusement les professeurs de lIFI pour leurs renseignements qui ont ộtộ vraiment utiles durant mon stage En fin, un grand merci ma famille, mes amis pour leur encouragement Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents Rộsumộ : Certaines des applications d'Internet pourraient bộnộficier des ressources du rộseau comme la bande passante Une tendance rộelle dans la gestion de rộseau est lagrộgation des flots du trafic En outre, diffộrents services exigent diffộrentes ressources pour garantir une meilleure qualitộ de service (QoS) Ces travaux proposent une approche utilisant les systốmes multi-agents pour la gestion d'accốs dans un rộseau MPLSDiffServ Une analyse de simulation est donnộe pour 1) la modộlisation dun rộseau MPLS et 2) la gestion d'accốs de rộseau par les agents intelligents L'intelligence des agents est actionnộe en fonction des comportements du QoS de trafic dans le rộseau Mots clộs : MPLS-DiffServ, Agent Intelligent, IP-QoS Mis en forme : Anglais (Royaume-Uni) Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents Abstract : An increment of the Internet applications could benefit the network resources like bandwidth An actual trend in networking is aggregation of traffic streams In addition, with different services, it requires the different resources to guarantee the best quality of service (QoS) In this paper, we propose an approach using agent-based systems for access management in an MPLS-DiffServ network A simulation analysis is provided for 1) MPLS network modelling and 2) Network access management by intelligent agents The agent intelligence is operated by the behavior of the QoS of traffic in the network Keywords : MPLS, DiffServ, Intelligent Agent, IP-QoS Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents Table des matiốres INTRODUCTION 1.1 LA GARANTIE DE LA QOS DANS LES RESEAUX IP 1.2 LINGENIERIE DU TRAFIC DANS LES RESEAUX MPLS 1.2.1 Lingộnierie du trafic 1.2.2 MPLS et la TE 1.3 LOBJECTIF DU PROJET 10 ETAT DE LART 12 2.1 LAGENT INTELLIGENT DANS LES RESEAUX DE TELECOMMUNICATIONS 12 2.2 LES RESEAUX MPLS-DIFFSERV 13 2.3 LENVIRONNEMENT DE SIMULATION J-SIM 13 2.3.1 Introduction 13 2.3.2 Modộlisation dun rộseau 14 2.3.3 Modộlisation du rộseau MPLS dans J-Sim 15 2.3.4 Les problộmatiques 16 DEROULEMENT DU STAGE 17 3.1 MODELISATION DU RESEAU MPLS-DIFFSERV 17 3.1.1 Fonctionnement du rộseau 17 3.1.2 La conception dun nud MPLS 18 3.1.3 La modộlisation des sources de trafic 19 3.2 MODELE DE LAGENT 20 3.2.1 Introduction 20 3.2.2 Les critốres utiliser 20 3.2.3 Larchitecture de lagent 21 ANALYSE DES RESULTATS 23 4.1 LA TOPOLOGIE DU RESEAU 23 4.2 METHODES DEXPERIMENTATION ET DEVALUATION 24 4.2.1 Rộseau sans agents intelligents 24 4.2.2 Rộseau avec agents intelligents 24 4.2.3 Interprộtation et remarques 26 CONCLUSION 29 5.1 5.2 LES RESULTATS OBTENUS 29 AU FUTURE 29 RẫFẫRENCES 30 ANNEXE 32 7.1 LE PACKAGE INET DU SIMULATEUR J-SIM 32 7.1.1 Le CSL et les services 32 7.1.2 La dộcomposition du CSL 34 7.1.3 Lộtablissement dun scộnario de simulation dun rộseau 36 7.2 LA CONFIGURATION ET LE MANUSCRIT DE SIMULATION DE RESEAU MPLS 37 7.2.1 La configuration du composant de FT 37 7.2.2 Lộtablissement dun nud MPLS 38 7.3 GUIDE D'INSTALLATION DE LA SIMULATION DU RESEAU MPLS-DIFFSERV 38 7.3.1 L'Installation 38 7.3.2 L'affichage des rộsultats 39 7.3.3 Remarque 39 Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents 7.3.4 Le fichiers de simulation ianet.tcl 39 7.4 LES RESULTATS OBTENUS 46 7.4.1 La simulation du rộseau sans agent 46 7.4.2 La simulation du rộseau avec agent intelligent 47 Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents Les acronymes ACA AF AS ATM BA BE bps CAC CSL DiffServ DSCP EF FEC FT FTP IP LDP LSP LSR MPLS MTU PD PHB QoS RSVP RT SLA SLS TE TTL UPL Autonomous Component Architecture Assured Forwarding Autonomous System Asynchronous Transfer Mode Behaviour Aggregated Best Effort bit per second Call Admission Control Core Service Layer Differentiated Service DiffServ Code Point Expedited Forwarding Forwarding Equivalence Class Forwarding Table File Transfer Protocol Internet Protocol Label Distribution Protocol Label Switched Path Label Switch Router Multi-Protocol Label Switching Max Transfer Unit Packet Dispatcher Per-Hop Behaviour Quality of Service Reservation Protocol Routing Table Service Level Agreement Service Level Specification Traffic Engineering Time To Live Upper Protocol Layer Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents INTRODUCTION Ce stage sest dộroulộ dans lộquipe RESEAUX et PERFORMANCE du pole MSI (Modộlisation des Systốmes dInformatique) du LIP6 (Laboratoire dInformatique de Paris 6) Aujourdhui, les rộseaux de tộlộcommunications ont ộvoluộ vers une tendance fournir les divers services avec telle garantie de la qualitộ de service aux clients Il est possible de transfộrer des flots de donnộes diffộrents niveaux de dộbit, de dộlai et de taux de perte de paquets Dans le but de fournir certaines garanties de la QoS adộquate aux trafics sur un AS IP, les clients devront avoir des conventions SLA [7, 8, 26, 19] contractuelles avec des Fournisseurs des Services dInternet (Internet Service Provider, ISP) Les ISP voudraient satisfaire des demandes du client qui sont dộcrites dans la part technique SLS [7, 8, 26] du SLA tandis quoptimiser lutilisation des ressources du La rộalisation de ces deux objectifs nest pas simple dans un environnement de rộseaux multi-services Lintộgration de DiffServ et MPLS est une approche trốs efficace pour rộsoudre ce problốme DiffServ fournit des mộcanismes normalisộs de QoS [6] tandis que MPLS fournit des techniques de routage qui nous permettent doptimiser lutilisation de ressources et lingộnierie du trafic [10] Deux aspects intộressants de cette tendance seront abordộs rapidement dans les deux sections suivantes : la garantie de la QoS dans le monde IP et lingộnierie du trafic (TE) dans les rộseaux MPLS 1.1 La garantie de la QoS dans les rộseaux IP Un point majeur dans la gestion de la performance de rộseaux est la QoS Elle a ộtộ dộfinie dans la recommandation E.800 de lITU-T (International Telecommunications Union Telecommunication Standardization Sector) comme ô un effet collectif des performances dun service qui dộtermine le degrộ de satisfaction dun client du service ằ Pour atteindre certaine garantie de la QoS, des mộcanismes du plan de contrụle et du plan de gestion sont utilisộs [26] Les mộcanismes du plan de contrụle servent rộserver des ressources la demande Ceux du plan de gestion fournissent la planification et la surveillance du rộseau et la gestion des demandes dinscription des services dộpendant des ressources valables Normalement, les rộseaux IP noffrent pas de qualitộ de service lorigine En effet, lobjectif du monde IP est de partager de faỗon ộquitable lensemble des ressources du rộseau [25] Plusieurs solutions ont ộtộ proposộes pour essayer dintroduire de la qualitộ de service dans les rộseaux IP La premiốre solution est de surdimensionner le rộseau de telle sorte que tous les paquets IP voient le rộseau comme ộtant fluide et puissent arriver dans un laps de temps court au rộcepteur La deuxiốme solution est de rộserver des ressources du rộseau pour des flots particuliers Pour cela, un protocole de signalisation RSVP a ộtộ proposộ Associộe ce protocole, une autre solution a ộtộ proposộe avec la technique IntServ (Integrated Service) Lidộe est dintroduire des classes de prioritộ aux trafics dans les rộseaux IP Cependant, cette proposition bute contre le problốme de passage lộchelle du contrụle de QoS Cest pour quoi la technique DiffServ a ộtộ proposộe Cette technique est considộrộe une technologie clộ pour lobtenir la garantie de QoS Au lieu de maintenir des tables indiquant les caractộristiques des flots chaque routeur, les paquets sont classifiộs, marquộs et policộs au bord dun domaine DiffServ Les flots sont regroupộs dans des flots plus importants appelộs des agrộgats Un ensemble fini des PHB diffộrencie le traitement des agrộgats dans le noyau du rộseau en fonction de la prioritộ dordonnancement (scheduling priority), la capacitộ de transiter (forwarding capacity) et le tampon (buffering) Les trois types principaux de PHB sont: EF [RFC2598], AFxy [RFC2597] et BE Les SLS sont utilisộs pour dộcrire Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents des paramốtres appropriộs de la QoS dont un routeur DiffServ devrait tenir compte Le traitement des micro flots aura lieu au bord du rộseau DiffServ tandis que les routeurs internes ne travaillent quavec des agrộgats de flux selon le champ DSCP de lentờte de paquets IP Cette approche a pour avantage dộviter le problốme de passage lộchelle du contrụle de QoS Le cadre de QoS tels que IntServ et DiffServ ont bien concentrộ des mộcanismes du plan de contrụle pour fournir la QoS Cependant, il ne semble que cest possible fournir la QoS sans laide de la gestion du rộseau et des services Considộrons le cas de DiffServ, il ne suggốre que les mộcanismes nộcessaires au traitement des paquets chaque nud Il ne suggốre aucune architecture pour dộlivrer la QoS de bout en bout (end-to-end QoS) Lobjectif doffrir une garantie de QoS quantitative de bout en bout sera rộalisộ grõce laugmentation des mộcanismes de DiffServ avec des fonctions de lingộnierie du trafic intelligentes [26] Dans la partie suivante, nous allons prộsenter lingộnierie du trafic dans les rộseaux MPLS 1.2 Lingộnierie du trafic dans les rộseaux MPLS Les rộseaux MPLS sont de plus en plus utilisộs dans le monde IP MPLS utilise lapproche dintộgration dun cadre dộchanger des ộtiquettes (labels) avec le routage de la couche de rộseau Lidộe de base est dassigner des ộtiquettes fixes et courtes des paquets IP lentrộe dun rộseau MPLS (basộ sur le concept de transfert en avant des classes ộquivalentes FEC) Cette assignation nest faite quune fois quand le paquet entre dans le rộseau Tous les paquets qui appartiennent un FEC particulier et qui partent dun nud particulier traverseront le mờme chemin ou un des chemins associộs ce FEC (dans le cas de routage multi chemins) [13] Les paquets seront pilotộs par les routeurs internes grõce leur ộtiquette, aucune information additionnelle nest nộcessaire Ce type de rộseau est vraiment adộquat des applications de multimộdia comme la VoIP (Voix sur IP), VoD (Vidộo la demande)qui demandent de transfộrer les paquets en ordre Une des applications les plus significatives initiales de limplộmentation de MPLS sera dộveloppộe pour la TE [27] 1.2.1 Lingộnierie du trafic En gộnộral, lingộnierie du trafic (TE) est un processus pour spộcifier la faỗon dont laquelle des trafics sont traitộs dans un rộseau donnộ La TE concerne principalement loptimisation de performance des rộseaux opộrationnels Elle renferme lapplication des technologies et des principes scientifiques de la mesure, de la modộlisation, de la caractộrisation, et du contrụle du trafic dInternet pour atteindre des objectifs de la performance spộcifiques Les deux aspects dintộrờt de la TE dans les rộseaux MPLS sont la mesure et le contrụle [27] Des objectifs principaux de la performance associộs la TE devraient ờtre classifiộs en deux types : lorientation du trafic ou celle des ressources [27] Les objectifs de la performance orientộs au trafic se comprennent des aspects qui amộliorent la QoS des flux du trafic Ils pourraient ờtre la minimisation de perte de paquets, de dộlai, la maximisation de dộbitCeux orientộs aux ressources concernent des aspects doptimisation de lutilisation de ressources, parmi lesquelles la gestion de bande passante (bandwith) est un facteur essentiel La minimisation de congestions et lộquilibrage de la charge (load balancing) sont ainsi les buts importants de la TE 1.2.2 MPLS et la TE MPLS est vraiment significatif pour la TE parce quil fournit potentiellement la plupart des fonctionnalitộs valables du modốle ô overlay ằ tel que IP sur ATM, IP sur le relais de trame(IP over frame relay)de faỗon intộgrộe et coỷt bas par rapport aux autres Il nous offre la possibilitộ dautomatiser des fonctions de la TE [27] Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents 10 MPLS, avec le concept de ô traffic trunk ằ [RFC 2403], a quelques facteurs pour la TE [27]: (i) les LSP explicites qui nont pas de contraintes du paradigme de transfert basộ sur des destinations pourraient ờtre crộộs manuellement par des opộrateurs du rộseau ou automatiquement par des protocoles, (ii) les LSP pourraient ờtre maintenus efficacement, (iii) les traffic trunks pourraient ờtre instanciộs (instantiated) et projetộs (mapped) sur les LSP, (iv) un ensemble des attributs pourrait ờtre associộs aux traffic trunks qui modulent leurs caractộristiques comportementales, (v) un ensemble dattributs pourrait ờtre associộs aux ressources qui contraignent le placement des LSP et les traffic trunks traversant ces LSP Cependant, il y a des difficultộs dans la rộalisation de la TE sur MPLS Citons les trois problốmes fondamentaux de la TE sur MPLS Premiốrement, comment projetons-nous les paquets sur les FEC? Deuxiốmement, comment projetons-nous les FEC sur les traffic trunks? Troisiốmement, comment projetons-nous les traffic trunks sur la topologie physique dun rộseau via les LSP? Plusieurs travaux ont ộtộ faits pour rộpondre ces questions Ces travaux concernent lintộgration de la technique DiffServ et linfrastructure MPLS [26,31], le dộveloppement des protocoles de routage et de distribution des ộtiquettes Lidộe dintộgrer la technique DiffServ un rộseau MPLS montre un avantage Il est possible de spộcifier les chemins suivre et les comportements (PHB) des paquets dans les files dattente des routeurs Pour cela, les FEC seront classifiộs selon les classes de service de DiffServ (EF, AFxy, BE) Il y a deux faỗons de projeter le DSCP de DiffServ sur les ộtiquettes de MPLS : E-LSP (Exp-inferred LSP) et L-LSP (Label only inferred LSP) [28, 29] Les ộtiquettes seront assignộs et distribuộes aux routeurs grõce un LDP Un des travaux intộressants dans lassurance de la TE sur MPLS est la gestion dynamique et automatique de laccốs un rộseau MPLS-DiffServ Ce travail concerne laffectation des flux provenant de lextộrieur du rộseau dans les divers LSPs dun rộseau MPLS-DiffServ en fonction du SLS nộgociộ par lutilisateur, des caractộristiques de lapplication et peut-ờtre ộgalement du profil dutilisateur Par exemple, sil y a une application de tộlộphonie qui se prộsente, quel LSP affectera-t-on cette application pour que la garantie trốs forte soit rộalisộe? Normalement, les flux sont routộs statiquement par lopộrateur ou bien par un protocole de routage et distribution des ộtiquettes Avant daffecter un flot dans un tuyau, il faut avoir une procộdure de lappel du contrụle dadmission (Call Admission Control, CAC) [9] pour que la QoS soit respectộe Dans le but dintroduire lintelligence artificielle dans le domaine de la tộlộcommunication, nous proposons une approche dutilisation de lagent intelligent dans la gestion de laccốs un rộseau MPLS-DiffServ 1.3 Lobjectif du projet L'objectif du projet est de concevoir et de dộvelopper des techniques et des logiciels de simulation des rộseaux MPLS-DiffServ intộgrant des agents intelligents Dans ce cadre jai travaillộ avec un autre stagiaire qui a travaillộ sur la modộlisation et le dộveloppement dun rộseau MPLS-DiffServ Ce stage concerne la rộalisation dun modốle dagent gộnộrique pour le choix des LSP et la mesure de son efficacitộ ainsi que ses inconvộnients en terme de TE Nous voudrons essayer dappliquer lintelligence artificielle des agents la rộalisation de la TE dans un rộseau MPLSDiffServ Nous creusons laspect du choix des LSP en satisfaisant la QoS demandộe et lộquilibrage de la charge du rộseau Pour cela, on tente de rộpondre aux questions suivantes : (i) Pourquoi et comment introduit-on lagent intelligent un rộseau MPLS? (ii) Quels sont ses avantages et inconvộnients ? (iii) Comment affecte-t-on les flux de paquets les divers LSP? (iv) Quels sont les paramốtres avec lesquels lagent peut jouer? (v) Quelle est larchitecture des Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents Fig 13 La structure interne dun routeur 36 Fig 14 La structure interne dun host 7.1.3 Lộtablissement dun scộnario de simulation dun rộseau La construction dun scộnario de simulation de rộseau dans le J-Sim est dộcrite dans le manuscrit suivant de TCL: Mis en forme : Franỗais (France) # Crộer un container pour tenir le scenario cd [mkdir drcl.comp.Component scene] # Etape 1: Crộer la topologie # Etape 2: Bõtir des nodes # Etape 3: Configurer des nodes # Attacher le temps dexộcution de simulateur la "scene" attach_simulator # Lancer tous les composants actifs sous la "scene" sil y en a run Exemple : Pour crộer un scộnario de simulation de rộseau qui a la topologie montrộe dans la figure[15], on pourrait dộcrire un manuscrit de TCL : Mis en forme : Anglais (Royaume-Uni) Mis en forme : Franỗais (France) Fig 15 Une topologie de rộseau oự h est le host, n est le nud cd [mkdir drcl.comp.Component scene] # Create topology: set adjMatrix_ [java::new {int[][]} {{1 2} {3 4} {0 5} {0 2} 2}] Mis en forme : Anglais (Royaume-Uni) Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents 37 java::call drcl.inet.InetUtil createTopology [! ] $adjMatrix_ # Build nodes: set routerBuilder_ [java::new drcl.inet.NodeBuilder routerBuilder] set hostBuilder_ [cp $routerBuilder_ hostBuilder] mkdir $hostBuilder_/20@up $routerBuilder_ build [! n*] 10 $hostBuilder_ build [! h*] 11 # Set up traffic source: 12 set packetSize_ 512 13 set period_ 1; # send a packet of size 512 bytes every second 14 set trafficModel_ [java::new drcl.net.traffic.traffic_PacketTrain $packetSize_ $period_] 15 java::call drcl.inet.InetUtil createTrafficSource $trafficModel_ "source" [! h4] [! h5] 20] 16 17 18 19 20 # Set up sink: set sink_ [mkdir drcl.comp.tool.DataCounter h5/sink] connect -c h5/csl/20@up -to $sink_/down@ # Set up static routes from h4 to h5 java::call drcl.inet.InetUtil setupRoutes [! h4] [! h5] 21 attach_simulator ; # attach simulation runtime 22 # start "active" component: the traffic source 23 run 7.2 Mis en forme : Franỗais (France) La configuration et le manuscrit de simulation de rộseau MPLS 7.2.1 La configuration du composant de FT Avant denvoyer des donnộes, il est nộcessaire dajouter des informations dacheminement la FT On pourrait utiliser deux mộthodes : utiliser des commandes de TCL dans le manuscrit de configuration de TCL gộnộrer un fichier de configuration qui sera chargộ la FT La commande suivante rajoute une entrộe la FT Cette entrộe relie une ộtiquette dentrộe une interface de sortie et une liste dopộrations node/csl/ft addLabelEntry label outif timeout operation Description des arguments : Nom Description Type de donnộe Note label lộtiquette dentrộe entier (integer) nul outif linterface de sortie entier (integer) nul timeout le temps avant leffacement de rộel (double) la valeur 0.0 indique cette entrộe une entrộe permanante operation dộfinir des opộrations sur les Chaợne des ô op1 lab1 : op2 ộtiquettes caractốres lab2 : : opN labN ằ Les opộrateurs sont : SWAP, PUSH, POP SWAP : lộtiquette au sommet de la pile est modifiộ par la valeur donnộe PUSH : rajouter une nouvelle valeur la pile POP : effacer la valeur au sommet de la pile Exemple : ! n1/csl/ft addLabelEntry 90.0 "POP 0" Mis en forme : Retrait : Premiốre ligne : 0.13", Avec puces + Niveau : + Alignement : 0.25" + Tabulation aprốs : 0.5" + Retrait : 0.5" Mis en forme : Anglais (Royaume-Uni) Mis en forme : Anglais (Royaume-Uni) Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents 38 Pour relier un prộfixe IP une interface de sortie et une liste dopộrations on peut utiliser la commande : node/csl/ft addPrefixEntry destIP destMask outif timeout operation Description des arguments : Nom Description Type de donnộe Note destIP ladresse IP de destination entier (long) nul destMask le masque de destionation entier (long) outif linterface de sortie entier (integer) nul timeout le temps avant leffacement de cette rộel (double) la valeur 0.0 indique entrộe une entrộe permanante operation dộfinir des opộrations sur les ộtiquettes Chaợne des ô op1 lab1 : op2 caractốres lab2 : : opN labN ằ Les opộrateurs sont les mờmes que dans le cas ci-dessus Exemple : ! n2/csl/ft addPrefixEntry 0x05 0xFFFFFFFF 30.0 "PUSH 1:PUSH 1:PUSH 2" Dans le cas que lon veut charger les entrộes dans la FT partir dun fichier, on pourrait utiliser la commande : node/csl/ft loadFromFile path path : Le chemin pour trouver le fichier Dans le fichier de configuration du FT, chaque ligne est une entrộe On a deux type de ligne : L inlabel outif timeout {op label}+ I destIP destMask outif timeout {op label}+ oự L indique une entrộe dộtiquette, I prộsente celle dadresse IP op = (PUSH) ; (POP) ; (SWAP) Exemple : !n3/csl/ft loadFromFile "./ft.content" Avec le contenu du fichier ft.content: I 00000005 FFFFFFFF 90.0 1 1 I 00000007 FFFFFFFF 90.0 1 1 L 90.0 Mis en forme : Anglais (Royaume-Uni) Mis en forme : Anglais (Royaume-Uni) Mis en forme : Anglais (Royaume-Uni) 7.2.2 Lộtablissement dun nud MPLS Crộer un MPLSBuilder : set mpls [mkdir infonet.javasim.MPLS.MPLSBuilder mplsBuilder] Crộer des nuds MPLS : set nb [mkdir drcl.inet.NodeBuilder nodeBuilder] $nb build [! n?] $mpls Exemple complet dun scộnario de simulation du rộseau MPLS sera introduit dans la section suivante 7.3 Guide d'installation de la simulation du reseau MPLS-DiffServ 7.3.1 L'Installation - Lancer la fenetre de commande DOS - Changer le chemin (path) au repertoire C:\npquang\working\mpls\current - Etablir les variables d'environnement par le script run.bat - Faire marcher la simulation en utilisant le script r.bat, ou bien : java drcl.ruv.System ianet.tcl - Pour recompiler les fichiers *.java, utilisez le script c.bat Mis en forme : Anglais (Royaume-Uni) Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents 39 7.3.2 L'affichage des rộsultats Les rộsultats sont affichộs de deux faỗons: visuelle et textuelle: - L'affichage visuel montre les valeurs moyennes et instantanộes des paramốtres de QoS selon chaque LSP du rộseau comme : la gigue, le dộlai, la perte - L'affichage textuel montre le traitement et les critốres utilisộs de l'agent : Waiting for agent process Agent processing Agent process number : 20 lookup for : Alternative number : Mis en forme : Anglais (Royaume-Uni) Avarage : Mean parameters : delay :0.04011069242009149 jitter : 0.06244899598381361 loss : 0.0 wait :2.7843803056027165E-4 Variance parameters : delay :0.02251883567437416 jitter : 0.04886202120211075 loss : 0.0 wait :1.5353530580015497E-4 Agent return : End of agent process + Agent process number indique le nombre de flots de donnộes a ộtộ traitộs de la simulation + lookup for : "type de service" (0 : EF, : AF, : BE) + Alternative number : "nombre de LSP" + Mean parameters : la somme des valeurs moyennes de tous les noeuds appartenant d'un LSP + Variance parameters : la variance des valeurs moyennes + Agent return : "la rộfộrence pour trouver un chemin dans FT( Forwarding Table) Mis en forme : Anglais (Royaume-Uni) 7.3.3 Remarque - La topologie du rộseau est prộsentộe dans le fichier ianet.tcl - L'agent se trouve noeud n0 et il ne traite que des flots de noeuds n0 la destination n2 - L'agent a deux ports communiquer : AGENT_SERVICE_PORT_ID pour le traitement de flots et AGENT_UPDATE_PORT_ID pour la mise jour des donnees - La pộriode de mise jour des paramốtres (le temps que les noeuds envoient leur ộtat actuel l'agent): foreach i {0 3} { [! n$i/csl/mpls] setTimeUpdate "Update" 0.1 } - L'agent ne change pas le contenu des paquets, il ne donne qu'une reference au module MPLS pour faire "lookup" dans la FT Mis en forme : Anglais (Royaume-Uni) 7.3.4 Le fichiers de simulation ianet.tcl #LE Duy-NGUYEN Phan Quang cd [mkdir drcl.comp.Component /ianet] puts "\n-=Construire la topologie=-" puts "Construire les noeuds " cd [mkdir drcl.comp.Component net0] set link_ [java::new drcl.inet.Link] $link_ setPropDelay 0.1; # {5,9,13} # | # | # # / \ # / \ # / \ # {12,8,4} -0 -{6,10,14} 16 # \ / # \ / # \ / # # | # | # {7,11,15} Mis en forme : Franỗais (France) Mis en forme : Anglais (Royaume-Uni) Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents 40 puts "Construire l'adress IP " set id_ [java::new {long[]} {0 }] set adjMatrix_ [java::new {int[][]} {{1 4} {0 5} {1 6} {0 7} {0} {1} {2} {3}}] java::call drcl.inet.InetUtil createTopology [! ] "n" "n" $adjMatrix_ $id_ $link_ set mplsBuilder [mkdir MPLSBuilder mplsBuilder] set nb [mkdir drcl.inet.NodeBuilder nodeBuilder] $nb setBandwidth 3.5e7; $nb build [! n0] $mplsBuilder #35Mbps #1.0e7 = 10Mbps $nb setBandwidth 7.0e6; $nb build [! n1] $mplsBuilder #7Mbps #1.0e7 = 10Mbps $nb setBandwidth 3.5e7; $nb build [! n2] $mplsBuilder #6.5Mbps #1.0e7 = 10Mbps $nb setBandwidth 7.0e6; $nb build [! n3] $mplsBuilder #7Mbps #1.0e7 = 10Mbps $nb setBandwidth 1.0e8; $nb build [! n4-7] $mplsBuilder #100Mbps #1.0e3=1Kbps [! n4] addAddress [! n4] addAddress 12 [! n5] addAddress [! n5] addAddress 13 [! n6] addAddress 10 [! n6] addAddress 14 #For testing only [! n6] addAddress 16 [! n7] addAddress 11 [! n7] addAddress 15 #Added by NGUYEN Phan Quang 12/09/03 puts "create and connect database" mkdir Database data #connect [! n?/csl/mpls/DATA_SERVICE_PORT_ID@] -to [! data/update@] puts "create and connect agent and n1" mkdir Agent agent ! agent setDatabase [ ! /ianet/net0/data] connect agent/AGENT_SERVICE_PORT_ID@ -and [! /ianet/net0/n0/csl/mpls/AGENT_SERVICE_PORT_ID@] foreach i {0 3} { connect [! n$i/csl/mpls/AGENT_UPDATE_PORT_ID@] -to [! agent/AGENT_UPDATE_PORT_ID@] } connect agent/DATA_PORT_ID@ -and data/update@ ! agent setActive true #! agent setActive false mkdir drcl.comp.tool.Plotter plot ! agent connect2Plot [ ! plot] #end of addition puts "Configuration des routeurs " java::call java::call java::call java::call java::call infonet.javasim.util.NetUtil infonet.javasim.util.NetUtil infonet.javasim.util.NetUtil infonet.javasim.util.NetUtil infonet.javasim.util.NetUtil setupBRoute setupBRoute setupBRoute setupBRoute setupBRoute [! [! [! [! [! Mis en forme : Franỗais (France) n0] n4] n1] n5] n2] [! [! [! [! [! n4] n0] n5] n1] n6] Mis en forme : Anglais (Royaume-Uni) Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents 41 java::call infonet.javasim.util.NetUtil setupBRoute [! n6] [! n2] java::call infonet.javasim.util.NetUtil setupBRoute [! n3] [! n7] java::call infonet.javasim.util.NetUtil setupBRoute [! n7] [! n3] java::call java::call java::call java::call java::call java::call java::call java::call infonet.javasim.util.NetUtil infonet.javasim.util.NetUtil infonet.javasim.util.NetUtil infonet.javasim.util.NetUtil infonet.javasim.util.NetUtil infonet.javasim.util.NetUtil infonet.javasim.util.NetUtil infonet.javasim.util.NetUtil setupBRoute setupBRoute setupBRoute setupBRoute setupBRoute setupBRoute setupBRoute setupBRoute [! [! [! [! [! [! [! [! n0] n1] n1] n2] n2] n3] n3] n0] [! [! [! [! [! [! [! [! n1] n0] n2] n1] n3] n2] n0] n3] puts "Configuration des table d'acheminement " Mis en forme : Franỗais (France) foreach i {1 3} { ###### Flow 1: -> -> Label=1 => EF ###### Flow 2: -> -> 10 Label=2 => AFxy ###### Flow 3: 12 -> -> 14 Label=3 => BE # addPrefixEntry destIP destMask iface timeout operations ! n0/csl/ft addPrefixEntry [expr $i*4+2] 0xFFFFFFFF 90.0 "PUSH $i" Mis en forme : Anglais (Royaume-Uni) # N1 # addLabelEntry label iface timeout operations ! n1/csl/ft addLabelEntry $i 90.0 "SWAP $i" # N2 ! n2/csl/ft addLabelEntry $i 90.0 "POP 0" ####################### ###### Flow 4: -> -> ###### Flow 5: -> -> 11 ###### Flow 6: 13 -> -> 15 Label=4 => EF Label=5 => AFxy Label=6 => BE # N1 # addPrefixEntry destIP destMask iface timeout operations ! n1/csl/ft addPrefixEntry [expr $i*4+3] 0xFFFFFFFF 90.0 "PUSH [expr $i+3]" # N2 # addLabelEntry label iface timeout operations ! n2/csl/ft addLabelEntry [expr $i+3] 90.0 "SWAP [expr $i+3]" # N3 ! n3/csl/ft addLabelEntry [expr $i+3] 90.0 "POP 0" ####################### ###### Flow 7: -> -> ###### Flow 8: 10 -> -> ###### Flow 9: 14 -> -> 12 Label=7 => EF Label=8 => AFxy Label=9 => BE # N2 # addPrefixEntry destIP destMask iface timeout operations ! n2/csl/ft addPrefixEntry [expr $i*4] 0xFFFFFFFF 90.0 "PUSH [expr $i+6]" # N3 # addLabelEntry label iface timeout operations ! n3/csl/ft addLabelEntry [expr $i+6] 90.0 "SWAP [expr $i+6]" # N0 ! n0/csl/ft addLabelEntry [expr $i+6] 90.0 "POP 0" ####################### ###### Flow 10: -> -> Label=10 => EF Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents ###### Flow 11: 11 -> -> ###### Flow 12: 15 -> -> 13 42 Label=11 => AFxy Label=12 => BE # N3 # addPrefixEntry destIP destMask iface timeout operations ! n3/csl/ft addPrefixEntry [expr $i*4+1] 0xFFFFFFFF 90.0 "PUSH [expr $i+9]" # N0 # addLabelEntry label iface timeout operations ! n0/csl/ft addLabelEntry [expr $i+9] 90.0 "SWAP [expr $i+9]" # N1 ! n1/csl/ft addLabelEntry [expr $i+9] 90.0 "POP 0" } # For testing only ###### Flow 13: -> -> 16 Label=13 => EF ###### Flow 14: -> -> 10 Label=14 => AFxy ###### Flow 15: 12 -> -> 14 Label=15 => BE # addPrefixEntry destIP destMask iface timeout operations ! n0/csl/ft addPrefixEntry 16 0xFFFFFFFF 90.0 "PUSH 13" # N3 # addLabelEntry label iface timeout operations ! n3/csl/ft addLabelEntry 13 90.0 "SWAP 13" # N2 ! n2/csl/ft addLabelEntry 13 90.0 "POP 0" ! n1/csl/ft addPrefixEntry 10 0xFFFFFFFF 90.0 "PUSH 13" ! n1/csl/ft addPrefixEntry 0xFFFFFFFF 90.0 "PUSH 3" # ! ! ! ! Added by Nguyen Phan Quang 25-09 n0/csl/ft addLabelEntry 90.0 "PUSH 1" n0/csl/ft addLabelEntry 90.0 "PUSH 2" n0/csl/ft addLabelEntry 90.0 "PUSH 3" n0/csl/ft addLabelEntry 55 90.0 "PUSH 55" ! n0/csl/ft addLabelEntry 15 90.0 "PUSH 15" ! n0/csl/ft addLabelEntry 40 90.0 "PUSH 40" ! n3/csl/ft addLabelEntry 55 90.0 "SWAP 1" ! n3/csl/ft addLabelEntry 15 90.0 "SWAP 3" ! n3/csl/ft addLabelEntry 40 90.0 "SWAP 2" #End of addition set EF set AF set BE puts "Des variables " foreach i {0 3} { set sourceF$i n[expr $i+4] # puts "sourceF$i ==> n[expr $i+4]" foreach j {0 2} { if {$i > 1} {set destF$i$j [expr $i+2+$j*4] } $i+4+2+$j*4]} # puts "==> destF$i$j" } set set set set {set destF$i$j [expr OnOff_$i [mkdir source_OnOff OnOff_$i] Poisson_$i [mkdir source_Poisson Poisson_$i] ParetoOnOff_$i [mkdir source_ParetoOnOff ParetoOnOff_$i] Trace_$i [mkdir source_Trace Trace_$i] Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents 43 set timePeriodSource$i -1 } puts "Configuration des sources de trafic " # For testing only set Trace_n [mkdir source_Trace Trace_n] [! Trace_n] set [! n4] 16 "Verbose_Aladdin_duy2.dat" 256 false [! Trace_n] setParam 16 $timePeriodSource0 $BE set OnOff_n [mkdir source_OnOff OnOff_n] [! OnOff_n] set [! n4] 16 [! OnOff_n] setParam 17 $timePeriodSource0 $AF [! OnOff_n] setOnOffParam 56 221184 0.01 0.06 ###### Source [! OnOff_0] set [! $sourceF0] $destF00 [! OnOff_0] setParam $timePeriodSource0 $EF [! OnOff_0] setOnOffParam 128 13072 0.01 0.06 [! Poisson_0] set [! $sourceF0] $destF01 [! Poisson_0] setParam $timePeriodSource0 $BE [! Poisson_0] setPoissonParam 128 24576 [! ParetoOnOff_0] set [! $sourceF0] $destF02 [! ParetoOnOff_0] setParam $timePeriodSource0 $BE [! ParetoOnOff_0] setParetoOnOffParam 56 122880 0.01 0.06 [! Trace_0] set [! $sourceF0] $destF02 "Verbose_Jurassic_duy3.dat" 256 false [! Trace_0] setParam $timePeriodSource0 $EF ###################" [! OnOff_1] set [! $sourceF1] $destF10 [! OnOff_1] setParam $timePeriodSource1 $EF [! Poisson_1] set [! $sourceF1] $destF11 [! Poisson_1] setParam $timePeriodSource1 $AF [! ParetoOnOff_1] set [! $sourceF1] $destF12 [! ParetoOnOff_1] setParam $timePeriodSource1 $BE [! Trace_1] set [! $sourceF1] $destF12 "Verbose_Aladdin_duy2.dat" 128 false [! Trace_1] setParam $timePeriodSource1 $BE ###################### [! OnOff_2] set [! $sourceF2] $destF20 [! OnOff_2] setParam $timePeriodSource2 $EF [! Poisson_2] set [! $sourceF2] $destF21 [! Poisson_2] setParam $timePeriodSource2 $BE [! ParetoOnOff_2] set [! $sourceF2] $destF22 [! ParetoOnOff_2] setParam 10 $timePeriodSource2 $BE [! Trace_2] set [! $sourceF2] $destF22 "Verbose_Aladdin_duy3.dat" 128 false [! Trace_2] setParam 11 $timePeriodSource2 $AF ###################### [! OnOff_3] set [! $sourceF3] $destF30 [! OnOff_3] setParam 12 $timePeriodSource3 $AF [! Poisson_3] set [! $sourceF3] $destF31 [! Poisson_3] setParam 13 $timePeriodSource3 $BE Gestion de laccốs aux rộseaux MPLS-DiffServ par des agents intelligents 44 [! ParetoOnOff_3] set [! $sourceF3] $destF32 [! ParetoOnOff_3] setParam 14 $timePeriodSource3 $BE [! Trace_3] set [! $sourceF3] $destF32 "Verbose_Jurassic_duy2.dat" 128 false [! Trace_3] setParam 15 $timePeriodSource3 $EF puts "Configuration les plotteurs " foreach j {0 2} { foreach i {0 3} { set plot_$j$i [mkdir ianetPlotter p$j$i] } } for {set t 0} {$t[...]... derniốres puissent rejeter des paquets de la tộlộphonie dans le cas embouteillộ On pourrait dộvelopper un autre systốme des agents qui sont capables de reconnaợtre la situation du rộseau et de rộgler des paramốtres de mis jour, des seuils de conditions ainsi le nombre dộtats historiques chaque nud Gestion de laccốs aux rộseaux MPLS- DiffServ par des agents intelligents 29 Conclusion 5 Un modốle de. .. nous donne pas des possibilitộs de rộalisation dingộnierie du trafic du rộseau MPLS Gestion de laccốs aux rộseaux MPLS- DiffServ par des agents intelligents Fig 4 16 La dộcomposition du CSL dans le nouveau modốle de rộseau MPLS 2.3.4 Les problộmatiques Dans le but dộtudier lapplicabilitộ des agents dans la gestion de laccốs dun rộseau MPLSDiffServ, on ne dộveloppe quun modốle de simulation de rộseau simple... laccốs aux rộseaux MPLS- DiffServ par des agents intelligents 28 vi) Lagent intelligent pourrait prendre en compte des autres informations du rộseau (dộbits des flots traversant dans les LSP, la durộe de transmission des flots de type VoD) dans son choix des LSP vii) Comme les paquets tộlộphoniques devraient ờtre rejetộs de maniốre non pas consộcutive, on pourrait amộliorer le mộcanisme de gestion des. .. flots nest pas bien respectộe, la Gestion de laccốs aux rộseaux MPLS- DiffServ par des agents intelligents 27 perte de paquets augmentent Cela est lorigine du partage des ressources dun ensemble des nuds des LSP traversộs par un mờme ô traffic trunk ằ La base de connaissances de lagent ne contient que des informations sur lhistorique du rộseau, la QoS vộrifiộe avant de mettre un nouveau flot dans un... table de routage Code de champ modifiộ Mis en forme : Franỗais (France) Gestion de laccốs aux rộseaux MPLS- DiffServ par des agents intelligents 33 Graft greffe un ensemble des interfaces de sortie une route entry existante Prune taille un ensemble des interfaces de sortie dune route entry existante Route Entry Removal Supprime des route entries dans la table de routage Route Entry Retrieval recherche des. .. basộ sur l'architecture des composants de base de logiciel appelant l'architecture des composants autonomes (Autonomous Component Architecture, ACA) Tous les ộlộments sont considộrộs comme des composants Les composants communiquent et ộchangent des donnộes via leurs ports Gestion de laccốs aux rộseaux MPLS- DiffServ par des agents intelligents 14 Fig 1 Larchitecture des composants de base 2.3.2 Modộlisation... perte de paquets, de loccupation de la file dattente et de la gigue selon les types de prioritộ chaque carte de rộseau Gestion de laccốs aux rộseaux MPLS- DiffServ par des agents intelligents 18 c) Le module Agent Ce module est responsable de laffectation des flux provenant de lextộrieur du rộseau dans les divers LSP en fonction de la QoS demandộe Il sera prộsentộ en dộtails dans la section de modốle... sert la surveillance des ộtats du rộseau Elle acquiert des informations (les ộtats actuels) des nuds appartenant aux LSP associộs au nud daccốs et les classifie Ces informations lui donnent une vue globale de la situation des toutes les routes associộes et la Gestion de laccốs aux rộseaux MPLS- DiffServ par des agents intelligents 22 charge du rộseau Une base de connaissances de l agent est nộcessaire... les paramốtres dont la couche rộactive a besoin La couche active affecte de nouveaux flux provenant de lextộrieur du rộseau en vộrifiant des conditions de QoS pour chaque type de flot Gestion de laccốs aux rộseaux MPLS- DiffServ par des agents intelligents 25 indiquộ dans le paquet Les flux de type BE seront affectộs de maniốre alộatoire dans les LSP BE La table suivante indique les valeurs des paramốtres... Le problốme posộ est de dộvelopper une simulation de rộseau MPLS- DiffServ avec des agents intelligents qui sont capables de gộrer laccốs des flux provenant de lextộrieur du rộseau dans les divers LSP Etant donnộ un rộseau MPLS- DiffServ avec une topologie fixe et un ensemble dộfini de LSP entre une paire de nuds divisộs en trois niveaux de prộfộrence Pour une demande de transfert des paquets dun flot