Per interagire all’interno di una rete tutte le stazioni devono essere in grado di costruire i frame per la trasmissione e decodificare i frame in ricezione.
Ogni frame `e costituito da
• un’intestazione MAC, che tra i vari campi comprende il Duration/ID; • un campo di lunghezza variabile per il contenuto vero e proprio del frame; • un campo per il controllo della correttezza del frame.
In questo paragrafo verranno analizzati solo i frame utilizzati nei successivi capitoli, come i frame di controllo.
2.5.1
Formato di un generico frame
Il formato del frame MAC comprende un insieme di campi che sono posizionati con un ordine prefissato in tutti i frame.
La figura 2.7 descrive il formato di un frame generico.
Figura 2.7: Formato generale di un frame MAC.
I campi “Address 1”, “Address 2”, “Address 3”, “Address 4” cos`ı come “Sequence Control” e “Frame Body” sono presenti solo in alcuni frame.
Il campo “Frame Control” `e costituito da diversi campi come la versione del protocollo; il tipo del frame, che pu`o essere management, control o data; i campi per la trasmissione da e verso il DS, “FromDS” e “ToDS” rispettivamen- te; il campo per l’informazione sulla frammentazione, “More Frag”; il campo “Retry”, che indica se il presente frame `e una ritrasmissione; i campo per la modalit`a power save, “Pwr Mgt” che indica se la STA `e in power save mode o meno, e il campo “More Data” per indicare che ci sono pi`u MSDU o MMPDU bufferizzati in attesa di trasmissione; il campo per la cifratura, “WEP”.
Il campo “Duration/ID” che contiene l’identit`a dell’associazione della sta- zione trasmittente per alcuni frame utilizzati per la modalit`a power save, un valore per la durata della trasmissione negli altri casi.
I quattro campi di indirizzo indicano l’identificatore per il BSS, l’indiriz- zo sorgente, quello di destinazione, l’indirizzo della stazione trasmittente e di quella ricevente. L’utilizzo di questi indirizzi all’interno del frame `e indica- to con basic service set identifier (BSSID), destination address (DA), source address (SA), receiver address (RA) e transmitter address (TA); l’uso di tali indirizzi dipende dalla posizione degli stessi all’interno di uno specifico frame. Il campo “Sequence Control” contiene nell’ordine il numero di sequenza dei frammenti di una MSDU o MMPDU e il numero di sequenza del frame originale.
Il campo “Frame Body” `e un campo di lunghezza variabile per il contenuto vero e proprio del frame.
Il campo “FCS” (Frame Check Sequence)`e il campo per il controllo della correttezza dell’intero frame.
2.5.2
Il frame RTS
Il frame RTS (Request To Send) `e un frame di controllo il cui formato `e mostrato in figura 2.8
Figura 2.8: Formato del frame RTS.
Il campo “RA” contiene l’indirizzo della STA destinataria del frame in attesa di trasmissione, mentre il campo “TA” indica l’indirizzo della STA che trasmette tale frame.
2.5.3
Il frame CTS
Il frame CTS (Clear To Send) `e un frame di controllo. Il suo formato `e mostrato in figura 2.9
Figura 2.9: Formato del frame CTS.
Come si pu`o notare `e presente in unico campo indirizzo, “RA”, che viene riempito con il contenuto del campo “TA” del frame RTS ricevuto imme- diatamente prima; cos`ı anche il campo “Duration/ID” `e ottenuto da quello contenuto nel frame RTS da cui `e stato sottratto il tempo impiegato per la trasmissione di CTS e il suo intervalli SIFS.
2.5.4
Il frame ACK
Come i due precedenti, anche il frame ACK `e un frame di controllo. Il suo formato `e mostrato in figura 2.10.
Figura 2.10: Formato del frame ACK.
Il campo “RA” `e ottenuto copiandolo dal frame per il quale `e richiesto il riscontro presente.
Se il frame ricevuto non era frammentato, il campo “Duration” `e posto a zero, altrimenti il suo valore `e ottenuto dallo stesso campo del frame ricevuto al quale viene sottratto il tempo impiegato per trasmettere l’ACK e il suo intervallo SIFS.
2.5.5
Il frame Data
Il formato del frame data `e mostrato in figura 2.11
Figura 2.11: Formato del frame data.
Il contenuto dei campi riservati ai vari indirizzi dipende dal valore di ToDS e FromDS, del campo Frame Control, come descritto nella seguente tabella:
Tabella 2.2: Contenuto dei campi indirizzo.
Il contenuto di “Address 1” `e utilizzato per determinare il destinatario del frame; il campo “Address 2” `e utilizzato per indirizzare il riscontro se questo `e
richiesto. DA `e il destiantario del MSDU contenuto nel campo “Body”; SA `e il mittente di tale informazione; RA `e l’indirizzo della STA ricevente contenuto nell’AP mentre TA `e quello della STA trasmittente; BSSID `e l’identificatore della IBSS se la stazione fa parte di una rete ad hoc altrimenti `e l’indirizzo correntemente utilizzato dalla STA contenuta nell’AP.
2.5.6
Il frame di tipo management
Il formato di un generico frame di tipo management `e mostrato in figura 2.12.
Figura 2.12: Formato di un generico frame di tipo management.
Da notare come in questo tipo di frame i campi destinati agli indirizzi siano ben definiti: prima compare l’idirizzo di destinazione del frame, poi quello della STA che lo ha generato e quindi l’identificatore per il BSS. Il campo “Frame Body” non contiene pi`u la MSDU ma i campi specifici di ogni management frame. Prendendo ad esempio il frame beacon si ha che il suo campo “Frame Body” contiene, tra le altre, l’informazione, timestamp, riguardante il timer TSF, o l’informazione, Beacon interval, riguardante l’intervallo di tempo che deve trascorrere tra la trasmissione di un beacon e la successiva.