• Aucun résultat trouvé

Amélioration des Performances et Routage Multi-chemins dans les MANET.

N/A
N/A
Protected

Academic year: 2021

Partager "Amélioration des Performances et Routage Multi-chemins dans les MANET."

Copied!
149
0
0

Texte intégral

(1)

Faculté des Sciences, 4 Avenue Ibn Battouta B.P. 1014 RP, Rabat – Maroc Tel +212 (0) 37 77 18 34/35/38, Fax : +212 (0) 37 77 42 61, http://www.fsr.ac.ma

N° d’ordre 2919

THÈSE DE DOCTORAT

Présentée par

Mohammed OUMSIS

Discipline : Sciences de l’ingénieur

Spécialité

: Informatique et Télécommunication

Titre :

Amélioration des performances et routage multi-chemins

dans les MANET

Soutenue le Samedi 29 Octobre 2016

Devant le jury

Président :

Mr Rachid OULAD HAJ THAMI PES Ecole Nationale Supérieure d'Informatique et d'Analyse des Systèmes, Université Mohammed V, Rabat

Examinateurs :

Mr Driss ABOUTAJDINE PES Faculté des Sciences, Université Mohammed V, Rabat

Mr Mohamed KHALFAOUI PES Ecole Supérieure de Technologie de Salé, Université Mohammed V, Rabat

Mr Mohamed OUZZIF PES Ecole Supérieure de Technologie, Université Hassan II, Casablanca

Mr Mohamed OUADOU PES Faculté des Sciences, Université Mohammed V, Rabat

Mr Said OUATIK EL ALAOUI PH Faculté des Sciences Dhar El Mahraz,

Université Sidi Mohamed Ben Abdellah, Fès

(2)

Avant Propos

Les travaux présentés dans ce mémoire ont été effectués au Laboratoire de Recherche en Informatique et Télécommunications (LRIT Unité de Recherche Associée au CNRST-URAC29, sous la direction de Mr Driss ABOUTAJDINE, Professeur à la Faculté des Sciences de Rabat.

Je tiens à remercier vivement mon directeur de thèse, Mr Driss ABOUTAJDINE, Professeur à la Faculté des Sciences de Rabat, pour avoir accepté de diriger cette thèse. Je le remercie également pour ses encouragements et pour ses soutiens durant cette thèse.

Aussi je dois des remerciements particuliers à Mr Rachid OULAD HAJ THAMI, Professeur à l’Ecole Nationale Supérieure d'Informatique et d'Analyse des Systèmes de Rabat, pour l’honneur qu’il me fait en présidant mon jury de thèse.

J’adresse également mes remerciements à Mr Mohamed KHALFAOUI, Professeur à l’Ecole Supérieure de Technologie de Salé d’avoir bien voulu être rapporteur et de faire partie de mon jury de thèse.

J’adresse également mes remerciements à Mr Mohamed OUZZIF, Professeur à l’Ecole Supérieure de Technologie de Casablanca d’avoir bien voulu être rapporteur et de faire partie de mon jury de thèse.

Je remercie également Mr Mohamed OUADOU, Professeur à la Faculté des Sciences de Rabat pour avoir accepté d’être membre de mon jury en tant qu’examinateur.

Je remercie également Mr Said OUATIK EL ALAOUI, Professeur à la Faculté des Sciences Dhar El Mahraz de Fès pour avoir accepté d’être membre de mon jury en tant qu’examinateur.

Mes remerciements vont enfin à toute personne qui a contribué de près ou de loin à l’élaboration de ce travail.

(3)

Résumé

Un réseau MANET est une collection d'entités (nœuds) mobiles interconnectées par une technologie sans fil. Ce type de réseau est généralement dépourvu de toute gestion centralisée ce qui oblige les nœuds à participer au routage de l’information. Ils acceptent de relayer les communications de leurs voisins. Le trafic de contrôle généré devient alors important et peut avoir un impact négatif sur la qualité du service du réseau. Afin de réduire ce trafic de contrôle, le protocole de routage OLSR utilise une technique de diffusion optimisée connue sous le nom de MPR. Dans ce contexte, nous avons proposé des améliorations à l'algorithme de sélection des MPR. Nous avons également proposé une variante multi-chemins du protocole OLSR. Cette nouvelle variante améliore la qualité du service et la qualité de l'expérience pour une transmission vidéo dans les MANET.

(4)

Abstract

MANETs are generally networks lacking of a centralized management which forces the nodes to perform themselves the routing. The generated control traffic becomes significant and can negatively impact the quality of the data traffic. In order to reduce the control traffic, OLSR uses an optimized broadcast technique known as MPR. In this context we proposed improvements to the MPR selection algorithm of OLSR. We also proposed an improved multi path variant MP-OLSR we called FQ-MP-OLSR. This new version enhances the quality of service and quality of experience for video transmission in MANET.

(5)

1

Table des matières

Introduction générale ... 12

Chapitre 1 : Protocole OLSR : Définitions et état de l’art ... 15

1.1 Introduction ... 16

1.2 Protocole OLSR ... 17

1.2.1 Introduction ... 17

1.2.2 Gestion de voisinage: tables de voisinage ... 17

1.2.2.1 Table de voisinage à un saut ... 17

1.2.2.2 Table de voisinage à deux sauts ... 18

1.2.2.3 Table des voisins MPR ... 19

1.2.2.4 Table des sélecteurs MPR ... 19

1.2.2.5 Table des liens... 19

1.2.3 Détection et maintien des états des liens et établissement de voisinage ... 20

1.2.4 Gestion de la topologie et de routage ... 22

1.2.4.1 Table de topologie... 22

1.2.4.2 Table de routage ... 23

1.2.5 Les algorithmes de sélection des Relais Multipoints (MPR) ... 23

1.3 Simulation des réseaux MANET et Implémentation UM-OLSR ... 28

1.3.1 Implémentation UM-OLSR ... 29

1.4 Travaux Antérieurs ... 30

1.4.1 Réduction des messages de contrôle de topologie ... 30

1.4.2 Protocoles multi-chemins basés sur OLSR ... 32

(6)

2

2 Chapitre 2 : Nouvelles stratégies de sélection des Relais Multipoints par le protocole

OLSR ... 35

2.1 Introduction ... 36

2.2 Stratégie de réduction des messages TC basée sur les nœuds retransmetteurs des messages TC ... 36

2.2.1 Schéma basé sur le degré d’absorption des messages TC ... 37

2.2.2 Diffusion et maintenance du degré d’absorption ... 42

2.1.1 Modèle de simulation ... 45

2.1.1.1 Paramètres de simulation ... 45

2.1.1.2 Critères d’évaluation ... 46

2.2.3 Résultats de simulation ... 47

2.3 Stratégie de réduction des messages TC basée sur les nœuds émetteurs des messages TC 52 2.3.1 Description ... 52

2.3.2 Évaluation de performances ... 55

2.4 Conclusion ... 59

3 Chapitre 3 : Nouvel algorithme coopératif pour réduire les paquets TC dans OLSR . ... 60

3.1 Introduction ... 61

3.2 Nouvelle heuristique pour la réduction des MPR ... 61

3.2.1 Stratégie de sélection ... 61

3.2.2 Critères et paramètres de sélection ... 62

3.2.2.1 Algorithme ... 63

3.2.3 Modèle de simulation ... 64

3.2.3.1 Critères d’évaluation ... 64

3.2.3.2 Paramètres de simulation ... 65

3.2.4 Résultats de simulation ... 66

3.2.4.1 Expérience 1 : réseau fixe ... 66

3.2.4.2 Expérience 2 : réseau mobile ... 68

3.2.4.3 Expérience 3 : réseau fixe réduit ... 69

(7)

3

3.3 NCA : Nouvel algorithme coopératif pour réduire les paquets TC ... 73

3.3.1 Motivation d’une coopération dans la sélection des MPR ... 73

3.3.2 Stratégie de sélection des MPR... 74

3.3.3 Paramètres de sélection des MPR ... 75

3.3.4 Algorithme ... 77

3.3.5 Calcul du paramètre Poids_C... 78

3.3.6 Exemple de déroulement de l’algorithme ... 81

3.3.7 Modèle de simulation ... 86

3.3.7.1 Critères d’évaluation ... 86

3.3.7.2 Paramètres de simulation ... 86

3.3.8 Résultats de simulation ... 87

3.3.8.1 Expérience 1 : réseau fixe ... 88

3.3.8.2 Expérience 2 : réseau mobile ... 90

3.3.8.3 Analyse des résultats de simulations... 93

3.4 Conclusion ... 94

4 Chapitre 4 : Une Variante Multi chemins du protocole OLSR pour améliorer la QoS et la QoE dans une transmission vidéo ... 95

4.1 Introduction ... 96

4.2 Multipath Optimized Link State Routing Protocol (MP-OLSR) ... 97

4.2.1 Description de la fonctionnalité de base de MP-OLSR ... 97

4.2.2 Calcul des routes ... 100

4.3 Amélioration du protocole MP-OLSR ... 102

4.3.1 Développement d’une métrique de routage à QoS basée sur plusieurs métriques à QoS pour le protocole MP-OLSR ... 102

4.3.1.1 Estimation du délai de lien ... 103

4.3.1.2 Estimation du débit de lien ... 104

4.3.1.3 Estimation du SINR de lien ... 104

4.3.2 La théorie de la logique floue et des sous-ensembles flous ... 105

4.3.2.1 Les variables linguistiques ... 106

4.3.2.2 Les fonctions d’appartenance ... 107

(8)

4

4.3.4 Adaptation des fonctions de coûts fp et fe ... 114

4.3.5 Équilibrage de charge ... 117

4.4 Modèle de simulation ... 120

4.4.1 Paramètres de simulation ... 120

4.4.2 Critères d’évaluation ... 123

4.4.2.1 Résultats de simulation et discussions ... 124

4.5 Conclusion ... 129

Conclusion et perspectives ... 131

(9)

5

Liste des figures

FIGURE 1.1:UN RÉSEAU AD HOC COMPOSÉ DE TROIS NŒUDS ... 20

FIGURE 1.2:DÉTECTION ET MAINTIENT DE VOISINAGE PAR LES MESSAGES HELLO ... 21

FIGURE 1.3:VOISINAGE À UN ET À DEUX SAUT D'UN NŒUD DU RÉSEAU AD HOC ... 24

FIGURE 1.4:ÉTAPES DE SÉLECTION DE L'ENSEMBLE DES MPR DU NŒUD 1 ... 25

FIGURE 2.1:TAUX DE CHOIX MULTIPLE DES NŒUDS CANDIDATS À ÊTRE MPR ... 39

FIGURE 2.2:EXEMPLE DE CALCUL DU DEGRÉ D’ABSORPTION BASÉ SUR LE NOMBRE DE NŒUDS ISOLÉS ... 41

FIGURE 2.3:EXEMPLE DE CALCUL DU DEGRÉ D’ABSORPTION BASÉ SUR LE NOMBRE DE NŒUDS NON MPR ... 41

FIGURE 2.4:FORMAT DU MESSAGE HELLO DU PROTOCOLE OLSR ... 42

FIGURE 2.5:FORMAT ÉTENDU DU MESSAGE HELLO DU PROTOCOLE OLSR ... 43

FIGURE 2.6:LA STRUCTURE ÉTENDUE DE LA TABLE DES VOISINS À UN SAUT ... 43

FIGURE 2.7:LE NOMBRE DE MESSAGES TC EN FONCTION DE LA MOBILITÉ ... 47

FIGURE 2.8:LE NOMBRE DE PAQUETS TC EN FONCTION DE LA MOBILITÉ ... 48

FIGURE 2.9:LE COÛT DE ROUTAGE EN FONCTION DE LA MOBILITÉ ... 49

FIGURE 2.10:LE TAUX DE PAQUETS DÉLIVRÉS, EN FONCTION DE LA MOBILITÉ ... 50

FIGURE 2.11:LE DÉLAI DE BOUT EN BOUT, EN FONCTION DE LA MOBILITÉ ... 51

FIGURE 2.12:LE NOMBRE DE MESSAGES TC, EN FONCTION DE LA MOBILITÉ ... 55

FIGURE 2.13:LE NOMBRE DE PAQUETS TC, EN FONCTION DE LA MOBILITÉ ... 56

FIGURE 2.14:ROUTING COST AS FUNCTION OF MOBILITY ... 56

FIGURE 2.15:LE TAUX DE PARQUETS DÉLIVRÉS, EN FONCTION DE LA MOBILITÉ ... 57

FIGURE 2.16:LE DÉLAI DE BOUT EN BOUT, EN FONCTION DE LA MOBILITÉ ... 58

FIGURE 3.18.LE NOMBRE MOYEN DE MPR EN FONCTION DU NOMBRE DE NŒUDS DU RESEAU ... 67

FIGURE 3.19.LE NOMBRE TOTAL DE PAQUETS TC EN FONCTION DU NOMBRE DE NŒUDS DU RESEAU ... 67

FIGURE 3.20.LE NOMBRE DE MPRS EN FONCTION DE LA VITESSE MAXIMALE DES NŒUDS ... 68

FIGURE 3.21.LE NOMBRE TOTAL DE PAQUETS TC EN FONCTION DE LA VITESSE DES NŒUDS ... 69

FIGURE 3.22.EXEMPLE :RESEAU DE 12 NŒUDS FIXES ... 70

FIGURE 3.23.SELECTION DES MPR DES NŒUDS 0 ET 3 PAR NOTE HEURISTIQUE (A) ET L’ALGORITHME DE BASE (B) ... 72

FIGURE3.24. PARAMETRES DE SELECTION DES MPR ... 76

FIGURE 3.25.LE FORMAT DE MESSAGE HELLO POUR OLSR ET LA STRUCTURE ETENDUE D’UN NŒUD A UN SAUT 80 FIGURE 3.26.EXEMPLE : RESEAU FIXE DE 12 NŒUDS ... 81

(10)

6

FIGURE 3.28.LE NOMBRE DE TC EN FONCTION DU NOMBRE DE NŒUDS (RESEAU FIXE) ... 88

FIGURE 3.29.LE PDR EN FONCTION DU NOMBRE DE NŒUDS (RESEAU FIXE) ... 89

FIGURE 3.30.LE COUT DE ROUTAGE EN FONCTION DU NOMBRE DE NŒUDS (RESEAU FIXE) ... 89

FIGURE 3.31.L’EFFICACITE EN FONCTION DU NOMBRE DE NŒUDS (RESEAU FIXE) ... 90

FIGURE 3.32.LE NOMBRE DE TC EN FONCTION DE LA VITESSE MAXIMALE DES NŒUDS (RESEAU MOBILE) ... 91

FIGURE 3.33.LE PDR EN FONCTION DE LA VITESSE MAXIMALE DES NŒUDS (RESEAU MOBILE) ... 92

FIGURE 3.34.LE COUT DE ROUTAGE EN FONCTION DE LA VITESSE MAXIMALE DES NŒUDS (RESEAU MOBILE) ... 92

FIGURE 3.35.L’EFFICACITE EN FONCTION DE LA VITESSE MAXIMALE DES NŒUDS (RESEAU MOBILE) ... 93

FIGURE 4.1:EXEMPLES DE CALCUL DES CHEMINS PAR L’ALGORITHME MULTI-CHEMINS DE DIJKSTRA ... 100

FIGURE 4.2:FONCTIONS D’APPARTENANCE DE LA VARIABLE TEMPÉRATURE... 107

FIGURE 4.3:FLC POUR LE CALCUL DU COUT DE LIEN ... 109

FIGURE 4.4:LES FA TRIANGULAIRE ET TRAPÉZOÏDALE ... 109

FIGURE 4.5:FONCTIONS D’APPARTENANCE POUR (A) LE DÉLAI DE LIEN,(B) LE DÉBIT DE LIEN (C) LE SINR DE LIEN (D) LE COÛT DE LIEN ... 111

FIGURE 4.6:VUE SURFACE DES VALEURS DU COÛT DE LIEN EN CAS D’UN (A)SINR CONSTANT,(B) DÉLAI CONSTANT (C) DÉBIT CONSTANTE ... 113

FIGURE 4.7:FLC POUR L’ADAPTATION DES FONCTIONS DE COÛTS ... 115

FIGURE 4.8:LES FONCTIONS D’APPARTENANCE POUR (A) LE COUT DE LIEN,(B) LE NOMBRE DE SAUTS ET (B) LE PARAMETRE DE PENALISATION ... 115

FIGURE 4.9:VUE SURFACE DES VALEURS DU PARAMÈTRE DE PÉNALISATION C0, EN FONCTION DU COÛT DE LIEN ET LE NOMBRE DE SAUTS ... 117

FIGURE 4.10: T CHEMINS PONDÉRÉS DE LA SOURCE S VERS LA DESTINATION D ... 118

FIGURE 4.11:LE RESEAU MANET UTILISE DANS LA SIMULATION POUR LE SCENARIO 1 ... 121

FIGURE 4.12:CAPTURES INSTANTANEES DES TRAMES NUMEROS 211,269 ET 280 DE LA SEQUENCE AKIYO DANS LE SCENARIO S1 UTILISANT LE PROTOCOLE (A)MP-OLSR ET (B)FQ-MPOLSR ... 125

FIGURE 4.13:METRIQUES DE PERFORMANCE A QOS(A) TAUX DE PAQUETS PERDUS,(B) DELAI (C) GIGUE ET (D) COUT DE ROUTAGE ... 127

(11)

7

Liste des tableaux

TABLEAU 2.1:PARAMÈTRES DE SIMULATION ... 46

TABLEAU 3.1PARAMETRES DE SIMULATION ... 65

TABLEAU 3.2 RÉSULTAT DE SIMULATION ... 70

TABLEAU 3.3 PARAMETRE DE CHOIX DES RELAIS MULTIPOINTS ... 84

TABLEAU 3.4PARAMETRE DE CHOIX DES RELAIS MULTIPOINTS... 84

TABLEAU 3.5NŒUDS MPR, NOMBRE TOTAL DES MPR ET NOMBRE TOTAL DES TC POUR LES QUATRE ALGORITHMES ... 85

TABLEAU 3.6 PARAMETRES DE SIMULATION ... 87

TABLEAU 4.1:BASE DE REGLES POUR LE CALCUL DES COUTS DE LIEN ... 111

TABLEAU 4.2:BASE DE REGLES POUR LE CALCUL DU PARAMETRE DE PENALISATION ... 116

TABLEAU 4.3:PARAMETRES DE SIMULATION ... 122

TABLEAU 4.4:RESULTATS DE SIMULATION DANS LE SCENARIO S1 ... 124

TABLEAU 4.5:LES POURCENTAGES DES AMELIORATIONS DES PARAMETRES DE PERFORMANCE PAR LE PROTOCOLE FQ-MP-OLSR POUR LE TRAFIC VIDEO ... 128

(12)

8

Liste des abréviations

ACK ACKnowledge packet

AODV Ad hoc On demand Distance Vector

CBR Constant Bit Rate

CDS Connected Dominating Set

COG Center of Gravity

CTS Clear To Send

DoS Denial of Service

DSDV Destination Sequenced Distance Vector

DSR Dynamic Source Routing

ETX Expected Transmission Count

EvalVid Evaluation of a Video quality tool-set

FA Fonctions d'Appartenance

FLC Fuzzy Logic Controller

FQ-MP-OLSR Fuzzy based Quality of service Multipath Optimized Link State Routing

protocol

FTP File Transfert Protocol

GPS Global Position System

IEEE Institute of Electrical and Electronics Engineers

IP Internet Protocol

MAC Media Access Control

MANET Mobile Ad hoc NETwork

MD Minimum Delay

ML Minimum Loss

MPEG-4 Moving Picture Experts Group 4

(13)

9

MPR Multi-Point Relays set

MTU Maximum Transmission Unit

NAM Network AniMator

NFA Necessity First of selecting Algorithm

NLD Normalized Link Delay

NLSINR Normalized Link Signal to Interference plus Noise Ratio

NLT Normalized Link Throughput

NS-2 Network Simulator version 2

OLSR Optimized Link State Routing protocol

OSPF Open Shortest Path First

OTCL Object Tools Command Language

pc path cost

PDA Personal Digital Assistant

PDR Packet Delivery Ratio

PSNR Peak Signal to Noise Ratio

QoE Quality of Experiment

QoS Quality of Service

RFC Request For Comments

RIP Routing Information Protocol

RR Round-Robin

RTS Request To Send

SINR Signal to Interference plus Noise Ratio

SSIM Structural Similarity

SSINR Smoothed Signal to Interference plus Noise Ratio

ST Smoothed Throughput

STD Smoothed Transmission Delay

TC Topology Control

TCL Tools Command Language

TCM Taux de Choix Multiple

(14)

10

TD Transmission Delay

UDP User Datagram Protocol

UM-OLSR University of Murcia Optimized Link State Routing protocol

VANET Vehicular Ad hoc Network

VoD Video on Demand

VoIP Voice over IP

VQM Video Quality Metric

WLAN Wireless Local Area Network

(15)
(16)

Introduction générale

12

Introduction générale

Les travaux de recherches, présentés dans ce rapport de doctorat, visent à étudier, évaluer et améliorer les performances des protocoles de routage dans les réseaux mobiles Ad hoc (MANET). Nous nous sommes intéressés au protocole OLSR (Optimized Link State Routing protocol) qui est largement utilisé dans les réseaux ad hoc et qui constitue un domaine de recherche potentiel et très actif pour la communauté des chercheurs. Comme tout protocole de routage dans un réseau qui ne dispose pas d’infrastructure centralisée, OLSR exige que les nœuds du réseau s’échangent des informations pour établir et maintenir les routes entre eux. Cet échange, appelé message de contrôle, constitue un trafic supplémentaire au trafic de données et peut dans certaines situations occuper une bonne partie de la bande passante du réseau au détriment du trafic de données. Pour réduire le trafic de contrôle, OLSR utilise le principe de diffusion optimisée basé sur la sélection d’un certain nombre de nœuds du réseau, appelés MPR, qui seront les seuls à pouvoir rediffuser les messages de contrôles. Cela consiste à ce que chaque nœud du réseau sélectionne, parmi ses voisins directs, un certain nombre de nœuds capables d’atteindre tous ses nœuds de deuxième niveau. L’algorithme de base défini dans le standard du protocole OLSR ne donne pas toujours la solution optimale pour l’ensemble des MPR. Plusieurs travaux ont été proposés pour améliorer la sélection de l’ensemble des MPR en vue de réduire les messages de contrôles. Dans ce cadre, nous avons proposés trois améliorations du protocole OLSR. La première contribution consiste à élargir la visibilité des nœuds à trois sauts, au lieu de deux, pour permettre aux nœuds de faire le meilleur choix des MPR. En effet, dans l’algorithme de base, un nœud dispose des informations sur ses voisins directes (dans sa portée radio) et ses voisins à deux sauts (voisins directs de ses voisins directs) via l’échange de message périodique appelé message HELLO. En se basant sur ces informations, le nœud calcule deux paramètres le poids et l’accessibilité pour choisir ses nœuds MPR. En cas d’égalité de ces deux paramètres pour deux nœuds ou plus, l’algorithme de base choisit de manière aléatoire l’un d’eux. Or, si nous disposons de plus d’informations sur le voisinage à trois niveaux, la sélection des MPR peut être plus

(17)

Introduction générale

13

pertinente et contribuera à l’optimisation du trafic de contrôle. Après avoir implémenté notre amélioration dans NS-2, nous avons exécuté plusieurs scénarios de simulations. Les résultats obtenus attestent de la réduction du nombre de MPR et du trafic de contrôle et son impact positif sur les autres paramètres de performance tels que le délai, le PDR, le coût de routage, etc. De plus, le coût additionnel pour étendre la visibilité à trois sauts est très minime et se limite à l’utilisation d’un champ réservé du message HELLO et l’ajout d’un champ dans la table de voisinage des nœuds.

Dans la deuxième contribution nous proposons un nouvel algorithme coopératif (NCA : New Coopetative Algorithm). Nous sommes partis d’un constat, découvert dans un travail précédent, qui dissocie la réduction du nombre total des messages TC de la réduction local des nœuds MPR. L’idée est de faire coopérer les nœuds du réseau en vue de choisir le maximum de nœuds MPR en commun. Cela se traduira par la réduction du nombre global des MPR dans le réseau et conduira forcément à une réduction du nombre global de messages TC. Les résultats de simulation sous NS-2 montrent que notre proposition réduit le trafic de contrôle de topologie (TC) par rapport l’algorithme de base et d’autres variantes et, par conséquent, améliore les autres paramètres de performance à savoir le délai, le PDR, le coût de routage, etc.

La troisième contribution, nommée FQ-OLSR (Fuzzy based Quality of service MP-OLSR), consiste en une amélioration d’une extension du ptotocole OLSR appelée MP-OLSR. L’idée du protocole MP-OLSR est de maintenir plusieurs chemins pour atteindre une destination. Le calcul des chemins est réalisé par l’algorithme de Dijkstra multi-chemins en se basant sur le nombre de sauts comme unique métrique, et la répartition de la charge est réalisée par l’ordonnancement classique Round Robin (RR). Notre proposition se base aussi sur l’algorithme de Dijkstra multi-chemins, mais avec plusieurs métriques combinées par des contrôleurs flous. La répartition de charge est réalisé par un ordonnancement pondéré WRR (Weighted Round-Robin). FQ-MP-OLSR a permis d’améliorer considérablement les performances notamment pour certaines applications plus exigeantes en termes de QoS.

Comme il y a la possibilité, pour les enseignants chercheurs, titulaires de DES ou équivalents, de choisir entre rédiger un manuscrit classique ou présenter les travaux de recherche, nous optons pour le deuxième choix. Ce mémoire décrit les travaux de recherche réalisés, après la

(18)

Introduction générale

14

soutenance de l’habilité à diriger des recherches, et suite à l’encadrement de plusieurs thèses de doctorat. Notre rapport est sous formes de quatre chapitres. Dans le premier chapitre, nous présentons un état de l’art sur les protocoles de routage dans les réseaux MANET tout en se focalisant sur le protocole OLSR et ces variantes. Le deuxième chapitre présente deux stratégies de réduction des messages TC. Ces stratégies sont implémentées dans NS-2 et comparées à celles implémentées par OLSR standard. Dans le troisième chapitre, nous présentons une deuxième contribution, nous décrivons le principe, le fonctionnement et l’implémentation d’un algorithme coopératif (NCA) sur NS2. Nous présentons également les résultats de comparaison avec trois algorithmes : OLSR standard, l’algorithme NFA et un autre algorithme coopératif. Le quatrième chapitre est une proposition d’une nouvelle variante intelligente du protocole MP-OLSR nommée FQ-MP-OLSR. Cette variante est implémentée et comparée au protocole MP-OLSR original. Nous terminons ce rapport par une conclusion et les perspectives.

(19)

15

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

Chapitre 1 :

Protocole OLSR : Définitions et état

de l’art

(20)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

16

1.1 Introduction

De nos jours, le besoin de plus de mobilité et de pouvoir partager ou échanger de l’information à tout moment, en utilisant des dispositifs mobiles (téléphone portables, PC portable, Etc.) a rendu très répandue la notion des réseaux mobiles sans infrastructure, ou réseaux Ad hoc. La nature complètement distribuée de ce type de réseau pose le problème de performance dû aux calculs des routes ainsi que les problèmes liés à la sécurité des échanges entre les nœuds du réseau. Dans ce type de réseau, les nœuds acceptent de relayer les communications de leurs voisins afin que les messages puissent se propager au-delà des zones de couverture de leurs émetteurs initiaux. Cette technique de routage a été largement étudiée et plusieurs protocoles ont été proposés à savoir AODV [1], DSR [2], DSDV [3] et OLSR (Optimize Link State Routing Protocol) [4] et ont été étudiés dans plusieurs travaux de recherche [5], [6], [7]. Pour maintenir les routes entre les nœuds du réseau, la quasi-totalité de ces protocoles diffusent des messages de contrôle de topologie (TC : Topology Control) à travers le réseau. Le processus de diffusion des messages TC consomme plus de bande passante et d'énergie, et augmente les collisions et les tempêtes de diffusion (Broadcast Storm), ce qui dégrade les performances du réseau. Pour optimiser la diffusion des messages TC dans les réseaux MANET, plusieurs approches ont été développées [1]. Parmi ces approches, celle utilisée par le protocole OLSR (Optimized Link State Routingprotocol). Ce protocole optimise la diffusion des messages de découverte et de mise à jour des routes. Chaque nœud du réseau choisit un sous ensemble des voisins à un saut qui lui permet d’atteindre tous ses voisins à deux sauts. Les éléments de ce sous ensemble sont appelés les relais multipoint (MPR, Multipoint Relay). Le but est donc d’obtenir le plus petit nombre de MPRs acceptable pour le réseau. L’utilisation de cette technique permet de réduire considérablement l’impact de la diffusion des messages de contrôle et contribue à la performance globale du protocole. L’étude de la réduction des inondations de routage est la clé de protocoles de routage. Pour optimiser cette inondation dans le protocole OLSR, plusieurs algorithmes sont proposés [8], [4], [9], [10]. Ces algorithmes ne visent que l’optimisation de la diffusion en réduisant le nombre de relais multipoints pour chaque nœud du réseau.

(21)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

17

1.2 Protocole OLSR

1.2.1 Introduction

OLSR [4] est un protocole de routage proactif pour les réseaux Mobile Ad hoc (MANET). Le protocole hérite de la stabilité de l'algorithme classique d'état de lien et, grâce à sa nature proactive, possède l'avantage d'avoir immédiatement les routes disponibles lors d’une demande de routage.

OLSR échange régulièrement les informations de topologie avec les autres nœuds du réseau. Chaque nœud sélectionne parmi ses voisins de premier niveau un ensemble de Relais Multipoint (MPR). Ainsi, seuls les nœuds sélectionnés comme MPR ont le droit de retransmettre le trafic de contrôle destiné à être diffusé à tous les nœuds du réseau. Les MPR fournissent un mécanisme efficace d'inondation du trafic de contrôle par la réduction du nombre de retransmissions requises.

La construction des plus courts chemins vers toutes les destinations par OLSR, est basée sur les informations d'état de liens diffusés par les MPR qui déclarent leurs sélecteurs MPR. Les nœuds qui ont été élus comme MPR par leurs voisins, annoncent périodiquement cette information dans les messages de contrôle. De cette manière, chaque nœud MPR, informe le réseau que leurs sélecteurs MPR sont joignables à partir de lui même. Ainsi, lors du calcul de la route, les MPR sont utilisés pour construire la route à partir d'un nœud vers n'importe quelle destination du réseau.

1.2.2 Gestion de voisinage: tables de voisinage

Chaque nœud stocke et maintient quatre types de tables de voisinage: la table de voisinage à un saut, la table de voisinage à deux saut, la table des MPR et la table des sélecteurs MPR.

1.2.2.1 Table de voisinage à un saut

Chaque nœud stocke une table composé des champs suivants: (N_neighbor_main_addr, N_status, N_willingness). Le champ N_neighbor_main_addr

(22)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

18

présente l'adresse principale du voisin, N_status spécifie le statut du voisin qui peut être symétrique SYM, relais multipoint MPR ou asymétrique NOT_SYM.

Le champ N_willingness peut contenir un entier compris entre 0 et 7 (exemples: WILL_NEVER = 0, WILL_LOW = 1, WILL_DEFAULT = 3, WILL_HIGH = 6,

WILL_ALWAYS = 7), qui indique l'aptitude du nœud à transmettre le trafic vers les autres nœuds. Un nœud avec comme N_willingness = WILL_NEVER (WILL_NEVER=0) ne doit jamais être élu comme MPR par un autre nœud. Un nœud avec N_willingness = WILL_ALWAYS (WILL_ALWAYS = 7) doit toujours être sélectionné comme MPR. Par défaut, le nœud doit être annoncé avec N_willingness = WILL_DEFAULT (WILL_DEFAULT = 3).

WILL_NEVER indique que le nœud est incapable de transmettre le trafic vers les autres nœuds, par exemple,à causedes contraintes des ressources comme la faiblesse de la charge de la batterie. WILL_ALWAYS indique que le nœud doit être toujours sélectionné pour transmettre le trafic vers les autres nœuds, par exempleen raisons d’abondance des ressources (comme l'alimentation électrique supplémentaire permanant, plus élevé capacité d'interfaces vers les autres nœuds, etc.).

Un nœud peut changer dynamiquement le paramètre N_willingness en fonction des changements de l'environnement. Par exemple, le paramètre N_willingness passe à la valeur WILL_ALWAYS lorsque le nœud se connecte à l'alimentation électrique permanant ou suite au chargent complet de la batterie.

Lorsque le nœud est déconnecté de l'alimentation électrique permanante, la valeur WILL_DEFAULT est annoncée. Lorsque la capacité de la batterie tend à diminuer, le paramètre N_willingness doit, dans un premier temps, être réduit entre une valeur compris entre WILL_DEFAULT et WILL_LOW, puis à WILL_LOW et finalement à WILL_NEVER lorsque la capacité de la batterie du nœud est insuffisante pour transmettre le trafic.

1.2.2.2 Table de voisinage à deux sauts

Comme il a été mentionné précédemment, un nœud stocke et maintient une table de voisinage à deux sauts constituée des champs suivants: N_neighbor_main_addr, N_2hop_addr

(23)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

19

et N_time. Cette table décrit les liens symétriques, d'une part entre le nœud en question et ses voisins à un saut, et d'autre part entre ce nœud et ses voisins à de deux sauts. N_neighbor_main_addr est l'adresse principale du voisin à un saut, N_2hop_addr est l'adresse principale du voisin à deux sauts avec un statut de voisinage SYM avec N_neighbor_main_addr, et N_time spécifie la durée de validité de cette entrée et doit être supprimée de la table après son expiration.

1.2.2.3 Table des voisins MPR

Chaque nœud stocke et maintient une table de voisinage des nœuds sélectionnés comme MPR. Chaque nœud MPR est référencé dans cette table par son adresse principale N_neighbor_main_addr.

1.2.2.4 Table des sélecteurs MPR

Chaque nœud stocke et maintient une table de ses sélecteurs MPR. Cette table, décrivant les voisins qui ont élu le nœud comme MPR, possède les deux champs: MS_main_addr et MS_time. MS_main_addr est l'adresse principale du nœud qui a sélectionné le nœud comme MPR, tandis que MS_time spécifie la durée de validité de cette entrée et doit être supprimée de la table après expiration.

1.2.2.5 Table des liens

La table des liens est construite à base des informations des liens vers les nœuds voisins. La construction de cette table s'effectue par l'échange des messages HELLO. Chaque nœud doit détecter les liens avec ses nœuds voisins. Ainsi, pour un nœud donné, un lien est décrit par son interface locale et l'interface du nœud distant avec lequel il va établir ce lien. Chaque nœud stocke et maintient les informations des liens vers les nœuds voisins sous forme d'une table constituée des champs suivants: L_local_iface_addr, L_neighbor_iface_addr, L_SYM_time, L_ASYM_time et L_time. L_local_iface_addr est l'adresse de l'interface locale du nœud (la première extrémité du lien), L_neighbor_iface_addr est l'adresse de l'interface du nœud voisin (la deuxième extrémité du lien), L_SYM_time est le temps durant lequel le lien est considéré symétrique, L_ASYM_time est le temps durant lequel le lien est considéré

(24)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

20

asymétrique, et L_time spécifie la durée de validité de cette entrée et doit être supprimée de la table des liens lorsqu'elle est expirée.

Ces informations sont utilisées lors de la déclaration des interfaces des voisins dans les messages HELLO.

L_SYM_time est utilisé pour décider du type du lien déclaré pour l'interface du voisin. Donc, si L_SYM_time est non expiré, le lien doit être déclaré symétrique si non, il doit être déclaré asymétrique. Et lorsque L_SYM_time et L_ASYM_timesont les deux expirés, le lien doit être déclaré comme perdu.

1.2.3 Détection et maintien des états des liens et établissement de voisinage

La détection et le maintien des états des liens L, des voisins à un saut N, les voisins à deux sauts N2, l'ensemble des MPR et l'ensemble des MPR sélecteurs (MPRS), sont basés sur l'échange périodique (par défaut toutes les 2 secondes) des messages HELLO entre les nœuds, Le message HELLO reçu par un nœud est traité et non retransmis par ce nœud. Le message HELLO contient la liste des liens et des voisins du nœud émetteur. A titre d'exemple, supposons qu'on a un réseau Ad hoc simple, constitué de trois nœuds (Figure 1.1) A, B et C, tel que chaque nœud veut établir son voisinage avec les autres nœuds. Supposons que les nœuds A et C sont dans la portée de communication de B, et B est dans la portée de communication de A et de C. Le nœud A n'est pas à portée de communication de C et visversa, et par la suite ils peuvent communiquer uniquement à travers le nœud B. Dans cet exemple, on considère que chaque nœud possède une seule interface.

Figure 1.1: Un réseau Ad hoc composé de trois nœuds Portée de communication

A

B

(25)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

21

La Figure 1.2 montres les étapes de détection des liens et des voisins du réseau Ad hoc de la Figure 1.1.

 A l'instant t=t1 le nœud B diffuse autour de lui un message HELLO vide (entête du paquet contient l'adresse IP du nœud B). Les nœuds A et C reçoivent ce message, et puisqu'ils ne trouvent pas B dans leur table de voisinage, ils l'insèrent comme voisin asymétrique.  A l'instant t=t2 le nœud A envoie un message HELLO déclarant B comme étant voisin

asymétrique, le nœud B analyse ce message et trouve dans la liste des liens incorporés dans le message HELLO sa propre adresse et par la suite insère A comme voisin symétrique. De même, à l'instant t=t3, le nœud B reçoit le message HELLO à partir du nœud C puis l'insère comme voisin symétrique, à ce moment-là, le nœud B a inséré les deux nœuds A et C comme voisins symétrique.

Figure 1.2: Détection et maintient de voisinage par les messages HELLO

 A l'instant t=t4 le nœud B diffuse auteur de lui un message HELLO qui contient la liste de ses liens et ses voisins (A et C) qui sont déjà stockés comme symétriques dans B. Les nœuds A et C reçoivent ce message, le nœud A va connaître que le nœud C est un voisin symétrique de B, donc il va déduire que C est un voisin à deux sauts. De même, le nœud C déduit que A est un voisin à deux sauts.

A B C L(A)={} L(A)={(B,ASYM)} N(A)={(B,ASYM)} t=t2 L(A)={(B,SYM)} N(A)={B,SYM} N2(A)={C} MPR(A)={B} L(A)={(B,MPR)} N(A)={(B,MPR)} t=t5 L(B)= {} t=t1 L(B)= {(A,SYM)} N(B)={ (A,SYM)} L(B)= {(A,SYM);(C,SYM)} N(B)={ (A,SYM);(C,SYM)} t=t4 MPRS(B)={A} MPRS(B)={A,C} HELLO ({}) HELLO (L(A)) HELLO (L(B)) HELLO ({}) HELLO (L(C)) HELLO (L(B)) L(C)={} L(C)={(B,ASYM)} N(C)={ (B,SYM)} t=t3 L(C)={(B,SYM)} N(C)={(B,SYM)} N2(C)={A} MPR(C)={B} L(C)={(B,MPR)} N(C)={(B,MPR)} t=t6 HELLO (L(A)) HELLO (L(C))

(26)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

22

 A ce moment-là, les nœuds A et C vont mette à jour leurs tables des liens et des voisinages, et lancent la procédure de calcul des MPR. Donc, puisque le nœud A peut atteindre le nœud C (non voisin de A) uniquement à partir du B, alors le nœud B sera sélectionné comme MPR par le nœud A. De même le nœud B sera sélectionné comme MPR par le nœud C.

 A l'instant t=t5 le nœud A envoie un message HELLO déclarant que le nœud B est un voisin MPR. le nœud B analyse ce message et déduit qu'il est MPR de A est par la suite insère A comme sélecteur MPR dans sa table des sélecteurs MPR. De même, à l'instant t=t6, le nœud B reçoit le message HELLO à partir du nœud C puis l'insère comme sélecteur MPR. Ainsi, le nœud B possède comme sélecteur MPR les deux nœuds A et C, et va générer un message de contrôle de topologie TC qui annonce au réseau Ad hoc que les nœuds A et C sont sélecteurs MPR de B.

A chaque mise à jour de la table des liens, des mises à jour son apportées à la table de voisinage, à la table de voisinages à deux sauts, à la table des MPR et à la table des sélecteurs MPR.

1.2.4 Gestion de la topologie et de routage

1.2.4.1 Table de topologie

En plus des messages HELLO, chaque nœud de type MPR diffuse périodiquement (par défaut toute les 5 secondes) un message de contrôle de topologie TC (Topologie Control). Ce message annonce les nœuds ayant sélectionnés le nœud émetteur du message TC comme relais multipoint. Le nœud récepteur stocke et maintient une table de topologie construite à partir des informations transportées dans le message TC. La table de topologie contient les champs: T_dest_addr, T_last_addr, T_seq et T_time.

T_dest_addr est l'adresse principale de la destination et qui se trouve à un saut du nœud d'adresse principale T_last_addr. Ainsi, Le noeud avec l'adresse T_dest_addr est considéré comme étant le nœud qui a élu le nœud d'adresse T_last_addr comme MPR. T_seqest un numéro de séquence, tandis que T_time spécifie la durée de validité de cette entrée et doit être supprimée de la table lorsqu'elle est expirée.

(27)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

23

1.2.4.2 Table de routage

Chaque nœud maintient une table de routage qui est calculée à partir de la table de topologie et de voisinage on appliquant un algorithme de plus court chemin. Cette table contient toutes les informations nécessaires pour acheminer les paquets de données vers tous les nœuds joignables du réseau. Ces informations sont présentées par les champs suivants: R_dest_addr, R_next_addr, R_dist, et R_iface_addr.

Chaque entrée spécifie que le nœud d'adresse R_dest_addr se trouve à R_dist sauts du nœud local. R_next_addr est l'adresse du prochain voisin symétrique (à un saut) dans la route, à partir de l'interface d'adresse R_iface_addrdu nœud local, vers le nœud d'adresse R_dest_addr.

1.2.5 Les algorithmes de sélection des Relais Multipoints (MPR)

Le cœur du principe d'optimisation du protocole OLSR est son mécanisme de diffusion des informations d'états de liens basé sur l'algorithme de sélection des relais multipoints (MPR). Les relais multipoints sont utilisés, pour diminuer le trafic dû à la diffusion des messages de contrôle dans le réseau Ad hoc. L'ensemble MPR est calculé heuristiquement par l'Algorithme 1.1[5]de base suivant:

On note par:

u un nœud du réseau Ad hoc

N(u) l'ensemble des voisins symétriques de u N2(u) l'ensemble des voisins à deux sauts de u MPR(u) l'ensemble des MPR de u

Ainsi, l'algorithme est décrit comme suit:

Algorithme 1.1: Algorithme de base de sélection des MPR

Initialiser MPR(u) à l’ensemble vide.

Identifier l’ensemble des nœuds de N(u) qui sont les seuls ayant un lien avec un des voisins de deux sauts. Ajouter ces nœuds à MPR(u), et éliminer de N2(u)tous les nœuds de second niveau couverts par ces derniers.

(28)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

24

Choisir un nœud v de N(u)qui couvre le maximum de nœuds de N2(u).

 Insérer v dans l’ensemble des relais multipoint MPR(u), et éliminer de N2(u)tous les nœuds de deux sauts couverts par celui-ci.

Fin Tant que

Pour mieux illustrer le principe de fonctionnement de cette heuristique, prenons l'exemple suivant:

Figure 1.3: Voisinage à un et à deux saut d'un nœud du réseau Ad hoc

On suppose qu'on a un réseau Ad hoc constitué d'un certain nombre de nœuds, et le nœud 1 (Figure 1.3) a établi son voisinage à un et à deux sauts par l'envoi périodique des messages HELLO. Dans ce cas l'ensemble construit des voisins à un saut du nœud 1 est N(1)={2,3,4,5} et l'ensemble des voisins à deux sauts du nœud 1 est N2(1)={6,7,8,9,10}.

1 2 3 4 5 10 9 8 7 6

(29)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

25

Figure 1.4: Étapes de sélection de l'ensemble des MPR du nœud 1

La première étape de l'heuristique consiste à identifier l’ensemble des nœuds de N(1) qui sont les seuls ayant un lien avec un des voisins à deux sauts. Ces nœuds doivent être nécessairement insérés à l'ensemble MPR(1), afin que les voisins à deux sauts soient totalement couverts. Ensuite, éliminer de N2(1) tous les nœuds à deux sauts couverts par ces derniers. D'après l'exemple de la Figure 1.3 le nœud 3 est le seul à couvrir le nœud 8 (Figure 1.4 (a)), on l'insère dans l'ensemble MPR(1), et on élimine les nœuds 6, 7, 8 et 9 de l'ensemble N2(1) puisqu'ils sont couverts par le nœud 3 (Figure 1.4 (b)).

Puisqu'il n'y a aucun nœud de N(1) qui est le seul à couvrir un des voisins de deux sauts, on passe à la deuxième étape qui consiste à chercher le nœud de N(1) qui couvre le maximum de nœuds de N2(1). D'après l'exemple, les nœuds 4 et 5 atteignent le même nombre de nœuds de deux sauts, dans ce cas le choix serait aléatoire parmi les deux nœuds, on élit le nœud 4 (Figure 1.4 (c)) comme MPR et on élimine le nœud 10 de N2(1) puisqu'il est couvert par le

1 2 3 4 5 10 9 8 7 6 1 2 3 4 5 10 N2(1)={6,7,8,9,10} MPR(1)={} N2(1)={10} MPR(1)={3} 1 2 3 4 5 10 1 2 3 4 5 N2(1)={} MPR(1)={3,4} N2(1)={10} MPR(1)={3} (a) (b) (c) (d)

(30)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

26

nœud 4 (Figure 1.4 (d)). On arrête la recherche puisque l'ensemble N2(1) devient vide. Donc, Le résultat final est MPR(1)={3,4}.

On note qu'il n'y a pas une seule solution, la solution peut être MPR(1)={3,5}. Le choix des MPR au cours de l'exécution de l'heuristique dépend de la manière dont les nœuds sont interconnectés et de la structure de données employée lors de l'implémentation de l'heuristique.

Une autre amélioration de l'heuristique de sélection des MPR a été développée pour OLSR et a été décrite dans la RFC 3626 [4].

Avant de détailler cette amélioration de l'algorithme on note: u le nœud exécutant l'heuristique

N(u) l'ensemble des voisins symétrique de u.

N2(u) l'ensemble des voisins à deux sauts de u, avec exclusion:

(i) des nœuds accessibles uniquement par les membres de N(u) possédant un N_willingness = WILL_NEVER. N_willingness est un paramètre stocké est maintenu par chaque nœud du réseau Ad hoc, il indique l'aptitude du nœud à transmettre le trafic vers les autres nœuds et ce, suivant les contraintes des ressources comme la faiblesse de la charge de la batterie. Un nœud avec comme N_willingness = WILL_NEVER (WILL_NEVER=0) ne doit jamais être élu comme MPR par un autre nœud. Un nœud avec N_willingness = WILL_ALWAYS (WILL_ALWAYS = 7) doit toujours être sélectionné comme MPR. Par défaut, le nœud doit être annoncé avec N_willingness = WILL_DEFAULT (WILL_DEFAULT = 3).

(ii) le nœud exécutant l'heuristique (le nœud u) (iii)tous les voisins symétriques de u.

D(y) est le degré d'un voisin symétrique yà un saut de u (y est un membre de N(u)), et qui est défini par le nombre des voisins symétriques du nœud y, avec exclusion de tous les membres de N(u) et exclusion du nœud u exécutant l'heuristique.

MPR(u) l'ensemble des MPR de u

(31)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

27

Algorithme 1.2: Algorithme détaillé de sélection des MPR d'un nœud u

1 Insérer dans l'ensemble MPR(u) les nœuds membres de N(u) possédant commeN_willingness= WILL_ALWAYS

2 Pour chaque nœud y membre de N(u)calculer son degré D(y).

3 Identifier l’ensemble des nœuds de N(u) qui sont les seuls ayant un lien avec un des voisins de deux sauts. Insérer ces nœuds à MPR(u), et éliminer tous les nœuds de deux sauts couverts par ces derniers de N2(u). Par exemple, si un nœud b dans N2(u) est accessible à partir d'un seul lien symétrique à partir d’un nœuda dans N(u), alors insérer le nœud a à l'ensemble MPR.

4 Tant que l'ensemble N2(u) est non vide Faire

4.1 Pour chaque nœud dans N(u), calculer l'accessibilité, c'est-à-dire, le nombre de nœuds dans N2(u) qui ne sont pas encore couverts par aucun nœud de l'ensemble MPR(u), et qui sont accessibles à partir de ce nœud dans N(u).

4.2 Sélectionner comme MPR le nœud possédant le plus élevé N_willingness parmi les nœuds de N(u) qui possèdent une accessibilité non nulle.

4.2.1 Dans le cas de plusieurs choix, sélectionner le nœud qui fournit une accessibilité à un nombre maximal de nœuds dans N2(u).

4.2.2 Dans le cas où il y a plusieurs nœuds fournissant la même accessibilité, sélectionner comme MPR le nœud possédant le plus élevé degré D(y).

4.3 Supprimer les nœuds dans N2(u) qui sont maintenant couverts par le nœud inséré dans l'ensemble MPR.

Fin Tant que

Supposons que les nœuds de N(1) ont comme N_willingness = WILL_DEFAULT.

Si on applique l'heuristique à l'exemple précédant, on trouve comme résultat MPR={3,4}. Alors, MPR={3,5} n'est plus solution, puisque l'heuristique favorise le nœud qui possède un degré élevé (le nœud 4 dans le cas de l'exemple de la Figure 1.3: D(4)=2>D(5)=1) lorsqu'il y'a des nœuds avec un nombre d'accessibilité égal.

(32)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

28

1.3 Simulation des réseaux MANET et Implémentation

UM-OLSR

La simulation est un outil puissant d’évaluation des performances des réseaux notamment les MANET. Elle présente malheureusement des faiblesses qui peuvent produire des résultats inattendus lorsqu'elle n'est pas vérifiée et validée [6].

La conception d'un réseau MANET basée sur l'étude par simulation comprend le paramétrage d'un nombre important de variables. D’après les auteurs du travail [7], pour bien mener une étude par simulation, d'un protocole de routage MANET, d'une manière rigoureuse et crédible, il faut identifier les variables susceptibles d'avoir le plus d'impact sur les performances du protocole. L'étude [6] fournit une liste des recommandations pour atteindre une simulation crédible, cette liste des recommandations n'est pas exhaustive mais elle représente une proposition solide pour des pratiques visant à accroître la crédibilité de la recherche scientifique dans le domaine des MANET. De même, les auteurs du travail [7] ont identifié plusieurs faiblesses tout au long du cycle de vie de la simulation des MANET. La connaissance, et par la suite, l'évitement de ces faiblisses permet de rendre la recherche scientifique reproductible, non ambigu, rigoureuse et statistiquement valable. La documentation de ces faiblesses et le partage des connaissances augmentera la fiabilité des études sur les MANET [7].

En général, les activités dans un projet de simulation font appel à la construction du modèle après une analyse approfondie du système. Une fois le modèle est transformé en modèle de simulation qui est codé par un programme informatique, la vérification est souvent utilisée pour évaluer la pertinence du modèle de simulation. Cette vérification s’effectue par l'analyse du code de la simulation, la réalisation des tests et par le contrôle de cohérence des résultats des statistiques. D’après les auteurs du travail [8] la vérification consiste essentiellement à inspecter la logique du programme de simulation puis l’exécution des tests et débogages de simulation, et enfin le contrôle de cohérence entre les relations théoriques et les statistiques. Une fois l'analyse de l'étape de vérification est satisfaite, les activités de validation peuvent se mettre en route. En pratique, la vérification et la validation ne doivent pas être strictement séquentiel. Puisque, en partie, les deux sont basés sur les tests de simulation, certaines de leurs

(33)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

29

activités associées peuvent être menées simultanément. Toutefois, certaines activités de vérification (par exemple, l'inspection de code) devraient être effectuées avant toute validation.

1.3.1 Implémentation UM-OLSR

La spécification RFC 3626 [4] du protocole OLSR a été implémentée dans NS-2 [9]. Ainsi, on trouve plusieurs implémentations, à titre d'exemple, l'implémentation OOLSR (Object oriented implementation of OLSR) développée à l'INRIA [10] et l'implémentation UM-OLSR[11]développée à l'Université Murcia (Espagne) par les membres du groupe de recherche ANTS [12]. L'implémentation UM-OLSR est très utilisée par la communauté scientifique pour étudier, améliorer et évaluer les performances d'OLSR. Ainsi, plusieurs travaux de recherche ont été basés sur l’implémentation UM-OLSR dans NS-2. Ces travaux font appel à l’implémentation UM-OLSR pour:

1. l’utiliser (sans modification) en tant que protocole de routage dans les travaux de développement, d’études et de validation par simulation des modèles MANET se trouvant au-dessus ou au-dessous de la couche réseau du modèle TCP/IP [16][17][18].

2. comparer OLSR avec des protocoles de routage MANET existants ou avec un nouveau protocole de routage MANET en cours de validation [19][20][21][22][23].

3. développer des nouvelles variantes améliorées du protocole OLSR [24][25][26][27][28] [29][30][31][32][33][34][35][36][37][38][39][40][41][42][43].

En vue d'étudier les performances du protocole OLSR à travers son implémentation UM-OLSR dans NS-2, nous avons effectué une série de simulations sous NS-2. Suite à ces expérimentations, nous avons identifié des incohérences entre UM-OLSR et la spécification RFC 3626 du protocole OLSR. Ces incohérences sont identifiées en particulier dans l’algorithme de sélection des relais multipoints (MPR) responsables de l’optimisation de la diffusion des paquets de contrôle de topologie (TC). Nous avons proposé des solutions pour corriger ces incohérences. Ces solutions ont été validées sur NS-2 [39] et intégrées à plusieurs variantes à QoS du protocole OLSR qui sont : OLSR-ETX, OLSR-MD et OLSR-ML. Les résultats de cette étude ont montré que l'utilisation de l'implémentation UM-OLSR originale dans les travaux de recherche du standard OLSR, peut influencer considérablement les

(34)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

30

résultats de ces travaux. Les statistiques présentées dans notre travail montrent que l’implémentation UM-OLSR originale peut générer des paquets TC additionnels allant jusqu’à 30.30% par rapport à la version corrigée, à noter que ce pourcentage peut augmenter à chaque augmentation de la densité du réseau. La génération des paquets TC additionnels provoque un coût de routage supplémentaire de 27.31% par rapport à la version corrigée, ce comportement est la conséquence de l’augmentation de la taille de l’ensemble des MPR de la version UM-OLSR originale. Le nombre total des MPR et le nombre de changement des MPR générés par la version originale dépassent significativement ceux de la version corrigée par des taux qui peuvent atteindre respectivement 16.20% et 39.71%.

1.4 Travaux Antérieurs

1.4.1 Réduction des messages de contrôle de topologie

1 La fonctionnalité de base du protocole OLSR [4] est son mécanisme d'optimisation du trafic de contrôle de topologie basée sur l'algorithme de sélection des MPR proposé par Qayyum et al. [40]. En général, il y a trois groupes de schémas MPR [41]: les purs schémas MPR, les schémas basés sur les ensembles dominants connectés (CDS: Connected Dominating Set) et les schémas MPR à QoS (Quality of Service). Les purs schémas MPR sont basés sur le concept de l'heuristique originale de sélection des MPR. Plusieurs extensions sont développées afin d'améliorer des performances spécifiques tels que la taille de l'ensemble des MPR [42][43][44], l'efficacité d'utilisation de la puissance de la batterie des nœuds mobile [45][46] et la fiabilité de la liaison de communication entre les nœuds [47]. Les schémas basés sur les CDS [48] [49] sont basés sur l'heuristique originale de sélection des MPR, le but est de réduire le nombre de nœuds impliqués dans le transfert des paquets tout en générant un ensemble CDS. Les schémas MPR à QoS [50][51] utilisent les métriques de qualité de service par les protocoles de routage en sélectionnant des MPR qui répondent à certaines exigences de qualité de service requises pour les applications temps réel.

En général, la réduction du trafic de contrôle de topologie est l'un des problèmes les plus importants qui doivent être pris en considération par les protocoles de routage. Dans OLSR, la diffusion des messages TC est nécessaire pour trouver un chemin vers n'importe

(35)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

31

quelle destination. Il est donc nécessaire d'optimiser ce trafic. Dans la suite de cette section, nous présentons quelques travaux existants concernant la réduction de la surcharge du trafic de contrôle de topologie dans OLSR.

Li et al. [42] ont proposé un nouvel algorithme appelé NFA (Necessity First of selecting Algorithm) pour sélectionner les MPR. L'objectif est de réduire davantage le nombre de nœuds MPR sélectionnés. NFA améliore les performances par rapport à l’algorithme original. Les résultats de simulation montrent que NFA permet de réduire le nombre des MPR sélectionnés et le nombre des messages TC.

Shaukat et al. [52] ont proposé un mécanisme dans lequel les messages HELLO et TC ne sont pas nécessairement transmis périodiquement toutes les 2s et 5s, respectivement, comme dans le cas de la version standard du protocole OLSR, mais, chaque nœud de réseau MANET, transmet périodiquement les messages de contrôle en utilisant un intervalle de temps basé sur des conditions locales du réseau. L'évaluation des performances par les simulations sont effectuées uniquement avec 20 nœuds, les résultats montrent que le mécanisme proposé permet de réduire la surcharge du trafic de contrôle de topologie, mais diminue le taux de paquets délivrés et augmente le délai moyen de bout en bout par rapport à la version standard du protocole OLSR.

Yamada et al. [37][53] ont proposé un algorithme coopératif de sélection des MPR pour OLSR et un algorithme centralisé optimal pour trouver l’ensemble des MPR avec une taille minimale. L'objectif est de réduire davantage les messages TC. Les algorithmes proposés augmentent les messages TC encapsulé dans le même paquet TC ce qui permet par la ensuite de réduire les paquets TC. Les deux algorithmes, coopératif et centralisé, sont comparés avec l'algorithme original de sélection des MPR du protocole OLSR. Les simulations montrent que les algorithmes proposés, coopératif et centralisé, permettent de réduire davantage le nombre des messages TC en comparaison avec l'algorithme original de sélection des MPR. Cependant, l'algorithme centralisé n'est pas distribué et par la suite il est impossible de l’intégré dans OLSR pour des réseaux MANET réels. Les mêmes auteurs analysent dans [54], par les simulations, la densité des nœuds MPR dans le cas de l'algorithme original et centralisé de sélection des MPR. Ils évaluent le rapport des MPR sélectionnés et la surcharge de routage sans tenir compte de la mobilité des nœuds. Les résultats des simulations montrent que

(36)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

32

l'algorithme de sélection des MPR centralisé réduit les messages TC. Mais les auteurs n'évaluent pas le taux de paquets délivrés et le délai de bout en bout pour les versions OLSR analysés.

Maccari et al. [55] ont proposé deux algorithmes de sélection des MPR. Le premier algorithme vise à réduire le nombre des messages TC et le second vise à stabiliser les tables de routage. L'évaluation des performances par les simulations utilise uniquement deux métriques: la distribution de la taille de l'ensemble des MPR sélecteurs et la variation des messages TC, cependant, les auteurs n'évaluent pas les algorithmes proposés en termes de taux de paquets délivrés et de délai de bout en bout.

Pour remédier aux faiblesses des travaux cités ci-dessus, nous proposons une contribution de recherche qui vise à améliorer les performances du protocole de routage OLSR, et ce par la réduction davantage du nombre des messages TC diffusés dans le MANET. Pour ce faire nous avons proposé deux stratégies qui consistent à étendre la visibilité des nœuds jusqu’à trois sauts lors de la sélection des MPR par le protocole OLSR. Ces stratégies sont intégrées dans OLSR sans rajouter de surcharge additionnelle.

1.4.2 Protocoles multi-chemins basés sur OLSR

D’autres améliorations apportées au protocole OLSR consistent à intégrer la technique de routage chemins à ce protocole. Xuekang et al. [56] ont proposé une version multi-chemins du protocole OLSR, cette version calcule deux meilleurs multi-chemins à nœuds-disjoints de la source vers la destination. Le premier chemin est utilisé pour envoyer les paquets de données et le second est alternatif et n'est utilisé que si le premier est interrompu. Pour sélectionner des chemins qui permettent d'améliorer la QoS, les auteurs introduit un nouveau paramètre inter-couche, qui est définie comme étant le rapport entre la métrique SNR (Signal to Noise Ratio) et le délai.

Hung et al. ont proposé dans [42] et [57], respectivement, deux nouveaux variantes multi-chemins du protocole OLSR appelé LIA-MPOLSR (Link-disjoint Interference-Aware Multipath OLSR) et HIA-MPOLSR (Hybrid Interference-Aware Multipath OLSR) qui sont basés sur une métrique d’interférence calculée en tenant compte de la distance géographique entre les nœuds. L'évaluation des performances montrent que LIA-MPOLSR et

(37)

HIA-Chapitre 1 : Protocole OLSR : Définitions et état de l’art

33

MPOLSR améliorent les performances en termes de taux de paquets délivrés, de coût et surcharge de routage. Cependant, la métrique d'interférence utilisé pour sélectionner les chemins multiples n'est pas toujours disponible, GPS (Global Position System) est nécessaire pour connaître la position des voisins pour le calcul de cette métrique de routage.

Adoni et al. [58] ont proposé une variante multi-chemins du protocole OLSR basée sur une métrique d'énergie, l'objectif est d’optimiser et de rendre uniforme la consommation de l'énergie de tous les nœuds du réseau. Une autre variante multi-chemins du protocole OLSR basée sur une métrique d'énergie et de mobilité est proposée par Huang et al. [59], l'objectif est d'augmenter la durée de vie des nœuds et des liens ainsi que la fiabilité des chemins sélectionnés. Toutefois, la métrique de mobilité nécessite la position des nœuds voisins, cette information n'est pas toujours disponible.

Toutes les variantes multi-chemins cités du protocole OLSR utilisent une stratégie d’élimination des nœuds ou des liens pour trouver des chemins disjoints. Toutefois, dans des cas particuliers, cette stratégie peut ne pas trouver des chemins disjoints. Ainsi, cette stratégie conduit parfois à trouver des chemins avec un nombre de sauts élevé, ce qui augmente le délai de transmission des paquets et provoque un taux de rupture des liens élevé et un taux de perte de paquets élevé.

A notre connaissance, la seule variante multi-chemins du protocole OLSR qui essaie d'augmenter la chance de construction des chemins disjoints est la variante MP-OLSR proposé par Yi et al. [60][61]. Par la suite, nous proposons d'améliorer cette variante tout en conservant ses avantages.

1.5 Conclusion

Dans ce chapitre nous avons défini et décrit les réseaux MANET, ensuite nous avons présenté le principe de fonctionnement du protocole de routage OLSR. Le protocole OLSR est le plus déployé dans les réseaux MANET et il est sujet de recherche dans plusieurs travaux, la quasi-totalité de ces travaux font appel à l’implémentation UM-OLSR du protocole OLSR dans NS-2 pour étudier, évaluer et améliorer ses performances. Suite à une étude détaillée de l’implémentation UM-OLSR nous avons identifié des incohérences entre cette dernière et la spécification RFC 3626 du protocole OLSR. Nous avons proposé des solutions qui sont

(38)

Chapitre 1 : Protocole OLSR : Définitions et état de l’art

34

vérifiées et validés par expérimentation sur NS-2. Dans cette section nous avons aussi présenté les travaux antérieurs d’amélioration du protocole OLSR. Ces travaux se basent sur la réduction des messages de contrôle de topologie dans les MANET, ainsi que l’acheminement des paquets de données à travers plusieurs routes. Nous avons identifié quelques faiblesses de ces améliorations, et par la suite nous proposons trois améliorations pour OLSR et qui seront présentés dans les chapitres qui suivent. La première amélioration propose deux stratégies pour réduire davantage la diffusion des messages TC, et ce par l’extension de la visibilité des nœuds jusqu’à trois sauts lors de la sélection des MPR. La deuxième contribution propose un nouvel algorithme coopératif (NCA : New Coopetative Algorithm) qui prend en considération la coopération des nœuds voisins lors de la sélection des MPR. La troisième amélioration est une extension du protocole MP-OLSR (Multipath Optimized Link State Routing Protocol) nommée FQ-MP-OLSR (Fuzzy based Quality of service MP-OLSR), cette extension intègre deux systèmes flous dont le but est d’améliorer la qualité de service (QoS) et la qualité d’expérience (QoE) de la transmission vidéo dans les MANET.

(39)

Chapitre 2 : Nouvelles stratégies de sélection des Relais Multipoints par le protocole OLSR

35

2 Chapitre 2 : Nouvelles stratégies de sélection des Relais

Multipoints par le protocole OLSR

Chapitre 2 :

Nouvelles stratégies de sélection des Relais

Multipoints par le protocole OLSR

(40)

Chapitre 2 : Nouvelles stratégies de sélection des Relais Multipoints par le protocole OLSR

36

2.1 Introduction

Le protocole OLSR utilise un échange périodique des messages HELLO et TC pour maintenir les routes vers toutes les destinations dans le réseau MANET. Ce mécanisme permet à chaque nœud du MANET d'avoir les routes disponibles en cas de besoin. En général, l'augmentation des messages TC peut provoquer des collisions, des congestions et des consommations supplémentaires d'énergie qui peuvent diminuer les performances du réseau. Dans le but de réduire les messages TC, OLSR utilise l'algorithme de sélection des relais multipoints (MPR), qui est considérée comme la fonctionnalité de base du protocole OLSR. Un autre mécanisme du protocole OLSR est d'encapsuler deux ou plusieurs messages TC dans un seul paquet appelé TC paquet. Alors, si un nœud MPR reçoit deux ou plusieurs messages TC dans une courte période, ils sont encapsulés dans le même paquet TC. Cette encapsulation permet de réduire la surcharge des paquets de routage et la probabilité de collision entre les paquets.

L’algorithme original de sélection des MPR n'est pas optimal. Donc, la minimisation de l’ensemble des MPR peut réduire de plus les messages TC. Dans ce chapitre, nous proposons deux stratégies pour améliorer l'algorithme de sélection des MPR du protocole OLSR. Les stratégies proposées conservent les avantages de l'algorithme original et ajoute d'autres paramètres pour la sélection des nœuds MPR. Ces améliorations réduisent davantage le nombre des messages TC dans le MANET en utilisant une simple modification dans le protocole OLSR sans surcharges supplémentaires.

2.2 Stratégie de réduction des messages TC basée sur les

nœuds retransmetteurs des messages TC

Dans cette section, nous proposons une stratégie qui permet de réduire le nombre des messages TC retransmis en sélectionnant les nœuds MPR qui peuvent retransmettre moins de messages TC, la décision pour choisir de tels nœuds MPR est basée sur l’extension de la visibilité à trois sauts plutôt qu’à deux sauts comme dans le cas de l'algorithme original de sélection des MPR.

(41)

Chapitre 2 : Nouvelles stratégies de sélection des Relais Multipoints par le protocole OLSR

37

2.2.1 Schéma basé sur le degré d’absorption des messages TC

Pondant le processus de sélection des MPR, OLSR limite la visibilité d'un nœud source à ses voisins à deux sauts. Parfois, une situation particulière peut se produire lorsque deux nœuds candidats à être MPR ont la même chance de devenir MPR pour un nœud source. Cela signifie que les deux nœuds ont la même accessibilité et le même degré. Dans ce cas, l'algorithme choisit de façon aléatoire un nœud comme MPR parmi les deux nœuds candidats. Or, si nous étendons notre visibilité pour des voisins à trois sauts du nœud source, nous pouvons identifier le meilleur nœud MPR. Notre idée donc est d'étendre la visibilité aux voisins à trois sauts et utiliser cette information lorsque deux nœuds voisins à un saut du nœud source ont la même accessibilité et le même degré.

L'idée clé de notre schéma est de donner plus d'opportunités aux nœuds de sélectionner les meilleurs nœuds MPR, même dans le cas de condition particulière (même accessibilité et même degré). Donc, si les nœuds MPR sélectionnés ont un nombre élevé (degré d’absorption) de nœuds voisin qui absorbe les messages TC alors le nombre de messages TC transmis peut être réduit. Ainsi, un nœud qui absorbe les messages TC transmis par son voisin (candidat à être MPR) est un nœud qui ne rediffuse pas les messages TC reçu à partir de ce voisin. Ce nœud peut être:

1. Isolé (de l’ensemble des voisins à deux sauts du nœud candidat à être MPR): ne possède pas de liens vers les voisins à deux sauts du nœud candidat à être MPR, mais il peut avoir des liens vers les voisins à un saut du nœud source qui effectue le calcul de sélection des MPR.

2. Non MPR: n’est pas précédemment élu comme MPR par le nœud candidat à être MPR. Donc, nous proposons une amélioration de l'heuristique de sélection des MPR avec deux variantes:

(1) une amélioration basée sur le degré AbsDegree1 qui est égal au nombre de voisins à un saut isolés du nœud candidat à être MPR et (2) une amélioration basée sur le degré AbsDegree2 qui est égal au nombre de nœuds non MPR voisins du nœud candidat à être MPR. Les deux variantes de l’heuristique proposées sont similaires à l’heuristique décrite dans le RFC 3626 (Algorithme 1.2), sauf lorsque les nœuds candidats à être MPR ont la même

Références

Documents relatifs

La vision des couleurs dans le système visuel humain le centre du champ récepteur n’est plus associé à une seule bipolaire, mais à plusieurs.. Les expériences psychophysiques

Nous allons essayer ainsi de dégager les particularités des impacts des tic et d'Internet sur la représentation du corps humain dans l'art visuel contemporain

D’autres sens liés au toucher tels que la nociception (perception de la douleur), la thermoception (perception de la chaleur) et la toniception (perception de

À l’instar des réseaux ad-hoc mobiles [11] Mobile ad hoc networks MANETs, les réseaux maillés sans fil se distinguent par trois caractéristiques principales : • La position

Pour réduire les interruptions des communications dans les réseaux Ad Hoc, la phase de découverte des routes doit être efficace surtout lorsque les nœuds sont

mises à jour pour les routes les plus récentes plus rapidement avec l’émission des paquets de contrôle tels TC (topology control), HELLO (détection du voisinage) d’où

Mon rôle dans ce projet consiste à coordonner les travaux de caractérisation et de filtrage du bruit ainsi que la commande de microrobots pour l’exécution de tâches à l’intérieur

Se basant sur l’idée que la plupart des protocoles d’auto-organisation existants ne sont pas conçus pour exploiter les ressources des nœuds riches (actionneurs) afin de réduire