Differences

This shows you the differences between two versions of the page.

Link to this comparison view

isrm:laboratoare:new:09 [2020/04/11 16:45]
vlad.traista [[01] Echitatea cu CW fix]
isrm:laboratoare:new:09 [2022/05/09 09:16] (current)
mbarbulescu [[Bonus] Analiza]
Line 3: Line 3:
 ===== Bibliografie recomandată ===== ===== Bibliografie recomandată =====
  
-TODO+  * [[https://​www.cse.wustl.edu/​~jain/​atmf/​ftp/​af_fair.pdf|Throughput Fairness Index: An Explaination (slides)]] 
 +  * {{:​isrm:​laboratoare:​new:​a_quantitative_measure_of_fairness_and_d.pdf|A quantitative measure of fairness and discrimination for resource allocation in shared computer systems - R. Jain, D. Chiu, W. Hawe, 1984}}
  
 ===== Echitate(Fairness) ===== ===== Echitate(Fairness) =====
Line 38: Line 39:
 ==== [00a] Pregătirea laboratorului ==== ==== [00a] Pregătirea laboratorului ====
  
-Dacă vreți să creați folder nou pe calculatoarele voastre:+<note important>​ 
 +Pe [[:​isrm:​mv|mașina virtuală]] aveți tot ce trebuie în ''/​home/​student/​ns-3-dev''​. ​
  
-<code bash> +Dacă lucrați pe alt dispozitiv trebuie să rulați comenzile:
-git clone https://​gitlab.com/​b12mihai1/​ns-3-dev.git ~/​ns-3-dev +
-cd ~/​ns-3-dev +
-git checkout -b isrm_2020 remotes/​origin/​isrm_2020 +
-git submodule init +
-git submodule update --remote --merge +
-git submodule foreach git pull origin master +
-./waf configure --build-profile=debug --enable-examples --enable-tests && ./waf build -j4 +
-</​code>​ +
- +
-Dacă folosiți [[:​isrm:​mv|mașina virtuală]]:+
  
 <code bash> <code bash>
-student@isrm-vm:​~$ ​ cd ~/ns-3-dev+student@isrm-vm-2020:~$ git clone https://​gitlab.com/​nsnam/​ns-3-dev.git 
 +student@isrm-vm-2020:~$ cd ~/ns-3-dev 
 +student@isrm-vm-2020:​~/​ns-3-dev$ git checkout -b ns-332-rel ns-3.32 
 +student@isrm-vm-2020:​~$ cd ~/​ns-3-dev/​examples 
 +student@isrm-vm-2020:​~/​ns-3-dev/​examples$ git clone https://​github.com/​isrm-lab/​ns3-labs.git 
 +student@isrm-vm-2020:​~$ cd ~/​ns-3-dev 
 +student@isrm-vm-2020:​~$ ./waf configure --build-profile=debug --enable-examples --enable-tests 
 +student@isrm-vm-2020:​~$ ./waf build -j4
 </​code>​ </​code>​
 +</​note>​
  
-Verificați că sunteți pe branch-ul ''​isrm_2020''​ din remote-ul https://​gitlab.com/​b12mihai1/​ns-3-dev.git:+Pentru a lansa aplicatia de Jupyter Notebook, rulati urmatoarea comanda:
  
 <code bash> <code bash>
-student@isrm-vm:~/ns-3-dev$ git remote -v +student@isrm-vm-2020:~$ jupyter-notebook
-origin https://​gitlab.com/​b12mihai1/​ns-3-dev.git (fetch) +
-origin https://​gitlab.com/​b12mihai1/​ns-3-dev.git (push) +
- +
-student@isrm-vm:~/ns-3-devgit branch ​-vv +
-* isrm_2020 5993ca379 [origin/​isrm_2020] fix submodules to have https instead of ssh +
-  master ​   da1b41ed1 [origin/​master] tcp: Ensure that congestion state is set after every notification +
-</​code>​ +
- +
-Rulați următoarele comenzi pentru update-ul submodului din ''​examples/​ns3-labs'':​ +
- +
-<code bash> +
-student@isrm-vm:​~/​ns-3-dev$ git submodule update --remote --merge +
-</​code>​ +
- +
-Dacă cea de mai sus nu merge alternativ puteți încerca: +
- +
-<code bash> +
-student@isrm-vm:​~/​ns-3-dev$ git submodule foreach git pull origin master+
 </​code>​ </​code>​
  
Line 100: Line 82:
 Rulati scriptul pentru 10 noduri si observati valorile celor 2 indecsi de echitate pentru ferestre CW fixe de 7 vs 4095. Comentați rezultatul. Rulati scriptul pentru 10 noduri si observati valorile celor 2 indecsi de echitate pentru ferestre CW fixe de 7 vs 4095. Comentați rezultatul.
  
-Comparați echitatea pe termen scurt (1s), mediu(5s), lung (50s) pentru ferestrele CW fixe de 7 vs 4095. Simularea primește parametrul ''​simulationTime''​ pe care îl puteți ajusta. ​+Comparați echitatea pe termen scurt (5s), mediu(20s), lung (50s) pentru ferestrele CW fixe de 7 vs 4095. Simularea primește parametrul ''​simulationTime''​ pe care îl puteți ajusta. ​
  
-Pentru ferestre fixe CW = 7, 31, 511, 4095, realizați patru grafice care indică echitatea în funcție de numărul de clienți ''​2..20''​. Fiecare grafic conține 3 curbe pentru duratele de rulare (1s, 5s, 50s).+Pentru ferestre fixe CW = 7, 31, 511, 4095, realizați patru grafice care indică echitatea în funcție de numărul de clienți ''​2..20''​. Fiecare grafic conține 3 curbe pentru duratele de rulare (5s, 20s, 50s).
  
 Cum explicați tendințele de creștere/​scădere a echității cu: numărul de clienți, dimensiunea ferestrei, scara de timp considerată?​ Cum explicați tendințele de creștere/​scădere a echității cu: numărul de clienți, dimensiunea ferestrei, scara de timp considerată?​
Line 109: Line 91:
 Echitatea este determinată de urmatorii factori: Echitatea este determinată de urmatorii factori:
   * coliziuni   * coliziuni
-  * opulație: mai mulți vorbitori înseamnă mai multe șanse de coliziune+  * populație: mai mulți vorbitori înseamnă mai multe șanse de coliziune
   * fereastra prea mică duce la mai multe coliziuni ​   * fereastra prea mică duce la mai multe coliziuni ​
   * timp: pe termen lung, toți participanții au relativ aceleași șanse de a obține mediul sau de a intra în coliziune   * timp: pe termen lung, toți participanții au relativ aceleași șanse de a obține mediul sau de a intra în coliziune
 </​note>​ </​note>​
  
-==== [02] Echitatea cu CW variabila ​(802.11 standard) ====+==== [02] Echitatea cu CW variabil ​(802.11 standard) ====
  
-Pentru 802.11 standard cu dimensiunea ferestrei CW variabila ''​minCW=15,​ maxCW=1023'',​ realizați un grafic care indică echitatea în funcție de numărul de clienți ''​2..20''​. Graficul conține 3 curbe pentru duratele de rulare (1s, 5s, 50s).+Pentru 802.11 standard cu dimensiunea ferestrei CW variabila ''​minCW=15,​ maxCW=1023'',​ realizați un grafic care indică echitatea în funcție de numărul de clienți ''​2..20''​. Graficul conține 3 curbe pentru duratele de rulare (5s, 20s, 50s).
  
-Cum este echitatea față de cazurile cu fereastră fixă? De ce? ( o exprimare folclorica dinn 802.11, "Rich get richer, poor get poorer"​)+Cum este echitatea față de cazurile cu fereastră fixă? De ce? ((o exprimare folclorica dinn 802.11, "Rich get richer, poor get poorer"​))
  
 Cum se poate îmbunătăți echitatea pentru configurația dată? ((Renunțăm la capacitate pt echitate)) Modificați si rulați. Cum se poate îmbunătăți echitatea pentru configurația dată? ((Renunțăm la capacitate pt echitate)) Modificați si rulați.
-    * Utilizarea RTS/CTS duce la creșterea echității?​ De ce? + 
-  ​* ​Ce se schimbă atunci când în loc de N fluxuri upstream, avem de exemplu 2 fluxuri ​downstream ​și N-2 upstream? (( WiFi produce o oarecare echitate între vorbitori, deci cele 2 fluxuri ​downstream ​pentru care AP este vorbitor vor primi împreună cât un flux upstream))+==== [03] Echitatea cu CW variabil (802.11 standard) cu RTS/CTS ==== 
 + 
 +Pentru 802.11 standard cu dimensiunea ferestrei CW variabila ''​minCW=15,​ maxCW=1023''​ si cu RTS/CTS activat, realizați un grafic care indică echitatea în funcție de numărul de clienți ''​2..20''​. Graficul conține 3 curbe pentru duratele de rulare (5s, 20s, 50s). 
 + 
 +Utilizarea RTS/CTS duce la creșterea echității?​ De ce? 
 + 
 +==== [Bonus 1] Analiza mix downlink/​uplink ==== 
 + 
 +Ce se schimbă atunci când în loc de N fluxuri upstream, avem de exemplu 2 fluxuri ​downlink ​și N-2 uplink? (( WiFi produce o oarecare echitate între vorbitori, deci cele 2 fluxuri ​downlink ​pentru care AP este vorbitor vor primi împreună cât un flux uplink))
   * Rezultate ​   * Rezultate ​
   * Echitatea Jain pentru CW = 31   * Echitatea Jain pentru CW = 31
Line 129: Line 119:
   * Echitatea Jain pentru 802.11 cu RTS   * Echitatea Jain pentru 802.11 cu RTS
  
 +<​note>​Acest exercitiu presupune modificari in scriptul de ns3.</​note>​
 +
 +==== [Bonus 2] TCP traffic ====
 +
 +Realizați exercițiul 2 cu trafic TCP (se înlocuiește ''​ns3::​UdpSocketFactory''​ în codul simulării cu ''​ns3::​TcpSocketFactory''​ sau puteți urmări funcția ''​setup_tcp_flow''​ din ''​lab5.cc''​
isrm/laboratoare/new/09.1586612755.txt.gz · Last modified: 2020/04/11 16:45 by vlad.traista
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