Généralités et protocoles de routage dans les réseaux mobiles ad hoc
Un réseau mobile ad hoc, appelé généralement MANET (Mobile Ad hoc Network) [24], est un réseau composé d’unités mobiles qui se déplacent dans un territoire quelconque et dont le seul moyen de communication est l’utilisation des interfaces sans fil, sans l’aide d’une infrastructure préexistante ou d’une administration centralisée. En fait, les réseaux sans fil, les plus couramment déployés aujourd’hui s’appuient sur des infrastructures fixes : sites accueillant des stations de base, dans le cas des réseaux cellulaires ou câbles pour les infrastructures filaires [30]. La connectivité entre les différents éléments du réseau y est organisée et centralisée. Par contre, les réseaux ad hoc sont des réseaux sans fil formés par des appareils, appelés noeuds, et ont la capacité de jouer en même temps le rôle de routeur en relayant les paquets entre deux entités qui ne sont pas à portée de communication. Les appareils en question peuvent être aussi variés que des ordinateurs, des PDAs, des téléphones mobiles, etc. Chaque noeud du réseau est équipé d’une interface radio qui peut être différente d’un noeud à l’autre et reste libre d’intégrer ou de quitter le réseau. En effet, le réseau s’adapte spontanément, pour répondre à un besoin, d’où la terminologie ad hoc (en latin : pour cela) et se configure de façon complètement autonome et dynamique en fonction des possibilités de connexions existantes. Ainsi lorsque les noeuds des réseaux ad hoc sont mobiles, on parle de MANET (Mobile Ad hoc Network).
Caractéristiques des réseaux mobiles ad hoc
Les réseaux mobiles ad hoc ont les caractéristiques suivantes :
• Une topologie dynamique : Les unités mobiles du réseau se déplacent de façon libre et arbitraire. Par conséquent la topologie du réseau peut changer à des instants imprévisibles, de manière rapide et aléatoire ;
• Une bande passante limitée : Une des caractéristiques primordiales des réseaux basés sur la communication sans fil est l’utilisation d’un médium de communication partagé. Ce partage fait que la bande passante réservée à un hôte soit modeste ;
• Des contraintes d’énergie : Les hôtes mobiles sont alimentés par des sources d’énergie autonomes comme les batteries ou autres sources consommables. Le paramètre d’énergie doit être pris en considération dans tout contrôle fait par le système ;
• Une sécurité physique limitée : Les réseaux mobiles ad hoc sont plus touchés par le paramètre de sécurité que les réseaux filaires classiques. Cela se justifie par les contraintes et limitations physiques qui font que le contrôle des données transférées doit être minimisé ;
• L’absence d’infrastructure : Les réseaux mobiles ad hoc se distinguent des autres réseaux mobiles par la propriété d’absence d’infrastructures. Les hôtes mobiles sont responsables d’établir et de maintenir la connectivité du réseau de façon continue.
Le routage dans les réseaux mobiles ad hoc
Définition du routage
Le routage est une méthode d’acheminement des informations à la bonne destination à travers un réseau de connexion donné. Le problème de routage consiste à déterminer un chemin optimal des paquets à travers le réseau au sens d’un certain nombre de critères de performance.
Le routage de paquets
Afin de comprendre les attaques sur les protocoles de routage, il est nécessaire de comprendre leur fonctionnement global [21]. Lorsqu’un nœud dans un réseau, veut émettre un message vers un autre noeud, il regarde dans sa table de routage si une route existe vers ce noeud. Si elle n’existe pas, il initie une découverte de route, route discovery, en diffusant sur le réseau, dans les airs pour les accès sans fil, un message de type route request. Le message de route request contient l’adresse du noeud émetteur, l’adresse du noeud destinataire, un marqueur permettant d’identifier la découverte de route et une liste initialement vide à remplir par les noeuds intermédiaires. Lorsqu’un noeud intermédiaire reçoit ce paquet, s’il n’en est pas le destinataire et si sa table de routage n’indique pas de chemin pour le noeud recherché, il diffuse à son tour le paquet de type route request en rajoutant son adresse à la liste de noeuds intermédiaires. Dans le cas où le noeud intermédiaire possède dans sa table de routage un chemin pour le noeud destinataire, la majorité des protocoles prévoit que le noeud intermédiaire renvoie directement un message de type route reply à l’émetteur en indiquant ce chemin. Lorsqu’un paquet de requête atteint son destinataire, ce dernier émet un paquet de réponse du type route reply. Ce paquet transite par les noeuds intermédiaires de la liste.
Lorsque la réponse atteint l’initiateur de la découverte de route, ce dernier met à jour sa table de routage avec cette nouvelle route, qui consiste en la liste des noeuds intermédiaires avec un coût associé. Le coût sert aux noeuds à effectuer un choix entre plusieurs routes menant à la même destination. Il peut être basé sur le nombre de noeuds intermédiaires traversés ou sur des critères plus complexes comme le débit, la fiabilité des liaisons ou la taille des paquets. Si l’initiateur reçoit ultérieurement une indication comme quoi cette destination peut être jointe avec un coût plus faible par un autre chemin, la table sera mise à jour avec la route ayant le coût le plus faible. Une fois une route établie, un protocole de routage doit aussi mettre en oeuvre un mécanisme de maintenance des routes pour gérer les événements comme la coupure d’un lien entre deux noeuds par lesquels transitent des messages. Lorsqu’un noeud reçoit un paquet de données pour une destination vers laquelle il ne peut plus émettre, il renvoie un message d’erreur de type route error vers la source du paquet de données. La route doit alors être supprimée de la table de routage. Des optimisations existent permettant à un noeud d’écouter les routes échangées par les autres noeuds et de mettre à jour sa table de routage en conséquence.
Les protocoles de routage ad hoc
La stratégie (ou le protocole) de routage est utilisée dans le but de découvrir les chemins qui existent entre les noeuds. Le but principal d’une telle stratégie est l’établissement de routes qui soient correctes et efficaces entre une paire quelconque d’unités, ce qui assure l’échange des messages d’une manière continue. Les protocoles de routage peuvent être classés en différentes familles selon le moment auquel ils initient la découverte de route, selon la manière dont les noeuds d’un réseau se partagent le travail de routage et selon la manière dont les informations de routage sont échangées.
Classification de protocoles de routage
Si un protocole initie la découverte de route lorsque le besoin s’en fait ressentir, c’est à dire lorsqu’un paquet doit être transmis vers une destination dont la route n’est pas connue dans la table de routage, il sera considéré comme faisant partie de la famille des protocoles réactifs. Si le protocole initie des découvertes de route régulièrement sans attendre qu’il y ait un paquet à transmettre, il sera dit proactif. Certains protocoles combinent ces deux manières d’initier des découvertes de routes, à la demande et en avance, et sont donc considérés comme hybrides. Certains protocoles de routage n’utilisent pas tous les noeuds d’un réseau pour faire transiter les messages, au contraire ils en sélectionnent certains, en fonction du voisinage ou pour former des cellules. Ces protocoles sont dits non uniformes. Ceux qui utilisent tous les noeuds du réseau capables de router sont appelés uniformes.
|
Table des matières
INTRODUCTION
Problématique
Première partie : Généralités et protocoles de routage dans les réseaux mobiles ad hoc
I-1 Caractéristiques des réseaux mobiles ad hoc
I-2 Le routage dans les réseaux mobiles ad hoc
I-2-1 Définition du routage
I-2-2 Le routage de paquets
I-2-3 Les protocoles de routage ad hoc
I-2-4 Classification de protocoles de routage
I-2-5 Les protocoles réactifs ou « à la demande »
I-2-5-1 Le protocole de routage« DSR »
I-2-5-2 Le protocole de routage« AODV »
I-2-5-3 Le protocole de routage « TORA»
I-2-5-4 Le protocole de routage « ABR»
I-2-5-5 Le protocole de routage « CBRP»
I-2-5-6 Le protocole de routage « RDMAR»
I-2-5-7 Le protocole de routage « SSR»
I-2-5-8 Le protocole de routage « LAR»
I-2-6 Les protocoles proactifs, ou « par table de routage »
I-2-6-1 Le protocole de routage « DSDV »
I-2-6-2 Le protocole de routage « OLSR »
I-2-6-3 Protocole de routage «FSR »
I-2-6-4 Protocole de routage «HSR »
I-2-6-5 Protocole de routage «DREAM »
I-2-6-6 Le protocole de routage « TBRPF»
I-2-6-7 Le protocole de routage « GSR»
I-2-6-8 Le protocole de routage « ZHLS»
I-2-6-9 Le protocole de routage « CGRS»
I-2-6-10 Le protocole de routage « WRP»
Deuxième partie: Sécurité au niveau des MANETs
II-1 Vulnérabilités des réseaux mobiles Ad hoc
II-2 Exigences de sécurité du routage dans les MANETs
II-2-1 La disponibilité
II-2-2 La confidentialité
II-2-3 L’intégrité
II-2-4 L’authentification
II-2-5 La non répudiation
II-3 Les attaques liées aux protocoles de routage ad hoc
II-3-1 Location disclosure (capture de la position)
II-3-2 Black hole (trou noir)
II-3-3 Replay attack (rejeu)
II-3-4 Wormhole attack
II-3-5 Blackmail (chantage)
II-3-6 Dénis de service
II-3-7 Routing table poisoning (Empoisonnement de table de routage)
II-4 Les protocoles de routage sécurisés au niveau de MANETs
II-4-1 Le protocole SRP (Secure Routing Protocol)
II-4-2 Le protocole ARIADNE
II-4-3 Le protocole ARAN
II-4-5 Le protocole SOADV
II-4-6 Le protocole SEAD
II-4-7 Le protocole de routage SLSP
II-4-8 Le protocole de routage SAR
II-5 Packet leashes
II-5-1 L’approche géographique (Geographical leashes)
II-5-2 L’approche temporelle (temporal leashes)
II-6 Watchdog and Pathrater
II-7 TESLA (Time Efficient Stream Loss-tolerant Authentication)
II-7-1 Synchronisation d’horloge avec TESLA
II-8 Comparaison entre les propositions sécurisées
II-8-1 Exigences et paramètres des protocoles sécurisés de routage ad hoc
II-8-2 Analyse de sécurité
Troisième partie : Solution pour ARIADNE contre l’attaque Wormhole
III-1 Rappel sur les insuffisances de ARIADNE
III-2 Les bases de la solution proposée
III-3 La solution introduite dans la synchronisation au niveau de TESLA
III-3-1 Algorithme de la synchronisation
III-4 Implémentation de la solution dans NS
III-4-1 Teste et validation
III-4-2 Mesures de performance
III-4-3 Modèle de simulation avec ns-allinone-2.29
III-4-4 Le script de simulation
III-5 Résultats et discussion
III-5-1 La fraction de paquets délivrés
III-5-2 La charge normale du routage
III-5-3 Le délai de bout en bout
CONCLUSION ET PERSPECTIVES
Bibliographie
Glossaire