Laboratorul 12

Exemplu de colocviu

  • trebuie să luați minimum 50% cumulativ în colocvii pentru a promova cursul
  • colocviile valorează 15%, respectiv 20% din nota finală
    • un colocviu durează 45 minute, cu semigrupa
  • aveți acces la toate laboratoarele și scripturile folosite în timpul semestrului
  • primiți un script, sau vi se cere să implementați un script nou pe baza celor existente
    • submiteți rezultatele pe hârtie, sau electronic
    • indicați modificările, și modul de rulare
    • interpretarea rezultatelor (aici sunt majoritatea punctelor)

Scenariu de simulare

Mulți producători oferă posibilitatea de a avea mai multe SSID-uri pe un AP cu un singur card fizic, operând desigur pe același canal. Se vor transmite beacon-uri și se vor accepta autentificări/asocieri pe amblele SSID ca și cum ar fi separate, deși fizic este un singur card. Se consideră situația în care operăm doar în 802.11b

  • beaconul de 802.11b(și g/n) se transmite la 1Mbps, și este de minim 150 octeți
  • Pachetele de date (UDP sau TCP) se transmit la cea mai buna dataRate_ - 11Mbps
  • beaconul folosește broadcast (fără SIFS+ACK), dar folosiți un script de unicast pentru aproximare
  • AP-ul este configurat să transmită beacon la un interval de 100ms

Se cere:

  1. (10%) care este durata unui beacon?
  2. (5%) câte beacon-uri pe secundă s-ar putea transmite fără contenție?
  3. (5%) ce debit în bps folosește un SSID?
  4. (10%) ce debit de TCP aș putea obține de la AP-ul meu 11b, 11Mbps în absența oricăror beacon-uri?
  5. (10%) eu și vecinul operăm pe același canal, și fiecare avem câte 3 SSID-uri (intern, prieteni, DMZ). Se mai văd încă alte 4 SSID-uri unice în bloc, toate foarte aproape și pe același canal. Ce throughput de TCP pot spera să obțin în condiții optime: dacă sunt aproape de AP-ul meu, nu mai e nici un alt client în aer?
  6. (40%) plot manual(cu pixul) sau gnuplot: TCP Throughput al unei stații în funcție de (nr. SSID=1..20). Se va ține de cont de următorul lucru:
    • Beacon se trimite la 100ms interval, cu cea mai mica dataRate_ suportată de 802.11b: 1 Mbps
    • Pachetele de date TCP se trimit la cea mai mare dataRate_ suportată de 802.11b: 11 Mbps
  7. (20%) interpretare. Care este relația matematică între capacitatea disponibilă și numărul de rețele create? Puteți folosi funcția fit din gnuplot, sau fit manual.

Rezolvare

  1. se folosește scriptul infra.tcl din lab 2, 3 în care se modifică 11b, dataRate 1Mbps
    •  ns ./infra.tcl -run_tcp 0 -nn 2 -packetSize 150 -sendingRate 1Mbps 
    • rezultă 4000 packete în 10s, adică 2.5ms/beacon
  2. 400pps
  3. 150*8biți*10beacons/sec = 0.012Mbps
     ns ./infra.tcl -run_tcp 0 -nn 2 -packetSize 150 -sendingRate 0.012Mbps 

    răspunde 10pps

  4. cu 11b/11Mbps
    ns ./infra.tcl -run_tcp 1 -nn 2 -packetSize 1460

    obținem 4.15Mbps.

  5. un SSID emite 10 beacons/second, deci 25ms/second, adică 2.5% din capacitate. În cazul ideal, pierd liniar cu numărul de SSID vizibile, câte 2.5%. Pentru 3 eu, 3 vecinul, 4 altele = 10 ⇒ 25% pierderi, deci 3.1Mbps în cel mai bun caz.
  6. se modifică infra.tcl pentru a crea această topologie. Vezi deasemenea multirate.tcl (lab 11) pentru a seta noduri cu MCS diferit
    • (idee: 10%)
      • nodurile 3..(nn-1) → 2 emulăm beacon-uri la 1Mbps, UDP de 150bytes, 10pps (0.012Mbps)
      • nodurile 1 → 0 la 11Mbps, TCP cu 1460
    • (descriere modificări: 10%)
       
      > # setarea MCS diferențiat pentru noduri:     
      > 	if { $i <= 1} { 
      > 	    Mac/802_11 set dataRate_	11Mb ;# nodurile 0 și 1	
      > 	} else { 
      > 	    Mac/802_11 set dataRate_	1Mb  ;# nodurile 2..(nn-1)	
      > 	}
      > 	$ns_ node-config -macType $val(mac)
      ...
      > # planificarea a 1 flux TCP 0->1, nn-2 fluxuri UDP/150/10pps=12Kbps 
      > 
      > for {set i 3} {$i < [ expr $val(nn) - 1]} {incr i} { 
      >     attach-cbr-traffic $i 2 150 0.012Mbps $val(start0) $val(stop0) $i ;# emulare beaconuri
      >     puts "attached $i->2"
      313a314
      > attach-tcp-traffic 1 0 1460 $val(start0) $val(stop0) 1001     ;TCP
    • (cum rulez: 10%)Se rulează
      x=4; while [ $x -le 23 ]; do echo -n "$(($x-3)) "; ns ./infra1.tcl -nn $x | grep 'Throughput 1001'; x=$(($x+1)); done | tee b 
    • x=4 înseamnă 0→1 TCP, 3→2 beaconuri, rezultă 4.15Mbps
    • (grafic cu pixul: 10% )
      gnuplot> plot 'b' using 1:4 w l 

      … aproape dreaptă. La 10 SSID-uri rezultă cam 3Mbps, aproape de cât estimează și analiza.

  7. fit manual: se observă dependența lineară și se confirmă analiza de la p2. În gnuplot
    > f(x) = a*x + b
    > fit f(x) 'b' using 1:4 via a,b
    > plot f(x) t 'fit', 'b' using 1:4 t 'data'

    Ce valori rezultă pentru a și b, și ce semnificație au?

isrm/laboratoare/12.txt · Last modified: 2019/05/18 11:14 by mbarbulescu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0