PRINCIPE DU HANDOVER DANS
LES RESEAUX WIFI
EXPOSANTS :
Mouhamadou Moustapha DIONE
Bounene El Id M’BARECK
Pape Malick THIOUNE
Massyla SYLLA
Ismaïla Sangué SOW
Introduction
La gestion de mobilité peut s’effectuer de diverses manières selon
l’architecture du réseau. Il existe plusieurs techniques pour gérer la
mobilité au niveau des différentes couches du modèle OSI (Open
Systems Interconnection). Dans ce chapitre nous parlerons
principalement des différentes techniques et mécanismes mises en
œuvre pour gérer la mobilité des utilisateurs de manière transparente.
Cette gestion peut être mise en place au niveau de la couche liaison de
données (Niveau 2, Layer 2, L2) ou au niveau de la couche réseau.
Chacune de ces techniques peuvent avoir leur propre avantage, et
peuvent se compléter selon les besoins et de l’architecture du réseau.
Le standard 802.11 ne définit pas comment le « roaming » ou handover
est fait, mais en définit cependant les règles de base. Celles-ci
comprennent l’écoute active ou passive, le processus de réassociation,
ou une station qui passe d’un point d’accès à un autre sera associée au
nouveau point d’accès.
La gestion de mobilité s’effectue au niveau réseau lorsque, pendant son
déplacement, l’utilisateur mobile se trouve dans un nouveau réseau dont
le préfixe est différent de son réseau d’origine.
Nous traiterons ici la gestion de mobilité au niveau de la couche liaison
de données comme proposé par la norme IEEE 802.11 et au niveau de
la couche réseau L3 (Layer 3) avec le protocole IP Mobile.
Ⅰ.Gestion du handover dans les réseaux IEEE 802.11
Ⅰ.1 Généralités
Le handoff ou handover ou roaming ou encore transfert automatique
intercellulaire, point clé de cette étude, est l'ensemble des opérations
mises en œuvre permettant qu'une station mobile puisse changer de
cellule sans interruption de service.
Le processus consiste à maintenir la communication en cours du mobile
lors d'un déplacement qui l’amène à changer de cellule ou de point
d’accès d’attachement. En effet lorsque le signal de transmission entre
un combiné et un point d’accès s'affaiblit, le système du combiné trouve
un autre point d’accès disponible dans une autre cellule, qui est capable
d'assurer à nouveau la communication. Cette transition est censée être
homogène et transparente aux utilisateurs et donc le terminal mobile
devant être auto-reconfiguré avec de nouveaux paramètres sans
l'intervention de l'utilisateur.
Le transfert inter-cellule peut être soit une:
● Handoff vertical : dans le cas d'un changement de réseau ainsi
que le type de technologie, par exemple un transfert d'une cellule
WLAN à une cellule WiMax ou UMTS. Plusieurs techniques, que
nous n’allons pas aborder ici, sont proposées pour effectuer ce
type de handover.
● Handoff horizontal : dans le cas où l’on change de réseau, mais
pas la technologie. Par exemple un transfert à partir d'une cellule
WLAN 1 à un WLAN2. Dans la suite de ce chapitre, c’est ce type
de handover que nous étudierons, pour le cas des réseaux sans fil
IEEE 802.11.
Le support de la mobilité dans le réseau est primordial afin d'offrir une
meilleure qualité de service aux terminaux mobiles désirant garder une
connexion constante au réseau, tout en se déplaçant librement. Ainsi, le
passage entre les réseaux devrait être exécuté dans un délai minimum
et sans interruption de service de façon transparente afin de supporter
les services et les applications exigeant une contrainte de délai comme
la voix sur IP.
Cette commutation de la connexion réseau peut apporter non
seulement le changement du point d’accès courant, mais aussi du
changement de l'adresse IP du réseau, et même des services applicatifs
des couches supérieures. Pour résoudre le problème du changement de
la connexion physique au réseau, la norme IEEE 802.11 propose un
mécanisme de gestion du handover. Quant au changement d'adresse IP
du réseau et la continuation de session, des mécanismes de mobilité
tels qu'IPv4 Mobile ou IPv6 Mobile sont proposés, que nous aborderons
dans la suite de ce chapitre. D'autres mécanismes de gestion de
mobilité existent aussi au niveau des couches supérieures comme le
SCTP (Stream Control Transmission Protocol) ou SIP que nous
n’étudierons pas ici.
Ⅰ.2 Principe du handover dans les WLAN IEEE 802.11
En général, le handover est définie comme la procédure requise pour
exécuter le transfert de la connexion physique d’une station (STA) d’un
point d’accès à un autre point d’accès ou « access point » (AP). Dans le
réseau WLAN 802.11, cette connexion physique est appelée «
association » d’une STA avec un AP, aussi souvent appelé «
attachement ».
Figure 1:Scénario de handover dans un réseau WLAN.
Les stations qui se déplacent d’une cellule à une autre doivent rester
synchronisées pour maintenir la communication. Le point d’accès envoie
périodiquement des trames de gestion, plus précisément des trames
balises appelées « Beacon Frame », qui contiennent la valeur de son
horloge, aux stations qui peuvent ainsi se synchroniser. La station
terminale choisit son point d’accès en fonction de la puissance du signal
du point d’accès, du taux d’erreurs par paquet ou encore de la charge
du réseau.
La station demande à accéder à une BSS (Basic Service Set) dans le
cas où il est éteint et par la suite est mis sous tension ; ou pendant son
déplacement. L’adaptateur réseau de la station est capable de changer
de point d’accès d’attachement selon la qualité des signaux reçus
provenant des différents points d’accès dans sa portée. Les points
d’accès peuvent aussi communiquer entre eux et échanger des
informations concernant les stations grâce au système de distribution
(DS).
Pour pouvoir s’associer à un point d’accès, c'est-à-dire établir un canal
de communication avec le point d’accès, la station procède à une écoute
de l’environnement radio. Dans l’écoute passive, la station attend la
réception d’une trame balise venant du point d’accès ; tandis que dans
l’écoute active, c’est la station, après avoir trouvé le point d’accès le plus
approprié, qui envoie une demande d’association via une trame appelée
« Probe Request Frame » au point d’accès. Notons que la station peut
envoyer une requête d’association à un ou plusieurs points d’accès.
Le point d’accès envoie une réponse à la requête. Si c’est un échec, la
station prolonge son écoute. En cas de succès, la station accepte
l’association. Le point d’accès signale la nouvelle association à travers le
système de distribution (DS), et met à jour sa base de données puis
informe l’ancien point d’accès afin que ce dernier puisse libérer ses
ressources.
Ⅰ.3 Gestion des Associations
Les fonctions de gestion permettent de structurer, de faire fonctionner et
de gérer le réseau WLAN 802.11. Elles incluent la fonction d'association;
la fonction de synchronisation, indispensable au niveau physique pour
les techniques de transmission à saut de fréquence, et la fonction de
gestion d'énergie qui permet à des stations de fonctionner en mode
économie d'énergie. Dans notre étude, nous nous concentrons sur la
fonction d'association.
Lorsque les stations se déplacent dans le réseau, c'est-à-dire
lorsqu'elles changent de BSS, ou qu'elles sortent d'un mode d'économie
d'énergie ou juste après allumage ; avant de pouvoir communiquer, elles
doivent choisir un AP d'un BSS, et s'associer à cet AP.
L’ensemble des procédures qui consistent à s'associer avec un AP est
appelée la « procédure d'association ». Les stations qui se déplacent
dans les réseaux se déconnectent avec l'AP courant, et lancent la
procédure d'association et se reconnectent à un nouvel AP. Cette
procédure de changement d'AP dans les réseaux sans fil est appelée
handover de couche liaison ou le handover de niveau 2 (en anglais
Layer 2 Handover).
La procédure d'association est à l'initiative des stations et est
décomposée en trois phases : la « phase de découverte », « la phase
d'authentification et la phase de réassociation ». Elles sont réalisées à
l'aide des échanges des trames de gestion des associations sous la
forme de requête et de réponse. Les stations ne peuvent ni envoyer, ni
recevoir des trames de données avant la fin de la procédure
d'association.
Ⅰ.3.1 Phase de découverte
La première étape d'une procédure d'association consiste à découvrir un
point d’accès AP. Le choix d'un AP est lié à un certain nombre de
critères, tels que la puissance du signal, le taux d'erreur des paquets ou
la charge du réseau.
Un mécanisme, défini par la norme IEEE 802.11, permet de mesurer la
puissance du signal reçu RSSI (Received Signal Strength Indication)
avec une valeur variable entière entre [0,255]. Si le RSSI avec l'AP
courant descend au-dessous d'un seuil, la station doit lancer la phase de
découverte pour chercher un autre point d’accès plus approprié.
La recherche du meilleur point d’accès passe par l'écoute du support.
Elle peut se faire de deux manières différentes : scan actif et scan
passif, selon des critères tels que les performances ou la consommation
d'énergie.
a. Scan actif:
La station mobile sonde tous les canaux radio consécutivement en
envoyant une trame, appelée Probe Request Frame. Lorsqu'un AP
reçoit cette trame, il répond à la station source en envoyant une trame,
appelée Probe Response Frame. Cette trame contient les différents
paramètres, tels que des informations de configuration réseau comme le
SSID et le mécanisme de sécurité adopté, le taux des transmissions
supporté, etc. Lorsque la station reçoit une Probe Response , il
enregistre les différents paramètres de l'AP contenus dans cette trame.
Ensuite, la station mobile continue de sonder les canaux radio suivants
(ou une liste de canaux radio). Après avoir sondé tous les canaux, la
station sélectionne un AP parmi ceux qu'il a découverts et passe à la
phase d'authentification.
Il est possible que la station ne puisse pas recevoir une Probe Response
après l'envoi d'une Probe Request sur un canal. En effet, une collision
peut survenir lors de l'envoi de la trame Probe Request quand il n'y a
pas d'AP à proximité opérant sur le canal sondé et peut causer une non
réception de Probe Response. Pour éviter que la station n’attende trop
longtemps la Probe Response sans pouvoir sonder le canal suivant ; la
station doit lancer un compteur appelé Probe Timer après l'envoi d'un
Probe Request sur un canal radio. La norme définit deux temps d'attente
lors du scan d'un canal : MinChannelTime » et MaxChannelTime ».
Après l'émission de la première Probe Request sur un canal, la station
initie le compteur Probe Timer. S'il n'y a pas d'activité détectée sur le
canal, et lorsque le compteur Probe Timer atteint la valeur
MinChannelTime et si pendant ce temps la station n'a pas encore reçu
de Probe Response, elle en déduit qu'aucun AP n'opère sur ce canal et
passe au canal suivant. Par contre, si la station détecte une activité sur
le canal, elle doit attendre Probe Response d'AP jusqu'à ce que le
compteur Probe Timer atteigne la valeur MaxChannelTime et passer au
canal suivant.
La norme ne définit que la relation MinChannelTime < MaxChannelTime
sans donner de valeurs numériques à ces paramètres. Cependant, ces
paramètres peuvent fortement varier suivant l'équipement sans fil utilisé.
Une mesure empirique montre que MinChannelTime et
MaxChannelTime valent respectivement environ 20 ms et 40 ms.
Pour sonder tous les canaux, la limite du délai de scan actif peut être
calculée comme suit:
Où N est le nombre de canaux qui peuvent être sondés lors du scan
actif et T_scan correspond à tout le délai de scan actif mesuré.
[Link] Passif :
Le standard 802.11 spécifie également une méthode de recherche
passive. Les APs diffusent périodiquement sur son canal une trame
balise ou Beacon Frame pour annoncer leur présence. Afin de découvrir
les APs sur un canal, il suffit pour les stations de basculer sur ce canal
et d'intercepter des trames balises provenant des APs. La trame balise
est généralement envoyée toutes les 100 millisecondes par l’AP.
Pour 11 canaux, la station doit prendre 100 ms × 11 ≈ 1 seconde à sonder tous
les canaux et découvrir tous les APs disponibles. Puisque le scan passif
nécessite toujours une plus longue latence que le scan actif, la plupart des
stations utilisent le scan actif pour découvrir les APs disponibles.
Ⅰ.3.2 Phase d'authentification
Lorsqu'une station a sélectionné un nouvel AP suite à la phase de
découverte, elle doit s'authentifier avec l'AP choisi. Deux méthodes
d'authentification sont définies dans la norme IEEE 802.11 :
❖ La méthode ouverte : qui ne nécessite qu'une séquence de
deux messages (requête/réponse) car chaque station est
systématiquement autorisée à accéder au réseau.
❖ La méthode à clé partagée est, par contre, décomposée en
une séquence de quatre messages. La station commence
par envoyer son identité à l'AP. Celui-ci demande alors à la
station de répondre à un texte de défi permettant de vérifier
si la station possède le secret partagé.
Après vérification de la réponse au texte de défi, l'AP communique à la
station le résultat de l'authentification (réussie ou non).
Ⅰ.3.3 Phase de réassociation
La phase de réassociation constitue la dernière étape de la procédure
d'association et se décompose en deux échanges de messages. La
station envoie au point d’accès une trame de requête d’association, ce
dernier envoie à son tour une trame de réponse à la requête
d’association. Suite à une authentification réussie, la phase
d'association permet à la station et à l'AP de s'accorder sur les différents
paramètres qu'ils vont utiliser pour leurs communications à venir. Une
station est capable de transmettre et de recevoir des données dès la fin
de la phase d'association.
La figure 2 ci dessous illustre les différentes phases introduites
précédents.
Figure 2
Dans les trois phases de la procédure d’association, le délai total est
décomposé en trois parties : le délai de découverte des APs, le délai
d'authentification et le délai de réassociation. Parmi ces délais le plus
important est le délai de la phase de découverte, il représente environ
90% du délai total. La phase d'authentification et la phase de
réassociation ne nécessitent généralement que quelques millisecondes.
Comme nous l’avons dit précédemment, la station ne peut ni transférer
ni recevoir les données avant la fin de la procédure d'association. Le
délai est assez significatif pour pénaliser la qualité de service des
applications exigeant des grandes contraintes temporelles étant donné
que la station doit par défaut scanner tous les canaux consécutivement.
Pour réduire le délai, la meilleure solution est de scanner le moins de
canaux possible.
Ⅰ.4 Le roaming dans Wi-Fi
Le roaming en Wi-Fi représente l'action qui consiste pour une station à
changer d’AP sans perdre sa connectivité réseau. Il faut préciser que
dans les réseaux GSM, les notions de roaming et de handover
représentent des actions différentes, ce qui n'est pas le cas dans le Wi-
Fi. Les mots « roaming », « handover », ou « itinérance » seront donc
utilisés indifféremment dans le domaine du Wi-Fi.
Ⅰ.4.1 IAPP ou 802.11f
Au début, le roaming n'a pas été implémenté dans la norme IEEE
802.11 bien que cette dernière soit une technologie sans fil. Mais
quelques années après, les constructeurs et chercheurs ont trouvé une
solution : l’IAPP pour Inter Access Point Protocol, qui va donc soutenir
l'interopérabilité des fournisseurs de point d'accès, permettant le
roaming des stations 802.11.
Figure 3 : Le protocole IAPP
IAPP définit des messages et des données à échanger entre les APs
ainsi que les entités de gestions des couches supérieures pour
supporter le roaming. Ce protocole a donc besoin d'un système de
distribution (DS) pour échanger les informations entre ces APs. Il utilise
le TCP pour la communication entre les points d'accès et UDP pour les
échanges du type RADIUS « request/response ». Notons qu'il est
possible d'adjoindre un ou plusieurs serveurs RADIUS qui permettront
deux choses: en premier lieu, d'associer chaque AP avec son BSSID et
permettre la consultation de cette information, et en second lieu de
donner des clés de cryptages aux APs pour augmenter la confidentialité
des échanges. Ces deux fonctions sont entièrement facultatives.
Une fois, une station en roaming entre dans la zone de couverture du
nouvel AP, elle lancera le handover à cet AP. Ceci déclenche au
nouveau AP d’employer le protocole IAPP pour rechercher les
informations appropriées de la station au serveur RADIUS, pour informer
l'ancien AP de la nouvelle association et pour exécuter un transfert de
contexte avec cet ancien AP.
Le but principal de ce protocole est de :
➔ Assurer la mise à jour rapide des tables de pont (« bridge tables »)
pour ne pas perdre les trafics destinés à la station mobile.
➔ Partager des données d'authentification concernant la station
mobile pour permettre une réauthentification rapide.
➔ Passer des informations sur l'identité des autres APs dans le
même réseau, pour être employées dans des outils de
diagnostiques.
Ⅰ.4.2 La relation entre IAPP et IEEE 802.11
Comme la figure 4 ci-dessous l'illustre, l'échange d'IAPP est exécuté
entre les APs et cela par l'intermédiaire du système de distribution (DS).
Quand une station se déplace d'un AP à un autre, une réassociation à
un « nouveau AP » est exécutée pour s'assurer que la station maintient
la connexion au réseau. De cette manière, le nouveau AP saura l'arrivée
de la station. L'ancien AP (à partir duquel la station part) doit être
informé au sujet de cet événement, de sorte qu'il ne passe pas le trafic à
la station.
L'ancien AP peut être informé de deux manières différentes :
● Passive : La station lance le trafic qui est reçu par l'ancien AP sur
un port différent (le port d'Ethernet par exemple), où l'ancien AP l'a
attendu (c.-à-d. le port sans fil). En conséquence l'ancien AP
mettra à jour ses tables de pont.
● Active (par protocole) : le nouvel AP informera l'ancien AP que la
station est réassociée. Les avantages d'une méthode active tels
qu'IAPP sont :
● Retard de mise à jour des tables de pont minimale,
● Aucun trafic perdu quand les données étaient sur son chemin vers
la station tandis qu’elle s’éloignait de l’AP,
● Possibilités de diffuser des informations additionnelles entre APs.
Figure 4 : L’échange IAPP
Ⅰ.4.3 Définition du protocole IAPP
Deux protocoles de base sont définis dans IAPP, ce sont :
➢ Announce Protocol : ceci s’assure que l’AP sache les autres APs
dans son réseau.
➢ Handover Protocol : ceci s’assure que les APs soient activement
informés au sujet de l'événement du roaming d'une station mobile.
Ces deux éléments de protocole sont échangés entre les APs en
utilisant le trafic d'UDP/IP. En d'autres termes, ces éléments exigent la
connaissance de l'adresse IP de l'APs.
a. IAPP Announce Protocol
Deux messages Announce AP sont définis, ce sont :
● ANNOUNCE request, et
● ANNOUNCE response.
Quand un AP se met à travailler, il transmettra un « Announce request »,
indiquant qu’il commence à travailler et demande les autres APs pour se
faire connaître. Ce message est envoyé à une adresse de destination
d'IP Multicast en utilisant l'adressage de groupe défini d'UDP/IP.
D'autres APs qui font partie du même réseau et sont déjà opérationnels
répondent avec un message « Announce response ». La réponse
portera 2 informations (l’adresse IP de l'expéditeur en tant qu'élément de
l'en-tête, et le BSSID de l’AP en tant qu'élément de la charge utile),
ceux-ci sont employés par le nouveau AP pour construire une table de
correspondance de « BSSID-to-IP ». La table est employée par le
nouvel AP pour relier le BSSID, employé par la station en état de
roaming afin d’identifier son ancien AP, à l'adresse IP de l’ancien AP.
Après un intervalle approprié de temps, quand toutes les réponses sont
reçues, le nouvel AP publie un message d’« Annonce response » pour
indiquer son statut opérationnel.
Le nouvel AP va (comme tous les APs) renvoyer un « Announce
response » pour continuer à informer tous les APs participants, au sujet
de tous les changements de statut.
Il y a 3 méthodes différentes, ce sont les « Announce Procedure » :
➢ « pick and go »,
➢ « central control method », et
➢ « Distributed control method ».
b. IAPP Handover Protocol
Deux types de Handover IAPP existent, ce sont :
➔ [Link], et
➔ [Link]
Déroulement du protocole :
Quand la station mobile s’éloigne de son ancien AP, elle doit s’associer
à un nouvel AP rapidement, afin de maintenir la connectivité au réseau.
Par conséquent, elle envoie une « Reassociation Request ». Le nouvel
AP auquel la station veut s’attacher renverra une « Reassociation
Response » s’il l’accepte. C’est après ces mécanismes que le nouvel AP
prendra en charge la station mobile, et c’est ainsi que s’achève la
procédure du handover.
Basé sur les informations contenues dans la « Reassociation Request
(BSSID de l’ancien AP), le nouveau AP peut obtenir l'adresse IP de
l’ancien AP, qui a été obtenue par l’Announce protocole. En utilisant
cette adresse IP le nouveau AP envoie une demande de Handover
(Handover Request) à l’ancien AP (par l'intermédiaire du système de
distribution).
La demande de Handover portera un nombre de séquence, qui est
recherché quand le nouvel AP reçoit des Handover Responses. Quand
la réponse de Handover avec le nombre de séquence correct est reçue,
le Handover est considéré être accompli.
Il y a 3 types de Handover Procédures :
● Normal Handover Procedure,
● Handover Retransmission, et
● Handover Network Recovery.
Voici une figure illustrant le fonctionnement d’une des procédures :
Figure 5 : Normal Handover Procedure.
On peut dire que l'IAPP est une prolongation de la norme IEEE 802.11
pour soutenir l'interopérabilité, la mobilité, le handover et la coordination
parmi les APs d’un WLAN. Aujourd’hui de nombreuses recherches sur le
sujet de la gestion du handover au niveau de la couche liaison de
données sont effectuées. Comme nous l’avons dit plus haut, la majorité
de la latence du handover est principalement dû à la procédure de la
phase de découverte (Scanning phase). Parmi les solutions les plus
prometteur proposées jusqu’à aujourd’hui sont les méthodes dite «
Neighbor Caching Mechanism », qui consiste à diminuer, voire
supprimer la procédure de scan des AP environnement à partir de la
construction d’une table contenant les informations (Channel, BSSID,
…) concernant les APs environnant (voisin ou neighbor en anglais) mis
en cache dans les APs. Ces mécanismes sont basés sur « les théories
de graphe ». Cependant, sa mise en place est plus ou moins compliqué,
selon les équipements utilisés, car elle nécessite une mise à jour ou une
mise à niveau du « firmware » ou micro-logiciel de l’AP concerné.
Toutefois sa mise en place peut diminuer considérablement le délai du
handover. Ce délai qui était de l’ordre de la seconde peut être réduit
jusqu’à 26,1 ms, voire à 2,6 ms. Ceci étant, nous ne nous attarderons
plus sur la question concernant le handover niveau 2. Le grand défi se
concentre maintenant sur la gestion de la mobilité au niveau des
couches supérieures. [23] Maintenant, nous allons parler du protocole IP
Mobile qui fait partie des protocoles les plus utilisés au niveau des
couches hautes : la couche réseau.