This shows you the differences between two versions of the page.
isrm:laboratoare:02 [2018/01/19 18:17] dragos.niculescu |
isrm:laboratoare:02 [2019/02/28 20:45] (current) mbarbulescu |
||
---|---|---|---|
Line 160: | Line 160: | ||
<code gnuplot> | <code gnuplot> | ||
set yrange [ 0:120 ] | set yrange [ 0:120 ] | ||
- | plot 'battery.dat' using 1:($2*1000):($4*1000)\ | + | plot 'battery.dat' using 1:($2*1000):($3*1000)\ |
w yerrorbars ls 1 | w yerrorbars ls 1 | ||
</code> | </code> | ||
Line 175: | Line 175: | ||
# Curba teoretică | # Curba teoretică | ||
P(x) = 1.53**2 * x/(5.67 + x)**2 * 1000 | P(x) = 1.53**2 * x/(5.67 + x)**2 * 1000 | ||
- | plot 'battery.dat' using 1:($2*1000):($4*1000) \ | + | plot 'battery.dat' using 1:($2*1000):($3*1000) \ |
title "Power" w yerr ls 2 , \ | title "Power" w yerr ls 2 , \ | ||
P(x) title 'Theory' w lines ls 1 | P(x) title 'Theory' w lines ls 1 | ||
Line 203: | Line 203: | ||
- | * **Exercițiul 1** realizați folosind ''gnuplot'' graficul din laboratorul 1. Indicați semnificațiile axelor și legenda. Salvați imaginea în format ''png/svg'', și scriptul pentru restaurarea imaginilor. | + | **Exercițiul 1** realizați folosind ''gnuplot'' graficul din laboratorul 1. Indicați semnificațiile axelor și legenda. Salvați imaginea în format ''png/svg'', și scriptul pentru restaurarea imaginilor. |
* Exemplu<code gnuplot> | * Exemplu<code gnuplot> | ||
plot 'out.tr' using 1:2 t "TCP" with lp, \ | plot 'out.tr' using 1:2 t "TCP" with lp, \ | ||
Line 255: | Line 255: | ||
* {{:isrm:laboratoare:02:lab02qsize.png?300|}} | * {{:isrm:laboratoare:02:lab02qsize.png?300|}} | ||
************************/ | ************************/ | ||
- | - **Exercițiul 2**: În laboratorul 1, folosiți <code tcl>$tcp attach [open tcp.tr w] | + | |
+ | **Exercițiul 2**: În laboratorul 1, folosiți <code tcl>$tcp attach [open tcp.tr w] | ||
$tcp trace cwnd_ | $tcp trace cwnd_ | ||
$tcp trace rtt_ </code> | $tcp trace rtt_ </code> | ||
Line 344: | Line 345: | ||
* detaliu http://www.isi.edu/nsnam/ns/doc/node186.html | * detaliu http://www.isi.edu/nsnam/ns/doc/node186.html | ||
- | - Exercițiul 3: modificați ''simple-wireless.tcl'' din Marc Greis sec IX pentru | + | **Exercițiul 3**: modificați ''simple-wireless.tcl'' din Marc Greis sec IX pentru |
* a utiliza noul format de trace ( cu ''$ns_ use-newtrace'') | * a utiliza noul format de trace ( cu ''$ns_ use-newtrace'') | ||
* a monitoriza evenimentele de la nivelele 2 și 4 (agent și MAC) | * a monitoriza evenimentele de la nivelele 2 și 4 (agent și MAC) | ||
Line 362: | Line 363: | ||
* comparați pierderile între cadrele ACK și RTS (( ACK=0 pierderi, RTS=14 pierderi. Dacă nodurile sunt în apropiere, conversația RTS-CTS-Date-ACK se desfășoară cu bine, nu se pierd ACK-uri. La distanță mare, destinația nu răspunde la RTS, deci sunt pierdute, și nu se mai ajunge la ACK.)) | * comparați pierderile între cadrele ACK și RTS (( ACK=0 pierderi, RTS=14 pierderi. Dacă nodurile sunt în apropiere, conversația RTS-CTS-Date-ACK se desfășoară cu bine, nu se pierd ACK-uri. La distanță mare, destinația nu răspunde la RTS, deci sunt pierdute, și nu se mai ajunge la ACK.)) | ||
* justificați diferențele | * justificați diferențele | ||
- | - dezactivați RTS/CTS folosind <code>Mac/802_11 set RTSThreshold_ 3000</code> și comparați performanța TCP cu cazul precendent. Sugestie: plotați evoluția în timp a numerelor de secvență ((Numărul de secvență în timp este de fapt throughput. RTS-CTS introduce un overhead, de fapt timp pierdut, care duce la un throughput redus. )) | + | |
- | * <code bash> cat simple.tr | grep '^r' | grep AGT | grep tcp | grep -v ack | awk '{print $3, $47}' </code> | + | **Exercițiu 4** dezactivați RTS/CTS folosind <code>Mac/802_11 set RTSThreshold_ 3000</code> și comparați performanța TCP cu cazul precendent. Sugestie: plotați evoluția în timp a numerelor de secvență. Numărul de secvență în timp este de fapt throughput. RTS-CTS introduce un overhead, de fapt timp pierdut, care duce la un throughput redus. |
- | * {{:isrm:laboratoare:02:lab02tcp_rts.png?300|}} | + | * <code bash> cat simple.tr | grep '^r' | grep AGT | grep tcp | grep -v ack | awk '{print $3, $47}' </code> |
+ | * {{:isrm:laboratoare:02:lab02tcp_rts.png?300|}} |