Lo strato collegamento Wi-Fi (802.11 o WiFi)

Lo strato di collegamento di dati

Lo strato Collegamento di dati della norma 802.11 è composto da due substrati: lo strato di controllo del collegamento logico (Logical Link Control, sigla LLC) e lo strato di controllo di accesso al supporto (Media Access Control o MAC).

Lo strato MAC definisce due metodi di accesso diversi :

  • Il metodo CSMA/CA che utilizza la Distributed Coordination Function (DCF)
  • La Point Coordination Function (PCF)

Il metodo di accesso CSMA/CA

In una rete locale Ethernet classica, il metodo di accesso utilizzato per i terminali è il CSMA/CD (Carrier Sense Multiple Access with Collision Detect), per cui ogni terminale è libero di comunicare in qualsiasi momento. Ogni terminale che invia un messaggio verifica che nessun altro messaggio sia stato inviato allo stesso momento da un altro terminale. Se è questo il caso, i due terminali aspettano per un tempo aleatorio prima di ricominciare ad emettere.

In un ambiente senza fili questa procedura non è possibile dato che le due stazioni comunicanti con un ricettore non si sentono reciprocamente per forza in ragione del loro raggio di portata. Così la norma 802.11 propone un protocollo simile dettoCSMA/CA (Carrier Sense Multiple Access with Collision Avoidance).

Il protocollo CSMA/CA usa un meccanismo per evitare le collisioni basato sul principio di accusa di ricezione reciproca tra l'emittente e il ricevente :

RTS / CTS / Data / ACK
La stazione che vuole emettere ascolta la rete. Se la rete è occupata, la trasmissione sarà differita. In caso contrario, se il media è libero per un tempo dato (detto DIFS per Distributed Inter Frame Space), allora la stazione può emettere. La stazione trasmette un messaggio detto Ready to Send (sigla RTSche significa pronto ad emettere) che contiene delle informazioni sul volume dei dati che vuole emettere e sulla velocità di trasmissione. Il ricevente (generalmente un punto di accesso) risponde un Clear To Send (CTS, che significa Il campo è libero per emettere), poi la stazione comincia l'emissione dei dati.

Alla ricezione di tutti i dati emessi dalla stazione, il ricevente invia un'accusa di ricezione (ACK). Tutte le stazioni vicine aspettano allora per un periodo di tempo che considera essere necessario alla trasmissione del volume di informazioni da emettere alla velocità annunciata.

Somma di controllo

Lo strato MAC del protocollo 802.11 offre un meccanismo di controllo di errore che permette di verificare l'integrità delle trame. Si tratta di una differenza fondamentale con lo standard Ethernet. In effetti Ethernet non propone nessun sistema di rilevamento o di correzione degli errori, dato che questo compito è lasciato ai protocolli di trasporto del livello superiore (TCP).

In una rete senza fili il tasso di errore è più elevato, ragione per cui un controllo di errore è stato integrato a livelli dello strato collegamento di dati. Il controllo di errore è basato sul polinomio di grado 32 che segue :

x32+x26+x23+x22+x16+x12+x10+x8+x7+x5+x4+x2+x+1

Frammentazione e riassemblaggio

D'altra parte il tasso di errore di trasmissione sulle reti senza fili aumenta generalmente con dei pacchetti di dimesione importante, ragione per cui la norma 802.11 offre un meccanismo di frammentazione, che permette di scomporre una trama in più pezzi (frammenti).

Formato delle trame

Lo standard 802.11 definisce il formato delle trame scambiate. Ciascuna trama è costituita da un'intestazione (detta MAC header, lunga 30 bte), da un corpo e da un FCS (Frame Sequence Check) che permette la correzione di errore.

FC
(2)
D/ID
(2)
Indirizzo 1
(4 byte)
Indirizzo 2
(4 byte)
Indirizzo 3
(4 byte)
SC
(2)
Indirizzo 4
(4 byte)
Corpo della trama
(da 0 a 2312 byte)
FCS
(2)

Ecco la descrizione di questi campi :

  • FC (Frame Control, in italiano controllo di trame): questo campo di due byte è costituito dalle seguenti informazioni :

    Versione del protocollo
    (2 bits)
    Tipo
    (2 bits)
    Sotto tipo
    (4 bits)
    To DS
    (1 bit)
    From DS
    (1 bit)
    More Frag
    (1 bit)
    Retry
    (1 bit)
    Power Mgt
    (1 bit)
    More Data
    (1 bit)
    WEP
    (1 bit)
    Order
    (1 bit)

    • Versione del protocollo : questo campo di 2 bit permetterà di considerare le evoluzioni della versione dello standard 802.11. Il valore è pari a zero per la prima versione
    • Tipo e Sotto tipo : questi campi, rispettivamente di 2 e 4 bit, definiscono il tipo e il sotto tipo delle trame esplicitate nella tabella sottostante. Il tipo gestione corrisponde alle richieste di associazione nonché ai messaggi di annuncio dei punti di accesso. Il tipo controllo è usato per l'accesso al media per richiedere le autorizzazioni per emettere. Infine il tipo dati riguarda gli invii di dati (la maggior parte del traffico).
    • To DS : questo bit vale 1 quando la trama è destinata al sistema di distribuzione (DS), vale zero negli altri casi. Ogni trama inviata da una stazione a destinazione di un punto d'accesso ha quindi un campo To DS posizionato a 1.
    • From DS : questo bit vale 1 quando la trama proviene dal sistema di distribuzione (DS), vale zero negli casi. Quindi, quando i due campi To e From sono posizionati a zero si tratta di una comunicazione diretta tra due stazioni (modalità ad hoc).
    • More Fragments (frammenti supplementari): permette di indicare (quando vale 1) che restano dei frammenti da trasmettere
    • Retry : questo bit specifica che il frammento in corso è una ritrasmissione di un frammento precedentemente inviato (e sicuramente perso)
    • Power Management (gestione d'energia): indica, quando è a 1, che la stazione che ha inviato questo frammento entra in modalità di gestione dell'energia
    • More Data (gestione d'energia): questo bit, usato per la modalità di gestione dell'energia, è usato dal punto di accesso per specificare ad una stazione che delle trame supplementari sono stoccate in attesa.
    • WEP : questo bit indica che l'algoritmo di codifica WEP è stato usato per cifrare il corpo della trama.
    • Order (ordine): indica che la trama è stata inviata usando la classe di servizio strettamente ordinata (Strictly-Ordered service class)
  • Durata / ID : Questo campo indica la durata d'utilizzo del canale di trasmissione.
  • Campi indirizzi : una trama può contenere fino a 3 indirizzi oltre all'indirizzo di 48 bit.
  • Controllo di sequenza : questo campo permette di distinguere i diversi frammenti di una stessa trama. E' composto da due sotto campi che permettono di riordinare i frammenti :
    • Il numero di frammento
    • Il numero di sequenza
  • CRC : una somma di controllo che serve a verificare l'integrità della trama.

La tabella sottostante riassume i tipi e i sotto tipi di trame incapsulati nel campo di controllo della trama dell'intestazione MACnbsp;:

Tipo Descrizione del tipo Sotto tipo Descrizione del sotto tipo
00 Management (gestione) 0000 Association request (richiesta di associazione)
00 Management (gestione) 0001 Association response (risposta d'associazione)
00 Management (gestione) 0010 Reassociation request (richiesta ri-associazione)
00 Management (gestione) 0011 Reassociation response (risposta di ri-associazione)
00 Management (gestione) 0100 Probe request (richiesta di inchiesta)
00 Management (gestione) 0101 Probe response (risposta di inchiesta)
00 Management (gestione) 0110-0111 Reserved (riservato)
00 Management (gestione) 1000 Beacon (tag)
00 Management (gestione) 1001 Annoucement traffic indication message (ATIM)
00 Management (gestione) 1010 Disassociation (dissociazione)
00 Management (gestione) 1011 Authentication (autentificazione)
00 Management (gestione) 1100 Deauthentication (disautentificazione)
00 Management (gestione) 1101-1111 Reserved (riservato)
01 Control (controllo) 0000-1001 Reserved (riservato)
01 Control (controllo) 1010 Power Save (PS)-Poll (economia d'energia)
01 Control (controllo) 1011 Request To Send (RTS)
01 Control (controllo) 1100 Clear To Send (CTS)
01 Control (controllo) 1101 ACK
01 Control (controllo) 1110 Contention Free (CF)-end
01 Control (controllo) 1111 CF-end + CF-ACK
10 Data (dati) 0000 Data (dati)
10 Data (dati) 0001 Data (dati) + CF-Ack
10 Data (dati) 0010 Data (dati) + CF-Poll
10 Data (dati) 0011 Data (dati) + CF-Ack+CF-Poll
10 Data (dati) 0100 Null function (no Data (dati))
10 Data (dati) 0101 CF-Ack
10 Data (dati) 0110 CF-Poll
10 Data (dati) 0111 CF-Ack + CF-Poll
10 Data (dati) 1000-1111 Reserved (riservato)
11 Data (dati) 0000-1111 Reserved (riservato)

Point Coordination Function (PCF)

La Point Coordination Function (PCF) detta modalità di accesso controllato. Essa è fondata sull'interrogazione a turno delle stazioni, o polling, controllate dal punto di accesso. Una stazione non può emettere se non è autorizzata e non può ricevere se non è selezionata. Questo metodo è concepito per le applicazioni in tempo reale (video, voce) che necessitano di una gestione dei tempi delle trasmissioni di dati.



Ultime modificazione ilvenerdì 6 febbraio 2009 alle 16:51:57


Questo documento intitolato «  » da Kioskea (it.kioskea.net) è reso disponibile sotto la licenza Creative Commons. È possibile copiare, modificare le copie di questa pagina, alle condizioni previste dalla licenza, come questa nota appare chiaramente.