,,(inrevisione),, [[PageOutline]] = IEEE 802.11 - Specifiche del livello PHY = == Procedure comuni == === Procedura di trasmissione === Per trasmettere i dati, `PHY-TXSTART.request` dev'essere abilitata per portare PHY allo stato di trasmettitore. A tal fine, e' inizialmente necessaria la scelta del canale su cui trasmettere (effettuata tramite PLME); non appena esso risulti libero (quando, cioe', `PHY-CCA.indicate` segnali ''idle'') MAC potra' dare inizio alla fase di trasmissione invocando la primitiva `PHY-TXSTART.request` con il necessario parametro `TXVECTOR` (contenente `DATARATE`, `TX_ANTENNA`, `TXPWR_LEVEL`). Una volta terminato l'invio del preambolo, attraverso una serie di chiamate `PHY-DATA.request(DATA)` iniziera' lo scambio di ottetti di dati tra i livelli MAC e PHY. Al termine della trasmissione l'entita' fisica invochera' `PHY-TXEND.confirm`, segnalando eventuali errori al livello MAC e ritornando poi autonomanente allo stato di ricevitore. === Procedura ricezione === Affinche' abbia inizio la ricezione di un ''frame'', e' necessario che l'entita' fisica sia nello stato di ricevitore. Attraverso la PLME e' possibile scegliere sia il canale su cui ascoltare sia il metodo di ''carrier-sense'' da utilizzare. Altri parametri (come accade per la trasmissione) sono passati sfuttando il PHY-SAP. Non appena il dispositivo ha rilevato attivita' sul canale su cui e' in ascolto, viene invocata la primitiva `PHY-CCA.indicate` informando MAC dello stato del canale. Dopodiche' si ricerca un delimitatore di inizio ''frame'' (''Start Frame Delimiter'' o SFD) e si procede poi alla lettura dell' ''header''. Se quest'ultima fase va a buon fine, poiche' le informazioni ricevute sono intellegibili e prive di errori rilevati con CRC, allora viene sollevata la primitiva `PHY-RXSTART.indicate` per indicare al livello superiore che sta avendo luogo la ricezione di un ''frame''. I dati successivamente ricevuti saranno assemblati e presentati a MAC attraverso la primitiva `PHY-DATA.indicate(DATA)`. Anche in questo caso, al termine dell'intera operazione verra' invocata la primitiva `PHY-RXEND.indicate` indicante eventuali errori occorsi in fase di ricezione ed il dispositivo tornera' in uno stato di ricevitore passivo. == FHSS == FHSS (''Frequency Hopping Spread Spectrum'') e' una specifica del livello PHY, presente nella prima versione dello standard. L'obiettivo primo da perseguire, come gia' chiarito nei paragrafi precedenti, e' l'indipendenza del livello MAC dal livello PHY. E' per questo motivo che, nel documento, vengono ratificate adeguate funzioni di convergenza al mezzo trasmissivo oltre alle usuali funzioni dipendenti dal dispositivo. La caratteristica saliente di questa specifica e' rappresentata dal fatto che la trasmissione non avviene sempre alla stessa frequenza (canale), ma si effettuano i cosiddetti ''hopping'', cioe' salti di frequenza pseudo-casuali. In questo modo si massimizza il ''throughput'' della rete, si minimizzano le interferenze e si migliora la confidenzialita' delle trasmissioni (l'azione di ''sniffing'' e' meno praticabile). [[BR]] E' importante sottolineare come la sequenza di salto dei canali sia in realta' dettata dal livello MAC (sia in un BSS che in un IBSS): ogni ''frame'' di tipo ''beacon'' o ''probe response'' contiene le informazioni necessarie per la sincronizzazione e per la determinazione del ''pattern'' di ''hopping''. Per l'Europa, lo standard definisce il ''range'' delle frequenze operative da 2.400 GHz a 2.4835 GHz per un totale di 79 canali differenti. [[BR]] I ''data-rate'' supportati sono: * 1 Mbit/s: con modulazione GFSK (''Gaussian frequency shift keying'') * 2 Mbit/s: con modulazione 4GFSK. Si noti che per l' ''header'' PLCP viene comunque trasmesso ad 1 Mbit/s. Alcune informazioni sulle tempistiche riguardanti i canali: * 224''u''s e' il tempo massimo concesso per cambiare canale; * 400ms e' il tempo massimo di permanenza sul canale; * 19ms e' il tempo consigliato di permanenza sul canale. == OFDM == OFDM (''Ortogonal Frequency-Division Multiplexing'') viene introdotto con la revisione '''a''' dello standard IEEE 802.11. Benche' l'insieme dei tassi trasmissivi stabiliti sia {6, 9, 12, 18, 24, 36, 48, 54} Mbit/s, solamente il sottinsieme {6, 12, 24} Mbit/s e' obbligatorio. La banda di frequenze utilizzata e' quella attorno ai 5 GHz. Essenzialmente questa tecnica prevede l'invio di ''stream'' di bit in parallelo su differenti frequenze. Lo spettro viene quindi suddiviso in 52 sotto-canali, sfruttando poi la modulazione BPSK/QPSK, QAM o 64-QAM. La scelta delle frequenze dei sotto-canali e' operata in modo tale da eliminare interferenze tra gli stessi (sono ortogonali l'uno all'altro). OFDM rimane, comunque, uno standard poco utilizzato sia a causa delle sue incompatibilita' con i successivi documenti 802.11b e 802.11g, sia per le caratteristiche operative, poiche' in molti Paesi la banda dei 5Ghz e' tuttora riservata. == DSSS == DSSS (''Direct Sequence Spread Spectrum'') e' un'altra specifica del livello fisico presente gia' a partire dalla prima versione dello standard, e che permette di raggiungere, in linea teorica, una velocita' trasmissiva pari a 11Mbit/s, dopo gli aggiornamenti presenti in 802.11b. Il preambolo e l' ''header'' del ''frame'' sono trasmessi sempre ad un ''data-rate'' di 1 Mbit/s in modo tale che ogni STA (di tipo DSSS) sia in grado di comprenderlo. L'effettivo invio del ''payload'' (rappresentato dalla MPDU) invece, potra' essere compiuto utilizzando modulazioni diverse, opportunamente preannunciate nell' ''header'' (campo SIGNAL). Questa tecnica prevede che ogni bit da trasmettere venga rimpiazzato da una sequenza di lunghezza predefinita di ''chip'' (i.e. bit) per aumentare la distanza fra rappresentazioni di informazioni differenti, al fine di ridurre le interferenze. Conseguentemente, a parita' di ''data-rate'', la frequenza di trasmissione dei chip cresce di un fattore pari alla lunghezza della sequenza (come mostrato nella "figura" sottostante). {{{ 0 : 1 : 0 : ... -> Informazioni originali 10101010 : 00001111 : 10101010 : ... -> Informazioni "chippate" }}} Il ricevitore, utilizzando la stessa sequenza di ''chip'', e' banalmente in grado di ricostruire il flusso originale di informazione. Lo standard stabilisce che le frequenze operative per DSSS siano quelle attorno ai 2.4 GHz: 14 canali con ampiezza 22MHz. == HR/DSSS (802.11b/802.11g) == High Rate Direct Sequence Spread Spectrum (HR/DSSS) e' l'evoluzione della "semplice" DSSS che consente di portare la bandwith massima a 5.5 o 11 Mbps (nell'802.11g si arrivera' anche a circa 54 Mbps). Gli header e preamboli PLCP sono gli stessi della DSSS, in questo modo e' possibile la coesistenza di entrambe le modulazioni in una stessa connessione. [[BR]] Le sostanziali differenze con il suo predecessore sono molteplici: 1. si sono riuniti i [http://en.wikipedia.org/wiki/Chip_rate "chips"] in gruppi da 8 formando cosi chiavi a codice complementario (''8-chip complementary code keying'' a.k.a. CCK) che vengono spediti alla stessa frequenza del DSSS (11 MHz), ottimizzando cosi l'uso della banda del canale; 2. sono state aggiunte delle funzionalita' opzionali per aumentare il bandwith, che sono utilizzabili solo se l'hardware e' abbastanza recente da supportarle. [[BR]] Le funzionalita' sono le seguenti: * sostituzione del CCK con il ''packet binary convolutional coding'' (HR/DSSS/PBCC); * HR/DSSS/short, ovvero possibilita' di ridurre il preambolo PLCP per aumentare significantemente il transfer data rate, limitando cosi pero' la possibilita' di coesistenza con il DSSS a sole alcune particolari circostanze; * inserimento del ''Channel Agility'', ovvero una particolare implementazione che consente di superare diversi problemi dovuti all'assegnamento di un canale statico, senza dover aggiungere alla totale implementazione il costo di questa funzionalita'. Purtroppo l'IEEE non ha concesso le specifiche inerenti all'evoluzione della modulazione nella versione 802.11g, quindi non ci e' concesso sapere i miglioramenti che hanno portato poi il protocollo a supportare velocita' di circa 54 Mbps.[[BR]] Parlandone con il Dott. Bononi, si e' arrivati ad ipotizzare che lo sviluppo sempre piu' veloce della tecnologia abbia portato ad un'alta precisione e sensibilita' di ricezione/trasmissione che abbia sua volta portato ad un'aumento dei simboli (in modulazione un simbolo e' un particolare segnale che identifica una serie di bit) e ad una diminuzione dei bit adibiti al controllo di errori, cosi aumentandone di molto il bit rate potenziale.[[BR]] Rimaniamo comunque nella ricerca di specifiche piu' recentemente rilasciate, lasciando quest'ultima parte di paragrafo come "prossima ad essere aggiornata".