Ns2 Szimulál egy ethernet LAN-t n csomópont használatával, és több forgalmi diagram torlódási ablakot állít be a különböző forráscélokhoz?
// ns-2 szkript egy n csomóponttal rendelkező Ethernet LAN szimulálására.
// A forgalmi diagram torlódási ablaka különbözőre lesz beállítva
// forrás-cél párok.
// Importálja a szükséges csomagokat.
import ns_lib;
import tcl_lib;
// Hálózat létrehozása.
sim_time 100s beállítása; // Szimulációs idő másodpercben
a csomópontok száma 10; // A csomópontok száma a hálózatban
állítsa be ifq 1000; // Az interfész várólista mérete csomagokban
for {set i 0} {$i <$num_nodes} {incr i} {
# Hozzon létre egy csomópontot.
set node($i) [új ügynök/TCP forrás];
# Csatlakoztassa a csomópontot a hálózathoz.
$ns csatoló ügynök $node($i)
# Állítsa be a csomópont MAC-címét.
$node($i) beállítja a MAC
# Állítsa be a csomópont IP-címét.
$node($i) set addr_
# Állítsa be a csomópont torlódási ablakának méretét.
$node($i) cwnd_ 20
}
for {set i 0} {$i <$num_nodes} {incr i} {
# Állítsa be a forrásforgalmat minden csomóponthoz.
$node($i) beállítja a forgalomtípus CBR-t
$node($i) beállítja a kezdési_időt_ 0s
$node($i) cbr_rate_ beállítása 100 Kbps
$node($i) rtt_ 50ms
# Állítsa be a cél IP-címét minden forráshoz.
$node($i) beállítja a packetDest_ 10.$i.2.1
# Állítsa be a nyelő forgalmát minden csomóponthoz.
set sink($i) [új ügynök/Null]
$sink($i) set addr_ 10.$i.2.1
$ns csatolóügynök:$sink($i)
}
set switch [új CMUcsma]
for {set i 0} {$i <$num_nodes} {incr i} {
$ns connect $node($i) $switch
}
$ns 0.1-nél "$node(0) kezdi a küldést"
$ns at 1.1 "$node(1) kezdi a küldést"
$ns a 2.1-nél "$node(2) kezdi a küldést"
$ns a 3.1-nél "$node(3) elkezdi küldeni"
$ns a 4.1-nél "$node(4) kezdi a küldést"
$ns 5.1-nél "$node(5) kezdi a küldést"
$ns a 6.1-nél "$node(6) kezdi a küldést"
$ns a 7.1-nél "$node(7) kezdi a küldést"
$ns a 8.1-nél "$node(8) kezdi a küldést"
$ns a 9.1-nél "$node(9) kezdi a küldést"
$ns fut
telek beállítása [új Plot/Xgraph -width 640 -Height 480]
$plot set stílussávok
$plot set xlabel "Idő (s)"
$plot ylabel "torlódási ablak mérete"
for {set i 0} {$i <$num_nodes} {incr i} {
$plot add $node($i) cwnd_
}
for {set i 0} {$i <$num_nodes} {incr i} {
$plot add legenda $node($i)
}
$plot automatikus skálázás bekapcsolva
$plot mentés graph.png
```
Konfigurálja a forgalmi forrásokat és elnyelőket.
Hozza létre az Ethernet-kapcsolót.
A kapcsoló csatlakoztatása a csomópontokhoz.
Futtassa a szimulációt.
Az eredmények ábrázolása
Válassza ki a nyomtatási stílust.
Állítsa be az X és Y tengely címkéit.
Nyomok hozzáadása a különböző csomópontokhoz a torlódási ablakhoz.
Állítsa be a cselekmény jelmagyarázatát.
Állítsa be a diagram automatikus léptékét.
Mentsd el a cselekményt PNG-képként.