![]() |
|
![]() |
| La couche de liaison de données 802.11 |
La couche de liaison de données de 802.11 se compose de deux sous-couches
: le contrôle de la liaison logique (Logical Link Control, ou LLC) et
le contrôle daccès au support (Media Access Control, ou MAC).
Le standard 802.11 utilise la LLC 802.2 et ladressage sur 48 bits, tout
comme les autres LAN 802, simplifiant ainsi le pontage entre les réseaux
sans fil et filaires. Le contrôle daccès au support est en
revanche propre aux WLAN.
Le 802.11 MAC est très proche de 802.3 dans sa conception : il
est conçu pour supporter de multiples utilisateurs sur un support partagé
en faisant détecter le support par lexpéditeur avant dy
accéder.
Pour les LAN Ethernet 802.3, le protocole CSMA/CD (Carrier Sense Multiple
Access with Collision Detection) régule laccès des stations
Ethernet au câble ; il détecte et gère également
les collisions qui se produisent lorsque deux périphériques ou
plus tentent de communiquer simultanément sur le LAN.
Dans un WLAN 802.11, la détection des collisions est impossible du fait
de ce quon appelle le problème near/far. Pour détecter
une collision, une station doit être capable de transmettre et découter
en même temps. Or, dans les systèmes radio, il ne peut y avoir
transmission et écoute simultanées.
Pour prendre en compte cette différence, le standard 802.11 fait appel
à un protocole légèrement modifié, baptisé
CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance), ou
à la fonction DCF (Distributed Coordination
Function). Le protocole CSMA/CA tente déviter les collisions en
imposant un accusé de réception systématique
des paquets (ACK), ce qui signifie que pour chaque paquet de données
arrivé intact, un paquet ACK est émis par la station de réception.
Ce protocole CSMA/CA fonctionne de la manière suivante : une station
qui souhaite émettre explore les ondes et, si aucune activité
nest détectée, attend un temps aléatoire avant de
transmettre si le support est toujours libre. Si le paquet est intact à
la réception, la station réceptrice émet une trame ACK
qui, une fois reçue par lémetteur, met un terme au processus.
Si la trame ACK nest pas détectée par la station émettrice
(parce que le paquet original ou le paquet ACK na pas été
reçu intact), une collision est supposée et le paquet de données
est retransmis après attente dun autre temps aléatoire.
CSMA/CA permet donc de partager laccès aux ondes. Ce mécanisme
daccusé de réception explicite gère aussi très
efficacement les interférences et autres problèmes radio. Cependant,
il ajoute à 802.11 une charge inconnue sous 802.3, aussi un réseau
local 802.11 aura-t-il toujours des performances inférieures à
un LAN Ethernet équivalent.
Autre problème de la couche MAC, spécifique au sans fil, celui
du nud caché, où deux stations situées
de chaque côté dun point daccès peuvent entendre
toutes les deux une activité du point daccès, mais pas de
lautre station, problème généralement lié
aux distances ou à la présence dun obstacle. Pour résoudre
ce problème, le standard 802.11 définit sur la couche MAC un protocole
optionnel de type RTS/CTS (Request to Send/Clear to
Send). Lorsque cette fonction est utilisée, une station émettrice
transmet un RTS et attend que le point daccès réponde par
un CTS. Toutes les stations du réseau peuvent entendre le point daccès,
aussi le CTS leur permet-il de retarder toute transmission prévue, la
station émettrice pouvant alors transmettre et recevoir son accusé
de réception sans aucun risque de collision. Du fait que le protocole
RTS/CTS ajoute à la charge du réseau en réservant temporairement
le support, il est généralement réservé aux plus
gros paquets, dont la retransmission savérerait lourde du point
de vue de la bande passante.
Enfin, la couche MAC 802.11 offre deux autres caractéristiques de robustesse
: les sommes de contrôle CRC et la fragmentation
des paquets. Pour chaque paquet, une somme de contrôle est calculée
et rattachée afin dassurer que les données nont pas
été corrompues durant leur transit. Cette technique diffère
dEthernet où les protocoles de niveau supérieur tels que
TCP gèrent le contrôle derreur. La fragmentation des paquets
permet de casser les gros paquets en unités de plus petite taille lorsquils
sont transmis par radio, ce qui savère particulièrement
utile dans les environnements très congestionnés ou lorsque les
interférences posent problème, puisque les gros paquets courent
plus de risque dêtre corrompus. Cette technique limite le risque
de devoir retransmettre un paquet et améliore donc globalement les performances
du réseau sans fil. La couche MAC est responsable de la reconstitution
des fragments reçus, le traitement étant ainsi transparent pour
les protocoles de niveau supérieur.
| Analyse des types de trames utilisés pour le protocole 802.11 |
Il y a trois principaux types de trames :
- Les trames de données, utilisées pour la transmission
des données
- Les trames de contrôle, utilisées pour contrôler
laccès au support (eg. RTS, CTS, ACK)
- Les trames de gestion, transmises de la même façon que
les trames de données pour léchange dinformations
de gestion, mais qui ne sont pas transmises aux couches supérieures.
Chacun de ces trois types est subdivisé en différents sous-types,
selon leurs fonctions spécifiques.
Format des trames
Toutes les trames 802.11 sont composées des composants suivants :
Préambule
Il est dépendant de la couche physique et comprend :
- Synch : cest une séquence de 80 bits alternant 0 et 1, qui est
utilisée par le circuit physique pour sélectionner lantenne
appropriée (si plusieurs sont utilisées), et pour corriger loffset
de fréquence et de synchronisation.
- SFD : Le Start Frame Delimiter consiste en la suite de 16 bits 0000 1100 1011
1101, utilisée pour définir le début de la trame.
En-tête PCLP (Trame 802.11)
Len-tête PCLP est toujours transmis à 1 Mbps et contient
des informations logiques utilisées par la couche physique pour décoder
la trame :
- Longueur de mot du PLCP_PDU : il représente le nombre doctets
que contient le paquet, ce qui est utile à la couche physique pour détecter
correctement la fin du paquet.
- Fanion de signalisation PLCP : il contient seulement linformation de
taux, encodé à 0,5 Mbps, incrémenté de 1 Mbps à
4,5 Mbps
- Champ den-tête du contrôle derreur : champ de détection
derreur CRC 16 bits.
Données MAC (Trame 802.11)
La figure suivante montre le format général de la trame MAC,
certains champs sont seulement présents dans une partie des trames, comme
décrit ultérieurement.

Contrôle de trame (en-tête MAC)
le champ de contrôle de trame contient les informations suivantes :
- Version de protocole : ce champ contient 2 bits qui pourront être
utilisés pour reconnaître des versions futures possibles du
standard 802.11. Dans la version courante, la valeur est fixée à
0.
- Type et sous-type : les 6 bits définissent le type et le sous-type
des trames :
| Valeur du type |
Description du type |
Valeur du sous-type
(b7 b6 b5 b4) |
Description du sous type |
| 00 |
Gestion |
0000 |
Requête d'association |
| 00 |
Gestion |
0001 |
Réponse d'association |
| 00 |
Gestion |
0010 |
Requête de ré-association |
| 00 |
Gestion |
0011 |
Réponse de ré-association |
| 00 |
Gestion |
0100 |
Demande d'enquête |
| 00 |
Gestion |
0101 |
Réponse d'enquête |
| 00 |
Gestion |
0110-0111 |
Réservés |
| 00 |
Gestion |
100 |
Balise |
| 00 |
Gestion |
1001 |
ATIM |
| 00 |
Gestion |
1010 |
Désassociation |
| 00 |
Gestion |
1011 |
Authentification |
| 00 |
Gestion |
1100 |
Désauthentification |
| 00 |
Gestion |
1101-1111 |
Réservés |
| 01 |
Contrôle |
0000-1001 |
Réservés |
| 01 |
Contrôle |
1010 |
PS-Poll |
| 01 |
Contrôle |
1011 |
RTS |
| 01 |
Contrôle |
1100 |
CTS |
| 01 |
Contrôle |
1101 |
ACK |
| 01 |
Contrôle |
1110 |
CF End |
| 01 |
Contrôle |
1111 |
CF End et CF-ACK |
| 10 |
Données |
0000 |
Données |
| 10 |
Données |
0001 |
Données et CF-ACK |
| 10 |
Données |
0010 |
Données et CF-Poll |
| 10 |
Données |
0011 |
Données, CF-ACK
et CF-Poll |
| 10 |
Données |
0100 |
Fonction nulle
(sans données) |
| 10 |
Données |
0101 |
CF-ACK (sans données) |
| 10 |
Données |
0110 |
CF-Poll (dans données) |
| 10 |
Données |
0111 |
CF-ACK et CF-Poll
(sans données) |
| 10 |
Données |
1000-1111 |
Réservés |
| 11 |
Réservé |
0000-1111 |
Réservés |
|
- ToDS (pour le système de distribution) : ce bit est mis à
1 lorsque la trame est adressée au Point dAccès pour
quil la fasse suivre au DS (Distribution System). Ceci inclut
le cas où le destinataire est dans la même cellule et que le
Point dAccès doit relayer la trame. Le bit est à 0 dans
toutes les autres trames.
- FromDS (venant du système de distribution) : ce bit est mis à
1 quand la trame vient du DS.
- More Fragments (dautres fragments) : ce bit est mis à 1
quand il y a dautres fragments qui suivent le fragment en cours.
- Retry (retransmission) : ce bit indique que le fragment est une retransmission
dun fragment précédemment transmis. Ceci sera utilisé
par la station réceptrice pour reconnaître des transmissions
doublées de trames, ce qui peut arriver si un paquet daccusé
de réception se perd.
- Power Management (gestion dénergie) : ce bit indique que
la station sera en mode de gestion dénergie après la
transmission de cette trame. Ceci est utilisé par les stations changeant
détat, passant du mode déconomie dénergie
au mode active ou le contraire.
- More Data (dautres données) : ce bit est également
utilisé pour la gestion de lénergie. Il est utilisé
par le Point dAccès pour indiquer que dautres trames
sont stockées pour cette station. La station peut alors décider
dutiliser cette information pour demander les autres trames ou pour
passer en mode actif.
- WEP (sécurité) : ce bit indique que le corps de la trame
est chiffré suivant lalgorithme WEP.
- Order (ordre) : ce bit indique que cette trame est envoyée en
utilisant la classe de service strictement ordonné (Strictly-Ordered
service class). Cette classe est définit pour les utilisateurs qui
ne peuvent pas accepter de changement dordre entre les trames unicast
et multicast.
Durée / ID (en-tête MAC)
Ce champ à deux sens, dépendant du type de trame :
- pour les trames de polling en mode déconomie dénergie,
cest lID de la station
- dans les autres trames, cest la valeur de durée utilisée
pour le calcul du NAV.
Les champs adresses (en-tête MAC)
Une trame peu contenir jusquà 4 adresses, selon le bit ToDS
et FromDS définit dans le champ de contrôle, comme suit :
Adresse 1 est toujours ladresse du récepteur (ie. la station
de la cellule qui est le récepteur imsupportt du paquet). Si ToDS est
à 1, cest ladresse du Point dAccès, sinon,
cest ladresse de la station.
Adresse 2 est toujours ladresse de lémetteur (ie. celui
qui, physiquement, transmet le paquet). Si FromDS est à 1, cest
ladresse du Point dAccès, sinon, cest ladresse
de la station émettrice.
Adresse 3 est ladresse de lémetteur original quand le
champ FromDS est à 1. Sinon, et si ToDS est à 1, Adresse 3 est
ladresse destination.
Adresse 4 est utilisé dans un cas spécial, quand le système
de distribution sans fil (Wireless Distribution System) est utilisé
et quune trame est transmise dun Point dAccès à
un autre. Dans ce cas, ToDS et FromDS sont tous les deux à 1 et il
faut donc renseigner à la fois lémetteur original et le
destinataire.
La table suivante résume lutilisation des différentes
adresses selon les bits FromDS et ToDS :

Contrôle de séquence (en-tête MAC)
Le champ de contrôle de séquence est utilisé pour représenter
lordre des différents fragments appartenant à la même
trame, et pour reconnaître les paquets dupliqués. Il consiste
en deux sous-champs, le numéro de fragment et le numéro de séquence
qui définissent le numéro de trame et le numéro du fragment
dans la trame.
Cyclic Redundancy Check (Trame 802.11)
Le CRC est sur 32 bits.
| Format des trames les plus courantes |
Format des trames RTS

RA est ladresse du récepteur imsupportt de la prochaine trame de
données ou de gestion.
TA est ladresse de la station qui transmet la trame RTS.
La valeur de la durée est le temps, en microsecondes, nécessaire
à la transmission de la trame de gestion ou de données suivante,
plus une trame CTS, plus une trame ACK, plus 3 intervalles SIFS.
Format de la trame CTS
RA est ladresse du récepteur de la trame CTS, directement copiée
du champ TA de la trame RTS.
La valeur de la durée est la valeur obtenue dans la trame RTS, moins
le temps de transmission, en microsecondes, de la trame CTS et dun intervalle
SIFS.
Format de la trame ACK
RA est le champ directement copié du champ Adresse 2 de la trame précédent
cette trame ACK.
Si le bit More Fragment était à 0 dans le champ de contrôle
de trame de la trame pécédente, la valeur de la durée est
mise à 0. Sinon, cest la valeur du champ durée précédent,
moins le temps, en microsecondes, demandé pour transmettre la trame ACK
et lintervalle SIFS.
PCF : Point Coordination Function
En plus de la fonction de base de coordination distribuée (DCF), il
y a la fonction optimal de coordination par point (PCF) qui peut être
utilisée pour implémenter des services temps réel, comme
la transmission de voix ou de vidéo. Cette PCF fait quon utilise
des priorités supérieures que le Point dAccès peut
gagner en utilisant des temps inter-trames plus petit (PIFS).
En utilisant un accès par priorité supérieure, le Point
dAccès peut envoyer des données aux stations en réponse
à une Polling Request, tout en contrôlant laccès au
support. Pour permettre aux stations classiques davoir accès au
support, il y a une condition qui est que le Point dAccès doit
laisser suffisamment de temps DCF par rapport au PCF.
|
|