Simulateur - OMNET++ [PDF]

République Algérienne Démocratique et Populaire Ministère de l’Enseignement Supérieur de la Recherche Scientifique Mémo

35 0 3MB

Report DMCA / Copyright

DOWNLOAD PDF FILE

Simulateur - OMNET++ [PDF]

  • 0 0 0
  • Gefällt Ihnen dieses papier und der download? Sie können Ihre eigene PDF-Datei in wenigen Minuten kostenlos online veröffentlichen! Anmelden
Datei wird geladen, bitte warten...
Zitiervorschau

République Algérienne Démocratique et Populaire Ministère de l’Enseignement Supérieur de la Recherche Scientifique

Mémoire Magister : Informatique, option : Analyse, Commande et Surveillance des Systemes Thème :

Analyse Graphique pour la surveillance dans un réseau de capteurs sans fils (RCSF)

Simulateur : OMNET++

Par : Leila Imane NIAR Soutenue en ..JUILLET 2012 ..devant le jury composé de

Mr. Mustapha Kamel RAHMOUNI Mr. Bouabdellah KECHAR Mr. Mejdi KADDOUR Mr. Mohammed FEHAM Mr. Hafid HAFFAF

Président Examinateur Examinateur Examinateur Encadreur

Remerciement

Mes remerciements s’adressent à mon encadreur H.HAFFAF , pour son aide, ses encouragements, et ses critiques constructifs qui m’ont beaucoup aidé à apprécier ce travail et à mieux éclairer mes perspectives. Je suis reconnaissante à lui, particulièrement pour la confiance qu’il m’a fait. Je tiens à remercier les membres du jury pour m’avoir fait le plaisir d’accepter d’examiner ce travail. Je tiens à remercier également ma famille et mes amis(es), ce travail n’aurait certainement jamais vu le jour sans leurs aides, et leurs soutiens, je tiens vivement à les remercier.

ii

Dédicace Pour Père, Mère, Sœur et frères

Table des matières Résumé :

xiii

Introduction Générale

xiv

1

Présentation des Réseaux de capteurs sans fil 1.1 Les Réseaux sans fil . . . . . . . . . . . . . . . . . . . . . 1.1.1

2 4

Le réseau personnel sans fil . . . . . . . . . . . .

4

1.2

1.1.2 Le réseau local sans fil (WLAN) . . . . . . . . . 1.1.3 Le réseau métropolitain sans fil (WMAN) . . . 1.1.4 Le réseau étendu sans fil (WWAN) . . . . . . . . Les réseaux Ad Hoc . . . . . . . . . . . . . . . . . . . .

5 6 6 7

1.3

1.2.1 Caractéristiques des réseaux Ad Hoc . . . . . . Les réseaux de capteurs sans fil (RCSF) . . . . . . . . .

7 7

1.3.1 1.3.2

Architecture d’un nœud capteur . . . . . . . . . Organisation d’un nœud capteur . . . . . . . . .

8 9

1.3.3 1.3.4 1.3.5

Architecture d’un réseau de capteurs Les types d’architectures des RCSF . . Les differentes topologies des RCSF : 1.3.5.1 La Topologie en étoile : . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

12 13 14 14

1.3.5.2 La topologie en grille : 1.3.5.3 La topologie hybride : . La collection d’information : . . 1.3.6.1 À la demande : . . . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

14 15 15 15

1.3.6

1.3.6.2

. . . .

. . . .

. . . .

Suite à un évènement : . . . . . . . . . 15

TABLE DES MATIÈRES

iv

1.3.7

Les principales caractéristiques des RCSF

1.3.8 1.3.9

Les domaines d’application . . . . . . . . . . . . 18 La consommation d’énergie dans les RCSF . . . 19 1.3.9.1 Les principaux opérations dûes à la consommation d’énergie . . . . . . . . 19 1.3.9.2

. . . 17

Modèle de consommation d’énergie . . 21

1.3.9.3

Les facteurs intervenants dans la consommation d’énergie . . . . . . . . . . . . . 22 1.3.10 Le routage dans les RCSF . . . . . . . . . . . . . 24 1.4 2

1.3.10.1 Exemples de protocoles de routage . . 24 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . 28

La surveillance des Réseaux de Capteurs Sans Fil 2.1

La supervision des RCSF 2.1.1 2.1.2 2.1.3

2.3 2.4

. . . . . . . . . . . . . . . . . 33

Les Pannes . . . . . . . . . . . . . . . . . . . . . 33 2.1.1.1 Classification des pannes . . . . . . . . 33 Solution architecturale tolérante aux pannes dans les RCSF . . . . . . . . . . . . . . . . . . . . . . . 35 Aspect de surveillance d’un RCSF . . . . . . . . 37 2.1.3.1 Méthodologie de déploiement : . . . . 37 2.1.3.2 Connectivité du réseau . . . . . . . . . 38 . . . .

. . . .

. . . .

39 39 40 40

2.1.4.2 La redondance analytique . . . . . Systèmes Multi-agents . . . . . . . . . . . . . . . . . 2.2.1 Caractéristiques des Systèmes Multi-Agents Les Travaux Antérieurs . . . . . . . . . . . . . . . .

. . . .

. . . .

42 43 43 44

2.1.4

2.2

31

2.1.3.3 La couverture . . . . . . . 2.1.3.4 Longévité du réseau . . . La redondance . . . . . . . . . . . . 2.1.4.1 La redondance Matérielle

. . . .

. . . .

. . . .

. . . .

Description de l’approche distribuée (décentralisée) . . 47 2.4.1 Topologie du réseau . . . . . . . . . . . . . . . . 47

TABLE DES MATIÈRES

v

2.4.2

2.5

Définition des rôles . . . . . . . . . . . . . . . . 47 2.4.2.1 Algorithme d’attribution de rôle . . . . 49 Le protocole de routage adopté . . . . . . . . . . . . . . 50 2.5.1

Les Diagrammes UML . . . . . . . . . . . . . . . 51

2.5.2 2.5.3 2.5.4

2.5.1.1 La détection du voisinage . . . Changement de rôles : . . . . . . . . . . . Détection des groupes voisins . . . . . . Vérification de la cohérence des groupes :

2.5.5 2.5.6

2.6 3

. . . .

. . . .

. . . .

. . . .

Résolution de conflits entre représentants . . . 55 Gestion de la redondance . . . . . . . . . . . . . 56 2.5.6.1 Le principe suivi pour gérer la redondance : . . . . . . . . . . . . . . . . . . . 57

2.5.6.2 Mécanisme de détection des pannes . 58 2.5.7 Collecte d’information . . . . . . . . . . . . . . . 59 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . 60

Simulation de la surveillance en RCSF 3.1 Généralités sur la simulation . . . . . . . . . . . . . . . 3.2 Types de simulation . . . . . . . . . . . . . . . . . . . . . 3.2.1 Systèmes de simulation discret : . . . . . . . . . 3.3

3.4 3.5

52 53 54 54

3.2.2 Systèmes de simulation continue : Les simulateurs de réseau éxistant . . . . 3.3.1 NS2 : . . . . . . . . . . . . . . . . . 3.3.2 GloMoSim . . . . . . . . . . . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

62 64 64 64 65 65 65 66

3.3.3 OMNET++ . . . . . . . . . . . . . . . . . . . . . 68 Comparaison entre les simulateurs . . . . . . . . . . . . 68 Le Simulateur OMNET++(Objective Modular Network Testbed in C++) . . . . . . . . . . . . . . . . . . . . . . . 70 3.5.1 3.5.2 3.5.3

Choix du simulateur OMNET++ . . . . . . . . . 70 Présentation d’OMNET++ . . . . . . . . . . . . 70 Desciption architecturale d’OMNET++ . . . . . 71

TABLE DES MATIÈRES

3.5.4 3.5.5

Installation du simulateur OMNET++ . . . . . . 72 Les principaux fichiers d’OMNET++ . . . . . . 73 3.5.5.1 Fichier (.Ned) : . . . . . . . . . . . . . . 73 3.5.5.2

3.6

3.7

Fichier (.ini) : . . . . . . . . . . . . . . . 75

3.5.5.3 Fichier (.msg) : . . . . . . . . . . Les plates formes d’OMNET++ . . . . . . . . . . 3.6.1 Mobility FrameWork . . . . . . . . . . . . 3.6.1.1 La structure d’une hôte mobile .

. . . .

. . . .

. . . .

. . . .

75 76 76 77

3.6.2 Mixim . . . . . . 3.6.3 Castalia . . . . . Détails sur Castalia . . . 3.7.1 Le module MAC 3.7.2 3.7.3 3.7.4 3.7.5

3.8

vi

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

78 78 80 81

Le module Radio . . . . Canal sans fil . . . . . . Le module Routage . . . Le module Application

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

81 82 82 82

Outils de Simulation . . . . . . . . . . . . . . . . . . . . 83 3.8.1 3.8.2

Installation d’OMNET++ Version 4 . . . . . . . . 83 Installation de Castalia3.1 . . . . . . . . . . . . . 84 3.8.2.1 Les Commandes Castalia . . . . . . . . 84

3.9 Implémentation d’un réseau . . . . . . . . . . . . . . . . 84 3.10 Conculsion . . . . . . . . . . . . . . . . . . . . . . . . . . 86 4

Implémentation et Simulation 4.1

4.2 4.3

Environnement de travail . . . . . . . 4.1.1 Environnement matériel . . . 4.1.2 Environnement logiciel . . . . Processus de simulation . . . . . . . .

88 . . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

90 90 90 90

Réalisation du projet . . . . . . . . . . . . . . . . . . . . 91 4.3.1 Objectif . . . . . . . . . . . . . . . . . . . . . . . . 91 4.3.2 Description de la conception d’un nœud . . . . 91

TABLE DES MATIÈRES

4.4

4.3.3 Description du réseau . . . . . . . . . . . . . . . 94 Implémentation . . . . . . . . . . . . . . . . . . . . . . . 96 4.4.1 Structure des messages utilisés . . . . . . . . . . 96 4.4.1.1 4.4.2

Au niveau de la couche Application . . 96

4.4.1.2 Au niveau de la couche Réseau . . . . 96 Aperçu des Codes Sources . . . . . . . . . . . . 98 4.4.2.1 Envoi Periodique du Message HELLO 98 . . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

99 100 102 102

Résultats Obtenus . . . . . . . . . . . . . . . 4.5.1 Deployement du Réseau . . . . . . . . 4.5.1.1 Initialisation des nœuds . . 4.5.1.2 Reconnaissance de voisinage

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

104 104 105 106

4.4.3 4.5

vii

4.4.2.2 Attribution Des Rôles . . 4.4.2.3 Gestion de la redondance 4.4.2.4 Rediffusion du Hello . . Le fichier .ini . . . . . . . . . . . .

. . . .

4.5.1.3

4.5.2 4.5.3 4.6

Table de voisinage et Affectation des rôles . . . . . . . . . . . . . . . . . . . . 108 4.5.1.4 Passage en Etat Sleep . . . . . . . . . . 109 Exemple d’un fichier Resume . . . . . . . . . . . 109 Paramètres de Simulations . . . . . . . . . . . . 111 4.5.3.1 La Radio CC1000 . . . . . . . . . . . . . 111

Résultats . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 4.6.1 Organisation du Réseau . . . . . . . . . . . . . . 112

4.6.2 4.6.3

4.6.1.1 Les positions des nœuds 4.6.1.2 Le voisinage . . . . . . . Redondance Des Nœuds . . . . . . Reconfiguration Du Réseau . . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

112 113 114 115

4.6.4 4.6.5 4.6.6

Energie Consommée au niveau du réseau . . . . 116 Energie Consommée Avec et sans surveillance . 117 Energie restante d’un nœud Représentant . . . . 118

TABLE DES MATIÈRES

4.6.7 4.6.8 4.6.9

viii

Nombre de packets moyens des différents nœuds119 Energie Consomée des différents nœuds . . . . 119 Influence de la Mobilité des nœuds sur le Réseau 120

4.6.10 Influence du Temps De Simulation . . . . . . . . 122 4.7

Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . 123

Conclusion Générale

124

TABLE DES MATIÈRES

ix

Table des figures 1.1 1.2

Les catégories des réseaux sans fil. [MAT08] . . . . . . le nœud capteur [CAS08]. . . . . . . . . . . . . . . . . .

4 8

1.3

les composants d’un nœud capteur [MOA08].

8

1.4 1.5 1.6 1.7

La pile protoclaire [CSS04]. . . . . . . . . . . . . . . Architecture de commnication d’un RCSF [KEC07]. Architecture Plat des RCSF[ROM07]. . . . . . . . . Architecture hierarchique des RCSF[ROM07]. . . .

. . . .

. . . .

10 12 13 14

1.8 1.9 1.10 1.11

Collecte à la demande . . . . . . . . . . . . . . . . . . Collecte suite à un événement . . . . . . . . . . . . . . Les différentes applications des RCSF [CHE08]. . . . Modéle de consommation d’énergie . . . . . . . . . .

. . . .

16 16 20 21

. . . . .

1.12 La surécoute [MOA08]. . . . . . . . . . . . . . . . . . . 23 1.13 Classification des protocoles de routage[BEN09]. . . . 25 1.14 Les étapes du protocole SPIN[CHE08]. . . . . . . . . . 26 1.15 Etapes décrivantes le protocole DirectedDiffusion [CHE08]. 28 2.1

Classification des pannes [CHE08]. . . . . . . . . . . . . 34

2.2 2.3 2.4

Stratégies de déploiement des noeuds dans un RCSF[YAK]. 38 La redondance matérielle[RIP99]. . . . . . . . . . . . . 41 Organisation en régions des nœuds capteurs [ALL09]. 48

2.5 2.6

Affectation des rôles dans un RCSF. . . . . . . . . . . . 50 Diagramme Etat Transition. . . . . . . . . . . . . . . . . 51

TABLE DES FIGURES

2.7 2.8 2.9

xi

Diagramme De Séquence. . . . . . . . . . . . . . . . . . 52 Introduction d’un nouveau nœud. . . . . . . . . . . . . 53 Détection des groupes adjacents. . . . . . . . . . . . . . 54

2.10 Correction du problème d’incohérence. . . . . . . . . . 55 2.11 Résolution de conflit entre Représentants. . . . . . . . . 56 2.12 Redondance des nœuds simples. . . . . . . . . . . . . . 57 2.13 Changement d’état d’un nœud. . . . . . . . . . . . . . . 58 3.1 3.2

Description architecturale du simulateur NS2. . . . . . 66 Transfert des paquets dans GloMoSim. . . . . . . . . . . 67

3.3

Le lancement du simulateur Omnet++. . . . . . . . . . . 71

3.4 3.5 3.6

Architecture modulaire du simulateur Omnet++. . . . . 72 Fichier NED en mode graphique. . . . . . . . . . . . . . 74 Fichier NED en mode texte. . . . . . . . . . . . . . . . . 74

3.7 3.8 3.9

Exemple d’un Fichier *.Ini. . . . . . . . . . . . . . . . . 75 Exécution d’une simulation sous OMNeT++.[?] . . . . . 76 Architecture de Mobility et Channel Control. . . . . . . 77

3.10 Architecture interne d’un nœud dans MF. . . . . . . . . 78 3.11 Les connections des modules sous Castalia. . . . . . . . 79 3.12 Les principaux composants d’un nœud . . . . . . . . . . 80 3.13 La machine à état fini du module Radio. . . . . . . . . . 81 4.1 4.2 4.3

Processus de Simulation. . . . . . . . . . . . . . . . . . . 91 Fichier graphique ".ned" du nœud. . . . . . . . . . . . . 93 Fichier graphique ".ned" du réseau. . . . . . . . . . . . . 95

4.4 4.5 4.6

Fichier ".msg" du message Data. . . . . . . . . . . . . . 96 Le structure du message Hello et HelloRep. . . . . . . . 97 Le structure du message "Passe Représentant" et "Résolution de conflit". . . . . . . . . . . . . . . . . . . . . . 97

4.7

Le structure du message Verification de cohérence et Changement de rôle. . . . . . . . . . . . . . . . . . . . . 98 Organigramme de redondance des nœuds simples. . . 101

4.8

TABLE DES FIGURES

xii

4.9 Deployement des nœuds. . . . . . . . . . . . . . . . . . 104 4.10 Exécution avec le Deployement . . . . . . . . . . . . . . 105 4.11 Déployement Aléatoire. . . . . . . . . . . . . . . . . . . 113 4.12 Organisation des Nœuds. . . . . . . . . . . . . . . . . . 114 4.13 4.14 4.15 4.16

Gestion De La Redondance. . . . . . . . . . . . . . . Reconfiguration suite à une défaillance. . . . . . . . Energie Consommée en Réseau. . . . . . . . . . . . . Energie Consommée au niveau des deux Méthodes

. . . .

. . . .

115 115 116 117

4.17 4.18 4.19 4.20

Energie Moyenne Consommée par 50 nœuds . . . . . Energie Moyenne Consommée par 100 nœuds . . . . L’énergie restante au niveau d’un nœud Représentant Packets Moyens envoyés et reçus par nœuds. . . . . .

. . . .

117 118 118 119

4.21 4.22 4.23 4.24

Energie Consommée Avec Surveillance. . . . . . . . . . 120 Energie Consommée Sans Surveillance. . . . . . . . . . 120 Influence de la Mobilité sur le Réseau. . . . . . . . . . . 121 Influence de la Mobilité sur le Réseau(Energie Moyenne).121

4.25 Energie Restante par-rapport au temps de Simulation. . 122 4.26 Energie Moyenne Restante. . . . . . . . . . . . . . . . . 122

Résumé : Les réseaux de capteurs sans fil attirent plus l’attention de la communauté de recherches. Ainsi la simulation est une démarche fréquemment utilisée pour tester et valider des approches, les environnements de simulation doivent pouvoir soutenir les différents modèles des réseaux de capteurs sans fil. Notre article s’intéresse plus précisément au cas de surveillance des réseaux de capteurs. Le protocole testé est un protocole basé sur la reconfiguration des noeuds avec le principe de redondance pour garder une couverture de la zone et assurer une longue vie du réseau. La validation de l’approche est considéré suite à l’utilisation du simulateur OMNeT++ puisque les résultats obtenus ont montré que le concept de l’approche au niveau de la tolérance aux pannes (avec le principe de réveiller les noeuds endormi en cas de panne ou d’épuisement d’énergie d’un noeud actif) assure un bon fonctionnement ainsi une longévité du réseau.

Mots Clés : Réseau de capteurs sans fil, Surveillance, Redondance, Reconfiguration, Simulation, OMNET++, Castalia

Introduction Générale L’avancement des technologies dans les infrastructures de réseau et de minuscules capteurs du réseau permet à de nombreuses applications de réseau de capteurs allant de civils aux militaires, de la maison à l’environnement et de la nature de l’industriel au domaine commercial de s’accroitre, car de nos jours le besoin d’observer des phénomènes physiques tel que la température, la pression ou encore la luminosité est devenu essentiel. Exemples sont la surveillance de l’habitat des animaux, observation de l’environnement et de prévision, le corp humain le suivi, le champ de bataille de détection et d’analyse, etc Cependant, La taille réduite des capteurs nécessite l’utilisation d’une batterie comme source d’énergie ce qui implique une durée limité du réseau. Suite à ça la collaboration d’un nombre de ces nœuds, donne naissance à un réseau de capteurs sans fil. Ce dernier est déployé de manière aléatoire dans un champ. Les capteurs sont prévus pour la collecte d’information selon des critères bien précis. Ainsi la consommation d’energie est devenue un axe majeur dans les recherches d’où plusieurs protocoles de routage ont été proposés dans le but d’optimiser la consommation énergitique et de prolonger la durée de vie du réseau.

Introduction Générale

xv

Un protocole de routage permet l’acheminement des informations au sein du réseau avec l’envoie des messages entre nœuds capteurs pour la collecte du phénomène. Ce qui s’avère couteux en energie qui engendre l’épuisement des batterie, encore plus la perte des données et la diminution de vie du réseau. Dans ce contexte, la fonction de surveillance en continue est une méthode basée sur la détection et la localisation des anomalies qui peuvent survenir dans le réseau. Suite à ca, une des solutions qui s’annonce prometteuse est l’utilisation d’un système multi-Agents avec le principe de la surveillance. L’objectif de notre travail est de créer dans l’environnement de simulation OMNeT++, un modèle de surveillance du réseau. Ce modèle est basé sur la gestion distribuée avec le concept de redondance. Comme conséquences de cette surveillance : La diminution des messages communiqués, L’hiérarchie du réseau, La réduction d’énergie consommée et ainsi la longévité du réseau. Suite à ça notre Document est organisé en 4 Chapitres : – Chapitre 1 : Donne un aperçu sur les réseaux de capteurs sans fils et leurs caractéristiques. Un état de l’art est présenté. – Chapitre 2 : Est consacré à la surveillance des réseaux où nous avons présenté les principaux concepts de surveillance et plus précisémment au niveau des réseaux de capteurs sans fils. Les travaux dans ce domaine sont cités en références. – Chapitre 3 : Présente l’apprort de la simulation pour la validation des résultats. Un comparatif entre les différents simulateurs enrichira le contenu du chapitre. Notre choix qui sera justifiés est pointé sur OMNeT++ et Castalia.

Introduction Générale

xvi

– Chapitre 4 : Constitue le cœur de cette contribution en proposant un modèle de surveillance du réseau ainsi que son implémentation. Les résultats de simulation seront également présentés pour justifier la validité de notre approche.

Introduction Générale

1

Chapitre 1 Présentation des Réseaux de capteurs sans fil Au cours de son évolution, le paradigme sans fil a vu naître diverses architectures dérivées, telles que : – les réseaux cellulaires, – les réseaux locaux sans fil, – etc.. Durant cette dernière décennie, une nouvelle architecture est apparu : – les réseaux de capteurs sans fil(RCSF). Ces derniers ont été utilisés dans de nombreuses applications telles que la surveillance des forêts, la gestion des catastrophes, l’exploration spatiale, l’automatisation industrielle, l’installation des serrures, la protection des frontières, et la surveillance des champs de bataille [ASS08][CKU03]. Dans ces applications, les nœuds de capteurs miniaturisés sont déployés à fonctionner de façon autonome dans des environnements sans surveillance. En plus de la capacité d’explorer son environnement, chaque capteur possède une radio à bord utilisée pour l’envoi des données recueillies à une station de base, soit directement, soit à

Présentation des Réseaux de capteurs sans fil

3

travers un chemin multi-saut. Ces capteurs ont 3 fonctions : 1. Capter des données (de type son, vibration, lumière,...), 2. Calculer des informations à l’aide de ces valeurs collectées, 3. Les communiquer à travers un réseau de capteurs. Ce dispersement aléatoire des capteurs nécessite un protocole basé sur des algorithmes d’auto-organisation. Afin de résister aux déploiements, ces capteurs doivent être très solides et de plus, ils doivent aussi pouvoir survivre dans les conditions les plus extrêmes dictées par leur environnement d’utilisation (feu ou eau par exemple). En plus des contraintes environnementales, une contrainte très importante est l’économie de batterie. En effet, un réseau de capteurs ne peut survivre si la perte de nœuds est trop importante car ceci engendre des pertes de communication dûes à une grande distance entre les capteurs. Donc il est très important que les batteries durent le plus longtemps possible étant donné que dans la plupart des applications les capteurs sont placés aléatoirement.

Présentation des Réseaux de capteurs sans fil

1.1

4

Les Réseaux sans fil

Il existe plusieurs catégories de réseaux sans fil qui diffèrent par le périmètre géographique qu’ils couvrent ainsi que par les types d’applications supportées. Le schéma suivant illustre les catégories des réseaux sans fil.

F IG . 1.1 – Les catégories des réseaux sans fil. [MAT08]

1.1.1

Le réseau personnel sans fil

Il concerne les réseaux sans fil d’une faible portée : de l’ordre de quelques dizaines de mètres. Ce type de réseau sert généralement à relier des périphériques (imprimante, téléphone portable, appareils domestiques, PDA...). Il existe plusieurs technologies utilisées pour les WPAN tel que : 1. La technologie Bluetooth : Est connue aussi sous le nom de la norme IEEE 802.15.1, elle a été lancée par Ericsson en 1994, proposant un débit théorique de 1 Mbps lui permettant une transmission de la voix, des données et des images [2], d’une portée

Présentation des Réseaux de capteurs sans fil

5

maximale d’une trentaine de mètres[1]. Bluetooth est une technologie peu onéreuse, grâce à sa forte intégration sur une puce unique de 9 mm sur 9 mm [3] ; Elle présente également l’avantage de fonctionner sur des appareils à faible puissance d’où une faible consommation d’énergie [1]. 2. La technologie ZigBee : Est connue aussi sous le nom de la norme IEEE 802.15.4, permet d’obtenir des liaisons sans fil à bas prix avec une très faible consommation d’énergie, ce qui la rend particulièrement adaptée pour être directement intégrée dans de petits appareils électroniques (capteurs, appareils électroménagers...) [1]. Les réseaux ZigBee permettent d’offrir des débits jusqu’à 250 Kbits/s dans la bande classique des 2,4GHz. Les RCSF constituent une des applications que cette norme peut couvrir [1]. 3. Les liaisons infrarouges : Permettent de créer des liaisons sans fil de quelques mètres avec des débits pouvant monter à quelques mégabits par seconde. Cette technologie est largement utilisée dans la domotique (télécommandes), et souffre toutefois des perturbations dûes aux interférences lumineuses. 1.1.2

Le réseau local sans fil (WLAN)

C’est un réseau permettant de couvrir une portée d’environ une centaine de mètres. Il permet de relier les terminaux entre-eux présents dans la zone de couverture. Il existe deux technologies concurrentes : 1. Les réseaux Wi-Fi (Wireless-Fidelity) : Proviennent de la norme IEEE 802.11, qui définit une architecture cellulaire. On y trouve principalement deux types de réseaux sans fil : Ceux qui travaillent à la vitesse de 11 Mbits/s à 2.4 GHz (IEEE 802.11b) et ceux qui montent à 54 Mbits/s à 5 GHz (IEEE 802.11 a/g).

Présentation des Réseaux de capteurs sans fil

6

2. Les réseaux HiperLAN 2 (High Performance LAN 2.0) : Découlent de la norme européenne élaborée par l’ETSI (European Telecommunications Standards Institute). HiperLAN 2 permet d’obtenir un débit théorique de 54 Mbps sur une zone d’une centaine de mètres dans la gamme de fréquence comprise entre 5 150 et 5 300 MHz [1]. Ce type de réseau n’a pas reçu autant de succès que la technologie Wi-fi. 1.1.3

Le réseau métropolitain sans fil (WMAN)

Connu aussi sous le nom de Boucle Locale Radio (BLR). Il convient de rappeler que la BLR permet, en plaçant une antenne parabolique sur le toit d’un bâtiment, de transmettre par voie hertézienne de la voix et des données à haut débit pour l’accès à l’internet et la téléphonie. Il existe plusieurs types de réseaux WMAN dont le plus connu est : Le réseau Wimax (Worldwide interoperability for Microwave Access) : Ils émanent de la norme IEEE 802.16 et ont pour but de développer des liaisons hertéziennes concurrentes aux techniques xDSL terrestres et offrent un débit utile de 1 à 10 Mbit/s dans la bande 10-66 GHz pour une portée de 4 à 10 kilomètres, ce qui destine principalement cette technologie aux opérateurs de télécommunication. 1.1.4

Le réseau étendu sans fil (WWAN)

Il est connu sous le nom de réseau cellulaire mobile et il est le plus répandu puisque tous les téléphones mobiles sont connectés à un réseau étendu sans fil. Les principales technologies sont les suivantes : GSM (Global System for Mobile Communication), GPRS (General Packet Radio Service), UMTS (Universal Mobile Telecommunication System).

Présentation des Réseaux de capteurs sans fil

1.2

7

Les réseaux Ad Hoc

Un réseau ad hoc, ou MANET (Mobile Ad hoc NETwork), est un réseau formé dynamiquement par un ensemble arbitraire de nœuds indépendants. Aucune préinstallation relative au rôle que devrait jouer chaque nœud n’est requise. Dans un réseau ad hoc, les nœuds sont supposés se comportés comme des routeurs et des clients à la fois, aussi, chaque nœud est libre de se déplacer et de s’organiser aléatoirement. Ainsi, la topologie du réseau peut changer rapidement et de manière imprévisible [HER05]. 1.2.1

Caractéristiques des réseaux Ad Hoc

– Mobilité des nœuds : Dans un réseau ad hoc, la topologie du réseau est dynamique, et peut donc changer assez rapidement. – Liaisons sans fil : Le seul moyen de communication dans les réseaux ad hoc est l’utilisation d’interfaces sans fil. Ces liaisons sans fil auront toujours des performances inférieures à leurs homologues câblés [CAM99] . – Equivalence des nœuds : Dans les réseaux Ad Hoc il n’existe pas de différence entre nœuds tel que les autres réseaux(hôte et station)car tous nœuds peuvent être amenés à assurer des fonctions de routage.

1.3

Les réseaux de capteurs sans fil (RCSF)

Les réseaux de capteurs sont considérés comme un type spécial des réseaux Ad hoc. En conséquence, ils héritent des caractéristiques de ces réseaux, y compris l’architecture sans infrastructure établie et la communication sans fil. Les RCSF forment une nouvelle génération de réseaux aux propriétés spécifiques, Ils présentent un champ

Présentation des Réseaux de capteurs sans fil

8

d’application très vaste et couvrent plusieurs domaines à caractère scientifique, logistique, militaire ou de santé. Un RCSF est composé de plusieurs centaines et parfois des milliers de nœuds capteurs, chaque nœud est capable de surveiller son environnement et de réagir en cas de besoin en envoyant l’information collectée à un ou plusieurs points de collecte, à l’aide d’une connexion sans fil [BAB06].

F IG . 1.2 – le nœud capteur [CAS08].

1.3.1

Architecture d’un nœud capteur

Un nœud capteur est composé de quatre unités principales, qui sont présentées dans la figure ci-dessous[CSS04][KHA06].

F IG . 1.3 – les composants d’un nœud capteur [MOA08].

a. Unité de capture (Sensing unit) : Elle est composée de deux sous unités, un dispositif de capture physique qui prélève l’informa-

Présentation des Réseaux de capteurs sans fil

9

tion de l’environnement local et un convertisseur analogique/ numérique appelé ADC (Analog to Digital Converters). b. Unité de traitement (Processing unit) : Les données captées sont communiquées au processeur où elles sont stockées dans la mémoire. c. Unité de communication (Transceiver unit) : Elle est composée d’un émetteur/récepteur (module radio) permettant la communication entre les différents nœuds du réseau. d. Unité d’énergie (Power unit) : C’est la batterie qui, n’est généralement ni rechargeable ni remplaçable. La capacité d’énergie limitée au niveau des capteurs représente la contrainte principale lors de la conception de protocoles pour les réseaux de capteurs. Les unités d’énergie peuvent être supportées par des photopiles qui permettent de convertir l’énergie lumineuse en courant électrique. 1.3.2

Organisation d’un nœud capteur

les réseaux de capteurs utilisent une pile protocolaire de communication composée de cinq couches : une couche application, une couche transport, une couche réseau, une couche liaison de données et une couche physique. Cette pile est également caractérisée par trois niveaux qui intègrent dans les protocoles des différentes couches la prise en compte de l’énergie consommée, de la mobilité des nœuds, et de la gestion de la distribution des tâches sur les différents nœuds du réseau [DOH06]. a. La couche physique : Elle est responsable de la sélection de fréquence, la génération de la fréquence porteuse, la détection du signal, la modulation/ démodulation et le cryptage/décryptage des informations. Il est avantageux en matière d’économie d’éner-

Présentation des Réseaux de capteurs sans fil

10

F IG . 1.4 – La pile protoclaire [CSS04].

gie que le concepteur de la couche physique choisit une transmission à multi-sauts plutôt qu’une transmission directe qui nécessite une puissance de transmission très élevée [CSS04]. b. La couche liaison de données : La couche liaison de données est principalement responsable de : – Multiplexer le flux de données. – Détecter et verrouiller les trames de données. – Contrôler l’accès au support de transmission (Media Access Control). – Contrôler les erreurs. – Et d’assurer une connexion fiable (point-à-point ou point-àmultipoints) selon la topologie du réseau de capteurs. c. La couche réseau : Gère les échanges (et éventuellement les connexions) au travers du RCSF. Sachant que le positionnement des nœuds étant aléatoire et dense, les protocoles de routage traditionnels deviennent inadéquats. Pour cela, la communication multi-sauts est la mieux adaptée. Cette couche prend en charge la décou-

Présentation des Réseaux de capteurs sans fil

11

verte du voisinage, l’allocation des ressources et le routage. d. La couche transport : Dans les réseaux de capteurs, la couche transport est essentiellement présente pour constituer une interface entre la couche application et la couche réseau [HAM07]. Ses principaux objectifs sont : – Multiplexer et démultiplexer les messages entre les applications et la couche réseau. – Contrôler les données à haut niveau. – Réguler la quantité des données injectées dans le réseau. Le rôle de cette couche intervient essentiellement lorsqu’on va accéder à partir de notre RCSF vers un autre RCSF ou vers Internet. e. La couche application : La couche application constitue l’ensemble des applications implémentées sur un réseau de capteurs. Ces applications devraient fournir des mécanismes permettant à l’utilisateur d’intéragir avec le réseau de capteurs à travers différentes interfaces, et éventuellement, par l’intermédiaire d’un réseau étendu (par exemple : Internet). Cette couche est responsable par exemple sur la collecte, le codage, l’agrégation et la compression des données collectées.

Présentation des Réseaux de capteurs sans fil

12

En plus les 3 niveaux(plans) : a. Le niveau de gestion d’énergie : Chargé de contrôler la manière dont un nœud utilise son énergie. b. Le niveau de gestion des tâches : Assure l’équilibrage de la distribution des tâches sur les différents nœuds pour accomplir un travail coopératif. c. Le niveau de gestion de la mobilité : Détecte et enregistre tout les mouvements des nœuds capteurs. 1.3.3

Architecture d’un réseau de capteurs

Les nœuds capteurs sont habituellement dispersés dans une zone de capture. Chacun de ces nœuds à la possibilité de collecter les données et de les router vers une ou plusieurs stations de base (sink node). Ce dernier est un point de collecte de données capturées. Il peut communiquer les données collectées à l’utilisateur final à travers un réseau de communication, éventuellement l’Internet[MOA08].

F IG . 1.5 – Architecture de commnication d’un RCSF [KEC07].

Comme le montre la (Figure 1.5), un RCSF est composé d’un grand nombre de nœuds capteurs éparpillés sur le champ de captage [ELK].

Présentation des Réseaux de capteurs sans fil

13

A un niveau plus élevé un RCSF peut être vu comme étant une combinaison de deux entités de réseaux : – Le réseau d’acquisition de données : C’est l’union des nœuds capteurs et du sink, son rôle consiste à collecter les données à partir de l’environnement et de les rassembler au sink. – Le réseau de distribution de données : Son rôle est de connecter le réseau d’acquisition des données à un utilisateur. 1.3.4

Les types d’architectures des RCSF

1. Les réseaux de capteur sans fil plat : Un réseau de capteur sans fil plat est un réseau homogène, où tous les nœuds disposent des même capacités dans la communication, captage d’informations... Et un sink différent puisque il joue le rôle de passerelle chargée à transmettre les informations colléctées à l’utilisateur.

F IG . 1.6 – Architecture Plat des RCSF[ROM07].

2. Les réseaux de capteurs sans fil hiérarchique : C’est un réseau hétérogène où les nœuds peuvent disposés d’une source énèrgitique, d’une portée de communication ou d’une puissance de calcul différente les uns des autres.

Présentation des Réseaux de capteurs sans fil

14

F IG . 1.7 – Architecture hierarchique des RCSF[ROM07].

1.3.5

Les differentes topologies des RCSF :

1.3.5.1

La Topologie en étoile :

Dans cette topologie une station de base peut envoyer ou recevoir un message à un certains nombre de nœuds. Ces nœuds peuvent seulement envoyer ou recevoir un message de l’unique station de base, il ne leur est pas permis de s’échanger des messages. L’avantage de cette topologie est sa simplicité, sa capacité à minimiser la consommation d’énergie des nœuds et la minimisation de latence de la communication entre les nœuds et la station de base. Son inconvénient est que la station de base n’est pas robuste puisque tout le réseau est géré par un seul nœud . 1.3.5.2

La topologie en grille :

Dans ce type de topologie, n’importe quel nœud peut envoyer à n’importe quel autre nœud dans le réseau qui est dans la portée de transmission. Ceci est appelé la communication multi-sauts, dans laquelle, si un nœud veut transmettre un message à un autre nœud qui est en dehors de sa portée de transmission, il utilise un nœud intermédiaire pour envoyer son message au nœud destinataire. L’avan-

Présentation des Réseaux de capteurs sans fil

15

tage de cette topologie est la possibilité du passage à l’échelle, la redondance et la tolérance aux fautes, L’inconvénient de cette topologie est la consommation d’énergie dans la communication multi-sauts et la latence qui sont créés par le passage des messages entre nœuds avant d’arriver à la station de base. 1.3.5.3

La topologie hybride :

Une topologie hybride entre celle en étoile et en grille fournit des communications réseau robustes et diverses, en assurant la minimisation de la consommation d’énergie dans les réseaux de capteurs. Dans ce type de topologie, les nœuds capteur à faible puissance ne routent pas les messages, mais il y a d’autres nœuds qui ont la possibilité de faire le routage des messages. En général, ces nœuds ont une puissance élevée. 1.3.6

La collection d’information :

Il existe deux méthodes pour collecter les informations d’un réseau de capteurs : 1.3.6.1

À la demande :

Lorsque l’on souhaite avoir l’état de la zone de couverture à un moment T, le puit émet des brodcasts vers toute la zone pour que les capteurs remontent leur dernier relevé vers le puit. Les informations sont alors acheminées par le biais d’une communication multi-sauts.

1.3.6.2

Suite à un évènement :

Un évènement se produit en un point de la zone de couverture (changement brusque de température, mouvement...), les capteurs si-

Présentation des Réseaux de capteurs sans fil

16

F IG . 1.8 – Collecte à la demande .

tués à proximité remontent alors les informations relevées et les acheminent jusqu’au puit.

F IG . 1.9 – Collecte suite à un événement .

Présentation des Réseaux de capteurs sans fil

1.3.7

17

Les principales caractéristiques des RCSF

– La consommation réduite d’énergie : Chaque nœud dispose d’une batterie de taille réduite, et se trouve donc éxposé à « la mort » une fois tout son stock d’énergie épuisé. – L’auto-configuration des nœuds capteurs : Dans un RCSF, les nœuds sont déployés d’une manière aléatoire (missile, avion...), [CSS04]. Ainsi, un nœud capteur doit avoir des capacités d’une part, pour s’auto-configurer dans le réseau, et d’autre part pour collaborer avec les autres nœuds dans le but de reconfigurer dynamiquement le réseau en cas de changement de topologie du réseau [HOW03]. – La scalabilité : Un réseau de capteur est scalable parce qu’il a la faculté d’accepter un très grand nombre de nœuds. – La tolérance aux pannes : Dans le cas de dysfonctionnement d’un nœud (manque d’énergie, interférences avec l’environnement d’observation...) ou aussi en cas d’ajout de nouveaux nœuds capteurs dans le réseau, ce nœud doit continuer à fonctionner normalement sans interruption. Ceci explique le fait qu’un RCSF n’adopte pas de topologie fixe mais plutôt dynamique. – Une densité importante des nœuds : La forte densité des nœuds est dûe au mode de placement des nœuds (le mode aléatoire). – Une collaboration entre les nœuds : Les contraintes strictes de consommation d’énergie mènent les nœuds capteurs à détecter et traiter les données d’une manière coopérative afin d’éviter le traitement redondant d’une même donnée observée, source de

Présentation des Réseaux de capteurs sans fil

18

la perte d’énergie [4]. 1.3.8

Les domaines d’application

La taille de plus en plus réduite des micro-capteurs, le coût de plus en plus faible, la large gamme des types de capteurs disponibles (thermique, optique, vibrations,...) ainsi que le support de communication sans fil utilisé, permettent aux réseaux de capteurs d’envahir plusieurs domaines d’applications. Parmi lesquelles, on peut citer : Applications Militaires : Comme dans le cas de plusieurs technologies, le domaine militaire a été un moteur initial pour le développement des réseaux de capteurs. Le déploiement rapide, le coût réduit, l’auto-organisation et la tolérance aux pannes des réseaux de capteurs sont des caractéristiques qui rendent ce type de réseaux un outil appréciable dans un tel domaine. Comme exemple : La détection et collecte d’informations sur la position de l’ennemi, la surveillance des zones hostiles (contaminées), la détection d’agents chimiques, bactériologiques... Applications Environnementales : Une grande quantité de capteurs peut être déployée en forêt ou dans un environnement de conservation de la faune afin de recueillir des informations diverses sur l’état du milieu naturel et sur les comportements de déplacement. Parmi ces applications, on trouve : Détection des feux de forêt, précision de l’agriculture, Le suivi des mouvements d’oiseaux,d’animaux et d’insectes... Applications Médicales : On pourrait imaginer que dans le futur, la surveillance des fonctions vitales de l’être humain serait possible

Présentation des Réseaux de capteurs sans fil

19

grâce à des micro-capteurs qui pourront être avalés ou implantés sous la peau. Actuellement, des micro-caméras qui peuvent être avalées existent. Par exemple : Le contrôle à distance des données physiologiques de l’être humain, l’administration des médicaments à l’intérieur des hôpitaux, le suivi et la surveillance des médecins et des patients au sein de l’hôpital... Applications Commerciales : Il est possible d’intégrer des nœuds capteurs au processus de stockage et de livraison. Le réseau ainsi formé, pourra être utilisé pour connaître la position, l’état et la direction d’un paquet ou d’une cargaison. Il devient alors possible pour un client qui attend la réception d’un paquet, d’avoir un avis de livraison en temps réel et de connaître la position actuelle du paquet. On trouve dans ce domaine : La détection et la surveillance des vols de voiture, les musées interactifs, Le contrôle environnemental dans les bureaux et les entreprises...

1.3.9

La consommation d’énergie dans les RCSF

Les capteurs sont conçu avec un module d’énergie limité. Ainsi, cette derniére doit être utilisés efficacement afin de maximiser la durée de vie du réseau. A noter qu’une fois que l’énergie d’un nœud est épuisé, il est considéré défaillant ce qui provoque une forte probabilité de perdre la connectivité du réseau. 1.3.9.1

Les principaux opérations dûes à la consommation d’énergie

a. Energie de capture : L’énergie de capture est dissipée pour accomplir les tâches suivantes : échantillonnage, traitement de signal, conversion analogique/numérique et activation de la sonde

Présentation des Réseaux de capteurs sans fil

20

F IG . 1.10 – Les différentes applications des RCSF [CHE08].

du capture. En général, l’énergie de capture représente un faible pourcentage de l’énergie totale consommé par un nœud. b. Energie de traitement : L’énergie de traitement se divise en deux parties : l’énergie de commutation et l’énergie de fuite. L’énergie de commutation est déterminée par la tension d’alimentation et la capacité totale commutée au niveau logiciel (en exécutant un logiciel). Par contre l’énergie de fuite correspond à l’énergie consommée lorsque l’unité de calcul n’effectue aucun traitement. En général, l’énergie de traitement est faible par rapport à celle nécessaire pour la communication. c. Energie de communication : L’énergie de communication se décline en deux parties : l’énergie de réception et l’énergie de l’émission. Cette énergie est déterminée par la quantité des données à communiquer et la distance de transmission, ainsi que par les propriétés physiques du module radio. L’émission d’un signal

Présentation des Réseaux de capteurs sans fil

21

est caractérisée par sa puissance. Quand la puissance d’émission est élevée, le signal aura une grande portée et l’énergie consommée sera plus élevée. Notons que l’énergie de communication représente la portion la plus grande de l’énergie consommée par un nœud capteur. 1.3.9.2

Modèle de consommation d’énergie

Heinzelman et al. [HCB00] proposent un modèle radio de consommation d’énergie (Figure 1.11). Ainsi, les énergies nécessaires pour émettre ET x (s, d) et recevoir ERx (s) des messages sont données comme suit : – Pour émettre un message de s bits vers un récepteur loin de d mètres, l’émetteur consomme : ET x (s, d) = ET xelec (s) + ET xamp (s, d) ET x (s, d) = (Eelec ∗ s) + (Eamp ∗ s ∗ d2 ) – Pour recevoir un message de s bits, le récepteur consomme : ERx (s) = ERxelec (s) ERx (s) = Eelec ∗ s Eelec et Eamp représentent respectivement l’énergie de transmission électronique et d’amplification.

F IG . 1.11 – Modéle de consommation d’énergie .

Présentation des Réseaux de capteurs sans fil 1.3.9.3

22

Les facteurs intervenants dans la consommation d’énergie

La consommation d’énergie dépend de plusieurs facteurs qui sont expliqués ci-dessous : a. Etat du module radio : Le module radio est le composant du nœud capteur qui consomme le plus d’énergie, puisque c’est lui qui assure la communication entre les nœuds. On distingue les quatres états suivants : – Etat sommeil :La radio est mise hors tension. – Etat transmission : La radio transmet un paquet. – Etat réception : La radio reçoit un paquet. – Etat idle : Cet état provoque une perte de l’énergie suite à l’écoute inutile du canal de transmission. Pour éviter cette perte d’énergie, un capteur doit s’activer qu’en cas de nécessitée, et le reste du temps il doit se mettre dans l’état sommeil. b. Accès au medium de transmission : Puisque les nœuds partagent le même médium de transmission, la sous-couche MAC joue un rôle important pour la coordination entre les nœuds et la minimisation de la consommation d’énergie. En effet, minimiser les collisions entre les nœuds permet de réduire la perte d’énergie. Ainsi les principales causes de perte d’énergie sont : – La retransmission : Les nœuds capteurs possèdent en général une seule antenne radio et partagent le même canal de transmission. Par ailleurs, la transmission simultanée des données provenant de plusieurs capteurs peut produire des collisions et ainsi une perte de l’information transmise. La retransmission des paquets perdus peut engendrer une perte significative de l’énergie. – La surécoute : Le phénomène de surécoute (overhearing) se produit quand un nœud reçoit des paquets qui ne lui sont pas

Présentation des Réseaux de capteurs sans fil

23

destinés, Comme illustré dans la figure suivante :

F IG . 1.12 – La surécoute [MOA08].

– L’écoute active : L’écoute active (idle listening) du canal pour une éventuelle réception de paquet qui ne sera pas reçu peut engendrer une perte importante de la capacité des nœuds en énergie. – La surcharge : Plusieurs protocoles de la couche MAC fonctionnent par échange de messages de contrôle (overhead) pour assurer différentes fonctionnalités : signalisation, connectivité, établissement de plan d’accès et évitement de collisions. Tous ces messages nécessitent une énergie additionnelle. – La sur-émission : Le phénomène de sur-émission (overemitting) se produit quand un nœud capteur envoi les données à un destinataire qui n’est pas prêt à les recevoir. – La taille des paquets : La taille des messages échangés dans le réseau a un effet sur la consommation d’énergie des nœuds émetteurs et récepteurs. c. Modèle de propagation radio : Le modèle de propagation représente une estimation de la puissance moyenne reçue du signal radio à une distance donnée d’un émetteur. La propagation du signal radio est généralement soumise à différents phénomènes : la réflexion, la diffraction et la dispersion par divers objets. d. Routage des données : Le routage dans les réseaux de capteurs est un routage multi-sauts. L’acheminement des paquets d’une

Présentation des Réseaux de capteurs sans fil

24

source donnée à une destination se fait à travers plusieurs nœuds intermédiaires. Dans ce contexte, une mauvaise politique de routage peut avoir des conséquences graves sur la durée de vie du réseau. 1.3.10

Le routage dans les RCSF

Les protocoles de routage au sein des RCSF sont influencés par un facteur déterminant à savoir : La minimisation d’énergie sans une perte considérable de l’éfficacité. Pour cela de nombreuses stratégies de routage ont été crées pour les réseaux de capteurs. Certaines sont des adaptations de stratégies qui existaient pour d’autre types de réseaux (réseaux sans fil au sens le plus large) tandis que d’autres ont été conçues spécialement pour les réseaux de capteurs sans fil. Les protocoles de routage proposés pour les RCSF peuvent être classifiés selon quatres manières : Selon la topologie, l’établissement de la route, les paradigmes de communication et le fonctionnement du protocole. Cette classification est conçu comme suit : 1.3.10.1

Exemples de protocoles de routage

a) SPIN : Heinzelman et al. ont proposé une famille de protocole appelée SPIN (Sensor Protocols for Information via Negotiation), reposant sur un modèle de négociation afin de propager l’information dans un réseau de capteurs. Les communications dans SPIN se font en trois étapes [CHE08] : – Lorsqu’un nœud veut émettre une donnée, il émet d’abord un message ADV contenant une description de la donnée en ques-

Présentation des Réseaux de capteurs sans fil

25

F IG . 1.13 – Classification des protocoles de routage[BEN09].

tion. – Un nœud recevant un message ADV, consulte sa base d’intérêt. S’il est intéressé par cette information, il émet un message REQ vers son voisin. – En recevant un message REQ, l’émetteur transmet à l’intéressé la donnée sous forme d’un message DATA.

Présentation des Réseaux de capteurs sans fil

26

F IG . 1.14 – Les étapes du protocole SPIN[CHE08].

b) MCFA : Ye et al. ont proposé l’algorithme MCFA (Minimum Cost Forwarding Algorithm), recherchant un chemin minimal entre la source et le puit, tout en considérant les limites des réseaux de capteurs. Le protocole vise à atteindre trois principaux buts : + L’optimalité : En acheminant les données sur des chemins à coût minimum. + La simplicité : Qui se traduit par une faible consommation en mémoire, et la non nécessité d’une identification des nœuds. + La scalabilité : Étant donnée la faible consommation en mémoire et l’absence d’identificateur de nœuds, le protocole peut être utilisé pour un grand nombre de nœuds. En plus, la phase de construction des routes ne consomme qu’un message par capteur. Son principe est le suivant : Chaque nœud maintient une variable de coût, qui détermine le coût minimal vers le puit sur le chemin optimal. Plusieurs mesures peuvent

Présentation des Réseaux de capteurs sans fil

27

être employées, suivant l’application voulue : nombre de sauts, consommation d’énergie, . . . etc. c) Directed Diffusion : Directed Diffusion est un protocole de propagation de données, permettant d’utiliser plusieurs chemins pour le routage d’information. Le puit diffuse un intérêt sous forme de requête, afin d’interroger le réseau sur une donnée particulière. Il se base sur le modèle publish/subscribe. DD repose sur quatre éléments : nomination des données, propagation des intérêts et l’établissement des gradients, propagation des données et renforcement des chemins. DD emploi l’inondation globale du réseau. Chaque nœud maintient localement un cache d’intérêt contenant les informations suivantes : – La description de l’intérêt, en utilisant le schéma de nomination : Lorsqu’un puits requiert une donnée du réseau, il propage un intérêt, contenant sa description ainsi que le débit d’information désirée. – Un ensemble de gradients : Lorsqu’un nœud recoit un intérêt, il parcourt son cache : + Si le cache ne contient aucune entrée relative a l’intérêt recu, une nouvelle entrée est créee avec un gradient vers le voisin émetteur. + Dans le cas contraire, le nœud recherche un gradient vers le voisin émetteur, et met à jour en conséquence l’entrée en question. Aprés le traitement du cache, le nœud relai l’intérêt vers ses voisins. La méthode la plus simple est d’utiliser l’inondation.

Présentation des Réseaux de capteurs sans fil

28

F IG . 1.15 – Etapes décrivantes le protocole DirectedDiffusion [CHE08].

1.4

Conclusion Ce chapitre a donner une vue globale sur le domaine des réseaux de capteurs sans fil qui sont apparentés aux réseau Ad hoc. Les réseaux de capteurs sans fil présentent un intérêt considérable et une nouvelle étape dans l’évolution des technologies de l’information et de la communication. Cette nouvelle technologie suscite un intérêt croissant vu la diversité de ces applications : santé, environnement, industrie et même dans le domaine sportif. Cependant, la réalisation des réseaux de capteurs doit satisfaire quelques contraintes tel que la consommation d’énergie, le changement de la topologie, la densité importante du réseau,...etc. Ces limites ont menées les chercheurs à suggérer des

Présentation des Réseaux de capteurs sans fil

29

approches de surveillance pour maintenir le réseau opérationnel le plus longtemps possible tout en gardant une connectivité dans le réseau (réseau connexe) et une meilleur couverture de la zone. De ce fait, Le prochain chapitre sera consacré à la surveillance des RCSF ainsi la présentation de l’approche distribué que nous avons choisie.

Présentation des Réseaux de capteurs sans fil

30

Chapitre 2 La surveillance des Réseaux de Capteurs Sans Fil La surveillance est un dispositif utilisé pour analyser l’état du système. Elle consiste à détécter et classer les défaillances tout en observant l’état du système en temps réel, puis diagnostiquer [GVA07] pour pouvoir localiser les éléments défaillants et déteminer les causes. En général, La conception d’une supervision performante repose sur la combinaison des techniques de surveillance et de diagnostic. De ce fait dans les RCSF, Certains nœuds capteurs peuvent être bloqués ou tomber en panne à cause d’un manque d’énergie, d’un dégât matériel ou d’une interférence environnementale. La panne d’un nœud capteur ne doit pas affecter le fonctionnement global de son réseau. C’est le problème de fiabilité ou de tolérance aux pannes. Pour la résolution de ces problèmes, plusieurs approches centralisées ont été proposées qui se base sur le diagnostic et la reconfiguration au niveau du sink ce qui provoque plusieurs inconvénients tel que : La surcharge du module, La surcharge du réseau par les messages de contrôle , les délais de transmission qui peuvent retardés la détection des défauts, et le plus grand désavantage est la défaillance du module sink.

La surveillance des Réseaux de Capteurs Sans Fil

32

Dans ces circonstances, on présentera dans ce chapitre une méthode décentralisée qui visent la reconfiguration du réseau en cas de défaillance en se fondant sur le principe de redondance avec quelque propriétés de la théorie des graphes afin de maintenir le réseau connexe tout en couvrant la totalité de la zone de capture.

La surveillance des Réseaux de Capteurs Sans Fil

2.1

33

La supervision des RCSF

Un superviseur a pour objectif d’assurer le bon déroulement d’une mission en présence de problèmes et de gérer le meilleur fonctionnement possible. De ce principe, la surveillance des réseaux de capteurs consiste à détécter les défaults et les pannes ensuite générer des solutions en temps réel pour gardé la longévité du réseau. Les pannes peuvent se produire à cause d’un défaut au niveau logiciel ou d’une erreur humaine. Dans les RCSF, la panne est généralement déclanchée à cause de l’épuisement d’énergie d’un nœud qui est provoqué par la surcharge du réseau avec les messages de contrôles et même à cause des contraintes dans lequel le réseau est déployé.

2.1.1

Les Pannes

Une faille (ou panne) du système se produit lorsque son comportement devient inconsistant et ne fournit pas le résultat voulu. La panne est une conséquence d’une ou plusieurs erreurs. Une erreur représente un état invalide du système du à une faute (défaut). La faute est donc la première cause de l’erreur, cette dernière provoque la faille du système. 2.1.1.1

Classification des pannes

Le schéma suivant montre une classification générale selon la durée, la cause ou le comportement d’une panne : A. Pannes selon durée : a1. [Transitoire :] Conséquence d’un impact environnemental temporaire, elle peut éventuellement disparaître sans au-

La surveillance des Réseaux de Capteurs Sans Fil

34

F IG . 2.1 – Classification des pannes [CHE08].

cune intervention. a2. [Intermittente :] Variante de la panne transitoire, elle se produit occasionnellement et de façon imprévisible. Elle est généralement dûe à l’instabilité de certaines caractéristiques matérielles ou à l’exécution du programme dans un espace particulier de l’environnement. a3. [Permanente :] continue et stable dans le temps, la panne permanente persiste tant qu’il n’y a pas d’intervention externe pour l’éliminer. Un changement physique dans un composant provoque une panne matérielle permanente. B. Pannes selon la cause : b1. [Panne de design :] Dûe à une mauvaise structuration du réseau ou du composant en particulier. En pratique, ce genre de panne ne devrait pas exister grâce aux tests et simulations avant la réalisation finale du réseau ; b2. [Panne opérationnelle :] Qui se produit durant le fonction-

La surveillance des Réseaux de Capteurs Sans Fil

35

nement du système. Elle est généralement dûe aux causes physiques. En outre, on peut distinguer, spécialement pour les réseaux de capteurs, trois principales causes : L’énergie, Sécurité et Transmission. C. Pannes selon le comportement résultant : c1. [Panne accidentelle (Crash) :] Le composant soit, il s’arrête complètement de fonctionner ou bien continue mais sans retourner à un état stable (valide). c2. [Panne d’omission :] Le composant n’est plus capable d’améliorer son service (échec total). c3. [Panne de synchronisation (Timing) :] Le composant effectue son traitement mais fournit le résultat en retard. C4. [Panne Byzantine :] Cette panne est de nature arbitraire ; le comportement du composant est donc imprévisible. Dû à des attaques très malicieuses, ce type de pannes est considéré le plus difficile à gérer. 2.1.2

Solution architecturale tolérante aux pannes dans les RCSF

La solution peut être classifiée en 3 catégorie : § Gestion de la batterie : Cette catégorie est considérée comme une approche préventive, où les protocoles définissent une distribution uniforme pour la dissipation d’énergie entre les différents nœuds capteurs ; afin de mieux gérer la consommation d’énergie et l’augmentation de la durée de vie de réseau. En outre, le mécanisme de mise en veille est une technique de gestion de batterie. En effet, les protocoles déterminent des délais de mise en veille des nœuds capteurs inactifs pour une meilleure

La surveillance des Réseaux de Capteurs Sans Fil

36

conservation d’énergie[FEL07]. § Gestion de flux : Cette catégorie regroupe les techniques qui définissent des protocoles de gestion de transfert des données (routage, sélection de canal de transmission...etc.). Nous pouvons trouver des approches préventives ou curatives sur les différentes couches (réseau, liaison de données...etc.) telles que : Routage multi-chemin : Utilise un algorithme préventif pour déterminer plusieurs chemins depuis chaque capteur vers le nœud collecteur. Ceci garantit la présence de plus d’un chemin fiable pour la transmission et offre une reprise rapide du transfert en cas de panne sur le premier chemin sélectionné (choisir un des chemins qui restent). Recouvrement de route : Après détection de panne, une technique curative permet de créer un nouveau chemin plus fiable pour retransmettre les données. Allocation de canal : Cette solution, implémentée au niveau MAC, effectue une allocation du canal de transmission d’une manière à diminuer les interférences entre les nœuds voisins et éviter les collisions durant le transfert. Mobilité : Certains protocoles proposent comme solution tolérante aux pannes la sélection d’un ensemble de nœuds mobiles chargés de se déplacer entre les capteurs et collecter les données captées. Ceci réduira l’énergie consommée au niveau de chaque capteur en éliminant sa tâche de transmission. Un nœud mobile est généralement doté d’une batterie plus importante que celle d’un nœud capteur. § Gestion des données : Les protocoles classés dans cette catégorie offrent une meilleure gestion de données et de leur traitement. Deux principales sous-catégories sont déterminées :

La surveillance des Réseaux de Capteurs Sans Fil

37

Agrégation : Considérée comme approche préventive, l’opération d’agrégation effectue un traitement supplémentaire sur les données brutes captées depuis l’environnement. Un nœud agrégateur combine les données provenant de plusieurs nœuds en une information significative ; ce qui réduit considérablement la quantité de données transmises, demande moins d’énergie et augmente ainsi la durée de vie du réseau. Clustering : Une des importantes approches pour traiter la structure d’un réseau de capteurs est le clustering. Il permet la formation d’un backbone virtuel qui améliore l’utilisation des ressources rares telles que la bande passante et l’énergie. Par ailleurs, le clustering aide à réaliser du multiplexage entre différents clusters. En outre, il améliore les performances des algorithmes de routage. Plusieurs protocoles utilisent cette approche préventive [FEL07].

2.1.3

Aspect de surveillance d’un RCSF

2.1.3.1

Méthodologie de déploiement :

Les capteurs peuvent généralement être placés dans une zone d’intérêt, soit déterministe ou aléatoire. Le choix de la stratégie de déploiement dépond du type de capteurs, l’application et l’environnement de fonctionnement du capteur. Le déploiement contrôlé des nœuds est viable, et souvent nécessaire lorsque les capteurs sont chers, ou lorsque leur fonctionnement est sensiblement affecté par leur position. Dans certaines applications, la distribution aléatoire des nœuds est la seule option possible. Cela est particulièrement vrai pour les environnements difficiles tels que le champ de bataille ou une région de catastrophe. Selon la distribution des nœuds et le niveau de redondance, le déploiement aléatoire des nœuds peut atteindre les objectifs

La surveillance des Réseaux de Capteurs Sans Fil

38

de performance.

F IG . 2.2 – Stratégies de déploiement des noeuds dans un RCSF[YAK].

2.1.3.2

Connectivité du réseau

Un réseau de capteur sans fil est dit connecté si et seulement s’il existe au moins une route entre chaque paire de nœuds [MER03]. La connectivité dépend essentiellement de l’existence des routes. Elle est affectée par les changements de topologie causés par la mobilité ou la défaillance des nœuds [BEC09]. Le principe est que la bonne couverture sera rendue lorsque Tr est un multiple de Sr . Cependant, si la portée de communication est limitée, par exemple, Tr = Sr , la connectivité devient un problème important, sauf si la redondance en matière de couverture est provisionnée. L’une des méthodes utilisées a été proposée par "J. Bredin, E. Demaine, M. Taghi Hajiaghayi, and D. Rus" en 2005 qui se base sur la formulation des RCSFs K-connectés [CSS04]. K-connectivité suppose qu’il existe K chemins indépendants entre chaque paire de nœuds. Pour K> 1, le réseau peut tolérer certains défaillances de liens et garantie une certaine capacité de communication entre les nœuds. Les auteurs étudient le problème du placement des nœuds pour atteindre K-connectivité au moment de configuration du réseau ou de réparer un réseau déconnecté formulent le problème comme un modèle

La surveillance des Réseaux de Capteurs Sans Fil

39

d’optimisation qui cherche à minimiser le nombre de nœuds supplémentaires requis pour maintenir la K-connectivité. 2.1.3.3

La couverture

Le problème de la couverture dans les réseaux de capteurs vidéo n’est pas récent [MSP09]. Plusieurs travaux ont déjà traité ce problème de plusieurs manières. Cependant, il éxiste deux catégories de couverture : - Couverture des cibles pré- déterminées : Consiste à trouver un sousensemble de nœuds connexes et qui assure la surveillance d’un ensemble de cibles dont la position est connue à priori. - Couverture d’une zone : consiste à trouver un sous-ensemble de nœuds connexes et qui assure la surveillance de toute la zone de déploiement. Soit un réseau de n nœuds déployés pour surveiller une région d’intérêt, un nœud est caractérisé par son rayon de couverture r et son rayon de transmission. La couverture dans un réseau de capteur sans fil dépend de la denité des nœuds. Cette densité est donnée par l’équation extraite de [CSS04] : µ(R) = (N ΠR2 )/A Où : - R le rayon de transmission d’un nœud, - A l’air de calcul, - N le nombre de nœuds situé dans l’air A 2.1.3.4

Longévité du réseau

Prolonger la durée de vie du réseau a été l’objectif d’optimisation pour la plupart des protocoles de communication publié pour les réseaux de capteurs. Les positions des nœuds significatives impact sur

La surveillance des Réseaux de Capteurs Sans Fil

40

la durée de vie du réseau. Par exemple, les variations de densité des nœuds dans toute la région peuvent mener à la charge de trafic déséquilibré et provoquer des goulets d’étranglement [HWT05]. Un Réseau de capteur sans fil devient inexploitable quand la connectivité entre ses nœuds est perdue, on dit que le réseau est mort. 2.1.4

La redondance

La redondance d’une façon générale est utilisée pour prévenir un dysfonctionnement dans un sytème. Comme dans le cas des RCSF, la redondance est établie pour étendre la durée de vie du réseau, surtout que cette dernière se rapporte au surnombre des nœuds. La redondance se divise en deux catégories : a) La redondance matérielle ou physique. b) La redondance analytique.

2.1.4.1

La redondance Matérielle

La redondance physique consiste à utiliser plusieurs capteurs, actionneurs, processeurs et logiciels pour mesurer et/ou contrôler une variable particulière. Un principe de vote est appliqué sur les valeurs redondantes pour décider si une faute est présente ou non. Cette approche entraîne un coût important en instrumentation mais s’avère extrêmement fiable et simple à implanter. Elle est mise en œuvre essentiellement sur des systèmes à hauts risques tels que les centrales nucléaires ou les avions. Cette approche est appliquée pour les RCSF, puisque c’est le moyen le plus facile d’obtenir plusieurs informations sur une même variable et de disposer de plusieurs capteurs mesurant la grandeur de cette variable. La redondance physique souffre d’un désavantage majeur : son

La surveillance des Réseaux de Capteurs Sans Fil

41

F IG . 2.3 – La redondance matérielle[RIP99].

coût. Doubler le nombre de capteur revient au moins à doubler le prix de l’organe de mesure. De plus, les contraintes ergonomiques liées à l’installation de ces capteurs peuvent limiter leur utilisation. Les modes qui peuvent être appliqués aux différents niveaux d’un systèmes sont : 1. La redondance active : Elle est adapté pour les systèmes critiques à cause de son principe qui tolère la faute d’un ou de plusieurs composants. 2. La redondance passive : Basé sur la redondance en utilisant une seule copie, appelée "copie primaire" ; alors que les autres copies sont utilisées seulement en cas de défaillance. 3. La redondance hybride : Comme son nom l’indique c’est une combinaison entre les deux redondances cites précédemment. Le choix de la stratégie de redondance se fait en fonction des contraintes et des besoins applicatifs. Dans le cas des réseaux de capteurs sans fil, la réplication active est préférable pour tolérer aux défaillances fréquentes des nœuds capteurs.

La surveillance des Réseaux de Capteurs Sans Fil 2.1.4.2

42

La redondance analytique

Un complément à la redondance physique est d’exploiter les contraintes liant les différentes variables du système. Ces contraintes peuvent souvent s’exprimer sous la forme de relations analytiques liant les variables connues (relations d’entrée/sortie ou de sortie/sortie). Ces relations sont appelées des relations de redondance analytique. Le principe de la surveillance consiste à vérifier si ces relations sont égales à zéro (dans un sens statistique précisé plus loin) en utilisant les mesures prélevées en ligne sur le système. Le concept de redondance analytique repose sur l’utilisation d’un modèle mathématique du système à surveiller.

Définition 1 la structure d’une relation de redondance analytique est la liste minimale des contraintes devant être satisfaites pour que celle-ci le soit également. Chaque contrainte étant associèe à un composant, la structure d’une RRA sera notée en utilisant l’ensemble des composants correspondants. [MAQ03]

L’approche utilisant la redondance analytique se décompose généralement en deux phases distinctes : - La première concerne la génération de résidus caractéristiques de la panne. - La seconde étape concerne la prise de décision qui a trait à la détection et éventuellement à la localisation d’un élément défaillant. Elle met en œuvre des techniques de détection de ruptures et de tests d’hypothèses. Ce principe est souvent difficile à exploiter comme dans le cas des RCSF à cause du changement fréquent de la topologie du réseau liée à l’épuisement de la batterie ou même la mobilité des capteurs. Pour

La surveillance des Réseaux de Capteurs Sans Fil

43

ces raison, la redondance matérielle est utilisée surtout que le coût des capteurs sans fils devient de plus en plus réduit.

2.2

Systèmes Multi-agents

Un système multi-agent (SMA) est un système composé d’un ensemble d’agents, situés dans un certain environnement et interagissant selon certaines relations. Un agent est une entité caractérisée par le fait qu’elle est, au moins partiellement, autonome. Ce peut être un processus, un robot, un être humain, etc. Objet de longue date de recherches en intelligence artificielle distribuée, les systèmes multiagents forment un type intéressant de modélisation de sociétés, et ont à ce titre des champs d’application larges, allant jusqu’aux sciences humaines. En d’autre termes,c’est de faire coopérer un ensemble d’entités (agents) dotées d’un comportement intelligent , coordonner leurs buts et leurs plans d’actions pour résoudre un problème.

2.2.1

Caractéristiques des Systèmes Multi-Agents

– Chaque agent a des informations ou des capacités de résolution de problèmes incomplètes, donc chaque agent a un point de vue limité ; – Il n’y a pas de contrôle global du système ; – Les données sont décentralisées ; – Les calculs sont asynchrone

La surveillance des Réseaux de Capteurs Sans Fil

2.3

44

Les Travaux Antérieurs

Dans le domaine des RCSF(s) plusieurs approches ont été proposées pour remédier aux problèmes trouvés suite au fonctionnement des RCSF(s). Dans ce contexte, les méthodes ou les solutions proposées sont classées en deux catégories : – Les Méthodes Centralisées ; – Les Méthodes Décentralisées. Sachant que les chercheurs s’orientent vers la deuxième catégorie à cause des problèmes de centralisation qui peuvent se résumé en : – Surcharge du module de traitement ; – Surcharge des nœuds par les messages de contrôles.....etc. De ce fait, les travaux concernant les RCSF(s) s’orientent plus vers l’économie d’énergie, la qualité de service et dernièrement vers la surveillance des RCSF(s). En ce qui concerne ce dernier point, on peut citer ce qui suit : Dans " SELF ORGANIZED SENSOR"[YCC05], l’auteur à conçu son protocole de surveillance basé sur la construction d’ un arbre hiérarchique en utilisant le modèle mathématique tels que la théorie des graphes ou d’un diagramme de Voronoi qui s’appliquer à une vaste zone en raison de l’utilisation de la communication multi-sauts ainsi Les données pourraient être agrégées au niveau des nœuds intermédiaires. Il se base sur les points suivants : – Collecter les positions des nœuds ; – Nettoyer les nœuds Redondants et détecter les nœuds frontière ; – Détecter et suivre les objets d’intrusions ; – Réorganiser les nœuds lorsque un nœud meurt. Le nœud redondant est détecter selon sa zone de couverture avec une image binaire.

La surveillance des Réseaux de Capteurs Sans Fil

45

Le Protocole de EEP proposé par SAYAD MAYA [SAY09] apporte des améliorations telles que l’augmentation de la durée de fonctionnement du réseau ainsi que la diminution du delai de transmission. Par conséquent il y’a l’économie d’énergie car la creation des routes est dynamique et se base sur une fonction de coût qui prend en compte le niveau d’énergie des nœuds et leur distance par rapport a la station de base. Les auteurs [BAI10] ont étudiés la surveillance en utilisant l’aide multicritère à la décision en formulant des spécifiques qui sont les ressources limitées en termes de charge et de capacités de stockage et de calcul, ainsi que l’absence d’infrastructure fixe (la mobilité), connectivité, et la distance entre les capteurs faire face aux mauvais comportements qui peuvent le cibler. Dans CFIP09 [MSP09]les auteurs s’intéressent à la surveillance des vidéos des Réseaux De Capteurs Sans Fil ou ils adoptent une approche pour ordonnancer de manière adaptatif l’activité des nœuds vidéo en fonction de la couverture. Ils ce sont dirigés vers un algorithme distribué où chaque nœud organise ses voisins en un ensemble de nœuds disjoint ensuite en se basant sur l’activité, chaque nœud décide s’il reste actif ou non. Simulation s’est établie a base d’un modèle multi-niveaux. Samira ALLAM dans [ALL09] s’interesse au protocole de routage basé sur une approche distribué avec un contexte multi-agent basée sur l’Auto-organisation pour but de ballier d’un système centralisé à un système descentralisé pour garantir la réduction d’énergie consommée. Dans [BEC09] l’auteur à proposé un modéle descentralisé pour la surveillance d’un RCSF en utilisant un simulateur personnel conçu

La surveillance des Réseaux de Capteurs Sans Fil

46

avec C++ pour la validation des tests. Aprés plusieurs recherches, nous avons constaté que la surveillance des RCSF(s) est un domaine qui s’élargie d’où les chercheurs s’intéresse de plus en plus vers cette porte qui a ouvert un autre concept de recherche. De ce fait nous nous sommes basé sur l’application d’une approche distribuée pour les Réseaux De Capteurs Sans Fil et de simulé cette approche sur un simulateur exisant et Open Source. L’approche distribuée ou à Multi-Agents pour : – L’adaptation à la réalité ; – La coopération ; – La résolution de problèmes complexes ; – L’efficacité ; – La fiabilité.

La surveillance des Réseaux de Capteurs Sans Fil

2.4

47

Description de l’approche distribuée (décentralisée)

L’approche suivie consiste à la définition d’un réseau de capteur sans fil avec le principe d’agents : différents rôles attribués aux nœuds pour formé des groupes (zones ou clusters), Ce même algorithme est utilisé pour la réorganisation du réseau en cas de défaillance en utilisant le principe de redondance avec la théorie de graphe. 2.4.1

Topologie du réseau

Le réseau de capteur sans fil est déployé aléatoirement dans une zone, ces nœuds suivent une topologie dynamique c.à.d que les capteurs peuvent bougés ou même l’ajout ou la disparaission des capteurs peut être envisageable. Le réseau est divisé en groupes de capteurs où chaque nœud a un rôle affécté en fonction de ses voisins lors de l’organisation du réseau. Ce principe est suivi pour faire coopérer un ensemble d’entités dotés d’un comportement, cordonner leurs buts et leurs plans d’actions pour résoudre un problème [LEB]. 2.4.2

Définition des rôles

Les rôles peuvent être définis comme suit : a) Nœud Représentant : C’est le nœud qui administre les communications au sein du groupe de capteur. Il assume toutes les requêtes d’envoies de messages des membres de sa région. C’est le nœud qui s’encharge de la communication du groupe avec l’extérieur. Notons qu’un représentant ne peut jamais avoir un voisin du même rôle.

La surveillance des Réseaux de Capteurs Sans Fil

48

b) Nœud Liaison : Permet aux nœuds représentant de communiquer (il est aux frontières de plusieurs groupes de capteurs). Il est chargé d’assumer les communications entre les régions. c) Nœud Simple : N’est autre qu’un simple capteur, il capture de l’information demandée et la faire communiquer au Sink via son représentant. d) Nœud Sink : C’est la station principale qui peut communiquer avec tout les nœuds afin de collecter les informations voulues.

F IG . 2.4 – Organisation en régions des nœuds capteurs [ALL09].

La surveillance des Réseaux de Capteurs Sans Fil 2.4.2.1

49

Algorithme d’attribution de rôle

L’algorithme suivant explique la procédure d’affectation de rôles. AffectationRole { if(NombreVoisin !=0) { if(NbreVoisinRepresentant == 0) //Aucun Représentant voisin alors le capteur le devient. RoleAffecté = Representant ; else { if(NbreVoisinRepresentant == 1)& &(RoleAffecté != Representant) { //il existe un seul représentant lié aux nœuds ce //qui oblige les autres capteurs a devenir des nœuds simple RoleAffecté = Simple ; } else { //plusieurs représentant autour du nœud alors ce //capteur ne peut être qu’un noeud de liaison RoleAffecté = Liaison ; } } } } L’application de tel algorithme mène le réseau a se représenté de la

façon suivante :

La surveillance des Réseaux de Capteurs Sans Fil

50

F IG . 2.5 – Affectation des rôles dans un RCSF.

2.5

Le protocole de routage adopté

Le protocole de routage suivant se base sur le principe d’attribution de rôles qui se compose en plusieurs étape résumées dans les points suivant : • La détection du voisinage ; • Changement de rôles ; • Détection des groupes voisins ; • Résolution de conflits entre représentants ; • Gestion de la redondance. • Mécanisme de détection des pannes. Sachant que les nœuds de ce système intéragissent par envois de messages. Les intéractions entre les 3 agents permettent de comprendre le fonctionnement de ce protocole. Ces intéractions sont définies par rapport au rôle attribué.

La surveillance des Réseaux de Capteurs Sans Fil

2.5.1

51

Les Diagrammes UML

Les Diagrammes suivant la méthode UML, plus précisément le diagramme Etat-Transition et Diagramme de Séquence sont élaborés pour présenter les différents états d’un nœud et pour donner une idée générale et plus claire sur le principe de l’approche suivie.

F IG . 2.6 – Diagramme Etat Transition.

La surveillance des Réseaux de Capteurs Sans Fil

52

F IG . 2.7 – Diagramme De Séquence.

2.5.1.1

La détection du voisinage

Le voisinage d’un nœud est détécté pour assurer la connexion du réseau. Dans ce contexte, Chaque capteur diffuse un message dit "Message HELLO" (à tout les nœuds d’un seul saut). Ce message est défini comme suit : Type Source Destination NSaut

La surveillance des Réseaux de Capteurs Sans Fil

53

Chaque nœuds recevant ce message (HELLO) répond par un message à destination (non rediffusable) structuré ainsi : Type Source Destination Rôle Groupe Position NSaut [BEC09] Par l’envoie de ces messages, tout les nœuds peuvent mettre à jour leurs table de voisinage et de ce principe le changement de rôle peut affécté les nœuds capteur.

2.5.2

Changement de rôles :

Lors de la détection de changement dans la table de voisinage par un nœud. Ce dernier éxécute l’algorithme de changement de rôle expliqué précédemment en envoyant un message "ChangeRole" qui a la structure présenté ci-dessous. Sachant que chaque nœud recevant ce message sera obligé à éxécuté l’algorithme d’attribution de rôles tout en modifiant sa table de voisin. Type Source Destination Rôle Groupe [BEC09]

F IG . 2.8 – Introduction d’un nouveau nœud.

La surveillance des Réseaux de Capteurs Sans Fil

2.5.3

54

Détection des groupes voisins

Les nœuds Représentants sont définis avec une table contenant les groupes voisins. Cette dernière doit être mise à jour suivant la connaissance des nœuds liaisons entre les groupe en se servant du message HELLO. Cette figure présente le fonctionnement cité sur la détection des groupes adjacents.

F IG . 2.9 – Détection des groupes adjacents.

2.5.4

Vérification de la cohérence des groupes :

Le problème d’incohérence peut être détécté par un nœud simple. Parce que ce problème peut être causé si et seulement s’il existe deux groupes disjoint c.à.d les nœuds simples se voient mais leurs représentant ne peuvent pas commnuniquer (Manque d’un nœud liaison). Le schéma suivant illustre ce problème : À l’instant où un nœud détecte l’incohérence, il propage un message "VérifCohérence" qui est formé de : Type Source Destination Rôle Groupe GrpVoisin [BEC09] La réception du message "VérifInconhérence" déclanche la procédure d’attribution de rôle. Aprés l’éxécution de cette procédure et si l’incohérence est confirmée, un nœud Représentant peut changer son rôle en affectant à un autre nœud le rôle Représentant en lui en-

La surveillance des Réseaux de Capteurs Sans Fil

55

F IG . 2.10 – Correction du problème d’incohérence.

voyant le message "PasseReprésentant" comme le montre la structure suivante : Type Source Destination Groupe [BEC09] 2.5.5

Résolution de conflits entre représentants

Un réseau de capteur suit une topologie dynamique, c-à-d la topologie peut changer à cause de la mobilité d’un nœud (épuisement d’énèrgie....). Cette configuration peut produire un conflit entre les groupes dans le cas où deux représentants deviennent voisins. Ce problème peut être résolu à l’aide du message "ResConflit" qui a le format suivant : Type Source Destination Score [BEC09] Sachant que le "Score" défini l’énergie restante de chaque Représentant pour pouvoir désigner le meilleur nœud au niveau d’énèrgie. De ce fait, Le nœud Représentant qui reçoit ce message peut soit resté Représentant si son score est élevé en renvoyant le message "ResConflit", ou devenir un nœud Simple en diffusant le message "ChangeRôle".

La surveillance des Réseaux de Capteurs Sans Fil

56

F IG . 2.11 – Résolution de conflit entre Représentants.

2.5.6

Gestion de la redondance

Un nœud est dit redondant si et seulement s’il existe un autre nœud possédant le même rôle apte d’assurer précisément les mêmes tâches du nœud condidat. Ce mécanisme de gestion de redondance est utilisé pour maintenir une longue du fonctionnement du vie au réseau avec un minimum de nœuds collaborant pour pouvoir réveiller les autres nœuds en cas de défaillance d’un capteur. Ce processus est appliqué sur tous les nœuds dont leurs rôles est soit Simple ou Liaison de la façon suivante : a. N ŒUD S IMPLE : Un nœud Simple "S1" est dit redondant s’il existe un autre nœud Simple "S2" appartenant au même groupe que S1 tel que : distance(S2,R) >= distance(S1,R) R : Nœud Représentant, d : Distance. On peut formuler ce principe en utilisant la propriété de Gabriel :

La surveillance des Réseaux de Capteurs Sans Fil

57

Redondant(S1)/S1Gi ⇒ ∃S2Gi etS1Cercle(S2, Ri )[BEC09]

F IG . 2.12 – Redondance des nœuds simples.

b. N ŒUD L IAISON : Un nœud liaison L1 est considéré redondant si et seulement s’il existe un autre nœud de liaison L2 tel que les représentants Ri couvert par le nœud L1 sont inclus ou égal à l’ensemble des nœuds représentants couvert par L2. On peut formuler ça de la façon suivante : Redondant(L1)/L1Gi ⇒ ∃L2Gi /Grp(L1) ⊆ Grp(L2) [BEC09] - Gi un groupe de nœuds ayant Ri comme représentant. - Lj un nœud liaison dans le groupe Gi . - Grp(Lj ) l’ensemble des groupes adjacents accessibles par Ri à travers le nœud liaison Lj . - Le prédicat Redondant(Lj ) valant "Vrai" quand le nœud Lj est déclaré redondant.

2.5.6.1

Le principe suivi pour gérer la redondance :

La redondance des nœuds est gérer par l’échange des messages. Sachant que seulement le Représentant a l’habilité de changer l’état d’un nœud qui fait partie de son groupe en se basant sur un message "ChangeEtat" qui est envoyé à un nœud précis pour soit le réveiller

La surveillance des Réseaux de Capteurs Sans Fil

58

ou l’endormir. La composition du message est comme suit : Type Source Destination NS [BEC09] Sachant que : - NS "N EW S TATE " est le nouveau état destiné à un nœud par son représentant. Le mécanisme est présenter dans la (Figure 2.13) :

F IG . 2.13 – Changement d’état d’un nœud.

2.5.6.2

Mécanisme de détection des pannes

Le mécansime de détection de pannes est éxploité au niveau de cette approche. Dans ce contexte, l’échange pèrdiodique du message "HELLO" permet au nœud Représentant de découvrir la défaillance des autres nœuds appartenant à son groupe. Le principe peut être décrit dans ces points : ? Le nœud Représentant diffuse pèriodiquement le message "HELLO" aux nœuds actifs. ? Tous nœuds recevant ce message répond par le message "HELLORep" c.à.d que ces nœuds collaborent toujours dans le réseau. ? Le nœud qui ne répond pas, est considéré défaillant par le Représentant, ce dernier réveille tous les nœuds voisins et lance le

La surveillance des Réseaux de Capteurs Sans Fil

59

processus d’affectation des rôles en diffusant le message "ChangeEtat". 2.5.7

Collecte d’information

Un réseau de capteur est configuré pour la collection d’information, tel que la température, la pression, ou des informations multimédia. L’approche utilisée se base sur l’utilisation de deux messages simples de type scalaire Data et DataReq défini comme suit :

Type Source Destination Mesure Type Source Destination Le sink diffuse sa requête en utilisant DataReq à tous les nœuds, Ces derniers exploite ce message selon leurs rôles . . Nœud Liaison : Passe la requête à tous ses représentants voisins. . Nœud Simple : Envoie la valeur mesuré à son représentant. . Nœud Représentant : Répond à la requête en envoyant l’information captée par son groupe en utilisant le chemin optimal qui est connu par l’envoi périodique du message "HELLO" avec le champ "HC"(Hop Count).

La surveillance des Réseaux de Capteurs Sans Fil

2.6

60

Conclusion

Ce chapitre à présenter le protocole utilisé et proposé par [BEC09] pour la gestion de la redondance et la tolérance aux pannes. La nécessité de la longue durée d’un réseau de capteur sans fil pousse les chercheurs a proposés différents mécanismes de consommation d’énergie, surveillance aux niveau de ces réseau. De ce fait, la configuration en groupes permet l’auto-organisation des nœuds sans faire appel au sink. Le déploiment aléatoire des nœuds implique la présence des capteurs redondants, Ces derniers sont mis en veilles afin de minimiser la consommation énergitique des nœuds sachant que ces capteurs sont réveillés en cas de besoin. Dans les chapitres suivant, nous présenterons les outils de simulations existants tout en justifiant notre choix, ainsi on va montrer les résultats de simulation pour valider l’approche étudiée et proposer d’autre suggéstions.

La surveillance des Réseaux de Capteurs Sans Fil

61

Chapitre 3 Simulation de la surveillance en RCSF Les technologies informatiques s’étendent de plus en plus ce qui mène à l’apparition de plusieurs systèmes et ainsi différentes méthodes de gestion. Dans le modèle réseau, l’étude passe essentiellement par l’étude de ses composants atomiques. Ce principe est forcément appliqué pour les réseaux de capteurs sans fil, les différentes propositions des chercheurs pour remédier aux problèmes des RCSF tel que la consommation d’énergie, la durée de fonctionnement du réseau, les contraintes de collecte d’informations... nécessite une phase de test avant la mise en place. Pour cela, la solution la plus fiable et la moins coûteuse consiste en " La Simulation ". La simulation des réseaux de capteurs consiste principalement en la reproduction du comportement et du fonctionnement des nœuds capteurs dans un environnement informatique ; pour des raisons telque : La répétition d’expérience, L’adressage des systèmes complexes, Le gain de temps et la variation des paramètres de simulation alors que la simulation réelle s’avère coûteuse, voir impossible dans quelque cas. Dans ce qui suit, nous parlerons brièvement des simulateurs de

Simulation de la surveillance en RCSF

63

réseaux éxistants, du simulateur choisi pour nos simulations "OMNET++" et de la plate forme des simulations de réseaux de capteur sans fil "CASTALIA".

Simulation de la surveillance en RCSF

3.1

64

Généralités sur la simulation

Dans nos jours, la simulation connaît un essor considérable, et ce grâce à l’intérêt que présente les modèles informatiques des systèmes simulés ; Définition 2 La simulation consiste à la modélisation informatique d’un système quelconque, en offrant une représentation de toutes les entités de ce système, leurs comportements propres, ainsi que leurs interactions. Elle met à la disposition de l’utilisateur un environnement d’expérimentation dont on peut faire varier les paramètres.

Grâce aux progrès réalisés dans le domaine du développement et des techniques de programmation, nous disposons aujourd’hui de langages de programmation trés puissants. Ainsi, il devient possible de réaliser un simulateur dans un environnement de programmation existant.

3.2

Types de simulation

En fonction du type d’évènements dans la simulation, nous distinguons deux types de systèmes de simulation : les systèmes discrets et les systèmes continus.

3.2.1

Systèmes de simulation discret :

Sont des systèmes pour lesquels les variables concernées par la simulation ne changent d’état qu’en un nombre fini de points sur l’axe du temps. On appelle également ces systèmes : systèmes de simula-

Simulation de la surveillance en RCSF

65

tion à évènements discrets.

3.2.2

Systèmes de simulation continue :

Ce sont des systèmes pour lesquels les variables peuvent changer d’état à n’importe quel instant pendant la simulation.

3.3

Les simulateurs de réseau éxistant

Il existe plusieurs simulateurs de réseau tel que : NS2, OMNET++, OPNET, GLOMOSIM, JSIM...etc. [TBL08][CET05] Parmi ceux, on va cité quelques simulateurs comme NS2, GLOMOSIM et bien sur notre simulateur OMNET++.

3.3.1

NS2 :

NS est un simulateur à évènements discrets trés répandu dans le domaine de la recherche pour tout ce qui se refère aux réseaux. L’utilisation de l’appéllation "NS2" précise la version du simulateur NS. Il constitue un support important pour la simulation de protocoles TCP, protocoles de routage, protocoles de multicast. Le developpement de NS suit une approche orientée objet qui utilise deux langages de programmation : C++ et TCL. Les modules de base du simulateur et les protocoles sont implémentés en C++ avec une couche TCL au-dessus, qui fournit une interface flexible et facile à utiliser [5]. La figure suivante illustre les différents composants internes du simulateur :

Simulation de la surveillance en RCSF

66

F IG . 3.1 – Description architecturale du simulateur NS2.

3.3.2

GloMoSim

GloMoSim (Global Mobile information system Simulator) a été conçu selon une architecture orientée « couche » similaire que celle des sept couches OSI pour les réseaux [MAK08]. Il a été développé au laboratoire UCLA Parallel Computing Laboratory en utilisant le langage PARSEC. PARSEC (PARallel Simulation Environnement for Complex system) est un langage de programmation dérivé du langage MAISIE. Tous deux sont destinés à la simulation à évènements discrets. Ils ont été développés à partir du langage C à l’université UCLA (University Califorinia Los Angeles).

Simulation de la surveillance en RCSF

67

Le transfert de paquets dans GloMoSim se fait selon le schéma suivant :

F IG . 3.2 – Transfert des paquets dans GloMoSim.

Simulation de la surveillance en RCSF

3.3.3

68

OMNET++

OMNeT++ IDE (Integrated Development Environment ) est basé sur la plateforme Eclipse. C’est un environnement open source qui fournit des outils pour la création et la configuration des modèles de réseaux (les fichiers NED et INI) et des outils pour l’éxécution d’un lot de programmes ainsi que pour l’analyse des résultats de simulation [MSK05]. OMNeT++ semble être le meilleur parmi les solutions open source et freeware. OMNeT++ semble séduire de plus en plus la communauté scientifique et un nombre croissant de modèles sont disponibles. Dans ce qui suit, il aura une vue plus détaillée sur le simulateur ainsi les raisons du choix de ce simulateur.

3.4

Comparaison entre les simulateurs

La simulation est souvent moins chère que l’expérimentation et comporte beaucoup moins de risques lorsque l’homme fait partie du système étudié. Les résultats peuvent être obtenus beaucoup plus rapidement. La simulation (surtout numérique) est basée sur une connaissance des phénomènes qui ne peut être obtenue que par l’expérimentation. Une simulation ne peut donc être réalisée que si on dispose d’un acquis de connaissances suffisant obtenues par des expérimentations sur des phénomènes antérieurs et analogues. Quelle que soit la qualité de la simulation, elle ne remplace pas totalement l’expérimentation. Voici un tableau général décrivant les avantages et inconvénients des simulateurs décrit auparavant [RSA09] :

Simulation de la surveillance en RCSF

69

Simulateurs Avantages NS2

Inconvénients

◦ Utilise l’Orienté Objet,

◦ Conçu pour les réseaux filaires, ◦ Permet la simulation des ◦ Difficulté d’ajout de comportements des proto- nouveau modèles à cause coles standard,

des dépendances entre modules, ◦ Nombreux protocoles ◦ Intégration difficile à disponibles, d’autres applications, ◦ Simulateur Couches.

Multi- ◦ La faible performance des simulations de réseaux importants, ◦ Scénario de simulation décrit en Otcl.

GloMoSim

◦ Initialement conçu pour ◦ Nécessité de maitriser les réseaux sans fil (Surtout le Parsec pour toute perles réseaux Ad Hoc), sonnalisation autour du noyau, ◦ Exécution des simula- ◦ Installation assez comtions relativement rapide, plexe. ◦ Environnement de simulation parallélisable.

OMNET++

◦ Architecture modulaire permettant l’intégration de nouveaux modèles, ◦ Utilisation du C++ (et ré-

◦ Ne prend pas en charge le cas des réseaux de capteurs. ◦ Peu de modèles pour les

cemment du C#) pour le réseaux sans fils, développement du noyau, ◦ Les classes de base du ◦ Description des modèles simulateur peuvent être en langage NED. étendues et personnalisées, ◦ Conception de modèles se rapprochant de la réalité

Simulation de la surveillance en RCSF

3.5

70

Le Simulateur OMNET++(Objective Modular Network Testbed in C++)

3.5.1

Choix du simulateur OMNET++

Le déploiement d’un réseau de capteurs exige une étape de simulation avant son installation sur site. La simulation permet de tester à moindre coût les performances d’une solution. OMNeT++ est un environnement de simulation à événements discrets basé sur le langage C++, une application open source et sous licence GNU [IDE04]. Il est totalement programmable, paramétrable et modulaire ainsi grâce à son architecture flexible et générique, il a été utilisé avec succès dans divers domaines, notamment [OMN04] [?] : – La modélisation de réseaux de file d’attente, – La modélisation de protocoles de communication, – La validation des architectures hardware, – L’évaluation de performances pour des systèmes software complexes. OMNET++ sera notre environnement de simulation, grâce à son architecture modulaire, il s’agira d’étendre le simulateur en implémentant un nouveau modèle spécifique aux réseaux de capteurs. 3.5.2

Présentation d’OMNET++

OMNET++ est un environnement de simulation à évènements discrets. Utilisé pour la simulation des réseaux de communication, et d’autres systèmes distribués [ABD09]. Grâce à son architecture modulaire, OMNET++ est très largement répandu dans divers domaines d’applications tel que :

Simulation de la surveillance en RCSF

71

F IG . 3.3 – Le lancement du simulateur Omnet++.

– La modélisation des protocoles de communications, – La modélisation des réseaux filaires et sans fils, – La modélisation des systèmes répartis, – Les architectures HardWare, – En général, il peut être utilisé pour n’importe quel système à évènements discrets pouvant être modélisé selon des entités communiquant par envoient de messages. OMNET++ est basé sur la plateforme Eclipse. [?] Il fournit des outils pour la création et la configuration des modèles de réseaux (les fichiers NED et INI) et des outils pour l’exécution d’un lot de programmes ainsi que pour l’analyse des résultats de simulation. 3.5.3

Desciption architecturale d’OMNET++

Les modèles OMNET++ constituent en un ensemble de modules hiérarchiquement emboités tel qu’il est montré dans la (Figure 3.4) :

Simulation de la surveillance en RCSF

72

Les modules Simples sont écrits en C++ en utilisant la librairie de

F IG . 3.4 – Architecture modulaire du simulateur Omnet++.

simulation d’OMNET++, Ces derniers contiennent des algorithmes relatifs au modèle implémenté. Le groupement des modules simples constitue des modules composés sachant que leurs communications sont gérées grâce à des connexions entre les modules via des " gates (ports) ". Au niveau plus élevé, le module système est crée par l’utilisateur. C’est un module spécial qui n’a pas de connexions avec l’environnement extérieur, mais plutôt avec ses composants internes(Modules simples et composés) [IDE04]. Les modules peuvent s’attribuer des paramètres assignés aux modules dans les fichiers de description de réseaux (fichiers NED) ou encore dans le fichier de configuration « omnetpp.ini ». Ces paramètres sont utiles pour la personnalisation du comportement des modules simples ou encore pour le paramétrage de la topologie du modèle. 3.5.4

Installation du simulateur OMNET++

L’installation d’OMNET++ se fait en différentes étapes suivant une procédure d’installation décrite dans le package téléchargé selon le système d’éxploitation installé [OMN10]. Les éléments installés sur

Simulation de la surveillance en RCSF

73

l’ordinateur seront les suivants : . Une bibliothèque de simulation interne. . Un compilateur du langage descriptif de la topologie NED (nedc). . . . .

Un éditeur de réseaux graphiques pour les fichiers NED (GNED). Un éxécutable Omnet++. Une Interface graphique de simulation IDE. Un outil de documentation de modèle (opp_neddoc).

. Autres utilitaires (l’outil de création makefile, etc.). . Une documentation, des simulations types, etc. 3.5.5

Les principaux fichiers d’OMNET++

Les différents fichiers sont [OMN04] : 3.5.5.1

Fichier (.Ned) :

Utilise le langage NED de description de réseau. Il peut être utilisé en 2 modes : Mode Graphique ou Mode Texte qui permettent de décrire les paramètres et les ports du module. Les erreurs comisent sont indiquées en temps réel par un point rouge situé à la gauche du code. Un exemple de fichier Ned en mode "Source" & "Graphique" sont présentés dans la(Figure 3.5) et (Figure 3.6).

Simulation de la surveillance en RCSF

F IG . 3.5 – Fichier NED en mode graphique.

F IG . 3.6 – Fichier NED en mode texte.

74

Simulation de la surveillance en RCSF 3.5.5.2

75

Fichier (.ini) :

Est lié étroitement avec le fichier NED. Permet à l’utilisateur d’initialisé les paramètres des différents modules ainsi la topologie du réseau. Voici un exemple présenté ci-dessous :

F IG . 3.7 – Exemple d’un Fichier *.Ini.

3.5.5.3

Fichier (.msg) :

Les modules communiquent en échangeant des messages. Ces dérniers peuvent être déclarés dans un fichier dont l’extension est (.msg) où l’on peut ajouter des champs de données. OMNeT++ traduira les définitions de messages en classes C++. Le diagramme suivant peut donner une idée plus détaillé sur le développement d’éxécution d’une simulaion sous Omnet.

Simulation de la surveillance en RCSF

76

F IG . 3.8 – Exécution d’une simulation sous OMNeT++.[?]

3.6

Les plates formes d’OMNET++

Le simulateur OMNeT++ n’est pas spécilisé pour les réseaux de capteurs sans fils, Pour cela il existe plusieurs extentions, plate forme et simulateurs basés sur OMNET++ qui essayent d’introduire ce manque comme "Mobility FrameWork", "Mixim", "Castalia" ...etc

3.6.1

Mobility FrameWork

Cette plate forme assure la mobilité des hôtes dans le réseau, leurs connectivité ainsi un canal sans fil. Elle supporte la simulation des réseaux sans fil, les réseaux mobiles et même les réseaux de capteurs sans fil [LWI07]. Pour information, Mobility FrameWork 2005 était la plate forme préférée pour la simulation des réseaux Ad Hoc. Elle est réalisée avec des modules de base, donc l’utilisateur peut les utilisés afin de créer et d’implémenter de nouveaux protocoles pour la simulation.

Simulation de la surveillance en RCSF

77

Le cœur de Mobility FrameWork est composé de [DSR03] : – Mobility Controller (Gestion de la mobilité). – Channel Control (La gestion dynamique de connexion entre les hôtes.

F IG . 3.9 – Architecture de Mobility et Channel Control.

La simulation d’un réseau avec une tel plate forme est basé sur la compréhension du principe et des propriétés de fonctionnement de Mobility FrameWork (détaillé dans ce qui suit). 3.6.1.1

La structure d’une hôte mobile

La structure interne d’un nœud (Hôte) en Mobility FrameWork est schématisé dans la figure suivante [LWI07] :

Simulation de la surveillance en RCSF

78

F IG . 3.10 – Architecture interne d’un nœud dans MF.

3.6.2

Mixim

Mixim [ABD09] est un simulateur qui intègre et développe plusieurs cadres existants pour les simulations sans fil et mobiles dans OMNeT++. Bien que OMNeT++ n’a pas un soutien clair des modèles de simulation pour la communication sans fil, Mixim fournit des modèles détaillés de canal sans fil (décoloration, etc), la connectivité sans fil, la mobilité, les obstacles et les protocoles MAC comme IEEE 802.11b et IEEE 802.15.4. Mixim propose des modules pour une mise en œuvre facile de nouvelles protocoles MAC comme Time Division Multiple Access (TDMA) ou en fonction des protocoles hybrides (p. ex Z-MAC). Mixim est écrit avec le langage C++ comme Castalia et OMNeT++. 3.6.3

Castalia

Castalia [ABD09] [LIL09] est également un simulateur de niveau pour les réseaux de capteurs basé sur OMNeT++. Il s’agit d’un simulateur générique avec un canal sans fil et un modèle de radio basé sur

Simulation de la surveillance en RCSF

79

des données mesurées . Comme il est illustré à la (Figure 3.11), Castalia définit trois modules principaux : le nœud, Processus physiques et les canaux sans fil. Castalia est développé avec le C + +.

F IG . 3.11 – Les connections des modules sous Castalia.

Le module nœud est en fait un composite.La (Figure 3.12) montre la structure interne du module nœud. Les flèches pleines signifient le passage de message et les flèches en pointillés signifient une interface entre les modules et les appels fonctions. Par exemple, la plupart des modules font appele au gestionnaire de ressources pour signaler la consommation d’énergie. Le Module d’application est le plus touché par l’utilisateur, le plus souvent par la création d’un nouveau module pour mettre en œuvre un nouvel algorithme. Les modules MAC, Routage, ainsi que le module de mobilité, sont également modifiés, généralement la création d’un nouveau module est en cause pour la création d’un nouveau protocole. Tous les modules existants sont très accordés par de nombreux paramètres. Remarque 1 D’aprés la description des 3 plates formes précédentes, on peux facilement conclure que la plate forme "Castalia" est la plus appro-

Simulation de la surveillance en RCSF

80

F IG . 3.12 – Les principaux composants d’un nœud .

priée pour notre projet. Son cadre de "Wsn" nous facilite le traitement de notre application ainsi que l’évaluation du nouveau protocole. En plus Castalia est basé sur OMNeT++ l’un des simulateurs les plus populaires pour les Réseaux de capteurs sans fils.

3.7

Détails sur Castalia

Comme il est décrit précédemment Castalia est une plate forme sous OMNeT++ conçue particulièrement pour les RCSF [SAY09] . La structure de Castalia [BOU10] est également reflétée dans l’hiérarchie avec un code source. Chaque module contient un dossier "ned" qui définit le module lui même. Si le module est composé, les sousrépertoires existant définissent les sous-modules avec un code de C++ (cc, dossiers de h) qui définit son comportement. Cette hiérarchie complète des dossiers "ned" définit la structure globale du simulateur de Castalia. Les principaux modules de Castalia sont :

Simulation de la surveillance en RCSF

3.7.1

81

Le module MAC

La couche MAC joue un rôle trés important en infectant les différents états aux nœuds pour améliorer l’efficacité énergétique : nœud en état de transmission (Transmit), d’écoute (Idle),ou en sommeil (Sleep). Le module "Radio" modifie ces états en fonctions des cas particuliers. Les utilisateurs peuvent modifiés les paramètres aux exemples illustrés au niveau de Castalia pour la couche MAC en utilisant le fichier de configuration OMNeT++ (. ini). Par un simple réglage de certains paramètres des fichiers MAC "CSMA/CA", "TMAC", et "l’AMCC" de différents simulations seront gérés. 3.7.2

Le module Radio

Il est conçu sur la base des réseaux de capteurs sans fil avec trois états : le sommeil, la transmission et l’écoute. En outre, la consommation d’énergie sera différentes dans chaque Etat. C’est la caractéristique principale de ce module. La figure a état fini peux donner une idée générale sur le changement d’état.

F IG . 3.13 – La machine à état fini du module Radio.

Simulation de la surveillance en RCSF

3.7.3

82

Canal sans fil

Le module du canal sans fil est conçu pour modéliser l’environnement sans fil, qui est une évolution dynamique de l’environnement pour le nœud statique et mobile. Il ya quatre principaux modèles de canal sans fil qui sont conçus : 1) la modélisation moyenne de perte de trajet ; 2) la modélisation des variations temporelles ; 3) les interférences ; 4) la modélisation simple . Castalia utilise certaines formules pour estimer chacun des quatre modèles selon de nombreuses expériences réalistes. 3.7.4

Le module Routage

La fonction la plus importante du module de réseau est de recevoir le message de MAC module, et envoyer un message à la demande. Il dépend des informations d’entête, Il existe deux types d’algorithmes de routage dans Castalia : simpleTreeRouting et multipathRingsRouting. Tous les modules de routage partagent 3 paramètres sont : 1) maxNetFrameSize :détermine la taille maximum de paquet. 2) le netDataFrameOverhead : place les frais généraux supplémentaires aux paquets d’application, 3) netBufferSize indique la taille de l’amortisseur trouvé dans le module. 3.7.5

Le module Application

Le module Application est le module principal utilisé pour contrôler d’autres modules tels que le module de gestion des ressources, module de traitement physique, le module de routage, et le module

Simulation de la surveillance en RCSF

83

radio. Ainsi ce module utilise également le mécanisme de message pour effectuer des actions différentes.

3.8

Outils de Simulation

L’installation du simulateur OMNET++ et la plate forme Castalia est comme suit : 3.8.1

Installation d’OMNET++ Version 4

Avant de commencer l’installation, il faut tout d’abord télécharger le code source omnetpp4 du site (http://www.omnetpp.org/) sans oublié de vérifié la version Linux, ensuite copier la source dans le dossier voulue et se positionner avec l’invite de commande dans ce dossier et suivre les étapes suivantes : 1. sudo tar zxf omnetpp-4.0b2-src.tgz -C /usr/local/ ; 2. cd /usr/local ; 3. sudo ln -s omnetpp-4.0b2 omnetpp ; 4. sudo apt-get install bison, flex, blt, lmodern, giftrans, doxygen, libxml2-dev, graphviz, imagemagick ; 5. sudo apt-get install tcl8.4, tk8.4, tcl8.4-dev, tk8.4-dev ; 6. export LD_LIBRARY_PATH=$LD_LIBRARY_PATH : /usr/local/omnetpp/lib ; 7. export TCL_LIBRARY=/usr/share/tcltk/tcl8.4 ; 8. export PATH=$PATH :/usr/local/omnetpp/bin ; 9. cd /usr/local/omnetpp ; 10. sudo ./configure ; 11. sudo make . Remarque 2 Les étapes 6, 7, 8 doivent être ajouté dans le fichier "∼/.bashrc" pour de futur convenance.

Simulation de la surveillance en RCSF

3.8.2

84

Installation de Castalia3.1

Les étapes sont les suivantes [BOU10] : 1. Décompression de l’archive Castalia déja télecharger à partir du site (http://castalia.npc.nicta.com.au/download.php)avec la commande : xzf castalia.tgz ; 2. Importation du projet dans OMNeT++ ide : Aprés avoir lancer Omnet++, l’importation du projet se fait avec un clique droit sur "General->Exiting project into workspace" et en choisir la racine du projet. 3. Exécution d’un exemple : Une fois l’importation est en complet, un click droit sur le fichier omnetpp.ini de n’importe quel exemple lance la simulation et génére un fichier *.txt qui se définit comme le fichier trace de la simulation. 3.8.2.1

Les Commandes Castalia

Faut se situé dans le répertoire voulu : 1. ../../bin/Castalia Affiche la liste des fichiers et des configurations. 2. ../../bin/Castalia -c General Commencer l’éxécution de la configuration. Ce qui donne un fichier trace. 3. CastaliaResults Affiche les résultats obtenus lors de l’éxécution. 4. CastaliaPlot Affiche le graphe des simulations.

3.9

Implémentation d’un réseau

Castalia a pris en considération le développement de nouveaux protocoles au sein de cette plate forme. Dans ce contexte, les fichiers template facilite la création d’un nouveau réseau avec les différents

Simulation de la surveillance en RCSF

85

couches. Pour l’implémentation il suffit de copier les fichiers nécéssaires dans un nouveau répertoire de votre choix. Nous avons adopté ce principe et créer un nouveau répertoire appelé "RCSF" ensuite copier les fichiers "yourNetwork.ned", "yourApplication.ned", "yourHost.ned", "omnetpp.ini". Ces derniers contiennent des racines de procédures, où chacun peut modifié et élaboré son protocole. Le programme sera complet que par l’ajout et la programmation des fichiers ".cc", ".h", ".msg" des différents modules. Une fois que tous les fichiers sont complet, la plateforme Castalia prendra en considération ce nouveau réseau seulement en éxécutant les étapes de compilation suivante : 1. Créer le fichier Makefile en éxécutant " opp_makemake -f" 2. Compiler en utilisant "make". Aprés ces étapes, et seulement s’il n’existe pas d’erreurs un nouveau fichier "youNetwork" sera créer, en l’éxécutant la simulation commencera.

Simulation de la surveillance en RCSF

3.10

86

Conculsion

Dans ce chapitre nous avons présentés les différents simulateurs existant pour les réseaux de capteur sans fil. Parmi ces simulateurs, notre choix a été fixé sur OMNET++ essentiellement à cause de sa construction modulaire et sa fléxibilté. Le manque du simulateur OMNET++ au niveau des prtocoles de réseaux de capteur à été sollutionné avec l’implémentation des différentes plates formes tel que : Castalia. Dans le chapitre suivant, on décrira nos étapes de programmation du protocole proposé dans le chapitre 2, le plus intégré au sein du simulateur OMNeT++ et Castalia au niveau des différentes couches ainsi on analysera les résultats de simulation d’un réseau avec et sans redondance.

Simulation de la surveillance en RCSF

87

Chapitre 4 Implémentation et Simulation L’évolution de l’informatique a été marquée par l’apparition de systèmes microélectromécaniques miniaturisés : les réseaux de capteurs sans fil. De nombreuses applications nouvelles émergent chaque jour de ces systèmes, mais il reste encore de nombreux défis à relever. Pour résoudre les problèmes posés par la conception des réseaux de capteurs, il est impératif de passer par la simulation de ces réseaux. Cependant, de tels réseaux ne sont jamais complètement pris en charge par les simulateurs de réseaux existants. La nécessité de passer par la simulation a déjà été démontrée précédemment. Notre étude sur quelques simulateurs réseaux nous a conduit à choisir un simulateur en particulier : OMNET++. Il a fallu peser les avantages et inconvénients présentés par chacun des simulateurs et faire des compromis dans ce sens. Notre travail consiste, à la base, à adapter un simulateur de réseaux (OMNET++) avec l’utilisation de Castalia au cas particulier des réseaux de capteurs. Dans ce chapitre , il aura une présentation détaillée sur l’implé-

Implémentation et Simulation

89

mentation de notre méthode de surveillance ainsi les résultats obtenus qui seront discutés dans ce même chapitre.

Implémentation et Simulation

4.1

90

Environnement de travail

Nous allons détaillés les outils utilisés dans la réalisation de notre simulation. 4.1.1

Environnement matériel

La simulation a été réalisée sur un ordinateur Acer dont la configuration est : Processeur

Core2Duo 2.0 GHz

Mémoire

2GB DDR2

Disque dur

160 GO

Carte Memoire 2 Go 4.1.2

Environnement logiciel

Notre simulation a été réalisée dans l’environnement logiciel suivant : – Système d’exploitation : Linux Distribution Ubuntu. – Le simulateur OMNet++ 4.0 ; – Le Simulateur Castalia 3.1.

4.2

Processus de simulation

Voici le processus de simulation que nous avons adopté pour l’élaboration de notre projet résumé dans la (Figure 4.1)

Implémentation et Simulation

91

F IG . 4.1 – Processus de Simulation.

4.3 4.3.1

Réalisation du projet Objectif

Notre objectif est d’ajouter au niveau du simulateur Castalia une nouvelle approche et ainsi de tester la validité de cette dernière. Suite à ça, nous nous sommes trouvés face à implémenter complètement un nouveau module dans la couche réseau et d’ajouter de nouveaux concepts aux niveau des autres couches pour pouvoir atteindre notre but. Pour cela, nous avons tout d’abord créer un module "nœud" avec tout ses sous modules, ensuite implémenter les différents messages utilisés et ensuite programmer le module de la couche Réseau et enfin simuler notre approche. 4.3.2

Description de la conception d’un nœud

Un réseau de capteur sans fil est caractérisé par le deployement aléatoire des nœuds.

Implémentation et Simulation

92

Pour notre simulation, la 1ere chose qu’on devait modélisé est le module nœud avec ses différents sous modules (La pile protocolaire). Pour une vue mieu explicatif, le fichier graphique ".Ned" illustre les différents modules utilisés. module WsnNode { parameters : double numHosts ; @display("bgb=250,250,white ;bgp=10,10 ;i=misc/node_vs,gold") ; gates : input radio @directIn ; submodules : Les modules qui compose le nœud battery : Battery @display("p=200,65,i=block/bucket") ; basicMobility : BasicMobility { @display("p=206,174") ; } nic : Nic { @display("p=94,190 ;i=device/card") ; } wsnNetwLayer : WsnNetwLayer { @display("p=103,117") ; } wsnApplLayer : WsnApplLayer { @display("p=94,41") ; } connections : }

Implémentation et Simulation

93

F IG . 4.2 – Fichier graphique ".ned" du nœud.

D’aprés les 2 fichiers, on peut résumé que le nœud dans notre simulation a été conçu de sorte a ce qu’il contient les différentes couches décrites par les sous modules comme suit (Du haut en bas) : Couche Réelle

sous Module décrivant la couche

Couche Application WsnApplLayer Couche Réseau

WsnNetwLayer

Couche Phy + MAC Nic En plus de ces sous modules, il existe les sous modules suivants : "Battery" : un réseau de capteur est nécéssairement modélisé par une batterie au niveau de chaque capteur. "mobility" : Pour pouvoir définir la topologie du réseau ainsi pour connaitre la position de chaque capteur. Dans les section suivantes, on détailera la programmation de chaque couches avec leurs code ".cc" et leurs fichier ".ned" sachant que ces

Implémentation et Simulation

94

dernieres sont implémentées à partir des modules de base de Castalia. 4.3.3

Description du réseau

La structure du Réseau est définit dans le fichier (WsnNetwork.ned). Ce dernier comme cité auparavant se compose de deux parties : La partie Graphique et la partie Source (Figure 4.3). Un réseau de capteur sans fil est composé du module nœud décrit précedemment ainsi d’un canal pour la communication entre nœud et processus physique pour la gestion des données capturées par les capteurs. Les connections entre nœuds sont gérées au niveau de cette structure dans "Connections" mais nous avons choisis de laisser une génération aléatoire pour se rapprocher plus aux concepts des Réseaux De Capteurs Sans Fil.

Implémentation et Simulation module WsnNetwork { parameters : double playgroundSizeX ; double playgroundSizeY ; double numNodes ; @display("bgb=playgroundSizeX,playgroudSizeY,white„ ;bgp=0,0") ; submodules : channelControl : ChannelControl { parameters : playgroundSizeX = playgroundSizeX ; playgroundSizeY = playgroundSizeY ; @display("p=33,27") ; } node[numNodes] : WsnNode ; { @display("p=201, 47") ; } connections allowunconnected : //all connections and gates are to be generated dynamically }

F IG . 4.3 – Fichier graphique ".ned" du réseau.

95

Implémentation et Simulation

4.4

96

Implémentation

Nous allons commencé à donner un aperçu sur les messages implémentés, ensuite entrer dans le cœur des codes sources implémentés au niveau des différentes couches. 4.4.1

Structure des messages utilisés

4.4.1.1

Au niveau de la couche Application

Les messages utilisés sont des messages simples parce que notre Approche s’intéresse plutôt aux autres couches. Dans OMNeT++ les messages peuvent être déclaré dans un fichier ".msg". La structure du message "DATA" utilisé au niveau de cette couche est comme suit :

F IG . 4.4 – Fichier ".msg" du message Data.

Nous avons tésté notre Approche avec un module existant sous Castalia, juste nous avons modifié l’acheminement du message de données qui se passe entre nœuds Simple et nœud Représentant. 4.4.1.2

Au niveau de la couche Réseau

C’est cette couche qui nous intéresse le plus, De ce fait on commencera par illustré les différents messages implémentés au sein de la couche Réseau. Le premier message qui est envoyé par les nœuds est le message "Hello". Ce dernier permet au nœuds de connaitre leurs voisins et

Implémentation et Simulation

97

de remplir la tables des voisins.

F IG . 4.5 – Le structure du message Hello et HelloRep.

Le message HelloRep a les même champs que Hello et comme plus les 3champs décrit. Message d’affectation de rôle, Résolution de conflits (Figure 4.6), Vérification de cohérence et Changement de rôle (Figure 4.7)générés sous Castalia (OMNeT++).

F IG . 4.6 – Le structure du message "Passe Représentant" et "Résolution de conflit".

Implémentation et Simulation

98

F IG . 4.7 – Le structure du message Verification de cohérence et Changement de rôle.

4.4.2

Aperçu des Codes Sources

Tout d’abord, nous avons implémentés l’envoi periodique du message hello suite à un temps ou à un évènement qui peut se gérer selon le Schedule. 4.4.2.1

Envoi Periodique du Message HELLO

void WsnSurvey : : sendhello() { WsnHello *msg=new WsnHello("WsnHello",NETWORK_LAYER_PACKET) ; //Création du message msg ->setSrcAdress(SELF_NETWORK_ADDRESS) ; msg->setDestAdress(BROADCAST_NETWORK_ADDRESS) ; msg->setHelloKind(HELLO) ; // Remplir les paramètres du message trace() « "broadcast ["«msg->getName()« "] initialisation from "« msg->getSrcAdress()« " to "« msg->getDestAdress() ; scheduleAt(simTime(),msg) ; //Programmer l’envoi pèridique toMacLayer(msg,BROADCAST_MAC_ADDRESS) ; // Envoi du message a la couche MAC }

Une fois le Message HELLO est diffusé, chaque nœud recevant ce Message doit répondre en envoyant un Message HELLO-Rep pour confirmer sa présence comme étant voisin. Et de ce principe que la table des voisins se remplies selon le Code suivant :

Implémentation et Simulation

99

void WsnSurvey : :updateTable(string s,string d, int r) { int role=1 ; NTable : :iterator pos ; pos = table.find(s) ; //Parcourir la table pour détécter si le voisin existe if (pos == table.end()) //Ajouter un nouveau Voisin { Neighbor newEntry ; newEntry.Address=d ; newEntry.source=s ; newEntry.srcRole=r ; nbvois=nbvois+1 ; table.insert(make_pair(s,newEntry)) ; //Insérer le Voisin trace()«"vois"«nbvois ; trace()«"nveau voisin" «newEntry.Address«"et"«newEntry.source ; } else Voisin existe, MAJ du rôle { Neighbor Entry=pos->second ; Entry.Address=d ; Entry.srcRole=r ; trace()«"voisin existe deja" ; } role =RoleAttribute() ; //Attribution des Rôles WsnHello * msg=new WsnHello("WsnHello", NETWORK_LAYER_PACKET) ; msg->setRole(role) ; }

4.4.2.2

Attribution Des Rôles

Une fois la table remplie par un nouveau voisin, Ce nœud Commence à attribué les rôles selon les conditions de distribution des capteurs. Tout ça peut être résumer dans ce Code :

Implémentation et Simulation

100

intWsnSurvey : :RoleAttribute() { trace()«"attribution" ; int nbLiaison=0 ;int nbRep=0 ;int nbSimple=0 ; for(NTable : :iterator pos=table.begin() ;pos !=table.end() ;++pos) { Neighbor aNeighbor= pos->second ; if(aNeighbor.srcRole == 3) { // Compter le nombre de representants nbRep++ ;} if (aNeighbor.srcRole == 2) nbLiaison++ ; if (aNeighbor.srcRole == 1) nbSimple++ ; } trace()«"nbre repr"«nbRep«"et nbre liai "«nbLiaison«"et simple"«nbSimple ; //Debut exacte de l’algoritme if(nbRep == 0) IchRole = 3 ;//noeud de liaison else { if (nbLiaison== 0) IchRole=2 ;//représentant else { if (nbRep > 1) IchRole = 1 ; //noeud simple } } //fin trace()«IchRole ; // Afficher le rôle du nœud return IchRole ;

4.4.2.3

Gestion de la redondance

En utilisant la propriété du graphe de Gabriel, la couverture du réseau peut être assurer seulement avec le Représentant et les nœuds actifs. Chaque représentant du groupe déroule le processus résumé dans (Figure 4.8). Une fois les rôles ont été afféctés, Le nœud Représentant prend la main et commence la procédure de mettre en veilles les nœuds redondants.

Implémentation et Simulation

101

F IG . 4.8 – Organigramme de redondance des nœuds simples.

L’algorithme suivi est comme suit : void WsnSurvey : :redondant() { if(IchRole==3) {// IchRole est une //variable affecté au rôle du nœud for(NTable : :iterator pos=table.begin() ;pos !=table.end() ;++pos) { Neighbor aNeighbor = pos->second ; string* des=pos->second.Address ; if ((aNeighbor.srcRole == 1)&&(nbRep !=0)) { state = new cPacket("state",STATE) ;// Paquet //défini que le mode est SLEEP toMacLayer(state,resolveNetworkAddress(des)) ; if ((aNeighbor.srcRole == 1)&&(nbSimple !=0)) { state = new cPacket("state",STATE) ; toMacLayer(state,resolveNetworkAddress(des)) ; } } }}

Implémentation et Simulation 4.4.2.4

102

Rediffusion du Hello

Aprés chaque periode de temps le nœud Représentant envoi un Message Hello pour re-découvrir ses voisins : La variable START définie l’interval de temps de la Rediffusion. voidWsnSurvey : :timerFiredCallback(int index) { if (index !=START) { trace()«"erreur" ; return ; } if(index==START) { setTimer(START,interval) ; sendhello() ; } }

4.4.3

Le fichier .ini

Ce fichier permet à l’utilisateur de configurer ces modèles de simulation pour l’exécution. L’éditeur est en connaissance de toutes les déclarations NED (modules simple ou modules composés).

Implémentation et Simulation

103

[General] #=============================================# Always include the

main Castalia.ini file #============================================= include

../Parameters/Castalia.ini sim-time-limit = 100s

//Temps de Simulation

SN.field_x = 80 # meters SN.field_y = 80 # meters # These tests include 3 nodes each,

coordinates will be specified manually SN.numNodes = 100

//Nombre de nœuds

SN.deployment = "uniform"

//Type de Deployement # important wireless channel switch to allow mobility #SN.wirelessChannel.onlyStaticNodes = true

//Gestion de la Mobilité

#SN.wirelessChannel.sigma = 0 #SN.wirelessChannel.bidirectionalSigma = 0 # Choose a radio and set the Tx power to a low value so # that node’s mobility has a better effect on connectivity SN.node[*].Communication.Radio.RadioParametersFile ="../Parameters/Radio/CC1000.txt" SN.node[*].Communication.Radio.TxOutputPower = "-5dBm" #SN.node[*].Communication.Radio.mode = "IDEAL"

//Type du Canal Radio

SN.node[*].Communication.Radio.collisionModel = 0 # These tests use big packets (2kb) to show interference clearly #This requires to set the max pkt size in all communication layers SN.node[*].Communication.RoutingProtocolName = "WsnSurvey"

//La couche Réseau

SN.node[*].Communication.Radio.maxPhyFrameSize = 2500 # Throughput test application is used to send 2000-byte # packets to node 0 (which by default is the receiving # node for this app).5packets per second will be send SN.node[*].ApplicationName = "BridgeTest"

//La couche Application

SN.node[*].Communication.MACProtocolName = "BypassMAC" SN.node[*].Application.packet_rate = 5 SN.node[*].Application.constantDataPayload = 2000 # application’s trace info for node 0 (receiving node) # is turned on, to show some interesting patterns

//Préciser la Collecte d’information au niveau des couches SN.node[*].Application.collectTraceInfo = true SN.node[*].Communication.Routing.collectTraceInfo = true SN.node[*].Communication.MAC.collectTraceInfo = true SN.node[*].Communication.Radio.collectTraceInfo = true SN.node[*].ResourceManager.collectTraceInfo = true SN.node[*].MobilityManager.collectTraceInfo = true

//La couche MAC

Implémentation et Simulation

4.5 4.5.1

104

Résultats Obtenus Deployement du Réseau

L’inconvénient de Castalia c’est qu’il ne permet pas d’avoir une vue du réseau au cours de l’éxécution sachant que les chercheurs y travaillent dessus pour enréchir le Simulateur surtout aprés son évaluation parmi les Simulateurs les plus sûr. ˙ Pour cela, Ces figures montre le graphique du deployement des nœuds au niveau du réseau à l’état Initial.

F IG . 4.9 – Deployement des nœuds.

Implémentation et Simulation

105

F IG . 4.10 – Exécution avec le Deployement .

subsectionFichier Trace Aprés une correcte compilation (sans détection d’erreur) de Castalia avec les nouveaux paramétres comme citée précédemment, La génération de deux fichiers se crées : – Fichier Trace : Ce dernier donne une vue générale et détaillée du processus parcouru de chaque nœud durant la simulation. – Fichier Resume : Ce dernier affiche l’état du nœud en résumant par exemple le nombre de packets reçus, perdus, et la consommation d’énergie. 4.5.1.1

Initialisation des nœuds

Un aperçu du fichier lors de l’initialisation ou le deployement des nœuds au niveau du réseau.

Implémentation et Simulation

106

0 SN.node[0].MobilityManager initial location(x :y :z) is 43.9051 :47.4276 :0 0 SN.node[0].Communication.Radio Initialized RX mode to normal 0 SN.node[0].Communication.Radio Initialized TX power output to -5 dBm, consuming 26.7 mW 0 SN.node[0].Communication.Radio Default sleep level initialized to idle 0 SN.node[0].Communication.Radio completing transition to 0 (RX) 0 SN.node[1].MobilityManager initial location(x :y :z) is 67.5413 :48.2211 :0 0 SN.node[1].Communication.Radio Initialized RX mode to normal 0 SN.node[1].Communication.Radio Initialized TX power output to -5 dBm, consuming 26.7 mW 0 SN.node[1].Communication.Radio Default sleep level initialized to idle 0 SN.node[1].Communication.Radio completing transition to 0 (RX) 0 SN.node[2].MobilityManager initial location(x :y :z) is 43.5907 :67.7801 :0 0 SN.node[2].Communication.Radio Initialized RX mode to normal 0 SN.node[2].Communication.Radio Initialized TX power output to -5 dBm, consuming 26.7 mW 0 SN.node[2].Communication.Radio Default sleep level initialized to idle 0 SN.node[2].Communication.Radio completing transition to 0 (RX) 0 SN.node[3].MobilityManager initial location(x :y :z) is 49.8851 :51.6715 :0 0 SN.node[3].Communication.Radio Initialized RX mode to normal 0 SN.node[3].Communication.Radio Initialized TX power output to -5 dBm, consuming 26.7 mW 0 SN.node[3].Communication.Radio Default sleep level initialized to idle 0 SN.node[3].Communication.Radio completing transition to 0 (RX) 0 SN.node[4].MobilityManager initial location(x :y :z) is 35.007 :23.8028 :0 0 .

. . . . . 4.5.1.2

Reconnaissance de voisinage

Dans cette periode tous les capteurs deviennent en mode RX et envoie un message Hello pour la reconnaissance de voisinage dont

Implémentation et Simulation

107

on peut le voir dans le fichier trace :

0.000937365 SN.node[11].Communication.Routing broadcast [WsnHello] in initialisation from 11 to -1 0.000937365 SN.node[11].Communication.MAC passage du message a la couche Mac avec dest -1et source 11 0.000937365 SN.node[11].Communication.Radio Buffered [BypassRouting packet] from MAC layer 0.000937365 SN.node[11].Communication.Radio SET STATE to TX, delay=1e-05, power=22.2 0.000947365 SN.node[11].Communication.Radio completing transition to 1 (TX) 0.000947365 SN.node[11].Communication.Radio Sending Packet, Transmission will last 0.00583333 secs 0.000947365 SN.node[10].Communication.Radio START signal from node 11 , received power -92.9274dBm 0.000947365 SN.node[10].Communication.Radio START signal from node 11 , received power -92.9274dBm 0.000947365 SN.node[7].Communication.Radio START signal from node 11 , received power -98.1536dBm 0.000947365 SN.node[7].Communication.Radio Failed packet (WC_SIGNAL_START) from node 11, 0.000947365 SN.node[6].Communication.Radio START signal from node 11 , received power -91.9877dBm 0.000947365 SN.node[5].Communication.Radio START signal from node 11 , received power -90.7127dBm 0.000947365 SN.node[3].Communication.Radio START signal from node 11 , received power -90.3762dBm 0.000947365 SN.node[2].Communication.Radio START signal from node 11 , received power -79.5319dBm 0.000947365 SN.node[0].Communication.Radio START signal from node 11 , received power -91.1788dBm 0.002031581 SN.node[13].Communication.Routing broadcast [WsnHello] in initialisation from 13 to -1 0.002031581 SN.node[13].Communication.MAC passage du message a la couche Mac avec dest -1et source 13 0.002031581 SN.node[13].Communication.Radio Buffered [BypassRouting packet] from MAC layer 0.002031581 SN.node[13].Communication.Radio SET STATE to TX, delay=1e-05, power=22.2 0.002041581 SN.node[13].Communication.Radio completing transition to 1 (TX) 0.002041581 SN.node[13].Communication.Radio Sending Packet, Transmission will last 0.00583333 secs 0.002041581 SN.node[14].Communication.Radio START signal from node 13 , received power -90.9519dBm 0.002041581 SN.node[8].Communication.Radio START signal from node 13 , received power -95.2822dBm

. . . .

Implémentation et Simulation 4.5.1.3

108

Table de voisinage et Affectation des rôles

Une fois les nœuds recoivent le message HELLO, chaque nœud rempli sa table de voisinage et à ce moment là, chaque nœud prend un rôle lui convenant selon sa position au sein du réseau. Ce processus est exécuté au début aprés la reconnaissance du voisinage et l’attribution des rôles. En cas de changement de rôle à cause de la mort d’un nœud, c’est le capteur Représentant qui devient responsable de ce changement et affecte un rôle aux autres nœuds aprés consultation de sa table de voisinage.

0.01620540 SN.node[14].Communication.Radio TX finished (no more pkts in the buffer) changing to RX 0.01620540 SN.node[14].Communication.Radio SET STATE to RX, delay=1e-05, power=22.2 0.01621540 SN.node[14].Communication.Radio completing transition to 0 (RX) 0.01621540 SN.node[1].Communication.MAC reception du message avec dest 1 et source 14 0.01621540 SN.node[1].Communication.MAC Delivering [WsnHello] to Network layer 0.01621540 SN.node[1].Communication.Routing Received [WsnHello] from MAC layer 0.01621540 SN.node[1].Communication.Routing debut d’envoie du message HELLRep avec source 1 et dest 14 0.01621540 SN.node[1].Communication.Routing remplissage de la table avec source 14 et dest 1 et role 1 0.01621540 SN.node[1].Communication.Routing nveau voisin 1 et 14 0.01621540 SN.node[1].Communication.Routing nbre repr 0 et nbre liai 0 et simple1 0.01621540 SN.node[1].Communication.Routing role est 3 0.01621540 SN.node[1].Communication.Routing avant l’envoie le role est 3 0.01621540 SN.node[1].Communication.MAC passage du message a la couche Mac avec dest -1 et source 1 0.01621540 SN.node[1].Communication.Radio Buffered [BypassRouting packet] from MAC layer 0.01621540 SN.node[1].Communication.Radio SET STATE to TX, delay=1e-05, power=22.2 0.01621540 SN.node[1].Communication.Radio Buffered [BypassRouting packet] from MAC layer

. . .

Implémentation et Simulation 4.5.1.4

109

Passage en Etat Sleep

Voici un extrait de code qui donne un aperçu sur l’état d’un nœud lorsque ce dernier reçoit le Message Changement d’état pour passer du mode Réveillé en mode Sleep pour but "Gain d’énergie" comme cité précédemment.

0.129737196712 SN.node[2].Communication.MAC reception du message avec dest 2et source 0 0.129737196712 SN.node[2].Communication.MAC Delivering [etat] to Network layer 0.129737196712 SN.node[2].Communication.Routing Received [etat] from MAC layer 0.129737196712 SN.node[3].Communication.MAC reception du message avec dest 3et source 0 0.129737196712 SN.node[3].Communication.MAC Delivering [etat] to Network layer 0.129737196712 SN.node[3].Communication.Routing Received [etat] from MAC layer 0.129737196712 SN.node[3].Communication.Radio SET STATE to SLEEP, delay=5e-05, power=0.5 0.129737196712 SN.node[2].Communication.MAC reception du message avec dest 2et source 11 0.129737196712 SN.node[2].Communication.MAC Delivering [etat] to Network layer 0.129737196712 SN.node[2].Communication.Routing Received [etat] from MAC layer 0.129737196712 SN.node[3].Communication.MAC reception du message avec dest 3et source 11 0.129737196712 SN.node[3].Communication.MAC Delivering [etat] to Network layer 0.129737196712 SN.node[3].Communication.Routing Received [etat] from MAC layer 0.129787196712 SN.node[3].Communication.Radio completing transition to 2 (SLEEP)

4.5.2

Exemple d’un fichier Resume

Ce fichier donne un résumé sur les informations colléctées a la fin de l’éxéctution de la simulation. Par exemple, l’energie consommée, le nombre de paquets envoyés, reçus et même perdus de chaque nœud présent dans le réseau.

Implémentation et Simulation Castalia| module :SN.node[0].ResourceManager Castalia| simple output name :Consumed Energy Castalia| 0.604138 Castalia| module :SN.node[0].Communication.Radio Castalia| simple output name :RX pkt breakdown Castalia| 1 Failed, below sensitivity Castalia| 115 Failed, non RX state Castalia| 17 Received with NO interference Castalia| simple output name :TXed pkts Castalia| 15 TX pkts Castalia| module :SN.node[1].ResourceManager Castalia| simple output name :Consumed Energy Castalia| 2.82057 Castalia| module :SN.node[1].Communication.Radio Castalia| simple output name :RX pkt breakdown Castalia| 1 Failed with NO interference Castalia| 10 Failed, below sensitivity Castalia| 86 Failed, non RX state Castalia| 20 Received with NO interference Castalia| simple output name :TXed pkts Castalia| 17 TX pkts

110

Implémentation et Simulation

4.5.3

111

Paramètres de Simulations

Le dépoilement des capteurs est aléatoire dans un terrain carré dont sa dimension se varie selon le nombre de nœuds. La porté de communication ainsi que la valeur initiale de l’énergie sont fixes pour tous les nœuds. Les deux tableaux suivants donnent plus de détails : Rayon de transmission 20 m Enèrgie Initiale

18720 Joules(corresond a 2 batterie AA)

Antennes

Bidirectionnelles

Durée de Simulation

Varie selon le nombre de noeuds

Couche Application Bridge Test Couche Réseau

WsnSurvey

Couche Phy + MAC ByPassMac Radio 4.5.3.1

CC1000

La Radio CC1000

Définis la Matrice De Transition. Cette dernière spécifie les délais (en ms)pour basculer entre les 3 états principales de Radio(Rx, Tx, Sleep ) RX

TX

Sleep

RX

-

0,01 0,2

TX

0,01 -

0,2

Sleep 0,05 0,05 -

Implémentation et Simulation

4.6

112

Résultats

Tout d’abord nous allons donnés une vue globale sur le comportement des nœuds au sein du réseau et de leurs organisation, ensuite on détaillera les résultats obtenus graphiquement.

4.6.1

Organisation du Réseau

Suite au manque du simulateur Castalia qui se présente dans la partie visuelle du comportement du réseau. Nous avons opté à travailler plus sur les données colléctées dans les fichiers trace pour pouvoir illustré une idée sur l’organisation des capteurs au sein du réseau pour au moins valider les algorithmes utilisés. Nous avons simulé un réseau composé de 50 nœuds, déployés aléatoirement. Suite à ça, Nous avons étudié en détails le fichier trace généré en 1er temps par les points suivants : – Les positions de chaque nœuds ; – Les voisins découverent ; – Les rôles définis. 4.6.1.1

Les positions des nœuds

Le tableau suivant donne les positions des nœuds extraitent à partir du fichier trace généré. Nœuds

0

1

2

3

4

5

6

Positions

43.9,47.4

67.5,48.2

43.5,67.7

49.8,51.6

35.0,23.8

4.53,77.0

30.6,38.2

. . Nœuds

20

21

22

23

24

25

26

Positions

21.1,14.9

58.9,36.4

45.4,10.8

25.9,49.4

48.9,17.7

30.9,75.4

54.5,35.9

Implémentation et Simulation

113

. . Nœuds

43

44

45

46

47

48

49

Positions

75.9,29.4

65.6,1.08

49.8,67.0

7.68,77.7

70.2,37.4

78.1,4.45

36.0,59.1

4.6.1.2

Le voisinage

Le tableau illustre les voisins de quelques nœuds essentiels tel que : - Nœuds Représentant : 22,47 - Nœuds Liaison : 5, 43 Nœuds

Voisins

22

4,7,8,9,12,17,20,21,24,26,27,30,38,40,43,44,47,48

47

1,2,3,7,11,13,14,15,18,21,24,26,27,29,37,41,43,45

43

1,3,8,9,14,15,17,18,21,22,24,26,27,29,30,35,37,41,47,

15

0,2,3,5,6,8,21,23,24,25,26,27,32,33,34,36,38,41,43,45,

F IG . 4.11 – Déployement Aléatoire.

Implémentation et Simulation

114

F IG . 4.12 – Organisation des Nœuds.

D’aprés le shéma, on peux voir l’organisation des nœuds au sein du réseau aprés le Déployement et suite à la reconnaissance du voisinage par l’échange des messages Hello et HelloRep, ainsi avec l’éxécution de l’algorithme "AttribeRole" cité précedemment pour la structuration du réseau en systèmes Multi-Agents. 4.6.2

Redondance Des Nœuds

Une fois l’organisation du réseau se stabilise, l’algorithme de redondance commence son éxecution. Suite à ça, les nœuds redondant deviennent innactifs tout en gardant une couverture du réseau. Le shéma suivant est la succession des 2précédents, d’où on remarque que les nœuds redondants sont devenus en mode Sleep.

Implémentation et Simulation

115

F IG . 4.13 – Gestion De La Redondance.

4.6.3

Reconfiguration Du Réseau

Dans ce cas, nous avons provoqués une défaillance d’un nœud Simple pour voir la Reconfiguration du réseau. À un instant "T" nous avons mis un nœud en mode "Sleep" pour générer un arrêt de ce capteur par "l’épuisement d’énergie" par exemple. Suite à ça, on peux voir la reconfiguartion du réseau aprés la disparaition de ce nœud actif et le réveil d’un autre nœud Simple pour couvrir la zone qui étais couverte auparavant par ce capteur défaillant.

F IG . 4.14 – Reconfiguration suite à une défaillance.

Implémentation et Simulation

4.6.4

116

Energie Consommée au niveau du réseau

Résultat d’énergie consomée selon La méthode de surveillance adoptée par la distribution d’un nombre différents de nœuds pour une même topologie ; – surface de 100*100, – Energie de 5 mJoule, – Nombre des nœuds : 20, 50 jusqu’a 100 .

F IG . 4.15 – Energie Consommée en Réseau.

On remarque que la consommation d’enèrgie se double jusqu’à le triple en augmentant le nombre de nœuds et c’est dûe principalement aux messages échangés pour la stabilité du réseau. Les messages de contrôle s’augmentent au profit d’augmentation des capteurs au réseau pour la bonne organisation du système.

Implémentation et Simulation

4.6.5

117

Energie Consommée Avec et sans surveillance

D’aprés les histogrammes relevés pour les différents nombre de nœuds dans un réseau, on peut conclure que l’énèrgie moyenne consommée suivant la méthode de Suveillence est basse par-rapport à la méthode sans surveillance et c’est dûe aux états inactifs que prend les nœuds redondants. Cas 1 : 20 noeuds

F IG . 4.16 – Energie Consommée au niveau des deux Méthodes

Cas 2 : 50 nœuds

F IG . 4.17 – Energie Moyenne Consommée par 50 nœuds

Implémentation et Simulation

118

Cas 3 : 100 nœuds

F IG . 4.18 – Energie Moyenne Consommée par 100 nœuds

4.6.6

Energie restante d’un nœud Représentant

D’aprés l’organisation des nœuds, on peux déduire que le nœud "Représentant" consomme plus d’enèrgie que tous les autres nœuds, ce qui devient intéréssant d’étudier u plutôt de simuler l’état d’enèrgie de ce nœud.

F IG . 4.19 – L’énergie restante au niveau d’un nœud Représentant

Implémentation et Simulation

119

Ces Deux courbes démontre que l’énergie restante au niveau d’un nœud Représentant différe au niveau des deux méthode. et plus précisémment dans la méthode en surveillance l’énergie dure plus que la méthode normale dûe a l’envoie des messages inter-clusters avec un rayon plus petit et un nombre de nœuds plus réduits. 4.6.7

Nombre de packets moyens des différents nœuds

Cette courbe présente une moyennes des packets envoyés et reçus par différents nœuds selon leurs rôles où on résume que les nœuds représentant ont une moyenne plus élevés puisque ils responsable sur l’organisation du réseau.

F IG . 4.20 – Packets Moyens envoyés et reçus par nœuds.

4.6.8

Energie Consomée des différents nœuds

Les deux résultats donnent un aperçu sur la consommation d’énergie au niveau de quelque nœuds pour les 2 configuration pour une comparaison d’où on peut conclure que la consommation d’energie différent et que dans le cas "Avec Surveillance" est beaucoup plus optimale que le cas "Sans Surveillance".

Implémentation et Simulation

120

F IG . 4.21 – Energie Consommée Avec Surveillance.

F IG . 4.22 – Energie Consommée Sans Surveillance.

4.6.9

Influence de la Mobilité des nœuds sur le Réseau

Nous avons effectués un autre cas de simulation concernant la mobilité des nœuds pour voir l’influence du déplacement a l’interieur du réseau de quelques capteurs sur le réseau. Notre test concerne la mobilité des nœuds 0,5 et 10. La mobilité se fait a l’instant 100 pour des distances différentes pour chaque nœuds avec une vitesse de déplacement de 15. Ainsi nous avons obtenus le Résultat suivant :

Implémentation et Simulation

121

F IG . 4.23 – Influence de la Mobilité sur le Réseau.

À travers ce test, on remarque que la mobilité des nœuds à une trés grande influence sur le réseau dans le cas du taux d’énergie, d’où on constate que la consommation d’énergie dans un réseau avec mobilité est boucoup plus élevé que dans un réseau sans mobilité est c’est dûe principalement à cause de la reconfiguration du réseau et l’envoi des messages pour la découverte du nouveau voisinage jusqu’a la stabilité du réseau.

F IG . 4.24 – Influence de la Mobilité sur le Réseau(Energie Moyenne).

Implémentation et Simulation

4.6.10

122

Influence du Temps De Simulation

Le temps de simulation joue un rôle important sur le comportement des capteurs, pour cela nous avons joués sur le temps de simulation pour évaluer la durée de fonctionnement du réseau parrapport au taux d’energie.

F IG . 4.25 – Energie Restante par-rapport au temps de Simulation.

F IG . 4.26 – Energie Moyenne Restante.

Implémentation et Simulation

4.7

123

Conclusion

Notre but, à travers les simulation éffectuées était de tester les performances de notre Approche "Surveillance d’un Réseau" d’où nous avons pû montrer l’avantage de la méthode distribuée pour assurer la Tolérance aux pannes avec le traitement de la redondance.

D’un autre côté, cette expérience nous a poussé à connaitre le nouveau Simulateur OMNeT++ et sa plate forme Castalia et nous a permis d’intégré notre approche et d’enrichir le Simulateur avec de nouveaux protocoles. Suite aux Résultats obtenus, nous avons constater que la méthode simulée est plus efficace en consommation enèrgitique au sein du réseau ce qui augmente la durée de vie du réseau.

Suite à tout ces avantages réalisés avec cette approche, les recherches futures sont plus favorisées vers l’approche distribuée avec l’aspect de la redondance au sein du réseau pour la gestion de la Surveillance.

Conclusion Générale La consommation énergitique au niveaux des Réseaux de Capteurs est un point sensible, ce qui a motivé les chercheurs a se focaliser plus sur cette problématique pour pouvoir allonger la durée de vie des capteurs ainsi des Réseaux. De ce fait, plusieurs modèles pour différents types de topologies ont été proposés et traités par l’outil de simulation dans le but d’aquérir à une meilleurs configuration en consommation d’énergie. Suite à ceci, nos idées se sont basés à la proposition d’une surveillance auto-configurable au niveau des nœuds capteurs. Nous avons simulé un système d’organisation basé sur le principe des Agents "Nœuds Représentants", "Nœuds Laisions" et "Nœuds Simple". Ces derniers se ré-organise selon la distribution du réseau d’où nous avons introduit le concept de Surveillance par Redondances des nœuds et ce afin d’améliorer la consommation enèrgitique au sein du réseaux. La théorie des graphes nous a permis de mettre en œuvre ce concept de redondance dans le réseau. Les résultats de Simulation assez satisfaisants suite à l’utilisation du nouveau Simulateur OMNeT++ avec la plate forme "Castalia" qui est plus dédiée au Réseaux de Capteurs. Ce dernier se base sur le principe des modules. D’aprés nos différents tests éffectués, nous avons remarqué la diminution d’énergie consommé auprés des nœuds ce qui donne une longévité du réseau.

Conclusion Générale

125

Tirant profit de l’approche Multi-Agents, Comme perspective de notre travail, nous envisageons d’étudier l’impact de l’utilisation de d’autres métriques de consommation d’énergie qui prennent en compte des informations globales sur le réseau.

Bibliographie [ABD09] Azadeh Abdolrazaghi, "Unifying Wireless Sensor Network Simulators", Master’s Degree Project Stockholm, Sweden,2009. [ALL09] Samira Allam, "Approche multi-agents pour contrôler l’inondation dans un réseau de capteurs", Mémoire de fin d’étude pour l’obtention du diplôme d’ingénieur d’état en informatique, Ecole national supérieur d’informatique(ESI), Oued-Smar Alger, 2009. [ASS08] I. F. Akyildiz, W. Su, Y. Sankarasubramaniam, E. Cayirci, "Wireless sensor networks : a survey", Computer Networks, Vol. 38, pp. 393-422, 2002. B: [BAB06] M. Badet, W. Bonneau. " Mise en place d’une plateforme de test et d’expérimentation", Projet de Master Technologie de l’Internet 1ere année, Université Pau et des pays de l’Adour. 2006. [BAI10] Nadia Bounegta ,Nacira Aici" Approche déscentralisé pour la sécurité d’un RCSF", Memoire de fin d’étude pour l’obtention d’un Diplome d’ingénieur en informatique,Université de BECHAR, Juin 2010. [BEC09] Rachid Bechar, "Théorie de la redondance pour la reconfiguration des systèmes - Application aux réseaux de capteur sans fil", Mémoire de magister Ecole doctorale STIC, Université Abdelhamid Ibn Badis de Mostaganem. Département d’informatique, 2009.

BIBLIOGRAPHIE

127

[BEN09] Djawhara Benchaira, Ahlem Bencheikh, "Sécurité de la déssimination de données dans un réseau de capteur sans fil : cas du protocole Tiny Diffusion", 2009. [BDH05] J. Bredin, E. Demaine, M. Taghi Hajiaghayi, and D. Rus, "Deploying Sensor Networks with Guaranteed Capacity and Fault Tolerance", in the Proceedings of the 6th ACM International Symposium on Mobile Ad Hoc Networking and Computing (MobiHOC’05), Urbana-Champaign, Illinois, 2005. [BOU09] Athanassios Boulis. " Castalia : a simulator for Wireless Sensor Networks and Boby Area Networks User’s Manual version 2.1 ", NICTA, July 2009. [BOU10] A. Boulis, "Castalia, a simulator for wireless sensor networks and body area networks, version 3.1", User’s manual, NICTA, December 2010. C: [CAM99] Scott Carson, Joseph Macker, "Mobile ad hoc Networking (MANET) : Routing Protocol Performance Issues and Evaluation Considerations", RFC 2051, 1999. [CAS08] Claude Castelluccia, "La sécurité des capteurs et réseaux de capteur", INRIA, 2008. [CET05] Bilge Cetin, "SIMULATION ENVIRONMENT", Novembre 2005 [CHE08] Yacine Chellal, "Réseaux de capteurs sans fils", Systèmes intélligents pour le transport, Version1 SIT60, 2008. [CKU03] C-Y. Chong and S.P. Kumar, "Sensor networks : Evolution, opportunities, and challenges" Proceedings of the IEEE, Vol. 91, No. 8, pp. 1247- 1256, 2003.

BIBLIOGRAPHIE

128

[CSS04] Akyildiz, W. Su, E. Cayirci, Y. Sankarasubramaniam. "A survey on sensor networks", IEEE Communications Magazine, vol. 40, no. 8, pp. 102-114, Georgia Institute of Technology, Atlanta, USA. 2004. D: [DOH06] N.Doufène, H.Hadjammar, Projet de fin d’étude pour l’obtention du diplôme d’ingénieur d’état : "Routage dans les réseaux de capteurs : Optimisation du protocole Directed Diffusion", Institut National de formation en Informatique (INI).2006. [DSR03] Witold Drytkiewicz, Steffen Sroka, Vlado Handziski, Andreas Köpke, Holger Karl, "A Mobility Framework for OMNeT++", Telecommunication Networks Group Technische Universität Berlin, 2003. E: [ELK] N.J El Karaki, A.E Kamel, "Routing technique in wireless sensor network : a survey", dept. of electrical and computer engineering, IoWA State University. F: [FAV08] Kevin Fall, Kannan Varadhan,"The ns Manual (formerly ns Notes and Documentation)", The VINT Project May 3, 2008 [FEL07] Rabah Fellouah, "Contribution au Diagnostic de Pannes pour les Systèmes Différentiellement Plats", THESE présentée en vue de l’obtention du grade de Docteur de l’Université de Toulouse, délivré par l’INSA de Toulouse, 2007. [FRA90] PM. Frank. "Fault diagnosis in dynamic systems using analytical and knowledge-based redundancy - a survey and some new result". In Automatica, volume 26, pages 479-474, 1990. G:

BIBLIOGRAPHIE

129

[GVA07] Carmen Guadalupe, Lopez Varela, "Détection et diagnostic pour les systèmes à événements discret-vers la prise en compte des erreurs de modélisation", Thèse de doctorat à l’institut national des sciences appliquées de Toulouse, Laboratoire CNRS,2007. H : [HAM07] A.Hamzi, Mémoire de magistère : "Plateforme basée agents pour l’aide à la conception et la simulation des réseaux de capteurs sans fil", Institut National de formation en Informatique (INI), 2007. [HCB00] W. Heinzelman, A. Chandrakasan, H. Balakrishnan, " Energy-Efficient Communication Protocol for Wireless Micro sensor Networks", In proc of the Hawaii International Conférence on Systems Science, vol. 8, pp. 8020, January 2000. [HER05] Uwe Herzog, "Ad hoc Networks :New Life For An Old Concept", www.eurescom.de, 2005. [HOB08] Ghaleb Hoblos, "Diagnostic et surveillance des complexes", Spécialité : Automatique, Docteur de l’université des sciences et technologies de Lille ;Enseignant : Chercheur à L’ESIGELEC,2008. [HOW03] Holger K., Willig A., " A short survey of wireless sensor networks ", Technical university Berlin, Telecommunication Networks Group, 2003. [HWT05] K. Xu, H. Hassanein, G. Takahara and W. Wang, "Relay node deployment strategies in heterogeneous wireless sensor networks : single-hop communication case", in the Proceedings of the IEEE Global Telecommunication Conference (Globecom’05), St. Louis, MO, 2005. I,J : [IDE04] " A Quick OverView of the OMNeT++4.0 IDE" K:

BIBLIOGRAPHIE

130

[KEC07] Bouabdellah Kechar, "Problématique de la consommation d’énergie dans les réseaux de capteurs sans fils", LIUPA, Université d’oran, 2007. [KEM04] Tatiana Kempowsky, "Surveillance de procédé à base de méthode de classification : Conception d’un outil d’aide pour la détection et le diagnostic des défaillances", Thèse préparée au laboratoire d’analyse et d’architecture des systèmes du CNRS, En vue de l’obtention du titre de docteur de l’institut national des sciences appliquées de Toulouse. 2004 [KHA06] B. Khalifa. " La sécurité dans les réseaux de capteurs sans fil", conférence à l’université de Bechar. 2006. L: [LEB] Tayeb Lemlouma, Abdelmadjid Boudina, "L’inteligence artificielle distribuée et les systèmes multi-agent". [LIL09] LIANG LI," Implementing Transport Protocol PSFQ in Sensor Network in Castalia", School of Computer Science, 2009 [LWI07] Marc Löbbers, Daniel Willkomm, "A Mobility Framework for OMNeT++ User Manual Version 1.0a4", 2007. M: [MAK08] Abdallah Makhoul, "Réseaux de capteurs : localisation, couverture et fusion de données.",THÈSE pour obtenir le grade de DOCTEUR de l’Université de Franche-Comté Spécialité : Informatique préparée au Laboratoire d’Informatique de l’Université de Franche-Comté (LIFC) dans le cadre de l’École Doctorale Sciences Pour l’Ingénieur et Microtechniques (SPIM), 2008. [MAT08] Pantélis Matsos,"Réseaux Sans Fil et de Mobiles RSFM", 2008.

BIBLIOGRAPHIE

131

[MAQ03] Didier Maquin "Surveillance des processus", Diplôme d’Etudes Approfondies Contrôle, Signaux et CommunicationsVanduvre-les-Nancy, février2003. [MER03] R.Meraihi, "Gestion de la qualité de service et contrôle de topologie dans les réseaux ad hoc", Thèse préstentée pour l’obtention le grade de docteur de l’Ecole nationale supérieure des télécommunications de paris, 2003. [MOA08] Sofiane MOAD,Encadrant : Nizar Bouabdallah, "La consommation d’énergie dans les réseaux de capteurs sans fil" Master Recherche 2 en Informatique IFSIC-Rennes1, 2008. [MSK05] C. Mallanda, A. Suri, V. Kunchakarra, S.S. Iyengar*,R. Kannan* and A. Durresi "Simulating Wireless Sensor Networks with OMNeT++", S. Sastry The University of Akron, Akron, Ohio. [MSP09] Abdallah Makhoul, Rachid Saadi, Congduc Pham, "Surveillance vidéo sur réseaux de capteurs sans-fils : ordonnancement adaptatif avec prise en compte de la criticité", LIUPPA, Université de Pau et des Pays de l’Adour (UPPA). N,O : [OMN04] "OMNeT++, Discrete Event Simulation System Version 4.0", User Manual [OMN10] " OMNeT++ Installation Guide Version 4.1",2010 P,Q : [PUJ05] Pujolle G., " Les réseaux Editions 2005 ", éditions Eyrolles, 2005. R: [RIP99] Patrick Ripoll, "Conception d’un système de diagnostic flou appliqué au moteur automobile", pour obtenir le grade de Docteur de L’université de Savoie (Spécialité Electronique, Electrotechnique et Automatique), 1999.

BIBLIOGRAPHIE

132

[ROM07] Yasser Romdhane, "Evaluation des performances des protocoles SMAC et directed diffusion dans les réseaux de capteurs", Rapport de fin d’étude, Ecole superieure de communication de Tunis, 2007. S: [SAY09] Maya Sayad "Energy Efficient Protocol (EEP) : un protocole de routage efficace en énergie pour réseaux de capteurs sans fil", Mémoire de fin d’études Pour l’obtention du diplôme d’ingénieur d’état en informatique ; 2008/2009. T,U,V : [TBL08] Andreas TIMM-GIEL, Ken MURRAY, Markus BECKER, Ciaran LYNCH, Carmelita GÖRG, Dirk PESCH, "Comparative Simulations of WSN", ICT-MobileSummit 2008. W,X : [XPM91] Ding X., Frank P.M., "Frequency domain approach and threshold selector for robust model-base fault detection and isolation", Proc. of IFAC Symp. SAFEPROCESS 91, Baden Baden, Germany, vol. 1, pp.307-312, 1991. Y,Z : [YAK] Mohamed Younis, Kemal Akkaya,"Strategies and Techniques for Node Placement in Wireless Sensor Networks : A Survey". Article Dept. of Computer Sc. et Elec. Eng. [YCC05] T. A. Yang Chair,L. Shih,G. C. Collins, "Applying Image Processing Techniques To Simulate a Self-organized Sensor Network For Tracking Objects", Master Thesis Defense, Computer Engineering 2005.

BIBLIOGRAPHIE

133

Webographie [1] http ://www.commentcamarche.net, site de documentation informatique, Septembre 2005. [2] http ://www.francetelecom.com/rd, site de la division R et D de Francetelecom, Septembre 2005. [3] http ://www.epfl.ch, site de l’école polytechnique fédérale de Lausanne, Septembre 2005. [4] http ://compilers.cs.ucla.edu/avrora, site d’informations sur le simulateur Avrora, Novembre 2005. [5] http ://www.isi.edu/nsnam/ns/

Résumé Les Réseaux de capteurs sans fil attirent plus l’attention de la communauté de recherches. Ainsi la simulation est une démarche fréquemment utilisée pour tester et valider des approches, les environnements de simulation doivent pouvoir soutenir les différents modèles des réseaux de capteurs sans fil. Notre Thèse s’intéresse plus précisément au cas de surveillance des réseaux de capteurs. Le protocole testé est un protocole basé sur la reconfiguration des nœuds avec le principe de redondance pour garder une couverture de la zone et assurer une longue vie du réseau. La validation de l’approche est considéré suite à l’utilisation du simulateur OMNeT++ puisque les résultats obtenus ont montré que le concept de l’approche au niveau de la tolérance aux pannes (avec le principe de réveiller les nœuds endormi en cas de panne ou d’épuisement d’énergie d’un nœud actif) assure un bon fonctionnement ainsi une longévité du réseau. Mots Clés Réseau de capteurs sans fil; Surveillance; Redondance; Reconfiguration; Simulation; OMNET++; Castalia; Routage; Couche Réseau; Voisinage.