Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
NS2
A. RACHEDI TP-NS2 1
$ns at 110.0 ″finish″
Où duplex-link indique que le lien est bidirectionnel et pour utiliser un lien directionnel
il suffit de remplacer cette option par « simplex-link ». De plus, 10 ms représente le délai
de propagation et 10 Mb la capacité du lien de communication.
Dans NS2, la sortie de la file d’attente du nœud est conçue comme partie intégrante du
lien de communication. Par conséquent, la déclaration du lien, nécessite de définir la
méthode utilisée pour la gestion de la file d’attente. Dans cet exemple, nous avons utilisé
l’option « DropTail » qui consiste à supprimer tous les paquets en cas de débordement de
la file. Il existe d’autres mécanismes de gestion de la file sur NS2 comme : RED
(Random Early Discard), FQ (Fair Queuing), DRR (Deficit Round Robin), SFQ
(Stochastic Fair Queuing), etc.
La taille du buffer de la file est par défaut fixée à 50. Cependant, nous pouvons attribuer
une autre valeur comme suit :
$ns set queue-limit $n0 $n2 20
Remarque :
Toutes les valeurs par défaut sous NS2 sont déclarées dans le fichier nommé « ns-default.tcl »
La déclaration de tous les liens de la topologie réseau définis dans la figure précédente est
comme suit :
A. RACHEDI TP-NS2 2
protocole utilisé par l’application FTP est le protocole TCP, mais celui qui est utilisé par
l’application CBR est UDP.
Tout d’abord, il faut créer un agent pour chaque protocole TCP et UDP. Ensuite, il faut associer
les applications aux agents appropriés.
# Setup TCP connection
set tcp [new Agent/TCP]
$ns attach-agent $n0 $tcp
set sink [new Agent/TCPSink]
$ns attach-agent $n4 $sink
$ns connect $tcp $sink
$tcp set fid_ 1
$tcp set packetSize 512
# Setup FTP over TCP connection
set ftp [new Application/FTP]
$ftp attach-agent $tcp
A. RACHEDI TP-NS2 3
Une fois que nous avons terminé la définition du scénario de simulation, nous exécutons la
simulation à l’aide de la commande « ns nomscenario.tcl ».
Vous pouvez récupérer le fichier tcl qui décrit ce scénario nommé « scen-1.tcl » sur ma page
web.
Dans cette partie, nous allons simuler un scénario de trois nœuds mobiles distribués dans une
surface de 500x400 m2, comme sur la figure suivante :
Initialement, la position des nœuds 0, 1 et 2 est (5, 5, 0), (490, 285, 0) et (150, 240, 0)
respectivement. Cependant, après 10 secondes de simulation, le nœud 0 commence à se déplacer
vers la position (250, 250, 0) à la vitesse de 3 m/sec. Ensuite, à 20 secondes de la simulation, le
nœud 1 commence à se déplacer vers la position (45, 285, 0) à la vitesse de 5 m/sec. Le nœud 2 à
10 secondes de la simulation commence à se déplacer vers la position (480, 300, 0) avec une
vitesse de 5 m/sec.
De plus, le temps de simulation est de 150 sec et le flux TCP entre le nœud 0 et le nœud 1
commence 10 secondes après le lancement de la simulation.
Les paramètres de base de la simulation dans les différents niveaux sont les suivants :
# Define options
set val(chan) Channel/WirelessChannel ;# channel type
set val(prop) Propagation/TwoRayGround ;# radio-propagation model
set val(netif) Phy/WirelessPhy ;# network interface type
set val(mac) Mac/802_11 ;# MAC type
set val(ifq) Queue/DropTail/PriQueue ;# interface queue type
set val(ll) LL ;# link layer type
set val(ant) Antenna/OmniAntenna ;# antenna model
set val(ifqlen) 50 ;# max packet in ifq
set val(nn) 3 ;# number of mobilenodes
set val(rp) AODV ;# routing protocol
set val(x) 500 ;# X dimension of topography
set val(y) 400 ;# Y dimension of topography
A.set
RACHEDI
val(stop) 150 TP-NS2;# time of simulation end 4
La configuration des nœuds mobiles avec les différents paramètres est comme suit :
Le déplacement d’un nœud de sa position actuelle à une autre position est effectué comme suit :
# Generation of movements
$ns at 10.0 "$node_(0) setdest 250.0 250.0 5.0"
$ns at 15.0 "$node_(1) setdest 45.0 285.0 5.0"
$ns at 110.0 "$node_(0) setdest 480.0 300.0 5.0"
Le format des fichiers traces dans le cas des réseaux mobiles Ad hoc n’est pas le même que celui
du réseau local que nous avons vu dans la première partie.
- Le premier champ est une lettre qui peut être : r, s, f, D qui représente les états
suivants : réception, transmission (sent), retransmission (forwarded) et suppression
(dropped) respectivement. De plus, la première lettre peut être M pour indiquer la
position ou le mouvement du nœud à l’instant donné.
- Le deuxième champ représente le temps
- Le troisième champ désigne le numéro du nœud
A. RACHEDI TP-NS2 5
- Le quatrième champ indique le niveau du paquet qui peut être : MAC, AGT
(niveau transport), RTR (routage du paquet), IFQ (pour indiquer l’interférence de
priorité au niveau de la file d’attente, ce qui génère la suppression du paquet).
- Ensuite, c’est le numéro de séquence du paquet
- …etc
A. RACHEDI TP-NS2 6