Ns2 Simuler un réseau local Ethernet à l'aide de n nœuds et définir plusieurs fenêtres de congestion de tracé de trafic pour différentes destinations sources ?
// Script ns-2 pour simuler un LAN Ethernet avec n nœuds.
// La fenêtre de congestion du tracé de trafic sera définie pour différents
// paires source-destination.
// Importez les packages nécessaires.
importer ns_lib ;
importer tcl_lib ;
// Créer un réseau.
définissez sim_time sur 100 s ; // Temps de simulation en secondes
définir num_nodes 10 ; // Nombre de nœuds dans le réseau
définir ifq 1000 ; // Taille de la file d'attente de l'interface en paquets
pour {set i 0} {$i <$num_nodes} {incr i} {
# Créez un nœud.
set node($i) [nouvelle source Agent/TCP] ;
# Attachez le nœud au réseau.
$ns attach-agent $node($i)
# Définir l'adresse MAC du nœud.
$node($i) définit MAC
# Définir l'adresse IP du nœud.
$node($i) set addr_
# Définir la taille de la fenêtre de congestion du nœud.
$node($i) défini cwnd_ 20
}
pour {set i 0} {$i <$num_nodes} {incr i} {
# Définir le trafic source pour chaque nœud.
$node($i) définit traffic_type CBR
$node($i) définit start_time_ 0s
$node($i) définit cbr_rate_ 100 Kbps
$node($i) définit rtt_ 50 ms
# Définissez l'adresse IP de destination pour chaque source.
$node($i) set packetDest_ 10.$i.2.1
# Définir le trafic récepteur pour chaque nœud.
définir le récepteur ($ i) [nouvel agent/Null]
$évier($i) définir l'adresse_ 10.$i.2.1
$ns attach-agent $sink($i)
}
régler le commutateur [nouveau CMUcsma]
pour {set i 0} {$i <$num_nodes} {incr i} {
$ns connecter $node($i) $switch
}
$ns à 0,1 "$node(0) commence à envoyer"
$ns à la version 1.1 "$node(1) commence à envoyer"
$ns à la version 2.1 "$node(2) commence à envoyer"
$ns à la version 3.1 "$node(3) commence à envoyer"
$ns à la version 4.1 "$node(4) commence à envoyer"
$ns à 5.1 "$node(5) commence à envoyer"
$ns à 6.1 "$node(6) commence à envoyer"
$ns à la version 7.1 "$node(7) commence à envoyer"
$ns à la version 8.1 "$node(8) commence à envoyer"
$ns à la version 9.1 "$node(9) commence à envoyer"
$ns courir
définir le tracé [nouveau Plot/Xgraph -largeur 640 -hauteur 480]
$plot définit les barres de style
$plot set xlabel "Heure(s)"
$plot set ylabel "Taille de la fenêtre de congestion"
pour {set i 0} {$i <$num_nodes} {incr i} {
$plot ajouter $node($i) cwnd_
}
pour {set i 0} {$i <$num_nodes} {incr i} {
$plot ajouter une légende $node($i)
}
$plot définir la mise à l'échelle automatique
$plot enregistrer le graphique.png
```
Configurer les sources et les récepteurs de trafic.
Créez le commutateur Ethernet.
Attachez le commutateur aux nœuds.
Exécutez la simulation.
Tracer les résultats
Sélectionnez le style de tracé.
Définissez les étiquettes des axes X et Y.
Ajoutez des traces pour différents nœuds pour tracer la fenêtre de congestion.
Définissez la légende du tracé.
Définissez l'échelle automatique pour le tracé.
Enregistrez le tracé sous forme d'image PNG.