• Aucun résultat trouvé

Les protocoles de routage proactifs

6.4 Les différents protocoles existant

6.4.2 Les protocoles de routage proactifs

La famille des protocoles ad-hoc que l’on nomme proactifs est, comme nous l’avons vu précédem-ment, celle qui utilise des tables de routage. Pour cela, il est nécessaire que chaque noeud procède à des échanges de messages avec les autres afin de rechercher à chaque fois les routes optimales. Ces tables de routage sont dynamiques et s’adaptent aux changements de configuration du réseau.

Voici les neufs protocoles que nous avons recensés pour cette famille :

6.4.2.1 Le protocole DSDV

Le protocole DSDV (Destination Sequence Distance Vector [Perkins and Royer, 1999]) est l’un des premiers à être spécifié par le groupe de travail MANET. Il s’inspire très naturellement du protocole RIP. Pour illustrer cet exemple considérons le réseau R1 (figure 6.4.2.1 et la table de routage associée gérée par ce protocole.

La table gérée par le protocole DSDV (voir table 6.1) nous permet de savoir que lorsque H1 veut joindre H5, la métrique sera de 2 et la station qui servira de relais sera, dans un premier temps, H2.

Destination Nombre de sauts Prochains noeuds

H1 0 H1 H2 1 H2 H3 2 H2 H4 2 H2 H5 2 H2 H6 1 H6

126 Les réseaux sans fil

FIG. 6.4 – Illustration du fonctionnement du protocole DSDV

Le principal défaut de ce protocole (qui existe aussi dans RIP) concerne la convergence des tables; il provient du fait que chaque hôte transmet sa table de routage à ses voisins. Une station qui reçoit une table compare son contenu au sien et corrige sa propre table pour déterminer le plus court chemin. Cependant, le nombre de sauts n’est pas toujours déterminé! Certains noeuds sont donc non joignables.

De plus, le ratio messages utiles envoyés sur le total des messages envoyés est mauvais surtout si les noeuds sont mobiles.

Le protocole DSDV, comporte donc de nombreux défauts : il n’est, aujourd’hui, plus utilisé. Cepen-dant il a été amélioré et est devenu le protocole AODV et a inspiré bon nombres d’autres protocoles.

6.4.2.2 Le protocole OLSR

Le protocole OLSR (Optimized Link State Routing [Clausen et al., 2001]) applique des règles de routage centrées lien13. En effet, dans les réseaux ad-hoc équipés de ce protocole, c’est l’état du lien qui renseigne sur le placement des autres hôtes. Le choix de la route (quelle soit en fonction de la rapidité ou de la métrique) fait intervenir l’algorithme Dijkstra14[Cormen et al., 2002], très utilisé pour la découverte de route.

Lors d’une communication, un noeud élit parmi ses voisins un représentant qui deviendra MPR (Multi-Protocol Router). Ce noeud, qui joue le rôle de relais multipoints, a pour mission d’acheminer l’information. Les MPR sont choisis grâce à l’envoi de message HELLO que les noeuds s’échangent pour connaître la nature des liens15qui les sépare. Un noeud aura le statut de MPR s’il peut atteindre avec un lien symétrique un voisin éloigné de plus de deux sauts. L’identifiant de tous les MPR est communiqué au réseau via des messages TC (Topology Control) à intervalles de temps réguliers ce qui permet aux noeuds de mettre à jour leur table de routage.

Ainsi voyons ce que nous obtenons pour le réseau figurant en 6.5. Les MPR de ce réseau seront :

H1 pour H0, H2, H6.

13. Un routage centrée lien est un routage qui tient compte de l’état et de la qualité du médium de communication 14. cet algorithme permet de calculer le plus court chemin le long d’un graphe d’état

Les différents protocoles existant 127

FIG. 6.5 – Illustration du fonctionnement du protocole OLSR

H2 pour H1 et H3

H3 pour H2, H4 et H7

H4 pour H3, H5 et H9

H6 pour H1 et H7

H7 pour H3, H6 et H8

Le fait qu’il ne fasse pas intervenir l’inondation augmente les performances.

6.4.2.3 Le protocole WRP

Le protocole WRP (Wireless Routing Protocole [Murthy and Garcia-Luna-Aceves, 1995]) est basé sur ce que l’on appelle les algorithmes PFA (Path-Finding Algorithm). Ce protocole oblige les noeuds à posséder :

une table de distance qui est en fait une matrice contenant pour chaque couple de noeuds possibles leur distance,

une table de routage,

une table de coûts des liens qui contient entre autres les "timeout" associés à chaque noeud,

une liste de retransmission de messages qui permet de connaître les noeuds voisins qui n’ont pas acquitté le message de mise à jour et de pouvoir ainsi leur retransmettre.

Les mises à jour sont envoyées à chaque changement d’état d’un des liens voisins ou après réception des données de mise à jour d’un voisin.

Ce protocole a donc pour caractéristique principale de vérifier la cohérence entre ses tables et la réalité.

6.4.2.4 Le protocole GSR

Le protocole GSR (Global State Routing [Chen and Gerla, 1998]) est similaire au protocole DSDV (voir §6.4.2.1). En effet, il est aussi basé sur les états de lien entre noeuds et tente d’en supprimer les inondations qui abaissent le rendement d’un tel protocole.

Les noeuds du réseau, lorsque ce protocole est mis en oeuvre utilisent :

128 Les réseaux sans fil

Une table de topologie qui contient pour chaque destination l’état du lien qui les sépare et une estampille de l’information

Une table des noeuds qui contient pour chaque destinataire l’identifiant des voisins à qui doit être envoyé le paquet.

Une table de distance qui contient pour chaque noeuds destination la distance minimale.

Un noeud met à jour ses tables à chaque réception d’un message de routage et le retransmet à ses voisins. On peut, pour coder la logique de sélection de chemin, utiliser n’importe quel algorithme comme l’algorithme Dijksra (qui nécessite tout de même d’être adapté afin de mettre à jour toutes les tables).

6.4.2.5 Le protocole FSR

Comme son nom l’indique, le protocole Fisheye State Routing [Iwata et al., 1999] est basé sur la technique dite FishEye [Kleinrock and Stevens, 1971]. Il a été conçu dans le but de réduire le volume d’informations nécessaires pour représenter les données graphiques et consiste à garder une grande pré-cision dans une zone proche de ce que l’on appelle le point focal. Plus on s’éloigne de ce point, moins on est précis.

Cette approche FishEye se traduit dans notre contexte, pour un noeud, par le maintien des données concernant la précision de la distance et la qualité du chemin pour les proches voisins. Plus un noeud est éloigné, plus les données possédées sur celui-ci seront floues.

6.4.2.6 Le protocole ZHLS

Le protocole ZHLS (Zone-Based Hierarchical Link State Routing [Joa-Ng and Lu, 1999]) est basé sur la décomposition d’un réseau en zone. Contrairement à la plupart des protocoles dit hiérarchiques, il n’y a pas ici de représentant pour chaque zone. La topologie d’un réseau est ainsi partagée en deux niveaux :

Un niveau noeud permet de connaître les noeuds qui sont connectés (nature des liens...)

Un niveau zone qui renseigne sur le schéma de connexion des différentes zones.

Ces niveaux différents entraînent donc deux différents types de liens : les liens inter-noeuds et les liens inter-zones.

Le réseau est donc décomposé comme l’illustre la figure 6.6.

Il résulte de cette décomposition un routage inter-zone et un routage intra-zone qui est permise par l’adressage mise en place et qui consiste en un identificateur de zone et un identificateur de noeuds et l’utilisation de LSP (Link State Packet) qui renseignent sur l’état des liens. On peut là aussi distinguer deux classes de LSP : ceux orientés noeuds pour lesquels un noeud donné contient des informations sur son voisin et ceux orientés zone qui sont, quant à elles, échangées de manière globale.

6.4.2.7 Le protocole CGSR

Le protocole CGSR (Clusterhead Gateway Switch Routing [Chiang et al., 1997]) est issu du proto-cole DSDV (voir en §6.4.2.1). Ce protoproto-cole rassemble chaque noeud du réseau en groupes contenant :

Un représentant du groupe qui à pour voisins tous les noeuds du groupe

Un ou plusieurs noeuds dits de liaisons qui sont commun à plusieurs groupes (à leur frontière)

Les différents protocoles existant 129

FIG. 6.6 – Illustration du fonctionnement du protocole ZHLS Le réseau est ainsi décomposé comme l’illustre la figure 6.7.

Ce protocole est en fait la juxtaposition de deux protocoles :

1. Un protocole interne au groupe pour assurer une topologie en étoile,

2. Un protocole externe au groupe pour assurer la communication entre les groupes.

Les représentants se créent une représentation du réseau via un graphe de recouvrement. Ce graphe est en fait le squelette de l’architecture du réseau.

Chaque noeud possède une table indiquant les membres et groupes associés. Chaque noeud diffuse cette table périodiquement et met la sienne à jour en fonction de celles qu’elle reçoit de la même manière que le fait DSDV. C’est donc la fréquence d’émission de ces tables qui assure le degré d’adaptivité du réseau.

Ce routage est déterministe mais ne donne pas le chemin optimal que l’on pourrait espérer (dans notre cas si H0 veut joindre H6 la route proposée par le protocole sera (H0,H1,H2,H3,H7,H6) et non (H0,H1,H2,H4,H6)).

6.4.2.8 Le protocole HSR

Le protocole HSR (Hierarchical State Routing) utilise les notions de groupes dynamiques, niveaux hiérarchiques avec une gestion efficace de localisation tout comme pour le protocole CGSR vu précé-demment en §6.4.2.7.

L’ensemble des noeuds est partitionné en un ensemble de groupes représentés par un élu mais il existe une récursion : les représentants des groupes dans un niveau n, deviennent des membres dans le niveau n + 1.