Differences

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

Link to this comparison view

isrm:laboratoare:03 [2019/03/05 21:29]
mbarbulescu
isrm:laboratoare:03 [2019/11/29 08:53] (current)
dragos.niculescu [Materiale ajutătoare]
Line 1: Line 1:
-==== Laboratorul 3 ==== +====== Laboratorul 3 ====== 
-=== Capacitatea WiFi ===+ 
 +===== Materiale ajutătoare ===== 
 + 
 +Teorie: 
 +  * Despre modulațiile DSSS-CCK și OFDM - quick intro bun [[http://​www.rfwireless-world.com/​Terminology/​CCK-vs-DSSS-vs-OFDM.html|aici]] 
 +  * Despre comuncația la lower level MAC - quick intro [[https://​www.cwnp.com/​802.11-mac-series-ndash-basics-mac-architecture-ndash-part-1-3/​|aici]] 
 +  * studiu similar pentru a/g/n/ac, agregare [[http://​80211notes.blogspot.com/​2014/​03/​phy-rate-and-udp-throughput.html|80211notes]] 
 + 
 +===== Concepte (rezumat) ===== 
 +  * Modulație PHY - Modulația este un proces folosit în telecom prin care modificăm parametrii unui semnal cu scopul de a transmite informații. Dacă la radio am auzit de AM (modularea în amplitudine a semnalului) sau FM (modularea în frecvență a semnalului) în WiFi întâlnim preponderent DSSS (Direct Sequence Spread Spectrum), CCK (Complementary Code Keyring) și, cea mai modernă, inclusiv în tehnologia 802.11ac și 4G-LTE: OFDM (Orthogonal Frequency Division Multiplexing) 
 +  * Cadrele (frame-urile) în wifi - vă veți tot lovi de conceptele astea fie prin curs, fie prin standard, fie chiar și prin kernelul de Linux: 
 +  * Pachetele ETH/IP/UDP cu care suntem familiari circulă prin WiFi conform figurii de mai jos (valabil pentru orice standard) - în lumea wifi ele poartă numele de MSDU (MAC Service Data Unit) 
 +{{ :​isrm:​laboratoare:​f.png?​500 |}} 
 +  * La nivel MAC (L2) clientții (în standard îi întâlniți sub numele de STA de la stații) comunică cu AP (access point) prin MPDU - MAC Protocol Data Units. Headerul de MAC va conține chestii de interes pentru noi în acest laborator:​ 
 +    * dataRate (sau MCS):  
 +        * la frame-uri de tip "​legacy"​ (802.11a și 802.11b/g) întâlnim valori în Mbps: 
 +            * Uzual pentru 802.11b (2.4 GHz DSSS-CCK): 1, 2, 5.5, 11 Mbps 
 +            * Uzual pentru 802.11g (2.4 GHz ERP-OFDM): 6, 12, 36, 54 Mbps 
 +            * Uzual pentru 802.11a (5 GHz ERP-OFDM): 6, 9, 12, 18, 24, 36, 48, 54 Mbps 
 +         * Acestea sunt valori "​teoretice"​ maxime care pot fi atinse de standardul respectiv  
 +    * **OPȚIONAL**:​ la frame-uri de tip HT/VHT (802.11n/​802.11ac) întâlniți valori de MCS de la 0 la 9 care conțin informații despre schema de modulare (BPSK, QPSK, QAM etc.) și rata de codare 
 +    * duration - durata în microsecunde a semnalului modulat pe aer prin simboluri - cât timp va ține acest device mediul ocupat cu transmiterea pachetului plus timpul pe care acesta îl cere pentru ACK la nivel de wifi (SIFS) 
 +    * CRC - 4 bytes adăugați de stivă pentru validarea MSDU-ului 
 +    * Mai sunt și altele dar nu intră în scopul acestui laborator 
 +    * La nivel PHY: avem PSDU (PLCP Service Data unit) și PPDU (PLCP Protocol Data Unit - o sumă de PSDU-uri) 
 +    * **Algoritmul de acces la mediu în wifi**: 
 +        * DCF (Distributed Coordinated Function) - întâlnită la majoritatea AP-urilor și clienților de 802.11 a/b/g/n, dar și la unele device-uri 802.11ac mai ales de tip Wave1 
 +        * EDCA (Enhanced Distributed Channel Access) - întâlnim de la 802.11ac în sus 
 +        * acestea afectează durata unei tranzacții atomice de transmitere a unui cadru (care nu e doar timpul în microsecunde necesar plasării simboluri PHY pe aer) 
 +    * **Durata de transmitere** a unui cadru wifi cu tehnologia DCF pe aer e suma următoarelor elemente 
 +        * DIFS - DCF Inter Frame Spacing - o valoare care spune device-urilor Wifi așa: dacă mediul e liber pentru un timp egal cu DIFS atunci puteți transmite cadrul vostru 
 +        * Slot time - arbitraj - durate de timp definite de layerul de MAC pentru inter-frame spacing - depinde de tehnologia de PHY 
 +        * transmiterea PPDU-ului pe aer: antet PHY, antet MAC, header IP, header UDP sau TCP, Payload L4 de x octeți, CRC (4 bytes) 
 +        * SIFS - Short Inter Frame Spacing - durata de timp în care mă aștept să primesc ACK la nivel wifi (L2) de la celălalt device că a recepționat corect cadrul 
 +        * ACK - durata de timp ocupată pe aer de cadrul de tip ACK - el e trimis tot cu o modulație (dataRate) în format legacy - de obicei se alege cea mai mică rată pe care o suportă un anumit standard (e.g 6 Mbps pentru 802.11a/g OFDM și 1 Mbps pentru 802.11b DSSS-CCK) 
 +   
 + 
 +===== Scop ===== 
 + 
 +Scopul acestui laborator este de a calcula capacitatea unui canal 802.11 pentru diverse standarde, în condiții ideale.  
 +Vom face o analiză teoretică folosind temporizările,​ randomizările,​ și dimensiunile antetelor din standard, versus estimarea în simulator. Cazurile de interes sunt: 
 +  * 802.11b, 802.11g - PHY în 2.4 GHz, PHY modulat în DSSS-CCK respectiv ERP-OFDM 
 +  * 802.11a - PHY în 5 GHz, PHY modulat în ERP-OFDM  
 +  * cu și fără RTS/CTS 
 +  * trafic de tip UDP și TCP 
 +  * clienți multipli la un AP downlink și uplink 
 + 
 + 
 +===== Capacitatea WiFi ===== 
  
 Scopul acestui laborator este de a calcula capacitatea unui canal 802.11 pentru diverse standarde, în condiții optime. Vom face o analiză teoretică folosind temporizările,​ randomizările,​ și dimensiunile antetelor din standard, versus estimarea în simulator. Cazurile de interes sunt: Scopul acestui laborator este de a calcula capacitatea unui canal 802.11 pentru diverse standarde, în condiții optime. Vom face o analiză teoretică folosind temporizările,​ randomizările,​ și dimensiunile antetelor din standard, versus estimarea în simulator. Cazurile de interes sunt:
Line 8: Line 56:
   * clienți multipli la un AP downlink, uplink   * clienți multipli la un AP downlink, uplink
  
-== Capacitatea ideală teoretică == +====  ​Capacitatea ideală teoretică ​====
  
     * 802.11b Antet PHY de 192biți trimis la MCS=1Mbps ​ {{:​isrm:​laboratoare:​03:​802.11b.phy.preamble.png?​400| }}     * 802.11b Antet PHY de 192biți trimis la MCS=1Mbps ​ {{:​isrm:​laboratoare:​03:​802.11b.phy.preamble.png?​400| }}
-    *  
     * 802.11g Antet PHY de 16us + 24biți trimis la MCS=6Mbps {{:​isrm:​laboratoare:​03:​erp-ofdm.11ag.png?​600| }}        * 802.11g Antet PHY de 16us + 24biți trimis la MCS=6Mbps {{:​isrm:​laboratoare:​03:​erp-ofdm.11ag.png?​600| }}   
     * calculați durata unei tranzacții atomice de transmitere a unui cadru: DIFS, arbitraj, PHY header, MAC header, IP/UDP header, UDP Payload de x octeți, FCS, SIFS, ACK     * calculați durata unei tranzacții atomice de transmitere a unui cadru: DIFS, arbitraj, PHY header, MAC header, IP/UDP header, UDP Payload de x octeți, FCS, SIFS, ACK
Line 31: Line 78:
       * {{:​isrm:​laboratoare:​03:​11g.ovhd.png?​linkonly|rezultat}}       * {{:​isrm:​laboratoare:​03:​11g.ovhd.png?​linkonly|rezultat}}
  
-== Capacitatea ideală simulare == +====  ​Capacitatea ideală simulare ​====
   * Pentru un singur client, se vor repeta curbele de mai sus folosind ns-2. Scriptul {{isrm:​laboratoare:​src:​infra.tcl}} configurează la (0,0) un AP și n-1 noduri plasate în vecinătatea sa. Traficul este generat de la AP către fiecare nod.   * Pentru un singur client, se vor repeta curbele de mai sus folosind ns-2. Scriptul {{isrm:​laboratoare:​src:​infra.tcl}} configurează la (0,0) un AP și n-1 noduri plasate în vecinătatea sa. Traficul este generat de la AP către fiecare nod.
   * pentru capacitatea ideală, folosim un AP, un client,​trafic de tip UDP    * pentru capacitatea ideală, folosim un AP, un client,​trafic de tip UDP 
Line 42: Line 89:
     * De ce? [[http://​www.bandcalc.com/​| VoIP]] ~ 20-300; DNS, TCP~ 500; Ethernet=1500;​ 802.11 Beacon=380     * De ce? [[http://​www.bandcalc.com/​| VoIP]] ~ 20-300; DNS, TCP~ 500; Ethernet=1500;​ 802.11 Beacon=380
   * repetați experimentele cu RTS/CTS activat. Ce impact are asupra pachetelor mari? Dar a celor mici?    * repetați experimentele cu RTS/CTS activat. Ce impact are asupra pachetelor mari? Dar a celor mici? 
 +  * Pentru [[http://​80211notes.blogspot.com/​2014/​03/​phy-rate-and-udp-throughput.html|11n și 11ac]] situația este chiar mai gravă, iar soluția este agregarea de cadre. ​
 +
isrm/laboratoare/03.1551814161.txt.gz · Last modified: 2019/03/05 21:29 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