Optimized Link State Routing Protocol
OLSR (Optimized Link State Routing Protocol) est un protocole de routage destinĂ© aux rĂ©seaux maillĂ©s, sans fil ou mobiles. Le protocole est une optimisation de l'algorithme d'Ă©tat de liaison pure. Le concept clĂ© utilisĂ© dans le protocole est lâutilisation des relais multipoints (MPR). L'ensemble MPR est choisi de sorte qu'il couvre tous les nĆuds qui sont Ă deux sauts de suite[1]. Il fonctionne comme un protocole proactif, des informations de topologie avec d'autres nĆuds du rĂ©seau sont Ă©changĂ©es rĂ©guliĂšrement [2].
Dans OLSR deux types de messages sont introduits : « Hello » et « TC » (topology control). Chaque nĆud diffuse un message Hello contenant des informations sur son voisinage et lâĂ©tat des liens. LâĂ©change de ces messages permet de prendre connaissance de son voisinage [3]. Pour construire les tables nĂ©cessaires au routage des paquets, chaque nĆud envoie pĂ©riodiquement un paquet TC contenant la liste de ses voisins lâayant choisi comme MPR. Le message TC est diffusĂ© sur tout le rĂ©seau. Seuls les voisins MPR rediffusent un paquet TC pour Ă©viter lâinondation[4].
Ce protocole a Ă©tĂ© proposĂ© par lâĂ©quipe projet HIPERCOM-INRIA. Il est dĂ©fini dans la RFC 3626[5] de l'IETF, qui le reconnait comme l'un des quatre protocoles de base dans l'utilisation des rĂ©seaux MANET[6].
Pour son aspect dynamique, le protocole OLSR est vulnérable à un certain nombre d'attaques, notamment du brouillage, envoi de mises à jour des messages invalides, ainsi que des attaques destinées au message de contrÎle durant sa génération ou sa transmission. Des recherches sur des techniques d'authentification et de détection des intrusions ont été réalisées pour sécuriser le protocole. Des évolutions ont été réalisées au cours des études de performance du protocole sur le plan de la qualité de service et de consommation énergétique, suivant les différentes implémentations matérielles et logicielles.
Une nouvelle version est en cours de développement (2010)[7].
Protocole
Classe
Dans le domaine des MANET, il existe deux classes de protocoles : les réactifs et les pro-actifs[8].
Les protocoles rĂ©actifs doivent systĂ©matiquement demander leurs routes en inondant le rĂ©seau de leur requĂȘte et en recevant la rĂ©ponse associĂ©e[8].
L'utilisation d'un protocole de cette catégorie au sein d'un MANET implique la construction d'une topologie dans la zone concernée uniquement lorsque le besoin se présente.
Les protocoles réactifs sont : AODV & DSR[8].
Les protocoles pro-actifs quant Ă eux s'assurent que chaque nĆud possĂšde Ă tout moment les informations nĂ©cessaires relatives Ă la topologie pour construire une route vers n'importe quel autre point du rĂ©seau. Cela est rendu possible Ă travers des mises Ă jour rĂ©guliĂšres sur la topologie[8].
Les protocoles pro-actifs sont : OLSR, Topology dissemination based on reverse-path forwarding (en) (TBRPF)[8].
Enfin, il existe des protocoles combinant les avantages des protocoles réactifs et pro-actifs, ce sont des protocoles hybrides, tels que Zone Routing Protocol (en) (ZRP) et TORA[9].
Caractéristiques techniques
Le protocole OLSR est une variation du LSR (en) (en anglais « Link State Routing » ) spĂ©cialement conçu pour les MANET[10]. Contrairement au LSR oĂč tous les nĆuds sont indiffĂ©renciĂ©s, l'optimisation d'OLSR est d'utiliser des relais multipoints (MPR)[10]. Les MPR sont des nĆuds choisis qui expĂ©dient des messages de diffusion pendant le processus d'inondation[11]. Ils sont les seuls Ă dĂ©clarer leurs liens et sont sĂ©lectionnĂ©s par les autres nĆuds de maniĂšre que ceux-ci puissent atteindre n'importe qui en deux sauts[10]. Cette technique rĂ©duit sensiblement la surcharge due aux messages par rapport Ă un mĂ©canisme classique d'inondation, oĂč chaque nĆud retransmet chaque message quand il reçoit la premiĂšre copie du message. Dans OLSR, l'information d'Ă©tat de lien est produite seulement par des nĆuds Ă©lus comme MPR, ainsi, une deuxiĂšme optimisation est rĂ©alisĂ©e en rĂ©duisant au minimum le nombre des messages de contrĂŽle inondĂ©s dans le rĂ©seau. Comme troisiĂšme optimisation, un nĆud de MPR doit rapporter seulement des liens entre lui-mĂȘme et ses sĂ©lecteurs.
Les deux principales fonctionnalités d'OLSR sont[12] :
- la découverte des voisins
- la diffusion de la topologie
OLSR est une optimisation d'un protocole d'état de liaison pour les réseaux mobiles ad hoc [2].
PremiĂšrement, elle rĂ©duit la taille du paquet de contrĂŽle: au lieu de tous les liens, il dĂ©clare qu'une partie des liens avec ses voisins, qui sont ses sĂ©lecteurs de relais multipoints. DeuxiĂšmement, il minimise les inondations de la circulation par ce contrĂŽle en utilisant uniquement les nĆuds sĂ©lectionnĂ©s, appelĂ©s relais multipoints, pour diffuser son message dans le rĂ©seau. Seuls les relais multipoints d'un nĆud peuvent retransmettre ses messages diffusĂ©s. Cette technique rĂ©duit considĂ©rablement le nombre de retransmissions dans une procĂ©dure d'inondation ou de diffusion [2].
Le protocole est conçu pour fonctionner de maniĂšre complĂštement distribuĂ©e et n'a donc pas Ă dĂ©pendre de toute entitĂ© centrale. Le protocole ne nĂ©cessite pas une transmission fiable pour ses messages de contrĂŽle : chaque nĆud envoie ses messages de contrĂŽle pĂ©riodiquement, messages qui peuvent subir une perte de certains des paquets, ce qui arrive trĂšs souvent dans les rĂ©seaux radio en raison de collisions ou d'autres problĂšmes de transmission [2].
DĂ©tection des voisins
Chaque nĆud doit dĂ©tecter les nĆuds voisins avec lesquels il a un lien direct et bidirectionnel. Les incertitudes sur la propagation radio peuvent rendre certains liens unidirectionnels. Par consĂ©quent, tous les liens doivent ĂȘtre contrĂŽlĂ©s dans les deux directions, afin dâĂȘtre considĂ©rĂ©s comme valides [13].
Pour accomplir cela, chaque nĆud diffuse pĂ©riodiquement ses messages BONJOUR contenant les informations sur ses voisins et leur Ă©tat de lien. Ces messages de contrĂŽle sont transmis dans le mode de diffusion. Ils sont reçus par tous les voisins situĂ©s Ă un saut, mais ils ne sont pas relayĂ©es Ă des nĆuds supplĂ©mentaires [2].
Un des messages BONJOUR contient :
- La liste des adresses des voisins pour lesquels il existe un lien bidirectionnel valide.
- La liste des adresses des voisins qui sont entendues par ce nĆud (un BONJOUR a Ă©tĂ© reçu), mais le lien n'est pas encore validĂ© comme bidirectionnel : si un nĆud trouve sa propre adresse dans un message BONJOUR, il considĂšre le lien du nĆud expĂ©diteur comme bidirectionnel.
Message Hello
Les messages HELLO sont utilisĂ©s pour la dĂ©tection de voisin et calculs MPR. Ils sont transmis pĂ©riodiquement Ă tous les voisins Ă 1 saut. Les messages HELLO incluent le type de lien, la volontĂ© du nĆud de devenir MPR, des informations sur les voisins etc. Le type de lien dans ces messages indique si le lien est symĂ©trique, asymĂ©trique ou tout simplement perdu [14].
Ces messages ne sont destinĂ©s qu'aux nĆuds voisins (Ă un saut) de l'expĂ©diteur afin de dĂ©tecter les liens les inter-connectant, ils ne doivent donc jamais ĂȘtre routĂ©s par un MPR.
ExpĂ©diteur : chaque nĆud du rĂ©seau envoie des messages HELLO
Destinataire : adresse de broadcast
Fonction : le message HELLO transmet plusieurs informations et a plusieurs utilités.
Il sert d'abord Ă dĂ©couvrir l'ensemble du rĂ©seau. Il transmet ensuite l'Ă©tat et le type de lien entre l'expĂ©diteur et chaque nĆud voisin.
Il contient Ă©galement trois listes[15] :
- Voisins qui ont Ă©tĂ© "entendus" mais pour lesquels une communication bi-directionnelle n'a pu ĂȘtre Ă©tablie.
- Voisins avec qui le nĆud a pu Ă©tablir une liaison bi-directionnelle.
- Les nĆuds dĂ©signĂ©s comme MPR par le nĆud originaire du message HELLO.
- « Reserved » : Ce champ doit contenir « 0000000000000000 »
- « Htime » : Intervalle d'émission des messages HELLO
- « Willigness » : permet de forcer le passage d'un nĆud en MPR
- « Link Code » : Code identifiant le type de lien (pas d'information, symétrique, asymétrique, etc.) entre l'expéditeur et les interfaces listées (« Neighbor Interface Address »)
Message TC (topology control)
Ces messages sont utilisés pour construire la table de routage. Ce sont des messages d'état de liaison, diffusés périodiquement dans des réseaux entiers [14].
Expéditeur : seuls les MPR envoient des messages TC
Destinataire : adresse de broadcast
Fonction : le message TC permet au MPR de transmettre la liste de ses voisins qui l'ont choisi comme MPR. Il sert à établir les tables de routage. Aussi, pour qu'il soit diffusé sur tout le réseau, la valeur du TTL dans l'header du message est 255, la valeur maximale (voir « paquet type envoyé par le protocole »).
- Reserved : Ce champ doit contenir « 0000000000000000 »
- ANSN (advertised neighbor sequence number) » : entier incrémenté à chaque changement de topologie. Il permet de ne pas tenir compte des informations obsolÚtes, pour tenir les tables le plus à jour possible.
- Advertised neighbor main address » : adresse IP de nĆuds Ă un saut. L'ensemble des nĆuds publiĂ©s dans les messages TC est un sous-ensemble des voisins Ă un saut. La version par dĂ©faut recommande de publier les MPR-selectors, c'est-Ă -dire les voisins pour lesquels le nĆud courant est un relai MPR.
Message MID (multiple interface declaration)
Ces messages sont transmis par les nĆuds exĂ©cutant le protocole OLSR sur plus d'une interface [14].
Les messages MID sont utilisĂ©s pour relier les adresses des interfaces OLSR et les adresses principaux pour des nĆuds OLSR Ă interfaces multiples[18] - [19].
Le message MID contient la liste dâadresses des interfaces associĂ©es Ă son adresse principale. Il est envoyĂ© par le nĆud dans le rĂ©seau pour les dĂ©clarer Ă tous les autres nĆuds[20]. Pour obtenir une meilleure fiabilitĂ© et un meilleur dĂ©bit, les messages MID peuvent servir Ă sĂ©lectionner plusieurs interfaces comme principales et ainsi Ă©tablir des chemins multiples entre deux nĆuds voisins. Pour le routage, un nĆud Ă interfaces multiples apparaĂźtra comme deux nĆuds sĂ©parĂ©s. Si un lien est en panne, un nĆud avec de multiples interfaces pourrait encore fournir le chemin de routage pour les autres nĆuds[19].
Agrégation des messages
Les messages HELLO et TC peuvent ĂȘtre emballĂ©s dans le mĂȘme paquet[21].
Cela permet l'Ă©mission de plusieurs messages en mĂȘme temps sur le rĂ©seau[21].
Le traitement et la méthode de propagation des messages restent néanmoins propres à leur catégorie. Par exemple les messages de type HELLO ne sont pas relayés tandis que ceux de type TC le sont[21].
Relais multipoints
L'idĂ©e des relais multipoints est de minimiser l'inondation de paquets de diffusion dans le rĂ©seau en rĂ©duisant les retransmissions en double vers un mĂȘme nĆud. Chaque nĆud dans le rĂ©seau sĂ©lectionne un ensemble de nĆuds dans son voisinage, qui retransmet ses paquets. Cet ensemble de nĆuds voisins sĂ©lectionnĂ© est appelĂ© le relais multipoint de ce nĆud ou MPR [2].
Les voisins du nĆud N qui ne sont pas dans son ensemble MPR, peuvent lire et traiter le paquet, mais ne peuvent pas retransmettre le paquet de diffusion reçu Ă partir du nĆud N [22]. Pour cela, chaque nĆud maintient une liste de ses voisins qui sont appelĂ©s les sĂ©lecteurs de MPR de ce nĆud. Chaque message de diffusion provenant de ces sĂ©lecteurs MPR d'un nĆud est supposĂ© ĂȘtre retransmis par ce nĆud. Cet ensemble peut changer au fil du temps, ce qui est indiquĂ© par le sĂ©lecteur de nĆuds dans leurs messages [22].
Chaque nĆud sĂ©lectionne ses relais multipoints parmi ses voisins situĂ©s Ă un saut. Un saut correspond Ă un nĆud dont la distance est la plus proche du nĆud principal [23]. Les relais multipoints sont choisis de maniĂšre Ă couvrir (quant Ă la portĂ©e radio) tous les nĆuds qui sont situĂ©s Ă deux nĆuds de distance [23]. L'ensemble de relais multipoints d'un nĆud N, notĂ© MPR (N), est un sous-ensemble arbitraire du nĆud de N qui satisfait la condition suivante : chaque nĆud dont la distance est Ă deux sauts de N doit avoir un lien bidirectionnel vers les relais multipoints du nĆud N. La figure montre la sĂ©lection de relais multipoints autour du nĆud N [23].
OLSR repose sur la sĂ©lection des relais multipoints, et calcule ses routes vers toutes les destinations connues Ă travers les nĆuds. Les nĆuds MPR sont choisis comme des nĆuds intermĂ©diaires dans le chemin [24]. Pour mettre en Ćuvre ce schĂ©ma, chaque nĆud dans le rĂ©seau envoie pĂ©riodiquement des informations Ă ses voisins qui ont Ă©tĂ© choisis comme relais multipoint. DĂšs rĂ©ception de l'information sur les sĂ©lecteurs MPR, chaque nĆud calcule et met Ă jour ses itinĂ©raires pour chaque destination connue. Par consĂ©quent, la route est une sĂ©quence de sauts Ă travers les relais multipoints de la source Ă la destination[24].
Les relais multipoints sont choisis parmi les voisins à un saut avec un lien bidirectionnel. Ainsi, l'itinéraire en passant par les relais multipoints évite automatiquement les problÚmes associés au transfert de données par paquets sur les liens unidirectionnels[23].
Pour le calcul d'itinĂ©raire, chaque nĆuds calcule sa table de routage en utilisant un "algorithme de plus court chemin hop" basĂ© sur la topologie du rĂ©seau partiel qu'il a appris [25].
DĂ©finition
Sur le schĂ©ma d'algorithme de sĂ©lection des MPR, l'ensemble N est constituĂ© des voisins Ă un saut du nĆud (ici en rouge), dont on veut dĂ©terminer les MPR. Un saut correspond Ă tous les voisins qui ont rĂ©pondu au message Hello, cela correspond Ă la portĂ©e radio pour les rĂ©seaux Wi-Fi[26] - [27].
L'ensemble N2 est constituĂ© des voisins Ă 2 sauts du mĂȘme nĆud que prĂ©cĂ©demment. Tous les voisins Ă un saut du nĆud rouge en utilisant les messages hello, vont dĂ©clarer leurs voisins Ă un saut. Ainsi le nĆud rouge connaĂźtra les nĆuds Ă un saut qu'il faudra solliciter pour transmettre un paquet Ă un voisin Ă 2 sauts[28] - [29].
Un lien asymétrique (ou unidirectionnel, le lien est valide que dans un seul sens) est représenté par un trait rouge simple[28] - [29]. Ils sont détectés grùce aux messages Hello, mais ne sont pas utilisés tant qu'ils ne sont pas symétriques[28] - [29].
Un lien symétrique (ou bidirectionnel, le lien est valide dans les deux sens) est représenté par un trait rouge double[28] - [29].
Algorithme
Les différents étapes de l'algorithme sont [28] - [29]:
- On force tous les éléments de N à rerouter les messages.
- On calcule D pour chaque nĆud de N.
- Pour tous les nĆuds dans N2 qui n'ont qu'un et un seul lien symĂ©trique avec un nĆud de N, on dĂ©finit ce nĆud de N comme MPR, et on supprime les nĆuds de N2 reliĂ©s par ce MPR (on les considĂšre comme reliĂ©s). Si le nĆud considĂ©rĂ© dans N2 a des liens symĂ©triques avec plusieurs nĆuds de N (ensemble « E »), on prend comme MPR le nĆud « X » de l'ensemble E qui a le plus haut degrĂ© D, et on efface les nĆuds de N2 joignables par le nĆud « X » (on les considĂšre comme reliĂ©s).
- On rĂ©itĂšre ces trois Ă©tapes, jusqu'Ă ce quâil n'y ait plus de nĆud non reliĂ© dans N2.
Exemple de sélection des MPR
La sĂ©lection des MPR est le point clĂ© dans le protocole OLSR. La sĂ©lection du MPR se fait en choisissant le nĆud voisin Ă un saut. Sâil y a plusieurs nĆuds, le nĆud choisi est alors celui qui a le plus de voisins [1]. Le tableau montre comment le nĆud B sĂ©lectionne un MPR, basĂ© sur le rĂ©seau reprĂ©sentĂ© dans la figure :
Si on prend le nĆud B, les nĆuds C et F couvrent l'ensemble des nĆuds voisins Ă deux sauts. Cependant, le nĆud C est sĂ©lectionnĂ© en tant que MPR car il a 5 voisins alors que le nĆud F en possĂšde 4 (on dit alors que le degrĂ© de C est supĂ©rieur au degrĂ© de F) [1].
Sécurité
Le protocole OLSR est vulnĂ©rable Ă diffĂ©rents types d'attaques[6]. Cette vulnĂ©rabilitĂ© est accrue car il n'est pas nĂ©cessaire de passer par un point d'accĂšs pour se connecter au rĂ©seau[10]. L'utilisation d'une topologie dynamique laisse place Ă de grandes failles de sĂ©curitĂ©[10]. L'utilisation des MPR rend le protocole OLSR moins sĂ©curisĂ© que le LSR puisque seule la connectivitĂ© utile est exploitĂ©e, les nĆuds ne dupliquent plus l'information[10].
Types d'attaques
On peut répertorier les attaques en deux catégories[21] :
- Attaques communes Ă tous les protocoles de routage pro-actifs.
- Attaques inhérentes au protocole OLSR.
Cette page portant uniquement sur le protocole OLSR, les vulnĂ©rabilitĂ©s prĂ©sentĂ©es concernent majoritairement les attaques propres Ă ce protocole. Chaque nĆud a pour rĂŽle premier de gĂ©nĂ©rer du trafic propre au protocole de routage, et deuxiĂšmement est responsable de relayer les informations de routage des autres nĆuds du rĂ©seau. Un comportement incorrect rĂ©sulte donc de la gĂ©nĂ©ration d'informations erronĂ©es sur le routage, ou de l'absence de relais de ces informations [21].
Une attaque permettant de fournir une connectivitĂ© illicite au rĂ©seau doit rĂ©sulter d'un comportement anormal d'au moins un des nĆuds qui le composent.
Une attitude anormale peut résulter de deux comportements[21] :
- Un nĆud supposĂ© connectĂ© au rĂ©seau a Ă©tĂ© compromis et ne possĂšde plus les mĂȘmes caractĂ©ristiques conformes au protocole qu'auparavant.
- Un nĆud fait partie du rĂ©seau alors qu'il ne le devrait pas.
Il existe de nombreuses possibilitĂ©s afin d'introduire des nĆuds dans le protocole OLSR (en partant d'un OLSR dĂ©finit par la RFC, dĂ©pourvu de procĂ©dure de validation) pour lancer diffĂ©rentes attaques[10] :
- une surcharge des routeurs en inondant le réseau afin de le saturer ("déni de service" ou "Denial of service");
- l'envoi de messages de mises Ă jour invalides.
Brouillage
OLSR est vulnérable au brouillage, c'est d'ailleurs le cas pour tous les autres protocoles de routage utilisés sur réseaux ad-hoc.
Le brouillage consiste Ă gĂ©nĂ©rer une grande quantitĂ© d'interfĂ©rences radio. Le bruit gĂ©nĂ©rĂ© entraĂźne alors l'impossibilitĂ© pour les nĆuds de s'Ă©changer des informations utiles entre eux, notamment leurs routes respectives, et empĂȘche ainsi la construction d'un rĂ©seau[21].
Cette vulnĂ©rabilitĂ© ne peut pas ĂȘtre corrigĂ©e au niveau du protocole de routage.
Envoi de messages de mises Ă jour invalides
Un nĆud a normalement deux responsabilitĂ©s[10] :
- générer des messages de contrÎles ;
- les transférer.
Pour compromettre l'intĂ©gralitĂ© du protocole de routage, l'attaquant peut soit envoyer des paquets de contrĂŽle incorrects lorsque le nĆud gĂ©nĂšre les messages de contrĂŽle, soit les modifier lorsque les messages de contrĂŽle sont envoyĂ©s[30]. Un message de contrĂŽle peut ĂȘtre trafiquĂ© en changeant son identitĂ© (en anglais "identity spoofing") ou en endommageant ses donnĂ©es (en anglais "link spoofing").
Attaque sur le message de contrÎle durant sa génération
Dans les schĂ©mas suivants, les nĆuds jaunes sont des nĆuds classiques et les autres des MPR.
Usurpation d'identité avec un message HELLO
Un nĆud malicieux prĂ©tend en ĂȘtre un autre en usurpant son adresse IP (Usurpation d'adresse IP), afin d'envoyer un message HELLO Ă son voisinnage[30].
Corruption des données du message HELLO
Les messages HELLO vont contenir des falsifications de la topologie du rĂ©seau avec l'insertion de nĆuds inexistants, pour que des usurpateurs soient reconnus comme des MPR, pouvant alors contrĂŽler tous les flux qui passent par eux. Il est aussi possible de supprimer des nĆuds existants (par omission dans les messages HELLO) afin de les rendre inaccessibles dans la topologie ainsi construite[30].
Usurpation d'identitĂ© d'un nĆud avec un message TC
Le nĆud 5 est censĂ© envoyer un message TC indiquant qu'il est le dernier saut jusqu'aux nĆuds 6 et 7.
Corruption des données avec un message TC
La corruption des donnĂ©es dans les messages TC consiste Ă insĂ©rer des MPR inexistants ou Ă en supprimer. La suppression de MPR au sein des tables de routage risque de fragmenter le rĂ©seau et certains MPR ne seront plus accessibles. L'insertion de nĆuds MPR non existants permet de crĂ©er de faux liens et de dĂ©former la topologie du rĂ©seau, ce qui aura pour consĂ©quence de crĂ©er des "boucles" lors du routage ou de gĂ©nĂ©rer des conflits lors du calcul des tables de routage[30].
Attaque sur le message de contrĂŽle durant la transmission
Les messages TC nĂ©cessitent d'ĂȘtre transmis Ă travers les MPR Ă l'ensemble du rĂ©seau, afin de transporter des informations critiques sur les tables de routage. Les nĆuds relais peuvent trafiquer ces messages pendant leur transfert, en ajoutant ou supprimant des MPR. Les problĂšmes peuvent ĂȘtre plus sĂ©rieux que lors du trafique des messages HELLO, car les messages TC sont utilisĂ©s par tous les nĆuds. Il est donc trĂšs facile de lancer une attaque de type "trou noir", qui met en Ćuvre des nĆuds qui font discrĂštement disparaĂźtre le trafic[31].
Protections
Des recherches ont été réalisées afin de sécuriser le protocole sur plusieurs niveaux[6] :
- des techniques d'authentification et de chiffrement pour sécuriser le réseau d'attaques externes;
- des détections d'intrusions et des méthodes de communication pour protéger le réseau d'attaques internes.
Authentification
Deux approches reconnues assez efficaces pour bloquer les utilisateurs ou les nĆuds non autorisĂ©s[6] :
- utiliser une Autorité de certification distribuée;
- authentifier les messages de contrÎle en leur introduisant des signatures permettant de vérifier l'origine et l'intégrité des informations.
Ces solutions ne permettent pas de se protéger d'attaques externes. De plus, l'utilisation de clés dans un réseau MANET est compliquée et lourde à gérer[6].
Propriétés intrinsÚques des messages OLSR
La redondance entre les messages HELLO et les messages TC est une opportunitĂ© pour vĂ©rifier des informations conflictuelles entre les nĆuds afin de protĂ©ger le protocole OLSR[31]. Dans toutes les propriĂ©tĂ©s suivantes, TCp correspond Ă l'ensemble des sĂ©lecteurs de P, MPRp Ă l'ensemble des MPR liĂ©s Ă P et HELLOp Ă l'ensemble des voisins directs de p.
PropriĂ©tĂ© 1 Un message HELLO contient tous les voisins situĂ©s Ă un saut du nĆud qui l'envoie, tandis qu'un message TC contient les sĂ©lecteurs de MPR du nĆud (autrement dit, le message TC, envoyĂ© par un MPR, dispose de tous les nĆuds qui ont choisi celui-ci comme relai)[31]. Le message TC contient donc un sous ensemble du message HELLO, TCp â HELLOp. Si cette propriĂ©tĂ© est violĂ©e, cela signifie que le nĆud Ă l'origine du message TC a insĂ©rĂ© des sĂ©lecteurs de MPR et qu'il prĂ©tend ĂȘtre un nĆud MPR (link spoofing)[31].
PropriĂ©tĂ© 2 Si un nĆud MANET reçoit un message TC le listant comme un sĂ©lecteur de MPR, alors celui Ă l'origine de ce message doit ĂȘtre dans le voisinage de ce nĆud[31]. Si C Đ TCp, alors P Đ HELLOc doit d'abord ĂȘtre vrai[31]. Si ce n'est pas le cas, cela peut indiquer plusieurs attaques. Le nĆud Ă l'origine du message TC prĂ©tend ĂȘtre un MPR (link spoofing sur un message TC)[31].
Propriété 3
Si une nĆud MANET reçoit un message TC de ses voisins ayant pour information qu'il est un sĂ©lecteur de MPR, ce nĆud doit d'abord avoir Ă©numĂ©rĂ© l'envoyeur du message comme un MPR dans son message HELLO[32]. Si Q Đ TCp, alors P Đ MPRq doit d'abord ĂȘtre vrai[32]. Si cette propriĂ©tĂ© est violĂ©e, le nĆud Ă l'origine du message TC prĂ©tend ĂȘtre un nĆud MPR pour le receveur et tout son voisinage, afin de dĂ©tourner le trafic (link spoofing)[32].
Propriété 4
Tous les messages TC transfĂ©rĂ©s ont un contenu identique[32]. Afin de le vĂ©rifier, un composant peut ĂȘtre dĂ©ployĂ© dans tous les nĆuds du rĂ©seau afin de dĂ©tecter toutes les mises Ă jour illĂ©gitimes sur le message de contrĂŽle. Les nĆuds recevant les messages TC vont appliquer "une validation", qui sera aussi appliquĂ©e par les nĆuds les transfĂ©rant. La vĂ©rification de conflit permet alors d'augmenter le niveau de sĂ©curitĂ© du protocole ainsi que la robustesse des opĂ©rations de routage[32].
Performances
Protocoles dérivés
Pour faire face aux inconvénients du protocole OLSR, différents protocoles sont en cours de développement ou ont été développés afin de répondre aux carences du protocole.
BATMAN
OLSR souffre d'un sĂ©rieux problĂšme de synchronisation des messages TC et des informations relatives aux routes contenues dans chacun des nĆuds[33].
En effet les routes connues par les nĆuds et l'Ă©tat rĂ©el de la topologie peuvent diffĂ©rer durant un certain laps de temps, et il est nĂ©cessaire d'attendre que la mise Ă jour de la topologie soit effectuĂ©e afin de disposer de routes Ă nouveau correctes, ce qui peut crĂ©er des boucles au sein du rĂ©seau[33].
C'est une des raisons pour lesquelles le développement du protocole BATMAN fut lancé[33].
OLSRv2
OLSRv2 est également en cours de développement par l'IETF depuis 2005[34], corrigeant les défauts d'OLSR et actuellement encore à phase de standardisation, une version finale (RFC) devrait bientÎt voir le jour[35].
CE-OLSR
CE-OLSR est une version basĂ©e sur OLSR mais intĂ©grant la localisation des nĆuds[36].
Chaque message HELLO se voit ainsi ajouter un champ dans lequel sa propre position (coordonnées GPS) ainsi que celles de ses voisins sont ajoutées[37].
Chaque message TC quant à lui se voit également ajouter par les MPR un champ dédié aux coordonnées des autres sélecteurs MPR[37].
CE-OLSR apporte ainsi les améliorations suivantes [38]:
- Meilleure robustesse des messages de contrĂŽle (topologie) par rapport Ă la perte de paquets.
- Les changements de topologie sont détectés plus rapidement, ce qui apporte un suivi précis du voisinage.
- Capacité à discerner les informations cartographiques récentes des obsolÚtes.
- Il en résulte de meilleures performances, sur le plan à la fois du débit et du temps de réponse et également une validité accrue des routes connues.
M-OLSR
M-OLSR est une variante d'OLSR modifiant le protocole afin de fournir de meilleures performances au sein de WMN (réseaux maillés sans-fil), à savoir[39] :
- Amélioration du débit.
- Meilleur pourcentage de paquets délivrés.
- Réduction de la surcharge réseau liée au protocole.
Les WMN diffĂšrent des MANET de par leur architecture quelque peu diffĂ©rente. En effet, alors qu'un MANET ne possĂšde aucun point fixe parmi tous ses nĆuds, un WMN possĂšde un nĆud connu de tous les autres, jouant le rĂŽle de colonne dorsale (backbone) au sein du rĂ©seau[39]. La rĂ©percussion d'une modification du protocole OLSR n'est donc pas forcĂ©ment la mĂȘme selon que le rĂ©seau concernĂ© est de type WMN ou MANET[39].
Qualité de service
La QoS n'est pas géré nativement dans OLSR, mais un projet intégrant cette fonctionnalité est en cours de développement[40].
La gestion du QoS n'est pas triviale dans le cas d'un protocole de routage Ă Ă©tat de lien de par sa structure constamment changeante et la puissance limitĂ©e disponible au sein des nĆuds composant des MANET[41].
Un protocole de routage pro-actif a l'avantage de pouvoir maintenir des routes pré-calculées sur lesquelles la QoS pourra s'appuyer afin de prendre rapidement des décisions, ce qui n'est pas le cas des protocoles de routage réactifs calculant les routes seulement à la demande[41].
Ceci est un avantage considérable dans le cadre de réseaux de nature imprévisible, comme les MANET. La couche de contrÎle peut aisément vérifier si une route pré-calculée peut satisfaire la demande, et si ce n'est pas le cas ainsi éviter la génération d'un trafic inutile relatif au routage et à la topologie[41].
SĂ©lection des MPR
Une premiĂšre maniĂšre de procĂ©der consiste Ă modifier l'algorithme de sĂ©lection des MPR. Le comportement dĂ©fini par la RFC d'OLSR indique que cette sĂ©lection s'effectue sur base du nombre de voisins, le nĆud Ă©lu en tant que MPR Ă©tant celui possĂ©dant le plus de voisins Ă 2 sauts[5].
Cette mĂ©thode de sĂ©lection ne prend cependant pas en compte la qualitĂ© des liens interconnectant les nĆuds, ce qui dans une optique de qualitĂ© de service est pourtant un des points les plus critiques[42].
Un autre algorithme pourrait consister à se baser sur la bande passante disponible en tant que premier critÚre de sélection des MPR. Le but est alors d'obtenir une route possédant un débit le plus élevé possible, facteur jouant un rÎle prépondérant dans les applications temps-réel de plus en plus utilisées aujourd'hui[43].
à l'origine OLSR sélectionne le chemin le plus court lors de la sélection des MPR, ce qui n'est pas forcément synonyme de performance, encore faut-il définir le terme "performance" (latence, bande-passante, redondance, etc).
Dans le cas oĂč l'on souhaite orienter les performances vers un aspect ou un autre en particulier, il faut modifier l'algorithme afin de sĂ©lectionner les MPR selon d'autres facteurs que la connectivitĂ© des nĆuds, comme la vitesse, dans le cas oĂč la bande passante est la contrainte premiĂšre du QoS[43].
Une tentative de modification du protocole OLSR est illustrĂ©e ci-dessous, visant Ă maximiser la bande passante de bout en bout tout en assurant que chaque nĆud Ă 2 sauts soit toujours connectĂ©. Les valeurs indiquĂ©es reprĂ©sentant la bande passante : plus elle est Ă©levĂ©e, plus la bande passante est importante.
Algorithme par défaut
Dans sa version originale, OLSR ne prend pas en compte la bande passante disponible pour chaque lien.
Le nĆud B sĂ©lectionnera donc C comme Ă©tant son MPR dans ce cas de figure-ci, car c'est celui qui possĂšde le plus de connexions avec les autres nĆuds[43].
Cela signifie donc que lorsque D construira sa table de routage, il sĂ©lectionnera d'office la route D-C-B pour joindre le nĆud B. Cette route est la pire de toutes avec un goulot d'Ă©tranglement souffrant de la vitesse la plus restrictive de tout le MANET (valeur de 3) entre D et C[43].
Par cet exemple flagrant, on réalise qu'OLSR ne sélectionnera pas le chemin le plus rapide.
- nĆud sujet au QoS
- nĆud Ă un saut de B
- nĆud Ă deux sauts de B
- nĆud Ă©lu MPR par B
Algorithme modifié #1
L'algorithme reste presque identique Ă la version originale.
Lorsqu'il existe plus d'un nĆud Ă un saut, mais qu'ils couvrent tous le mĂȘme nombre de nĆuds Ă deux sauts, c'est celui qui possĂšde la plus grande bande passante qui est Ă©lu MPR[43].
F est donc Ă©lu MPR Ă la place de C, car la liaison reliant B Ă F (100) possĂšde une vitesse plus grande que la liaison entre B et C (50)[43].
Algorithme modifié #2
L'idĂ©e de cette deuxiĂšme version consiste Ă choisir les nĆuds ayant la meilleure bande passante avant tout, tant que tous les nĆuds Ă deux sauts sont couverts[43].
Dans ce cas-ci, les nĆuds A et F seront sĂ©lectionnĂ©s avec respectivement une bande passante de 110 et 100 en partant de B[43].
Ă est d'abord sĂ©lectionnĂ© grĂące Ă sa bande passante la plus Ă©levĂ©e, mais n'Ă©lire que le nĆud A en MPR ne permettrait pas d'Ă©tablir une connexion avec tous les nĆuds Ă deux sauts (E resterait injoignable par B)[43].
C'est pourquoi le nĆud F est choisi en tant que deuxiĂšme MPR (et non C, car 100 > 50)[43].
Algorithme modifié #3
La troisiĂšme modification de l'algorithme compare chaque chemin partant de B vers chaque autre nĆud se situant Ă 2 sauts du MANET. Il sĂ©lectionne alors le seul chemin ayant la bande passante la plus Ă©levĂ©e vers chacun de ces nĆuds[43].
Ci-dessous le tableau montre la comparaison des bandes-passante et la raison pour laquelle le nĆud F est sĂ©lectionnĂ© pour connecter les nĆuds B et D[43].
nĆud de dĂ©part | Bande-passante entre les nĆuds | nĆud intermĂ©diaire | Bande-passante entre les nĆuds | nĆud d'arrivĂ©e | Bande-passante maximale rĂ©sultante |
---|---|---|---|---|---|
B |
110 |
A |
5 |
D |
5 |
B |
50 |
C |
3 |
D |
3 |
B |
100 |
F |
10 |
D |
10 |
â F est le MPR permettant d'avoir la bande passante la plus Ă©levĂ©e. |
MĂȘme raisonnement pour joindre les nĆuds B et E : C sera le MPR choisi.
Ces diffĂ©rentes modifications ont le potentiel d'amĂ©liorer les performances en apportant une meilleure bande-passante Ă chaque nĆud[44].
En revanche, elles peuvent Ă©galement engendrer une surcharge du trafic de contrĂŽle (vĂ©hiculant les informations sur la topologie), surtout dans le troisiĂšme exemple oĂč il est potentiellement possible d'Ă©lire un MPR diffĂ©rent par nĆud Ă 2 sauts[44].
Consommation énergétique
Les nĆuds du rĂ©seau MANET ne sont pas connectĂ©s sur le rĂ©seau Ă©lectrique et il en rĂ©sulte que l'Ă©nergie de leur batterie est limitĂ©e. La vie de la batterie peut aussi affecter la performance de communication du rĂ©seau. Quand un nĆud Ă©puise l'Ă©nergie disponible, il cesse de fonctionner et il peut y avoir pĂ©nurie d'hĂŽtes mobiles dans le partitionnement du rĂ©seau. Pour cette raison la rĂ©duction de la consommation Ă©nergĂ©tique est un sujet important dans les rĂ©seaux sans fil ad hoc[45]. Le protocole OLSR ne tient pas compte de la consommation Ă©nergĂ©tique pendant lâĂ©lection des nĆuds MPR, ni pendant le routage des paquets de donnĂ©es et ne tire aucun avantage Ă partir de lâinformation des liaisons unicast du rĂ©seau[46] - [47]. Les Ă©volutions envisagĂ©es pour prendre en compte ces aspects sont entre autres les protocoles EE-OLSR[48], EOLSR[49] et DE-OLSR[50] :
Pour prendre en compte la consommation Ă©nergĂ©tique des nĆuds certains mĂ©triques ont Ă©tĂ© introduites dans la couche rĂ©seau pour EE-OLSR [51]:
- MTPR (Minimum Total Transmission Power Routing) : simple métrique énergétique qui représente l'énergie totale consommée pour transférer l'information sur le chemin[51] - [52].
- MBCR (Minimum Battery Cost Routing) : minimise la fonction mesurant la rĂ©ticence des nĆuds par rapport Ă l'Ă©nergie[51] - [53].
- MMBCR (Min-Max Battery Cost Routing) : choisit la route avec les meilleures conditions parmi les chemins touchĂ©s par un nĆud crucial en se servant de la fonction introduite pour le MBCR[51] - [53].
- CMMBCR (Conditional MMBCR) : tente d'effectuer une approche hybride entre MTPR et MMBCR, en utilisant le premier tant que les nĆuds d'une route possible ont suffisamment d'Ă©nergie restante suivant un seuil dĂ©fini et le second quand parmi toutes les routes possibles il y au moins un nĆud Ă©tant sous le seuil d'Ă©nergie restante[51] - [54].
- MDR (Minimum Drain Rate) : introduit une fonction de coĂ»t prenant en compte l'indice de taux de dĂ©charge et la puissance rĂ©siduelle de la batterie pour mesurer le taux de dissipation de l'Ă©nergie d'un nĆud[51] - [55].
Avec l'inclusion de ces métriques et encore deux autres améliorations de l'aspect énergétique du protocole OLSR le protocole EE-OLSR établit ces mécanismes :
- MĂ©canisme basĂ© sur la volontĂ© dâĂ©mettre. La volontĂ© dâun nĆud Ă Ă©mettre est exprimĂ©e par une variable fixĂ©e par dĂ©faut qui reprĂ©sente la disponibilitĂ© de ce nĆud dâagir comme un MPR. Le choix de cette variable est basĂ© sur la capacitĂ© de sa batterie et la durĂ©e de vie estimĂ©e[48].
- MĂ©canisme de lâexclusion de lâĂ©coute. Ăteindre le nĆud pendant lâĂ©change dâun message unicast dans le voisinage. Ceci est rĂ©alisĂ© en utilisant les mĂ©canismes de signalisation des couches infĂ©rieures qui servent Ă Ă©viter les collisions (Ă©change RTS / CTS rĂ©alisĂ©e par l'IEEE 802.11)[47].
- Prise en compte de lâĂ©nergie pour les paquets Ă transmettre. Des mĂ©triques dâĂ©nergie sont introduites dans les nĆuds MPR voisins pour sĂ©lectionner le prochain saut du routage Ă partir des mĂ©canismes de routage MPTR, MMBCR et MDR[51]. On dĂ©couple ainsi la procĂ©dure dâĂ©lection MPR du mĂ©canisme de routage des paquets[47] - [50].
Le protocole EOLSR a Ă©tĂ© conçu comme EE-OLSR Ă minimiser la consommation d'Ă©nergie pour la transmission d'un paquet, Ă faire de l'Ă©quilibrage de charge entre les nĆuds du rĂ©seau, d'Ă©viter les nĆuds avec peu d'Ă©nergie restante et de rĂ©duire la surcharge[49]. Pour ce faire, la conception a Ă©tĂ© Ă©laborĂ©e dans ces quatre aspects [49]:
- Le calcul efficace des routes est établi suivant un modÚle énergétique adapté au protocole MAC choisi[49].
- La sĂ©lection des nĆuds MPR est pris en compte dans le modĂšle Ă©nergĂ©tique et une nouvelle information est incluse dans le message Hello calculĂ© avant chaque rĂ©Ă©mission[49].
- La sélection des routes se fait en minimisant la consommation énergétique de point à point basé sur le coût du flux comme critÚre de chaque chemin à emprunter[56].
- Le message de broadcast est optimisĂ© pour les ressources Ă©nergĂ©tiques du rĂ©seau. Un nĆud transfert un message pour broadcast avec un TTL non nul si et seulement s'il reçoit ce message pour la premiĂšre fois d'un nĆud qui l'a sĂ©lectionnĂ© comme MPR[56].
Dans un cadre un peu diffĂ©rent des deux autres le protocole DE-OLSR a Ă©tĂ© conçu pour des rĂ©seaux ad-hoc VANET[57]. Ceux-ci sont conceptuellement similaires aux rĂ©seaux MANET et sont destinĂ©s Ă la communication sans fil des vĂ©hicules Ă©quipĂ©s d'ordinateurs de bord, des Ă©lĂ©ments Ă©lectroniques de la signalisation de la circulation, capteurs et aussi des piĂ©tons avec des smartphones[57]. Ă la base, cet algorithme n'implĂ©mente pas de solution spĂ©cialement conçue pour ĂȘtre performant sur le plan du coĂ»t d'Ă©nergie. L'idĂ©e principale est de trouver un paramĂ©trage efficace pour optimiser la qualitĂ© de service du protocole OLSR du point de vue du taux de livraison de paquets de la charge de routage normalisĂ©e et un dĂ©lai moyen en point Ă point de paquets de donnĂ©es des rĂ©seaux VANET[50]. Ceci est menĂ© par le couplage avec une mĂ©ta-heuristique Differential Evolution (DE)[58] - [59]. Le protocole arrive Ă Ă©conomiser presque deux tiers d'Ă©nergie en moyenne par rapport Ă l'OLSR standard sur l'Ă©change des messages de contrĂŽle dans un rĂ©seau VANET tout en diminuant la consommation d'Ă©nergie en transmission de donnĂ©es et la charge[60].
Comparaison entre protocoles
D'autres protocoles de routage existent pour les réseaux mobiles. Voici une comparaison non exhaustive entre quelques-uns d'entre eux :
OLSR et BATMAN.
Plusieurs tests de performances ont été effectués dont notamment une comparaison pratique entre des implémentations d'OLSRv1 et BATMAN au sein de réseaux de taille et trafic variables[61].
Pour ce qui est du ratio des paquets délivrés, il s'est avéré que lorsque le trafic est faible, OLSR est plus performant que BATMAN . La tendance s'inverse lorsque le trafic devient important[62].
Pour ce qui est de la surcharge du trafic (informations relatives au routage et Ă la topologie), OLSR est plus performant que BATMAN tant que le nombre de nĆuds reste modeste, quelle que soit l'intensitĂ© du trafic[63].
DĂšs lors que le nombre de nĆuds devient plus important, BATMAN devient le protocole le plus performant des deux[63].
DSR, AODV et OLSR
Une comparaison entre les protocoles DSR & AODV (réactifs) et OLSR (pro-actif) a également été réalisée, mettant en évidence l'attrait d'OLSR pour les sources CBR (tels que la voix sur IP), garantissant des délais plus courts que les protocoles réactifs précédemment mentionnés.
En revanche, OLSR consomme beaucoup plus de bande passante Ă cause des routes qu'il maintient continuellement engendrant un trafic soutenu continuel.
Les tests ont montré que les protocoles réactifs étaient plus adaptés qu'OLSR dans le domaine de copie de données (échange de fichiers par exemple), sans pour autant savoir clairement départager DSR et AODV du point de vue des performances.
OLSR, AODV et TORA
Une autre comparaison entre les protocoles OLSR, AODV et TORA a pu faire ressortir les résultats suivants[64] :
Contrainte de performance | OLSR | AODV | TORA |
---|---|---|---|
Catégorie |
Pro-actif |
RĂ©actif |
Hybride |
Type de protocole | Schéma à état de lien | Vecteur de distance | Inversement de liens |
Routes maintenues dans | Table de routage | Table de routage | Table de routage |
Liberté de boucle | Oui | Oui | Oui |
Philosophie des routes | Plate | Plate | Plate |
Routes multiples | Non | Non | Oui |
Multicast | Oui | Oui | Non |
Surcharge réseau | Minimale | Modérée | Modérée |
Diffusion périodique | Possible | Possible | Possible |
Requiert des séquences de données | Non | Oui | Oui |
Méthode de reconfiguration des routes | Messages de contrÎles envoyés en avance afin d'augmenter la réactivité | Suppression des routes et notification à la source | Réparation de la route par inversement de liens |
Résumé | Messages de contrÎle pour détection de liaison, détection des voisins (MPR), détection de multiples interfaces, calcul des routes. | Découverte des routes, expansion en anneau, recherche, poursuite du chemin. | Inversement des liens, découverte des routes, paquets de mise à jour des routes |
Faible mobilité et faible trafic | ||||
---|---|---|---|---|
Protocole | Délai de bout en bout | Ratio de livraison | Optimalité du chemin | Surcharge du protocole de routage |
OLSR |
Bas |
Haut |
Bonne |
Basse |
AODV | Moyen | Haut | Moyenne | Basse |
TORA | Bas | Haut | Bonne | Moyenne |
Forte mobilité et fort trafic | ||||
---|---|---|---|---|
Protocole | Délai de bout en bout | Ratio de livraison | Optimalité du chemin | Surcharge du protocole de routage |
OLSR |
Bas |
Moyen |
Moyenne |
Basse |
AODV | Moyen | Moyen | Moyenne | Basse |
TORA | Haut | Bas | Moyenne | Moyenne |
L'étude ayant mené la comparaison de ces trois protocoles de familles différentes a pu conduire aux constatations suivantes[64] :
- Les performances des trois protocoles au sein d'un réseau à densité faible étaient relativement stables avec un trafic faible[65].
- OLSR est plus efficace dans les réseaux à forte densité avec un trafic hautement sporadique. Il nécessite de disposer d'une bande-passante continuelle afin de réguliÚrement échanger les messages propres à la topologie. Par ailleurs, AODV préserve des performances réguliÚres en milieu dense[65].
- Enfin toujours selon cette mĂȘme Ă©tude, TORA donne les meilleurs rĂ©sultats pour la livraison de paquets en rĂ©seau dense grĂące Ă son mĂ©canisme de sĂ©lection des meilleures routes[65].
Implémentations
Logicielles
- OLSRd : une implémentation libre du protocole OLSR[66].
- nuOLSRv2[67] : premiÚre implémentation OLSRv2 réalisée par l'université de Niigata[68].
- OOLSR [69] : implĂ©mentation en C++ avec plusieurs outils supplĂ©mentaires, dĂ©veloppĂ©e par l'Ă©quipe HIPERCOM elle-mĂȘme.
- pyOLSR [70] : implémentation en Python avec plusieurs outils additionnels, développée par l'équipe HIPERCOM également (rendu obsolÚte par OOLSR).
- Qolyester [71] : implémentation de QOLSR en C++, version modifiée d'OLSR avec ajout de la fonctionnalité "Qualité de service".
- Une implémentation de CRC [72] (premiÚre version gérant l'IPv6)
Matérielles
Puisque OLSR est une couche réseau de niveau couche 3, il est hautement portable et exécutable sur tout systÚme d'exploitation standard I386 et PPC via le plugin d'interface utilisateur de OLSRd[73].
- MSB-430 : un nĆud de capteur conçu au CST-Freie Universitat-Berlin et utilisĂ© pour tester les protocoles OLSR et B.A.T.M.A.N. dans un rĂ©seau WSN[74].
- WRT54G : un routeur sans fil avec un processeur basé MIPS de chez LinkSys(Cisco)[75].
- MeshCube : un petit routeur sans fil de chez 4G Systems avec processeur MIPS à 400Mhz et 64 Mo de mémoire vive[76].
- iPAQ : un assistant personnel de chez Compaq/HP avec une architecture processeur strong-ARM et NetBSD en systĂšme d'exploitation[77].
- Nokia N900 sous Linux Maemo[78].
- Google phone sous Android, G1[79].
Notes et références
- Ge 2003, p. 2
- Clausen 2004, p. 8
- Naimi 2003, p. 5
- Naimi 2003, p. 6
- Clausen 2003
- Wang 2005, p. 55
- (en) Spécifications du nouveau standard OLSRv2, derniÚre version rédigée le 20 avril 2010.
- Adjih 2005, p. 5
- Kuppusamy, Thirunavukkarasu et Kalaavathi 2011, p. 143
- Wang 2005, p. 56
- Clausen 2003, p. 1
- Plesse 2004, p. 705
- Clausen 2004, p. 3
- Sharma 2009, p. 237
- Clausen 2003, p. 28
- Clausen 2003, p. 27
- Clausen 2003, p. 42
- Clausen 2003, p. 24
- Li 2008, p. 804
- Clausen 2003, p. 25
- Adjih 2003, p. 3
- Clausen 2004, p. 9
- Jacquet 2001, p. 2
- Jacquet 2001, p. 3
- Ge 2003, p. 3
- Clausen 2003, p. 38
- Clausen 2004, p. 32
- Clausen 2003, p. 39
- Clausen 2004, p. 33
- Wang 2005, p. 57
- Wang 2005, p. 58
- Wang 2005, p. 59
- Barolli et al. 2009, p. 3
- The Optimized Link State Routing Protocol version 2
- (en) Actualité RFC OLSRv2
- Mohamed Belhassen 2011, p. 149
- Mohamed Belhassen 2011, p. 151
- Mohamed Belhassen 2011, p. 155
- Amrita Bose et Sukumar 2008, p. 147
- QOLSR
- Ying Ge 2002, p. 1
- Ying Ge 2002, p. 2
- Ying Ge 2002, p. 3
- Ying Ge 2002, p. 4
- De Rango 2008, p. 1
- Ghanem 2005, p. 273
- De Rango 2008, p. 4
- De Rango 2008, p. 3
- Mahfoudh 2010, p. 1127
- Toutouh 2011, p. 720
- De Rango 2008, p. 2
- Toh 2001, p. 141
- Toh 2001, p. 142
- Toh 2001, p. 143
- Kim 2002, p. 565
- Mahfoudh 2010, p. 1128
- Toutouh 2011, p. 719
- Price 2005, p. 37
- Toutouh 2011, p. 721
- Toutouh 2011, p. 724
- Abd Al Basset Almamou 2009, p. 1
- Abd Al Basset Almamoup 2009, p. 3
- Abd Al Basset Almamoup 2009, p. 4
- Kuppusamy, Thirunavukkarasu et Kalaavathi 2011, p. 146
- Kuppusamy, Thirunavukkarasu et Kalaavathi 2011, p. 147
- (en) Site web officiel d'OLSRd, l'implémentation OLSR pour GNU/Linux, FreeBSD, NetBSD, Android, etc.
- (en) Annonce de la premiÚre implémentation OLSRv2
- (en) nuOLSRv2
- (en) OOLSR
- (en) pyOLSR
- (en) Qolyester
- (en) « Communications Research Centre Canada »(Archive.org ⹠Wikiwix ⹠Archive.is ⹠Google ⹠Que faire ?) (consulté le )
- Sinky 2010, p. 288
- Almamou 2009, p. 1
- (en) Linksys (Cisco) WRT54G
- (en) MeshCube
- Meraihi 2004, p. 110
- (en) OLSR on Nokia N900
- (en) OLSR ported to the Google phone
Voir aussi
RFC
- (en) « Optimized Link State Routing Protocol (OLSR) », sur ietf.org,
Articles scientifiques
- (en) M. Wang, L. Lamont, P. Mason et M. M. Gorlatova, « An effective intrusion detection approach for OLSR MANET protocol », 1st IEEE ICNP Workshop on Secure Network Protocols, 2005. (NPSec), IEEE,â , p. 55-60 (ISBN 0-7803-9427-5, DOI 10.1109/NPSEC.2005.1532054)
- (en) T. Plesse, J. Lecomte, C. Adjih, M. Badel, P. Jacquet, A. Laouiti, P. Minet, P. Muhlethaler et A. Plakoo, « OLSR performance measurement in a military mobile ad-hoc network », 24th International Conference on Distributed Computing Systems Workshops, 2004. Proceedings, IEEE, vol. 24th International Conference on Distributed Computing Systems Workshops, 2004. Proceedings,â , p. 704-709 (ISBN 0-7695-2087-1, DOI 10.1109/ICDCSW.2004.1284109)
- (en) Frank Y. Li, Lorenzo Vandoni, Giampietro Zicca et Stefano Zanoli, « OLSR Mesh Networks for Broadband Access: Enhancements, Implementation and Deployment », Circuits and Systems for Communications, 2008. ICCSC 2008. 4th IEEE International Conference, IEEE,â , p. 802-806 (ISBN 978-1-4244-1707-0, DOI 10.1109/ICCSC.2008.175)
- (en) C.-K. Toh, « Maximum battery life routing to support ubiquitous mobile computing in wireless ad hoc networks », IEEE Communications Magazine, IEEE, vol. 39,â , p. 138-147 (ISSN 0163-6804, DOI 10.1109/35.925682)
- (en) Dongkyun Kim, J.J. Garcia-Luna-Aceves et K. Obraczka, « Power-Aware Routing Based on The Energy Drain Rate for Mobile Ad Hoc Networks », Computer Communications and Networks, 2002, IEEE,â , p. 565-569 (ISBN 0-7803-7553-X, DOI 10.1109/ICCCN.2002.1043126)
- (en) Nabil Ghanem, Selma Boumerdassi et Ăric Renault, « New energy saving mechanisms for mobile ad-hoc networks using OLSR », PE-WASUN '05 Proceedings of the 2nd ACM international workshop on Performance evaluation of wireless ad hoc, sensor, and ubiquitous networks, ACM Press,â , p. 273-274 (ISBN 1-5959-3182-1, DOI 10.1145/1089803.1090006)
- (en) Saoucene Mahfoudh et Pascale Minet, « Energy-aware routing in wireless ad hoc and sensor networks », Proceedings of the 6th International Wireless Communications and Mobile Computing Conference, ACM Press,â , p. 1126-1130 (ISBN 978-1-4503-0062-9, DOI 10.1145/1815396.1815654)
- (en) Jamal Toutouh et Enrique Alba, « An efficient routing protocol for green communications in vehicular ad-hoc networks », GECCO '11 Proceedings of the 13th annual conference companion on Genetic and evolutionary computation, ACM Press,â , p. 719-725 (ISBN 9781450306904, DOI 10.1145/2001858.2002076)
- (en) Hassan Sinky et Bechir Hamdaoui, « Implementation and performance measurement and analysis of OLSR protocol », IWCMC '10 Proceedings of the 6th International Wireless Communications and Mobile Computing Conference, ACM Press,â , p. 286-290 (ISBN 978-1-4503-0062-9, DOI 10.1145/1815396.1815463)
- (en) Floriano De Rango, Marco Fotino et Salvatore Marano, « EE-OLSR: Energy Efficient OLSR routing protocol for Mobile ad-hoc Networks », Military Communications Conference, 2008. MILCOM 2008. IEEE, IEEE,â , p. 1-7 (ISBN 978-1-4244-2676-8, DOI 10.1109/MILCOM.2008.4753611)
- (en) Abd Al Basset Almamou, Raphaela Wrede, Pardeep Kumar, Houda Labiod et Jochen Schiller, « Performance evaluation of routing protocols in a Real-World WSN », Information Infrastructure Symposium, 2009. GIIS '09, IEEE,â , p. 1-5 (ISBN 978-1-4244-4623-0, DOI 10.1109/GIIS.2009.5307052)
- (en) Kenneth V. Price, Rainer M. Storn et Jouni A. Lampinen, « Differential Evolution A Practical Approach to Global Optimization », Natural Computing Series, Springer Berlin Heidelberg,â , p. 37-134 (ISBN 978-3-540-31306-9, DOI 10.1007/3-540-31306-0)
- (en) S. Sharma, « P-OLSR: Position-based optimized link state routing for mobile ad hoc networks », LCN 2009. IEEE 34th Conference, IEEE,â , p. 237-240 (ISBN 978-1-4244-4488-5, DOI 10.1109/LCN.2009.5355100)
- (en) Ying Ge, Thomas Kunz et Louise Lamont, « Quality of Service Routing in Ad-Hoc Networks Using OLSR », HICSSâ03 Proceedings of the 36th Annual Hawaii International Conference,â , p. 1-9 (ISBN 0-7695-1874-5, DOI 10.1109/HICSS.2003.1174847, lire en ligne)
- Amina Naimi Meraihi et Philippe Jacquet, « Le ContrĂŽle du DĂ©lai dans le Protocole OLSR », HIPERCOM - INRIA Rocquencourt, Rapport de recherche,â , p. 1-9 (rĂ©sumĂ©, lire en ligne)
- Rabah Meraihi, « Gestion de la qualitĂ© de service et contrĂŽle de topologie dans les rĂ©seaux ad hoc », ThĂšse ecole nationale supĂ©rieure des tĂ©lĂ©communications,â , p. 1-136 (lire en ligne)
- (en) Philippe Jacquet, Paul Muhlethaler, Thomas Clausen, Anis Laouiti et Laurent Viennot, « Optimized Link State Routing Protocol for Ad Hoc Networks », HIPERCOM - INRIA Rocquencourt, Rapport de recherche,â , p. 1-53 (DOI 10.1109/INMIC.2001.995315, rĂ©sumĂ©, lire en ligne)
- (en) Thomas Clausen et Philippe Jacquet, « The Optimised Routing Protocol for Mobile Ad-hoc Networks: protocol specification », HIPERCOM - INRIA Rocquencourt, Rapport de recherche,â , p. 1-53 (lire en ligne)
- (en) P. Kuppusamy, K. Thirunavukkarasu et B. Kalaavathi, A Study and Comparison of OLSR, AODV and TORA Routing Protocols in Ad Hoc Networks, (DOI 10.1109)
- (en) Leonard Barolli, Makoto Ikeda, Giuseppe De Marco, Arjan Durresi et Fatos Xhafa, « Performance Analysis of OLSR and BATMAN Protocols Considering Link Quality Parameter », AINA '09 Proceedings of the 2009 International Conference on Advanced Information Networking and Applications,â , p. 307-314 (ISBN 978-0-7695-3638-5)
- (en) Paul Amrita Bose et Nandi Sukumar, Modified Optimized Link State Routing (M-OLSR) for Wireless Mesh Networks, (ISBN 978-0-7695-3513-5)
- (en) Thierry Plesse, JĂ©rĂŽme Lecomte, Cedric Adjih, Marc Badel et Philippe Jacquet, « OLSR Performance Measurement in a Military Mobile Ad-hoc Network », Ad Hoc Networks, vol. 3,â , p. 575-588
Articles connexes
- Topologie mesh
- Babel
- Freifunk (en), un firmware basé sur OpenWRT utilisant OLSR. Il est conçu pour établir des réseaux mesh extérieurs avec des AP Wi-Fi, comme le Linksys WRT54G.