NS2 Routage
Short Description
Network Simulator 2 ,Routage NS2,...
Description
UNIVERSITE DE YAOUNDE I bj93655-ovhbj93655-ovh ECOLE NATIONALE POLYTECHNIQUE SUPERIEURE
THE UNIVERSITY OF YAOUNDE I NATIONAL ADVANCED SCHOOL OF ENGINEERING
MASSICO 503 : Réseaux IPV4/IPV6, Routage et Commutation
Section II
UE : 525
Réalisé par :
Prof chargé du cours :
M. BOUBACAR NAMALKA Oumarou
Dr. Nader MBAREK
1
Promotion : 2014-2015
Table des matières
Table des matières Introduction Générale .............................................................................................................................. 1 Chapitre 1 ................................................................................................................................................ 2 Introduction ......................................................................................................................................... 2 1.1 Complément du script................................................................................................................ 2 a.
Création des nœuds n0 et n1 .................................................................................................... 2
b.
Connecter les deux nœuds avec un lien duplex ...................................................................... 2
c.
Créer un Agent UDP et l’attacher au n0 .................................................................................. 2
d.
Source de trafic CBR ............................................................................................................... 2
e.
Connecter la source crb à l’agent udp ..................................................................................... 3
f.
Créer l’agent null pour la réception des paquets dans le nœud 1 ........................................... 3
g.
Connecter les deux agents null et udp ..................................................................................... 3
h.
Déclencher le trafic CBR à t=1s et l’arrêter à t=4.5s .............................................................. 3
i.
La simulation s’arrête après 5s ................................................................................................ 3
1.2 Lancement du NS2 ........................................................................................................................ 4 1.3 Exploration du Simulateur............................................................................................................. 4 1.4 Utilisation de Nam........................................................................................................................ 5 Exercice 2 ............................................................................................................................................ 5 a.
Congestion ............................................................................................................................... 6
b.
Perte des paquets ..................................................................................................................... 7
c.
Accusé de réception................................................................................................................. 8
d.
Fonctionnement TCP vs UDP ................................................................................................. 8
1.5 Conclusion ................................................................................................................................. 8 2. Chapitre 2 :Routage ............................................................................................................................. 9 introduction ......................................................................................................................................... 9 2.1. Définir les nœuds, liens, agents de transport et générateur de trafic ............................................ 9 a. les nœuds ..................................................................................................................................... 9 b. les liens ...................................................................................................................................... 10 c. les agents de transports .............................................................................................................. 10 2
d.
colorier le trafic ..................................................................................................................... 10
e.
connexion des agents ............................................................................................................. 11
f.
générateurs de trafic .............................................................................................................. 11
g. Connexion des agents ................................................................................................................ 11 h.
Rupture et rétablissements du lien ......................................................................................... 11
i.
Routage distant vector ........................................................................................................... 12
j.
Protocole de routage à état de lien ......................................................................................... 13
k.
rupture du lien LS .................................................................................................................. 13
l.
Rétablissement du lien n5n8 ........................................................................................... 14
2.2 Routage et contrôle de congestion TCP ...................................................................................... 15 3. Chapitre 3 : Evaluation des performances ......................................................................................... 16 introduction ....................................................................................................................................... 16 a.
Attach-expo-traffic ................................................................................................................ 16
b.
Record ................................................................................................................................... 16
c.
Exécution du script ................................................................................................................ 17
Conclusion générale .............................................................................................................................. 19
3
Liste des figures
Figure 1:noeud simple ------------------------------------------------------------------------------------------------------- 3 Figure 2: lancement TP1exercice1 ---------------------------------------------------------------------------------------- 4 Figure 3 :Exploration --------------------------------------------------------------------------------------------------------- 4 Figure 4 : Nam ----------------------------------------------------------------------------------------------------------------- 5 Figure 5 : exo2 ----------------------------------------------------------------------------------------------------------------- 5 Figure 6 : simulation exo2 -------------------------------------------------------------------------------------------------- 6 Figure 7 -------------------------------------------------------------------------------------------------------------------------- 8 Figure 8 : réseau à simuler -------------------------------------------------------------------------------------------------- 9 Figure 9 : rupture du lien DV--------------------------------------------------------------------------------------------- 12 Figure 10 : rip ---------------------------------------------------------------------------------------------------------------- 15 Figure 11 : Courbe 1-------------------------------------------------------------------------------------------------------- 17 Figure 12 : courbe 2 -------------------------------------------------------------------------------------------------------- 18 Figure 13 : courbe3 --------------------------------------------------------------------------------------------------------- 19
Liste des tableaux
Tableau 1 : paquets perdu ........................................................................................................................ 7 Tableau 2 : échanges des paquets de routage ....................................................................................... 12 Tableau 3 : échanges LS ........................................................................................................................ 13 Tableau 4 : mises à jour LS ................................................................................................................... 14 Tableau 5 : rétablissement du lien N5n8 ........................................................................................... 14
4
Introduction Générale L’étude des réseaux par la simulation nous permet de comprendre le comportement d’un système avec moins d’efforts. Ce dans le cadre du module Réseaux IPV4/IPV6, routage et commutation que nous étudions quelques protocoles réseaux avec le simulateur Network Simulator 2(NS2). Ce travail se focalise dans un premier temps sur la familiarisation avec l’outil NS2 notamment l’installation et le paramétrage, ensuite l’étude se poursuit sur le routage et enfin sur l’évaluation des performances.
1
Chapitre 1
Introduction Nous allons simuler une topologie simple avec deux nœuds et un lien direct, le travail consiste a complété le code du script incomplet de l’exercice 1. 1.1 Complément du script a. Création des nœuds n0 et n1 Pour déclarer un nœud avec NS2 nous utilisons la commande suivante : Set n0 [$ns node] Set n1 [$ns node]
b. Connecter les deux nœuds avec un lien duplex $ns duplex-link $n0 $n1 1Mb 10ms DropTail
Duplex-link : déclare un lien en full-duplex 1Mb : capacité du lien 10ms : temps de propagation DropTail : la file d’attente (Algorithme DropTail est utilisé) c. Créer un Agent UDP et l’attacher au n0 Set udp [new Agent/UDP] $ns attach- agent $n0 $udp
d. Source de trafic CBR Set cbr [new Application/Traffic/CBR] $cbr set PacketSize 500 $cbr set Intervall_ 0.005 2
e. Connecter la source crb à l’agent udp $cbr attach-agent $udp
f. Créer l’agent null pour la réception des paquets dans le nœud 1 Set null [new Agent/Null] $ns attach-agent $n1 $null
g. Connecter les deux agents null et udp $ns connect $udp $null
h. Déclencher le trafic CBR à t=1s et l’arrêter à t=4.5s $ns at 1.0 ʺ$cbr startʺ $ns at 4.5 0 ʺ$cbr stopʺ
i. La simulation s’arrête après 5s $ns at 5.0 0 ʺfinishʺ
La figure 1 ci-dessous illustre le complément du code commenté pour a création des deux nœuds simples
Figure 1:noeud simple
Une fois le script terminé, nous l’avons sauvegardé dans un fichier « TP1exercice1.tcl »
3
1.2 Lancement du NS2 Nous allons la simulation avec la commande suivante illustrée par la figure 2 ci-dessous :
Figure 2: lancement TP1exercice1
1.3 Exploration du Simulateur Comme le montre la figure 2 le simulateur NS2 comprend trois onglets qui sont : File Views Analysis
Vitesse
Zoom et changer de noeud
Evénements réseaux
Temps
Figure 3 :Exploration
4
1.4 Utilisation de Nam L’utilisation de Nam en interface graphique s’effectue dans l’onglet fichier =>nouveau Simulator Et nous poursuivons la configuration avec l’interface Graphique. La figure 3 ci-dessus illustre la simulation du scenario décrit dans la question1.
Figure 4 : Nam
Exercice 2 Dans cet exercice nous allons simuler le réseau de la figure 5 ci-dessous et de le visualiser avec NAM( Network AniMator).
Figure 5 :
exo2
5
Comme le montre la figure 4, il s’agit de créer un réseau avec quatre (4) nœuds, quatre (4) agents et deux (2) applications. Nous avons commencé par la création d’un nouveau objet simulateur, ensuite les nœuds, les agents et applications. La figure 5 illustre la simulation, les codes des fichiers de configuration seront joint à ce travail dans un dossier.
Figure 6 :
simulation exo2
a. Congestion Nous remarquons que la congestion commence avec les segments tcp 177 au 1,364 ms .
6
b. Perte des paquets Le tableau ci-dessous illustre les paquets perdus : Tableau 1 :
paquets perdu
Protocoles
Numéro d’ordre
temps
etat
tcp
177
1,364
Dropped
Tcp
181
1,372
Dropped
Tcp
184
1,376
Dropped
tcp
196
1,401
Dropped
cbr
194
1,394
Dropped
cbr
202
1,414
Dropped
cbr
220
1,464
Dropped
cbr
435
2,214
Dropped
cbr
473
2,324
Dropped
cbr
510
2,434
Dropped
cbr
514
2,444
Dropped
tcp
475
2,330
Dropped
tcp
771
3,324
Dropped
tcp
803
3,425
Dropped
7
c. Accusé de réception Le trafic FTP commence avec l’initiation de la communication du n0 au à destination du n3,le schéma ci-dessous illustre ce processus :
Tcp : 90
40 bytes
Figure nO 7
n3 Ack : 95 40 bytes
Tcp :99
1040 bytes
Figure 7 : échange en trois étapes d. Fonctionnement TCP vs UDP TCP (Transmission control Protocol) et UDP (user datagramme protocol) sont les deux protocoles de la couche transport les plus utilisés. TCP est un protocole avec connexion qui a des fonctions de livraison dans l’ordre, d’acheminement fiable et de contrôle de flux. Les blocs de communication utilisés dans le protocole TCP sont appelés des « Segment ». UDP est un protocole simple sans connexion, les blocs de communication utilisés dans le protocole UDP sont appelés « datagrammes ». NB : Nous remarquons que le trafic cbr qui utilise UDP n’attends pas de reçu lors de l’envoie, tandis que le trafic FTP utilisant TCP attends toujours un reçu avant d’envoyer le segment suivant. 1.5 Conclusion A la fin de ce travail nous nous sommes familiarisé avec l’outil nS2 et aussi nous avons étudié le fonctionnement et le comportement de la couche transport avec les protocoles TCP et UDP à savoir la congestion, l’accusé de réception, perte des paquets et la différence entre le protocole TCP et UDP. 8
2. Chapitre 2 :Routage introduction Aujourd’hui tous les réseaux sont reliés entre eux par des routeurs, donc une de leurs fonctions et d’acheminés des paquets. Les routeurs utilisent des protocoles de routage pour échanger des informations de routage entre eux. Nous avons plusieurs type de routage entre autres le routage statique, distance vector ou vecteur de distance, Link state ou état des liens. Au cours de ce travail nous allons produire dans un premier temps le script du réseau à simuler à partir de la figure 7, ensuite colorier le flux du trafic et perte du lien n5 et n8 et enfin le routage et contrôle de gestion.
Figure 8 :
réseau à simuler
2.1. Définir les nœuds, liens, agents de transport et générateur de trafic a. les nœuds Nous déclarons les huit (8) nœuds avec les labels pour afficher les noms conformément à la topologie. Les commandes suivantes sont utilisées pour cette étape : Set n1 [ns node] Set $n1 label ʺn1ʺ Set n2 [ns node] Set $n2 label ʺn2ʺ Set n3 [ns node] Set $n3 label ʺn3ʺ Set n4 [ns node] Set $n4 label ʺn4ʺ Set n5 [ns node] Set $n5 label ʺn5ʺ Set n6 [ns node] Set $n6 label ʺn6ʺ Set n7 [ns node] Set $n7 label ʺn7ʺ Set n8 [ns node]
9
b. les liens $ns duplex-link $n1 $n3 10Mb 10ms DropTail $ns duplex-link $n2 $n3 10Mb 10ms DropTail $ns duplex-link $n3 $n4 10Mb 10ms DropTail $ns duplex-link $n4 $n6 10Mb 10ms DropTail $ns duplex-link $n6 $n7 10Mb 10ms DropTail $ns duplex-link $n7 $n8 10Mb 10ms DropTail $ns duplex-link $n8 $n5 10Mb 10ms DropTail $ns duplex-link $51 $n3 10Mb 10ms DropTail
c. les agents de transports Nous allons créer les agents udp1 qui sera relié à n1, udp2 qui sera relié à n2 et enfin l’agent null qui sera relié à n8. #creation des Agents de transport Set udp1 [new Agent/UDP] Set udp2 [new Agent/UDP] Set null [new Agent/Null] # attacher les agents aux noeuds $ns attach-agent $n1 $udp1 $ns attach-agent $n2 $udp2 $ns attach-agent $n8 $null
d. colorier le trafic $udp1 set class_ 1 $udp2 set class_ 2 #colorier le traffic udp1 en bleue $ns color 1 blue #colorier le trafic udp2 en rouge $ns color 2 red
10
e. connexion des agents $ns connect $udp1 $null $ns connect $udp2 $null
f. générateurs de trafic Création du trafic CBR (constant Bite rate) avec un débit de 500 bit et un interval de temps de 10ms. Set cbr1 [new Application/Traffic/CBR] Set cbr2 [new Application/Traffic/CBR] $cbr1 set PacketSize_ 500 $cbr1 set interval_ 0.010 $cbr2 set PacketSize_ 500
2.1.1 Respect de la représentation graphique
$cbr2 set interval_ 0.010
g. Connexion des agents #connexion de l’application cbr1 à l’agent udp1 $cbr1 attach-agent $udp1 #connexion de l’application cbr2 à l’agent udp2 $cbr2 attach-agent $udp2
h. Rupture et rétablissements du lien La coupure du lien entre n5 et n8 est programmée à la quatrième (4) seconde et le rétablissement à la cinquième seconde. #rupture du lien entre n5 et n8 $ns rtmodel-at 4.0 down $n5 $n8 #retablissement du lien $ns rtmodel-at 5.0 up $n5 $n8 11
La figure 9 illustre la rupture du lien n5 et n8
Figure 9 :
rupture du lien DV
i. Routage distant vector La commande ci-dessous active le routage dynamique. $ns rtproto DV
Lors de la visualisation les paquets de routage sont échangés le tableau ci-dessous détaille brièvement les échanges. Tableau 2 : échanges des paquets de routage
Protocole
Numéro de séquence
Temps(ms)
RtProto DV
1014
5 .919
RtProto DV
1016
5.919
RtProto DV
1021
5.931
RtProto DV
1039
6.014 12
j. Protocole de routage à état de lien Pour configurer le protocole de routage à état de lien il suffit de changer le mot « DV » en « LS ». $ns rtproto LS
Le tableau 3 montres les détails de quelques échanges d’informations de routage à état des liens. Tableau 3 :
échanges LS
Protocole
Numéro du
Temps (ms)
Taille (byte)
Noeuds
paquet rtprotoLS
1
0.007102
100
N1N3
rtprotoLS
2
0.007102
100
N3N2
rtprotoLS
3
0.007102
100
N3N4
rtprotoLS
4
0.007102
100
N3N5
Après les échanges des paquets LS tous les nœuds mettent à jour leur base de données d’état des liaisons avec les informations reçues par leurs voisins. Les routeurs à états de lien créent une topologie complète du réseau. k. rupture du lien LS La rupture du lien n5 n8 est programmé à la quatrième seconde, nous observons le comportement du protocole link state avec le trafic source des nœuds n1 et n2 à destination de n8 passant par n3 et n5. Le tableau 4 détails l’envoie des mises à jour des états de lien de la rupture du lien.
13
Tableau 4 :
mises à jour LS
Protocole
Numéro du paquet
Temps
Noeuds
rtprotoLS
647
4.00
N8N7
RtprotoLS
646
4.00
N5N3
RtprotoLS
655
4.01
N7N6
RtprotoLS
652
4.01
N3N2
RtprotoLS
651
4.01
N3N1
RtprotoLS
663
4.02
N6N4
RtprotoLS
661
4.02
N4N6
RtprotoLS
662
4.02
N6N7
rtprotoLS
660
4.02
N4N3
Nous remarquons qu’à la quatrième seconde (4 .00 s) le trafic change de route pour prendre N3 N4 à destination de N8. l. Rétablissement du lien n5n8 A la cinquième (5s) seconde le lien n5n8 se rétablit et les mises à jour de link state du rétablissement de lien sont envoyés aux différents nœuds. Le tableau 5 montres quelques détails. Tableau 5 :
rétablissement du lien N5n8
Protocole
Numéro des paquets
Temps (ms)
nœuds
rtproto
874
5.00
N5n3
rtproto
876
5.00
N5n8
rtproto
878
5.00
N8n7
rtproto
879
5.00
N8n5 14
Nous remarquons qu’avec le protocole à état de lien la convergence est très rapide. 2.2 Routage et contrôle de congestion TCP
La figure suivante illustre la configuration du TP3 :
Figure 10 : rip
15
3. Chapitre 3 : Evaluation des performances introduction Il est très important de vérifier les performances d’un réseau ce qui nous amène à utiliser l’outils Xgraph dans ce travail pour évaluer les performances de réseau avec le simulateur NS2 (network simulator 2). Nous allons dans un premier temps commenter les composantes du script donné dans le TP3, ensuite modifier le script pour visualiser le scenario avec Nam, expliquer certaines procédure du script et enfin l’exécution du script avec ns. Le commentaire du script étant fait dans le code du programme « TP3 .tcl », nous passons à l’explication des procédures et l’exécution du script dans ce compte rendu. a. Attach-expo-traffic [1] La première ligne ci-dessous déclare les objets générateurs de trafic : Proc attach-expoo-traffic { node sink burst idle rate }
b. Record
16
c. Exécution du script Nous commentons les trois figures ci-dessous pour expliquer les différents changements dans les courbes. La figure 11 illustre la sortie de la courbe 1 avec le temps record 0.5 seconde.
Figure 11 :
Courbe 1
17
La figure 12 illustre les sorties de la courbe 2 avec un temps record à 1 seconde.
Figure 12 : courbe 2
La figure 13 illustre la sortie de la courbe 3 avec un record de 0.1 seconde
18
Figure 13 :
courbe3
Conclusion générale En terme de ce travail nous avons fait la découverte d’un nouveau simulateur NS2 en explorant ces fonctionnalités de base, nous avons aussi simulé quelques protocoles tout en étudiant les fonctionnements de ces derniers. Bien que soit la première utilisation de ce simulateur, nous avons sans doute rencontré des difficultés dans la programmation mais aussi dans l’interprétation des courbes. Ce qui concerne l’installation nous l’avions mené sans aucune difficulté sous une distribution Ubuntu 14.04. Nous avons aussi exploré quelques fonctionnalités des réseaux sans fil durant nos recherches, nous nous intéresserons à ce sujet qui est très pertinent.
19
Bibliographie et Webographie [1] Kevin Fall ,NS-Doc ,2011 [2] Simulation réseau avec NS2,Nader Mbarek
20
View more...
Comments