Vous êtes sur la page 1sur 8

Neggaz Hichem

2 mars 2020

Ad-hoc On-demand Distance


Vector
Introduction:
Lors de la transmission d'un paquet d'une source vers une destination, il est
nécessaire de faire appel à un protocole de routage qui acheminera correctement le
paquet par le «meilleur » chemin. Plusieurs protocoles ont été proposés au niveau
ad hoc. Parmis ces protocoles l’AODV.

Définition:
- Les réseaux Ad hoc sont des réseaux sans fil capable de s’organiser
automatiquement sans infrastructure.
- AODV pour Ad hoc On Demand Distance Vector. AODV est un protocole
réactif. Se base sur le principe du numéro de séquence et la minimisation du
nombre de sauts L’envoie du data se fait après un processus de découverte de
routes. La route sélectionnée c’est celle ayant le plus petit nombre de sauts.

Le type des messages dans AODV :


Le protocole AODV fonctionne à partir de quatre types de messages :
- Le message RREQ de demande de route, est le message d'interrogation des
routes disponibles. Il est constitué d'une trame de 24 octets :

AD-HOC ON-DEMAND DISTANCE VECTOR 1


• Le champ Type est forcé à 1.
• Le bit J : est positionné à 1 sur le message sortant en cas d'utilisation de
multicast.
• Le bit R : est positionné à 1 sur le message retour en cas d'utilisation de
multicast.
• Le bit G : Drapeau RREP gratuite, indique si un RREP gratuite doit être
envoyé en unicast vers le nœud spécifiée dans le champ Adresse IP
destination.
• Le bit D : Drapeau de destination seulement, indique que la destination
seul peut répondre à cette RREQ.
• Le bit U : Numéro de séquence inconnue, indique à la destination que le
numéro de séquence est inconnu.
• Reserved : Envoyés à 0, ignoré à la réception.
• Hop count : Le nombre de sauts à partir de l'adresse IP origine jusqu'au
nœud de traitement de la demande.
• RREQ ID : Un numéro de séquence unique permet d'identifier les RREQ
notamment lorsqu'elle est prise en association avec l'adresse IP d'origine.
• Destination IP Address : L'adresse IP destinataire pour laquelle une route
est souhaitée.
• Destination Sequence Number : Le dernier numéro de séquence reçu par
l'émetteur pour toute route vers le destinataire.
• Originator IP Address : L'adresse IP du nœud à l'origine de la demande
de route.
• Originator Sequence Number : le numéro de séquence actuelle utilisée
dans l'itinéraire pointant vers l'initiateur de la route demandée.

- Le message RREP de réponse à la demande de route, est le message


indiquant au demandeur les routes disponibles. Il est constitué d'une trame de
20 octets :


AD-HOC ON-DEMAND DISTANCE VECTOR 2


• Le champ Type : forcé à 2.
• Le bit R : Indicateur de réparation; utilisée pour le multicast.
• Le bit A : acquittement requis.
• Reserved : Envoyé à 0, ignoré à la réception.
• Prefix Size : Si non nul, la taille de préfixe à 5 bits indique que le saut
suivant peut être utilisé pour tous les nœuds avec le même préfixe de *routage
(tel que défini par le préfixe Taille) pour la destination demandée.
• Hop Count : Le nombre de sauts à partir de l'adresse IP origine à
l'adresse IP de destination. Pour une route de multicast demandée, indique le
*nombre de sauts à effectuer à chaque membre de l'arbre en envoyant
l'RREP.
• Destination IP : L'adresse IP de la destination pour laquelle une route est
fournie.
• Destination Sequence Number : Le numéro de séquence de la
destination associée à l'itinéraire.
• Originator IP Address : L'adresse IP du nœud à l'origine du RREQ pour
laquelle l'itinéraire est fourni.
• Lifetime : Le temps en millisecondes pendant lequel les nœuds recevant
l'RREP peuvent considérer la route comme étant valide.

- le message RERR indiquant une route en erreur est le message retour


signalant au demandeur les routes en erreur. Il est constitué d'une trame de
20 octets :


AD-HOC ON-DEMAND DISTANCE VECTOR 3


• Le champ Type : forcé a 3.
• le bit N : Indicateur de non-suppression. Quand un nœud a effectué une
réparation locale d'un lien. Les nœuds amont ne doivent pas supprimer la
route.
• Reserved : Envoyé à 0, ignoré à la réception.
• DestCount : Le nombre de destinations inaccessibles inclus dans le
message, doit être d'au moins de un.
• Unreachable Destination IP Address : L'adresse IP destinatrice qui est
devenue inaccessible en raison d'une coupure de liaison.
• Unreachable Destination Sequence Number : Le numéro de séquence
dans l'entrée de la table de routage pour la destination indiquée dans le
champ précédent Destination IP inaccessible.

- Le message RREP-ACK16 d'accusé de réception de route de repli, est le


message indiquant la prise en compte d'une autre route disponible. Il est constitué
d'une trame de 2 octets. Le premier octet est constitué du champ Type sur 8 bits
forcé à 4 indiquant qu'il s'agit d'un message RREP-ACK. Les 8 bits suivant mis à 0
sont réservés pour évolution.

• Le champ Type : forcé à 4.


• Reserved : forcé à 0 ignoré à la réception.

Fonctionnement de protocole :
Découverte de route :
Lorsqu' un noeud veut émettre un message, il cherche dans sa table de
routage si une route valide existe pour la destination qu'il souhaite atteindre, s'il n'en
existe aucune, il se met à la recherche d'une route.

AD-HOC ON-DEMAND DISTANCE VECTOR 4


Cette tâche est réalisée par la diffusion de message RREQ sur une adresse de
type broadcast au travers de réseau. Le champ numéro de séquence destination de
paquet RREQ, contient la dernière valeur connue du numéro de séquence associé
au noeud destination. Cette valeur est recopiée de la table de routage, si le numéro
de séquence n'est pas connu, la valeur nulle sera prise par défaut. Avant l'envoi du
paquet RREQ, le noeud origine sauvegarde l'identificateur du message et l'adresse
IP de façon à ne pas traiter le message dans le cas où un voisin le lui renverrait. Un
fois la demande de route effectuée, le noeud demandeur se met en attente de
réponses.
Quand un noeud de transit (intermédiaire) reçoit le paquet le de la requête, il
vérifie dans sa table historique si cette requête a déjà été vue et traitée. Si le paquet
est doublon, le noeud doit l'ignorer et arrêter le traitement. Dans le cas contraire le
couple (@ source, ID de requête) sera inscrit dans la table historique pour rejeter le
future doublons, et le noeud continue le traitement en cherchant la destination dans
sa table de routage : s'il possède une
route récente, a noter qu'une route est récente si le numéro de séquence de la
destination dans la table est supérieure ou égale au numéro de séquence dans le
paquet RREQ. Dans ce cas, le noeud envoi un paquet de réponse (RREP) à la
source lui indiquant comment atteindre la destination. Autrement le noeud ne connait
pas la route vers la destination : il incrémente le nombre de sauts et rediffuse le
paquet .
Avant de l'envoi de paquet, le noeud intermédiaire sauvegarde l'adresse du
noeud précédent et celle du noeud source à partir du quel la première copie de la
requête est reçue. Cette information est utilisée pour construire le chemin inverse,
qui sera traversé par le paquet réponse de la route de manière unicast (cela veut
dire qu'AODV supporte seulement les liens symétriques).

Si la requête atteint le noeud destination, un paquet RREP est construit avec le


nouveau numéro de séquence de la destination est suit la route inverse notée dans
les tables (voir la FIG3.4). Le champ hop count de message route RREP est
incrémenté à chaque noeud traversé, une fois le noeud origine atteint, la valeur du
champ hop count représente la distance en nombre de sauts pour aller du noeud
source vers le noeud destination. Quand le noeud reçoit une réponse de route, le

AD-HOC ON-DEMAND DISTANCE VECTOR 5


paquet est examiné, et une entrée pour la route vers la destination est inscrite dans
la table de routage si au moins une des ces conditions est satisfaite :
- aucune route vers la destination n'est connue.
- le numéro de séquence pour la destination dans le paquet de réponse est
supérieure a la valeur présente dans la table de routage.
- les numéros de séquences sont égaux mais la nouvelle route est plus courte.
Afin de limiter le coût dans le réseau, AODV propose d'étendre la recherche
progressivement, initialement, la requête RREQ est diffusée à un nombre de sauts
limité. Si la source ne reçoit aucune réponse après un délai d'attente déterminé, elle
retransmet un autre
message de recherche en augmentant le nombre maximum de sauts. En cas
de non réponse, Cette procédure est répétée un nombre maximum de fois avant de
déclarer que cette destination est injoignable.
A chaque nouvelle diffusion, le champ Broadcast ID du paquet RREQ est
incrémenté pour identifier une requête de route particulière associée à une adresse
source. Si la requête RREQ est rediffusée un certain nombre de fois
(RREQ.RETRIES) sans réception de réponse, un message d'erreur est délivré à
l’application.

Maintenance des routes:


AODV maintient les routes aussi longtemps que celles-ci sont actives, une
route est considérée active tant que des paquets des données transitent
périodiquement de la source a la destination selon ce chemin. Lorsque la source
stoppe d'émettre des paquets des données, le lien expirera et sera effacé des tables
de routage des noeuds intermédiaires. Si un lien se rompt lorsqu'une route est
active, le lien est considéré défaillant. Les défaillances des liens sont, généralement,
dues à la mobilité du réseau ad hoc.
Afin de détecter cette défaillance, AODV utilise les messages de contrôle «
HELLO » qui permettent de vérifier la connectivité ou plutôt l'activité des routes. Un
noeud détermine l'activité d'une route en écoutant périodiquement les messages «
HELLO » transmis par ses voisins. Si pendant un laps de temps, trois messages «
HELLO » ne sot pas reçus consécutivement, le noeud considère que le lien vers ce

AD-HOC ON-DEMAND DISTANCE VECTOR 6


voisin est cassé. Il envoi un message d'erreur (RERR) à la source et la route devient
invalide.

Gestion de la connectivité locale :


En fait, lors de la rupture d'un lien d'une route active, AODV tente de réparer la
connectivité localement en diffusant une requête de recherche de route dans le
voisinage. Si cette tentative échoue, alors la route est supprimée, et nouvelle
recherche de route est lancée par la source.

Avantages et inconvénients:
- L’un des avantages d'AODV est l'utilisation de numéro de séquence dans les
messages. Ces numéros de séquences permettent l'éviter les problèmes de boucles
infinies et sont essentiels au processus de mis à jour de la table de routage.
- Un autre avantage est le rappel de l'adresse IP du noeud origine dans chaque
message. Ceci permet de ne pas perdre la trace du noeud à l'origine de l'envoi du
message lors des différents relais.
- Un inconvénient d'AODV est qu'il n'existe pas de format générique des
messages. Chaque message a son propre format : RREQ, RREP, RERR.

AD-HOC ON-DEMAND DISTANCE VECTOR 7


La convertion du mW—>dBw
La puissance P(dBm) 10 fois le logarithme de base 10 de la puissance P(mW)
dévisé sur 1 milliwatt (mW):

P = 10 ⋅ log ( P / 1mW)
(dBm) 10 (mW)

AD-HOC ON-DEMAND DISTANCE VECTOR 8

Vous aimerez peut-être aussi