Académique Documents
Professionnel Documents
Culture Documents
Thème
Encadreurs :
Mme Nadia NOUALI Maitre de recherche CERIST
Mr Nadir BOUCHAMA Attaché de recherche CERIST
Le Saint Coran
ii
DÉDICACES
iii
REMERCIEMENTS
iv
Table des matières
Table des Matières …...………………………………………………………………………. v
Table des Figures . . …………………………………………………………………………..viii
Liste des tableaux …………….……………………………………………………………… x
Introduction Générale ………………………………………………………………………..01
v
5 Description de quelques protocoles MANETs …………………………………………….. 26
5.1 OLSR…………………………………………………………………………………..27
5.2 TBRTF ………………………………………………………………………………...27
5.3 DSR……………………………………………………………………………………27
6 Etude détaillée du protocole AODV ………………………………………………………..28
6.1 Table de routage et paquets de contrôle …………..…………………………………….28
6.2 Numéro de séquence ……….………………………………………………………….30
6.3 Principe de fonctionnement ………...…………………………………………………..31
6.3.1 Découverte d'une route………………………………………………………….. 31
6.3.2 Maintenance des routes……..….………..………………………………………..32
6.3.3 Gestion de la connectivité locale….………….…………………………………....33
6.4 AODV : Avantages et inconvénients ………………….………………………………... 33
7 Autres protocoles…………………………………………………………………………....34
Conclusion………………………………………………………………………..…………34
Chapitre IV : Conception
1 Introduction ………………………………………………………………………………...47
2 le routage AODV avec QoS………………………………………………………………...47
2.1 Estimation du délai dans les MANETs………..………………………………………...48
2.2 Estimation du délai à 1 saut radio……………………………………………………… 48
2.2.1 Détermination du délai dans la file d’attente…………………………………….48
vi
2.2.2 Détermination du délai de propagation………………………………………….50
2.3 Détermination du délai multi sauts…………………………………………………….52
3 Intégration dans AODV…………………………………………………………………….52
3.1 Extension de la RREQ …..……………………………………………………………..52
3.2 Extension des messages HELLO………………………………………………………..53
3.3 Mécanisme de routage AODV avec QoS……………………………………………….53
3.3.1Découverte des routes……………………………………………………………53
3.3.2 Maintenance des routes…………………………………………………………..54
3.4 Limitations …………………………………………………………………………….55
4 Diagramme de séquence…………………………………………………………………….57
5 Diagramme de classes……………………………………………………………………….57
Conclusion ……………………………………………………………………………………59
Chapitre V : Implémentation
1 Introduction ………………………………………………………………………………...61
2 Présentation d’AODV sous NS-2…………………………………………………………... 61
3 Présentation du protocole mac-802_11 sous NS-2 ………………………………………….62
4 Structure des nœuds AODV et AODV-D sous NS-2 ……………………………………..62
5 Implémentation d’AODV-D sous NS-2…………………………………………………...63
5.1 Estimation du délai au niveau de la couche MAC…………………………………… 64
5.1.1 Estimation de la bande passante libre sur un nœud…………………………... 64
5.1.2 Récupération du paramètre λ …………….…………………………………..66
5.1.3 Le délai dans la file d’attente R ………………………………………………67
5.1.4 Estimation du délai de propagation ;;;;…………………………………………67
5.1.5 Le délai à un saut … ;;……………………………………………………….69
6 Les modifications au niveau de la couche réseau…………………………………………….69
6.1Le format du paquet RREQ dans AODV-D ………………………………………… 69
6.2Le format du paquet RREP dans AODV-D…………………………………………...70
6.3 Contrôle d’admission ………………………………………………………………70
6.4 La probabilité de collision …….……………………………………………………...72
7 Les exigences de QoS……………………………………………………………………….73
Conclusion…………………………………………………………………………………….74
vii
Table des figures
1. 1 :Topologie totalement connectée
1 .2 : Topologie à station de base.
1.3: Topologie à routage interne.
1.4 Topologie hybride.
1.5: Classification des réseaux sans fil.
1.6 : Exemple de mode infrastructure.
1.7 : Exemple de mode ad Hoc.
1.8 : Le modèle de référence OSI.
1.9 : 802.11 et le modèle OSI.
1.10 : La couche PHYSIQUE dans le réseau sans fil.
1.11 : Étalement de Spectre à Séquence Directe DSSS.
1.12: Comparaison des technologies d’accès au canal radio.
1.13. Le problème du nœud caché et des nœuds exposés.
1.14 – Le mécanisme RTS/CTS.
1.15: La modélisation d'un réseau ad hoc.
viii
4.7 : Diagramme de séquence d’AODV-D
4.8 : Diagramme de classes d’AODV-D
ix
Liste des tableaux
1.1 Famille de IEEE 802 sans fil.
1.2 La famille d’IEEE 801.11.
x
Introduction générale
On assiste ces dernières années à une importante évolution dans le domaine des
télécommunications, conduite par la commercialisation et l’émergence des appareils de
communications sans fil (tels que les téléphones cellulaires, les ordinateurs portables, les
assistants personnels, . . . etc.) et la convergence des réseaux fixes et mobiles. L’utilisateur
passe ainsi de l’âge de l’ordinateur personnel à l’âge du traitement de l’information à travers
plusieurs infrastructures. Il a accès à l’information n’importe où et n’importe quand.
En 1999, l'IEEE (Institute of Electrical and Electronics Engineers) a standardisé le protocole
d'accès au médium radio 802.11 visant à assurer la communication entre ordinateurs
personnels utilisant le médium radio. Aujourd'hui, le protocole IEEE 802.11 est largement
utilisé dans les réseaux locaux sans fil.
On peut distinguer deux modes de communication dans un réseau sans fil. Dans le
premier cas, toute transmission de données doit passer par un point fixe (nommé point
d’accès) et ce même si deux mobiles communicants sont proches. Cette entité particulière
joue le rôle de routeur à l’intérieur du réseau local sans fil et souvent de passerelle vers un
réseau filaire. Chaque point d’accès administre alors une zone géographique et assure
éventuellement la liaison avec d’autres zones, avec un réseau local filaire ou avec l’Internet.
Les réseaux cellulaires (GSM, GPRS, UMTS) peuvent être considérés comme étant une forme
particulière de réseau avec point d’accès.
Dans le second mode de communication, chaque mobile du réseau a la possibilité de
communiquer directement avec tous ses voisins, c’est-à-dire tous les nœuds capables de
recevoir le signal envoyé et de le comprendre. Chaque mobile peut se connecter, se déplacer
ou se déconnecter du réseau à tout moment. Il n’y a aucune infrastructure fixe à priori et les
mobiles n’ont aucune connaissance de leur environnement. Si chaque mobile d’un tel réseau a
la possibilité de router des paquets, il est alors possible de communiquer au delà de sa
distance d’émission. On parle alors de réseaux mobiles ad hoc ou MANET (pour Mobile Ad
hoc Network).
Les avantages qu’offre un réseau ad hoc le rendent plus adéquat pour le déploiement des
applications utilisées dans les situations critiques telles que la communication dans un champ
de bataille, dans les opérations de secours et la gestion des catastrophes en général.
Cependant, un tel réseau est subit à un nombre de contraintes qui rendent un tel
déploiement très complexe On peut citer essentiellement : les contraintes de médium radio, le
caractère fortement dynamique, et l’absence d’une administration centralisée.
En effet, Chaque nœud du réseau doit participer dans le routage des paquets à travers le
réseau, jouant ainsi le rôle d'un routeur et d’un terminal en même temps. Pour cela un
protocole de routage distribué est nécessaire.
Plusieurs protocoles de routage ont été proposés pour les réseaux mobiles ad hoc, ces
protocoles de routage peuvent être classifiés suivant la manière de création et de maintenance
de routes lors de l'acheminement selon plusieurs critères. Le groupe de travail MANET
(Mobile ad hoc NETwork) de l'IETF (Internet Engineering Task Force) se préoccupe de la
normalisation des protocoles ad hoc fonctionnant sous IP. Dans ce cadre, AODV, OLSR, DSR
sont actuellement l’objet d’une RFC grâce à leurs caractéristiques intéressantes, ces protocoles
fonctionnent en mode best effort. Cependant, ils ne permettent pas de garantir une qualité de
service (QoS).
-1-
xi
Pour certaines applications telles que les applications multimédia ou temps réel le
service best effort n’est pas du tout suffisant. De telles applications exigent des garanties en
terme de certains critères de qualité de service (un minimum de bande passante, un délai max
à ne pas dépasser.etc...). En effet, il semble important d’adapter les MANETs pour supporter
un certain niveau de QoS dans le but de déploiement des applications exigeantes.
Ce travail s'inscrit dans le cadre du projet adopté par le CERIST (Centre de Recherche sur
l’Information Scientifique et Technique) intitulé « Le pervasive computing pour l’aide à la
gestion de situations d’urgence et de catastrophes ».
La finalité du travail effectué dans ce mémoire est de faire une extension du protocole AODV
en le rendant sensible à une métrique de QoS, à savoir le délai de bout en bout.
Ce mémoire est organisé en six chapitres :
Le premier chapitre donne un état de l’art des réseaux sans fil et des différents concepts
liés à ce type de réseaux, ainsi qu’une description de la norme IEEE 802.11. Enfin, il précise
les notions de base des réseaux mobiles ad hoc et les principales caractéristiques des MANETs
ainsi que les contraintes qui en découlent.
Le deuxième chapitre traite les principes du routage dans les réseaux mobiles ad hoc. Il
s’intéresse plus précisément à la problématique du routage et les contraintes liées aux
MANETs. Il décrit également les principaux protocoles proposés et leurs classifications.
Enfin il présente une étude détaillée du protocole AODV.
Le troisième chapitre introduit le concept de qualité de service ainsi qu’un état de l’art
sur les solutions existantes, plus particulièrement le routage avec QoS dans les MANETs.
Le quatrième chapitre est consacré à la conception du protocole AODV-D qui est une
extension d’AODV en termes du délai, il décrit également la méthode d'estimation du délai
utilisée.
Le cinquième chapitre donne des détails de l’implémentation de ce qui a été conçu dans
le chapitre quatre.
Le sixième chapitre est consacré aux simulations et discussions des résultats.
Nous terminerons par une conclusion générale et quelques perspectives pour des travaux
futurs.
-2-
xii
Chapitre I
1 Introduction
Les communications sans fil ont un rôle crucial à jouer au sein des réseaux informatiques.
Elles offrent des solutions ouvertes pour fournir de la mobilité ainsi que des services
essentiels là où l’installation d’une infrastructure n’est pas possible. Les réseaux sans fil
(Wireless Networks) constituent de plus en plus une technologie émergente permettant à ses
utilisateurs un accès à l’information et aux services électroniques indépendamment de leurs
positions géographiques. Le succès de ce type de réseaux ces dernières années est suscité par
un grand intérêt de la part des particuliers, des entreprises et du milieu industriel. En effet, ce
type de réseaux est perçu comme une nouvelle alternative complémentaire aux réseaux filaires
traditionnels [1].
Dans ce chapitre, nous allons parler de la technologie de communication sans fil utilisée
dans les réseaux mobiles, pour cela nous détaillons quelques principales notions nécessaires à
la compréhension de ces systèmes, ainsi qu’une présentation globale de la norme 802.11.
Ensuite, nous allons voir les classifications principales des réseaux sans fil et les différentes
technologies utilisées dans chaque catégorie, enfin le chapitre introduit le concept des réseaux
mobiles ad hoc, la définition, les caractéristiques, et les domaines d’application.
4
Chapitre I Généralités sur les réseaux sans fil
2.4 Définition
Un réseau sans fil peut être considéré comme un système de transmission de données, dont
le but est d’assurer une liaison indépendante de l’emplacement des entités informatiques qui
composent le réseau [1]. Les réseaux sans fil sont basés sur une liaison utilisant des ondes
radioélectriques (radio et infrarouges) en lieu et place des câbles habituels.
Grâce aux réseaux sans fil, un utilisateur a la possibilité de rester connecté tout en se
déplaçant dans une zone géographique plus ou moins étendue.
Les deux termes ‘mobile’ et ‘sans fil’ sont souvent confondus, le terme sans fil désigne la
nature des liens utilisés dans l’interconnexion des différents composants du réseau, alors que
le terme ‘mobile’ désigne la possibilité de déplacement des utilisateurs du réseau suite à
l’utilisation des liens sans fil. En effet, on peut dire que tous réseau mobile est un réseau sans
fil, et le contraire n’est pas toujours vrais.
Il existe plusieurs technologies se distinguant d’une part par la fréquence d’émission utilisée
ainsi que le débit et la portée des transmissions. Les réseaux sans fil permettent de relier très
facilement des équipements distants d’une dizaine de mètres à quelques kilomètres.
2.4 Caractéristiques
L’utilisation d’une interface sans fil introduit nombres de différences par rapport à la
communication par câble.
Tout d’abord, le spectre radio, et donc la capacité disponible pour le transfert de données
sont limités par la réglementation. La bande de fréquence occupée par un réseau mobile ne
peut être étendue. Cette restriction limite également le débit disponible imposant la nécessité
d’une utilisation efficace du canal.
Ensuite, la qualité des liens radio peut varier avec le temps au gré des diverses interférences
et de la mobilité des usagers. Cette situation mène donc à un taux d’erreurs de transmission
plus important que sur un réseau filaire et surtout à un taux très fluctuant.
Une des différences majeures entre ces deux types de réseaux reste tout de même le
caractère dynamique d’un réseau sans fil. Le point d’accès d’une entité sur un réseau filaire est
fixe alors que dans le cas d’un réseau sans fil, l’usager peut se connecter depuis différents
lieux et peut même changer de point d’accès au cours de sa connexion. Le problème est alors
dans un premier temps de retrouver un utilisateur dans le réseau et donc un chemin
permettant de l’atteindre. Dans un deuxième temps, il faut pouvoir maintenir sa connexion de
façon transparente et ce, malgré sa mobilité et ses changements de zone de communication.
Un autre aspect important est que l’accès physique aux données d’un réseau sans fil est non
sécurisé. En effet, si dans le cas d’un réseau filaire on peut protéger les points d’accès et les
câbles reliant les différents postes, dans le cas d’un réseau sans fil, n’importe qui peut écouter
le réseau et donc récupérer les données transitant par l’interface air. Ceci va donc impliquer
l’utilisation de mécanismes de chiffrement et d’authentification afin d’assurer la
confidentialité des données [5].
5
Chapitre I Généralités sur les réseaux sans fil
6
Chapitre I Généralités sur les réseaux sans fil
Nœud
Fig. 1.2
1. : Topologie à station de base.
Fig. 1.3:
1. Topologie à routage interne.
7
Chapitre I Généralités sur les réseaux sans fil
Lien filaire
8
Chapitre I Généralités sur les réseaux sans fil
Point d’accès
Réseaux statiques
Zone de couverture
Unités mobiles
9
Chapitre I Généralités sur les réseaux sans fil
• La couche physique : s’occupe de la transmission des bits de façon brute sur un canal
de communication .Sa conception doit être telle que l’on soit sûr que, lorsqu’un côté
envoie un bit à 1, on reçoit de l’autre côté un bit à 1, et non un bit à 0.
• La couche liaison de données : sa tâche est de prendre un moyen de transmission brut
et de le transformer en une ligne qui parait exempte d’erreur de transmission à la couche
réseau.
• La couche réseau : permet de gérer le sous réseau de communication dont elle doit
connaître la topologie .Cette gestion comprend : le contrôle de flux et le routage de
paquets ainsi que leurs adressage.
• La couche transport : sa fonction de base est d’accepter des données de la couche
session de les découper en plus petite unités, de les passer à la couche réseau et de
s’assurer que tous les morceaux arrivent correctement de l’autre côté .
• La couche session : permet à des utilisateurs travaillant sur différentes machines
d’établir des sessions entre eux (gestion du dialogue …etc.).
• La couche présentation : à la différence des autres couches, celle-ci s’intéresse à la
syntaxe et à la sémantique de l’information transmise.
• La couche application : joue le rôle d’interface pour l’accès des applications aux services
du réseau. [3].
10
Chapitre I Généralités sur les réseaux sans fil
11
Chapitre I Généralités sur les réseaux sans fil
Couches supérieures
12
Chapitre I Généralités sur les réseaux sans fil
• Infrarouge
En utilisant un faisceau de lumière, ce mode est basé sur l’utilisation des mêmes fréquences
que celles utilisées sur les fibres optiques. Malgré que la lumière infrarouge possède une large
bande passante offrant par conséquent des débits relativement importants, la portée de ce
type de communications reste faible. En revanche, les infrarouges peuvent pénétrer à travers
le verre, mais pas à travers des obstacles opaques, ce qui représente un avantage en terme de
sécurité. Mais, comme les réseaux infrarouges sont sensibles aux interférences lumineuses, la
coupure du faisceau lumineux implique l’interruption de la transmission.
13
Chapitre I Généralités sur les réseaux sans fil
14
Chapitre I Généralités sur les réseaux sans fil
• CSMA/CA (Accès
Accès Multiple avec Écoute de Porteuses/Évitement de Collisions)
Collisions
Le CSMA/CA est une technique d’accès au médium utilisée dans les réseaux sans fil IEEE
802.11. Elle permet de traiter les problèmes des stations cachées et des stations exposées expos
illustrés par la figure 1.13,, et d’éviter les collisions en utilisant le principe appelé évitement de
collisions (Collision Avoidance).
A B C A B C D
Dans cette technique, chaque nœud (souhaitant émettre des données) doit écouter le canal
avant de tenter d’obtenir l’accès. Si le canal est occupé le nœud doit attendre la fin de la
transmission en cours pour avoir le droit d’accès au médium. Lorsque le le canal devient libre,
avant toutes choses, il faut qu’il le reste pour une période DIFS (DCF Inter-Frame
Inter Space), si le
canal reste libre durant le DIFS alors les nœuds qui veulent émettre choisissent un temps
de temporisation appelé backoff [1] ; Le backoff est choisit au hasard dans un intervalle appelé
Contention Window (CW)qui est par défaut [0 ;31] ; avec un time slot de 20 µs, le backoff va donc
être compris entre 0 et 620 µs. et la taille de la fenêtre va doubler afin de diminuer les chances
que de telles collisions se rép
pètent. La borne inférieure de la Contention Window est toujours
zéro, et la borne supérieure
rieure (dont les valeurs autorisées
autoris es par la norme ne sont que des
puissances de 2 moins 1) va évoluer oluer entre les valeurs CWmin et CWmax définies par la
norme [15].
Lorsque la temporisation expire, si le canal est inoccupé, ils peuvent commencer l’envoi de
ses paquets. Dans le cas de plusieurs nœuds qui veulent accéder au canal, celui qui a choisi la
temporisation la plus courte est donc celui qui gagne le droit d’accès et les autres doivent
attendre simplement la fin de la transmission pour avoir le droit de tenter à nouveau l’accès
au médium [1].. Le mécanisme de backoff limite les risques de collision mais ne les supprime
pas complètement .due à cette insuffisance le 802.11 802.11 propose l’utilisation du mécanisme
RTS/CTS (figure.1.14) [4].
Fig. 1.14
1 – Le mécanisme RTS/CTS.
15
Chapitre I Généralités sur les réseaux sans fil
Un nœud vérifie si le médium est libre. Si le médium est occupé, l’émetteur attend qu’il se
libère, puis attend un temps aléatoire avant d’émettre. Si personne n’est en train d’émettre, le
nœud envoie un message de type RTS (Request To Send) contenant l’adresse de destination et
la durée de la transmission pour demander la parole. Les autres nœuds savent donc que le
médium sera occupé pendant cette durée. Le destinataire répond avec un message de type
CTS (Clear To Send) qui indique qu’il est prêt à recevoir les données sans aucun risque de
collision.
Chaque paquet doit être acquitté et si aucun acquittement n’est reçu, le paquet est
retransmis. Il faut noter que le temps qui sépare un paquet de données de son acquittement
est appelé SIFS (Short Inter frame Space).
Une autre fonction importante appelée écoute de la porteuse virtuelle fournie par le vecteur
NAV (Network Allocation Vector). Le NAV représente une minuterie indiquant la durée
pendant laquelle le médium sera réservé. Chaque nœud fixe le NAV à sa durée d’utilisation du
médium, en incluant les trames nécessaires à la terminaison de l’opération en cours [1].
16
Chapitre I Généralités sur les réseaux sans fil
4.1 Définition
Dans le RFC 2501[10] de IETF (Internet Engineering Task Force), qui représente l’organisme
responsable de l’élaboration de standards pour Internet, définit les réseaux mobiles ad hoc
(appelés généralement MANETs pour Mobiles Adchoc NETwork) de la manière suivante :
" Un réseau ad hoc est un système autonome de plates-formes mobiles (par exemple un
routeur interconnectant différents hôtes et équipements sans fil) appelées nœuds qui sont
libres de se déplacer aléatoirement et sans contrainte. Ceci provoque des changements rapides
et prédictibles de la topologie du réseau. Ce système peut fonctionner d’une manière isolée ou
s’interfacer à des réseaux fixes au travers de passerelles. Dans ce dernier cas, un réseau ad hoc
est un réseau d’extrémité".
4.2 Modélisation
Un réseau mobile ad hoc peut être modélisé par un graphe Gt = (Vt , Et ) où :
Vt : représente l'ensemble des nœuds (i.e. les unités ou les hôtes mobiles) du réseau.
Et : modélise l'ensemble des connections qui existent entre ces nœuds. (Figure 1.15).
Si e = (u, v) ∈ Et , cela veut dire que les nœuds u et v sont en mesure de communiquer
directement à l'instant t [6].
17
Chapitre I Généralités sur les réseaux sans fil
Fig. 1.15-
1.1 La modélisation d'un réseau ad hoc.
18
Chapitre I Généralités sur les réseaux sans fil
• Sécurité physique limitée : Les réseaux sans fil sont généralement plus sensibles aux
menaces physiques que les réseaux câblés. Les techniques existantes pour la sécurité des
liaisons sont souvent appliquées au sein des réseaux sans fil pour réduire les risques
d'attaques. Notons cependant un avantage dans le fait que le contrôle des réseaux
MANET soit décentralisé ajoute à sa robustesse, contrairement aux problèmes pouvant
survenir sur les points centraux dans les approches plus centralisées [10].
• L'absence d'infrastructure : Les réseaux ad hoc se distinguent des autres réseaux
mobiles par la propriété d'absence d'infrastructures préexistante et de tout genre
d'administration centralisée. Les hôtes mobiles sont responsables d'établir et de
maintenir la connectivité du réseau d'une manière continue [8].
Conclusion
L’évolution rapide de la technologie de télécommunication sans fil, a permet la
manipulation de l’information à travers des unités de calculs portables. Ces unités ont des
caractéristiques particulières et accèdent au réseau à travers une interface de communication
sans fil. La mobilité et le nouveau mode de communication utilisé, engendrent de nouvelles
caractéristiques propres à l’environnement mobile. Ces caractéristiques nous obligent à
changer la vision classique aux problèmes liés aux différentes stratégies de routage proposées
pour les réseaux filaires, ces stratégies deviennent plus en plus complexes quand il s’agit d’un
réseau ad hoc.
Les systèmes de communication cellulaire sont basés essentiellement sur l'utilisation des
réseaux filaires (tel que Internet) et la présence des stations de base qui couvrent les
différentes unités mobiles du système. Les réseaux mobiles "ad hoc" sont à l'inverse, des
réseaux qui s'organisent automatiquement de façon à être déplorable rapidement, sans
infrastructure fixe, et qui doivent pouvoir s'adapter aux conditions de propagation, aux trafics
et aux différents mouvements pouvant intervenir au sein des nœuds mobiles.
Dans ce chapitre, nous avons présenté plusieurs concepts de bases liés aux réseaux sans fil,
notamment la norme IEEE 802.11 et les concepts des réseaux ad hoc.
Dans le prochain chapitre nous allons étudier le concept de routage dans les réseaux
mobiles ad hoc, et une description de quelques protocoles de routage MANET
particulièrement le protocole AODV.
19
Chapitre II
1 Introduction
À l’inverse d’un réseau de télécommunication classique, L’architecture d’un réseau mobile
ad hoc étant caractérisée par une absence d’infrastructure fixe préexistante, il doit s’organiser
automatiquement de façon à être déployable rapidement et pouvoir s’adapter aux conditions
de propagation, au trafic et aux différents mouvements des unités mobiles.
Le principe du routage dans les réseaux avec infrastructure repose sur le fait que la source
transmet un datagramme à une destination en l’envoyant préalablement au routeur le plus
proche. Le paquet transite dans le réseau de routeur en routeur jusqu'à ce qu’il soit routé
directement sur le destinataire. Or dans les réseaux mobiles ad hoc, ce système ne peut être
appliqué. La notion de routeur n’existe pas et ce sont les terminaux eux même qui doivent
prendre en charge le routage des paquets. Chaque nœud est susceptible d'être mis à
contribution pour participer au routage et retransmettre les paquets ; tout nœud joue ainsi le
rôle de station et de routeur [17].
MANET (Mobile ad hoc NETwork) [10] est un groupe de travail au sein de l’IETF
(Internet Engineering Task Force) qui a émergé du groupe de travail « mobile IP». Le groupe
MANET se concentre sur les protocoles de routage dans les réseaux mobiles ad hoc et se
propose de standardiser des protocoles de routage au niveau IP. Les protocoles de routage
doivent être totalement distribués, c'est à dire qu'aucune entité centrale ne doit tout
commander, en plus, les protocoles doivent réagir aux changements imprévisibles et rapides
de la topologie du réseau.
Ce chapitre est consacré au routage dans les réseaux mobiles ad hoc, pour cela il introduit
les différents concepts liés au routage dans les réseaux mobiles ad hoc ; les contraintes, une
taxonomie des protocoles existants ; ainsi qu’une étude de quelques protocoles existants et
une étude détaillée du protocole AODV qui est au centre des travaux de ce mémoire.
2 Définitions
Le terme routage désigne l’ensemble des mécanismes mis en œuvre dans un réseau pour
déterminer les routes qui vont acheminer les paquets d’un terminal émetteur à un terminal
récepteur [43]. On distingue généralement deux entités :
L’algorithme de routage est la partie du logiciel de la couche réseau qui a la responsabilité
de décider sur quelle ligne de sortie un paquet entrant doit être retransmis [3].Le but d'un
algorithme de routage est de permettre le calcul de route entre une source et une destination
au sens d'un certain critère (plus court chemin par exemple), et la diffusion des informations
nécessaires à ce calcul.
Un protocole de routage est un ensemble de règles s’appliquant au format et à la
signification des trames, paquets ou messages échangés entre entités paires au sein de la
couche réseau [3].
21
Chapitre II Routage dans les réseaux mobiles ad hoc
22
Chapitre II Routage dans les réseaux mobiles ad hoc
point ou unicast pour laquelle il y a une source et une seule destination, la communication
multipoint ou multicast qui permet d'envoyer un message à plusieurs destinataires et la
diffusion ou broadcast qui envoie un message à tous les nœuds du réseau. Ces trois modes de
communication sont schématisés par la figure 2.1 [14].
La figure 2.2 illustre une taxonomie des protocoles de routage pour les réseaux mobiles ad
hoc :
Routage
Hiérarchique Plat
23
Chapitre II Routage dans les réseaux mobiles ad hoc
Les protocoles de routage uniformes peuvent être également regroupés selon les données
qu'ils utilisent pour effectuer leur tâche [16] :
24
Chapitre II Routage dans les réseaux mobiles ad hoc
Dans les protocoles à sélection de voisins, chaque nœud sous-traite la fonction de routage
à un sous-ensemble de ses voisins directs.
Pour les protocoles à partitionnement, le réseau est découpé en zones dans lesquelles le
routage est assuré par un unique nœud maître (appelé aussi cluster-head).
25
Chapitre II Routage dans les réseaux mobiles ad hoc
26
Chapitre II Routage dans les réseaux mobiles ad hoc
5.1 OLSR
OLSR (Optimized Link State Routing) [18] est un protocole proactif à état de liens. Afin de
maintenir à jour les tables de routage, chaque nœud implémentant OLSR diffuse
régulièrement des informations sur son propre voisinage. Ces informations sont suffisantes
pour permettre à chaque nœud de reconstruire une image du réseau et de trouver une route
vers n’importe quelle destination. Cette diffusion ne se fait pas par une simple inondation (où
chaque nœud retransmet simplement chaque nouveau paquet qu’il reçoit) ; OLSR optimise
la diffusion grâce au système des relais multi-points (MPR : Multi-Points Relays). Chaque nœud
choisit dans ses voisins directs un sous-ensemble minimal de nœuds qui lui permettent
d’atteindre tous ses voisins à deux sauts. La diffusion des informations sur les liens utilisés
pour le routage se fait ensuite uniquement par les relais multi-points ; la couverture totale du
réseau est assurée tout en limitant sensiblement le nombre de réémissions. Afin de choisir ses
relais multipoints, un nœud a besoin de connaître complètement la topologie de son
voisinage à deux sauts ; cela est réalisé grâce à l’envoi périodique de paquets hello contenant
la liste des voisins connus à un saut [15].
5.2 TBRPF
TBRPF (Topologie Dissémination Based on Reverse-Path Forwarding) [12] est un protocole de
routage proactif à état de liens. Chaque nœud maintient en permanence un arbre dont il est
la racine et qui fournit les chemins les plus courts pour tous les autres nœud s .TBRPF est
constitué de deux parties complémentaires : la découverte des voisins et le routage
proprement dit.
La découverte des voisins est assurée par un mécanisme de paquets hello diffusés
régulièrement au voisinage direct. Ces paquets hello contiennent la liste des voisins du nœud,
et permettent ainsi de connaître rapidement la topologie complète du réseau à deux sauts. Il
faut noter que TBRPF emploie une technique de hello différentiels où seuls les changements de
topologie sont notifiés (diminuant ainsi la taille moyenne des paquets et autorisant leur envoi
à une plus grande fréquence).
La partie routage quant à elle est basée sur un échange des arbres de routage entre nœuds
voisins, conduisant progressivement à la diffusion de l’information dans l’ensemble du réseau.
Là encore seules des parties d’arbres sont échangées. Normalement, un nœud ne diffuse
qu’un sous-arbre à deux niveaux dont il est la racine. Au premier niveau apparaissent les liens
vers tous les voisins directs du nœud, et au deuxième niveau un unique lien vers chaque
voisin à deux sauts (on peut noter ici une certaine similitude avec le mécanisme des relais
multi-points d’OLSR). En conjonction avec ce système de base, TBRPF peut également
ajouter des informations sur d’autres liens à l’arbre diffusé, avant de réagir plus vite en cas de
changement de la topologie. A noter enfin que dans un souci d’économie de bande passante,
les sous-arbres et les paquets hello sont regroupés autant que possible dans un même paquet
(on parle d’agrégation ou piggybacking puisque l’on profite des paquets hello pour envoyer en
même temps les sous- arbres) [15].
5.3 DSR
DSR (Dynamic Source Routing) [13] est un autre protocole réactif. Il se différencie des autres
en particulier parce qu’il pratique le source routing : l’émetteur précise dans l’en-tête de chaque
paquet la liste des nœuds qu’il devra traverser pour atteindre sa destination. Ce type de
routage présente certains avantages particulièrement intéressants ; il autorise en particulier la
source à conserver dans sa table de routage plusieurs chemins valides vers une même
27
Chapitre II Routage dans les réseaux mobiles ad hoc
destination. Le choix du chemin emprunté pourra donc être fait indépendamment pour
chaque paquet, et permettre un meilleur équilibrage de la charge du réseau ou une meilleure
réactivité aux changements de topologie. Dans la pratique, DSR est structuré en deux sous-
parties complémentaires : la recherche de route et la maintenance de route. La recherche de
route se fait par inondation : un paquet de recherche est diffusé de proche en proche jusqu’à
la destination. Au fur et à mesure, les identifiants des nœuds traversés sont ajoutés dans le
paquet de recherche de route. Quand elle reçoit ce paquet, la destination sait donc déjà quel
chemin il a emprunté, et obtient ainsi (en l’inversant) la route pour retourner à la source. A la
réception, les paquets de recherche ayant suivi des chemins différents, la destination répond
sur les chemins inverses, et la source aura ainsi finalement plusieurs chemins valides pour
l’atteindre.
• Type (8 bits): ce champ indique le type de paquet, dans ce cas il prend la valeur 1.
• Flags (drapeaux) (5 bits): ce champ contient cinq flags (J, R, G, D, U) tel que ;
J (Join flag) et R (Repair flag) sont réservé pour le multicast ;
G (Gratuitous RREP flag) indique si un message RREP spécifique doit être envoyé à la
destination dans le cas où un nœud intermédiaire possède un chemin à la
destination.
D (Destination only flag) ce drapeau indique si seulement la destination qui doit
répondre à la requête ou pas.
U (Unknown sequence number) indique le numéro de séquence de la destination est
inconnu.
• Réserved (11 bits): initialisé à la valeur 0 et ignoré à la réception du message.
• Hop Count (8 bits): il contient le nombre de sauts parcourus par RREQ.
• RREQ ID: il identifie la requête parmi les requêtes envoyées par la même source.
• Destination IP Address: l'adresse IP de destination pour laquelle une route est désirée.
• Destination Séquence Number: Le dernier numéro de séquence reçu dans le passé par le
créateur pour n'importe quelle route vers la destination.
• Originator IP Adress: l'adresse IP de la source de la requête.
• Originator Sequence Number: Le nombre de séquence courant de la source contenue dans
la table de routage de ce nœud s.
RREP: contient essentiellement les champs suivants [11] :
• Type (8 bits): ce champ indique le type de paquet, dans ce cas il prend la valeur 2.
• Flags (drapeaux) (2 bits): ce champ contient deux flags ;
R (Repair flag) : utilisé pour le multicast.
A (Acknowledgment required): indique si la source doit envoyer un acquittement pour le
message RREP.
• Reserved (9 bits): initialisé à la valeur 0 et ignoré à la réception du message.
29
Chapitre II Routage dans les réseaux mobiles ad hoc
• Préfix Sz(5 bits): si la valeur de ce champs est différente de zéro, ce dernier indique que
le nœud prochain peut être utilisé pour chaque nœud demandant cette destination et
qui possède la même valeur de Prefix Sz.
• Hop Count (8 bits): il contient le nombre de sauts entre la source jusqu'à la destination.
• Destination IP Address : l’adresse IP de la destination du paquet RREQ.
• Destination Sequence Number : le numéro de séquence de la destination associé à cette
route.
• Originator IP Adress : l’adresse IP du nœud qui crée la requête.
• Lifetime : le temps pour lequel chaque nœud qui reçoit RREP considère que la route est
valide.
RERR: Un message d'erreur de route contient essentiellement les champs suivants [11]:
30
Chapitre II Routage dans les réseaux mobiles ad hoc
de contrôle et permet aux autres de distinguer les messages importants des messages
redondants.
Le numéro de séquence est utilisé aussi pour la mise à jour de la table de routage, celle-ci ne
s'effectue que si les conditions suivantes sont observées:
Le numéro de séquence du paquet de contrôle est strictement supérieur au numéro de
séquence présent dans la table.
Les numéros de séquence (de la table et du paquet) sont égaux mais, la distance en sauts
du paquet plus 1 est inférieure à la distance actuelle dans la table de routage.
Le numéro de séquence pour cette destination est inconnu.
Cette façon de procéder garantit la création de routes sans boucles [17].
31
Chapitre II Routage dans les réseaux mobiles ad hoc
Cette information est utilisée pour construire le chemin inverse (Fig 2.6), qui sera traversé
par le paquet réponse de route de manière unicast (cela veut dire qu'AODV supporte
seulement les liens symétriques). Puisque le paquet RREP va être envoyé à la source, les
nœuds appartenant au chemin de retour vont modifier leurs tables de routage suivant le
chemin contenu dans le paquet de réponse (temps d'expiration, numéro de séquence et
prochain saut).
Afin de limiter le coût dans le réseau, AODV propose d'étendre la recherche
progressivement. Initialement, la requête 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.
32
Chapitre II Routage dans les réseaux mobiles ad hoc
paquet UNSOLICITED RREP, avec une valeur de numéro de séquence égale à l'ancienne
valeur du paquet RREP incrémentée d'une, et une valeur infinie de la distance. Le paquet
UNSOLICITED RREP est diffusé aux voisins actifs, jusqu'à ce qu'il arrive à la source. Une
fois le paquet est reçu, la source peut initier le processus de la découverte de routes.
AODV maintient les adresses des voisins à travers lesquels les paquets destinés à un
certain nœud arrivent. Un voisin est considéré actif, pour une destination donnée, s'il délivre
au moins un paquet de données sans dépasser une certaine période (appelée active timeout
period). Une entrée de la table du routage est active, si elle est utilisée par un voisin actif. Le
chemin reliant la source et la destination en passant par les entrées actives des tables de
routage, est dit un chemin actif. Dans le cas de défaillances de liens, toutes les entrées des
tables de routage participantes dans le chemin actif et qui sont concernées par la défaillance
sont supprimées. Cela est accompli par la diffusion d'un message d'erreur entre les nœuds
actifs [18].
La maintenance peut être résumée dans les trois points suivants :
Des messages HELLO périodiques pour détecter les coupures de liens.
Si la source se déplace, la procédure de détermination de route peut être réinitié.
Si un nœud intermédiaire ou la destination se déplacent, un RREP spécial est émis au
nœud source (reconstruisant la route au passage).
33
Chapitre II Routage dans les réseaux mobiles ad hoc
travaux ont déjà été réalisés à son propos et il a fait l'objet de simulations comparatives
détaillées. Ce sont des critères assez subjectifs qui conduisent au choix d’AODV [20].
7 Autres protocoles
De nombreux autres protocoles de routage ont été proposés pour les réseaux mobiles ad
hoc. Dans la catégorie des protocoles hiérarchique on peut citer Cluster- Head Gateway Switcher
Routing (CGSR) présenté dans [21]. Certains autres protocoles nécessitent l’emploi de
matériels externes, Par exemple Temporaly-Ordered Routing Algorithm (TORA) [22] a besoin que
les mobiles soient synchronisés. D’autres utilisent le système GPS pour estimer la direction
géographique de la destination et ne faire intervenir qu’une sous-partie du réseau dans la
phase de construction des routes. Alors que beaucoup de protocoles cherchent à minimiser le
nombre de sauts (minimum shortest path), certains protocoles enfin s’attachent à prendre
d’autres critères en considération. ABR [23] (Associativity-Based Routing) par exemple privilégie
les liens les plus stables (mobiles qui restent longtemps dans le voisinage les uns des autres).
SSR [24] (Signal Stability Routing) travaille à partir des informations de niveau de signal et
cherche à maximiser la durée de vie du réseau en agissant sur la puissance d’émission de
chaque mobile séparément [15].
Conclusion
Si le routage dans son contexte général est une tâche complexe, les caractéristiques des
MANETs rendent la conception d’un protocole de routage efficace plus complexe.
De nombreux protocoles de routage ont été développés pour les MANETs faisant face aux
contraintes spécifiques de ce type de réseaux. Ces protocoles peuvent être classés selon
plusieurs critères : leur architecture, les algorithmes utilisés, les politiques de routages, etc.
L’établissement des routes par ces protocoles se fait seulement suivant le critère classique :
le plus court chemin ; il suffit d’assurer la connectivité entre une source et une destination.
Cependant ce critère n’est pas du tout suffisant pour des applications comme le multimédia
par exemple qui exigent des garanties particulières (la bande passante, le délai…etc.). En effet,
il est nécessaire de penser à d’autres solution de routage optimales en termes de certains
critères si nous voulons déployer de telles application dans un environnement ad hoc, on
parle alors de la notion du routage avec qualité de service.
Dans ce chapitre nous avons vu le concept de routage dans les réseaux mobiles ad hoc, les
contraintes, une taxonomie des différents protocoles existants, ensuite nous avons décrit les
principaux protocoles proposés pour les MANETs, en fin nous avons détaillé le
fonctionnement du protocole AODV pour être l’objet de notre étude. Le choix du protocole
AODV est justifié par les avantages cités dans la section 6.4.
Dans le chapitre suivant nous allons étudier la notion de qualité de service, particulièrement
le routage avec qualité de service, dans le but de faire une extension du protocole AODV
pour garantir des exigences de la qualité de service.
34
Chapitre III
1 Introduction
La performance d’un réseau est un élément fondamental et nécessaire pour une utilisation
efficace d’applications, notamment les applications qui exigent une qualité de service (QoS,
Quality of Service) telles que la téléphonie, la vidéo à la demande, la vidéo conférence ou encore
les applications temps réels. Le déploiement de telles applications dans les MANETs
représente de nombreux intérêts. Cependant on doit faire face à plusieurs défis et difficultés,
et trouver des solutions fiables qui aident à l’intégration de la qualité de service dans ce genre
de réseaux.
Comme nous l’avons vu dans le chapitre 2, le groupe MANET de l’IETF a proposé
plusieurs protocoles de routage pour les réseaux mobiles ad hoc. Ceux ci fonctionnent en
mode best effort c'est-à-dire : au mieux. Cependant, ils ne permettent pas de garantir une qualité
de service.
Généralement, la recherche sur la qualité de service dans les réseaux mobiles ad hoc touche
à plusieurs domaines ; Les modèles de QoS, la différentiation au niveau de la couche MAC
(Medium Access Control), les protocoles de signalisation et Le routage avec QoS.
Dans ce chapitre, on s’intéressera aux solutions de la QoS dans les MANETs, plus
particulièrement au routage avec QoS, pour ce faire nous présentons d’abord les principales
notions de qualité de service, la définition, les métriques, les solutions et le problème de
routage avec QoS dans les MANETs.
36
Chapitre III QoS dans les réseaux mobiles ad hoc
37
Chapitre III QoS dans les réseaux mobiles ad hoc
38
Chapitre III QoS dans les réseaux mobiles ad hoc
revanche une variation fréquente de 100 ms sur le délai de transit est catastrophique et rend le
service inutilisable [48].
Les principaux paramètres influents en VoIP sont, les échantillonnages (codecs), le délai de
bout en bout, la gigue et les pertes de données.
5.1.3 La gigue
La variation du délai(ou gigue) est la conséquence du fait que tous les paquets contenant
des échantillons de voix ne vont pas traverser le réseau à la même vitesse. Cela crée une
déformation de la voix ou un hachage.
39
Chapitre III QoS dans les réseaux mobiles ad hoc
La gigue est indépendante du délai de transit. Le délai peut être court et la gigue
importante ou inversement. La gigue est une conséquence de congestions passagères sur le
réseau, ce dernier ne pouvant plus transporter les données de manière constante dans le
temps. La valeur de la gigue va de quelques ms à quelques dizaines de ms.
qualité
Bonne Moyenne Mauvaise
métrique
Délai de bout en bout D < 150 ms 150 ms < D < 400 ms 400 ms < D
Gigue G < 20 ms 20 ms < G < 50 ms 50 ms < G
Perte de paquets P < 1% 1% < P < 3% 3% < P
40
Chapitre III QoS dans les réseaux mobiles ad hoc
En réalité, ces solutions ne sont pas indépendantes. En effet, pour construire un bon
modèle de qualité de service, les autres composants de QoS (routage QoS, protocole de
signalisation, protocole MAC avec QoS) doivent coopérer pour atteindre cet objectif. En
outre, Un protocole MAC QoS est un composant essentiel de la qualité de service dans les
MANET, toutes les couches supérieures (routage QoS et protocole de signalisation)
dépendent du protocole MAC avec QoS [32].
FQMM est un modèle de QoS proposé pour les MANETs. Les concepteurs du modèle
FQMM prennent en compte le fait que les réseaux ad hoc pourraient, à terme être connectés
à des réseaux filaires de type Internet. Il apparaît dès lors nécessaire d'offrir un mécanisme de
qualité de service suffisamment proche des protocoles filaires afin de s'interfacer avec ces
derniers. Le modèle FQMM se situe entre les deux modèles IntServ et DiffServ, il définit
plusieurs classes de service dont la plus haute permet à chaque flux de spécifier les contraintes
qui lui sont propres.
FQMM définit trois types de nœuds : les nœuds d'entrée (émetteurs), les nœuds
intermédiaires et les nœuds de sortie (récepteurs). Compte tenu du fait que dans un réseau ad
hoc, chaque nœud assure la fonction de routeur, chaque mobile joue différents rôles pour
différents flux. Le conditionnement du trafic (lissage, marquage, etc.) est à la charge des
41
Chapitre III QoS dans les réseaux mobiles ad hoc
émetteurs. FQMM requiert l'utilisation d'un protocole de routage capable d'offrir une certaine
QoS, c'est à dire capable de rechercher des routes satisfaisant certaines contraintes [32].
42
Chapitre III QoS dans les réseaux mobiles ad hoc
INSIGNIA
INSIGNIA est un protocole de signalisation in-band (la signalisation est incluse dans les
entêtes des paquets de données) permettant d’effectuer des réservations de bande passante
dans les réseaux ad hoc. INSIGNIA offre des garanties sur la base d’une granularité par flot
aux applications adaptatives capables de modifier leur comportement en fonction de la
quantité de bande passante qui leur est allouée. Chaque application spécifie deux niveaux de
qualité de service.
Le niveau de base permet de spécifier la bande passante minimale nécessaire au trafic et le
niveau amélioré, le débit optimal à atteindre lorsque les ressources sont disponibles. Ce
protocole a été conçu pour réagir rapidement aux changements de topologie. INSIGNIA
n’est pas lié à un protocole de routage particulier [32].
43
Chapitre III QoS dans les réseaux mobiles ad hoc
<5>
<4> <20> <70>
B B C
C
S <4> <5> S <25> <50>
<30>
<2> <3> <70>
<Bp> : bande passante <D> : Délai
E F E F Besoin en QoS:D≤150
<3> Besoin en QoS: Bp≥4 <60>
<4>
D <2> Plus court chemin D <70> Plus court chemin
<40>
Chemin Chemin satisfaisant
1
D satisfaisant la QoS 2 D la QoS
44
Chapitre III QoS dans les réseaux mobiles ad hoc
Le tableau 3.4 décrit quelques protocole de routage avec QoS représentatifs avec les
différents caractéristiques et techniques de fournir la qualité de service au niveau de la couche
réseau. Chacun de ces protocoles aborde les problèmes de l’estimation de la bande passante
et du délai, la découverte de routes avec QoS, la réservation des resources, et l’approche
utilisée dans la maintenance des routes, les protocoles présentés dans ce tableau sont décrits
dans [47].
Prise en
Estimati-
Protocole Réservation compte
Métrique mation de découverte Routes
de Architecture de des redondantes
de QoS délai/bande de routes
routage ressources cassures de
passante
liens
Hiérarchique Bande Proactive
CEDAR Non Oui Non Non
passante /réactive
Bande
Ticket-
based
plat passante Non réactive Oui Non Oui
/délai
OLSR- Bande
based hiérarchique Oui Proactive Non Non Non
passante
Bande
AQOR plat passante Oui réactive Oui Non Non
/délai
Bande
ADQR plat Non réactive Oui Oui Oui
passante
Bande
TDR plat Non réactive Oui Oui Non
passante
Bande
BEQR plat Oui réactive Non Non Non
passante
Conclusion
Avec les avantages qu’offrent un MANET par rapport à d’autres types de réseaux, le
déploiement de nouvelles applications dans ces réseaux représente plusieurs intérêts. Pour
certaines applications, telles que le multimédia, l’introduction de la QoS dans les MANETs
est devenue une nécessité.
Plusieurs solutions ont été proposées à plusieurs niveaux pour atteindre cet objectif. Selon
le cas, ces solutions peuvent toucher une ou plusieurs couches du réseau, la solution qui
touche plus de niveaux est la solution la plus efficace. Dans notre étude on s’intéressera plus
particulièrement à la couche réseau, en essayant d’établir un routage efficace en termes de
certains critères de la QoS.
Ce présent chapitre discute le concept de QoS dans les MANETs, plus particulièrement le
routage avec QoS et les problèmes rencontrés dans le contexte ad hoc.
Dans le prochain chapitre, nous allons étudier les détailles de la conception d’un protocole
de routage avec QoS ; il s’agit d’une extension du protocole AODV étudié en détails dans le
chapitre 2 on lui rend sensible à une métrique de QoS.
45
Chapitre IV Conception
Chapitre IV
Conception
- 46 -
Chapitre IV Conception
Conception
1 Introduction
Deux approches sont possibles pour la conception d’un protocole de routage avec QoS :
Approche révolutionnaire qui consiste à concevoir un nouveau protocole avec de
nouvelles fonctionnalités.
Approche évolutionnaire qui consiste à faire des extensions des protocoles best effort
existants ou d’apporter des améliorations à un protocole de routage avec QoS en
ajoutant d’autres métriques par exemple.
Dans le cadre de cette étude nous avons choisi cette dernière pour deux raisons ; la
première qu’il est plus efficace et facile et encore moins coûteux d’améliorer un travail
existant qu’à refaire un autre travail de nouveau. La deuxième est qu’une extension d’un
protocole existant est plus compatible avec la version originale ce qui permet l’utilisation des
deux à la fois et facilite l’interconnexion des deux plate formes fonctionnant avec l’ancienne
et la nouvelle version du protocole. Le protocole concerné par cette étude est le protocole
AODV étudié en détail dans le chapitre II.
Comme nous l’avons vu, les chemins établis par le protocole AODV standard ne permettent
pas de garantir des critères de qualité de service. C'est pourquoi il semble important de faire
une extension de ce protocole afin d'assurer une certaine qualité de service. L’intégration de
la QoS dans AODV a pour objectifs :
Améliorer la QoS dans les réseaux mobiles ad hoc.
Introduire une métrique plus appropriée que la distance (nombre de sauts).
Évaluer les performances d’AODV afin de tester son efficacité pour des applications
exigeantes en QoS.
Dans cette partie, nous allons discuter les spécifications d’une solution qui intègre la QoS
dans le protocole AODV basée sur la métrique délai de bout en bout. Le choix de la métrique
délai de bout en bout est justifié par le besoin de déploiement des applications sensible à cette
métrique dans les MANETs telles que la VoIP.
Pour ce faire, nous avons commencé d’abord par la description de la méthode d’estimation
du délai qui sera utilisée pour aider AODV à intégrer cette métrique. Par la suite, nous
expliquons les modifications nécessaires ajoutées à la structure d’AODV ainsi que le nouveau
mécanisme de fonctionnement basé sur la recherche de routes assurant la métrique délai de
bout en bout, et une anatomie le l’agent de routage AODV avec QoS à travers quelques
diagrammes UML (Unified Modeling language).
- 47 -
Chapitre IV Conception
Afin de concevoir un protocole de routage avec QoS basé sur le délai comme métrique,
Une méthode d’estimation du délai est indispensable, pour cela, nous allons d’abord effectuer
une étude d’une méthode d’estimation du délai. La méthode adoptée dans cette étude est
basée sur le travail de C. Sarr dans [42].
- 48 -
Chapitre IV Conception
Queue
λ µ
Client Serveur
n(t)≤K
Fig. 4.1- Modélisation d’un nœud 802.11 par une file M/M/1/K.
Le paramètre λ représente le débit désiré par l’application qui est explicitement fourni lors
de la phase de requête de route avec QoS.
Le paramètre µ représente la bande passante libre autour de ce nœud. Cette valeur peut
être estimée en calculant le pourcentage de temps libre TL qui sera ensuite multiplié par la
capacité maximale du médium radio Cmax suivant la formule :
µ = TL × C m ax …………...……………..4.1
La modélisation du taux de service µ par la bande passante résiduelle (libre) d’un nœud
permet de prendre en compte deux facteurs :
Le temps s’écoulant entre l’instant où le mobile rentre dans la file d’attente et l’instant
où il la quitte.
Le temps que le mobile doit attendre au niveau MAC avant de pouvoir émettre ses
paquets, le médium étant occupé par des transmissions voisines.
En effet, la bande passante libre n’est pas la même sur tous les nœuds du réseau. Cela
dépend du trafic passant par le nœud et de l’activité des transmissions des nœuds voisins. La
figure 4.2 montre un exemple de la variation de la bande passante libre dans le temps sur
deux nœuds du réseau obtenu par simulation (pour une capacité du médium de 11Mbps).
Fig. 4.2- Exemple de la bande passante libre sur deux nœuds d’un MANET.
- 49 -
Chapitre IV Conception
Le délai d’un paquet dans la file d’attente de l’émetteur n’est autre que le temps moyen de
séjour noté R d’un client arrivant dans la file, donnée par la loi de Little :
ρ 1 − (Κ +1) ρ Κ + Κρ Κ +1 1 λ
R= Avec : ρ =
1− ρ 1− ρΚ λ µ
Ce temps de service diverge lorsque ρ = 1. Nous allons donc calculer la limite de R quand
ρ → 1 de ce temps de service. On obtient donc comme résultat :
1 1
lim R = (Κ +1)
ρ →1 2 λ
D’où l’expression finale de R est donnée par :
ρ 1 − (Κ +1) ρ Κ + Κρ Κ+1 1
Si ρ ≠ 1
1− ρ 1− ρ Κ λ
R=
………………..……….4.2
1 1
(Κ +1) Si ρ = 1
2 λ
P( X = 0) = p 0 (1 − p)
P( X = 1) = p1 (1 − p)
P( X = 2) = p 2 (1 − p)
.
.
.
P( X = j ) = p (1 − p) Pour j ≤ 6
j
Dans la norme IEEE 802.11 le nombre maximum de retransmissions est fixé à 7 donc :
P( X = 7) = p 7
P ( X = i) = 0 Si i ≥ 8
On remarque que le facteur (1 − p) n’est pas présent lorsque X = 7 , car après 7
retransmissions sans réception d’un acquittement, le paquet de données correspondant est
droppé par la couche MAC. Nous pouvons donc en déduire l’espérance de la variable
aléatoire X correspondant au nombre moyen de retransmissions n :
- 50 -
Chapitre IV Conception
6
n = E ( X ) = ∑ i. p i (1 − p ) + 7 p 7
i =0
Pour obtenir une expression simplifiée de n en fonction de p on utilise les résultats sur la
dérivabilité des sommes géométriques :
6
1 − p7
On sait que : ∑ p i =
i =0 1− p
En dérivant cette expression par rapport à la variable p on obtient :
7
6 p7 _ 7 p6 + 1
⇒ ∑ p i −1 =
i =0 (1 − p ) 2
En multipliant l’expression par (1 − p ). p on obtient finalement :
7
6 p8 _ 7 p7 + p
n = ∑ p i (1 − p ) = ………..…………..…4.3
i =0 (1 − p )
De plus, selon la norme IEEE 802.11, à chaque collision la taille de la fenêtre de contention
est doublée ainsi à la i eme collision successive ( i ≤ 7 selon la norme IEEE 802.11) la taille de la
fenêtre de backoff est de 2i CWmin . Le backoff étant une loi uniforme, à chaque stage de backoff
nous prendrons la valeur moyenne pour représenter la valeur du backoff qui sera choisi pour le
paquet qui va être émis.
Ainsi le délai de propagation sur le canal noté D prop est donné par la formule :
n
1
D prop = ∑ ( DIFS + 2i CWmin + Tm )
i =o 2
n
1 1
D prop = ( n + 1)( DIFS + Tm ) + CWmin ∑ 2i
2 i =o 2
1
D prop = (n + 1)( DIFS + Tm ) + CWmin (2n+1 − 1) ……………………..4.4
2
Tm représente le temps moyen de propagation d’un paquet sur le médium. Cette valeur
est constante lorsque la capacité du médium est la même en tout point. C’est le temps
nécessaire pour transmettre les en-têtes MAC, physique et les données du paquet à émettre.
Ainsi le délai sur un lien d’un paquet de taille m noté D est :
D = R + D prop ………………………………………..4.5
Comme le montre la formule ci-dessus, le délai de transmission dépend de la probabilité
de collision entre un nœud émetteur et le récepteur. Si on considère un seul émetteur, ce taux
de collision n’est pas le même vers l’ensemble de ces nœuds voisins. Ainsi, le délai est
différencié suivant le voisin vers lequel en veut envoyer les donnés.
La probabilité de collision peut être estimée en utilisant l’envoi périodique des messages
HELLO. Chaque nœud calcule cette probabilité avec la formule suivante :
Le nombre de paquets entrés en collision est le nombre de paquets que l’on devrait
recevoir duquel on soustrait le nombre de paquets effectivement reçus durant une période de
mesure. Cette estimation n’est toujours pas assez précise, car les paquets HELLO peuvent
être influencés par une congestion ou une défaillance des liens que par des collisions. Toute
fois, cette problématique n’est pas prise en compte dans cette étude [42].
- 51 -
Chapitre IV Conception
- 52 -
Chapitre IV Conception
- 53 -
Chapitre IV Conception
Quand la destination reçoit la RREQ, elle fait le même contrôle, s’il est vérifié, elle envoie
une requête RREP en mode unicast vers la source par le chemin inverse pour la validation de
la route concernée (figure 4.4), chaque nœud intermédiaire doit mettre à jour sa table de
routage. La communication entre la source et la destination peut alors avoir lieu en respectant
le délai requis par la source, jusqu’à ce que l’une des extrémités ferme la connexion, ou
jusqu’à ce que la route utilisée se brise ou se dégrade.
- 54 -
Chapitre IV Conception
3.4 Limitations
La partie touchée par les modifications concerne seulement la phase de découverte de
routes c'est-à-dire la diffusion de la requête RREQ (voire figure 4.6). En effet, la solution
présentée dans la section précédente permet au protocole AODV-D d’assurer un certain
degré de qualité de service de telle sorte que toutes les routes établies respectent la métrique
délai de bout en bout. Cependant aucune garantie n’est fournie pendant la transmission des
paquets de données. Si le délai augmente sur un chemin après la validation de ce lui ci, aucun
mécanisme de détection et de maintenance de telles situations n’est fournie. Autrement dit, la
QoS offerte est relâchée (soft QoS).
- 55 -
Chapitre IV Conception
CA : contrôle d’admission.
- 56 -
Chapitre IV Conception
4 Diagramme de séquence
La figure 4.7 illustre le diagramme de séquence qui résume les principales opérations
effectuées par le protocole AODV-D. Il montre également l’enchainement des principales
étapes par lesquelles doit passer AODV-D pendant la phase de découverte de routes et
l’emplacement du contrôle d’admission effectué par les nœuds intermédiaires et la
destination.
5 Diagramme de classes
La figure 4.8 montre le diagramme de classes du protocole AODV-D [46]. Notons ici que
le diagramme a gardé la même structure que celui d’AODV. Les modifications effectuées
concerne certains attributs et opérations et non les classes eux même ; On n’a pas ajouté des
classe ni éliminé d’autres.
La conception du protocole AODV-D a été faite autour de la classe pivot AODV. C’est la
classe de tous les objets participant à l’exécution du protocole sur les nœuds. Ces objets
occupent la couche réseau dans chaque nœud. La classe AODV utilise les objets des classes:
BroadcastTimer, HelloTimer, NeighborTimer, RouteCacheTimer, LocalRepairTimer,
aodv_rtable et aodv_rqueue pour maintenir les états (valeurs de ces attributs), et c’est au
niveau de cette classe que les modifications du protocole AODV sont introduites en ajoutant
quelques fonctionnalités concernant le contrôle d’admission qui vérifie la métrique de QoS
considérée. Les composants touchés par les modifications sont marquées en gras dans la
figure 4.8.
Le point d’entrée de la classe AODV est la méthode recv( ). A partir de cette méthode on
fait appel à toutes les autres fonctions de la classe AODV. Parmi eux, la fonction
recvAODV( ), celle-ci fait appel la fonction recvrequest( ), et c’est exactement ici que le
contrôle d’admission est effectué.
- 57 -
Chapitre IV Conception
- 58 -
Chapitre IV Conception
Conclusion
Ce présent chapitre décrits les spécifications d’une solution qui permet d'étendre le
protocole AODV pour garantir de la QoS en termes de délai de bout en bout. Il détaille
également le principe de fonctionnement du nouveau protocole et la méthode d'estimation
du délai utilisée.
Ce chapitre a été dédié à la conception de AODV-D. nous y avons abordé les principaux
diagrammes UML qui montrent les relations entre les différentes classes du protocole. Ces
classes sont en grande partie, basées sur les classes AODV.
Le prochain chapitre sera consacré aux détails de l’implémentation du protocole AODV-D
modifié sous le simulateur NS-2 (network simulator 2).
- 59 -
Chapitre V Implémentation
Chapitre V
Implémentation
- 60 -
Chapitre V Implémentation
Implémentation
1 Introduction
Avec l’évolution des réseaux sans fil et l’élaboration de plusieurs normes pour ces réseaux,
et avec le besoin des simulations dans le contexte de l’évaluation des performances, de
nombreux simulateurs des réseaux ont été développés. Les simulateurs les plus connus sont :
NS-2 (Network Simulator 2), OPNET et GloMoSim/Qualnet [15].
Dans le cadre de notre étude, nous avons choisi le simulateur NS-2 (voir annexe A)
développé à Lawrence Berkeley National Laboratory (LBNL). C’est le simulateur de réseaux le
plus utilisé par la communauté des chercheurs dans les MANETs. NS-2 offre plusieurs
avantages ; nous pouvons citer [38]:
Il est open source et gratuit. Il englobe les contributions de nombreux chercheurs à
travers le monde.
Il peut être étendu à d'autres modèles grâce à sa conception orientée objet et son
implémentation en C++.
Il est riche en modèles et en protocoles pour les environnements filaires et mobiles.
Il fournit des résultats fiables sous forme de fichier trace riche en informations que
l'utilisateur peut exploiter.
Il est bien documenté. Les ressources bibliographiques relatives à sa conception et son
implémentation sont très nombreuses.
Il est utilisé dans plus de 43% des travaux de recherche dans le domaine du routage dans
les réseaux MANETs.
Il inclut les implémentations de quatre protocoles de routage dans les MANETs à savoir :
AODV, DSDV, DSR et TORA.
En plus de ces avantages, l’approche évolutive que nous avons choisie dans cette étude
justifie notre choix de NS-2, car une implémentation du protocole AODV existe déjà, il suffit
donc d’y apporter les modifications nécessaires qui permettent d’intégrer la QoS dans AODV
en appliquant la méthode décrite dans le quatrième chapitre.
Ce présent chapitre est consacré aux détails de l’implémentation du protocole AODV-D
sous NS-2. Pour ce faire, nous présentons d’abord les différents fichiers et modules
concernés par les modifications. Ensuite nous décrivons les modifications nécessaires du
protocole IEEE 802.11 pour intégrer la méthode d’estimation du délai adoptée, et enfin, les
nouvelles méthodes ajoutées, les changements dans le format des paquets, et le mécanisme de
fonctionnement de l’agent de routage AODV-D.
- 61 -
Chapitre V Implémentation
• aodv_packet.h : ici sont déclarés tous les types de paquets qu’utilise AODV dans les
échanges entre les nœuds du réseau.
• aodv_rtable.h : le fichier header où la table de routage est déclarée.
• aodv_rtable.cc : implémentation de la table de routage.
• aodv_rqueue.h : ce fichier définit la file d’attente utilisée par le protocole de routage
et la déclaration des différentes fonctions et méthodes utilisées qui servent à la
manipulation de cette file.
• aodv_rqueue.cc : il contient l’implémentation de la file et de fonctionnalités.
• aodv_logs.cc : destiné à la gestion de la connectivité locale entre les nœuds du réseau.
Pour plus de détails d’implémentation du protocole AODV sous NS-2 et la relations entre
ces fichiers et avec d’autres fichiers ainsi que les différentes classes et méthodes utilisées, voir
[45].
- 62 -
Chapitre V Implémentation
• Couche application : dans le cas AODV-D, l’agent applicatif est capable d’initialiser
les besoins en QoS. Ceci est le cas général. Dans notre cas, nous avons procédé
comme dans la section 7 de ce chapitre.
- 63 -
Chapitre V Implémentation
mac->bandwidthHandler();
T = (MinHelloInterval +
((MaxHelloInterval - MinHelloInterval) * Random::uniform()))/1;
assert(T>=0);
rtime = T;
Scheduler::instance().schedule(this, &intr,rtime);
}
- 64 -
Chapitre V Implémentation
if (rx_state_ == MAC_RECV)
{
time = txtime(pktRx_);
}
else if (rx_state_ == MAC_ACK)
{
time = txtime(phymib_.getACKlen(),basicRate_);
}
else if (rx_state_ == MAC_RTS)
{
time = txtime(phymib_.getRTSlen(),basicRate_);
}
else if (rx_state_ == MAC_CTS)
{
time = txtime(phymib_.getCTSlen(),basicRate_);
}
Rcv_time += time; //mise à jour de Rcv_time.
}
inline void
Mac802_11::setTxState(MacState newState)
{
tx_state_ = newState;
checkBackoffTimer();
if (tx_state_ == MAC_SEND)
{
time = txtime(pktTx_);
}
else if (tx_state_ == MAC_ACK)
- 65 -
Chapitre V Implémentation
{
time = txtime(phymib_.getACKlen(),basicRate_);
}
else if (tx_state_ ==MAC_RTS)
{
time = txtime(phymib_.getRTSlen(),basicRate_);
}
else if (tx_state_ == MAC_CTS)
{
time = txtime(phymib_.getCTSlen(),basicRate_);
}
Une fois Rcv_time et Send_time connus, nous pouvons calculer le taux d’occupation du
médium (Busy_time ) par la relation suivante :
Busy_time = Rcv_time + Send_time/T
Le pourcentage du temps libre (free_time) sera égal à (1- Busy_time). La bande passante
libre autour d’un nœud est égale la capacité du médium Cmax multipliée par le pourcentage du
temps libre free_time (équation 4.1). Pour ce faire, nous avons introduit une nouvelle
méthode à la classe mac_802.11 qui fait un calcule périodique de la bande passante libre
(paramètre µ ) ainsi que la mise à jour de Rcv_time et Send_time. La méthode est
bandwidthHandler(), son code est donné dans listing 5.3 :
free_time = (1-busy_time);
- 66 -
Chapitre V Implémentation
if (ch->ptype() == PT_AODV)
{
if (ah_->ah_type == AODVTYPE_RREQ)
{
req_bw = rq_->bw_req; //récupération de paramètre λ de la RREQ.
free = freebw_; // la bande passante libre (le parameter µ
rho = req_bw/free;
q = 50.0; // la taille de la file.
- 67 -
Chapitre V Implémentation
Une fois la probabilité de collision connue on peut calculer le délai de probagation avec les
equations 4.3 et 4.4. Pour implémenter ces équations nous avons ajouté une nouvelle variable
D_prop_estimation à la class Mac_802.11 dans le fichier\ns-2.33\mac\mac_802.11.cc, la
mis à jour de la valeur de cette variable sera faite au niveau de la méthode RecvDADA() à
chaque fois que celle-ci est invoquée (listing 5.6) :
+(0.5*phymib_.getCWMin()*phymib_.getSlotTime()*(pow(2.0,N+1.0)-1.0));
- 68 -
Chapitre V Implémentation
…………………………
rq_->one_hop_delay = Q_delay + D_prop_estimation;
………………………..
uptarget_->recv(p, (Handler*) 0);
}
- 69 -
Chapitre V Implémentation
- 70 -
Chapitre V Implémentation
if (id_lookup(rq->rq_src, rq->rq_bcast_id)) {
#ifdef DEBUG
fprintf(stderr, "%s: discarding request\n", __FUNCTION__);
#endif // DEBUG
- 71 -
Chapitre V Implémentation
Packet::free(p);
return;
}
/*controle d’admission*/
}
else {
#ifdef DEBUG
fprintf(stderr, "%s: délai insuffisant\n", __FUNCTION__);
#endif // DEBUG
Packet::free(p);
return;
}
………….
forward((aodv_rt_entry*) 0, p, DELAY);
}
- 72 -
Chapitre V Implémentation
de mesure).
nbr_ph_rsv = 0.0;
- 73 -
Chapitre V Implémentation
Pour initialiser ces variables il suffit d’ajouter les commandes suivantes dans notre script
Tcl (listing 5.13):
Listing 5.13 : commandes Tcl pour initialiser les paramètres de QoS.
Agent/AODV set QoS_factor “valeur souhaitée”
Agent/AODV set req_bandwitdh
Agent/AODV set req_delay
Après avoir terminé avec les modifications nécessaires dans le code, une recompilation de
NS-2 est nécessaire, cela est fait par la commande make : Une fois cela est fait sans erreurs,
le protocole AODV-D peut être utilisé dans des simulations afin de vérifier les résultats et les
comparer avec celles du protocole AODV standard.
Conclusion
Ce chapitre a été consacré aux détails de l’implémentation du protocole AODV-D, il
donne d’abord une présentation globale de la structure du protocole AODV sous Network
Simulator 2. Il discute ensuite les modifications apportées à ce protocole dans le but
d’introduire la qualité de service dans ce protocole en terme de délai de bout en bout. Enfin,
il introduit une description des modifications apportées au protocole IEEE 802.11 utilisé au
niveau MAC afin d’implémenter la méthode d’estimation du délai adoptée dans cette étude
qui est nécessaire pour effectuer un contrôle d’admission par AODV-D.
Dans le chapitre suivant, nous allons décrire une série de simulations réalisées à l’aide du
simulateur NS-2 dans le but d’évaluer les performances du protocole AODV-D, et de le
comparer avec AODV standard afin d’analyser les avantages et les inconvénients de cette
extension.
- 74 -
Chapitre VI Simulation et discussion des résultats
Chapitre VI
75
Chapitre VI Simulation et discussion des résultats
1 Introduction
Dans les deux chapitres précédents, nous avons développé un protocole de routage avec
QoS dans les réseaux mobiles ad hoc. Il s’agit d’une extension du protocole AODV qui le
rend capable d’assurer l’établissement des routes qui satisfont la contrainte de délai de bout
en bout dans le but d’améliorer les performances des applications sensibles à cette métrique.
Afin de valider et d’évaluer le mécanisme de routage avec QoS mis en place,
l’implémentation des modifications apportées au protocole AODV a été réalisée sous le
simulateur NS-2. Nous avons utilisé la version 2.33 installée sous Cygwin (un émulateur Unix
sous Windows XP). Le choix de ce dernier est motivé par ces caractéristiques citées dans le
chapitre précédent.
Dans ce chapitre, nous allons présenter une série de simulations réalisées à l’aide du
simulateur NS-2. Les objectifs de ces simulations sont les suivants :
• Evaluer les performances du protocole AODV-D selon certains paramètres de
mesure ;
• Comparer les deux protocoles AODV et AODV-D ;
• Conclure l’impact des modifications apportées au protocole AODV ainsi que les
avantages et inconvénients de la solution.
3 Modèle de simulation
Le modèle de simulation précise les paramètres de simulation à utiliser dans
l'environnement de simulation. Ces paramètres sont offerts par le simulateur NS-2 et sont
paramétrables via les scripts Tcl.
Le simulateur NS-2 implémente les différentes couches nécessaires (application, transport,
routage, MAC et physique) pour la simulation d’un réseau ad hoc. Le tableau 6.1 résume les
différents paramètres utilisés dans les simulations.
76
Chapitre VI Simulation et discussion des résultats
Paramètres Valeurs
Protocole de routage AODV /AODV-D
Modèle de propagation Two-ray ground
Couche MAC 802.11/DCF avec CSMA/CA
Portée de transmission 250 mètres
Capacité du canal 5.5 Mbps
Trafic d'application CBR (Continuous Bit Rate)
Taille des paquets 1000 octets
Temps de simulation 40 secondes
Surface de simulation 1000*1000 m²
Application CBR
Transport UDP
MAC Mac_802.11
77
Chapitre VI Simulation et discussion des résultats
5 Scénario de simulation
Afin de présenter le nouveau mécanisme de sélection des route effectué par le protocole
AODV-D et l’effet de celui-ci sur la qualité de service demandée par le trafic circulant à
travers le réseau, nous avons mis en place le scénario présenté dans la figure 6.2. Ce dernier
nous permet également de le comparer avec le mécanisme d’établissement des routes par
AODV standard.
Pour ce faire, nous avons procédé comme suit :
Nous voulons mesurer les performances de la connexion 6 – 9 (CBR1), celui-ci dispose de
deux chemins ; le plus court chemin passant par les nœuds 10 –15, et l’autre passant par les
nœuds 0 – 5.
Le premier, est surchargé par deux connexions : CBR2 entre les nœuds 11 et 13. Et CBR3
entre les nœuds 10 et 14. Sur le deuxième, une seule connexion est établie entre les nœuds 1
et 3. Chaque nœud est séparé avec son voisin direct par une distance de 200m, cela assure que
le flux est passé par tous les nœuds du chemin.
78
Chapitre VI Simulation et discussion des résultats
6 Simulation et discussion
6.1 Délai de bout en bout
La figure 6.3 montre les résultats obtenus concernant la métrique délai de bout en bout
pour chaque paquet du flux CBR1.
Fig 6.3 : Délai de bout en bout du flux CBR1 avec AODV-D et AODV standard.
79
Chapitre VI Simulation et discussion des résultats
Discussion
Avant la seconde 25, on remarque que les délais obtenus par le protocole AODV standard
sont beaucoup plus élevés par rapport à AODV-D. Cela est justifié par le fait que ce dernier
ayant exigé un délai max de 150 ms pour accepter la route, et donc a choisi la route passant
par les nœuds 0 – 5 ayant plus de sauts mais moins encombrée par d’autres transmissions
(seul le flux CBR4 est actif). Le léger dépassement de 150ms a été produit après la validation
de la route par le protocole de routage, dans ce cas on a dit que le mécanisme ne possède
aucune garantie pour le délai pendant la transmission des données.
Par contre, le protocole AODV standard a choisi la route qui passe par les nœuds 10 – 15
selon le critère classique ; le plus court chemin. Cette route est surchargée par deux
connexions (les flux CBR2 et CBR3), ce qui provoque des délais importants (jusqu’à 700ms).
Cela est justifié par l’augmentation du délai passé dans les files d’attente des nœuds
intermédiaires à cause des congestions.
Après la seconde 25 le flux CBR3 est arrêté, on remarque que les délais pour AODV
standard ont des valeurs proches de celles obtenues par AODV-D. Cela est justifié par le fait
que la seule différence est le nombre de sauts des chemins choisis par les deux protocoles.
D’une manière générale, on peut dire que le protocole AODV-D semble plus performant
que celui standard dans les conditions de simulation décrites en termes de délai de bout en
bout.
80
Chapitre VI Simulation et discussion des résultats
Discussion
Lorsque le protocole AODV standard est activé, les variations de délai sont plus
fréquentes et ont des délais plus important (jusqu’à 300 ms et dépasse souvent 100 ms)
surtout avant la seconde 25. Cela est justifié toujours par le choix du plus court chemin sans
aucune contrainte (le chemin passant par 10 – 15 dans notre cas), ce dernier est perturbé par
d’autres connexions. Après la 25ième seconde la route est libérée et la connexion se stabilise.
Pour le protocole AODV-D, le choix de la route est soumis à la contrainte du délai qui ne
doit pas dépasser 150 ms, en effet, la route choisie est la plus stable en terme du délai et par
conséquence, la gigue obtenue a des valeurs au maximum de 150 ms et ne dépasse pas 50 ms
dans la plupart du temps, ce qui est acceptable pour une qualité moyenne de la VoIP par
exemple (voir le tableau 3.3 dans le chapitre 3).
Discussion
Les résultats présentés dans le tableau nous montrent que les simples scenarios et
paramètres de simulation utilisés ne provoquent pas des taux de perte importants dans la
plupart des cas. Mais on remarque des différences entre les deus protocoles.
Lorsque le protocole AODV standard est activé, les flux CBR1 et CBR2 ont subis des taux
de pertes de 3.5% et 3.68% respectivement. Cela est justifié par le choix de la route 10 – 15
qui est déjà surchargée par les deux flux CBR2 et CBR3 ; l’ajout du flux CBR1 à cette route, à
provoqué ces pertes à cause du manque de ressources et des congestions.
Lorsque le protocole AODV-D est activé, le critère de choix de la route avec contrainte du
délai a permis de choisir la route 1 – 5. Cette route est plus stable car, seul le flux CBR4 est
actif. Dans ce cas, chaque route est surchargée par deux connexions ce qui permet de créer
des transmissions de données plus stable et donc des pertes faibles de paquets voir nulle
comme les résultats obtenus dans notre cas.
Conclusion
Les simulations effectuées dans ce présent chapitre nous a montré la différence entre les
deux protocoles AODV et AODV-D. La comparaison entre les deux protocoles nous a
permis de dégager le comportement d’AODV-D face aux connexions demandant un certain
délai suite a l’intégration du nouveau mécanisme de routage.
Nous concluons également que la mise en œuvre d’un tel mécanisme de routage ayant une
importante influence sur la stabilité du réseau. En effet, le routage avec contraints de délai
peut apporter des améliorations à des applications exigeant des ressources de QoS telles que
la voix sur IP. Il rend également la mise en œuvre de telles applications dans un réseau mobile
ad hoc plus efficace.
Il faut noter ici que le scénario simple que nous avons réalisé dans ce chapitre a juste le but
de connaître la différence entre le comportement des deux protocoles. Toutefois, les
performances réelles du protocole AODV-D ne peuvent être déduites par ce simple scénario.
Il est, en effet, important de concevoir des scénarios pertinents (tels que des scenarios
aléatoires en utilisant les modèles de mobilité offerts par NS-2) conduisant à une évaluation
plus précise du comportement du protocole.
82
Conclusion générale & Perspectives
Les réseaux ad hoc trouvent des applications dans plusieurs domaines tels que les
communications dans un champ de bataille, la gestion de catastrophes naturelles, les
communications de groupes, etc. Récemment, ces réseaux attirent de plus en plus d’attention
grâce leurs avantages. Le revers de la médaille est que plusieurs problèmes comme la sécurité,
l’économie d’énergie, la scalabilité, et la qualité de service (QoS) doivent être solutionnés pour
permettre un large déploiement.
La recherche en qualité de service dans les réseaux ad hoc se focalise sur quatre axes
principaux, à savoir : (i) les modèles de QoS, (ii) les protocoles de signalisation, (iii) les
protocoles MAC sensibles à la QoS, et enfin (iv) le routage avec QoS.
D’après l’étude que nous avons menée, plusieurs protocoles de routage avec QoS ont été
proposés dans la littérature, aussi bien pour les réseaux filaires que pour les réseaux ad hoc.
Nous pouvons classifier toutes ces propositions en deux grandes catégories : solutions
évolutionnaires et solutions révolutionnaires. La première catégorie de solutions vise à étendre des
protocoles best effort existants alors que la deuxième vise à concevoir un protocole de
routage avec QoS à partir de rien (from scratch).
Nous avons opté pour la première approche pour des raisons de simplicité et de
compatibilité avec les protocoles « best effort ».
Par ailleurs, nous avons pris « le délai » comme métrique de routage. Pour concevoir notre
protocole baptisé AODV-D (AODV with Delay constaints), nous nous sommes basés sur les
travaux de Sarr et al pour estimer le délai d’attente au niveau de la sous-couche MAC et sur le
draft de Perkins et al, auteurs du protocole AODV pour le mécanisme de fonctionnement.
Par la suite, nous avons procédé à l’implémentation de notre protocole sous NS-2 (Network
Simulator 2) en réutilisant le code source du protocole AODV rajouté d’autres composantes
nécessaires.
En phase finale du projet, nous avons évalué notre solution. Les résultats préliminaires
de simulation ont montré que notre protocole donne de bonnes performances en termes de
délai de bout en bout, de gigue, et de perte de paquets.
83
Notons enfin que ce travail nous a ouvert le champ vers d’autres extensions que nous
citons ici en guise de perspectives :
- Evaluer AODV-D par rapport à d’autres métriques telles que la consommation en énergie, le
temps d’établissement d’une route, et l’overhead généré, d’une part ; et par rapport à d’autres
scénarios d’autre part ;
- Etendre le même travail à un autre protocole réactif qui est DSR et faire la comparaison avec
AODV-D ;
- Comparer l’approche routage avec contraintes de délai avec l’approche routage multi-chemins
pour l’amélioration des délais de bout en bout. On peut imaginer par exemple comparer
AODV-D avec AOMDV
- Etendre notre protocole pour faire un routage multi-contraintes : on peut, par exemple, faire
un routage à deux métriques (bande passante et délai) ou à trois métriques (bande passante,
délai, et énergie) ;
84
Bibliographie
[1] : Mohamed BRAHMA « Étude de la QoS dans les Réseaux Ad hoc : « Intégration du
Concept de l’Ingénierie du Trafic ». Thèse de doctorat. Université de HAUTE ALSACE
(décembre 2006).
[2] : Farid JADDI «CSR: une extension hiérarchique adaptative du protocole de routage ad hoc
DSR » .Thèse de doctorat. Institut National Polytechnique de Toulouse, Octobre 2006.
[5] : Michaël Hauspie « Contributions à l'étude des gestionnaires de services distribués dans les
réseaux ad hoc » thèse de doctorat, Université des Sciences et Technologies de Lille, Année :
2005.
[6] :M.KHEMIS et H.TOUATI, « Etude et simulation des protocoles de routage dans les
réseaux ad hoc ».mémoire d’ingéniorat 2002/2003, université de TIZI OUZOU.
[7] : Rabah MERAIHI : « Gestion de la qualité de service et contrôle de topologie dans les
réseaux ad hoc » thèse de doctorat, Ecole nationale supérieure des télécommunications, France.
janvier 2005.
[8] : Tayeb LEMLOUMA « Le Routage dans les Réseaux Mobiles Ad Hoc »Université des
Sciences et de la Technologie Houari Boumèdiene, Septembre 2000.
[9] : Anis LAOUITI : « Unicast et multicast dans les réseaux ad hoc sans fil », thèse de doctorat,
université de Versailles, juillet 2002.
[10]: S. Corson , J. Macker « Mobile Ad hoc Networking (MANET) Network Working Group”
January 1999.ftp://ftp.nordu.net/rfc/rfc2501.txt
[11] C. Perkins, E. Belding-Royer, S.Das: «Ad hoc On-Demand Distance Vector (AODV)
Routing, Network Working Group, July 2003: ftp://ftp.nordu.net/rfc/rfc3561.txt
85
[15] : Dominique Dhoutaut, « Etude du standard IEEE 802.11 dans le cadre des réseaux ad hoc
: de la simulation à l'expérimentation » L’Institut National des Sciences Appliquées de Lyon
Thèse Décembre 2003.
[16] :Jean-Marc Percher et Bernard Jouga «Détection d’intrusions dans les réseaux ad hoc »
Ecole Supérieure d´Electronique de l’Ouest (ESEO) France.
[17] : Meriam Dawoud, « Analyse du protocole AODV » rapport de stage, Université Paul
Sabatier-I.R.I.T, 2005/2006. http://phdgroup.org/LebaneseUniversityArchive/CSTI/2005-
2006/5.pdf.
[18]: Philippe Jacquet Thomas Clausen. RFC 3626 «Optimized Link State Routing Protocol
(OLSR), (draft IETF) 2003.
[19]: Leila TOUMI : « Algorithmes et mécanismes pour la qualité de service dans les réseaux
hétérogènes » Thèse de doctorat, Institut National Polytechnique de Grenoble, décembre 2002
[20] : Meriem BELGAID Saida OUHAB « Routage et qualité de service dans AODV et
OLSR » Mémoire 2006-2007 Université A/Mira de Bejaïa.
[21]:C. Chiang, H. Wu, W. Liu, and M. Gerla: « Routing in Clustered Multihop, Mobile
Wireless Networks In Mobile Wireless Networks», The IEEE Singapore International
Conference on Networks, 1997.
[22] Vincent D. Park and M. Scott Corson. « A Highly Adaptive Distributed Routing
Algorithm for Mobile Wireless Networks». In INFOCOM (3), pages 1405–1413, 1997.
[23]: C-K Toh. « A Novel Distributed Routing Protocol To Support Ad-Hoc Mobile
Computing». In IEEE 15th Annual Int’l. Phoenix Conf. Comp. and Commun, 1996.
[24]:R. Dube, C. Rais, K. Wang, and S. Tripathi. « Signal stability based adaptive routing (SSA)
for ad hoc mobile networks. In Signal stability based adaptive routing (SSA) for ad hoc mobile
networks, IEE Personal Communication., February 1997.
[27]: R. Braden, D. Clark, and S. Shenker. «Integrated services in the internet architecture» :an
overview. Internet Request For Comments RFC 1633, IETF, June 1994.
ftp://ftp.nordu.net/rfc/rfc1633.txt.
[30]:K. Wu and J. Harms « QoS Support in Mobile Ad Hoc Networks». Crossing Boundaries-
the GSA Journal of University of Alberta, Volume 1, n° 1. pages 92- 106. Nouvembre 2001
86
[31]: IEEE 802.11 WG, Wireless Medium Access Control (MAC) and Physical Layer (PHY)
spécifications : Medium Access Control (MAC) Enhancement for Quality of Service (QoS IEEE
802.11e/Draft 3.0, May 2002.
[32]: Claude Chaudet «Qualité de service et réseaux ad hoc – un état de l’art » rapport de
recherche, institut national de recherche en informatique en automatique NRIA, novembre 2001.
[33] : Claude Chaudet «Routage QoS et réseaux ad hoc : de l’état de lien à l’état de nœud »
rapport de recherche INRIA, Janvier 2003.
[34] M.K Marina, and S.R Das. «Ad hoc on-demand multipath distance vector routing. Wiley
Wireless Communications and Mobile Computing», vol. 6(7), 2006, pp. 969–988.
[36] S.-J. Lee, and M. Gerla: « AODV-BR: Backup Routing in Ad hoc Networks. », the IEEE
Wireless Communications and Networking Conference (WCNC 2000). Vol 3, September 2000
pp. 1311–1316.
[38]: Shan Gong « Quality of Service Aware Routing Protocols for Mobile Ad Hoc Networks»
these de magister, HUT communication laboratory Finlande (2006).
[39]: C. Perkins and E. Belding-Royer: « Quality of Service for Ad hoc On-Demand Distance
Vector Routing » (work in progress), draft IETF, Oct 2003.
[42] : Cheikh SARR « De l’apport d’une évaluation précise des ressources de la qualité de service
des réseaux ad hoc basés sur IEEE802.11 » thèse de doctorat, Institut Nationale des Sciences
Appliquées de Lion, année 2007.
[43] : Antoine MAHUL «Apprentissage de la qualité de service dans les réseaux multiservice :
application au routage optimale sous contraintes » université BLAISE PASCAL - CLERMONT-
FERRAND II, novembre 2005.
[45]: http://dropzone.tamu.edu/~prajjwal/ns2/main.html
[46]: Sebastian Roschke « Implementation of Feedback Mechanism into AODV based on
NS2». Un papier pulpier le 2007-05-16. Hasso Plattner-Institute for software systems engineering
87
[47]: Lei Chen and Wendi B. Heinzelman (University de Rochester USA) «A Survey of
Routing Protocols that Support QoS in Mobile Ad Hoc Networks», IEEE Network.
November/December 2007.
[49] : http://www.chez.com/brunogarcia/Unix/Docs/awk.html
88
Liste des Abbreviations
90
Annexes -
NS2 (Network Simulator 2) est un simulateur à évènements discrets développé dans un but
de recherche. Il fournit un environnement assez détaillé permettant entre autre de réaliser des
simulations d’IP, TCP, du routage et des protocoles multicast aussi bien sur des liens filaires
que sans fil [15].
NS-2, est aujourd’hui le simulateur de réseau probablement le plus utilisé par la
communauté scientifique des réseaux. Il a été le fruit de la collaboration entre l’université de
Berkeley, USC (University of Southern California) et Xerox PARC dan lse cadre du projet VINT
(Virtual Inter Network Testbed). Ce projet est soutenu par le DARPA(Defense Advanced Research
Projects Agency). NS-2 est un outil de recherche très utile pour le design et la compréhension
des protocoles. Il sert aussi bien dans l’étude des protocoles de routage qu’à l’étude des
réseaux mobiles où les communications par satellites.
NS-2 permet à l’utilisateur de définir un réseau et de simuler les communications entre les
nœuds. Le simulateur utilise le langage orienté objet OTCL dérivé de TCL pour la description
des conditions de simulation sous forme de script. Dans le script l’utilisateur fournit la
topologie du réseau, les caractéristiques des liens physiques, les protocoles utilisés, le type de
trafic généré par les sources, les événements, etc.
Si le script écrit en OTCL permet une utilisation (édition, modification des simulations)
facilitée du simulateur, les routines sont elles écrites en C++ pour avoir une plus grande
puissance de calculs. Le résultat d’une simulation est un fichier texte contenant tous les
fichiers événements de la simulation. Un traitement ultérieur de ce fichier permet d’en
soustraire l’information souhaitée. Par ailleurs, le simulateur permet la création d’un fichier
d’animation (d’extension .tr), permettant de visualiser la simulation sur l’interface graphique
NAM. Cette visualisation fournit une représentation du graphe du réseau sur laquelle on peut
voir les paquets circuler, suivre le niveau des files d’attente et observer le débit courant des
liaisons. La figure A1 présente une simple utilisation de NS-2 [41].
91
Annexes -
92
Annexes -
93
Annexes -
TclObject : C’est la racine de toutes les autres classes à la fois dans l'arborescence compilée
et interprétée. La classe TclObject constitue donc la classe de base de la plupart des autres
classes. Tous les objets du modèle de simulation sont des instances de la classe TclObject.
Cette classe sert aux objets dont la création est initiée par l'interpréteur. Elle possède les
interfaces nécessaires aux liaisons entre les variables qui doivent être visibles à la fois en C++
et OTcl. Elle définit la fonction command () qui est très utile pour ajouter des commandes à
l'interpréteur. La classe TclObject ainsi que les autres sources du répertoire tclcl sont
partagées entre NS-2 et le projet MASH de Berkeley. Dans la hiérarchie des classes OTcl, le
nom de la classe racine se nomme autrement et porte le nom de SplitObject.
NsObject : c’est une sous-classe de la classe TclObject mais reste cependant une superclasse
aux autres classes. La principale différence avec la classe TclObject tient à ce qu'elle soit
capable de recevoir des paquets et traiter des événements. Elle hérite de la classe Handler.
Cette classe constitue la principale racine des objets dans NS-2. Elle contient les fonctions
communes nécessaires au simulateur et définit la fonction virtuelle : void recv (Packet *,
Handler* callback =0)=0; Cette fonction est une fonction générique utilisée par tous les
objets dérivés de NsObject pour recevoir un paquet. Elle est réellement définie par les sous-
classes :
Application : Classe mère de toutes les applications (ftp, telnet, web)
Agent : La classe agent fournit des méthodes utiles au développement de la couche
transport et à d'autres protocoles du plan de signalisation ou de gestion. C'est la classe
de base pour définir des nouveaux protocoles dans NS-2. Elle fournit l'adresse locale
et de destination, les fonctions pour générer les paquets, l'interface à la classe
Application. Actuellement NS-2 comporte de nombreux agents citons: UDP,
protocoles de routage, différentes versions de TCP, RTP, etc. [20].
Node : un nœud peut être une machine hôte, un switch, un routeur, une passerelle,
etc. Chaque nœud contient au minimum les composants suivants :
1. Une adresse ou un identificateur (id_) automatiquement incrémenté par une unité (à
partir de 0) quand les nœuds sont crées.
2. Une liste de noeuds voisins (neighbor_).
94
Annexes -
95
Annexes -
avec une ligne qui contient douze champs. Le tableau A.2 donne une vision des la structure
d’une ligne du fichier trace sous NS-2 :
Event Time From To Pkt Pkt Flags Fid Src Dst Seq Pkt
node node type size addr addr num id
1. Action effectuée sur le paquet. Un ”+” signifie que le paquet est reçu dans une file, un
”-” signifie que le paquet quitte la file, un ”s” signifie que le paquet est envoyé, un ”d”
signifie que le paquet est jeté (dropé) et un ”r” signifie que le paquet est réceptionné par
un agent.
2. Instant où l’action est effectuée.
3. Nœud de départ du lien concerné.
4. Nœud d’arrivée du lien concerné.
5. Type de paquet.
6. Taille du paquet en bytes.
7. Flags.
8. Identificateur de flux.
9. Agent de départ.
10. Agent d’arrivée.
11. Numéro de séquence.
12. Identificateur unique pour chaque paquet.
La figure A4 illustre un exemple détaillé d’une ligne d’un fichier trace sous NS-2 :
En plus des fichiers traces qu’offre le simulateur NS-2, il permet de visualiser les
événements de la simulation à travers une interface graphique NAM (figure A5) :
96
Annexes -
97
Annexes -
98
Annexes -
Conclusion
Dans cette partie, nous avons présenté une brève description de l'outil de simulation NS-2.
Nous avons décrit les langages utilisés dans ce simulateur, citons tcl et OTcl. Puis nous avons
décrit l'architecture générale de son utilisation, l'arborescence et la hiérarchie des différentes
classes existantes. Un point important est visualisé, c'est l'étude et la création des
environnements mobiles dans ce simulateur ainsi l'extraction et le traitement des résultats.
99
Annexes -
B.1 Présentation
AWK est un outil qui permet d'effectuer des recherches, simples ou complexes, dans des
fichiers textes. C'est un langage de programmation datant de 1977, date de son apparition
dans le monde Unix. Il tire son nom des trois programmeurs qui l'ont développé : Alfred V.
Aho, Peter J. Weinberger et Brian W. Kernighan [49]. Cette utilitaire a été crée dans le but de
remplacer les commandes grep et sed. Sa grande souplesse lui a permis de connaître un
succès immédiat. Et de nouvelles versions sont apparues au fil du temps : nawk et gawk.
Aujourd'hui encore, cet utilitaire est toujours utilisé du fait de sa ressemblance avec le
langage C, de sa souplesse et de sa présence sur la majorité des systèmes d'exploitation Unix.
Il est encore utilisé en administration système et dans les scripts Shell en tant que commande.
Awk fonctionne en lisant des données. Ces données peuvent être ainsi traitées par
l'utilisateur. Utilisateur qui peut choisir de lire des données provenant de fichiers ou du canal
de l'entrée standard. Par conséquent, awk a pour but premier de jouer un rôle de filtre bien
qu'il ne se limite pas qu'à cela.
• La section initiale :
Les commandes qu'elle contient sont lues et traitées avant la lecture du fichier en entrée.
C'est le bon endroit pour initialiser des variables par exemple ou pour ouvrir des fichiers
auxiliaires. Elle commence par le mot clef BEGIN et est entourée d'une paire d'accolades.
• La section terminale :
Comme son nom l'indique, la section terminale n'est traitée qu'une fois le fichier en entrée
fermé. Typiquement, c'est l'endroit idéal pour fermer des fichiers auxiliaires ou réaliser des
statistiques. Bref, tout ce qui ne peut se faire qu'une fois toutes les données connues et
traitées. Elle est introduite par le mot clef END et est entourée d'une paire d'accolades.
100
Annexes -
101
Annexes -
# Define optioNS
set val(chan) Channel/WirelessChannel ;# channel type
set val(prop) Propagation/TwoRayGround ;# radio-propagation model
set val(netif) Phy/WirelessPhy ;# network interface type
set val(mac) Mac/802_11 ;# MAC type
set val(ifq) Queue/DropTail/PriQueue ;# interface queue type
set val(ll) LL ;# link layer type
set val(ant) Antenna/OmniAntenna ;# antenna model
set val(ifqlen) 50 ;# max packet in ifq
set val(nn) 16 ;# number of mobilenodes
set val(rp) AODVD/AODV ;# routing protocol
set val(x) 1000 ;# X dimension of topography
set val(y) 1000 ;# Y dimension of topography
set val(stop) 40 ;# time of simulation end
# parametres de QoS
Agent/AODV set QoS_factor 1 ;# activer /désactiver le contrôle d’admission.
Agent/AODV set req_bandwitdh 0.08 ;# bande passante demandée.
Agent/AODV set req_delay 0.150 ;# délai max à ne pas dépasser.
102
Annexes -
-propType $val(prop) \
-phyType $val(netif) \
-channelType $val(chan) \
-topoInstance $topo \
-agentTrace ON \
-routerTrace ON\
-macTrace OFF\
-movementTrace OFF
103
Annexes -
104
Annexes -
# fin de la simulation
for {set i 0} {$i < $val(nn) } { incr i } {
$ns at $val(stop) "$node_($i) reset";
}
$ns run
105
Annexes -
max_packet_id = 0;
totalreceved = 0;
PDR = 0.0;
totalsend = 0;
total_time = 0.0;
{
action = $1;
time = $2;
layer = $4;
type = $7;
id_paquet = $6;
max_packet_id = id_paquet ;
if (action != "D" ){
106
Annexes -
END {
start = start_time[id_paquet];
end = end_time[id_paquet];
delay = total_time/totalreceved;
PDR = totalreceved/totalsend;
totalreceved, totalsend);
107
Résumé
L’approvisionnement en Qualité de Service (QoS) est l’une des
problématiques majeures posées dans les réseaux mobiles ad hoc(MANETs).
Une bonne solution de QoS est généralement construite à base de plusieurs
briques dont le routage avec QoS. Contrairement au routage « au mieux », le
routage avec QoS permet de chercher des routes assurant une certaine QoS
par rapport à une métrique bien définie. Par conséquent, il est mieux adapté
pour les applications multimédia ou temps réel.
Dans ce travail, nous nous intéressons à garantir le délai de bout en
bout dans le protocole AODV. Notre protocole de routage ave QoS baptisé
AODV-D (AODV with Delay constraints) a comme brique principale
l’estimation du délai par une file M/M/1/K, un contrôle d’admission sera
effectué par la suite pour vérifier le délai. Les résultats préliminaires de
simulation sous NS-2 ont montré une amélioration significative des
performances selon les trois métriques principales de la VoIP.
Abstract
Quality of Service (QoS) provisioning is one of the major problems in
mobile ad hoc networks (MANETs). A good solution of QoS is generally built
upon several blocks, of whom QoS routing. Contrary to « best effort »,
routing, QoS routing makes it possible to search routes ensuring QoS
according to a given metric. Consequently, it is more adapted for multimedia
or real time applications.
In this work, we are interested in guaranteeing end to end delay in the
AODV protocol. Our QoS routing protocol named AODV-D (AODV with
Delay constraints) has as principal building block delay estimation by an
M/M/1/K queue. Thereafter, an admission control is carried out to check the
delay. The preliminary results of simulation under NS-2 showed a significant
improvement of the performances according to the three principal metrics of
VoIP.