abstract - bibliowebbiblioweb.u-cergy.fr/theses/06cerg0300.pdf · abstract advances in networks ......
TRANSCRIPT
ABSTRACT
Advances in networks and computers have prompted the development of very vast and various
fields of applications. This diversity leads the networks to support vanous types of traffic and to
provide services which must be at the same time genenc and adaptive because propemes of quality
of service (QoS) differ from a type of application to another. For exarnple, the multi-media and
real-tirne applications require low end-to-end delays, bandwidth guarantee and low drop rate,
whereas prolonged network lifetirne is the main requirement for many Wireless Sensor Networks
(WSN) applications. However, these two types of applications are estabiished against the problem
of scalability. Accordingly, the hierarchical routing based on the clustering is an effective approach
for solving this problem. Indeed, clustenng-based approach allow to reduce the complexity of the
routing on a large scaie by the means of 6 ) the division of the network into different clusters based
on some criteria of QoS, and (ïi) the management of the intra-cluster communications locaily by the
elected nodes as Cluster Heads (CHs). Since the requirements in QoS depend on the applications
type, the clustering procedure must be adapted to fulfd the requirements of each application type.
Our work through this thesis is related to the hierarchical routing protocol based on the
clustering and its application in various environments to offer a good QoS to the muiti-media real-
time applications, and the WSN applications. More concretely, the contributions of this thesis are
organized ont0 two axes:
QoS Guarantee for multi-media and real-time applications on the Internet: dus
contribution proposes a clustering-based hierarchical architecture, called AHM, for a reliable
and robust multicast routing of mulù-media and real-times flows on the Internet. This
architecture uses 6) the clustering technique to solve the problem of scalability, and (ii) the
multicast routing to reduce the network charge. Moreover, AHM minirnize, by construction,
the intra-cluster communication delay, the multicast delay variation and the drop rate of
packets.
Efficient energy saving in Wireless Sensor Networks: this contribution proposes a
Distributed Energy-efficient Clustering-based Hierarchy Protocol (DECHP), whch
distributes the energy dissipation evenly among all sensor nodes to improve network iifetime
and average energy saving. The proposed protocol operates in two major phases: (i)
clustering procedure which consist of clusters setup, cluster head selection and scheduie
creation in each cluster; then (ig routing paths between CHs (CH-on-CH) formation.
DECHP optimize the energy consumption of the sensor nodes through: fi) gathering
adjacent nodes in the same cluster, (ii) balancing clusters size, (iig avoiding periodic CHs re-
election, (iv) placing CHs uniformly throughout the whole sensor fields, (v) balancing energy
usage on the aii sensor nodes.
Key words: QoS, clustering, hierarchical routing, multicast, multi-media real-time flows,
Internet, sensor networks, energy-efficiency, network iifetime.
RESUME Les avancées technologiques dans le domaine des réseaux informatique ont permis l'essor de
très vastes et différents champs d'applications. Cette diversité amène les réseaux informatiques à
supporter différents rypes de trafics et à fournir des services qui doivent être à la fois génériques et
adaptatifs aux applications car les propriétés de qualité de service (QoS) diffèrent d'un type
d'applications à un autre. Par exemple, les applications muitimédia en temps réel requièrent des
délais de transfert très minimes, une garantie de bande passante et un faible taux de perte de
paquets, alors que les applications des réseaux de capteurs sans fil (RCSF) doivent principalement
résoudre le problème de gestion de la consommation d'énergie. Cependant, ces deux types
d'applications font face au problème du passage à l'échelle. Dans cette optique, le routage
hiérarchique basé sur le clustering s'impose comme une approche très prometteuse pour résoudre
ce problème. En effet, la technique de clustering permet de réduire la complexité du routage a
grande échelle par le biais 4 de la division du réseau en clusters (ou grappes) locaux selon certains
critères de QoS, et (ti) de la gestion locale des communications intra-cluster à l'appui des nœuds élus
comme têtes de clusters (CHs). Etant donné que les besoins en QoS dépendent du type
d'applications, la procédure de clustering doit être compatible pour répondre aux exigences de
chaque type d'application.
Nos travaux de recherche portent sur le routage hiérarchique basé sur le clustering ainsi que sur
son application dans différents environnements pour offrir de meilleures QoS aux applications
multimédia et aux applications des RCSF. Plus concrètement, les contributions de cette thèse sont
organisées autour de deux grands axes :
Garantie de la QoS pour les applications multimédia sur Internet : cette contribution
propose une architecture hiérarchique basée sur le clustering pour un routage multicast fiable
et robuste des flux mulrimédja dans Internet, dénotée AHM. L'architecture AHM s'appuie
sur fi) la technique du clustering pour résoudre le problème du passage à l'échelle, et sur (iiJ la
technique du multicast pour optimiser le taux d'occupation de la bande passante. De plus,
cette architecture permet, par construction, de minimiser le délai de communication intra-
cluster, la variation du délai multicast et le taux de perte de paquets.
Optimisation de la consommation d'énergie dans les RCSF : cette contribution propose
un protocole de routage hiérarchjque basé sur le clustering optimisant la consommation
d'énergie dans les RCSF, dénoté DECHP. Le protocole DECHP comprend deux phases : fi) phase de clustering ; puis (ii) phase de formation de chemins de routage entre les CHs (CH-
en-CH). Ce protocole permet d'optimiser la consommation d'énergie des capteurs en fi) équilibrant la taille des clusters, (ii) regroupant les nœuds adjacents dans le même cluster, (iig
évitant la réélection périodique des CHs, (iv) plaçant uniformément les CHs à travers le
RCSF, et (v) distribuant la dissipation d'énergie sur l'ensemble des nœuds capteurs.
Mot clés : Qualité de service, clustering, routage hiérarchique, multicast, flux multimédia temps
réel, Internet, RCSF, gestion d'énergie, durée de vie de réseau.
... Abstract ................................................................................................................................... III
Résumé ........................... ... ...................................................................................................... v
. . ................................................................................................................ la Table des maueres vii
La liste des figures .......................................................................................................................
.................................................................................................. la liste des tableaux ............ .. xii
... Remerciements ........................................................................................................................... XUI
Chapitre 1 ................................................................................................................................... 15
..................................................................................................................... 1 Introduction 15
1.1 Motivation ................................................................................................................................ 15
1.2 Contributions .......................................................................................................................... 17
........................................................................................................... 1.3 Structure de la thèse 19
Chapitre 2 ................................................................................................................................... 23
2 Routage rnulticast dans Internet ....................................................................................... 23
2.1 Principe du multicast .............................................................................................................. 23
2.2 Modèle de Deenng ................................................................................................................. 24
2.3 Adressage multicast .............................................................................................................. 25
2.3.1 Adressage à portée limitée ................................................................................................ 25
2.3.2 Adressage global : GLOP .................................................................................................. 26
2.3.3 Adressage dynamique : MALLOC .................................................................................. 26
2.4 Structure d'un routeur multicast ........................................................................................... 26
2.4.1 Table de routage unicast pour le multicast : MRIB ...................................................... 27
2.4.2 Table d'information sur les arbres : TIB ........................................................................ 27
2.4.3 Table de propagation multicast : MFIB .......................................................................... 27
2.5 Appartenance aux groupes : IGMP ..................................................................................... 28
................................................................ 2.6 Routage en mode inondation-élagage et le RPF 28
2.6.1 Propagation par le chemin inverse ou RPF chsck .......................................................... 28
2.6.2 Elagage ................................................................................................................................ 29
2.6.3 Coût du protocole .............................................................................................................. 29
2.6.4 DVMRP ............................................................................................................................... 30
2.6.5 PIM en mode dense : PIM-DM ....................................................................................... 30
2.7 Routage par état des liens et MOSPF .................................................................................. 30
........................................................................................................... 2.7.1 Principe de MOSPF 30
2.7.2 Coût de MOSPF ................................................................................................................ 31
.......................................................... 2.8 Routage à construction explicite : PIM-SM et CBT 31
................................................................ 2.8.1 Principes de PIM en mode épars : PIM-SM 31
2.8.2 Core Based Tree : CBT ..................................................................................................... 32
2.8.3 PIM-bidirectionnel ................................................................................................................ 32
2.8.4 Coût des méthodes explicites ........................................................................................... 33
..................................................................................... 2.9 Routage multicast inter-domaines 33
2.9.1 Architecture MASC/BGMP ....................................................................................... 3 4
2.9.2 BGMP .................................................................................................................................. 34
2.9.3 Solution PIM-SM et MSDP ........................................................................................... 35
.......................................................... 2.10 Modèle de multicast spécifique à une source : SSM 36
2.10.1 Express ............................................................................................................................ 36
2.1 0.2 Modèle SSM et PIM-SM ............................................................................................. 3 6
.............................................................................................. 2.1 0.3 Limitations de PIM-SSM 37
2.1 1 Multicast et IPvG ..................................................................................................................... 38
2.1 1.1 Adressage multicast IPv6 .............................................................................................. 38
2.1 1.2 Protocole d'adhésion aux groupes : MLD ................................................................. 39
2.1 1.3 Mécanisme RP-etnbedded ............................................................................................... 3 9
............................................................................... 2.1 2 Comparaison des différents protocoles 39
.................................................................................... 2.12.1 Qualité des arbres de diffusion 39
....................................................................................................... 2.12.2 Coût des protocoles 40
........................................................................................................................... 2.13 Conclusion 42
.................................................................................................................................. Chapitre 3 43
3 Archttecmre hiérarchique du groupe multicast garantissant la QoS ........................... 43
.............................................................................................................................. 3.1 Motivation 43
................................................................................................................ 3.2 Arbres multicast 4 6
........................ ....................................................... 3.2.1 Arbre partagé et arbre spécifique .. 46
................................................................................... 3.2.2 Arbre de plus court chemin (SPT) 46 ............................................................................................................... 3.2.3 Arbre de Steiner 4 7
3.2.4 Arbre centre (CBT) ...................................................................................................... 4 7
3.2.5 Bilan .................................................................................................................................... 48
................................................. 3.3 AHM : Architecture Hiérarchique du groupe Multicast 48
............................................................................................................................. 3.3.1 Clustering 49
....................................................................................... 3.3.1.1 Consmiction du voisinage 49
3.3.1.2 Construction des groupes de transit .......................................................................... 49
......................................................... 3.3.1.3 Groupement et élection ............................... .. 51
3.3.1.4 Exactitude de la procédure de clustering ................................................................. 53
............................................................... 3.3.2 Construction de l'arbre partagé entre les CHs 53
3.3.3 Gestion de l'architecture AHM ........................................................................................ 57
3.3.4 Complexité de l'algorithme ............................................................................................... 58
...................................................................... 3.4 Evaiuation des performances et simulations 59
.............................................................................................................................. 3.5 Conclusion 6 2
Chapitre 4 .................................................................................................................................... 65
4 Réseaux de capteurs sans fd : RCSF ................................................................................ 65
4.1 Caractéristiques des RCSF ..................................................................................................... 66
......................................................................................................................... 4.1.1 Technologie 66
4.1.2 Spécificités ........................................................................................................................ 67
.......................................................................................................................... 4.1.3 Conception 67
4.1.4 Architecture matérielle d'un capteur .............................................................................. 6 8
4.2 Pile protocolaire des RCSF .................................................................................................... 69
4.2.1 Protocoles de la couche physique .................................................................................. 7 1
4.2.1.1 Technique d'étalement de spectre ........................................................................ 7 1
......................................... 4.2.1.2 Norme IEEE 802.1 5.4 LR-Wl'AN : couche physique 71
.......................................................................................... 4.2.2 Protocoles d'accès au support 72
............................................... 4.2.2.1 Norme IEEE 802.1 5.4 LR-WAN : couche MAC 72
4.2.2.2 Protocole S - M C ........................................................................................................ 73
4.2.2.3 Discussion ................................................................................................................ 73
4.2.3 Protocoles de routage dans les RCSF ............................................................................. 74
4.2.3.1 Routageplat .............................................................................................................. 74
4.2.3.2 Routage hiérarchique ........................................................................................... 7 5
4.2.3.3 Routage géographique ................................................................................................ 78
4.2.3.4 Voies de recherche ...................................................................................................... 78
4.3 Conclusion ........................................................................................................................ 7 9
Chapitre 5 ...................... .. ..................................................................................................... A 1
5 Algorithme de clustering minimisant la consommation d'énergie dans les RCSF ... 81
5.1 Motivation ................................................................................................................................ 81
............................................................................................... 5.2 Auto-configuration des RCSF 82
5.2.1 Auto-adressage ................................................................................................................. 83
5.2.2 Clustering .......... .. .......................................................................................................... 84
........................................................................................ 5.3 Algorithme de clustering proposé 87
5.3.1 Modèle du réseau ......................................................................................................... 87
5.3.2 Contraintes de clustering ................................................................................................ 87
5.3.3 Objecrifs désirés de clustering .......................................................................................... 88
5.3.4 Description détaillée de l'algorithme proposé ............................................................... 89
............................................................................................... 5.3.4.1 Formation des clusters 89
. 5.3.4.2 Election des CHs ......................................................................................................... 90
.................................................................. 5.3.4.3 Modèle de communication intra-cluster 91
.............................................................................................................. 5.3.5 Exemple illustratjf 91
5.3.6 Exactitude et complexjré ................................................................................................ 92
5.4 Evaluation des performances et simulations .................................................................... 93
5.5 Conclusion ............................................................................................................................... 97
Chapitre 6 ............................... .. ................................................................................................ 99
6 Protocole de routage hiérarchique basé sur le clustering optimisant la
consommation d'énergie dans les RCSF : DECHP ..................................................................... 99
6.1 Motivation ............. .. ............................................................................................................. 99
.......................................................... 6.2 Erude préliminaire sur la localisation des capteurs 101
............................................ 6.2.1 GPS: Global Posirioning System .................................... 101
6.2.2 Méthodes de mesure de distance ................................................................................... 101
6.2.2.1 Mesure des angles d'arrivée ..................................................................................... 101
6.2.2.2 Mesure de i'énexgie du signal ................................................................................... 102
6.2.2.3 Mesure du temps d'arrivée .................................................................................. 102
6.2.3 Mkthodes de positionnement ......................................................................................... 103
6.2.3.1 Trilatération ...... ...... ........................................................................................... 103
6.2.3.2 Triangdation .............................................................................................................. 103
6.2.3.3 Méthode des hyperboles ......................................................................................... 1 0 4
6.2.4 Technologies envisageables ........................................................................................... 1 0 4
6.2.4.1 Ondes sonores .......................................................................................................... 104
6.2.4.2 Ondes ultrasonores ................................................................................................... 105
6.2.4.3 Ondes ultra Large bande .......................................................................................... 105
6.3 Modéles utilisés dans DECHP ........................................................................................... 106
6.3.1 Modèle de réseaux de capteurs ....................................................................................... 106
6.3.2 Modèle de communication radio ................................................................................... 106
6.3.3 Modèle d'agrégation des données .................................................................................. 108
6.4 DECHP: Distributed Energy-efficient Clustering-based Hierarchy Protocol ............ 109
6.4.1 Phase d'uistallation ........................................................................................................... 109
6.4.2 Phase de communication des données ......................................................................... 112
6.5 Evaluation des performances ............................................................................................. 113
6.5.1 Modèle de simulations .................................................................................................. 113
6.5.2 Résultats de simulations .................................................................................................. 113
6.6 Conclusion ........................................................................................................................ 117
Chapitre 7 ............................................................................................................................... 119
7 Conclusion et Perspectives ............................................................................................ 119
7.1 Résumé des résultats obtenus ............................................................................................. 119 . . 7.2 Limites et perspectives ......................................................................................................... 120
Publications issues de cette thèse ......................... .. ........................................................ 123
Références .............................................................................................................................. 125
LA LISTE DES TABLEAUX
...................................................... Tableau 2-1 : Qualité des chemins de données 40
.................................................................... Tableau 2-2 : Coût pour le réseau 41
......................................................... Tableau 3-1 : Comparaison d'arbres multicast 47
.............................. Tableau 3-2 : Types de messages et structures de données employés 54
Tableau 3-3 : Matrice de délais entre les PRs et les CHs de $ ....................................... 55
Tableau 3-4 : Ordonnancement des sources de diffusion ................... .. .......... ... . 59
......................................... Tableau 4-1 : IEEE 802.15.4 - Paramètres de modulation 72
.................................................................. Tableau 5-1 : Formation des clusters 92
............................................................. Tableau 6-1 : Caractéristique d'antenne 108
xii
Je tiens à remercier M. NAIMI, mon Directeur de thèse ainsi que A. GUEROUI co-encadrant
qui m'ont fait découvrir un domaine d'étude très enrichissant.
Je remercie vivement les professeurs S. PIERRE et J-J. PANSIOT qui ont accepté d'être
rapporteurs pour cette thèse.
J'exprime ma vive gratitude aux professeurs A. BENSLIMANE et L. AMANTON pour avoir
manifesté leur intérêt pour ce travail en me faisant l'honneur de faire partie de mon jury.
Merci également à B. DERDOURI pour son soutien moral et ses conseils avisés.
J'aimerais également remercier mon ami et collégue A. KSENTINI car cette coiiaboration m'a
été très bénéfique.
Mes remerciements s'adressent aussi à tous mes amis et collègues pour leurs soutiens: A.
NASSER, O. THIARE et M. DJOUDI sans oublier A. RADY pour son appui.
Pour terminer, j'aimerak aussi remercier ma femme pour sa présence, son soutien et son aide
précieuse tout au long de ces années.
Cette chaine de remerciements ne serait pas complète si je ne citais pas ma famille et plus
particulièrement mes parents qui m'ont soutenu, aidé et motivé, et sans lesquels je n'en serais jamais
arrivé là.
Je dédie cette thèse à ma fille Safa dont la venue au monde a égayé ma vie.
xiv
Chapitre 1
1 Introduction
1.1 Motivation
Il est aujourd'hui difficile de concevoir une solution dédiée à chaque besoin appiicatif. De ce
fait, on vise généralement à fournir un seMce banalisé qui doit pouvoir mettre à la disposition de
chaque application des propriétés appelées coiiectivement (< Qualité de Service >) (QoS). Ce service
devra donc être à la fois générique et adaptatif car les propriétés de QoS pourront être très
différentes d'un type d'applications à un autre. En effet, la QoS n'est pas un concept formellement
défini. Elle recouvre un ensemble de concepts concernant, par exemple, le délai de communication,
le débit, le taux d'utilisation de ressources (énergie, bande passante), les taux de pertes et d'erreurs,
etc. Elle se combine également avec la sûreté du fonctionnement, ou encore l'évolutivité et
l'extensibilité des systèmes. Ces critères dépendent directement du domaine applicatif et ne peuvent
pas raisonnablement tous être satisfaits à la fois. Par exemple, les applications mulhmédia à. fortes
contraintes temporelles exigent de rigoureuses conditions sur le délai d'acheminements de leurs
données, sur le débit, sur la variation de délai (jigue) et sur le taux de perte, alors que les applications
opérant dans les réseaux de capteurs sans hl (RCSF) mettent ces conditions au second plan par
rapport au problème de gestion de la consommation d'énergie. En revanche, ces deux types
d'applications font face à un problème commun qui est le passage à l'échelle. Dans ce contexte, le
routage hérarchique utilisant le regroupement par grappes (ou clustering) est considéré comme une
solution très pertinente du problème d'évolutivité. La technique du clustering consiste à diviser le
réseau en clusters (grappes) disjoints et à élire une tête de cluster (CH : Cluster Head) dans chaque
cluster afin de représenter l'ensemble des nœuds de ce dernier par son CH. De ce fait, les CHs sont
responsables de leurs clusters. En effet, d'une part, un CH assure la coordination entre les nœuds
de son propre cluster (communication intra-cluster) ; d'autre part, il communique avec les autres
CHs (communication inter-clusters). Ainsi, la complexité du routage à grande échelle est réduite en
gérant localement les communications intra-cluster par le biais des CHs élus. Etmt donné que les
besoins en QoS dépendent du type de l'application, il est alors possible de définir une politique de
clustering qui répond aux exigences de ces applicarions.
Plus globalement nos travaux de recherche visent à émdier et proposer des solutions de
garantie de QoS au niveau du routage de données dans des domaines d'application très variés. En
effet, nous nous sommes intéressés à l'utilisation de solutions de routage hiérarchique basés sur le
clustering dans le contexte : (i) d'applications multimédia sur Internet; (i4 d'applications des réseaux
de capteurs sans fil.
Applications rnultimédia sur Internet : Le réseau Internet a été conçu pour offrir un
service au mieux (best effort) afin de faciliter l'architecture globale du réseau et de connecter
ainsi tous les ordinateurs du monde de la façon la plus économique possible. Mais il n'a pas
été conçu pour supporter un type particulier d'applications. Cependant, I'augrnenration
rapide des capacités des ordinateurs a fait que ceux-ci sont maintenant capables de coder et
de traiter des sons ou des voix, ainsi que des images fixes ou animées (c'est à dire de la
vidéo). 11 est donc naturel de penser à transmettre ces nouveaux types de données sur
Internet. Les avantages potentiels sont en effet très nombreux, puisque la transmission des
données mulLimédia de qualité permettrait d'offrir des services de téléphonie (voix IP), et
plus généralement des services de collaboration à distance (vidéoconférence, jeux vidéo, etc.).
La transmission des données multimédia sur Internet n'est pas malheureusement une
simple extrapolation de la transmission des domées textuelles, pour la simple raison que les
besoins des applications m d h é d i a sont différents de ceux des applications classiques de
transfert de données. Ces dernières applications ne font, en général, intervenir que deux
urilisateurs, une source et une destination. D'autre part, leur utilité pour un utilisateur ne
dépend pas, ou peu, du temps qu'il faut pour transférer les données. Au contraire, les
applications multimédia mettent généralement en jeu un nombre important d'utilisateurs. De
plus, il est très important que les flux rnuitimédia émis par une source atteignent rapidement
les destinations avec un KaUX de perte très faible. De plus, ces flux émis doivent être
simultanément délivrés par toutes Ies destinations, ce qui exige la minimisation de la
variation du délai rnulticast'. En résumé, les applications multimédia interactives ont besoin,
d'une part, d'une communication de groupe (entre plusieurs utilisateurs) efficace, et d'autre
part de garanties de performance. Dans ce contexte, la technique du multicast (ou diffusion
restreinte) est considérée comme une solution pertinente pour des applications multimédia
faisant intervenir plusieurs participants à la fois. Cependant, il reste beaucoup à faire pour
déployer le routage multicast en tenant compte de la qualité de service.
Applications des réseaux de capteurs sans fil (RCSF) : un capteur est un petit appareil
autonome capable d'effectuer des mesures simples sur son environnement immédiat.
L'utilisation de ces capteurs n'a rien d'une nouveauté, ceux-ci sont depuis longtemps utilisés
dans des domaines comme l'aéronautique ou l'automobile. Ce qui est novateur, c'est la
possibilité pour ces capteurs de communiquer de manière radio (réseaux sans-fil de type
WiFi) avec d'autres capteurs proches (quelques mètres). On peut ainsi constituer un réseau
de capteurs qui collaborent sur une étendue assez vaste. Comme les ressources d'un capteur
sont très limitées, on peut même envisager que la réalisation d'un service complexe puisse ,
être effectuée grâce à une composition de services plus simples et donc à une forme de
collaboration "intelligente" des capteurs. Ces réseaux de capteurs soulèvent un intérêt
grandissant de la part des industriels ou d'organisations civiles où la surveillance et la
reconnaissance des phénomènes physiques est une priorité. Par exemple, ces capteurs mis en
réseau peuvent surveiller une zone délimitée pour détecter soit i'apparition d'un phénomène
donné (apparition de vibrations, déplacement linéaire ...) soit mesurer un état physique
comme la pression ou la température (détection des incendies en forêts). Dans beaucoup de
l C'est le temps écoulé entre la première et la dernière réception d'un paquet émis par une source à un
ensemble de destinations.
scénarios de gestion de crises (séismes, inondations, ...) ces réseaux de capteurs peuvent
permettre une meilleure connaissance du terrain afin d'optimiser l'organisation des secours,
ou bien même renseigner précisément les scientifiques sur les causes d'un phénomène
physique particulier. Dans le milieu médical, les applications sont multiples : surveillance
intelligente des patients, mesures et analyses non intrusives de données physiologiques, etc.
On le voit, les applications possibles sont extrêmement nombreuses avec un fort impact sur
un grand nombre d'applications civiles.
Ces réseaux de capteurs posent un certain nombre de défis scientifiques intéressants pour
la communauté de recherche. En effet, outre les défis directs pour les électroniciens
(miniaturisation des composants, optimisation des antennes), il y a beaucoup d'aspects liés a
la recherche en informatique. Par exemple, l'organisation de ces capteurs en réseaux soulève
des problèmes de routage, de protocoles de communication et d'architectures logicielles. Ces
problèmes sont bien connus, mais restent extrêmement ardus. Dans les scénarios usuels
d'utilisation, ce sont plusieurs milliers de capteurs que l'on pourra disperser pour surveiller
certaines zones sensibles. Le facteur de résistance à l'échelle sera donc crucial. Par ailleurs, la
miniaturisation des capteurs impose des restrictions aux ressources des nœuds, comme la
source d'énergie et les capacités de traitement de données et de communication. Comme la
spécificité des applications des RCSF fait que la recharge de la batterie d'un capteur est une
tâche très difficile, la durée de vie d'un capteur est essentiellement dépendante de
i'autonomie de sa batterie. Ainsi, la gestion de la consommation d'énergie constitue une
contrainte majeure dans ce type de réseau. Le routage hiérarchique basé sur le clustering est
une solution très pertinente car il permet d'optimiser la consommation d'énergie des
capteurs et de résoudre le problème de passage à l'échelle.
1.2 Contributions
Nos contributions dans cette thèse mettent au premier plan la problématique du routage de
données avec QoS et particulièrement le passage à l'échelle. Ce thème trouve une solution très
optimale dans le routage hiérarchique basé sur le clustering. De ce fait, nos travaux s'appuient sur
cette technique pour assurer, d'une part un service garanti pour les flux multimédia temps réel sur
Internet, et d7autre part l'optimisation de la consommation d'énergie des capteurs. Cette thèse est
divisée en deux grandes parties : fi) diffusion restreinte (Multicast) basée sur le clustering des flux
multimédia sur Internet avec une garantie de QoS ; (ii) routage hiérarchique basé sur le clustering
optimisant la consommation d'énergie des capteurs.
La première partie de cette thèse contribue à garantir la QoS au niveau du routage mdticast
des flux multimédia sur Intemet. Plusieurs protocoles ont été proposés pour couvrir divers
aspects et résoudre les problèmes soulevés par le routage multicast sur Intemet. Cependant,
dans ces protocoles, la QoS n'est que peu ou pas du tout traitée. A cet effet, une architecture
hiérarchique du groupe multicast, dénommée AHM, est proposée [4], m. Cette contribution
permet un routage multicast fiable et robuste des flux muitimédia sur Internet. De plus, elle
est extensible aux réseaux de grandes dimensions, et est efficace pour prendre en compte les
pannes. L'architecture AHM consiste à :
(i) diviser le groupe multicast en k-clusters équilibrés et disjoints ; chaque
cluster étant représenté par un nczud élu comme CH. Cette étape appelée
aussi clustering est basée sur la minimisation des délais de communication
intra-cluster.
(ii) interconnecter les CHs élus par le biais d'un arbre partagé minimisant la
variation du délai multicast et optimisant le taux d'occupation de Ia bande
passante. Il est à souligner que l'architecture AHM pallie au problème de la
congestion en employant un ensemble de CHs, choisis d'une façon
dynamique, comme points de rendez-vous.
Dans la deuxième partie de cette thèse, nous nous intéressons à la problématique de la
consommation d'énergie au niveau du routage dans les RCSF. Dans de tels réseaux, l'énerge
étant une ressource essentielle mais non renouvelable, notre étude a porté sur la
minimisation de cette dernière. La minimisation est obtenue par le biais d'un routage
hiérarchique de données ; routage basé sur le clustering. La plupart des algorithmes de
clustering proposés s'appuient d'abord sur l'élection des CHs pour former par la suite les
clusters. Cependant, dans ces algorithmes, la réélection périodique des CHs (due à une
diminution importante d'énergie) induit inévitablement une reconfiguration totale du réseau,
d'où une grande surconsommation d'énergie.
O De ce fait, notre premiere contribution [2], [6] évite la reconfiguration périodique
des clustcrs ; et ce en divisant ininaiement le réseau en k-clusters équilibrés et
disjoints. Ce partitionnement inirial s'appuie sur les propriétés suivantes :
(i) Organiser les nœuds adjacents dans un même cluster: les nœuds
voisins détectent généralement les mêmes informations, donc l'agrégation
de ces données par le CH permet de réduire la quantité de données à
remonter vers la station de base.
(ii) Equilibrer la taille des clusters : un cluster de petite taille mène à une
mauvaise allocation de ressources, alors qu'un cluster de grande taille
augmente la latence d'accès aux ressources partagées.
(iii) Minimiser la distance entre les capteurs dans chaque cluster: la
communication à courte distance (signal faible) permet de minimiser la
consommation d'énergie et de réduire les interférences radio.
(iv) Distribuer uniformément les capteurs dans les différents dusters selon leurs
réserves d'énergie : un cluster doit contenir des nœuds ayant un niveau
d'énergie élevé pour jouer le rôle du CH.
L'algorithme proposé combine ces paramètres avec certains facteurs de poids
choisis selon les besoins du système pour former les clusters. Le nœud d'énergie
maximale dans chaque cluster est élu comme CH. Enfin, un modèle de
communication intra-cluster sans collision est établi dans chaque duster en
s'appuyant sur la technique de TDMA. Comme les CHs consomment plus
d'énergie que les nœuds ordinaires, notre algorithme ne déclenche la réélection
dans un cluster que lorsque I'énergie de son CH devient inférieure à la moyenne
d'énergie au sein de ce cluster.
O La deuxième contribution propose un nouveau protocole de routage hiérarchique
basé sur le clustering, dénoté DECHP (Dismbuted Energy-efficient Clustering-
based Hierarchy Protocol) [Il, [3]. Le protocole DECHP exécute dans une
première étape l'algorithme de clustering décrit ci-dessus. Dans une deuxième
étape, DECHP établit dynamiquement des chemins de routage entre les différents
CHs élus. La communjcation inter-clusters (CH-en-CH) s'appuiera sur les
paramètres suivants :
(i) La distance : chaque CH utilise ce paramètre pour former le plus court
chemin entre lui-même et la station de base (SB) permettant ainsi
d'optimiser la consommation d'énergie.
(ii) L'énergie: chaque CH prend en compte ce paramètre pour éviter
l'épuisement rapide de l'énergie des CHs formant son plus court chemin
vers la station de base. Ainsi, un CH transmet les paquets vers la station de
base tout en équilibrant progressivement la dissipation d'énergie de ses CHs
voisins,
Le protocole DECHP permet de résoudre le problème de passage à l'échelle en
s'appuyant sur le clustering et d'optimiser la consommation d'énergie des capteurs
en (i) groupant les nœuds adjacents dans le même cluster, (ii) équilibrant la taille
des clusters, (iii) plaçant uniformément les CHs à travers le RCSF, et (iv) distribuant
les tâches de traitement et de communication sur l'ensemble des nœuds capteurs.
1.3 Structure de la thèse
Cette thèse est organisée en deux parties : B routage multicast basé sur le clustering des flux
multiméda dans Internet garantissant la QoS ; et (it) routage hiérarchique basé sur le clustering
optimisant la consommation d'énergie dans les RCSF. La première partie est couverte par les
chapitres 2 et 3. La deuxième partie est présentée par les chapitres 4, 5 et 6.
Le 2ème chapitre classifie et représente les différents protocoles du routage multicast dans
Internet. Dans ce chapitre, nous introduirons les principes du multicast ainsi que le modèle
multicast proposé actuellement sur Internet. Nous décrirons l'adressage multicast et la structure
d'un routeur multicast. Ensuite, nous présenterons les différents protocoles de routage multicast
intra-domaine et inter-domaines. Enfin, nous présenterons le modèle de multicast spécifiques à
une source (SSM) et le multicast dans IPv6.
Le 3tmc chapitre présente la première contribution de nos travaux concernant la gestion de la
QoS au niveau du routage pour les applications multimédia sur Internet. Dans ce chapitre, nous
proposerons une architecture hiérarchique du groupe multicast (AHM) qui permet un routage
multicast fiable et robuste des flux multimédia sur Internet. L'architecture AHM est composée de
deux phases : fi] phase de clustering et (ii) phase d'interconnexion des CHs élus. Dans la première
phase, nous diviserons l'ensemble de participants à une même session multimédia (ou groupe
rnulticast) en k-clusters locaux, disjoints et équilibrés selon les besoins en QoS des flux multirnédia
en temps réel. Ensuite, nous élirons un CH dans chaque cluster afin de représenter l'ensemble
d'éléments de ce dernier par un seul nœud. Dans la deuxième phase, nous interconnecterons les
CHs élus par le biais d'un arbre partagé minimisant le taux d'occupation de la bande passante et la
variation du délai multicast. Enfin, nous étudierons les performances de l'architecture AHM par des
simulations.
Le 4èmc chapitre introduit les réseaux de capteurs sans fd (RCSF). Dans ce chapitre, nous
donnerons les caractéristiques des RCSF. Par la suite, nous définirons la pile protocolaire des RCSF
et nous représenterons les différents protocoles de la couche physique, de la couche liaison et de la
couche réseau.
La deuxième partie de nos contributions est exposée dans les chapitres 5 et 6. Dans le 51me
chapitre, nous proposerons un algorithme de clustering minimisant la consommation d'knergie dans
les RCSF. Ce chapitre commence par décrire quelques algorithmes d'auto-adressage et de clustering
proposés pour les RCSF. Par la suite, nous donnerons les contraintes du clustering et les objectifs
désirés de l'algorithme de clustering proposé avant de le décrire en dérail. Nous clôturerons ce
chapitre en etfectuant des évaluations des performances de cet algorithme.
Le 6'mc chapitre présente la dernière contribution qui propose un protocole de routage
hiérarchique basé sur le dustering dans le RCSF, dénoté DECHP Pistributed Energy-efficient
Clustering-based Hierarchy Protocol). Dans ce chapitre, nous effecruexons une étude prklirninaire
sur la localisation des capteurs. Par la suite, nous décrirons le modéle des RCSF, le modèle de la
communication radio et le modèle de l'agrégation de données employés par DECHP. Nous
présenterons la phase d'instdation, puis la phase de communication du protocole DECHP. Enfin,
nous évaluerons les performances de DECHP par des simulations.
Finalement, nous clôturerons cette thèse dans le 7ème chapitre qui résume nos contributions,
porterons un jugement critique sur le travail accompli et présenterons les différentes perspectives et
directions des futurs travaux.
Première partie
Routage multicas t basé sur le clustering
garantissant la QoS pour les applications
rnultirnédia dans Internet
Chapitre 2
2 Routage multicast dans Internet
Les applications muitimédia telles que les vidéoconférences et les applications collaboratives
nécessitent une gestion efficace des ressources réseaux. Le routage rnulticast a été introduit dans ce
sens pour réduire les coûts de transmission et permettre la gestion des groupes. Depuis plus d'une
quinzaine d'années, plusieurs protocoles ont été proposés pour couvrir divers aspects e t résoudre
les problèmes soulevés par le routage multicast sur Internet tels que la gestion et la prise en compte
de la qualité de service, la fiabdité, la sécurité, le facteur de passage à l'échelle, etc.
Dans ce chapitre, nous donnerons les définitions et les principes de base du multicast. Nous
présenterons l'adressage mdticast, la structure d'un routeur multicast et les différents protocoles de
routage multicast intra-domaine et inter-domaines. Ensuite, nous présenterons le modèle de
multicast spécifiques à une source (SSM) et le mdticast dans IPv6. Ce chapitre a été inspiré de [IO],
qui donne un état de l'art très riche sur le routage multicast dans Internet.
2.1 Principe du multicast
Le routage multicast (ou la diffusion restreinte) est une technique particulière permettant
considérablement de réduire les coûts de transmission pour des communications de groupes (un
émetteur vers plusieurs récepteurs ou plusieurs émetteurs vers plusieurs récepteurs). Le multicast a
été introduit avec l'avènement des applications multipartites (vidéoconférence sur Internet, etc.) et
des applications de travail collaboratif (simulations réparties, etc.).
Avec une technique traditionnelle « unicast », une communication faisant intervenir plusieurs
récepteurs nécessite l'émission successive de la même information, et ce autant de fois qu'il y a de
destinataires. 11 est f ade de comprendre le gaspillage, en terme de bande passante que ces
répétitions d'informations smctement identiques représentent. Lorsque les nœuds du réseau
possèdent des capacités de multiplication, il est possible pour la source d'envoyer un seul message
qui sera copié et envoyé sur les différentes «branches de l'arbre » multicast lorsque cela sera
nécessaire. Le but principal du multicast au niveau IP est de diminuer la charge réseau en ne
transmettant qu'un minimum de copies d'un paquet de la source vers les différents destinataires, et
par aiiieurs de décentraliser et d'alléger la gestion des récepteurs.
Du point de vue de la signalisation, le multicast introduit également de nouvelles facilités et de
nouveaux concepts. Dans le cas de l'unicast, les différents récepteurs doivent se faire connaître à la
source, un par un, afin que celle-ci puisse envoyer l'information avec l'adresse de chaque
destinataire. Cela peut aussi être le cas pour des connexions point-à-mdtipoints avec Frame-Relay
ou ATM, où c'est encore à la source de gérer le groupe. Cette signalisation « basée à la source » est
donc adaptée à des groupes de faible taille ou lorsque la source désire restreindre l'entrée dans le
groupe. Pour des diffusions d'une très grande envergure, cette technique n'est pas réalisable, car la
gestion du groupe à proprement parler pourrait saturer la source. Avec les nouvelles techniques
multicast, une signalisation basée au niveau des récepteurs a donc été introduite. Dans ce cas, la
source n'a absolument pas à se soucier de la taille du groupe, toute Ia gestion de l'arbre étant
effectuée par le réseau. Les hôtes désirant participer à la communication utilisent alors des messages
spécifiques pour joindre le groupe. Le réseau possède des mécanismes pour permettre de rajouter
une nouvelle branche menant à cette destination.
La plupart des protocoles que nous d o n s étudier utilise le principe s o j sfate : les informations
obtenues par un nœud N depuis un autre naeud N'n'ont qu'une durée de v&dité limitée. Le nœud
N'doit donc périodiquement retransmettre ces informations, sinon elles sont déclarées périmées et
éliminées par le nœud N. Ce prsncipe est connu pour être très robuste en cas de panne des nœuds
ou des liens. Par contre il engendre un trafic cyclique qui peut être important.
2.2 Modèle de Deeting
Le modèle du mulncast actuellement proposé sur Internet est basé sur les travaux de Steve
Deering [Il], il est parfois appelé modèle de Deering. Il repose sur les principes suivants :
les paquets IP multicast ont le même format que les paquets IP unicast et n'en diffèrent que
par l'adresse destination qui est une adresse multicast.
Les groupes sont dynamiques, c'est-à-dire que les membres peuvent adhérer ou se retirer du
groupe à tout moment.
Les groupes sont ouverts, il n'est pas nécessaire d'appartenir au groupe pour lui envoyer des
données, une adresse de groupe repère un ensemble de récepteurs.
Pour la signalisation, deux niveaux sont séparés : le protocole d'adhésion aux groupes (IGMP)
et les protocoles de routage multicast proprement dit qui ont en charge la construction des arbres
multicast.
Le modèle de Deering initial, maintenant baptisé modèle ASM (Ay Some Mukkvd esr modifié
dans le cas du modèle SSM (voir section 2.10), car la notion de groupe est remplacée par ceiie de
canal (groupe à une seule source).
Le modèle de Deering s'inscrit dans le modèle général &Internet: les paquets sont des
datagrammes et l'adresse muiacast: est donc à la fois ualisée comme identificateur de groupe et
comme localisateur. En particulier une adresse multicast peut avoir une portée globale au niveau
d'Internet, ce qui pose des problèmes d'allocation d'adresse.
2.3 Adressage multicast
Dans le modèle de Deering, une adresse multicast IPv4 est prise dans la classe D : adresse
comprise entre 224.0.0.0 et 239.255.255.255, ou en notation préfixe2 224.0.0.0/4. Une adresse
multicast a plusieurs fonctions :
identifier un groupe de façon unique pour les applications, y compris à l'échelle &Internet;
permettre au routage multicast de construire I'arbre de diffusion ;
permettre aux routeurs d'acheminer (commuter) les paquets.
La complexité de l'allocation d'adresses vient alors :
du fait que les groupes sont créés et détruits dynamiquement, ce qui suppose une allocation
dynamique des adresses ;
de l'indépendance à priori entre groupe et localisation dans le réseau, en particulier du fait
de la dynamique des membres.
Dans IPv4, l'espace d'adressage attribué au multicast est limité à 28 bits, ce qui est peu pour
des adresses allouées dynamiquement dans Internet tout entier.
Initialement, l'allocation d'adresses multicast était manueiie : l'initiateur d'une session de
groupe choisissait une adresse supposée non utilisée, et diffusait son choix par divers canaux afin
d'éviter les conflits. Le protocole SAP (Session Annotrncemwt Pmtocol) il21 permet d'annoncer les
sessions lancées par un utilisateur en les diffusant dans un groupe multicast dédié. Cela permet donc
aux autres participants de configurer leurs applications pour participer a la session. Cela permet
aussi d'apprendre les adresses muiticast utilisées et donc d'en choisir une libre avant de créer une
nouvelle session. Bien entendu, cette technique n'est pas extensible même si le concept d'adresses à
portée limitée permet de restreindre le nombre d'annonces diffusées en un point donné. Plusieurs
propositions ont été faites pour mieux gérer l'allocation d'adresses. Le RFC 3171 1131 fait le point
sur la situation actuelle.
2.3.1 Adressage à portée limitée
Une première solution décrite dans le RFC 2365 [14] consiste à définir des adresses avec une
portée (scope) limitée : cela permet d'une part de réutiliser plusieurs fois les mêmes adresses en des
points différents, et d'autre part de simplifier l'allocation puisqu'elie ne doit garantir l'unicité que
dans un espace limité. Ces adresses commencent par le préfixe 239.0.0.0/8. Par exemple, le préfixe
239.192.0.0/14 désigne les adresses locales à une organisation. Un groupe utilisant Fine telle adresse
ne peut donc pas traverser les frontières entre deux organisations. On peut noter qu'une autre
solution pour limiter la portée des groupes avait été proposée et uulisée dans le Mbone : elle se
basait sur l'utilisation du champ T m 3 du paquet IP plutôt que sur l'adresse multicast. Un paquet ne
peut traverser une frontière entre deux niveaux hiérarchiques que si la valeur du TT'L est suffisante.
La notation préfixe X/Y désigne l'ensemble des adresses dont les Y premiers bits sont les mêmes que ceux de X.
Le ?TL Fime to Live) est le nombre de sauts qu'un paquet est autorisé à parcourir.
2.3.2 Adressage global : GLOP
Une autre solution décrite dans le RFC 3180 [15], baptisée GLOP, définit statiquement un
découpage hiérarchique de l'espace d'adressage. Une adresse GLOP est constituée d'un préfixe de 8
bits (233.0.0.0/8), de 16 bits codant le numéro de système autonome (AS), puis de 8 bits codant le
numéro de groupe. Chaque AS est donc u propriétaire» de 256 adresses de groupe qui sont
globalement uniques dans Internet, ce qui est assez peu.
2.3.3 Adressage dynamique : MALLOC
Une solution dynamique qui utilise plus efficacement l'espace d'adressage est donc nécessaire.
Les travaux du groupe MALLOC de l'IETF, décrits dans le RFC 2909 [16] proposent une telle
architecture, Cette architecture d'allocation dynamique d'adresses multicast globalement uniques
repose sur trois niveaux de protocoles et d'docation d'adresses.
Au niveau 3, le plus élevé, le protocole MASC (RFC 2909) [16] perrnet d'douer des blocs
d'adresses multicast à des domaines. L'allocation se fait en créant une hiérarchie de domaines.
Chaque domaine dispose d'au moins un serveur MASC, lui-même connecté aux serveurs parents,
fis et éventuellement frères. Un domaine peut obtenir un bloc d'adresse de son domaine parent. Il
peut à son tour en distribuer tout ou partie à ses domaines fis, et/ou en uuliser une partie pour ses
propres besoins. Une allocation se fait pour une durée iimitée.
Le deuxième niveau permet aux serveurs d'adresses multicast (MAAS) d'obtenir des blocs
d'adresses parmi ceux alloués au domaine, en interrogeant par exemple les serveurs MASC du
domaine. L'une des propositions pour ce niveau, le protocole AAP [ I l , consiste à diffuser à tous
les serveurs U S les blocs d'adresses doués au domaine. Un serveur MAAS qui a besoin d'une
adresse choisit alors une adresse appropriée en termes de portée et de durée de vie, et diffuse sa
dcmande. En l'absence de message contradictoire, l'adresse est réputée douée à ce serveur. Dans le
cas contraire le processus est recommencé avec une autre adresse.
Le niveau 1e plus bas (niveau 1) concerne l'allocation d'adresses multicast aux machines
clientes. Le protocole proposé, MADCAP, normalisé dans le RFC 2730 [18] est assez similaire à
DHCP. Il permet à un client de demander une adresse multicast à un serveur MAAS avec
éventuellement des paramètres sur la durée de l'allocation et la portée de l'adresse. Il est à noter que
cette allocation doit erre rapide puisqu'elle peut être déclenchée par un utilisateur en train de lancer
une application multicast. Pour cela le niveau 2 peut demander la pré-docarion d'un ensemble
d'adresses pour pouvoir répondre plus rapidement.
On peut constater que l'architecture n/t4LLOCest assez complexe, et que d'autre part l'espace
d'adressage restreint (classe D) pourrait ètre insuffisant. En particder, le protocole MASC pourrait
conduire à une trop grande fragmentation de l'espace d'adressage.
2.4 Structure d'un routeur multicast
Un routeur multicast implante généralement plusieurs protocoles de routage et maintient
plusieurs structures de données. Bien entendu, l'implantation effective de ces éléments peut être
très variable.
2.4.1 Table de routage unicast pour le multicast : MRIB
Un routeur multicast doit connaître la route vers l'adresse unicast de certains nœuds comme
une source ou la racine de l'arbre de diffusion pour construire une branche de l'arbre. Cette route,
empruntée par des paquets multicast n'est pas nécessairement la même que la route empruntée par
les paquets unicast. Un processus de routage unicast doit donc permettre d'apprendre et d'annoncer
des routes vers des adresses unicast utilisées pour le multicast. Ces routes sont alors stockées dans
la MRIB (M~Iticurt Ronting Information Bare). Cette table peut être construite explicitement par un
protocole de routage unicast qui sait gérer plusieurs topologies, comme MBGP [19] ou M-1s-IS
[20] ; ou bien elle peut être construite par un protocole spécifique pour le multicast (DVMRP,
MOSPF). Finalement, en faisant l'hypothèse que la topologie soit la même pour l'unicast et le
multicast, elle peut être déduite de la table de routage unicast ordinaire (RIB). Notons que certains
protocoles de routage unicast actuellement utilisés ne permettent pas de gérer une double topologie,
ce qui peut nécessiter un routage statique ou des tunnels4.
2.4.2 Table d'information sur les arbres : TIB
Les protocoles de routage multicast utilisent la MRIB (ou à défaut la RIB) pour construire des
arbres de diffusion. Un arbre est en général identifié par un couple formé d'une source S et d'un
groupe G s'il s'agit d'un arbre par source, noté (S,G) ou simplement par une adresse de groupe s'il
s'agit d'un arbre partagé par les sources, noté (*,G). Par exemple, un routeur PIM qui reçoit une
adhésion pour l'arbre (S,G) cherche dans le MRIB le prochain saut vers S, vers lequel il propage le
message d'adhésion. Les différentes informations concernant les arbres sont stockées dans la TIB
(Trie Information Base). Pour chaque arbre, elle contient la liste des interfaces y appartenant, leur état
(par exemple en cours d'adhésion ou en cours de retrait) et les délais de garde pour les messages de
maintenance de l'arbre. Notons que, dans la plupart des protocoles, ces informations sont soft stafio
et disparaissent donc si elles ne sont pas réguhèrement validées. De plus, tout changement de la
MRIB peut provoquer un changement de la TIB. La nature des informations contenues dans la TIB
dépend fortement du protocole de routage multicast utiiisé. Un routeur implémentant plusieurs
protocoles de routage multicast pourrait gérer plusieurs TIB.
La TIB contient également les informations sur les groupes qui ont des récepteurs appartenant
à des réseaux directement connectés (obtenues grâce à IGMP), et sur les éventuelles applications
locales abonnées à un groupe, car un routeur multicast peut lui-même participer à un groupe.
2.4.3 Table de propagation multicast : MFIB
Finalement, une table extraite de la TIB, 1; MFIB (Mdtic~lt Fowarding Infornation Base) contient
les informations nécessaires au traitement des paquets de données multicast. Cette table doit ètre
implantée de façon très efficace car elle est consultée à chaque arrivée de chaque paquet multicast.
Par exemple dans PM-SM, une entrée de cette table contient au minimum :
Un tunnel consiste à encapsuler un paquet dans un autre paquet afin de lui permeme de traverser des
routeurs qui ne pourraient pas le traiter. Par exemple, un tunnel peut relier deux routeurs multicast séparés par un ou plusieurs routeurs unicast.
un identificateur d'arbre de la forme (S,G) ou (*,G) ;
une interface d'entrée, déduite de la MRIB lors de la construction de l'arbre ;
une liste d'interfaces de sortie, déduite des adhésions au groupe.
Lors de l'arrivée d'un paquet :
l'entrée de la MFIB la plus spécifique est choisie, c'est-à-dire (S,G) avant (*,Q par exemple.
Si le paquet est arrivé par l'interface d'entrée de cet arbre, il est propagé par chacune des
interfaces de sortie : duplication et propagation du paquet ;
sinon, si le paquet vient d'une source directement connectée, une nouvelle entrée (S'G) est
créée dans la MFIB et dans la TIB, avec comme interface d'entrée celle de la source, et
comme unique interface de sortie celle d'un tunnel vers le RP (message regirter) ;
sinon le paquet est ignoré.
La communication muiticast apporte une difficulté supplémentaire par rapport à la
commutation unicast : un paquet de données peut ne correspondre à aucune entrée de la table, mais
doit être commuté et provoque donc des mises à jour des tables (TIB, MFIB).
2.5 Appartenance aux groupes : IGMP
La première composante du routage multicast est constituée de la signalisation entre les hôtes
et les routeurs. Elle a pour but d'informer les routeurs, pour chacune de leurs interfaces sur les
groupes qui ont des membres présents. Dans le modèle de Deering, la connaissance exhaustive des
récepteurs n'est pas utiie, seule l'existence d'au moins un récepteur a besoin d'être connue. Le
protocole normalisé dans le RFC 2236 [21] pour cette signalisation est IGMP (Intemet G y p
Management ProtocoE). Ses principes de base reposent sur des états s ~ t stafe et une minimisation du
trafic de signalisation, en particulier sur les liens partagés comme Ethernet. Les événements IGMP
sont déterminés par les adhésions et les retraits des hôtes locaux aux différenrs groupes. L'adhésion
d'une appiicauon à un groupe G entraîne, si i'hôte n'est pas déjà membre de G :
une demande pour que le système accepte désormais les paquets entrants destinés à G ;
l'envoi d'un message IGMP sur le réseau pour qu'un routeur multicast voisin sache qu'il y a
un hôte intéressé par G sur ce réseau.
2.6 Routage en mode inondation-élagage et le RPF
Grâce à IGMP, les routeurs connaissent pour chacune de Ieurs interfaces les groupes qui ont des
récepteurs. Le routage multicast doit permettre aux routeurs d'envoyer, de proche en proche, les
paquets muiticast aux routeurs intéressés. Le problème principal est d'éviter que des paquets
muiticast bouclent dans le réseau.
2.6.1 Propagation par le chemin inverse ou RPF check
Au niveau IP, l'algorithme principal pour éviter les boucles est le RPF (Retme Path Fornardin3
check ou propagation par le chemin inverse, introduit par Dalal et Mercalf [22]. Le principe est le
suivant : un paquet multicast de source S n'est propagé que s'il est arrivé par l'interface menant vers
S. dans le cas de l'inondation par RPF, le paquet est alors propagé par toutes les interfaces sauf celle
d'entrée. Deux remarques importantes peuvent être faites :
le chemin menant vers la source est typiquement une information de routage unicast, extraite
de la MRIB par exemple ;
le chemin emprunté par un paquet multicast entre S et un récepteur r correspond au chemin
emprunté par un paquet unicast pour d e r du récepteur r à S, ou chemin inverse.
Si le routage unicast est cohérent (sans boucle), alors un paquet ne peut pas parcourir de
boucle avec le RPF. On peut noter que le RPF seul n'a pas la capacité d'éviter qu'un paquet soit
reçu deux fois par deux interfaces différentes ou non. Le RPF permet de réaliser une inondation
(reuersep~thfloodin9)~ tout routeur du réseau obtient au moins une fois le paquet. On appelle interface
RPF (pour S et G) celle par laquelle le routeur accepte les paquets venant de S.
2.6.2 Elagage
Une amélioration du mécanisme RPF est apportée pour éviter que des paquets n'atteignent des
routeurs non intéressés. Cela met en œuvre une technique d'élagage (pmning). Pour chaque couple
(S,G), un routeur maintient la liste des interfaces où il doit propager les paquets venant de S pour G
(information obtenue par IGMP par exemple) et l'interface par laquelle il reçoit les paquets de S. si
la liste de sortie est vide, le routeur envoie un message d'élagage par l'interface d'entrée pour le
couple (S,G). A réception d'un tel message par une interface, celle-ci est retirée de la liste des
interfaces de sortie, ce qui peut éventuellement provoquer la propagation du message d'élagage et la
suppression d'une branche de l'arbre.
On parle alors de multicast par le chemin inverse ou RPM : Reverse Path M.ulticashng [23]. Un
problème reste à résoudre : comment ajouter des membres à l'arbre élagué ? Deux mécanismes
complémentaires sont proposés :
les routeurs mémorisent les messages d'élagage envoyés. Lors de l'adhésion d'un nouveau
membre à un groupe G, si des messages d'élagage pour des couples (S,G) ont été envoyés,
des messages symétriques de greffe sont émis et auront pour effet de reconstituer les
branches élaguées. Ce mécanisme est rapide, par contre il ne traite pas les cas dans lesquels
aucun message d'élagage n'a été envoyé, à titre d'exemple dans une partie du réseau qui
n'était pas précédemment connectée à la source ;
dans un intervalle régulier 7; les informations d'élagage sont supprimées, ce qui a pour effet
de diffuser le prochain paquet dans tout le réseau comme pour le premier paquet. C'est aussi
ce mécanisme qui permet de supprimer les informarions sur les sources désacuvées.
2.6.3 Coiit du protocole
Chaque routeur doit maintenir des informations dans sa TiB pour chaque couple (S,Q où S
est une source active de G, et cela quelle que soit la localisation ou même l'existence de récepteurs :
il mémorise soit une entrée de routage, soit une entrée d'élagage. De plus, tout routeur reçoit à
intervalle T des paquets de tout couple (S,q actif. On peur donc remarquer que ce protocole a un
coût très faible si la plupart des routeurs sont intéressés par la plupart des couples (S,G), situation
que l'on nomme généralement mode dense. A l'inverse, si la plupart des routeurs ne sont pas
intéressés par la plupart des couples (S'G) (situation correspondant au mode &ars), le coût devient
important en signalisation, en nombre d'états et en trafic inutde (inondation).
2.6.4 DVMRP
L'algorithme RPM a été le premier à être effectivement implanté, dans le protocole DVMRP
(Distance Vector Multicast Ro~ting ProtocoT), décrit dans le RFC 1075 [Hl. Ce protocole a la particularité
de contenir son propre protocole de routage unicast, de type vecteurs de distance et semblable à
RIP. Ce protocole unicast n'est pas nécessaire pour router les paquets unicast, mais pour construire
la MRIB qui est utilisée pour déterminer l'interface RPF pour une source. L'inconvénient de cette
architecture, outre la lourdeur de faire tourner un protocole de routage unicast supplémentaire, est
lié aux défauts du routage par vecteur de distance (lenteur de convergence, risques de boucles).
L'avantage est de permettre différentes topologies pour l'unicast (RIB) et le multicast (MRIB). Par
exemple, si un certain routeur n'implante pas le multicast, la route RPF vers la source ne devra pas
emprunter ce routeur.
2.6.5 PIM en mode dense : PIM-DM
Un autre protocole utilisant l'aigorithme RPM a été par la suite défini, dans le cadre de
l'architecture PIM [25] : PIM-DM (PIM en Mode Dense) 1261. Contrairement à DVMRP, PIM
n'inclut pas son propre protocole de routage unicast, mais utilise la table de routage unicast sous-
jacente, ou plus précisément une MRIB qui est par défaut dérivée de la table de routage unicast.
Cela pose un problème si les topologies unicast et multicast sont différentes.
2.7 Routage par état des liens et MOSPF
De même que DVMRP est lié à un routage unicast par vecteurs de distance, MOSPF
(Multicast extensions to OSPE), décrit dans le RFC 1584 [27, est lié à un protocole de routage
unicast par état des liens, OSPF [28].
2.7.1 Principe de MOSPF
Par rapport à OSPF, deux types d'informations supplémentaires permettent de mettre en
œuvre MOSPF :
Une option permet de spécifier dans les différents messages si un lien ou un routeur est
capable de supporter le multicast. Cela permet donc de gérer des configurations où le
multicast n'est pas déployé partout (MRTB) ;
r Un nouveau type d'annonce d'états de liens &O@ rnembe~ship LSA) permet de spécifier les
groupes présents sur chaque lien.
Le principe de MOSPF est le suivant :
lorsqu'un routeur apprend un changement dans la liste des groupes ayant un membre sur un
lien adjacent, par exemple via IGMP, il forme un nouvel état des liens qui est diffusé vers
tous les routeurs ;
lorsqu'un routeur R reçoit un paquet multicast (S,G) et qu'il ne dispose pas d'une entrée
(S,G) dans sa table, il calcule, en utilisant l'algorithme de Dyhtra déjà utilisé par OSPF,
l'arbre de plus courts chemins de S vers tous les membres de G. Ce calcul est effectué dans
le graphe des liens supportant le multicast. Si R appartient à cet arbre, il crée une entrée
(S,G) où l'interface d'entrée est celle menant vers S dans l'arbre calculé, et les interfaces de
sortie mènent vers les füs dans l'arbre ;
le paquet est propagé suivant cette entrée qui est conservée pour les paquets suivants ;
une entrée (SIG) est supprimée si et seulement si la topologie du réseau ou la localisation des
membres changent.
2.7.2 Coût de MOSPF
OSPF construit un arbre par source, qui est (en inm-zone) un arbre de plus courts chemins. Il
n'y a pas d'inondation de paquets de données. LR déploiement de MOSPF peut être partiel, le calcul
de l'arbre ne prenant en compte que les routeurs MOSPF, donc ils sont capables de multicast. Les
routeurs qui ne sont pas sur l'arbre (AG) n'urilisenr pas de ressources (état, signalisation) pour le
flux (S,G). Par contre, le rajout ou le retrait de membres provoquent l'inondation du réseau par la
signalisation de mise à jour d'états des liens : tout routeur MOSPF mémorise la localisarion des
membres de tous les groupes, même s'il n'y a aucune source active.
2.8 Routage à construction explicite : PIM-SM et CBT
Dans les sections 2.6 et 2.7, un arbre est construit pour chaque source, et sa construction est
implicite, dirigée par les données. Dans cette secrion nous présenterons deux nouvelles
architectures qui reposent sur des arbres partagés construits explicitement par des messages
d'adhésion: CBT 1291 et PIM [25]. Dans les deux cas, des messages d'adhésion explicites sont
envoyés depuis les récepteurs vers un point central choisi d'une façon statique, qui est la racine de
l'arbre de diffusion. Ce point est le Con de CBT et le poant de rende?-vous (RQ de PIM. Ces deux
architectures ont été présentées comme applicables à grande échelle, voire en inter-domaines.
L'architecture PIM introduit explicitement la notion de routage multicast indépendant du
protocole unicast sous-jacent, contrairement à ce qui se passe avec DVMRP ou MOSPF. PIM a
simplement besoin d'accéder à une table de routage (MRIB ou RIB) pour connaître le prochain saut
vers une adresse unicast (celle du RP ou d'une source). PIM a été décliné en deux variantes qui
partagent le principe d'accès au routage unjcast sous-jacent, ainsi que quelques messages communs :
PIM-DM (déjà vu au paragraphe 2.6.5) pour le mode dense et PIM-SM pour le mode épars.
2.8.1 Principes de PIM en mode épars : PIM-SM
Quand un routeur PIM reçoit une demande d'adhésion à un groupe G pour lequel il n'a pas
d'état, il envoie un message d'adhésion (PIMjuin) au prochain saut vers le RP. Ce message va donc
créer une branche de l'arbre muiticast jusqu'au premier routeur possédant une entrée pour G ou, à
défaut, jusqu'au RP. Ce message crée des entrées (*,G) dans les routeurs intermédiaires. Une
branche peut être supprimée soit par un message d'élagage explicite (PIM-pmne), soit si aucun
message d'adhésion PIM n'est reçu pendant un certain temps. Depuis la version du RFC 2362 [30],
il n'y a pas d'acquittement de messages dYadhésion/retrait. Les messages d'adhésion sont envoyés
cycliquement suivant le principe J$ sfute.
L'arbre construit est un arbre unidirectio~el partagé : un paquet multicast émis par une
source vers un groupe G est intercepté par le premier routeur dit routeur désigné (DR, Dengmted
Router) qui I'encapsule dans un message unicast d'enregistrement (PIM-figiste$ envoyé au RP de G. le RP décapsule le paquet et le propage dans l'arbre vers les récepteurs.
En plus des arbres partagés (*,G'), PIM-SM construit des arbres ou des branches par source,
correspondant à des entrées (S,G'). Lorsqu'un routeur ayant des membres de G directemenr attachés
reçoit des paquets venant d'une source, il peut décider de créer une branche (S,G) en envoyant un
message PIMjoint(S,G) vers S. Le premier routeur où la route vers S et celle vers le RP diverge
recevra donc les paquets (S,G) en double : une de I'arbre partagé et une de I'arbre spécifique à S.
pour éviter ces doublons, il envoie un message PIMpmne(S,G) vers le routeur en amont dans l'arbre
partagé dès qu'il reçoit des données de I'arbre par source.
2.8.2 Core Based Tree : CBT
Le protocole CBT (Core Bmd Tne) [29], [31] partage avec PIM-SM la notion d'arbre parragé
construit explicitement. Les principales différences sont les suivantes :
l'arbre est bidirectionnel : une source qui est membre de l'arbre diffuse son flux directement
dans I'arbre sans passer au préalable par le centre (COR). Une source qui est non-rnembre
émet ses paquets encapsulés en unicast vers le centre. Quand le paquet atteint le centre, il est
propagé dans l'arbre bidirecuonnel.
Les messages loin sont acquittés par le premier routeur sur I'arbre ou à défaut par le centre.
Un routeur sait donc U le Join a réussi, ce qui n'est pas le cas de PIM. Il y a également la
possibilité de supprimer u n sous-arbre @sh) en cas de changement de routage par exemple.
Cela permet éventuellement d'accélérer la reconstruction de l'arbre.
Il est à noter que la version initiale de CBT [29] autorisait plusieurs centres par groupe. Cela
causait des problèmes de boucles. La deuxième version, CBTv2 [31] n'autorise qu'un seul centre par
groupe.
Une variante de PIM a été proposée en 1999 par Estrin et Farinacci, et ensuite améliorée par
Kouvelas [32] pour utiliser des arbres bidirectionnels partagés. Cette variante n'uulise aucun arbre
par source. Le principe est le suivant :
Pour chaque sous-réseau et chaque RP, il y a une élection d'un routeur appelé propagateur
désigné @F, Designatd Fonvmd.r> : il s'agit du routeur connecté à ce réseau qui a la meilleure
route unicast (MRIB) vers le RP.
De plus, chaque routeur a une seule et unique interface RPF pour un RP donné.
Pour un groupe G associé à un certain RP, les interfaces d'entrées possibles sont donc
l'interface RPF (paquet downstream venant du RP) et les interfaces D F (paquet rpstream allant vers le
RP). Un paquet est accepté par un routeur s'il est reçu par l'une des entrées possibles. Les interfaces
de sorties possibles sont ceiies déterminées par IGMP, PIM (comme dans PIM-SM) plus l'interface
RPF. Un paquet accepté est retransmis sur toutes les sorties possibles sauf l'interface d'entrée.
On peut noter qu'avec PIM-bidirectionnel, un routeur n'a pas besoin de mémoriser d'état par
source, et que les paquets se propageant d'une source au RP ne sont pas encapsulés, conrrairement
à PIM-SM ou CBT. Cette variante peut coexister avec PIM-SM (ou PIM-SSM) en utilisant des
plages d'adresses disjointes. Eile reprend le concept d'arbres bidirectionnels partagés de CBT, tout
en utilisant des éléments plus faciles. Notons kgalement que le RP ne joue aucun rôle particulier
dans l'acheminement des paquets et peut donc ktre un routeur virtuel, ce qui améliore la robustesse.
Par contre, ce protocole souffre des limitations du modèle ASM (comme PIM-SM) en ce qui
concerne la détermination des RPs, ce qui le rend difficilement utilisable seul en inter-domaines.
2.8.4 Coat des méthodes explicites
En termes d'états à mémoriser, seuls les routeurs appartenant à un arbre (*,G) ou (S,G)
doivent mémoriser des informations pour G. De plus, les arbres partagés permettent de n'avoir
qu'une seule entrée de table par groupe au détriment d'un chemin de données indirect via le RP. Il
n'y a pas d'inondation cyclique du réseau par les données, contrairement à PIM-DM ou DVMRP. Il
n'y a pas non plus d'inondation d'information sur les membres des groupes, contrairement à
MOSPF. Les données peuvent être encapsulées avant d'atteindre l'arbre (message PIM-qister). Les
arbres partagés impliquent généralement une route non optimale entre une source et un récepteur
puisque les paquets passent par le RP.
2.9 Routage multicast inter-domaines
Internet est constitué d'un ensemble de domaines de routage ou arrtonomo~s v e m s (AS).
Chaque domaine est en générai géré par une seule entité et utilise un seul protocole de routage
unicast (et multicast). Les domaines sont reliés entre eux via des routeurs frontières qui exécutent
un protocole de routage unicast inter-domaine, essentiellement BGP4 [33] à l'heure actuelle. Le %
routage multicast inter-domaines pose deux séries de questions :
celles liées à i'aspect inter-domaines proprement dit : indépendance des domaines, politique
de routage et de sécurité ;
celles hées à la taille d71nternct (extensibilité).
Bien entendu, les deux types de questions doivent être résolus simultanément pour permettre le
déploiement du multicast à l'échelle d'Internet.
Les architectures CBT et PIM-SM avaient initialement été présentées comme extensibles à
Internet, principalement car eues ne provoquaient pas d'inondation et réduisaient le nombre d'états
en créant des arbres partagés. En fait, au moins trois problèmes demeurent : comment douer des
adresses multicast uniques sur Internet, comment fixer le point de rendez-vous en inter-domaine, et
comment le trouver à partir de l'adresse du groupe.
2.9.1 Architecture MASC/BGMP
Une architecture globale, MASC/BGMP a été proposée à l'IETF [34]. Elle est basée sur :
l'architecture d'adressage MASC déjà vue au paragraphe 2.3.3 1161 ;
Une extension du protocole de routage unicast inter-domaines BGP [19] ;
Un modèle de routeur muiticast frontière qui traite en particulier l'interaction entre routage
multicast intra et inter-domaines 1351 ;
Un protocole de routage multicast inter-domaines : BGMP [36j.
Les idées principales sont les suivantes :
chaque domaine peut utiliser son propre routage muiticast hua-domaine qui doit être
interfacé avec le routage inter-domaine. Cela reprend Le modèle utilisé avec succès dans le
routage unicast ;
les arbres de diffusim inter-domaines sont explicitement construits vers une racine suivant
un principe analogue à celui de PIM-SM ou CET. L'arbre BGMP peut ttre vu comme un
arbre de domaines enraciné en un domaine racine.
2.9.2 BGMP
BGMP (Border G a t e 7 Mdticast Pmtoco(~ [36] est un protocole à construction explicite d'un
arbre de routage inter-domaines. Il construit un arbre de domaines, enraciné dans le domaine
racine (celui qui possède l'adresse du groupe). U s'agit d'un arbre partagé bidirectionnel dont le
déroulement est typiquement le suivant :
un message d'adhésion (*,G) arrive au routeur frontière R, venant soit d'un voisin BGMP
d'un autre domaine, soit d'un voisin intra-domaine via un PIMjoin par exemple ;
en examinant sa GRIB, le routeur détermine que le prochain saut vers le domaine racine de
G est un voisin externe RI. R envoie alors à RI un message BGMP;ioin(Y,G), et note que
l'interface d'entrée pour G est celle menant à RI ;
RI détermine de même le prochain saut vers G. Si c'est un routeur extérieur &, il procède
comme R Si c'est un routeur interne, Le protocole intra-domaine est alerté. Par exemple, s'il
s'agit de PIM-SM, un PLMIjoin est envoyé vers le RP de G. La signalisation de BGMP est
donc relayée par la signalisation intra-domaine. Elle peut traverser le domaine pour réactiver
un autre routeur BGMP, ou bien rester dans le domaine si celui-ci est le domaine racine pour
G.
Des arbres unidirectionnels par source peuvenr aussi étre construits. Le principe est le même,
sauf que BGMP calcule le prochain saut vers la source plutôt que vers le domaine racine de G, en
utilisant cette fois la MRIB.
Une difficulté supplémentaire vient de la nature ouverte des groupes : une source peut émettre
vers un groupe alors qu'elle est dans un domaine qui ne fait pas partie de i'arbre BGMP de G. Dans
ce cas, le routeur frontière est alerté par le routage intra-domaine. Si aucune entrée pour G n'existe,
il envoie le paquet nativement (sans encapsulation) au voisin BGMP vers le domaine racine, tel
qu'indiqué par la GRIB. Lorsque le paquet atteint un domaine où une entrée p,G) existe, il est
propagé vers tous les voisins dans l'arbre bidirectionnel.
2.9.3 Solution PIM-SM et MSDP
Quand l'architecture MASC/BGMP a été présentée, il a été rapidement évident qu'elle était très
complexe et qu'elle ne pourrait être déployée avant d'avoir mis au point les nombreuses briques
nécessaires. Comme une solution satisfaisante et opérationndc existe au niveau intra-domaine avec
PIM-SM, il a eté proposé une solution, à priori provisojre, pour permettre à des sources d'émettre
vers des récepteurs hors de leur domaine. Cette solution est appelée MSDP (M~lticart Sotlrce Dzsmwely
Protoc00 [31 et [38].
Le principe de MSDP est le suivant :
chaque domaine participant exécute un protocole de routage multicast intra-domaine, à
priori PIM-SM. Le (ou les) routeur jouant le rôle de point de rendez-vous pour des groupes
acceptant des sources externes exécute en plus le protocole MSDP (noiud MSDP) ;
chaque nœud MSDP établit une connexion TCP avec au moins un autre nœud MSDP,
formant ainsi un graphe connexe de domaines utilisant MSDP ;
lorsqu'un nœud MSDP apprend l'existence d'une source locale à son domaine, par exemple
via PIM-register, ii forme un message d'annonce de source et l'envoie aux nœuds MSDP
voisins ;
un nœud MSDP qui reçoit une annonce de source la propage aux autres nœuds MSDP en
utilisant une inondation par le chemin inverse. Il peut, de plus, la conserver dans un cache.
Ainsi, tout noeud MSDP reçoit toutes les annonces de sources ;
les annonces de source sont diffusées à intervailes réguliers (principe saft state) ;
un noeud MSDP qui reçoit une annonce de source S pour un groupe G vérifie s'il possède
une entré (*,G) indiquant que des récepteurs du groupe sont présents dans son domaine ;
en confirmation à cette idée, ce nœud envoie un message d'adhésion PIMjoin(S,G) à
destination de la source. Comme S n'est pas à priori dans le même domaine, le message sera
propagé vers S à travers les frontières en utiljsant la MRIB des routeurs frontières BGP ;
le message d'adhésion est propagé à travers un ou plusieurs domaines jusqu'à atteindre un
routeur possédant déjà une entrée (S,G).
Il est fort possible qu'un arbre inter-domaines (S,G) se met en place tout en reliant des RP
(nœuds MSDP) à la source. PIM-SM ayant déjà les mécanismes pour construire des branches par
source, peu de modifications sont nécessaires, à part l'interaction avec MSDP quand une annonce
arrive. Il faut aussi exécuter hIBGP sur les routeurs frontières. Le problème principal avec cette
solution vient du fait que toute source provoque une inondation régulière des noeuds MSDP. Cela
n'est donc pas extensible à un grand nombre de sources actives, surtout si elles n'intéressent qu'un
petit nombre de domaines.
2.10 Modèle de rndticast spécifîue à une source : SSM
2.10.1 Express
Le modèle SSM (Soane SpeczJic Multicas~ est né de l'architecture Express proposée par Wolbrook
et Cheriton 1391. Dans Express, la notion de groupe est remplacée par celle de canal. Un canal a un
seul et unique émetteur qui est la source, ce qui est particulièrement adapté à des applications de
type diffusion de canaux vidéo ou audio. Un tel canal est essentiellement unidirectionnel. Une telle
architecture présente plusieurs avantages :
comme il y a une seule source par canal et que l'identificateur du canal contient
l'identificateur de la source, ii n'y a plus de problème de contrôle des émetteurs dans un
g o u p ;
de même, l'adresse d'un canal est dérivée de celle de la source, donc il n'y a pas de problème
d'aiiocation distribuée d'adresses multicast ;
les arbres étant unidirectionnels et enracinés dans la source (et l'adresse de la source étant
connue), il n'y a pas besoin de mécanisme de point de rendez-vous ;
il n'y a pas de routage triangulaire source-RP-récepteur, ce qui évite la dépendance à un
réscau tiers (thirdpa* dqendanry).
En plus de ces nouveaux concepts, [39] présente un nouveau protocole qui réalise à lui seul trois
fonctions : l'adhésion aux groupes (à la place de TGMP), la construction et la maintenance de l'arbre
(en tant que protocole de routage multicast), et un mécanisme de comptage permettant en
particulier de savoir combien de récepteurs sont abonnés au canal. Ce dernier mécanisme n'existe
pas en tant que tel dans Ie routage multicast classique, et doit être émuié à un niveau supérieur, par
exemple au niveau transport (RTP/RTCP) 1401.
Face aux difficultés pour déployer un routage rnulticast à grande échelle, le modèle E x p m a été
adapté au multicast classique sous le nom de modèle SSM, le modèle initial de Deering étant
rebaptisé modèle ASM (Ag Sotrlve mal tic art^ Les deux modèles ne sont pas incompatibles et
peuvent facilement coexister en se partageant l'espace d'adressage.
Il est à noter que le modèle SSM (et surtout son intégration dans PIM-SM) ne reprend pas
toutes les propositions 8Eq~es.r. Ceci, notamment pour d'évidentes raisons de compatibilité avec
l'existant, la séparation entre routage (PIM) et l'adhésion aux groupes (TGMP) a été maintenue. De
ce fait, le mécanisme de comptage des récepteurs n'a pas été implanté.
2.10.2 Modèle SSM et PIM-SM
Comme PIM-SM comportait déjà les mécanismes pour consmiire des branches par source, peu
de rnoditkations ont été nécessaires pour intégrer le modèle SSM, en dehors de i'interfaçage avec
IGMPv3 [41] le principe est le suivant :
une plage d'adresses multicast correspondant au préfixe 232.0.0.0/8 est réservée pour les
canaux SSM. Un canal SSM est identifié par l'adresse de la source et une adresse SSM
(numéro de canal). Deux sources peuvent sans dommage uuliser le même numéro de canai,
il n'y a donc pas besoin de protocole d'allocation d'adresses ;
le protocole IGMPv3 est utilisé en mode inclusif pour demander l'abonnement à un canal
(S,G), où S est l'adresse de la source et G une adresse SSM ;
un routeur recevant une demande d'abonnement à un canai (S,G), où G est une adresse
SSM, met à jour l'entrée (S,G) de la table de routage multicast si eile existe. Si elle n'existe
pas, eile est créée, et un message PIMjoin(S,G) est envoyé en direction de S, sans qu'une
entrée (*,G) ne soit créée au préalable, contrairement au cas ASM. Un routeur recevant un
message PIMjioin(S,G) le traite comme dans le mode ASM. Un routeur recevant un message
PZM-join(*,G), où G est une adresse SSM, ignore ce message.
Maintenant, le modèle SSM est pleinement intégré dans les spécifications de PIM-SM [42].
2.10.3 Limitations de PIM-SSM
La principale limitation de PIM-SSM découle de son principe de base: il n'y a qu'un seul
émetteur par canal. Pour les applications de groupe avec plusieurs sources, il faut donc : soit créer
autant de canaux que de sources, soit centraliser les émissions via un réflecteur (relais), ce qui
nécessite des adaptations au-dessus de la couche IP.
Si on utilise un service réseau SSM pour des applications utilisant le service ASM (découverte
implicite des sources), un mécanisme de découverte dynamique des sources doit être mis en place.
Ce mécanisme peut être intégré dans l'application elle-même ou bien sous forme d'une couche
intermédiaire (middlware) qui émule le service ASM au-dessus de SSM. C'est, par exemple, la
solution proposée dans SSMSDP [43], [44] : une session ASM (au-dessus de SSM) est désignée par
un canal de contrôle (C,C+ Les récepteurs s'abonnent au canal de contrôle. Les sources
s'annoncent auprès du contrôleur qui propage ces annonces dans le canal de contrôle. Les
récepteurs peuvent alors s'abonner aux canaux de chaque source. Une telle solution est en cours de
discussion à I'IETF [43], [45].
Même s'il n'y a qu'une seule source de données, un modèle multipoint-à-multipoint peut aussi
servir aux récepteurs de données pour émettre des informations de contrôle. Par exemple, les
rapports RTCP [40] sont normalement envoyés au groupe et donc reçus par tous, ce qui permet à
chacun de connaître l'état de la transmission. Dans [46], deux mécanismes sont proposés pour
continuer à utiliser RTCP avec un canal SSM :
soit les rapports RTCP sont envoyés en unicast à la source qui les réémet tels quels dans le
canal ;
soit les rapports RTCP sont synthétisés par la source avanr d'étre réémis, ce qui décharge le
canai RTCP mais diminue la précision de l'information et augmente la charge de traitement
de la source s'il y a beaucoup de récepteurs. L'article [47j érudie d'autres probltmes
d'intégration des modèles ASM et SSM.
Une autre limitation est liée au nombre d'états créés dans le réseau. D'une part, il n'y pas
d'arbre partagé, donc si n nœuds voulant être à la fois émetteurs et récepteurs multicast, alors n
arbres doivent être mis en place. Par ailleurs, dans PIM-SM d'origine (modèle ASM), une branche
spécifique à une source S n'est créée que si un paquet est au minimum émis par S. Avec HM-SSM,
le récepteur s'abonne d'emblée au canal (S,G), même si la source n'émet pas encore ou n'existe pas.
Cela peut donc créer un grand nombre d'états inutiles dans les routeurs et peut donc être une
source potentielle d'attaque par déni de service distribué (DDoS).
2.11 Mdticast et IPvG
L'arrivée d'IPv6 [48j, la nouvelle version du prorocole IP, a été l'occasion de chercher de
nouvelles solutions au problème du multicast. De ce point de vue, IPv6 apporte des nouveautés
d'une grande importance du fait de son espace d'adressage beaucoup plus grand, et de la plus
grande facilité pour introduire de nouveaux mécanismes grâce aux extensions d'en-tête. De plus, le
protocole d'adhésion au groupe a été intégré dans ICMP.
2.11.1 Adressage multicast IPv6
Les adresses IPv6 sont codées sur 128 bits [49]. Les adresses bmadcast n'existent plus. Le format
de base d'adresses multicast est composé d'un préfixe de 8 bits valant FF, de 4 bits représentant des
drapeaux ylgs), de 4 bits indiquant la portée, puis de 80 bits dont la signification dépend desflags (et
donc nuls si les fiags sont à zéro), et finalement de 32 bits de numéro de groupe, le Gid. La
correspondance entre adresse multicast IPv6 et adresse multicast IEEE802 consiste à prendre les
32 derniers bits de l'adresse IPv6 (le Gid) et à les faire précéder du préfixe hexadécimal 3333. Deux
différents Gid auront donc deux adresses MAC différentes.
La portée peut prendre les valeurs prédéfinies 1 (locale au nœud), 2 (locale au lien), 5 (locale au
site), 8 (iocale à l'organisme) et E (globale). Les 4 bits de drapeau y$ désignent une adresse
permanente si t=O ou transitoire si t= 1. Par exemple, EF02:O::D représente une adresse permanente
d'une portée locale au lien (tous les routeurs PIM du lien), et W05:0::7:3 est l'adresse permanente
locale au site de tous les serveurs DHCP. L'adresse PIE::7777 représenterait donc le groupe
global transitoire de Gid 7777. Du fait de la grande taille des adresses, les 80 bits inutilisés dans le
format de base ont permis de créer de nouveaux moyens d'douer des adresses multicast. Le flag à
1 indique une adresse basée sur un préfixe unicast [50]. Dans ce cas, les 80 bits sont découpés en 8
bits réservés (à O), 8 bits de longueur de préfixeplen et 64 bits de préfixeprefùs. LaLasignification est
que cette adresse a été douée (« appartient D) au réseau d'adressep@x/phn. Par exemple, l'adresse
FF3E:40:2001:660:220:102::7777 est une adresse transitoire globale appartenant au réseau de
préfute 2001:660:220:102/64. Il y a possibilité de créer 232 adresses de groupe dans ce réseau. Avec
ce codage il devient assez facile d'douer des adresses globales uniques. Notons que si une telle
adresse appartient au réseau de préfüre correspondant, elle est néanmoins globale et peut être
utilisée en émission ou en réception partout dans Internet : cela n'est en aucun cas un mécanisme
de contrôle sur l'utilisation.
Un cas particulier concerne les adresses SSM : elles correspondent à des adresses basées sur un
préfixe unicast de longueur nulle (pIen=O), donc au préfixe FF3x::/96. Par exemple, FF3E::7777
correspond au canal global 7777 associé à la source du paquet.
2.11.2 Protocole d'adhésion aux groupes : MLD
Dans l'architecture IPv6, le protocole IGMP a été intégré dans le protocole ICMPv6. Les
messages correspondant à IGMP forment le (sous-)protocole MLD (M~fticast Listener Discovey). La
première version [51] dérive directement de IGMPv2 [21j, alors que la deuxième version MLDv2
[52] qui intègre le filtrage de sources et permet l'utilisation du service SSM correspond à IGMPv3
2.11.3 Mécanisme RP-embedded
Un dernier cas particulier des adresses basées sur le préfixe unicast est appelé RP-embedded
(adresse du RP intégrée) [53]. Dans ce cas, les @g.r valent O111 et les 80 bits réservés se
décomposent de 4 bits à zéro, 4 bits Wad, 8 bits plen et 64 bits de prTx. L'idée est qu'une adresse
unicast complète (du RP) peut être reconstituée sous la forrnepréfixe/len::tpad. Cette adresse unicast
sera unlisée comme celle du RP correspondant au groupe. Par exemple,
FF7E:540:2001:660:220:102::7777 intègre l'adresse de RP 2001:660:220:102::5. Ce codage permet
donc de créer 16 RP par lien, chaque RP pouvant théoriquement gérer F2 groupes. Notons que ces
adresses de RP ne sont pas créées par le mécanisme d'auto-configuration habituel d71Pv6.
Nous pouvons conclure qu'avec IPv6, l'allocation d'adresses IPv6 est complètement simplifiée
et des protocoles comme MASC et AAP ne seront plus utiles. Par ailleurs, le problème de la
détermination d'un RP unique pour un groupe ASM semble pouvoir être résolu avec le mécanisme
W-embedhd, ce qui ouvre la porte au routage ASM inter-domaines en n'utiiisant que PIM-SM. Le
protocole MSDP n'a d'ailleurs pas été porté en IPv6. En ce qui concerne l'utilisation de PIM
bidirectionnel avec RP-embedded, le problème est plus complexe car les routeurs ne connaissent pas,
A l'avance, tous les RP possibles et ne peuvent donc pas calculer les interfaces DF. Le mécanisme
actuel d'élection des routeurs DF est trop long pour être effectué à la volée lors de la réception d'un
paquet de données.
2.12 Comparaison des différents protocoles
Il y a beaucoup de critères de comparaison possibles concernant les protocoles de routage
multicast. Ces critères doivent être divisés en deux grandes catégories, portant d'une part sur la
qualité de la diffusion du point de vue des utilisateurs, et d'autre part sur les ressources nécessaires
dans le réseau. Un troisième point concerne la facilité de déploiement, en particulier le déploiement
incrémental.
2.12.1 Qualité des arbres de diffusion
Ici, deux critères principaux interviennent :
le chemin des données d'une source vers un récepteur passe-t-il ou non par un nœud central
(arbre partagé) ou bien est-ce un chemin direct (arbre par source) ?
le chemin est4 un plus court chemin (pour une certaine métrique utilisée par le routage
unicast), ou bien est-ce un plus court chemin inverse construit par RPF ? On peut noter que
cet aspect a été peu traité dans les protocoles réellement implémentés, alors que le fait
d'utiliser un plus court chemin inverse peut étre plus pénalisant que de passer par un centre
1541, [551.
Diverses combinaisons sont possibles, par exemple dans PIM-SM, les paquets de données
peuvent d e r par le chemin direct au RP puis par le chemin inverse aux destinataires. Notons SPT un arbre de plus courts chemins, RSPT un arbre RPF, DC un chemin direct vers un point
intermédiaire (centre ou autre nœud de l'arbre), et RC un chemin inverse vers un intermédiaire. Le
tableau 2-1 synthétise les caractéristiques des arbres construits.
DVMRP
PIM-DM
MOSPF
PIM-SM (ASM)
CBT
PIM- bidireta'onnel
BGMP
PIM-SSM
l'arbre
Par source I - I
Par source
Partagé DC
Partagé RC
Par source
Partagé DC
Partagé Par source
Par source
l'arbre
RSPT
intra zone SPT « approché » interzones .
PZM-rgiiser vers RP Après PIM-qiifer-
RSMT
RSPT 1 DC vers i'amont puis RSPT vers i'aval
Tableau 2-1 : Qualité des chemins de données
2.12.2 Coût des protocoles
Le coût du protocole dépend de plusieurs paramètres :
le surcoût en bande passante pour les données (inondations, encapsulations) ;
le coût en bande passante de signalisation ;
le coût en nombre d'états à mémoriser dans les routeurs ;
le coût en traitement dans les routeurs.
Un récapitulatif est donné dans le tableau 2-2.
DVMRP
PIM-DM
MOSPF
PIM-SM
CBT
PIM
bidirect
BGMP
PIM-SSM
Surcoût en bande passante
(données)
Inondation
Inondation
Données vers les routeurs interzones
Encapsulation vers le RP
Encapsulation vers le centre
Signalisation hors arbre
Elagage périodique
Elagage périodique
Diffusion de l'état des liens
Annonces BSR
Annonces BSR
Annonces BSR
Annonces MBGP
Tableau 2-2 :
Etats hors arbre
%age
Elagage
Base d'états des
t I 1 Un par groupe 1 oui
Etats : nombre d'arbres par
w“'Pe
Un par source active
Un par source
liens
1 + I par source 1
Etats dans les nœuds
relais
oui
oui active
Un par source active
active
Un par groupe
oui
Un par groupe
active
source oui
Un par groupe
active ou non
oui
Co& p u r le réseau
2.13 Conclusion
De nombreux travaux ont porté sur Ie routage multicast dans Enternet depuis une quinzaine
d'années visant à résoudre les problèmes d'allocation d'adresses, de contrôle des sources, et de
routage proprement dit, y compris l'échelle #Internet. Actuellement, avec l'abandon programmé de
BGMP et MASC, et du fait que MSDP n'est pas extensible, il semble qu'en IPv4 la seule solution
de niveau IP fiable à grande échelle soit l'uthation de PIM en mode SSM. Diverses solutions
permettant d'implanter le modèle de service ASM au-dessus d'un service SSM sont en cours à
l'étude. Dans le cadre d71Pv6, le mécanisme RP-embedded pourrait permettre d'utiliser directement le
modèle ASM, si les problèmes de contr6le de source et de fiabilité au niveau du RP sont résolus.
D'autres limitations au déploiement du multicast au niveau IP portent sur la gestion de la
qualité de service (bande passante, délai, gigue, fiabilité, etc.) et sur le passage à l'échelle. En effet,
les protocoles du routage multicast existants ne garantissent aucune qualité de service et sont mal
adaptés aux réseaux de grandes envergures comme le réseau Internet. Dans ce sens, nous
proposerons, dans le chapitre suivant, une architecture hiérarchique pour le routage mulricast dans
Internet qui permettrait le passage a l'échelle et qui prendrait en compte la qualité de service. Cette
architecture est basée sur la technique du clustering et sur un arbre partagé avec des points de
rendez-vous dynamiques choisis d'une façon optimale.
Chapitre 3
3 Architecture hiérarchique du groupe
multicast garantissant la QoS
Les applications muitimédia, teiles que les vidéoconférences sur Interner, nécessitent une
gestion efficace de la qualité de service (QoS) et mettent en jeu un grand nombre de participants.
Dans le but de satisfaire les exigences de ces applications, nous proposons une architecture
hiérarchique du groupe multicast5, dénotée AHM, extensible aux réseaux de grandes dimensions et
sensible à la QoS. L'architecture AHM s'appuie sur la technique de clustering et sur un arbre
partagé dont les points de rendez-vous sont choisis de façon sélective et dynamique pour construire
un arbre de diffusion restreint reliant tous les membres du groupe rnulticast. Les simulations
menées ont démontré que l'architecture AHM a de meilleures performances que l'algorithme
DDVCA (Dely and D e 4 Vanution Constraint Algorith) [58]. En effet, l'architecture AHM permet
de réduire efficacement le taux d'occupation de la bande passante, le taux de perte et la variation du
délai multicast par rapport à DDVCA. De plus, l'architecture AHM maintient une complexité de
remps inférieure à celie de i'algorithme DDVCA.
Dans ce chapitre, nous nous intéresserons particulièrement à la gestion de la QoS afin de
répondre aux besoins des applications multimédia dans le réseau Internet. Dans cette optique, nous
présentons l'architecture hiérarchique du groupe multicast AHM qui est formée de deux phases.
Dans un premier temps, nous divisons le groupe muiticast M en k-chster~ disjoints qui sont chacun
représentés par un CH. Dans un deuxième temps, nous interconnectons ces CHs par le biais d'un
arbre partagé avec des points de rendez-vous choisis d'une façon dynamique et sélective.
3.1 Motivation
La généralisation des réseaux hauts débits (câble, ADSL, . . .) permet d'envisager une utilisation
plus large dïnternet avec la transmission de flux multimédia. O n peut imaginer la généralisation
des setveurs de vidéo à la demande, des vidéoconf6rences et des chaînes de télévision. Mais la
mulriplicarion des contenus multimédia transmis sur le réseau accroit aussi le risque des sarurations
de la bande passante. De plus, les applications multimédia interactives exigent des contraintes en
QoS et nécessitent des commuiiications rnuitipoints à grande échelle. Il est donc nécessaire
C'est un ensemble d'utilisateurs participant à une méme session muitimédia.
6 11 consiste à diviser le réseau en clusters (ou grappes) et élire un leader (CH : Ciuster Head) pour chaque cluster afin de représenter un ensemble d'éléments par un seul nœud (CH).
d'optimiser l'utiiisauon de la bande passante et de limiter le trafic au strict minimum tout en
assurant une certaine QoS. Le routage multicast permet d'introduire des capacités de diffusion
restreintes vers des groupes, et conduit à une utilisation optimisée des ressources pour les
communications mulhpoints. Par contre, il reste beaucoup à faire pour déployer le routage
mdticast en tenant compte de la QoS.
Les protocoles de routage multicast ont été largement étudiés dans la littérature [56].
Cependant, la plupart d'entre eux ne permet pas le passage à l'échelle (scalability) et ne gère pas, ou
sans efficacité la qualité de service (QoS). Par ailleurs, plusieurs travaux ont été menés pour le
support de la QoS dans les réseaux [57l. Ces travaux portent essentiellement sur les fonctionnalités
de bas niveaux (ordonnancement, gestion de trafic, réservation de ressources, différentiation de
service, etc.). Le développement de routage multicast sensible à la QoS a moins amré l'attention,
bien qu'il soit indispensable pour les applications rnultimédia. Par conséquent, de nombreux
développements sont nécessaires concernant la gestion de la QoS et les communications de groupe
pour permettre au réseau Internet de supporter efficacement les applications multimédia.
Rajoutons au besoin de scalability, les applications mdtimédia exigent également de
rigoureuses conditions de QoS telles que le déIai7, la bande passantes, la fiabilité9 et la variation du
délai mdticast'0. En effet, Il est nécessaire que le délai d'acheminement entre les participants soit
suffisamment faible pour permettre l'interactivité. De même, Ie débit disponible doit être
suffisamment élevé et le taux de pertes suffisamment faible. L'ualisation d'un arbre partagé entre
les éléments d'un groupe multicast (participants à une session multimédia) peut optimiser le taux
d'occupation de la bande passante, mais conduit à des délais élevés. Par ailleurs, les applications
multirnédia nécessitent que le flux envoyé par une source doit être simultanément délivré par tous
les participants au même groupe multicast, ce qui implique la minimisation de la variation du délai
multicast. Les travaux qui ont été menés pour construire un arbre de diffusion restreint minimisant
la variation du délai mdticast sous la contrainte du délai sont défuiis et discutés en [59]. Les auteurs
ont notifié ce problème par DVBMT (Dehy and delay Variadon-Bounded Muldccut Tee), qui est connu
pour être un problème NP-complet. Les approches DVMA (Delay Variahon MuIticmt Algoritbm) [59]
et DDVCA (Dehy and Dehy Variation Consfraint Akorifbm) [58] sont deux heuristiques connues du
problème DVBMT.
L'approche DVMA [59] construit au début l'arbre de diffusion multicast en considérant
seulement la contrainte du délai. Ensuite, l'arbre construit est amélioré à l'appui de la deuxième
contrainte qui est la variation du délai multicast. Ainsi, l'algorithme DVMA construit un arbre
multicast qui permet de minimiser le délai et d'optimiser la variation du délai multicast. Cependant, , DVMA exhibe une grande complexité qui est O (PXm*d), où la valeur maximale de /peut atteindre,
7 Le délai caractérise le temps de transfert de bout en bout.
La bande passante correspond au débit possible entre deux points d'extrémités, eue est limitée par le débit des liaisons physiques traversées, mais également par les flux concurrents et la capacité des équipements.
La fiabilité traduit le taux d'erreurs moyen des différents supports cc des équipements de communication.
10 La variation du délai mulucast d'une source représente la différence du temps entre la première réception et
la dernière réception d'un paquet multicast envoyé par cette source pour un groupe mdticast.
dans le cas extrême, le nombre de chemins existants dans i'arbre construit, m est la t d e du groupe
multicast M et n est le nombre de nœuds dans le réseau. Par conséquent, la complexité élevée de
l'algorithme DVMA ne lui permet pas d'être utilisé pour des applications rnultimédia interactives de
courte durée.
L'approche DDVCA [58] résout le problème DVBMT en proposant une autre solution
heuristique avec une complexité inférieure à celle de DVMA. Les auteurs de DDVCA proposent de
construire un arbre centré (CBT) autour d'un seul nœud cenh. Ce nmud minimise la variation du
délai multicast dans l'ensemble des nœuds appartenant au groupe multicast. Il a été démontré que
DDVCA a de meilleures performances que DVMA en terme de variation du délai muiticast [58].
En outre, DDVCA a une complexité inférieure à celle de DVMA, qui est de l'ordre de O (mnz).
Ntanmoins, l'utilisation d'un seul nmud centre dans DDVCA provoque k problème de congestion
autour de ce dernier car toutes les sources du groupe multicast peuvent, en même temps,
transmettre leurs flux au centre. En outre, quand ces flux arrivent au naud centre, il les rediffuse
aux différents membres du groupe multicast en unicasr, ce qui cause une grande consommation de
ressources. Par conséquent, DDVCA perd les avantages du routage multicast.
Pour pallier à ces limites, à savoir les problèmes de scalabilité et de garanties de QoS, nous
proposons une architecture hiérarchique permettant une communication efficace entre les membres
du groupe multicast et garantissant la QoS. De plus, elle est extensible aux réseaux de grandes
envergures. Cette architecture, baptisée « AHM », résout le problème DVBMT avec une complexité
inférieure à celle de DDVCA. L'architecture AHM s'appuie sur le clustering et prend en compte le
délai et la variation du délai muiticast pour construire un arbre de diffusion restreinte partagé entre
Ies membres du groupe multicast.
Dans un premier temps, nous décomposons les membres du groupe multicast, selon leurs
localisations et leurs réponses aux besoins des applications en QoS, en clusters iquilibrés et
disjoints. Ensuite, une tète de cluster, dénotée CH (Cluster Head), est élue dans chaque cluster. Le
nœud CH est responsable de l'ensemble des nœuds de son propre cluster : c'est à lui de gérer les
communications inrra-cluster. Ainsi, un nmud ordinaire ne communique avec les autres participants
au groupe multicast qu'à travers le CH de son propre clusrer. Tous les éléments d'un cluster
rejoignent leur CH par le plus court chemin en prenant comme métrique le délai, ce qui permet
d'obtenir une communication intra-cluster avec un délai minimum. A ce stade nous avons construit
le premier niveau de l'arbre de diffusion multicast.
Dans un deuxième temps, le CH qui minimise la variation du délai multicast avec Ics autres
CHs désigne le premier point de rendez-vous (PR,). Nous pouvons maintenant construire le
deuxième niveau hiérarchique de l'arbre multicast avec un nombre réduit de nœuds (i'ensemble de
CHs élus) ce qui permet de résoudre le problème de passage à l'échelle. En fait, le premier point de
rendez-vous PRi, forme son domaine autonome ADl avec les CHs qui peuvent communiquer avec
lui dans un délai inférieur à un seuil prédéfini. Ensuite, parmi l'ensemble des CHs qui ne sont pas
dans le domaine autonome de PRl, nous désignons le CH le plus proche, en terme de délai, du PRi
comme le deuxième point de rendez-vous (PR2). Ce nouveau point de rendez-vous construit son
domaine autonome (AD4 avec les CHs qui ne sont pas dans ADi, de la même façon que PRI.
Nous reprenons ce processus jusqu'à ce que tous les CHs soient incorporés dans l'arbre de
diffusion multicast.
Le résultat de cette construction donne un arbre de diffusion restreint, partagé entre les
éléments du groupe multicast, permettant de minimiser en même temps le délai et la variation du
délai multicast, d'optimiser I'utilisation des ressources et d'économiser le taux d'occupation de la
bande passante. Dans DDVCA, la construction de l'arbre multicast est basée sur un seul point de
rendez-vous (centre) et les paquets sont transmis en unicast par le centre vers les différentes feuilles
de l'arbre construit (membres du groupe multicast). Dans AHM, nous utilisons plusieurs points de
rendez-vous choisis d'une façon dynamique et sélective. Ceci nous permet de partager la charge du
réseau autour de différents points de rendez-vous. De plus, AHM n'utilise le mécanisme d'unicast
que pour les communications intra-cluster, ce qui permet également d'optimiser le taux
d'occupation de la bande passante.
3.2 Arbres multicast
Avant d'ktudier plus en détail l'architecture AHM, il est nécessaire de présenter les différents
types d'arbres de diffusion qu'il est possible de construire. En effet, une des difficultés majeures
dans le développement des protocoles de routage rnulticast est le choix du type d'arbre : certains
arbres sont très performants du point de vue des délais de bout en bout, mais urilisent en général
beaucoup de ressources. D'autres types d'arbres permettent d'utiiiser le minimum de ressources
possibles mais conduisent à des délais de bout en bout élevés, etc. Dans ce paragraphe, nous
présenterons les principaux types d'arbres avec leurs avantages et leurs inconvénients.
3.2.1 Arbre partagé et arbre spécifique
Tout d'abord, il est important de noter que les arbres multicast peuvent être classés en deux
grandes catégories : les arbres partagés ou les arbres spécifiques à une source. Un arbre spécifique
est construit à partir d'une source déterminée, de sorte qu'il est nécessaire de construire plusieurs
arbres pour un même groupe multicast si ce groupe comprend plusieurs émetteurs. Il s'agit donc
d'arbres unidirectionnels de la source vers les récepteurs. Au contraire, un arbre partagé est une fois
pour toutes établi pour interconnecter tous les membres du groupe multicast. II s'agit donc d'arbre
bidirectionnel, où il n'y a pas de djscinction entre émetteurs et récepteurs.
La diffkrence entre ces deux types d'arbres porte sur le nombre d'états à stocker pour
maintenir l'arbre en place. Dans le cas d'un arbre spécifique, il y a un arbre à décrire pour chaque
source. Autrement dit, les nœuds du réseau doivent stocker un nombre d'ktats de l'ordre B(G*S), où
G est le nombre de groupes multicast présents dans le réseau et S désigne le nombre moyen de
sources par groupe multicast. Dans le cas des arbres partagés, au contraire, le nombre d'états à
stocker ne dépend pas du nombre de sources, de sorte que I'ordre de grandeur est dans ce cas en
W).
3.2.2 Arbre de plus court chemin (SPT)
Les arbres de plus court chemin, nommés SPT (Shortest Path Tne), sont les arbres les plus
uuhsés actuellement. La construction d'un arbre SPT est plus simple : chacune des f e d e s de I'arbre
est connectée à la source en ualisant le plus court chemin défini par le protocole unicast sous-
jacent. Par construction, les délais de transmission de ce type d'arbre sont minimaux. Du point de
vue de l'utilisation des ressources, les arbres SPT ne sont, par contre, pas très économiques. Tout
d'abord, il s'agit d'arbres spécifiques. D'autre part, chaque branche est construite indépendamment
des autres par routage unicast, sans se soucier d'une éventuelle proximité entre nmuds du même
groupe muiàcast.
3.2.3 Arbre de Steiner
Un arbre de Steiner est un arbre partagé permettant de connecter les membres du groupe à
travers un graphe donné, et ce en minimisant les ressources utilisées. La construction d'un arbre de
Steiner, qui est centralisée, est un problème NP-complet, ce qui le rend extrêmement dtfficile à
mettre en œuvre dans un réseau de grande taille. Il s'agit néanmoins d'un problème bien connu de
la théorie des graphes et il existe une littérature abondante sur le sujet [56]. De nombreuses
heuristiques ont été proposées, l'heuristique KMB [GO] étant l'une des plus utilisées. La plupart des
heuristiques amène à un problème de type minimzm qanning h e u . Par construction, les arbres de
Steiner sont optimaux vis-à-vis du coût (utilisation des ressources).
3.2.4 Arbre centré (CBT)
Nous avons vu l'intérêt des arbres partagés pour réduire le nombre d'états à stocker au niveau
des nœuds du réseau. L'arbre de Steiner permet de construire des arbres partagés, mais la
construction de ces arbres est très complexe et nécessite la localisation de tous les membres des
groupes multicast. L'algorithme CBT (Con Based Tree) 1311 est une approche de l'arbre centré. La
construction d'un arbre centré est extrêmement simple, mais elle requiert la connaissance du point
de rendez-vous (PR). Pour connecter une feuiiie à l'arbre multicast, il suffit de la connecter au PR
par le plus court chemin (en utilisant le routage unicast sous-jacent). Comme dans le cas d'un arbre
SPT, les branches se rejoignant en un même point sont fusionnées. Les performances des arbres
centrés dépendent de l'emplacement du point de rendez-vous qui est en généra1 statique.
1 1 Il s'agit de rejoindre tous les points d'un graphe en utilisant le moins de ressources passible.
Complexité
Dynamisme
Coût
Etat
Délai
Concentration
Tableau 3.1 : Comparaison d'arbres multicast
SPT
Faible
Bon
Important
O(G*S)
Faible
Faible
CBT
Faible
Bon
Moyen
O(G)
Moyen
Forte
Steiner
Grande
Mauvais
Faible
w )
Moyen
Forte
3.2.5 Bilan
Sur le tableau 3.1 sont résumées schématiquement les caractéristiques moyennes des trois
types d'arbres multicast étudiés.
Les arbres de Stei~ser sont donc particulièrement intéressants du point de vue théorique car ils
permettent de réduire considérablement ies ressources (nombre de liens et états dans les routeurs)
utilisés par un groupe multicast. Puisqu'ils ne permettent pas une gestion dynamique et ne sont pas
simples à construire, les arbres de Sfeinw ne sont pas utilisés à l'heure actuelle. Les arbres SPT sont
les plus utilisés pour leur simplicité et leurs exceilentes performances pour les flux multimédia
(faibles délais et faible concentration). Néanmoins, ce type d'arbre consomme beaucoup de
ressources. Les arbres CBT apparaissent comme une solution intermidaire : les délais peuvent être
assez bons si le nœud centre est bien placé, et l'urilisauon de ressources est très nettement réduite
par rapport à des arbres SPT dans le cas de groupes possédant plusieurs sources.
3.3 AHM : Architecture Hiérarchique du groupe Multicast
Un réseau informatique peut être représenté par un graphe G = (v, E) où V est l'ensemble
des nœuds et où E est l'ensemble des liens (arcs). Chaque lien ( i , j ) ~ E est associé à un délai de
qui est la somme des temps d'attente, de transmission et de propagation de ce lien. Nous
définissons un chemin comme une suite de nœuds u, i , j ,..., k,v telle que (u, i), (i, j), ..., (k, v ) ~ E . Soit
~ ( u , V) = {(u, i), (i, j),..., (k, v)] représente le chemin d'un nœud u à un nœud W. Si tous les éléments du
chemin sont distincts, alors nous disons que c'est un chemin simple.
Nous considérons un groupe multicast M c G , formé de m= 1 M 1 noeuds distribués dans le
réseau Internet qui est représenté par le grapheG = (v, E). Un nœud peut désigner un terminal
(source ou destination) ou bien le premier routeur dit routeur désigné (DR : Designated muter) qui connecte un terminal avec le réseau. Ces noeuds possèdent différentes identités et participent à une
même application multimédia comme la vidéoconférence. La communication entre deux éléments
mi et m/ de M peut être réalisée par différents chemins. Nous supposons que la taille du groupe
multicast est très grande et que ce groupe contient plusieurs sources.
SoitYD la fonction qui permet de calculer le délai le long d'un chemin P(u,v)et P,,,i,,(~,w) est le
plus court chemin, en prenant comme métrique le délai, entre les noeuds u et v. La variation du ~
délai multicast au naud y dénotéSu, est la différence de temps entre la première réception et la
dernière réception d'un paquet, diffusé par le nœud u et empruntant les plus courts chemins en
terme de délai, par les membres du groupe multicast. Plus formellement :
Les arbres hiérarchiques offrent des propriétés intéressantes pour supporter le multicast dans
les grands groupes avec une prise en compte de la QoS. Les arbres de Steiner, étant trop complexes
et nécessitant des informations sur la localisation des nœuds, nous nous intéresserons aux arbres
centrés et aux arbres de plus courts chemins pour construire l'arbre de diffusion restreinte qui
permettrait de lier les éléments du groupe multicast M={mr, m2, ..., mm). La construction de
l'architecture hiérarchique AHM est formée de deux étapes. Dans la première étape, nous divisons
le groupe muiticast en clusters locaux et nous élisons un CH pour chacun de ces clusters
(clustering). Dans la deuxième étape, nous interconnectons les CHs par le biais d'un arbre centré
avec des points de rendez-vous choisis d'une façon sélective et dynamique.
3.3.1 Clustering
Vu le nombre élevé de participants, il est intéressant de diviser le groupe multicast M en
clusters disjoints selon la concentration de ses membres dans les diverses régions pour assurer la
QoS : optimiser le taux d'occupation de la bande passante, minimiser le délai et assurer la
communication entre les éléments de M. Par deu r s , la division du groupe multjcast M en clusters
disjoints permet de gérer indépendamment ces clusters. Même en cas de modification structurelle,
les informations de contrôle liées à chaque cluster ne doivent pas parvenir aux clusters non
concernés. Pour accomplir ce clustering, nous procédons en trois étapes.
3.3.1.1 Construction du voisinage
Cette première étape concerne la construction du groupe de voisinage GVi, pour chaque nœud
mi, en utilisant des contraintes sur le délai et une portée de vie des messages m 1 2 . Etant donné un
seuil de délai d'aller/retour SzpD et une portée de vie des messages TIZ, chaque nmud construit
son ensemble de voisinage ne contenant que les membres du groupe mulucast M. Un nœud m,
appartient à Gx, si le 777, depuis mi à mj (décrémenté saut par saut) n'est pas nul, et si le délai
d'aller/retour Ri'@ (Round-Tn) Del@ entre pni et m, est inférieur au seuil SMPD. Formellement,
GV, = (m, E M 1 RTDV i Su@ & &TTLI, > O)
3.3.1.2 Construction des groupes de transit
Les applications multimédia mettent en œuvre des flux dont les caractéristiques et les
exigences en terme de QoS (bande passanre, délai, taux d'erreurs, etc.) sont très diverses. Dans le
cas d'Internet, ces flux traversent généralement une succession de réseaux autonomes, chacun
pouvant avoir sa propre politique de gestion de la QoS. Dans AHM, pour construire les voisinages
des nc~uds, les paramètres pris en compte sont le délai et le TTZ. Pour garantir plus de QoS, chaque
nœud raffine son voisinage en construisant un groupe de #rand selon des tests sur sa capacité de
traitement et de stockage des unités de média.
Test s w la c+é de traitement: il s'agit de vérifier si un noeud a une capacité de traitement
suffisante pour traiter les flux de données venant des membres de son voisinage. Un nœud
doit être capable de traiter toutes les unités médias générées simultanément par les nœuds
voisins.
12 ?TL :The to l ive, exprimé en nombre de sauts.
Où 0, désigne le taux de génération des unités média du nœud q, exprimé en nombre
d'unités média par seconde ; et mpf; représente le temps nécessaire au naeud mi pour traiter
une unité média.
Test sur L'espace mémoire d;sponibLe: il consiste à vérifier si un noeud est capable de stocker
toutes les unités médias venant des différents noeuds de son voisinage afin de compenser
les variations de délais (gigues) des chemins reliant ce nœud avec ces voisins.
Où Bi représente l'espace maximal du buJer disponible au ntzud m;; et Bo dénote la t d e
du buffer nécessaire pour compenser la gigue13 du chemin P(m* mJ).
En exécutant ces deux tests (3-3) et (3-4), chaque nœud construit son propre groupe de &ans&
à partir de son ensemble de voisinage (Figure 3-1). Les deux règles suivantes sont nécessaires pour
qu'un groupe de transit d'un noeud soit valide :
'dmi E M,IGT,I > 2 : chaque groupe de hmrif doit être consritué de deux nouds au
minimum.
Vm, ,m, E M,mi E GT, s m, E GT, : si le nœud m, est un voisin du noeud m,, alors
m, l'est aussi.
l 3 C'est la variation de délai de bout en bout d'un chemin; c'est-à-dire la différence entre le délai maximal
et le délai minimal nécessaires pour parcourir un chemin.
3.3.1.3 Groupement et élection
.... ..-............ __ .......
Une fois que les groupes de branjit sont construits, chaque noeud connaît les éléments de son
propre voisinage et les chemins qui le relient à ces éléments. Cependant, certains noeuds peuvent
appartenir à plusieurs groupes de fmnsit à la fois (Figure 3-1). Pour résoudre ce problème, nous
avons conçu un mécanisme qui permettrait d'enlever les connections inutiles. Celui-ci consiste à
créer des clusters locaux à partir de ces groupes de transit à condition que chaque noeud
n'appartienne qu'à un seul cluster (Figure 3-2). En effet, chaque nœud m; diffuse le contenu de son
propre groupe de transit aux nœuds voisins (les éléments de GT,) par le biais d'un message
Tran&(Gxj. Une fois ces messages reps, chaque récepteur mi sélectionne le maximum de noeuds
existants simultanément dans les groupes de transit des nœuds de son propre groupe de transit
(Ci = n,,x, TG, ). Dans le cas où un élément appartiendrait à plusieurs clusters, il sera mis dans
I
celui ayant la plus petite taille. Cela permet d'éqdbrer le nombre de noeuds dans les clusters.
Figure 3-2 : Création de clusters disjoints
1 I
Figure 3-3 : Election des CHs
Ainsi, le groupe multicast M est divisé en clusters locaux équilibrés, où chaque membre de M
appartient à un seul cluster (Figure 3-2). Il reste maintenant à élite une tête de cluster (CH : Cluster
Head) principale et une autre secondaire pour chaque cluster afin de représenter l'ensemble des
éléments d'un même cluster par un seul noeud (Figure 3-3). En d'autres termes, un nœud ordinaire
ne communique avec les autres éléments du groupe multicast qu'à travers le CH de son propre
cluster. Si un nœud veut difhset un message aux autres membres du groupe multicast, il doit
l'envoyer à travers le CH de son cluster. Ce CH se charge du reste, c'est-à-dire qu'il envoie le
message reçu aux autres membres de son cluster et aux autres CHs. Lorsqu'un CH reçoit un
message de l'extérieur, il le diffuse aux membres de son propre cluster. Le rôle du CH secondaire
est de remplacer le CH principal dans le cas oh ce dernier voudrait quitter le groupe multicast ou au
cas où surviendrait une panne involontaire. L'élection du CH peut être accomplie de plusieurs
façons :
L'élection du noeud qui minimise ia variation du délai multicast avec les noeuds de son
propre cluster.
L'élection du noeud ayant la plus grande taille de mémoire disponible et une grande
capacité de traitement.
L'élection du noeud qui permet l'ouverture vers l'extérieur.
Le CH secondaire est classé immédiatement après le principal CH dans l'élection. Une fois
qu'une tête de cluster CH; est élue, il prend l'initiative de gérer les éléments de son cluster en leur
envoyant un message Etab(C,j pour confirmer la connexion. Ensuite, les nœuds rejoignent leurs
CHs par le plus court chemin en prenant comme métrique le délai. Dans chaque cluster, il y a un
arbre de type SPT dont la racine est le CH et les feules sont les membres du cluster. Ceci permet
de minimiser le délai lors des communications intra-cluster. L'algorithme du clustering est exposé
dans la Figure 3-4.
Let G=(I5 E) a cornputer network and M={m,, m2, ..., mm} a set of
?articipants in group multicast M.
Begin
1. for each node m, E M do //construct a neighboring set VG, of mi 2. VG, = b, E M / RTD, < SupD &&TTL!/ + 0j
3. end of for each ml E M loop 4. for each node mi E M do //construct a transit group TG; of mi
5. a = O, 3 = O //a and 3 are temporaries variables 6 . for each node mi E VGi do
7. o = a + a , , B = B + B g
9. end of for each m, E VGi loop
10. end of for each mi E M Ioop
11. for each node ml E M do / / construction of clusters
12. Ci = n,&, TG,
13. end of for each mi E M loop 14. for each clustet C; do / / election of CH 15. elect cluster head ch; and secondary cluster head sch, 16. T=I-~(ch,}andk=A+I 17. end of for each cluster Ci loop 18. for each clustex head ch, E. r do
19. for each m, E Ci do
20. mjjoifis chi by the path which has a minimum delay.
21. end of for each m, E Ci Loop
22. end of for each cluster head ch, E ï End of the aigorithm
Figure 3-4: Algorithme de clustering
3.3.1.4 Exactitude de la procédure de clustering
Dans cette section nous allons montrer que chaque naud du groupe multicast M appartient à
un seul et unique cluster, autrement dit le-groupe multicast M est composé de k-clusters disjoints.
Lemme 1 :
Chaque nœ~d m; du grove m~lf icaf M dqose d &ne s e ~ h connaksance qui est son clustet:
Preuve :
Supposons par contradiction qu'un nœud u appartient à au moins deux clusters Ci et C, ( u E Ci nc,). Dans la procédure du clustering, quand chaque nœud m; crée son propre groupe de
transit, il diffuse un message « Transit (GTJ » à ses membres contenant ce groupe. Etant donné que
les identités des nœuds du groupe multicast M sont deux à deux distinctes et que chaque nœud
reçoit tous les messages provenant des éléments de son propre groupe de transit. En sélectionnant
le maximum de nœuds qui existent simultanément dans tous les groupes de transit, les nœuds
créent leurs clusters. Si un naud, par exécution d'algorithme, se trouve dans deux clusters à la
fois, il choisit le cluster qui a la plus petite taille. Ainsi, chaque nœud appartient à un seul cluster,
d'où contradiction avec l'hypothèse.
Théoréme 1 :
h p t / p e de mulhkast M est cotaposé de k-cluskors dgsjoink @résentés par des strc/chres bhiérarchiqiles.
Preuve :
Le groupe multicast est composé de k-clusters disjoints (lemme 1). Dans chacun de ces clusters,
un seul nœud est choisi pour assumer le rôle du CH. Ainsi, chaque nœud dans le groupe multicast
garde une seule connaissance qui est le CH de son cluster. Par conséquent, chaque cluster est
représenté par une structure hiérarchique de communication dont la racine est le CH. Par ailleurs,
ces CHs communiquent entre eux via un arbre partagé (voir paragraphe suivant).
3.3.2 Construction de l'arbre partagé entre les CHs
Maintenant, supposons que k-clusters locaux aient été construits et que chacun est représenté
par son CH. Soit T= {chl, chz, ..., ch^} l'ensemble de ces CHs qui sont éventuellement nombreux et
dispersés dans des réseaux différents. Par ailleurs, dans le cas des vidéoconférences on peut avoir
plusieurs sources dans le même groupe multicast. Par conséquent, il faut trouver un arbre de
diffusion restreinte partagé entre ces CHs tout en minimisant le délai, la variation du délai multicast
et l'utilisation des ressources (bande passante, états, etc.).
Dans ce contexte, nous avons utilisé un arbre centré car il est simple à construire et permet de
minimiser les ressources utilisées. De plus, les performances moyennes (coûts, délais) sont
raisonnables dans le cas des applications qui font intervenir plusieurs émetteurs et plusieurs
récepteurs à la fois. Néanmoins, le choix du point de rendez-vous et les problèmes associés rendent
difficile la mise en œuvre de ce type d'arbres dans des réseaux à grande échelle. Dans la littérature et
d'une manière générale, les points de rendez-vous sont choisis de façon statique. Pour notre part,
nous avons déterminé les points de rendez-vous d'une façon sélective et dynamique. De plus, nous
avons utilisé plusieurs points de rendez-vous pour pallier au problème de congestion du trafic au
voisinage d'un seul point de rendez-vous. Ces points de rendez-vous sont choisis parmi l'ensemble
de CHs élus r, en s'appuyant sur les critères de déiai et de variation du délai multicast.
- Type
INlT
ACK
SUCC
Arguments
- adr(chi) : adresse du CH émetteur ch.
- adrM : adresse du groupe multicast M.
- T E : portée de vie maximale du message.
- adr(c4) : adresse du CH émetteur ch,.
- adr(chi) : adresse du CH récepteur ch,.
- adr(chi) : adresse du nouveau point de rendez-vous désigné.
- adr(PR,j : adresse du point de rendez-vous père de chi.
- $ : ensemble des CHs qui ne sont pas encore liés à l'arbre de
diffusion multicast.
- MAT: matrice permettant de mémoriser les délais entre les
éléments de et les points de rendez-vous qui sont déjà créés.
fonction
message
d'initialisation
message
d'acquittement
message successeur
qui permet de
désigner le nouveau
point de rendez-
VOUS.
Tableau 3-2 : Types de messages et structures de données employés
Initialement, les CWs n'ont aucune information sur les adresses des autres CRS. Par
conséquent, chaque CH diffuse, de proche en proche, le message INIT (ïableau 3-2) sur l'adresse
du groupe multicast M pour récolter les informations nécessaires sur les autres CHs. Lorsqu'une
tête de cluster ch, reçoit le message IIVI7'de la tête de cluster chJ, il effectue les opérations suivantes :
L'envoi du message d'acquittement ACK (Tableau 3-2) au CH émetteur ch,
Le calcul de la valeur du délai de communication du chemin minimum entre lui et th,:
La mémorisation de l'adresse de ch, ainsi que la valeur du délai de communication d,j.
A l'expiration d'un certain seuil de temps d'initialisation chaque tête de cluster chicalcule sa
variation du déiai multicast suivante :
Après l'échange des valeurs de variation du délai multicast entre les CHs, le CH qui minimise
la variation du délai multicast dans l'ensemble r est désigné comme le premier point de rendez-
vous que nous dénoterons PR, (6pR, = min@, /chi E T)). Dans le cas où il y aurait piusieun
CHs qui minimiseraient la variation du délai multicast, nous choisirions celui qui a l'identité
inférieure.
Tableau 3-3 : Matrice de délais entre les PRs et les CHs de $
Le premier point de rendez-vous P h construit son domaine autonome DAI en sélectionnant
tous les CHs de r qui sont accessibles depuis PR* dans un délai d'aller/retour inférieur au seuil du
délai 0 ' 4 :
DA, = {ch, E T / ' P , ( P ~ , , (PR, ,ch,)) 4 D )
Puis, il met les CHs non sélectionnés dans l'ensemble f ($=T\{DAl)). Après la construction de
son domaine autonome DAl , le point de rendez-vous PR1 mémorise les délais minimaux calculés
entre lui et chaque tête de cluster ch, appartenant à $, dans la matrice MAT (Tableau 3-3) pour qu'on
puisse déterminer le prochain point de rendez-vous. Ensuite, il envoie Ie message SUCC à la tête de
cluster chg le plus proche de lui, en prenant comme métrique le délai, et qui n'appartient pas à son
domaine autonome DAI . Enfin le point de rendez-vous PR, joint les CHs de son domaine
autonome DA1 par l'arbre de plus court chemin (SPT) dont la racine est PRl.
A la réception du message SUCC de PRi, la tête de cluster chq constitue un nouveau point de
rendez-vous que nous noterons P&, puis il effectue les opérations suivantes :
La sélection de tous les CHs de $15 qui sont accessibles depuis PR;! dans un délai
d'aller/retour inférieur au seul du délai D et la mise de ces CHs sélectionnés dans son
domaine autonome DA2 :
DA, = (ch, E $ / Y, (P,, (PR,, ch, )) -( D ) (3-8)
L'enlèvement de $ les CHs qui ont été sélectionnés : = $ \ (DA21
La suppression des colonnes correspondant aux CHs sélectionnés de la matrice MAT.
L'ajout dans MAT d'une ligne pour stocker les délais minimaux entre PR2 et tous les
éléments de $.
La sélection de $ la tête de cluster cb, la plus proche d'un point de rendez-vous déjà créé
(PR1 ou P&) en prenant comme métrique le délai de communication ; ensuite, l'envoi du
message SUCC à ce nouveau point de rendez-vous que nous noterons PR3.
j4 Le seuil du délai L) est choisi en prenanr compte de l'étendue du réseau.
l 5 L'ensemble des CHs qui n'appartient à aucun domaine autonome.
Enfin, PR1 joint les CHs de son domaine autonome DA2 ainsi que son point de rendez-
vous père (PR,) par l'arbre de plus court chemin (SM') dont la racine est P h .
Figure 3-5 : Structure hiérarchique du groupe multicast
Une fois que le nouveau point de rendez-vous P h reçoit le message SUCC du point de
rendez-vous P h , il effectue la même chose que Pl&, et ainsi de suire jusqu'à l'épuisement de
l'ensemble $. Autrement dit, jusqu'à ce que tous les CHs soient reliés à l'arbre de diffusion rnulticast
(Figure 3-5). Le schéma 3-6 résume l'algorithme de construction de l'arbre partagé entre les CHs.
Let r= ( d l , ch*, .., cbk) be a set of elected duster heads.
Begin
1.
2.
for each cluster head ch, E T do
dm, (ch;, ch,) = the minimum delay between ch, and ch,, where ch, E r /*the
minimum delay is computed by Dijikstra' Algorithrn*/
end of for each cluster head ch, E r loop
for each duster head ch, E r do //calculate the rnulticast delay variation of chi
4 = maxld,, (ch, ,ch,)- d,, (ch,, ch, ] / Vch, , ch, E T, j t k}
end of for each cluster head ch, E r loop
NanCN t eh,, where 6, = min{6, /ch, E F} /* the CH whkh has a minimal
multicast delay variation represents the first core nodes/
8. $ t î, Pmdecessor t NewQV and SetCN t 0
9. while $ # 0 do
1 O. PR, f NewCIV, SeiCRT f SetCN U {PR), PredCpR,) f Pndecessor
1 11. AD, = kh, e T l d, (PR, ,ch,) 4 D} / / P R , builds its autonomous domain
12. PR, joins member of its domain AD; and its predecessor Pred(PR,) by the shortest
path tree which root is PR,
13. $ t $ \ ADi, removes AD; from columns of MAT and adds line corresponding to
{dm, (PRi ,ch,)/ ch, E $1 in MAT
14. NewCIVtch, and Predec~c~or tP& where
dm,, (PR,, 4 ) = min(A44 T(PR, ,4 ) l ch, E $,PR, E S ~ ~ C N ) 15. end of while loop
End of the algorithm
Figure 3-6 : Algorithme de construction de l'arbre partagé entre les CHs
3.3.3 Gestion de l'architecture AHM
Une fois l'architecture AHM construite, un mécanisme doit avoir lieu pour gérer l'ajout et la
suppression des membres du groupe multicast M. On décrit un tel mécanisme comme suit :
Si un simple membre veut quitter le groupe multicast M, alors il est retiré de son cluster via le
CH de ce dernier.
Si un nouveau nœud P, veut joindre le groupe multicast M, il diffuse le message JOIN (adrPg,
adrG, TTZ). A l'aide de ce message, le noeud P, demande aux CHs de sa région de participer
au groupe multicast M. Lors de la réception du message JOIN (adrP,,, ad&, 'TTL) avec le TIZ non nul, tous les simples participants ignorent ce message. Cependant, chaque CH exécute
des tests sur sa capacité de traitement et son espace mémoire disponible. Tous les CHs qui
sont capables d'accueiuir le nouveau noeud P, lui envoient un message de réception
RECP(adr(ch), Bdj) taille) où adr(cb4 est l'adresse du CH émetteur chi, où Bdj est l'espace
mémoire de ch, disponible, et où ta;/& est le nombre des éléments de son cluster C,. Dans le
cas où le noeud P, reçoit plusieurs messages de réceptions, il choisit le cluster local ayant la
plus petite taille ou bien celui qui a un CH ayant le plus grand espace mémoire disponible par
exemple. Une fois que le noeud P,, a choisi un cluster, il joint son CH par le plus court
chemin en prenant comme métrique le délai.
Si un CH veut quitter le groupe multicast ou qu'une panne involontaire survient, alors le CH
secondaire de ce clusrer prend le relais. Pour cela, le principal CH informe le CH secondaire
chaque fois qu'il y a un changement à l'aide d'un message d'information. Ce message
contient toutes les informations nécessaires sur ia gestion de son propre cluster et sur les
liens avec les autres CHs. De plus, il lui envoie périodiquement un message de contrôle afin
que le CH secondaire puisse détecter si le principal CH fonctionne ou non. Une fois que le
CH secondaire prend la tâche, dors il informe les éiéments de son cluster que c'est lui qui va
jouer le rôle du CH principal. Puis, il joint chaque élément de son cluster, ainsi que le point
de rendez-vous de son domaine autonome par le plus court chemin. Enfin, un nouveau CH
secondaire est élu dans ce cluster.
Si un nouveau CH veut joindre le groupe multicast, alors il diffuse un message sur l'adresse
de ce groupe multicast. Chaque CH reçoit ce message, iI lui envoie un message
d'acquittement contenant son adresse et l'adresse du point de rendez-vous de son domaine
autonome. Le nouveau CH joint le plus proche point de rendez-vous par le plus court
chemin.
3.3.4 Complexité de l'algorithme
Dans le but de déterminer la complexité en terme du temps de l'architecture hiérarchique M M , nous considérons le lemme suivant :
Lemme 2 la complexiFé de I'a&onthme AHM, dans le car exbreke, est O[(k+ i ) *q , où k est h nombre L clzi~ters mk et n & nombre de nmds dam Le réseau.
Preuve : la complexité du temps de l'algorithme AHM est constiruée de temps nécessaire pour
exécuter la procédure du clustering (Figure 3-4) plus le temps exigé pour construire l'arbre partagé
entre les CHs (Figure 3-6).
La complexité de la procédure du clustering (Figure 3-4) est O(,+$), où m est la t d e du groupe
multicast M. En effet, un nœud peut construire son groupe de voisinage (ligne 2) dans un nombre
d'itération égale, dans le cas extrême, à m. Etant donné que la procédure du clustering exécute la
boucle16 (1-3) une fois pour chaque nœud de M, la complexité de constmction de groupes de
voisinage pour tous les nœuds de M est O(&). La construction des groupes de transit est effectuée
par la boucle (4-10). Lors de chaque itération de la boucle (&IO), les lignes 7 et 8 sont exécutées
tout au plus m fois ('dm, E, M , ( G ~ ( < m). Par conséquent, le temps nécessaire pour construire
les groupes de transit est O($). La boucle (11-13) permet de construire k-clusters disjoints.
Puisque l'exécution de la ligne 12 exige au plus m itération ( 1 TGi 1 << m), alors la complexité de la
boucle (11-13) est O(&). A ce point, le nombre d'itérations exigées pour élire le CH de chaque
cluster Ci est égal à 1 C I . Puisque la procédure du clustering permet de construire k-clusters
disjoints (RI= 1 Cf 1 + 1 C2 1 +. . . + 1 Ck I), alors l'élection des CHs par la boucle (1 4 - 1 7 ) exige une
complexité qui est O(m). Enfin, la complexité de la boucle (18-22) est O(kXm). Puisque A est plus
petit que m @<Cm), la complexité de la procédure du clustering est 0(d)=3*0(~)+O(kXm)+0(m).
On peut constater que la tâche la plus complexe dans la phase de construction de l'arbre
partagé entre les CHs (Figure 3-6) est l'exécution de la boucle (1-3), à savoir le calcul des délais
minimaux entre les CHs. Le temps nécessaire pour exécuter la ligne 2 qui permet de calculer les
délais minimaux entre un CH et tous les autres CHs est O(n2). Etant donné que la boucle (1-3) est
exécutée une fois pour chaque CH, la complexité exigée pour effectuer cette tâche est donc O(k*d).
Les lignes 4-6 permettent de calculer la variation du délai multicast de chaque CH, ainsi si nous
considérons que le temps O(k) est exigé pour exécuter la ligne 5, alors la complexité de la boucle
l6 La boucle (i - j) contient les insttucàons délimitées entre les lignes i et j.
(4-u) est O(k2). La désignation du premier point de rendez-vous est effectuée par la ligne 7, ce qui
exige une complexité O('). La boucle (9-15) relie tous les CHs à i'arbre multicast. La ligne 11
exige k itération pour construire le domaine autonome de chaque point de rendez-vous. Dans la
ligne 12, le CH désigné comme le premier point de rendez-vous rejoint les membres de son
domaine autonome ainsi que le point de rendez-vous père dans un nombre d'itération inférieur à k ( ] A D , 1 +I<k). De plus, la ligne 14 sélectionne le nouveau point de rendez-vous parmi les CHs de
l'ensemble. $. De ce fait, puisque la boucle (9-1 5) est exécutée A fois, alors h complexité nécessaire
pour effectuer cette boucle est O(@). Etant donné que k<<n, la complexité de la procédure de
construction de i'arbre partagé entre les CHs est O(kYn2)=O(k*n2) + O(P) + 0(k) +- O(k3).
A ce stade, nous avons démontré que la complexité de la procédure du clustering est O(&) et
la complexité de la construction de i'arbre partagé entre les CHs est O('*$). Ainsi, la complexité
globale de l'algorithme AHM est O[('+ l)*n2]. En effet, O(d)+ O(kXn2)<O((k+ y)*$) car le nombre
de participants à un groupe multicast M est, en général, plus petit que le nombre de nœuds dans le
réseau entier (m<<n). Considérons que k<<m, l'algorithme AHM démontre une complexité
inférieure à celle de l'algorithme DDVCA qui est O(mYn2).
3.4 Evaiuation des performances et simulations
Dans cette section, nous allons étudier les performances de l'architecture hiérarchique du
groupe multicast AHM. Nous comparons cette proposition avec l'algorithme DDVCA en terme de
bande passante, de variation du délai multicast et de taux de perte (congestion). C'est ainsi que nous
avons effectué plusieurs simulations de i'architecture AHM et de DDVCA en utilisant le simulateur
NS2 [62]. Pendant ces simulations, nous avons délibérément changé la topologie du réseau en
augmentant le nombre de noeuds de 500 à 1000 ntzuds afin d'évaluer la scalability de l'architecture
AHM. Les participants au groupe multicast M, choisis d'une façon aléatoire, représentent 50% de
nœuds constituant le réseau entier. Parmi les membres de M, il y a 10 sources de flux multimédia
choisis également d'une façon aléatoire. Le temps de chaque simulation est de IOOs, où chaque
source produit 20 mités média/s selon un planning de diffusion de flux multimédia défini dans le
tableau 3-4. La taille de chaque unité média est 500 octets.
Tableau 3-4 : Ordonnancement des sources de dimision
Sources
Début(s)
Fin(s)
1
O
100
2
10
100
3
20
100
4
30
100
5
40
100
6
50
100
7
60
100
8 9 10
90
100
70
100
80
100
Figure 3-9 : Taux de perte de paquets, N-500 Figure 3-10 : Taux de perte de paquets, N=1000
Les résultats des figures 3-9 et 3-10 illustrent l'efficacité de AHM en livrant à tous les
participants du groupe multicast un nombre de paquets plus élevé que DDVCA. Cela est dû à
I'uàlisation d'un seul point de rendez-vous dans l'arbre mulucast construit par DDVCA, ce qui
cause le problème de congestion autour de ce point de rendez-vous. En effet, chaque source envoie
ses flux au centre de l'arbre multicast qui les renvoie par la suite aux différents membres du groupe
multicast. L'architecture AHM évite le probleme de congestion par le biais d'ualisation de plusieurs
points de rendez-vous.
Figure 3-11 : Moyenne de la variation du délai Figure 3-12 : Moyenne de la variation du délai
multicast, N=500 rnulticast, N=1000
Dans le but d'étudier I'impacte de la taille du groupe multicast sur la variation du délai
multicast, nous avons généré 10 différentes topologies de réseau en changeant le pourcentage du
nombre de participants au groupe multicast M. Les figures 3-1 1 et 3-1 2 illustrent la moyenne de la
variaaon du délai rnulticast quand on utilise 500 et 1000 nceuds, respectivement. Nous constatons
que l'architecture AHM minimise considérablement la moyenne de la variation du délai multicast
par rapport à l'approche DDVCA. Cela vient du fait que l'architecture AHM prend en compte la
cantrainte de la variation du délai multicast lors de la sélection des CHs ainsi que le choix du
premier point de rendez-vous. En revanche, l'approche DDVCA tient compte de cette contrainte
seulement pour choisir le centre de l'arbre multicast. Il est nécessaire de préciser qu'un gain d'une
seconde au niveau de l'optimisation de la variation du délai multicast est très important pour des
applications multimédia en temps réel.
3.5 Conclusion
Dans le cadre des applications mukimédia, nous avons proposé une architecture hiérarchique
du groupe multicast (AHM) qui est sensible à la QoS et extensible aux réseaux de grandes
dimensions tels que 171nternet. Cette architecture s'appuie sur la technique de clustering pour pallier
au problème de scalability, utiiise un arbre partagé entre les CHs pour réduire le taux d'occupation
de la bande passante, et emploie plusieurs points de rendez-vous pour éviter le problème de
congestion autour d'un seul nœud centre comme dans le cas de DDVCA. Par ailleurs, l'architecture
AHM permet, par construction, de minimiser les délais de communication intra-cluster et
d'optimiser la variation du délai multicast. L'architecture AHM fournit également une gestion
dynamique des utiiisateurs et elle est efficace pour prendre en compte les pannes. Les résultats de
simulations menées ont démontré que l'architecture AHM est plus performante que l'approche
DDVCA. De plus, M M exhibe une complexité inférieure i celie de DDVCA, à savoir les
complexités de AHM et DDVCA sont O(@+ I)*tpzJ et O(m*n2) respectivement (k< cm).
Deuxième partie
Routage hiérarchique basé sur le clustering
optimisant la consommation d'énergie dans les
réseaux de capteurs sans fd
Chapitre 4
4 Réseaux de capteurs sans fd : RCSF
Un réseau de capteurs sans fil (RCSF) consiste en un nombre de capteurs connectés entre eux
capables de sonder l'environnement dans lequel ils se trouvent et de remonter l'information vers un
point de collecte (Station de Base ou Sink) déployé et qui est en mesure de relayer l'information à
grande échelle comme l'illustre la figure 4-1.
[ ] manager node
l
Figure 4-1 : Rkseau de capteurs
Les RCSF forment une nouvelle génération de réseaux aux propriétés spécifiques qui n'entrent
pas dans les architectures classiques. Ils couvrent un champ d'application très vaste et varié. En
effet, leurs spécificités permettent de supporter des applications qui sont inappropriées pour
d'autres types de réseaux sans fil. Parmi les domaines d'application de ce type de réseaux, on peut
citer :
Le domaine militaire : les RCSF sont utilisés pour la surveillance, la reconnaissance, la détection
des mouvements de l'ennemi et autres.
14 domaine médical: les RCSF peuvent être utilisés pour le contrôle des é~ats de santé des
patients.
Le domaine de la sémrité civile : les RCSF sont utilisés pour la détection des attaques biologiques,
chimiques, nucléaires comme dans la surveillance des grandes surfaces commerciales.
Le domaine de l'environnement: les RCSF peuvent être employés pour le contrôle des
changements au niveau des forêts, des océans, des activités sismiques, etc.
Le domaine de la domotiqtle : avec la norme IEEE 802.15.4, il est fort possible que les appareils
électroniques équipés de capteurs puissent communiquer ensemble. Ainsi, l'utilisateur peut
configurer son réseau domestique de façon que l'intensité de la lumière diminue dès que le
poste de télévision commence à fonctionner, ou bien de façon à ce que le poste de télévision
se mette en mode « mute » dès que le téléphone sonne.
Dans ce chapitre, nous présenterons d'une part, les différentes caractéristiques des réseaux de
capteurs sans fil en commençant par les avancées technologiques dans ce domaine, puis les
spécificités et la conception des RCSF, enfin nous fuiirons par l'architecture matérielle d'un capteur.
D'autre part, nous présenterons la pile protocolaire des RCSF ainsi que les principaux protocoles de
la couche physique, de la couche MAC et de la couche réseau.
4.1 Caractéristiques des RCSF
4.1.1 Technologie
Les réseaux de capteurs sont au carrefour des technologies telles que l'électronique, les
systèmes numériques, les réseaux et la programmation. Les récenrs progrès dans ces disciplines
permettent d'obtenir des systèmes très performants et ne prenaient que trts peu de place.
Mhprocessetlr: il est possible de réaliser un microprocesseur qui fonctionne à IOMbq et ne
consomme que quelques d w a m . De plus, I'appareii peut être mis en veille pour
économiser i'énergie et ne consommer alors que quelques microwatts. Leurs capacités de
mémoires sont de l'ordre de lOkb de M M pour les données et lOUkb de ROM pour les
programmes. Ce sont ces mémoires qui prennent beaucoup de place sur la puce et qui
consomment l'essentiel de l'énergie.
Battmk: une batterie de i d peut stocker 1 0 # d h , donc un capteur doté d'une telle
batterie peut fonctionner à long terme.
Pannea~ sobin : un panneau solaire ou photovoltaïque est destiné à récupérer une partie du
rayonnement solaire pour le convertir en énergie ; Icm2 délivre une puissance d'environ 10 à
18mW.
Mimcapteur: on exploite la variation d'une grandeur physique d'un matériau en fonction
d'une grandeur physique externe. Un convertisseur analogique/numérique (ADC) convertit
cette grandeur en un flot de valeurs numériques. La consommation d'un tel capteur n'est que
de quelques rniihwatts qui ne sont activés qu'au moment de h mesure.
Mionradia : de nos jours, il est possible de fabriquer des composants radia en technologie
conventionnelle CMOS. Cependant, l'énergie consommée augmente très vite en fonction de
la portée de la radio et ne traverse pas, en générai, les obstacles comme les murs par
exemple. La consommation typique est de l'ordre de 20mW pour une portée de quelques
dizaines de mètres.
Sy~fème d'e+Ioifation : le système d'exploitation open source TiyOS 1631 a été développé pour
des applications comme les réseaux de micro capteurs. Il permet de fonctionner en
autonomie pendant un an avec une paire de piles AA. T i 9 0 1 fournit un cadre de
programmation permettant un fonctionnement fortement concurrent malgré le peu de
ressources physiques disponibles. Il dispose de fonctionnalités spécifiques événementielles. Il
est composé de différents composants organisés en couche. Tandis que les composants de
couche basse se chargent du lien avec la structure physique, les autres composants dirigent
certains événements ou actions sans jamais consommer de cycle CPU lorsqu'ils sont en
attente.
Plafefoornîe : La plate forme Intel est de conception récente et utilise un puissant cœur ARM,
une mémoire et un module radio Bhetooth, le tout intégré dans un seul boîtier. TinyOS
fonctionne directement sur le processeur ARM, gère les capteurs et le routage, effectue des
traitements de haut niveau sur les données et gère la consommation d'énergie. La plupart des
composants bas niveau de TinyOS sont implémentés sous forme câblée. On obtient ainsi un
convertisseur ADC qui consomme très peu d'énergie et un module radio très performant. La
plateforme complète mesure Id et a une autonomie de 100 ans avec une paire de piles AA
et en fonctionnant pendant 1% du temps.
4.1.2 Spécificités
Les RCSF ne sont pas des réseaux ad hoc au sens classique du terme car ils ne fonctionnent
pas de la même manière. Les caractéristiques les plus remarquables qui distinguent les RCSF des
réseaux ad hoc classiques sont les suivantes :
Les ressources de n a d capenrs: sont très limitées - énergie électrique, puissance de calcul,
capacité de stockage. L'ensemble du fonctionnement aura pour souci principal de limiter la
consommation d'énergie afin de prolonger la durée de vie du réseau et ce au détriment de la
qualité de service. En fait, l'utilisateur pourra, au moment du déploiement du réseau, choisir
entre durée de vie et performance.
Mode de commmzcafion: les nœuds capteurs communiquent par broadcast, alors que les
réseaux ad hoc s'appuient sur la communication point-à-point @eer to peer).
La densidé des nœtrds: Les RCSF sont caractérisés par une densité importante de nœuds qui
peuvent atteindre, selon le type d'application, 20 nœuds/m3.
Nombre de noeuh : Contrairement aux réseaux sans fil traditionnels, un RCSF peut contenir
un très grand nombre de nœuds capteurs (des centaines voire des milliers).
Identrfpcaarian : les nœuds n'ont pas d'identifiant global à cause de leurs nombres très élevés et
de la surcharge que cela entraînerait.
La bandepassante (ou capacité d~ canal) : c'est une caractéristique beaucoup plus importante dans
les réseaux cellulaires (GSM) et les réseaux locaux sans fil (WLAN) que dans les RCSF ; le
débit étant, en effet, un objectif secondaire pour les RCSF.
4.1.3 Conception
La conception des réseaux de capteurs est influencée par de nombreux paramètres :
La tolérance aux panne^: Dans un RCSF, les protocoles doivent tenir compte du fait qu'un
nœud peut ne plus fonctionner par manque d'énergie ou parce qu'il a été détruit. Ils devront
adapter leurs niveaux de tolérance aux pannes, en fonction de l'hostiiité du miiieu dans
lequel est placé le réseau.
Facteur d'échelle: le nombre de capteurs déployés peut atteindre des centaines, des milliers
voire dans certains cas extrêmes des d o n s . Les protocoles et algorithmes devront pouvoir
correctement fonctionner dans tous les cas de figure.
Les cogts depmd~~ction : les avancées technologiques nous permettent actuellement de produire
des capteurs Bluetooth pour 1046 i'unité, des picots capteurs pour moins de l$. Le seuil à
atteindre pour être économiquement faisable est, quant à lui, bien inférieur à 1%. Cela reste
donc un défi non encore relevé.
l~ capacité de communication : Elle peur prendre deux aspects : le multi-sauts ou le mono-saur.
Parce que le multi-sauts est moins énergétivore, il reste le type de communication le plus
sollicité par les applications des RCSF.
L'auto-conjg~ration de$ nmds c a p t m : dans un RCSF, les nœuds sont déployés soit d'une
manière aléatoire (missile, avion...), soit placés nœud par nœud par un être humain ou un
robot, et ceci à i'intérieur ou autour du phénomène observé (champ de guerre, surface
volcanique, forêt.. .). Ainsi, un nœud capteur doit avoir des capacités pour s'auto-configurer
dans le réseau d'une part, et d'autre part pour collaborer avec les autres nœuds dans le but de
reconfigurer d'une façon dynamique le réseau en cas de changement de topologie du réseau.
Le suppoort de fra~~mi~rion : il doit être universel. Une possibilité est de choisir, pour les
transmissions radio les bandes de fréquences des domaines de l'industrie, les sciences et la
santé, qui ne nécessitent pas de licences et qui sont disponibles dans tous les pays. Des
contraintes de puissance et de consommation d'énergie font qu'en réalité ce sont les hautes
fréquences qui sont avantageuses. Le choix s'est porté sur la bande des 433Mhz en Europe
et des 915Mhz aux USA. La transmission infrarouge aurait pu être intéressante mais a été
écartée car elle nécessite une vue directe entre émetteur et récepteur.
Consommation d'énergde : les capteurs embarquent en ghéral une quantité d'énergie très lunitee.
La transmission des données devant passer de nœud en nœud, elle demande beaucoup de
traitement, surtout si certains nœuds tombent en panne et qu'il faut réorganiser le réseau.
C'est pourquoi des algorithmes et des protocoles ont été spécialement développés avec
comme principale contrainte l'économie d'énergie, même au dépend de la qualité du service.
Traitement de données : le traitement d'une quantité de données étant infiniment moins coûteux
que sa transmission, on privilégie systématiquement les traitements locaux au niveau de
chaque nœud plutôt que la transmission de données brutes.
4.1.4 Atchitecture matérielle d'un capteur
La principale tâche d'un nœud capteur dans un RCSF est de détecter, de traiter et de
transmettre des données. Un capteur est un ensemble de quatre composants essentiels qui sont
présentés comme suit :
L'slnité de capture ou fisenring nnit» : eile se compose du capteur et du convertisseur
analogique/numérique (ADC). En effet, le signal analogique produit par le capteur suite à un
phénomène observé va être transformé par 1'ADC en un signal numérique.
Lknité de traitement ou ((processing unitu : elie est composée d'un processeur (microcontrôleur)
et d'une unité de stockage de faible taille. Elle permet au noeud la gestion des procédures de
collaboration avec les autres nœuds dans le but d'accomplir la tâche demandée.
Lhnité émettnce/réceptrice ou « transceiver unit » : elle permet de connecter le nœud à l'ensemble
du réseau par le biais d'un système radio. Grâce à cette unité, le nœud pourra émettre et
recevoir des messages des autres nœuds. Il peut fonctionner en quatre modes : Transmid,
Receive, Idle, S/eep.
Lknité d'énergie ou npower unit » : elle constitue la source d'énergie du nœud capteur. Elle peut
être associée ou alimentée par une unité génératrice d'énergie comme les cellules solarres.
Il existe des applications dont les besoins nécessitent d'autres composants qui s'ajoutent à ceux
décrits ci-dessus, comme le système de localisation pour déterminer la position d'un nœud et le
mobilisateur pour le déplacer d'un lieu à un autre. La figure 4-2 illustre l'architecture matérielle d'un
nœud capteur.
Figure 4-2 : Architecture matérielie d'un capteur
1 j Location finding system f I Mobilizer I
I I ! 1
1 . .-.-.-.-.-.-.-.-.-.-.-.: 1 . - . - . - . - . - . - . - . - . - . - . - . .-.
Sensing Processing unit unit
1
4.2 Pile protocolaire des RCSF
Il est à noter qu'aucune pile protocolaire destinée aux RCSF n'a été standardisée. Cependant, la
majorité des articles scientifiques qui traitent de la thématique des RCSF se basent sur la pile
protocolaire qui a été proposée par Akyildiz et al. [64]. Cette pile se compose de :
v
, Processor , , Transctivcr Storage
- Sensor
Une couche p h y s p e : :lie est responsable de la sélection de fréquence, la génération de la
fréquence porteuse, la détection du signal, les modulation/d~modulation ainsi que les
cryptage/décryptage des informations.
t t Power unit i Power !
T merator i I.ii-.-i-.i.-i
ADC
Une mwbe liai~on de données : eiie est responsable de la détection des trames de données, du
contrôle d'accès au support (MAC) et du contrôle d'erreurs. Eue maintient aussi la fiabilité
des connections point-à-point ou multipoints dans les RCSF.
Une couche riseau: elle gère les échanges et éventuellement les connexions à travers les réseaux
de capteurs. Elle gère entre autre l'adressage et l'acheminement des données,
Une c o d e tt-anqorf : le rôle de cette couche intervient essentiellement lorsqu'on veut accéder
au RCSF à travers Internet ou un autre réseau extérieur. De nouvelles solutions de
protocoles du transport sont nécessaires vu que les protocoles de bout en bout
conventionnels tels que TCP et UDP ne sont pas adaptés aux réseaux de capteurs puisqu'ils
mènent à un gaspillage des rares ressources des capteurs.
Une couche appkcation : il existe plusieurs protocoles applicatifs qui ont été proposés pour les
RCSF. Parmi lesquels, on peut citer :
O SMP (Sensor Management Protocad qui permet à l'utilisateur d'exécuter des tâches
administratives telles que la configuration du RCSF, la mise en marche/arrét des
nmuds, la synchronisation entre les nœuds, etc.
O SQDDP (Sensor @ey and Data Dissemanation Pmfocol) qui permet à l'utilisateur à
travers des interfaces d'interroger le réseau en se basant non pas sur un système
d'adressage particulier (interroger un noeud bien particulier) comme c'est le cas des
réseaux sans fil classiques mais plutôt sur la localisation des nœuds.
Un plan degestion d'énergie : Il gère la manière dont le nœud utilise son énergie. Par exemple, si
le niveau d'énergie d'un nœud capteur est faible, ce noeud informera ses nœuds voisins qu'il
ne pourra pas participer au routage des paquets.
Un p h de gestion de mobikté : Il détecte les mouvements des noeuds et indique leur placement
dans le secteur du réseau. De cette manière, chaque nœud peut connaître les nœuds voisins.
Il doit aussi, à n'importe quel instant, maintenir la route séparant le nœud mobile du nœud
Sink.
Un plan de gestion de tûche : Ii assure un ordonnancement des tâches de capture dans une
région bien déterminée tout en évitant la redondance des tâches de capture en un même
instant, et ceci dans le but d'économiser l'énergie du système. L'intérêt de ces trois plans
réside dans le fait qu'ils assurent une gestion optimale de la consommation d'énergie, de la
mobilité et des tâches au niveau de chaque nœud capteur.
Figure 4-3 : Pile protocolaire des RCSF
Les réseaux de capteurs possèdent des caractéristiques particulières qui les différencient des
autres types de réseaux sans fü. Ces spécificités telles que la consommation d'énergie réduite, la
scalabiiité ou le routage incitent le besoin de concevoir de nouveaux protocoles d'accès au support,
de routage, de transport ou d'application qui s'adapteront aux caractéristiques des RCSF.
Nous présenterons, par la suite, les principaux protocoles proposés pour la couche physique, la
couche MAC et la couche réseau de la pile protocolaire des RCSF.
4.2.1 Protocoles de la couche physique
4.2.1.1 Technique d'étalement de spectre
La technique dite "d'étalement de spectre" a une très forte résonance dans les protocoles de
réseaux sans fil actuels (802.1 1, 802.1 1 b, 802.1 lg, Bluetooth, UMTS). L'adoption de cette technique
dans les différents protocoles réseaux actuels résulte de ses nombreux avantages parmi lesquels on
peut citer:
La forte immunité aux interférences et au bruit;
L'élimination du phénomène de trajets multiples (Fading);
Le partage de la bande passante entre plusieurs utilisateurs;
La résistance aux interceptions (utilisation de code);
L'invisibilité (transmission sous la puissance du bruit DSSS);
Une puissance d'émission faible.
Les techniques dites à étalement du spectre ont également pour avantage de réduire le nombre
de composants analogiques nécessaires à la construction d'un appareil d'émission des données, ce
qui réduit également la puissance consommée. Ces rechniques sont particulièrement adaptées à la
réalkation des réseaux de capteurs puisque le critère de performance n'est plus la bande passante
disponible mais la consommation électrique.
4.2.1.2 Norme lEEE 802.15.4 LR-WPAN : couche physique
La n o m e IEEE 802.15.4 a été spécialement définie en fonction des caractéristiques des
réseaux de capteurs, un faible débit er une faible consommation électrique [65]. Eiie décrit le
fonctionnement de la couche physique et de la couche MAC. Pour la couche physique, deux bandes
de fréquence ont été retenues : la bande 2.4GHql et la bande 868/915MHx ; c'est au total 27 canaux
de cornmunicauon avec 3 différents débits possibles, soit 16 canaux à 250kbps dans la bande
2.4GH% 10 canaux à 40kbps dans la bande 915MHg et 1 canal à 20k@ dans la bande 868MHq. Les
réseaux qui supporteront la norme 802.1 5.4 pourront librement choisir d'utiiiser l'un des 27 canaux
utilisables en fonction de sa disponibilité et du débit recherché.
Tableau 4-1 : IEEE 802.15.4 - Paramètres de modulation
L'émission dans la bande de fréquence 868/915MHx s'effectue en utilisant la technologie
DSSS (Direct-Sepence Spreaà Spechwm) et la modulation BPSK (Binary Phase Shift Kgnng). La bande
2.4GHx utilise également la technologie DSSS, mais avec une modulation O-QPSK (Tableau 4-4).
La sensibilité minimale du récepteur définie dans la norme est de -82dBm pour la bande 2.4GHx et de -92dBm pour la bande 868/915MHx. Ces sensibilités permettent d'émettre à une puissance de 1 m W sur 10-20m de rayon.
4.2.2 Protocoles d'accès au support
4.2.2.1 Norme IEEE 802.15.4 LR-WPAN : couche MAC
La couche liaison définie dans la norme IEEE 802.15.4 est divisée en deux parties, la couche
MAC et la couche LLC (Figure 4-4) qui est standardisée dans le protocole 802.2 et commune aux
protocoles 802.2, 802.1 1 , 802.15.1 (Bluetooth). La couche MAC définie dans le protocole 802.15.4
a été simplifiée par rapport aux autres protocoles IEEE 802.15.x car elle ne comporte que 26
primitives de communication alors que la norme Bluetooth en comporte 131. Le faible nombre de
primitives implantées permettra de réduire la complexité des composants matériels et par
conséquent leur coût.
Figure 4-4 : Pile de protocole IEEE 802.15.4
Le standard LR-WPAN permet i'utilisation de deux méthodes d'accès au canal de
communication; la première utilise une méthode de rype CSMA-CA similaire à celle utiiisée dans les
réseaux 802.1 1 , la deuxième est une méthode de type SLotred CSMA-CA (accès multiples durant un
intervalle de temps). La méthode Slotted CSMA-CA uthse des "supertrames"; celles-ci sont définies
par le coordinateur" (ou station de base) et ont pour principal avantage de permettre la
synchronisation de l'ensemble des éléments entre eux, et ainsi d'économiser l'énergie de chacun des
noeuds du réseau. Les supertrames sont tout d'abord &visées en deux parties : une partie acrive et
une partie inactive ; durant la partie inactive, le coordinateur n'interagit pas avec le réseau et se place
en mode veiile. Chaque supertrame commence par un beacon qui est envoyé par le coordinateur du
réseau et qui permet la synchronisation entre les noeuds et le coordinateur. Le beacon est
immédiatement suivi par une zone appeIée "Contenbun Access Pen08 (CAP) qui permet à chaque
1' Le coordinateur étant le noeud qui initie et gère les communications dans le réseau.
élément du réseau d'envoyer ou de recevoir des trames de commandes et de données. L'accès au
canai durant la période CAP suit le mécanisme CSMA-CA.
Une autre zone optionnelle disponible dans la supertrame (CFP) est utilisée pour les
transmissions nécessitant de la qualité de service. Le CFP est divisé en slots, dont le coordinateur
gère l'allocation en fonction des besoins. Une station qui se voit attribuer un slot est assurée
qu'aucune autre station ne transmettra durant certe période.
La consommation électrique des composants dans un réseau est grandement réduite, si on
u~l ise la technologie "slotted CSMA-CA", avec une structure en supertrame. Mais cette technologie
ne peut être déployée qu'avec une topologie en étoile. La topologie en étoile n'est utilisée que dans
le cas où on a de petits réseaux. Les réseaux utilisant cette topologie sont donc restreints à des
applications bien particulières, dors qu'une topologie point-à-point (Peer to Peer) permet le
déploiement de réseaux de grandes envergures.
Dans les réseaux point-à-point, l'accès au canal de transmission ne peut se faire qu'avec une
technologie CSM-CA simple. Mais cette technique utilisée dans les réseaux de type 802.1 1 est trks
gourmande en énergie étant donné que les noeuds doivent tout le temps être actifs. Ainsi, une
technologie hybride appelée "Mediatioti Device'' compatible avec la norme IEEE 802.15.4 peut être
déployée dans Ies réseaux de capteurs utilisant une technologie CSMA-CA pour permettre de
sauvegarder l'énergie des éléments du réseau. L'opération va alors consister à choisir un noeud dans
le réseau, soit par le coordinateur, soit par un noeud tiré aléatoirement qui va faire office du
médiateur entre tous les noeuds se trouvant dans son infosphère radio.
Par exemple, si A et B veulent communiquer, alors A va envoyer une requête au médiateur, le
médiateur va alors garder cette information en mémoire. Ensuite, le noeud B, comme tous les
noeuds du réseau, interroge le médiateur de façon régulière afin de savoir si un noeud veut le
joindre ou non. A ce moment, le médiateur avertit B que A veut communiquer avec lui, dès lors
que B et A entament une communjcation point-à-point.
4.2.2.2 Protocole S-MAC
Le protocole S-MAC [66] est un protocole de couche liaison relativement similaire au
protocole 802.1 2, il uuhse une méthode d'accès au canai de type CSMA-CA (RTS/CTS) mais dans
la bande des 916.5MHg avec un débit de données de 19.2Kbps. La principale innovation, apportée
par ce protocole, est d'avoir développé un mécanisme de mise en veille distribué à chaque noeud du
réseau dans le but de réduire la consommation énergétique des équipements réseau. Avec le
protocole S-MAC chaque noeud peut périodiquement se mettre en veiile, la principale difficulté est
alors de synchroniser les noeuds entre eux pour que la communication soit toujours possible. Pour
synchroniser les noeuds entre eux, le protocole S-MAC permet à chacun des noeuds d'émettre des
trames SYNC qui permettent aux autres noeuds de se synchroniser. La synchronisation des noeuds
se fait dors deux par deux.
4.2.2.3 Discussion
La norme IEEE 802.15.4 est donc totalement adaptée aux structures réseaux où l'élément clé
est la gestion de l'énergie. Mais la création des RCSF de grandes envergures nécessite la mise en
place de mécanismes décentralisés à l'instar des réseaux ad hoc. Ce point n'est pas encore beaucoup
traité dans la norme IEEE 802.15.4 et nécessite comme dans le cas de la technique « Mediahon
DeYice » que la couche réseau puisse fortement interagir avec la couche MAC IEEE 802.15.4 pour
que la gestion de i'énergie puisse être correctement gérée de manière répartie. En effet, bien qu'il
soit possible de synchroniser les éléments d'un réseau de petite taille pour qu'il puisse économiser
l'énergie tout en gardant de bonnes capacités de transmission, cela ne serait pas applicable aux
réseaux de grandes dimensions où la communication se fait de manière ad hoc.
Le protocole S-MAC apporte une solution différente de celle proposée par le protocole IEEE
802.15.4 au problème de la consommation énergétique dans les réseaux de capteurs en distribuant
totalement la gestion de l'énergie aux nœuds eux mêmes. Le problème de la gestion de l'énergie
dans un environnement ad hoc à grande échelle reste ouvert et n'a pas encore trouvé de véritable
solution.
4.2.3 Protocoles de routage dans les RCSF
Le routage dans les réseaux de capteurs sans W. diffère du routage traditionnel car le mode de
communication dans les RCSF est de type ((plusieurs vers un » (n-to-one) ou « un vers plusieurs »
(one-to-n), c'est-à-dire que les informations recuedhes par les capteurs sont ensuite centralisées vers
une station de base (Sink). Les flux qui transitent sur le réseau ont pour unique destination la station
de base. Cette dernière centralise les informations recueillies par les capteurs. Les protocoles de
routage développés pour les RCSF vont dors être beaucoup plus simples que ceux créés pour les
réseaux ad hoc car la problématique liée à la communication point à point dans les réseaux ad hoc
augmente beaucoup la complexité des tables de routage ainsi que l'espace d'adressage. Trois
grandes f a d e s de protocoles réseaux ont été suggérées pour les RCSF : routage plat, routage
hiérarchique et routage géographique.
4.2.3.1 Routage plat
Dans la catégorie des protocoles de routage plat, les nœuds jouent typiquement le même rôle
ou ont la même fonctionnalité et collaborent ensemble pour exécuter des tâches spécifiques. En
raison du grand nombre de nœuds déployés dans un RCSF, il est difficile d'assigner un identifiant
global pour chaque nœud. Cela nous mène à employer le routage de type Data-centric, où la SB
interroge certaines régions par le biais de requêtes contenant des attributs spécifiques de données.
Les nœuds capteurs situés dans les régions interrogées détectent des données selon les requétes
envoyées par la SB, puis transmettent les données récoltées à cette dernière. Les premiers travaux
portés sur le routage de type Data-centric (SPIN, Directed Diffusion) ont montré une conservation
significative d'énergie en s'appuyant sur la négociation des données et l'élimination des données
superflues. Cependant, le développement des techniques d'attribution des données est nécessaire
pour ce type de routage afin d'indiquer aux capteurs les caractéristiques des données sollicitées par
la SB.
4.2.3.1.1 SPIN
Le protocole SPIN (Sensor Pmtocols for Infomc1a'on uia Negotiah'on) [69], consiste à disséminer des
informations sur le réseau de manière ciblée. Le fonctionnement du protocole SPIN permet de
réduire la charge du réseau par rapport aux méthodes de diffusion traditionnelles telles que
l'inondation ou Goss@ngl8.
Le protocole SPIN utilise essentiellement trois primitives ADV, REQ et DATA. Un nœud
voulant émettre des données commence par envoyer un paquet de type ADV. Les nceuds qui
reçoivent ce paquet vérifient qu'ils n'ont pas encore répondu à cette demande, auquel cas ils
renvoient un paquet REQ. Le nœud qui a initié la communication envoie alors un paquet DATA
pour chaque réponse REQ reçue. Un nmud peut parfaitement ne pas répondre aux sollicitations,
par exemple dans le but d'économiser son énergie, sans dis-fonctionner le protocole en question.
Ensuite, chaque nœud qui fait office de relais peut très bien agréger ses propres données aux
données qui sont déjà contenues dans le paquet.
SPIN permet de réduire les communications car il n'y a que les nœuds intéressés qui reçoivent
l'information ; de plus, étant donné que les communications ne se font qu'avec des voisins
immédiats, le routage est simplifié. En revanche, le protocole ne peut assurer que l'information
arrivera à tous les nœuds. En effet, si les nœuds intermédiaires ne sont pas intéressés par celle-ci,
l'information ne parviendra jamais à destination. Cet algorithme n'est donc pas adapté pour des
applications nécessitant une grande fiabilité comme un système de détection d'intrusion par
exemple.
Dincted Dzj...rion PO] est un protocole qui procède comme SPIN à une attribution de
l'information, mais d'une façon très élaborée, en fonction des caractéristiques de celle-ci. Ensuite, il
procède de la manière inverse à celle de SPIN, la station qui désire une information diffuse une
requête à tout le réseau en utilisant le schéma d'attribution des données établi à l'avance. Grâce à ce
schéma, les nœuds recevant la requête savent si l'information qu'ils possèdent est celle qui est
demandée, ou s'ils connaissent un chemin menant vers cette information. Quand une requête arrive
à un noeud, la route est mise en cache, et peut ensuite être réutilisée pour de futures requêtes (avec
une durée de vie limitée). Le système d'information à la demande permet ainsi de considérablement
diminuer le trafic (et donc la consommation d'énergie) et la mise en cache des requêtes permet
l'établissement de plusieurs routes pour une destination, ce qui permet de rapidement palier à la
défaillance d'un noeud. Cependant, le système d'information à la demande n'est pas compatible
avec toutes les applications. En effet, le système d'attribution des données assez complexe doit être
redéfini à un nouveau type de données pour chaque application.
4.2.3.2 Routage hitirarchique
Il est parfois préférable d'avoir des algorithmes de routage qui prennent en compte la structure
logique du réseau, spécialement lorsque le nombre de nœuds dans le réseau est très important. Une
des approches possibles est l'utiltsation du clustering qui consiste à diviser le réseau en clusters
locaux et à représenter chacun d'entre eux par un seul n ~ u d élu comme tête de cluster (CH :
Cluster Head). La technique de clustering permet de réduire la complexité du routage en gérant
IsGossiping est une technique de dissémination d'information dans laquelle chaque nœud qui reçoit un paquet à relayer, envoie le paquet reçu à un de ces voisins tiré aléatoirement.
localement la communication intra-cluster par les CHs. Du fait de cette hiérarchie dans le réseau, le
routage peut être beaucoup plus efficace et plus rapide que dans le cas d'un réseau plat. Cependant,
la mise en place des clusters pour former la hiérarchie est un problème en soit, NP complet qui
n'est pas encore résolu.
4.2.3.2.1 L E A C H
LEACH (WEnergy Adaptve Chter Hierarch) pl] est un protocole de routage hiérarchique
destiné aux RCSF. Son principal avantage est de minimiser la consommation énergétique des
éléments du réseau. Dans LEACH, les nœuds s'auto-élisent périodiquement pour être des CHs. En
effet, chaque nœud n prend une valeur aléatoire entre O et 1, si cette valeur est inférieure à un seuil
T, calculé en fonction du pourcentage désiré de CHs et le nombre d'itérations au cours duquel un
nœud a pris le rôle de CH, le nœud n se désigne CH. Les CHs informent leur voisinage de leur
élection. Chaque nœud non élu rejoint le CH le plus proche en s'appuyant sur la puissance des
signaux reçus.
A l'intérieur d'un cluster, chaque nœud communique en liaison directe avec son CH, selon un
planning (TDMA) établi par ce dernier à la formation de clusters. Les nœuds peuvent ainsi mettre
en veille leur système de communication en attendant leur tour, ce qui permet une économie
d'énergie. A l'expiration d'une trame TDMA, le CH effectue des traitements (agrégation, fusion, . . .) sur les données récoltées par les éléments de son propre cluster, puis transmet directement le
résultat à la SB qui est supposé être éloigné, ce qui cause une grande consommation d'énergie.
Le choix aléatoire des CHs dans LEACH permet aux nœuds de s'auto-organiser dans des
clusters sans dépenser beaucoup d'énergie. Cependant, cela ne garantit ni une distribution équitable
de CHs dans l'espace, ni le nombre de CHs prévus, ni une taille équilibrée de clusters, ce qui cause
une grande dissipation d'énergie. Pour éviter ces inconvénients, les auteurs de LEACH ont proposé
une version centralisée LEACH-C qui est un algorithme itératif, dans lequel la structure des clusters
est calculée au niveau de la SB. Malgré que l'étape de communication de LEACH-C est la même
que LECH, les résultats de simulation pl] ont montré que LEACH-C a de medeures
performances que LEACH. Cependant, la version centralisée de LEACH n'est pas adaptée aux
RCSF de grandes envergures.
4.2.3.2.2 PEGASIS
PEGASIS (Pover E@cient Gathering in Sensor Information Jy~tem) p2] est un protocole de routage
hiérarchique qui consiste à former une chaîne optimaie reliant tous les noeuds capteurs en
s'appuyant sur la puissance du signai et sur l'algorithme vorace (greedy algorithm). Ansi, un noeud
ne communique qu'avec les deux nœuds reliés directement à lui par cette chaîne, ce qui permet de
minimiser la dissipation d'énergie du système. A chaque itérarion, it n'y a qu'un seul nœud leader qui
rassemble les données détectées par l'ensemble des nœuds du réseau en utilisant la chaîne formée,
puis il transmet le résultat à la SB après avoir effectué quelques traitements de données (agrégation,
fusion, ...). Une fois que tous les nœuds prennent le rôle du nœud leader, un nouveau rond
commencera et ainsi de suite. Ceci pcrmet de distribuer la dissipation d'énergie causée par la
transmission des données à longue distance sur I'ensemble des noeuds. PEGASIS permet de
prolonger la durée de vie de chaque nœud en s'appuyant sur des techniques collaboratives et de
réduire la consommation de la bande passante en autorisant aux nœuds de ne communiquer
qu'avec leurs voisins immédiats. A la différence de LEACH où chaque CH transmet directement les
données rassemblées par les nœuds de son propre cluster à la SB, PEGASIS utilise un seul et
unique nœud leader pour remonter les données à la SB. Ceci permet à PEGASIS de réduire la
quantité de données à envoyer à la SB et de minimiser la consommation d'énergie.
Les résultats de simulation [72] ont montré que PEGASIS permet de mieux prolonger la durée
de vie du réseau que LEACH. Un tel gain de performance est réalisé par i'élirnination de la
surconsommation d'énergie causée par la réélection périodique des CHs qui est automatiquement
suivie par une configuration de clusters dans LEACH, la réduction du nombre de nœuds
transmettant les données à la SB en un seul neud et l'optimisation de la quantité de données à
transmettre à la SB. Cependant, PEGASIS suppose comme LEACH que chaque nœud peut
communiquer directement avec la SB, ce qui n'est pas le cas pour des réseaux de grandes
envergures. De plus, PEGASIS suppose que chaque nmud maintient des informations sur la
localisation des autres nœuds et que les nœuds ont le même niveau d'énergie, et qu'ils sont ainsi
susceptibles de mourir en même temps. Notons également que PEGASIS présente un excessif
retard pour les données envoyées par des noeuds éloignés du nœud leader dans la chdne. Par
ailleurs, PEGASIS ne garantit pas la livraison des données à la SB à chaque itération car un nœud
peut tomber en panne lors de son rôle de leader.
4.2.3.2.3 E E N et APTEEN
TEEN (Threshold sensitive Energy Eflcient sensor Netwrk pmbocor) [73] est un protocole
hiérarchique développé afin de répondre aux besoins des réseaux réactifs. En effet, la plupart des
protocoles considèrent que les capteurs ne doivent transmettre l'information qu'au bout d'un
certain temps. Autrement dit, les délais de transmission d'une information peuvent être longs. De
plus, il s'ensuit que certaines mesures sont inutilement transmises car eues ne concernent pas la SB.
Les auteurs de [73] ont donc proposé l'algorithme suivant : une fois les clusters formés, la tête du
cluster transmet deux seuils aux différents nœuds. Ces deux seuils, notés HT (Hard Threshold), ST
(Soft Threshold) permettent aux capteurs de savoir s'ils doivent remonter l'information : le HT est
la valeur minimum de la grandeur mesurée au delà de laquelle le capteur est susceptible de
transmettre l'information. Lorsque ces valeurs sont au-dessus du HT, le capteur ne transmet
I'information que si la valeur courante diffère d'au moins ST unités de la valeur précédemment
transmise. On peut donc contrôler le nombre de paquets envoyés en jouant: sur ces deux valeurs.
TEEN permet donc de construire un protocole réactif, ce qui permet d'économiser de i'énergie.
APTEEN (Adaptatiue Thmhold sensitive Eneqy E@&nt sensor Network pmtocol) . p4j permet de
trouver un compromis entre les protocoles proactifs (envoi de l'information à dates données) et les
protocoles réactifs (envoi de l'information suivant différents critères). Le but de AM'EEN est tout
simplement de rajouter aux deux seuils précédemment décrits une troisième valeur, Tc qui sera le
temps maximal entre deux envois d'information mesurés. On assure ainsi qu'un capteur toujours
vivant envoie périodiquement des informations.
TEEN et APTEEN se focalisent sur la gestion de la remontée de l'information à la SB. Pour
cela, les deux algorithmes considèrent que le réseau est divisé en clusters locaux où chacun est
représenté par un CH. Par conséquent, les auteurs de TEEN et APTEEN ne traitent donc pas le
problème de clustenng qui est difficile à mettre en place.
4.2.3.3 Routage géographique
Dans un routage géographique, les paquets ne sont plus routés en fonction de l'identification
d'une destination bien précise, mais plutôt par rapport à une zone cible. Cette zone peut comporter
plusieurs nœuds, n'importe quel nœud peut jouer le rôle de destination pour le paquet. Dans un
contexte de réseau de capteurs, te routage géographique prend tout son sens dans la manière de
demander des informations relatives à certaines régions du réseau.
4.2.3.3.1 GEAR
GEAR (Geographic and E n e w Awam Roatind [75] est un protocole qui effectue des broadcast
locaux. Un paquet est transféré jusqu'à une région cible, qui est ensuite inondée. Cet algorithme
utilise des métriques basées sur la distance du prochain saut (Nexf-hop) et sur l'énergie restante de
nœud, ainsi si un nœud n'a presque plus de batteries, l'algorithme cherchera à l'éviter. On obtient
donc une réduction des communications grâce à la localisation du Broadcast, et une répartition des
dépenses énergétiques par la prise en compte de l'énergie restante dans chaque nœud. En revanche,
le protocole nécessite que chaque nœud connaisse sa position, ce qui induit des dépenses
énergétiques supplémentaires.
GAF (Geographic Adaptiue Fidekg) [76] est un algorithme initialement conçu pour les réseaux ad
hoc classiques. Chaque naeud doit posséder un système de localisation. L'algorithme forme ensuite
une gdle virtuelle qui couvre tout le réseau et le sépare en différentes cases. Après la phase de
découverte du réseau, chaque nœud pourra être soit actif, soit endormi, l'algorithme assure la
connectivité du réseau en s'assurant d'avoir toujours au minimum un nœud actif par case (la taille
des cases doit être bien choisie). Le protocole permet également de gérer des réseaux mobiles, où
chaque nœud informe ses voisins de la date estimée à laquelie elle va quitter sa case pour que la
topologie soit mise à jour. Le fait d'avoir des nœuds éteints permet d'économiser de l'énergie mais
le système reste assez sommaire, et si le réseau est peu dense (peu de nœuds par case), l'économie
en énergie devient très limitée.
4.2.3.4 Voies de recherche
Les protocoles de routage qui sont naturellement employés dans les RCSF nécessitent
l'utilisation de plusieurs méthodes d'optimisation en vue de minimiser la charge dans le réseau ainsi
que la consommation d'énergie des capteurs. Les principales avancées dans ce domaine ont mis en
avant différentes directions de recherche, même si elles partagent un objectif commun qui est la
prolongation de la durée de vie du rkseau. Nous récapitulons certaines de ces directions comme
suit :
1.2 matage plat: est une technique facile à mettre en ouvre pour des réseaux de petites tailles,
mais le développement de nouveaux protocoles permettant le passage à l'échelle est
indispensable afin que ce type de routage soit adapté aux réseaux de grandes envergures. De
plus, les développements des modèles d'attribution des données et d'agrégation des données
sont nécessaires pour rendre ce type de routage efficace.
Le routage hiéranhique : le routage hiérarchique traditionnel offre plusieurs avantages, comme
par exemple, le passage à l'échelle. Cependant, beaucoup de recherches sont nécessaires afin
de concevoir de nouvelles techniques de clustering prenant en compte les contraintes du
RCSF et permettant de maximiser la durée de vie du réseau.
Le mutage géographigtle: le routage géographique permet de minimiser efficacement la
consommation d'énergie, mais il nécessite la localisation des noeuds qui sont généralement
déployés d'une façon aléatoire. Puisque le système de positionnement GPS (Global Poiboning
$stem) ne peut pas être employé dans le RCSF, le développement de nouvelles techniques de
localisation est donc nécessaire pour pouvoir utiliser ce type de routage. En effet, le système
GPS est particulièrement coûteux en ce qui concerne le matériel, nécessite beaucoup
d'énergie et peut fonctionner uniquement en extérieur, mais seulement si aucun obstacle ne
vient obstruer le champ de vision des récepteurs. Par conséquent, le développement de la
localisation par moyens propres est indispensable.
Lu tolérance aux pannes : un grand nombre de nœuds capteurs sont typiquement implantés à
l'intérieur ou près du champ d'application du RCSF dans le but de tolérer les pannes dues en
particulier à l'épuisement d'énergie des noeuds. En effet, les nfzuds capteurs sont enclins à
l'échec, des techniques de tolérance aux pannes doivent donc être mises en avant afin de
garantir un fonctionnement normal du réseau. Les protocoles de routage qui engendrent des
techniques de tolérance aux pannes d'une façon efficace sont encore à l'étude.
I R traitement local de données : l'énergie nécessaire pour traiter les données au niveau de chaque
nœud est négligeable devant celle exigée pour transmettre les données brutes a longue
distance. Le développement de nouvelles techniques du traitement local de données
(aggregation, fusion, . . .) d'une façon optimale est encore ouvert à la recherche.
La quau'té de sentice: le développement des protocoles de routage dans les RCSF sensible a la
qualité de service (délai, bande passante, gestion de la priorité des flux, . . .) a moins attiré
d'attention bien qu'il soit indispensable pour des applications en temps réel.
I R routage sécurisé: le but principal de tous les protocoles de routage est l'optimisation de la
consommation d'énergie, cela a empêché les chercheurs d'envisager l'intégration de la
sécurité au niveau du routage. Cependant, cette intégration est indispensable pour certaines
applications des RCSF comme dans le domaine militaire par exemple. Un champ de la . recherche esr, en tout cas, ouverr pour rendre les réseaux de capteurs efficaces et résisrants.
4.3 Conclusion
Les réseaux de capteurs sans fil sont des réseaw collaboraufs et très orientés vers un domaine
d'application précis. Cela rend leurs structures beaucoup plus faciles à maîmser que les réseaux ad
hoc dans lesquels, à l'inverse des RCSF, la mobilité et la nature très versatiles des flux qui sont
transportés rendent très difficile toute prévision. La mobilité du réseau rend eiie même la
connectiviti très peu maîtrisable. Par ailicurs, une structure bien établie rend également difficile
toute modification de la couche réseau déjà existante. En revanche, les RCSF peuvent s'affranchir
de cette complexité pour envisager d'autres modèles de piles de protocoles plus souples et moins
hiérarchisés. En outre, le manque de structure ktabli dans les RCSF condiaonne les performances à
la baisse. Pour pallier à cela, il est nécessaire de prendre en compte, dans la conception de tels
protocoles, Ia modélisation des différents effets physiques qui interviennent dans Ie fonctionnement
même du réseau.
La gestion de la consommation d'énergie est une opération essentide pour prolonger la durée
de vie des RCSF. Dans ce sens, nous nous intéresserons par la suite au routage hiérarchique basé
sur le clustering car il permet d'optimiser efficacement la consommation d'énergie, de réduire la
complexité de routage et de résoudre le problème de passage à l'échelle. Dans le 5éme chapitre, nous
proposerons un algorithme de clustering qui permet de 6) diviser le RCSF en clusters locaux,
disjoints et équilibrés, (iiJ élire un CH pour chaque duster, et fi) créer un modèle de
communication intra-duster sans coilision dans chaque duster. Dans le 6 h e chapitre, nous
proposerons un protocole de routage hiérarchique basé sur l'algorithme de clustering proposé dans
le chapitre 5 pour gérer la communication intra-duster et sur la distance entre les CHs ainsi que
leurs réserves d'énergie pour former des chemins de routage CH-en-CH afin d'effectuer la
communication inter-clusters.
5 Algorithme de clustering minimisant la
consommation d'énergie dans les RCSF
La gestion de la consommation d'énergie est une opération essentielie pour prolonger la durée
de vie des réseaux de capteurs sans fil (RCSF). Dans ce contexte, les algorithmes de clustering
(division du réseau en grappes) ont démontré une meilleure efficacité de réduction de la
consommation d'énergie des capteurs. Dans ce chapitre, nous allons proposer un nouvel
algorithme de clustering distribué et non périodique. Cet algorithme prend en considération la taiUe
des clusters (grappes), la puissance de transmission ainsi que la réserve d'énergie des n ~ u d s
(capteurs) pour diviser le RCSF en dusters locaux, disjoints et équilibrés. Dans le but de mininuser
le surcoût de calcul et de communication, l'algorithme proposé exécute la procédure de formation
de clusters seulement à l'activation du système, tandis que la réélection des CHs (Cluster Heads) est
aussi longtemps que possible retardée. Cet algorithme réalise également une disrribution assez
uniforme de CHs à travers le réseau de capteurs.
5.1 Motivation
Plusieurs techniques en vue de l'optimisation de l'énergie peuvent intervenir dans la mise en
place d'un réseau de capteurs. Le clustering est une technique prometteuse en raison des avantages
qu'il apporte aux RCSF. En effet, l'agrégation des capteurs en clusters permet de réduire la
complexité du routage, d'optimiser la ressource médium en la faisant localement gérer par un chef
de cluster (CH : Ctuster Head), de faciliter l'agrégation des données, de simplifier la gestion du
réseau, notamment l'affectation d'adresses, d'optimiser les dépenses d'énergie, et enfin de rendre le
réseau plus scalable. L'utilisation des clusters permet aussi de stabiliser la topologie si les tailles des
clusters sont plus grandes par rapport aux vitesses des nœuds.
La plupart des algorithmes de clustering proposés dans la littérature se basent sur l'élection d'un
ensemble de CHs parmi les naeuds capteurs du réseau. Par la suite, chaque CH forme son cluster
avec ses voisins qui n'ont pas été élus. De ce fait, les CHs sont responsables de leurs clusters. En
effet, d'une part, ils assurent la coordination entre les nœuds de leurs propres clusters
(communication intra-cluster) ; puis d'autre part, ils acheminent les données vers les autres CHs
(communication inter-clusters). Avec la technique de clustenng, les nœuds d'un même cluster
transmettent les informations détectées à leur CH qui se charge du reste. 11 effectue l'agrégation des
données récoltées par les capteurs de son cluster afin d'enlever la redondance et renvoie les
données agrégées à la station de base.
Actuellement, le choix des CHs et la formation de clusters d'une façon optimale est un
problème NP-complet P l . Par conséquent, les solutions proposées pour ce problème se basent
sur des approches heuristiques, mais aucune d'entre elles n'assure la stabilité de la topologie du
réseau. Evidemment, un bon algorithme de clustering doit autant que possible préserver sa
structure lorsque la topologie du réseau change. En effet, la réélection des CHs et l'échange des
messages dus à la reconfiguration périodique des clusters impliquent un surcoût de consommation
d'énergie très élevé.
Dans ce chapitre, nous proposons un nouvel algorithme de clustering [2], [6] minimisant la
consommation d'énergie dans les RCSF. Cet algorithme partitionne le réseau de capteurs en clusters
disjoints tout en s'appuyant sur les propriétés suivantes :
Equilibrer la taiiie des clusters (nombre de capteurs dans chaque cluster) : aucun des
clusters ne doit être sous-chargé ou surchargé. Un cluster de petite taille mène à une
mauvaise allocation des ressources, alors qu'un cluster de grande tadie augmente la
latence des nceuds pour accéder aux ressources partagées (comme dans TDMA).
(ii) Minimiser la distance entre les nœuds appartenant au même cluster : cela permet
d'améliorer la qualité de la communication intra-cluster en réduisant aussi bien les
interférences que la consommation d'énergie.
(iig Optimiser la consommation d'énergie de chaque nœud afin d'augmenter la durée de vie du
réseau entier.
Une fois les clusters formés, le nœud qui a la plus grande réserve d'énergie parmi l'ensemble des
nœuds de chaque cluster devient CH. Puisque les CHs consomment beaucoup plus d'énergie que
des nœuds ordinaires et que leur réserve d'énergie est limitée, la réélection des CHs est donc
inévitable dans le RCSF. A la différence des autres algorithmes de clustering existants, où la
réélection des CHs ainsi que la formation de clusters sont périodiques, notre algorithme maintient
les mêmes clusters formés à l'activation du système, et change seulement les CHs d'une manière
adaptative. En effet, une fois que le niveau d'énergie d'un CH devient plus petit que la moyenne du
niveau d'énergie de tous les n ~ u d s de son cluster, ce CH cède son rôle au nœud qui a la plus grande
réserve d'énergie dans le groupe.
La suite de ce chapitre est structurée comme suit: La section 5.2 décrit brièvement les
algorithmes d'auto-adressage et de clustering existants dans la littérature. Dans la section 5.3, nous
introduisons notre algorithme de clustering qui a comme objectif principal la minimisation de la
consommation d'énergie des capteurs. La section 5.4 présente les performances de cet algorithme
par des simulations. Enfin, nous concluons dans la section 5.5.
5.2 Auto-configuration des RCSF
L'auto-configuration n'est pas nécessairement source d'économie d'énergie dans un réseau de
capteurs. En revanche, celle-ci s'avère nécessaire dès lors que l'on souhaite concevoir des
applications dont i'usage est aisé grâce à « l'intelligence )) des capteurs. Il est, en effet, indispensable
que les capteurs s'auto-configurent lorsque leur nombre grandit. De plus, les capteurs peuvent être
moyennement mobiles ou bien encore inaccessibles.
La recherche en auto-configuration des réseaux de capteurs rejoint ici celle menée dans les
réseaux ad-hoc. En revanche, les fonctionnalités attendues de la part des capteurs sont moins
importantes que celles exigées dans les réseaux ad-hoc. Cela permet de minimiser les échanges entre
capteurs qui ont pour but de transmettre leurs informations vers la station de base ou relayer celles
fournies par un autre capteur, si nécessaire.
L'auto-configuration peut consister à élire un chef, à créer une topologie de réseau, à effectuer
les opérations nécessaires à la mise en œuvre de l'objectif du réseau de capteurs. Le premier choix à
effectuer est certainement celui de l'adressage.
Plusieurs techniques en vue de l'optimisation de l'énergie peuvent intervenir dans la mise en
place d'un réseau de capteurs : l'auto-configuration, l'auto-adressage, et le clustenng. Chacune de
ces techniques est susceptible de faire économiser de l'énergie au niveau d'un capteur, ce qui rend
leurs études intéressantes et légitimes.
Lorsque l'on souhaite que les réseaux puissent se découvrir de manière spontanée, l'assignation
d'une adresse unique à un nœud doit se faire de manière automatique. Cette numérotation peut être
faite d'après plusieurs méthodes.
Certains pensent qu'il est facile de construire une adresse unique à partir de l'adresse MAC. Il
faut cependant noter qu'un identifiant unique (MAC par exemple) qui se code sur un certain
nombre de bits (48 bits pour l'adresse MAC) ne peut pas engendrer un numéro unique en IPv4 (32
bits). En revanche, il pourra servir en IPv6 (128 bits). Une autre h i ta t ion est que cette adresse
MAC peut être modifiée. De plus, certains fabricants vendent des cartes dont l'adresse a été
détkriorée ou qui peut même ne pas être enregistrée. D'autre part, certains équipements réseaux ne
possèdent pas d'adresse MAC, ce qui peut être le cas des capteurs.
Dans P8], les auteurs proposent une classjfication des différents mécanismes d'auto-adressage.
Ils les séparent en trois grandes familles : les protocoles de type stateful, les protocoles de type
stateless, et ceux de type hybride:
Les protocoles de type stateful utilisent une rable d'adressage afin d'assigner une adresse
unique à un nœud. Ces protocoles se répartissent en trois sous-ensembles : ceux utilisant
une table d'allocation centralisée CAC (Centralized Auto Configuration) [79], ceux
utilisant une table d'allocation distribuée DAC (Distributed Auto Configuration) [80] et
ceux utilisant une table d'allocation disjointe DAT (Disjoint Allocation Tables) [81].
A la différence des protocoles dits c< stateful », les protocoles de type « stateless »
n'utilisent pas de table d'allocation. Leur fonctionnement est décentralisé. Ils utilisent à la
place une adresse choisie de façon déatoire ou basée sur un numéro de séne par exemple.
L'unicité de l'adresse choisie est vérifiée par un mécanisme de détection de collisions
d'adresses que l'on appelle mécanisme DAD (Duplicated Address Detection). La
différence entre les différents protocoles de ce type se fait donc sur la performance de la
procédure DAD. Selon le type de mécanisme DAD, différentes sous familles de type
« stateless » peuvent être proposées. Trois sous familles sont généralement citées : QDAD
(Query DAD) [82], WDAD (Weak DAD) [83] et PDAD passive DAD) [84].
Enfin, une troisième famille de type hybride est proposée, dans laquelle sont classés les
protocoles HCQA [85]. Celle-ci se situe à la frontière des deux types de mécanisme,
faisant à la fois intervenir le côté aléatoire des mécanismes de type « stateless » et la mise
en mémoire, par certains noeuds de tables d'adressages.
Que ce soit au moyen d'un protocole de type « stateful a, de type « statelessn ou encore de type
« hybride », la recherche s'intéresse au problème d'auto-adressage. Le premier type permet d'assurer
l'unicité de l'adresse mais génère aussi un maximum d'échanges dans le réseau. Le second, en
revanche, en génère un minimum mais n'assure cette unicité que sous certaines hypothèses comme,
par exemple, des nœuds parfaitement synchronisés, ou encore qui ne tombent pas en panne, etc. La
troisième famille essaie d'obtenir le meiueur profit des deux en proposant le protocole HCQA par
exemple, qui bien que basé sur du PDAD met en jeu un nœud spécial qui a pour rôle dans certains
cas de répondre à la place des nœuds concernés. Ainsi, ce mécanisme tient également compte de la
f a d e des protocoles « stateful D.
Il apparaît comme certain que ce domaine va être développé dans les réseaux de capteurs sans
fi. En effet, leur nombre par réseau étant de l'ordre de quelques centaines, il n'est nullement
envisagé de les configurer à la main. De plus, si de nombreux échanges sont envisageables dans les
réseaux ad hoc, leurs nombres et leurs tailles doivent être minimisés dans les RCSF, du fait de
l'économie nécessaire de la source d'énergie.
5.2.2 Clustering
La façon la plus simple de construire des clusters, outre l'utilisation de l'information
géographique, est de choisir comme CHs les nœuds qui ont le plus petit identificateur. Dans [86], T. Kwon et M. Gerla soutiennent cette idée afin d'introduire un algorithme distribué qui permet de
construire des clusters à deux sauts'g. Le but des auteurs est de permettre la réualisation spatiale de
la bande passante par clustering et de contrôler la bande passante dans chaque cluster. Constituer
des clusters à deux-sauts permet, en effet, de réutiliser les algorithmes de contrôle de puissance
définis pour les réseaux cellulaires [871.
Pour réduire la surcharge due à l'information de contrôle véhiculée pour construire les clusters,
T. Kwon, M. Gerla et G. Pei [88] proposent un algorithme utilisant une information minimale
transmise dans les trames MAC des données. L'écoute du trafic par tous les nœuds dans un même
voisinage leur permet d'obtenir cette information. Cet algorithme est bien valide lorsque les nœuds
sont très mobiles.
En général, les algorithmes de formation de dusters se décomposent en deux phases : # une
phase de constitution de clusters ; (ii) une phase de maintenance qui est très importante lorsque les
nœuds sont mobiles. Souvent, la première phase suppose que les nœuds sont quasiment immobiles.
Pour pouvoir céder cette supposition, S. Basagni [89] a proposé I'algorithme DMAC (Distributed
Mobility Adaptive Clustering) qui associe un poids à chaque nœud pour que, d'une part les CHs
' W n nœud peut rejoindre n'importe quel autre noeud de son cluster en deux sauts au maximum en passant par le CH.
obtiennent les poids les plus élevés ; et pour que d'autre part, ces CHs ne puissent jamais être
voisins immédiats. Le poids est variable et dépend de la vitesse ou de la puissance de transmission.
Dans 1901, V. Kawadia et P. Kumar proposent un algorithme de routage qui intègre le contrôle
de puissance et la technique de clustering implicite, CLUSTERPOW et mnnelled CLUSTERPOW,
pour des réseaux dont la répartition des nœuds est hétérogène. C'est un algorithme de routage
mdti-sauts où chaque nœud a plusieurs niveaux de puissance et qui choisit le plus petit niveau
possible pour joindre la destination. Chaque niveau de puissance définit alors un ciuster: pour
joindre une destination lointaine, le noeud doit envoyer l'information en ualisant son plus grand
niveau de puissance, ce qui revient à l'envoyer à un autre cluster car le réseau n'est pas
uniformément réparti.
Les auteurs de LEACH pl] proposent une architecture auto configurable basée sur les clusters
afin de minimiser l'énergie des nœuds. Les CHs transmettent directement les données à une station
de base, et dépensent donc plus d'énergie que les autres nœuds. Pour répartir la consommation
d'énergie, ils suggèrent un algorithme où tout nœud devient régulièrement CH avec une probabilité
qui augmente avec le temps passé depuis la dernière fois où le nœud a été élu. De plus, cette
probabilité est choisie de telle sorte que le nombre moyen de clusters soit un paramètre de
l'algorithme. Etant donné que cet algorithme ne garantit pas le nombre de CHs prévu à
l'initialisation de l'algorithme ainsi que la distribution équitable des CHs, une version centralisée de
l'algorithme (LEACH-C) est aussi proposée. Cette dernière permet de déterminer, à partir de la
position exacte des nœuds, la configuration optimale pour minimiser l'énergie dépensée.
Pour résoudre le problème posé par LEACH sur l'absence de garantie sur la bonne formation
de clusters, 0. Younis et S. Fahmy [91] proposent l'algorithme HEED qui permet de sélectionner
un CH en fonction de son énergie et d'une fonction de coût prédéfinie, basée sur le nombre de ses
voisins ou de la moyenne de puissance minimale nécessaire à ses voisins pour l'atteindre. Par
conséquent, soit cet algorithme construit un ensemble de clusters très dense, soit, au contraire, il
forme des clusters se répartissant la charge.
Par ailleurs, H. Chan et A. Perrig proposent dans [92], un algorithme qui permet d'obtenir des
clusters parfaitement homogènes et qui minimisent les recouvrerncnts (dont la complexité ne
dépend que de la densité de nœuds). Chaque nœud agit à des intervalies de temps uniformément
distribués et commence par se déclarer comme étant un CH. Il compte alors le nombre de
partisans loyaux, c'est-à-dire le nombre de nœuds qui appartiendraient seulement à son cluster dans
le cas où ce dernier serait élu. Si ce nombre est supérieur à un certain seuil, il devient alors CH. En
comptant ainsi le nombre de partisans loyaux, et non pas, le nombre de nœuds qui peuvent
appartenir à plusieurs clusters, le candidat CH choisi est celui pour lequel le cluster produit un
recouvrement de clusters minimal. Cela produit un effet de répulsion entre les clusters.
Une idée originale a été avancée par T.C. Henderson et ses coUègues dans [93] et [94]. Elle
consiste à utiliser le processus de morphogenèse de Türing pour donner une certaine configuration
a un réseau de capteurs très dense. Le principe consiste à propager le résultat d'une certaine
fonction de capteur en capteur, ce résultat étant utilisé en entrée de la fonction sur le capteur
suivant. En choisissant bien la fonction, on peut ainsi implanter de manière totalement distribuée
un mécanisme qui initialise une variable produisant une configuration globale totalement
prédéterminée. Celle-ci est par exemple prévue pour téléguider des robots. Cette morphogenèse
pourrait être utilisée pour trouver des configurations de clusrers complexes.
Plusieurs chercheurs ont étudié les techniques de clustering. Les clusters peuvent, en effet, être
simple-saut ou multi-sauts. De plus, le réseau peut être hétérogène ou homogène.
La question de l'impact de la densité de clusters (nombre de clusters par unité de surface) sur la
consommauon énergétique n'est pas vraiment évidente. Il faut, par ailleurs, ttudier celle de la taille
(en nombre de sauts) autorisée dans un cluster. Les auteurs de [95] s'intéressent à cette question. Ils
montrent que le choix d'un réseau simple-saut ou muiti-sauts n'a pas de réponse évidente. Ce choix
dépend de plusieurs paramètres, comme les constantes radios de l'environnement du réseau, des
caractéristiques de l'émerleur/receveur, de la raiiie (géographique) du réseau, de la distance à la
station de base, du coût des nmuds, etc. Ces auteurs proposent même un mode de communication
hybride afin de minimiser l'énergie. Celui-ci consiste à successivement alterner la communication
simple-saut et la communication multi-sauts.
O n dira qu'un réseau est hétéro-ne lorsqu'il contient au moins deux types de naeuds différents.
Les tètes de clusters (CHs) pourraient être, par exemple, de type 1, avec de plus grandes capacités
de calcul et d'énergie que ceux de type 2 qui forment le cluster en lui-même. On dira dans ce cas
que le réseau est hétérogène, ce qui a, à priori, pour avantage de minimiser le coût des équipements
les plus fréquents, à savoir ceux de type 2. En revanche, un réseau homogène pourra être déployé
sans condition de localisation des CHs : ce n'est plus vrai pour un réseau hétérogène, par exemple,
il est évident que l'algorithme LEACH FI] ne pourra être appliqué dans ce cas.
Dans [96], les auteurs étudient justement la dépense d'énergie suivant l'usage d'un réseau
homogène ou hététogène et dans le cas d'un réseau simple-saut ou multi-sauts, en proposant une
variante de LEACH, appelée M-LEACH, dans le cas de multi-sauts.
La surconsommation d'énergie due à la procédure de réélection des CHs ainsi que la
reconfiguration des dusters rend les algorithmes de clustering existants inadaptables au RCSF dans
lequel la consommation d'énergie est une contrainte majeure. De plus, aucun de ces algorithmes ne
peut assurer une distribution équitable des CHs dans l'espace. En effet, ces algorithmes ne prennent
pas en considération la position géographique des nceuds pour élire les CHs. Dans les algorithmes
de clustering existants, l'élection des CHs est basée sur l'un des attributs suivants : 6) l'identification des nmuds, (ii) le poids des nmuds calcule en fonction de certains paramètres comme
l'énergie, &' l'aspect aléatoire, (iv) la connectivité des nœuds. D'ailleurs, dans les algorithmes
existants, les nœuds ordinaires joignent le CH le plus proche sans aucun contrôle sur la t d e des
clusters, ce qui peut engendrer des clusters sous-chargés ou des clusters surchargés.
Dans le but de minimiser la consommation d'énergie dans les RCSF, nous proposons un nouvel
algorithme de clustering distribué et non périodique. Cet algorithme permet aux nœuds de
s'organiser en clusters locaux disjoints et équitables tout en s'appuyant sur la proxirniré des nœuds,
la réserve d'énergie des nœuds ainsi que sur le nombre possible de nœuds qu'un cluster peut
contenir. Le regroupement des naruds de proximité dans un même cluster permet aussi bien
d'améliorer l'agrégation et la compression des données que la communication intra-cluster.
5.3 Algorithme de clustering proposé
Dans cette section, nous introduisons le modèle du réseau, les contraintes de construction de
clusters ainsi que les objectifs de l'algorithme de clustenng que nous avons proposé avant de le voir
en détail.
5.3.1 Modèle du réseau
Le réseau de capteurs se compose d'un grand nombre de dispositifs (capteurs) à communication
sans fil, lesquels sont dispersés dans un champ rectangulaire. Dans ce réseau, les tâches
d'acquisition des données sont déclenchées périodiquement ou selon des requêtes envoyées par la
station de base. De ce fait, nous considérons un cadre générique pour différentes applications du
réseau de capteurs. Nous supposons les propriétés suivantes concernant le modèle du réseau de
capteurs:
les nœuds (capteurs} sont quasiment stationnaires. Cette supposition est typiquement
adaptée aux RCSF.
Les numds ont les mêmes capacités de capture, de traitement et de comrnunicauon.
Les noeuds utilisent une antenne omnidirectionnelle ayant un nombre fixe de niveaux de
transmission, c'est-à-dire que les nœuds peuvent régler leur puissance de transmission
radio.
La portée de capture d'un nœud est plus petite que la portée de communication.
Les nmuds se rendent compte de leur voisinage direct (1-saut) et sont capables de
mesurer des distances par rapport à leurs voisins immédiats. Ces deux suppositions sont
assez raisomab~es du fait que la première est une supposition standard pour beaucoup
d'algorithmes de découvertes de voisinages, tandis que la deuxième est une caractéristique
commune de la plupart des applications du RCSF. En effet, des mesures très précises de
calcul de distance entre les noeuds sont possibles dans un RCSF grâce à l'utilisation des
systèmes tels que : (0 ultrasons [97, MIT Crickets [98] ou Médusa MK-2 [99] ; (ii)
Ubisense [lûû) dans les systèmes d'ultra-large-bande.
Des protocoles appropriés de contrôle de transmjssion pour l'accès au canal sont
disponibles pour Ie RCSF. Ces protocoles doivent fournir une écoute du canal efficace,
un mécanisme de back-off aléatoire, un contrôle de contention fiable et un mécanisme
qui permet d'éviter le problème des nœuds cachés.
5.3.2 Contraintes de clustering
En général, le RCSF est constitué par de nœuds et de liens qui peuvent être représentés par un
graphe non orienté G=(V, Q, où V représente l'ensemble des noeuds et E représente l'ensemble
des liens. La division du RCSF en clusters revient donc au problème de partitionnement du graphe
avec quelques contraintes supplémentaires. Cependant, la division du graphe en sous graphes
connexes de façon optimale est un problème NP-complet r/7]. De ce fait, nous nous baserons sur
une solution heuristique afin de diviser le RCSF en clusters locaux non recouverts et équilibrés, où
chaque groupe contient un certain nombre de nœuds qui seront représentés par un CH. Dans ce
contexte, les besoins suivants devront être répondus :
La procédure de clustering est complètement distribuée.
La procédure de clustering se termine dans un nombre fixe d'itérations (indépendamment
du diamètre de réseau).
Lorsque la procédure de clustering est parachevée, chaque nœud appartient à un seul et
unique cluster.
Le résultat du clustering d'un réseau de capteur sans fd représenté par un graphe connexe
est un ensemble de clusters connexes, lesquels sont connectés entre eux.
La procédure de clustering est efficace aussi bien en terme de complexité de traitement
qu'en échange de messages.
Les CHs sont uniformément distribués à travers le RCSF.
5.3.3 Objectifs désirés de clustering
Dans le but d'assurer la fiabilité de l'algorithme de clustering, le mécanisme de formation de
clusters doit satisfaire les propriétés suivantes :
Afin de limiter le nombre d'états à maintenir par le CI3 et de réaliser une communication
intra-cluster efficace, chaque cluster doit contenir un nombre de nœuds préalablement
défini. D'une part, les clusters de petite t d e mènent à une mauvaise uthsation des
ressources. D'autre part, les clusters de grande taille augmentent la latence, qui représente
le délai mis par un nœud pour accéder aux ressources partagées (trame TDMA, canal, . . .)
de son cluster. Par conséquent, le meilleur compromis consisterait à fixer la taiüe de tous
les clusrers par le biais d'un seuil x à ne pas dépasser. Ainsi, ce seuil permer de maintenir
une charge optimale.
Sachant que l'énergie consommée due à la communication entre deux nœuds est
proportionnelle à la distance entre ces derniers, il est donc nécessaire de limiter la portée
de transmission de chaque noeud à une certaine distance. Autrement dit, la
communication de courte distance permet une communication intra-cluster dans de
meilleures conditions (atténuation de signal très faible, interférence basse).
Les nœuds de même voisinage doivent être regroupés dans un même cluster car, en
général, les nœuds voisins détectent les mêmes informations. Cela permet de supprimer
localement les données redondantes par le CH et de remonter seulement les données
pertinentes à la station de base.
Chaque naeud doit appartenir à un seul et unique cluster afin de minimiser la
surconsommation d'énergie. En effet, lorsqu'un nœud appartient à plus d'un cluster,
l'énergie est gaspillée par le maintien des états ainsi que l'exécution des tâches pour
chacun des clusters au lieu d'un seul.
Afin de réduire les mises à jour du système et de minimiser la surconsommation
d'énergie, la reconfiguration des clusters doit être aussi longtemps que possible retardée.
5.3.4 Description détaillée de l'algorithme proposé
En prenant compte des discussions précédentes, nous proposons un nouvel algorithme de
clustenng qui combine les paramètres du système ci-dessus (la taille des clusters, la puissance de
transmission, l'énergie des nœuds) avec certains facteurs de poids choisis selon les besoins du
système. Par exemple, si nous considérons que la puissance de transmission est un paramètre crucial
dans les RCSF, alors le poids correspondant à ce paramètre doit être élevé. De plus, suivant les
caractéristiques des applications, un ou plusieurs de ces paramètres peuvent être employés dans le
processus d'agrégation des nœuds en clusters.
Dans l'algorithme proposé, seuls les nœuds ayant suffisamment d'énergie peuvent être choisis
comme CHs, alors que ceux qui n'ont pas assez d'énergie prolongent leur durée de vie par la
réalisation de tâches moins consommatrices d'énergie comme l'acquisition de données et la
communication intra-cluster. De plus, les membres de chaque cluster sont, généralement, adjacents
et détectent des données semblables, agrégées par le CH, limitant de ce fait la quantité des données
qui doit être envoyee à la station de base. Par ailleurs, la procédure de formation de clusters est
seulement exécutée à l'activation du système, tandis que la reconfiguration des CHs est aussi
longtemps que possible retardée.
Les tâches principales de l'algorithme de clustering proposé sont comme suit :
La formation de clusters.
L'élection d'un CH pour chaque cluster.
La création d'un modèle de communication sans coiLision dans chaque cluster.
5.3.4.1 Formation des clusters
La procédure de formation des clusters se déroule en 3 étapes :
Début de la procédure
1. V i E V , former son propre groupe de voisinage GV; :
- transmettre un message d'exploration dans la limite de la portée de transmission
du nœud i (t~,~,,&).
- attendre un message d'acquittement « ACK D de la part des nœuds voisins.
- mettre l'ensemble de ces voisins dans GK ; plus formellement :
GV, = { j E V l d ( i , j ) + bmng(i)]
2. V i E V , calculer sa super classe :
- transmettre GV; aux nœuds de son groupe de voisinage.
- attendre GI.; de chaque j E Gy-
- calculer les classes d'équivalence du nœud i. L'une des classes d'équivalence EC; du nœud i est l'ensemble des éléments de son propre groupe de voisinage (GVJ, à
l'exception de ceux qui ne sont pas voisins directs entre eux; c'est-à-dire un nœud
j E EC, , si V k E EC, , alors j et k sont voisins immédiats.
- calculer le poids combinéWEc, pour toute classe d'équivalence EC de i,
conformément au poids défini comme suie :
tels que a, j3 et y sont des poids, 1 ECI est la t d e de la classe d'équivalence EC, ,y est
le seuil prédéfini limitant le nombre de nœuds qu'un CH peut idkalement gérer, dhk) est la distance entre les deux nœuds j et k et Cefi] est le niveau d'énergie du ntzudj.
- sélectionner la classe de poids minimal comme étant la super classe de 8.
3. Vi E V , construire son cluster :
- désigner initialement la super classe de i obtenue à l'étape 2 comme étant le cluster
Ci auquel il appartient.
- transmettre l'ensemble des nœuds constituant le cluster C; aux nœuds de son
groupe de voisinage (Gu.
- attendre le cluster C, de chaque j E GV, .
- modifier éventuellement son appartenance à un cluster C, dans le cas où i E Cj et
la taille de C, est inférieure à celle de C; ( 1 C, 1 < 1 Ci 1). Fin de la procédure
Dans cette procédure de formation des clusters, nous pouvons constater que la métrique
principale définissant le choix des clusters est WEC (5-3). En effet, cette métrique est constituée de
trois composantes qui reflètent : la taille du cluster, (ii) la distance entre les ncieuds ; (iUï le niveau
d'énergie de chaque nœud. La première composante contribue principalement à équilibrer la taille
de chaque cluster afin de permettre aux CHs de gérer un nombre limité de nœuds qui tend vers un
seuil prédéfini En d'autres termes, assurer un bon modèle de communication intra-cluster. La
deuxjème composante est liée à la consommation d'énergie. Cette composante permet de mettre les
nœuds adjacents dans un même cluster afin de minimiser l'énergie consommée due à la
communication intra-cluster. De plus, elle permet de réduire la quantité des données à transmettre à ~
la station de base car, en général, les nœuds de même proximité détectent des données semblables.
La troisième composante mesure le niveau d'énergie des nœuds qui dépend aussi bien de la
configuration initiale des nœuds que de l'énergie dépensée selon le trafic du réseau et la puissance
de transmission. Cette dernière composante permet de distribuer les noeuds qui n'ont pas assez
d'énergie dans différents clusters afin de prolonger leurs durées de vie.
5.3.4.2 Election des CHs
Ainsi, le RCSF est divisé en clusters locaux, chjoints et équilibrés. Chaque noeud appartient à un
seul et unique cluster. Chacun des clusters sera représenté par un CH, qui est sélectionné parmi
l'ensemble des nœuds de son cluster. De ce fait, les nœuds ordinaires communiquent avec d'autres
nœuds uniquement par le biais du CH de son clusrer. D'ailleurs, le CH est le ntloud qui maximise le
niveau d'énergie dans l'ensemble des noeuds du cluster. A la Ifférence d'un nmud simple, un nœud
CH effecrue des fonctions qui consomment beaucoup plus d'énergie. Ii est donc inévitable de
réélire périodiquement un CH afin de distribuer la consommation d'énergie sur l'ensemble des
nœuds du cluster et d'éviter ainsi la destruction rapide de certains nœuds. Ainsi, chaque CH calcule
périodiquement la moyenne d'énergie disponible de tous les nœuds de son cluster. Si son niveau
d'énergie actuel est en dessous de la valeur moyenne, dors le nœud ayant un maximum de réserve
d'énergie est indiqué comme nouveau CH du cluster. Par conséquent, la réélection des CHs est le
plus longtemps possible retardée.
5.3.4.3 Modéle de communication intra-cluster
La création d'un modèle de communication intra-cluster sans collision est la dernière étape liée à
la phase de clustering. Dans le but d'éviter les collisions entre les nœuds de même cluster,
l'algorithme proposé utiiise la technique de multiplexage temporel ("IDMA) comme méthode
d'accès au médium. Chaque nœud utilise la totalité de la bande passante douée par le système de
transmission durant son slot de temps. En fait, chaque CH agit comme un centre de commande
local pour coordonner les transmissions de données dans son cluster. I1 crée un modèle de
communication en se basant sur TDMA, ensuite il transmet ce modele aux nczuds de son cluster.
Etant donné que chaque noeud connaît d'avance le slot de temps qu'il va occuper, il est alors
permis au nœud de passer à l'état "endormi " durant les slors inactifs. Ainsi, la perte d'énergie due
aux états de sur-écoute (overhearing) et d'écoute-passive (idle) est évitée.
5.3.5 Exemple illustratif
Par le biais des figures 5-1 et 5-2 ainsi que du tableau 5-1, nous illustrons un exemple
d'exécution de l'algorithme de clustering proposé. Toutes les valeurs numériques sont obtenues en
exécutant l'algorithme sur 10 nceuds représentés par un graphe connexe comme le montre la figure
5-1. Les résultats obtenus sont stockés dans le tableau 5-1.
-
Figure 5-1: Configuration initiale des nœuds
, ' 1'
1
; I
I
\
\
1 '\ i '
i '.
CHs -. - . _ . _ . - 1 .
Figure 5-2: Identiiication des clusters
La figure 5-1 montre la configuration initiale du RCSF qui est représenté par un graphe. Chaque
nœud est identifié par un numéro. Un arc sur le graphe signifie que les deux noeuds sont voisins
directs. Dans cet exemple, nous considérons que le seuil de la taille des clusters est ~3 et la
distance entre chaque couple de nœuds est choisie de façon aléatoire. Pour simplifier, nous
supposons que les nœuds ont la même réserve d'énergie. Par conséquent, les poids considérés dans
l'équation (5-3) sont ax0.5, /?=0.5 et ?=O.
Tableau 5-1 : Formation des clusters
En exécutant l'algorithme de clustering proposé sur le graphe initial de la figure 5-1, nous
obtenons les résultats qui sont mémorisés dans le tableau 5-1. La colonne 1 du tableau contient les
identifiants des nœuds. Les groupes de voisinage de tous les nœuds sont formés dans la première
étape de l'algorithme et sont mis dans la deuxième colonne du tableau. Les classes d'équivalence de
chaque nœud sont calculées dans l'étape 2 et sont stockées dans la troisième colonne du tableau. La
colonne 4 contient la valeur de la métrique WEC, calculée aussi dans l'étape 2, de chaque classe
d'équivalence. La colonne 5 mémorise les clusters formés dans la troisième étape de l'algorithme.
La figure 5-2 représente les clusters construits après l'exécution de l'algorithme de clustering
proposé sur le graphe initial de la figure 5-1. Les nœuds remplis désignent les CHs. Nous ,
remarquons que la taille de chaque cluster est à peu près égale au seuil X.
5.3.6 Exactitude et complexité
Dans le but de prouver l'exactitude de l'algorithme du clustering proposé nous démontrons les
lemmes suivants :
Lemme 1 : chaque mud i d@nit ses chses d 'éqnideme art bout d 'trn tempsjni.
Preuve : chaque nœud i ayant une connaissance de ses voisins (par exploration du voisinage) la
diffuse à tous ces derniers et reçoit de chacun d'eux cette connaissance. Il peut ainsi calculer toutes
ses classes d'équivalences au bout d'un temps fini.
Lemme 2 : cbaqne nand appartient à nn se& et nniqne chstm.
Preuve : pour que le réseau soit connecté, chaque nœud devrait avoir au moins un voisin immédiat,
avec lequel il est possible de constituer une classe d'équivalence. Etant donné que chaque nœud
considère sa super classe comme cluster par défaut, alors chaque nœud appartient à au moins un
cluster. Après un échange d'informations entre les nœuds voisins, chaque nœud connaît l'ensemble
de clusters auxquels il fait partie. Dans le cas où un nœud appartiendrait à plus d'un cluster, il serait
mis dans le cluster de petite taille. Par conséquent, chaque nœud fait partie d'un seul et unique
cluster.
Lemme 3 : l'alga?ithme de cfustetingpmposé termine au bout d'un tempsfanl.
Preuve : Puisque chaque nœud de V peut déterminer son cluster (super classe) au bour d'un temps
fini (femme 1) et que les clusters sont disjoints (lemme Zj, alors l'algorithme se termine dans un temps
fini.
Le temps requis pour la sélection des classes d'équivalence ayant un poids WEC minimum
comme clusters dépend de l'implémentation de l'algorithme. Dans un système centralisé, cette tâche
peut être accomplie dans un temps linéaire en fonction du nombre de noeuds. Sachant qu'il n'est
pas recommandé d'utiliser un système centralisé dans les RCSF, nous avons proposé une solution
distribuée dans laquelle les nœuds voisins communiquent entre eux des informations sur leurs
groupes de voisinage pour que chaque nœud puisse calculer ses dasses d'équivalence. Ensuite,
chaque nœud diffuse de nouveau à ses voisins sa super classe comme étant sons cluster par défaut.
Par conséquent, le temps nécessaire d'exécution de la procédure de formation des clusters dépendra
du diamètre du réseau et des délais de communication des messages.
5.4 Evaluation des performances et simulations
Dans cette section, nous érudierons les performances de l'algorithme de clustenng que nous
avons proposé. Par la suite, nous comparerons cette proposition avec LEACH en terme de latence
et de distribution des CHs dans l'espace.
Nous avons effectué plusieurs simulations de I'algorithme de clustering en plaçant N nœuds
dans une g d e de 100m*100m et nous avons mesuré certaines propriétés de i'algorithme. Dans le
but d'évaluer cet algorithme, nous avons identifié 3 paramètres : fi] le nombre de clusters créés ; (9 la connectivité ; et (iii) la latence. La connectivité est définie par la probabilité qu'un nœud est
accessible par n'importe quel autre nœud, tandis que la latence représente la dyrée "du temps qu'un
nœud doit attendre pour accéder aux ressources partagées (canal, trame TDMA, . . .) de son cluster.
Ces trois paramètres sont étudiés en changeant le nombre de nœuds N dans le système, la portée de
transmission et le seuil de la taille des clusters X. Etant donné l'importance d'avoir des clusters de
taille proche de la valeur de X, le poids a associé à ce paramètre dans l'équation (5-3) a été choisi
avec une valeur élevée. En revanche, les autres poids correspondant à la distance et à la puissance
de batterie ont été utilisés avec des valeurs moins importantes. Les valeurs des poids utilisées dans
les simulations sont azO.5, 8=0.25 et y=0.25. Notons que ces valeurs sont arbitraires et devraient
être ajustées selon les conditions du système. Par ailleurs, pour ces premières simulations, N prend
trois valeurs différentes qui sont 25, 50 et 100 nœuds.
. , , , , , . . . . . . . . . .
'0 5 10 15 XI 25 30 35 O 45 !û Seuil de Io lstlla du cluaer
Figure 5-3: Nombre de clusters créés, t~.,~=30rn
La figure 5-3 montre le nombre de clusters créés en fonction de la valeur du se& x lorsque la
portée de transmission de chaque nœud est égale à tx,,=30m. Nous remarquons que le nombre de
clusters diminue quand la valeur de x augmente car si on incrémente la taille de clusters,
l'aigorithme de clustering va automatiquement créer un nombre réduit de clusters. En effet, le
nombre de clusters créés est proche de la valeur optimale égale à (N / X ) De plus ce nombre de
clusters est plus élevé quand le nombre de nœuds est plus grand.
Figure 5-4: Nombre de clusters créés, x=10
Les résultats de la figure 5-4 représentent le nombre de clusters créés en respectant la variation
de la portée de transmission avec ~ ~ 1 0 . Nous constatons que ce nombre diminue avec
l'augmentation de la portée de transmission. Cela est dû au fait qu'un nœud couvrira un plus grand
domaine avec une portée plus étendue de transmission, conduisant ainsi à augmenter la taille de son 3
groupe de voisinage et ceiie de ses classes d'équivalence. Par conséquent, l'uaiisation d'une portée
de transmission assez élevée implique l'obtention de clusters ayant des tailles qui atteignent à peu
près le seuil X. A partir des résultats de la figure 5-4, nous pouvons noter que le nombre de clusters
créés se rapproche à N/x lorsque la portée de transmission est plus grande que 25m.
Figure 5-5: Comectivité moyenne, X-10
C'est ici que nous étudions l'impact de la portée de transmission sur la connectivité des nœuds.
C'est pour cela que nous supposons un modèle de réseau idéal où un lien est établi entre deux
nczuds se trouvant dans la portée de transmission de l'autre. Plusieurs déploiements aléatoires de N nczuds sont examinés pour chaque portée de transmission. La figure 5-5 représente la connectivité
moyenne de ces déploiements. Ce schéma démontre qu'un graphe connexe peut être obtenu en
utilisant une portée de transmission plus élevée. A partir de ces résultats, nous constatons que la
portée de transmission garantissant une connectivité totale du réseau (tous les noeuds sont
connectés) doit être de : fi) 20m dans le cas où N serait égal à 100 ; fiz) 30m dans le cas où N serait
égai à 21.
Figure 5-6: Latence moyenne, t~,~=fOrn
La figure 5-6 montre la latence moyenne par rapport au seuil X, avec une portée de transmission
(&,$ égale à 30m. Nous remarquons que la latence moyenne augmente avec l'incrémentation du
seuil X. Une petite valeur de x mène à la création de clusters de petite taille, ce qui cause une
mauvaise utilisation des ressources, tandis qu'une grande valeur de x conduit à diviser le réseau en
clusters de grande taille, mais cela augmente la latence et le surcoût (overhead) de communication.
Nous d o n s maintenant comparer notre algorithme de clustenng avec LEACH en termes de
la distribution des CHs dans l'espace et de la latence maximale. Nous évaluons la distribution des
CHs par la moyenne des distances entre les nœuds et leurs CHs. Nous fixons cette fois le nombre
de nœuds (N) à 100, et nous supposons que chaque nœud peut communiquer avec n'importe quel
autre nœud dans le secteur du réseau 100mx100m.
Figure 5-7: Distribution des CHs
La figure 5-7 montre la distance moyenne entre les nœuds et leurs CHs en fonction du nombre
de ces derniers. L'algorithme de clustering proposé dépasse clairement LEACH lorsque le nombre
de CHs augmente, car le choix aléatoire des CHs dans LEACH mène à une distribution irrégulière
des nœuds élus. En effet, dans le cas où les CHs sont voisins ou situés à la frontière du réseau, les
nmuds éloignés des CHs nécessitent des puissances d'émission très élevées pour les
communications intra-cluster. Notre algorithme résout ce problème en effectuant une distribution
équitable des CHs dans les différentes régions du RCSF. Une distribution régulière des CHs
permet, évidemment, d'économiser la consommation d'énergie des nœuds, alors qu'une distribution
irrégulière des CHs conduit à une dissipation inutile d'énergie.
Figure 5-8: Latence maximale
La figure 5-8 présente la latence maximale en fonction du nombre de CHs. Nous constatons que
notre algorithme affiche de meilleures performances que LEACH. Cela est dû au fait que cet
algorithme distribue équitablement les nœuds dans les clusters, tandis que dans LEACH, certains
clusrers peuvent être surchargés, et d'autres clusters contiennent peu de nœuds.
5.5 Conclusion
Dans ce chapitre, nous avons présenté un nouvel algorithme de clustering qui combine
efficacement différents paramètres (la taille du cluster, la distance entre les noeuds et l'énergie des
nœuds) pour organiser les nœuds capteurs dans des clusters disjoints et équilibrés. Cet algorithme
assigne différents poids à ces paramètres suivant leur importance dans la composition du cluster.
Les avantages associés à ce processus de clustering sont : (i) le groupement des nœuds adjacents
dans un même cluster permet de minimiser la consommation d'énergie lors de la communication
intra-cluster et de favoriser l'agrégation ainsi que la compression des données ; (ii) le contrôle de la
taille des dusters permet aux CHs de gérer efficacement les nœuds de leurs groupes et garantit un
bon fonctionnement du système ; (iii) la non périodicité de l'algorithme permet de réduire les
surcoiits de calcul et de communication. Cet algorithme réalise également une distribution équitable
de CHs à travers le réseau de capteurs. Les résultats de simulation ont montré que le nombre de
dusters créés diminue avec l'augmentation du seuil x et de la portée de transmission. Cependant, la
latence moyenne augmente lorsque le seuil x augmente. Ainsi, un bon fonctionnement du système
peut être réalisé en limitant ou en optimisant la t d e de chaque cluster. Les résultats de simulation
ont également montré que notre algorithme a de meilleures performances que l'algorithme de
clustering LEACH.
Chapitre 6
6 Protocole de routage hiérarchique basé sur
le clustering optimisant la consommation
d'énergie dans les RCSF : DECHP
Après avoir proposé un algorithme de clustering dans le chapitre précédent, nous proposons
dans ce chapitre un nouveau protocole de routage hiérarchique, dénoté DECHP (Distributed
Energy efficient Clustering-based Hierarchy Protocol), lequel est fondé sur l'algorithme de
clustering présenté dans le chapitre 5. DECHP emploie, dans une première étape, cet algorithme de
clusrenng pour (fl diviser le réseau de capteurs en clusters locaux, disjoints et équilibrés, rii) élire un
CH pour chacun des clusters, et (iid créer un modèle de communication intra-cluster sans collision
dans chaque cluster. Ainsi, DECHP réduit la complexité de routage en gérant localement la
communication intra-cluster par le biais des CHs élus. Dans une deuxième étape, il établit des
chemins de routage entre les CHs (CH-en-CH) en se basant sur la distance entre ces derniers ainsi
que sur leurs réserves d'énergie afin d'effectuer la communication inter-clusters. DECHP permet
d'optimiser la consommation d'énergie des capteurs en 6) équhbrant la taiiie des dusters, (Id) évitant
la réélection périodique des CHs, (iii) plaçant uniformément les CHs à travers le RCSF, et (iv)
distribuant la dissipation d'énergie sur l'ensemble des nœuds capteurs.
Dans ce chapitre, nous présenterons une étude préliminaire sur les techniques de mesure de
distance et de localisation des objets communicants (capteurs), ceci pour montrer qu'un capteur est
capable d'estimer la distance entre lui-même et n'importe quel autre capteur voisin par le biais de
ses propres moyens. Ensuite, nous décrirons les modèles du RCSF, de communication radio et
d'agrégation de données employés par DECHP. Enfin, nous présenterons en détail le protocole de
routage hiérarchique DECHP qui permet d'optimiser efficacement la dissipation d'énergie des '
capteurs lors de la communication.
6.1 Motivation
Les nœuds capteurs utilisent des batteries de taille minuscule comme ressource d'énergie, ce
qui limite leur durée de vie. De plus, la spécificité des applications des réseaux de capteurs
(militaires, sismiques et autres) fait que la recharge ou le remplacement de ces batteries est une tâche
diffide voire même impossible, ce qui nous amène à en déduire que la durée de vie d'un nœud est
essentiellement dépendante de la durée de vie de sa batterie. Ainsi, la méthode de gestion de
consommation d'énergie constitue une contrainte majeure dans ce type de réseau.
Plusieurs travaux portent aujourd'hui sur la gestion de la dissipation d'énergie des capteurs en
considérant en premier lieu la communication car cette opération est très consommatrice d'énergie.
Les techniques de routage développées pour effectuer la communication dans les réseaux de
capteurs sont très nombreuses, et eiles sont très fortement conditionnées par le type d'applications
souhaitées. Toutes les problématiques définies dans le cadre des réseaux de capteurs ne sont pas
intégralement résolues par les protocoles de routage existants.
En effet, les protocoles de routage hiérarchique tels que LEACH résolvent le problème du
passage à I'écheile du réseau en créant un algorithme de routage basé sur le clustering. Cette
technique permet de ne pas faire croître la complexité du réseau en fonction du nombre de nœuds,
mais en Fonction du nombre de degrés dans la hiérarchie créée. Néanmoins, la mise en place des
clusters pour former la hiérarchie est un problème en soit, NP complet qui n'est pas résolu par ce
type de protocoles.
Les protocoles basés sur la diffusion tels que SPIN et Dircet-diffusion sont des algorithmes
qui sont très simples à mettte en œuvre et ils ne nécessitent pas la mise en place de politiques
d'adressage complexes. Mais ces algorithmes ne peuvent être utilisés qu'avec quelques types de
réseaux de capteurs pour lesquels il est facilement possible d'agréger les données qui sont
rransportées sur le réseau.
Le rourage géographique est pour sa part un protocole qui résout les problématiques liées à la
fois à l'adressage et à la complexité du réseau. Cependant, il est difficile de mettre en œuvre ce type
de protocoles car cela implique que chaque nœud dispose d'un élément permettant de lui fournir
une position précise et unique, même dans le cas d'une très forte densité de nœuds.
Bien que la couche réseau ne soit pas encore définie par les autorités de normalisation, il semble
que le routage hiérarchique basé sur le clustering soit privilégié car il permet d'optimiser
efficacement la dissipation d'énergie due à la communication entre les capteurs. Dans ce contexte,
nous proposons un nouveau protocole de routage hiérarchique dénoté DECHP (Distributed
Energy-efficient Clustering-based Hierarchy Protocol). Dans un premier temps, DECHP divise le
RCSF en clusters locaux, disjoints et équilibrés qui seront chacun représentés par un nœud maître
appelé CH (Cluster Head) en utilisant l'algorithme de clustering proposé dans le chapitre 5. Ensuite,
il établit un algorithme de routage entre les CHs (CH-en-CH) pour effectuer la communication
inter-clusters en se basant sur les propriétés suivantes :
r La distance entre les CHs : la consommation d'énergie et les interférences augmentent
avec la communication de longue distance.
La réserve d'énergie des CHs : i'optimisation et la distribution équitable de la
consommation d'énergie des CHs permet d'éviter la réélection périodique de ces derniers
et d'augmenter la durée de vie du réseau entier.
Ainsi, dans DECHP, les nœuds ordinaires de même cluster transmettent les données récoltées
à leur CH en utilisant le modèle de communication intra-cluster sans collision décrit dans le
chapitre 5. Ensuite, le CH exécute la procédure d'agrégation des données sur les informations
rassemblées par les membres de son cluster, puis il achemine le résidu des données agrégées vers la
SB en utilisant i'algorithme de routage CH-en-CH.
6.2 Etude préliminaire sur la localisation des capteurs
Le rôle des réseaux de capteurs étant souvent la surveillance d'un espace donné, la localisation
y joue un rôle primordial. De plus, la distance entre les capteurs est l'un des principaux paramètres
employés par DECHP pour construire les clusters et déterminer les chemins optimaux de routage
CH-en-CH. C'est pourquoi, nous nous intéresserons dans une première partie aux différentes
techniques de mesure de distance et de positionnement puis, dans une deuxième partie, aux
différentes technologies envisageables pour ces techniques, notamment en explicitant leurs
caractéristiques intrinsèques.
6.2.1 GPS: Global Positioning Systern
Le système GPS consiste en une consteliation de 24 satellites sut 6 orbites planes. Ces satellites
disposent d'une horloge atomique. Le récepteur, lui, n'a pas besoin d'une horloge précise mais
d'une horloge stable à court terme et capable de recevoir les signaux provenant de quatre satellites
différents afin de déterminer sa propre latitude, longitude, altitude et l'heute précise. Cependant, les
récepteurs disposent d'horloges qui ne peuvent pas mesurer de façon précise les temps de vol ; en
revanche ces horloges permettent de mesurer avec précision les différences de temps d'arrivée. A partir de ces mesures, on utdise la méthode des hyperboles pour positionner le récepteur GPS. En
réalité, plusieurs erreurs inrerviennent et les hyperboles ne se croisent plus qu'en un seul point
d'intersection ; il existe de nombreux traitements afin d'améliorer la précision qui arrive aujourd'hui
à une dizaine de centimètres.
Le GPS est un système de localisation qui est disponible sur toute la surface du globe.
Pourtant, il n'est pas satisfaisant pour l'usage nécessaire car il cumule plusieurs handicaps. Il est
disponible uniquement en exterieur, mais seulement si aucun obstacle ne vient obstruer le champs
de vision des récepteurs : le fonctionnement sous un feuillage dense ou dans des villes aux rues
érroites n'est pas vraiment possible, ou s'il l'est c'est seulement dans de très mauvaises conditions.
De plus, il est particulièrement coûteux, surtout en ce qui concerne le matériel - qui est dupliqué en
nombreux exemplaires dans un réseau à forte densité de capteurs. En outre, la rkception du signal
est trés gourmande en énergie, ce qui n'est pas compatible avec les problématiques de gestion de
durée de vie des batteries.
La localisation par moyens propres est donc indispensable. Elie se fait en deux étapes :
l'estimation de la distance aux aurres nœuds, puis le positionnement.
6.2.2 Méthodes de mesure de distance
11 existe plusieurs méthodes de mesure de distance, une première s'appuie sur le calcul d'angles
d'arrivée, une deuxième sur le calcul de la force d'un signal, et la dernière sur les temps d'arrivée.
6.2.2.1 Mesure des angles d'arrivke
Cette méthode est très utile lorsque l'on veut utiliser l'algorithme de positionnement de
trianguiauon. Nous disposons alors d'un ensemble de capteurs disposés sur une antenne et qui sont
séparés par une distance constant d. A paràr de ce réseau de capteurs, nous pouvons alors
déterminer l'angle d'arrivée. 11 existe plusieurs méthodes pour mesurer cet angle, une technique
intéressante lorsque l'on a plusieurs signaux incidents est d'utiliser la corrélation [101]. Eile consiste
à corréler le signal incident avec une fonction qui représente le signal théorique d'arrivée sur le
réseau qui dépend de l'angle d'arrivée qheotique. Le résultat est maximum quand q,,,,, =tpthcodque On
obtient ainsi la mesure de l'angle d'arrivée gràce à une antenne composée de plusieurs capteurs.
Cependant, on peut remarquer que cette méthode se base essentiellement sur les distances entre
capteurs pour la mesure de l'angle.
6.2.2.2 Mesure de l'énergie du signal
Cette seconde méthode de mesure sert à évaluer les distances, elle est donc utde pour tous les
algorithmes de positionnement. Le principe est le suivant : nous avons un émetteur équipé d'une
antenne. Nous connaissons le diagramme de rayonnement de l'antenne [102]. Il suffit alors de
trouver dans ce diagramme le point qui correspond à l'atténuation mesurée puis nous en déduisons
la distance de l'émetteur au récepteur.
Cette méthode a l'énorme avantage de ne pas avoir besoin de synchronisation. Cependant, elie
n'est pas compatible pour obtenir de bonnes précisions étant donné le caractère de l'estimation. Il
est, en effet, difficile de donner avec précision la position en uuhsant un diagramme de
rayonnement d'une antenne.
6.2.2.3 Mesure du temps d'arrivée
Cette technique est plus utilisée grâce à la relation simple qui existe entre la mesure du temps
d'arrivke et la distance :
dis tan ce At=
cétant la vitesse de propagation dans le milieu.
Cette méthode possède deux cas de figure :
Soit le système est synchronisé (tous les émetteurs et les récepteurs ont une horloge
commune) : alors, il suffit d'un aller simple entre l'émetteur et le récepteur pour
l'estimation de la distance entre ces deux nœuds. En effet, Ie système étant synchronisé, la
mesure du retard s'effectue facilement, il suffit de connaitre la date exacte de l'envoi puis
de mesurer le retard [103]. Le temps de propagation de l'émetteur jusqu'au récepteur
correspond au retard de l'onde arrivant sur le récepteur par rapport à la date de départ.
Ensuite, il suffit de le multiplier par la vitesse de propagation d'une onde radio dans le
milieu pour avoir une mesure de la distance entre les deux objets.
Soit le système n'est pas synchronisé : si l'émetteur et le récepteur sont désynchronisés,
cela signifie qu'ils n'ont pas la même origine de temps, la mesure du retard effectuée par
le récepteur sera juste à un offset près q u i est la différence entre les deux origines de
temps. Une solution possible est que l'onde effectue un aller/retour pour pouvoir
mesurer le temps de propagation entre émetteur et récepteur, I'émetteur jouant
temporairement le rôle de récepteur. Ii suffit ensuite d'enlever le temps de traitement et
de le diviser par deux pour avoir le temps d'arrivée entre les deux nœuds. Pour avoir la
distance, on applique la même méthode que dans le cas du système synchronisé.
6.2.3 Méthodes de positionnement
Il existe différentes méthodes de positionnement. Nous nous concentrerons sur l'hypothèse
plane.
6.2.3.1 Triiatération
La trilatération est un algorithme qui permet de positionner un objet communiquant (capteur) à
l'aide de trois nœuds de référence. Cet algorithme consiste à mesurer Ies distances qui séparent le
nœud à positionner aux nœuds de référence. Ensuite, on trace un cercle autour de chaque nœud de
référence [104], le nœud à positionner se situe à l'intersection de ces trois cercles (Figure 6-1).
l
Figure 6-1 : Trilatkation
La triangulation est un algorithme utiljsant les propriétés géométriques du triangle pour pouvoir
positionner un nœud à partir de deux nœuds de référence [105], [106]. Il utilise pour cela :
la loi des sinus.
le théorème d'Al Kasbi.
le théorème de Pythagore.
Soit un triangle ABC, dans lequel on utilise les notions usuelles exposées sur la figure 6-2:
d'une part a, p et y pour les angles, et d'autre part, a, b et c pour les côtés respectivement opposes à
ces angles. Alors, le théorème d'Al Kashi stipule que :
Figure 6-2 : Triangle
A partir de cette relation et de deux nœuds de référence, on peut obtenir la position d'un
troisième nœud. Cet algorithme utilise donc moins de nœuds de référence mais nécessite la
connaissance de plus d'informations liant les trois nœuds. 11 est en effet nécessaire de connaître les
angles formés par le triangle issu des trois nœuds, les autres algorithmes n'utilisant que les distances.
6.2.3.3 Méthode des hyperboles
La méthode des hyperboles utilise la différence entre les distances du nœud à positionner et
deux nœuds de référence [107j, [104]. A partir de cette mesure et de la distance entre les deux
nœuds de référence, on peut tracer une hyperbole où se situe le nœud à positionner ; les points
équidistants à deux nœuds (ou foyers) forment en effet une hyperbole. Ensuite, on réitère avec
deux autres nœuds de référence (seul un des nouveaux nœuds de référence doit être différent des
deux anciens nœuds de référence). On peut ainsi trouver Ia position du nœud recherché, lequel se
situe au point d'intersection des deux hyperboles (Figure 6-3). Il suffit donc que cet algorithme ait
trois nœuds de référence pour positionner un nœud.
I
Figure 6 3 : Méthode des hyperboles
En conclusion, pour la première méthode nous avons besoin de mesurer uniquement des
distances, pour la seconde une distance et des angles, et pour la dernière des différences de distance.
6.2.4 ~eChnolo~ies envisageables
Il existe plusieurs technologies envisageables pour positionner un nœud, ces technologies
ailant de l'onde sonore à l'onde radio. Nous étudierons donc les différentes performances
(avantages, inconvénients, précisions) pour chacune de ces technologies.
6.2.4.1 Ondes sonores
Les dernières expériences en terme de précision au niveau de la localisation à base de ce type
de technologie sont très intéressantes [lof$]. Il est en effet possible de positionner un objet dans une
pièce de 4m sur 4m avec un plafond de 2,5m avec une précision moyenne de 14 cm. Cependant, cette
technique utilise des ondes sonores qui ont l'inconvénient majeur d'être fortement perturbées par la
vapeur, la poussière, la température, etc. Elles ne sont donc pas les meilleures ondes à utiliser en
milieu (( hostile ».
De plus, dans le cadre de l'expérience citée, eile réclame une complexité en infrastructure assez
importante: le résultat expérimental donné précédemment est obtenu avec un réseau de 24
microphones espacés de 20 cm chacun sur une ligne droite.
6.2.4.2 Ondes ultrasonores
Dans le domaine des ultrasons, il existe déjà des systèmes de localisation commercialisés
comme le système Cricket [log] par exemple. Ce système se base sur un système de communication
radio sur lequel on a greffé un émetteur et un récepteur ultrasons qui permettent de localiser le
système (Figure 6-4). Il existe de nombreux systèmes à base d'ondes ultrasonores. Le système
Cricket est un système récent (2005) dont les caractéristiques sont intéressantes, la précision du
système Cricket est de l'ordre de 10 cm [110]. Dans certains cas favorables (les
émetteurs/récepteurs sont en face), la précision devient de l'ordre du centimètre [Ill] . Ces mesures
d'erreurs sont obtenues pour deux émetteurs/récepteurs espacés d'environ 4m.
Figure 6-4 : Systéme cricket
6.2.4.3 Ondes ultra Large bande
Cette technologie a commencé à émerger dans les années 1990 mais elle a connu un grand
succès lorsque la FCC (Federal Communication Commission) a autorisé l'utilisation des
communications UWB sans licence [112]. Ce domaine est un domaine prometteur [105]. En effet,
en raison de la grande largeur de bande, il est, en théorie, possible de positionner un objet avec une
précision de l'ordre du centimètre [104].
Pour avoir une bonne précision, il faut une largeur de bande importante. En effet, plus Ia
bande est large, plus la précision est meilleure. Cependant, avec de telles bandes de fréquence, la
synchronisation devient de plus en plus difficile. La synchronisation de l'horloge devient, par
conséquent, un facteur important dans l'estimation de la précision. De plus, d'autres phénomènes
interviennent pour diminuer la précision ; les principales sources d'erreurs sont dues à la
propagation par de multiples trajets, aux interférences induites par i'accès multiple et la propagation
sans ligne de vue directe.
C'est pourquoi, aujourd'hui, les meilleurs résultats dans le domaine de I'UWB font état de
plusieurs centimètres (=: 30 cm pour les meilleurs systèmes). Certains articles récents font état de
quelques centimètres (moins de 5 cm) mais dans des cas favorables [113]. D'autre part, il existe des
techniques récentes qui peuvent s'avérer prometteuses car elles font état de moins de 10 cm en
simulation.
Finalement, le domaine de I'UWB parait être un domaine prometteur, il reste cependant
beaucoup de problèmes à résoudre. Ces problèmes sont de deux ordres :
D'ordre matériel : la synchronisation entre les nœuds requiert une très grande précision
sur l'horloge.
D'ordre logiciel : comme cité précédemment, nous devons résoudre le problème de la
propagation (multi trajets et non ligne de vue directe).
6.3 Modèles utilisés dans DECHP
Dans cette section nous étudierons les modèles de réseaux de capteurs, de communication
radio et d'agrégation de données utilisés par la suite.
6.3.1 Modèle de réseaux de capteurs
Nous considérons un modèle de réseaux de capteurs sans Fi qui est semblable à celui utilisé
dans [71], P2]. Ce modèle se compose d'un grand nombre de nœuds capteurs, lesquds sont
déployés dans un champ d'application, et d'une station de base (SB) éloignée des noeuds, par
laquelle l'u~lisateur peut accéder aux données récoltées par les capteurs. Dans ce réseau, les tâches
d'acquisition des données sont déclenchées périodiquement ou selon des requêtes envoyées par la
station de base. De ce fait, nous considérons un cadre générique pour différentes applications des
réseaux de capteurs.
Nous supposons que les naeuds sont quasiment stationnaires et qu'ils sont équipés d'une
antenne omnidirectionnelle ayant un nombre fixe de niveaux de transmission ; c'est-à-dire que les
nœuds peuvent régler leur puissance de transmission radio. Nous supposons aussi que les nœuds
ont une réserve d'énergie limitée, mais la SB n'a aucune contrainte d'énergie. Il peut donc utiliser
une puissance élevée pour communiquer directement avec tous les nœuds. Cependant, les nœuds
ne peuvent pas toujours directement répondre à la SB à cause de la contrainte d'énergie, ayant donc
pour résultat une communication asymétrique entre les capteurs et la SB. Par ailleurs, nous
supposons qu'un capteur est capable de mesurer la distance entre lui et n'importe quel autre nœud
voisin en utilisant l'une des technologies vues précédemment.
Les deux principaux éléments considérés dans la conception de DECHP sont la station de
base et les nœuds capteurs. La SB contrôle le réseau de capteurs et rassemble les données détectées
par les nœuds qui sont déployés dans un champ hostile afin de permettre à I'ualrsateur d'y accéder.
Les nœuds sont géographiquement groupés dans des clusters équilibrés et sont capables de
fonctionner en deux types de noeuds : (i) nœud ordinaire, et Gai) nœud CH. Un nœud ordinaire
exécute la tâche d'acquisition des données, puis transmet les données récoltées au CH de son
cluster. Le nœud CH rassemble les données détectées par les membres de son propre duster,
exécute la procédure de fusion de données, puis transmet le résultat à la SB à travers d'autres CHs si
nécessaire. Les CHs utdisent une puissance de transmission plus élevée (i.e. une portée de
transmission très grande) pour la communication inter-clusters, alors qu'ils emploient une puissance
inférieure pour la communication intra-cluster.
6.3.2 Modèle de communication radio
Un nœud capteur utilise son énergie pour réaliser trois actions principales : l'acquisition, le
traitement des données et la communication.
Acquisition des données : l'énergie consommée pour effectuer l'acquisition des données
n'est pas très importante. Néanmoins, elle varie en fonction des domaines d'intérêt des
applications du RCSF.
Traitement des données : le traitement des données étant infiniment moins coûteux que
sa transmission, on privilégie systématiquement les traitements locaux plutôt que la
transmission de données brut. L'énergie nécessaire, par exemple, pour transmettre lkbit
sur une distance de lOOm est approximativement équivalente à l'énergie nécessaire pour
exécuter 3 mifiions d'instructions avec une vitesse de 100 mihions d'instructions par
seconde. Ce niveau peut être dépassé en fonction des circuits installés dans les capteurs et
des fonctionnalités requises. Par la suite, l'énergie consommée lors du traitement des
données sera calculée en appliquant la formule :
Communication : les opérations de transmission/réception des données consomment
beaucoup plus d'énergie que les autres tâches. La figure 6-5 présente un modèle d'antenne
et des règles de consommation d'énergie associées pl].
Transmit Tx Amplifier Electronics
Receiver Eiectronics
Figure 6-5 : Modèle d'antenne
Pour transmettre un message de k bits sur une distance de d mètm, l'émerreur consomme :
Pour recevoir un message de k bits, le récepteur consomme :
EdC est l'énergie de transmission/réception électroniques; k est la taille du message ; d est la distance
entre l'émetteur et le récepteur; do est la distance limite pour laquelle les facteurs de transmission
changent de valeur ; Ew est l'énergie d'amplification exigée pour maintenir un rapport signal/bruit
acceptable afin de transmettre des messages de données d'une manière sûre ; et eFs et ~ T R sont
respectivement les facteurs d'amplification correspondant aux modèles « free-space » et rt two ray ».
Le tableau 6-1 regroupe les valeurs des caractéristiques radio que nous allons utiliser dans les
simulations.
I Opération 1 Energie dissipée I
Emetteur/récepteur électroniques (Et/,)
I Facteur d'amphfication correspond au modèle
« free-space » (EFJ)
Son]/ bit
1 Op]/ bit/&
I Facteur d'amplification correspond au modèle
« two ray » (4
Tableau 6-1 : Caractéristique d'antenne
0.00 I3pJ bit/&
I
6.3.3 Modèle d'agrégation des données
Traitement de données (EDA)
Les données rassemblées par des capteurs voisins ont beaucoup de redondance ; ainsi, les
auteurs de LEACH [71] supposent l'agrégation parfaite des données; c'est-à-dire que tous les
différents signaux des membres d'un même cluster peuvent être combinés dans un signal
représentatif simple. Néanmoins, cette supposition ne peut pas tenir quand la taille du cluster
augmente. Par conséquent, nous développons un modèle exponentiel d'agrégarion de données
aspiré de la compression des données distribuées [114], [115].
5nJ/ bit/s&nai
Etant donné un domaine d'inrérêt d'une application du RCSE, la corrélation entre les données
rassemblées par deux capteurs, distant de r, est généralement une fonction décroissante de la
distance r. Après que la procédure d'agrégation de données a été effectuée sur les données
rassemblées par les deux capteurs afin d'enlever la redondance, on peut supposer que le résidu est
une fonction croissante de la distance r entre ces deux capteurs. La procédure d'agrégation des
données est modelée comme suite.
Supposons qu'un capteur collecte un paquet de données de t d e i bits, puis qu'il le transmette à ~
son CH distant de r, alors le CH dépensera 2&,¶ Jonfes pour exécuter l'agrégation de données sur
les 2/ bits de ces données (rassemblées par lui-même et son membre). Le résultat est un paquet de
données de taille 1{1 +q) bits, où q est le taux de résidu d'agrégation de données qui est supposé être
un exponentiel complémentaire, formellement,
A est un nombre positif dont la valeur dépend d'une application spécifique. Par exemple, les
données récoltées par des capteurs ayant pour rôle la surveillance du bruit ou de la température sont
redondantes, c'est ainsi que la valeur de A esr petire pour ce type d'applicanon. Puisque 7 est une
fonction croissante de r, g varie de O à 1 quand r varie de zéro à l'infini. Ce modele peut s'approcher
du modèle parfait d'agrégation de données en dÊcrémentant la valeur de II, ou s'approcher des
modèles ne supposant aucune agrégation de données en incrémentant la valeur de A. Par
conséquent, différents modèles d'agrégation de données peuvent facilement être adoptés en
changeant la valeur de A.
6.4 DECHP: Distributed Energy-efficient Clustering-based Hierarchy
Protocol
Dans cette section, nous proposons un nouveau protocole de routage hiérarchique dans les
RCSF, lequel est basé sur l'algorithme de clustering proposé dans le chapitre précédent. Ce
protocole de routage que nous dénotons DECHP permet d'optimiser efficacement la
consommation d'énergie des capteurs. DECHP opère en deux grandes phases: i) phase
d'installation, et ii) phase de communication.
6.4.1 Phase d'installation
La phase d'installation du protocole de routage hiérarchique DECHP se déroule en deux
étapes. Dans la première étape, DECHP exécute l'algorithme de clustering proposé dans le chapitre
précédent pour accomplir les tâches suivantes :
Division du RCSF en clusters locaux, disjoints et équilibrés.
Election d'un CH pour chaque cluster afin de représenter l'ensemble des nmuds du même
cluster par un seul nœud.
Création d'un modèle de communication intra-cluster sans coilision dans chaque cluster.
Dans la deuxième étape, DECHP utilise la distance entre les CHs ainsi que leur réserve d'énergie
pour former des chemins de routage CH-en-CH afin d'effectuer la communication inter-clusters.
Une fois que la première étape du protocole de routage DECHP est exécutée, le RCSF est divisé
en clusters locaux, disjoints et équilibrés qui sont chacun représentés par un CH. Les nœuds
ordinaires du même cluster communiquent avec leur CH à i'aide du modèle de communication sans
collision établie par ce dernier. Ainsi, DECHP réduit la complexité du routage en gérant localement
la communication intra-cluster par les CHs. En effet, il n'y a que les CHs qui ont besoin de
connaître les chemins de routage qui les relient avec la station de base.
Après que les CHs ont été identifiés, chacun d'entre eux choisit dynamiquement le CH
successeur, auquel il doit délivrer les paquets, parmi l'ensemble de CHs qui sont dans sa portée de
transmission (les CHs utilisent une puissance de transmission élevée pour effectuer la
communication inter-clusters). Les sont ainsi remis de CH en CH par sauts successifs,
jusqu'à ce qu'ils soient délivrés à la SB. Le successeur d'un CH est le CH voisin à ce dernier qui est
le plus proche de la SB et ayant assez d'énergie pour retransmettre les paquets. Ainsi, les CHs
acheminent progressivement les paquets vers la SB en essayant en même temps d'équilibrer la
consommation d'énergie à travers l'ensemble des CHs voisins. L'algorithme de routage DECHP
crée dynarniquement des chemins de CH-en-CH pour acheminer les paquets vers la SB en se basant
sur les deux paramètres suivants :
La distance : un CH ualise ce paramètre pour former le plus court chemin entre lui et la
SB, ce qui permet d'optimiser la consommation d'énergie lors de la communication inter-
clusters.
L'énergie : un CH prend en compte ce paramètre pour éviter l'épuisement rapide de la
réserve d'énergie des CHs formant le plus court chemin entre lui-même et la SB.
En effet, chaque tête de cluster ch; maintient un état du coût réel, dénoté R(cb;) SB), du chemin
qui le relie avec la SB et des états correspondant aux coûts réels des chemins reliant la SB avec les
CHs qui sont dans sa portée de transmission. Un CH échange avec les autres CHs voisins la valeur
de son coût réel après chaque changement d'une grandeur donnée de cette valeur. Dans le cas où
un CH ne connaît pas la valeur du coût réel R(ch/,)SB) d'un autre CH voisin chi> il l'estime par la
valeur du coût par défaut D,(ch,,BS), qui est définie par la formule suivante :
Où p est un poids, d 0 B S ) est la distance entre ch, et la SB et C,(ch,) est le niveau d'énergie actuelle
de la tête du cluster ch,. Le coût réel d'une tête de cluster ch; est donné par la formule suivante :
R, (ch,, SB) = ch, , chmin)+ R, (chmin, SB) (6-10)
Où chm;# est le CH voisin de ch; qui minimise la valeur de C(~b~~bmin)+R(~bmin,SB). Autrement dit, chmin
est le CH successeur de ch;. La composante C(~h;)ch,~i~) est le coût du chemin reliant les deux têtes de
clusters ch;, ch,,, qui peut être calculé en fonction de la réserve d'énergie des deux nœuds ch, et ch,,,;,,
ainsi que de la distance entre eux.
A ce stade, chaque tête de cluster ch, maintient un état correspondant au coût réel &(ch, SB) ou
au coût estimé par défaut D,(ch,,BS) de chaque tète de cluster ch, voisin, cet état sera dynamiquement
actualisé. En effet, à chaque fois que le coût réel d'une tête de cluster ch, augmente d'une grandeur
donnée, ce dernier diffuse un message contenant la nouvelle valeur de son coût réel avec la plus
grande puissance de transmission afin d' informer tous les CHs voisins de ce changement. Tous les
CHs recevant ce message et étant en avale de ch/ mettent à jour l'état correspondant au coût réel
&(ch, SB) de la tête du cluster ch,. Ainsi, chaque tête de cluster ch, sélectionne d'une façon
dynamique le CH voisin qui minimise le coût réel &(ch,) SB) comme successeur, auquel il va
transmertre les paquets par la suite. La figure 6-6, récapitule la procédure de routage CH-en-CH.
Le coût réel R (ch,) SB) d'une tête de cluster ch; est une combinaison de la longueur du chemin
quj le relie avec la station de base et de l'inverse de la réserve d'énergie des CHs formant ce chemin.
Le fait de choisir la tête du cluster qui minimise la valeur du coût R(cb;, SB) comme successeur de chi
lui permet de transmettre progressivement les paquets vers la SB et, en même temps, d'équilibrer la
consommation d'énergie des CHs voisins. Par conséquent, DECHP augmente la durée de vie du
réseau entier en distribuant la dissipation d'énergie, lors de la communication inter-clusters, sur
Yensemble de CHs élus.
Soient :
- r : l'ensemble des CHs élus.
- ch,) = bh, E r/ d(ch, ,ch,) < Lxmnge (ch,)} : i'ensemble des CHs qui sont dans la
portée de transmission de chi.
- ch, ) = (ch, E ch,)/ d(ch,, SB) 2 d(ch, ,SB) : est l'ensemble des CHs voisins
de ck, et qui sont plus proches de la SB que lui ; c'est-à-dire les CHs qui sont en amont
de ch,.
- Tab, : la table de routage du c6, qui maintient une entrée pour chaque ch, t ch,) et
une entrée pour lui méme.
- Tnb, [ch, 1 : l'entrée correspondant à l'état de ch, t ch,). S(chJ : le CH successeur de chi.
- A : un seuil qui indique que si le coût réel d'un CH a été augmenté de A, alors il faut
informer les CHs voisins de ce changement pour qu'ils puissent actualiser leurs tables
de routage.
A. Initialisation :
Vch, E T faire :
D, (ch,, BS) c p * d(ch, , BS)+ (1 - P)* YCe (ch, )//Calculer le coût par défaut de ch
Tab, [ch,] t D, (ch,, SB) //Créer une entrée dans Tabj pour ch;.
V C ~ , E ch, ) faire : Ta4 [ch,] + Dc (ch,, SB) //créer une entrée dans Tabi pour
ch,.
' ~ ( 4 ) +- ch,:, , // Sélectionner le successeur de ch;.
où ch,, chmin )+ D, (chmin, SB) = min F(chi, ch, )+ Dc (chj , SB)} ch, &(ch, )
R, (ch,, SB) t c(&, ch, )) + D, @(ch, ),SB) //Calculer le coût réel de ch;.
B. Exécution de la procédure récursif:
'dch, E r faire :
Successeur (chi)
Début
si I~ab, [ch,] - R, (ch,, SB] a A , continusr la communication inter-clusters.
Sinon, faire alors :
Tab, Eh, ] t R, (ch,, SB) /Mettre à jour l'état correspondant à la valeur du coiit réel de ch,.
1 V C ~ , Y ( c ~ ~ Q ( c ~ , ) faire : //l:ensembk de Cil en amie de cd
Tab, [chl ] + R , ( c ~ , ,SB) /*Mettre à jour l'état correspondant à la valeur du
coût réel de chi dans la table de routage de chj.*/ l . ch,) t chmin, / / Sélectionner le successeur de ch,. I
.Successeur (chi). //Exécuter la procédure récursive pour ch,.
Fin
Figure 6-6 : Algorithme de routage CH-en-CH
G.4.2 Phase de communication des donnees
La phase de communication des données se compose de trois activités principales :
( z Acquisition des données.
(iil Fusion des données.
piil Acheminement des données.
Les nœuds capteurs de même cluster détectent, d'une façon périodique ou selon des requêtes
envoyées par la SB, les données concernant le domaine d'intérêt de l'application du RCSF, puis ils
les transmettent à leur CH en utiiisant le modèle de communication intra-cluster décrit dans le
chapitre précédent. Puisque les noeuds sont géographiquement groupés dans des clusters (i.e. la
distance entre un nœud et son CH est petite), alors la consommation d'énergie des capteurs n'est
pas très importante lors de la communication intra-cluster. Après chaque intervalle de temps
déterminé par l'application, le CH exécute la procédure de fusion des données sur les informations
rassemblées par les nœuds de son propre cluster en appliquant le modèle d'agrégation des données
présenté ci-dessus. Ainsi, la quantité de données brutes qui doit être envoyée à la SB est réduite, cela
permet d'optimiser la consommation d'énergie. En effet, l'énergie nécessaire pour effectuer le
traitement local des données est négligeable devant celle exigée pour transmettre la totalité des
données, qui sont généralement redondantes, à la SB. Enfin, les données agrégées ainsi que les
informations nécessaires exigées par la SB pour identifier et décoder correctement ces données sont ~
dors conduites de nouveau à la SB par le biais du chemin de routage CH-en-CH créé entre le CH et
la SB.
Une autre question dé qui se pose ici est le problème d'interférence radio causé par les
communications intra-cluster de nœuds appartenant à des clusters voisins. En effet, des nœuds
voisins peuvent être mis dans des clusters différents et puisque ces nœuds ne sont pas ordonnancés
par le même CH, ils peuvent donc transmettre des données en même temps, ce qui peut causer des
interférences radio. DECHP utilise la technique CDMA (Code Division Multiple Access) qui est
basée sur la répartition de codes pour éviter ce problème. En effet, tous les capteurs de même
cluster emploient un code de propagation qui leur a été alloué au début de la phase de
communication de données par leur CH afin de différencier leurs transmissions intra-cluster de
celles des nœuds appartenant à d'autres clusters voisins. Dans ce cas, chaque CH choisit,
aléatoirement, un code de propagation à partir d'une liste de codes orthogonaux, puis il l'envoie aux
membres de son cluster et à la SB. Pour décoder les données envoyées par un CH, la SB n'a plus
qu'à multiplier le signal reçu par le code associé à ce dernier.
6.5 Evaluation des performances
Afin d'évaluer les performances de DECHP, nous utilisons des simulations basées sur une
version améliorée de NS2 qui permet de simuler le comportement des réseaux de capteurs sans fil.
Par le biais de cette implémentation, nous comparons DECHP avec d'autres algorithmes de routage
hiérarchique basés sur le clustering, tels que LEACH, LEACH-C et PEGASIS. Les performances
sont mesurées par les trois métriques suivantes : (iJ le nombre de n ~ u d s survivants, (ii) la quantité
de données délivrée à la SB et pi4 la dissipation moyenne d'énergie des capteurs.
6.5.1 Modèle de simulations
Pour les simulations, nous avons créé plusieurs configurations aléatoires du RCSF, lequel est
composé de 500 ncieuds qui sont dotés d'une réserve d'énergie initialisée à 2 Jotl&.s. La taille d'un
paquet de données est fixée à 500 bits, dans lesquels il y'a 25 bits qui représentent la longueur de
Yen-tête du paquet. Par ailleurs, nous adoptons le modèle de consommation d'énergie utilisé dans
LEACH avec les mêmes paramètres (tableau 6-1). Nous utilisons aussi un modèle parfait de
corrélation de données comme dans pl] et r/2] en fixant à zéro la valeur de poids k (équation 6-8).
Suite à plusieurs simulations, nous fixons la valeur du seuil de la raille des dusters ,y à 25 car
cette valeur a donné de meilleurs clustering pour un réseau composé de N=500 nœuds. Etant
donné l'importance d'avoir des clusters de taille proche de la valeur du seuil X, le poids u associé à
ce paramètre (équation 5-3) a été choisi avec une valeur élevée. En revanche, les autres poids
correspondant à la distance et à la puissance de batterie ont été ualisés avec des valeurs moins
importantes. Les valeurs des poids utilisées dans les simulations sont azO.5, /3=0.25 et y=0.25.
Notons que ces valeurs sont arbitraires et devraient être ajustées selon les conditions du système.
6.5.2 Résultats de simulations
Dans un premier temps, nous avons aléatoirement déployé 500 nauds capteurs dans une grde
de lOOm*YOOm avec la SB localisée à au moins 75m loin du nmud Le plus proche. Ensuite, nous '
avons effectué plusieurs simulations des algorithmes de routage hiérarchique basés sur le clustering :
LEACH, LEACH-C, PEGASIS et DECHP.
Figure 6-7 : Dissipation moyenne d'énergie en fonction de p
Dans le but d'estimer la valeur du poids p de l'équation (6-9)' nous avons effectué des
simulations de DECHP en étudiant l'impact de la valeur de p sur la dissipation moyenne d'énergie
des noeuds. Les résultats de la figure 6-7 montrent que les ncruds consomment moins d'énergie
lorsque la valeur de p appartient à l'intervalle [0.4,0.7j. Cela est dû au fait qu'avec une petite valeur
de p, la métrique principale qui détermine le successeur d'un CH est la réserve d'energie. Par
conséquent, les paquets vont parcourir un long chemin avant d'arriver à la SB, ce qui mène à une
grande consommation d'énergie. D'autre part, les CHs ne prennent pas en compte le niveau
d'énergie disponible des nœuds pour choisir leurs successeurs lorsque la valeur de p tend vers 1.
Dans ce cas, les paquets vont suivre le plus court chemin en terme de distance pour atteindre la SB.
La réserve d'énergie des CHs formant le plus court chemin est donc rapidement épuisée, ce qui
cause un déséquilibrage de la dissipation d'énergie de l'ensemble des CHs et implique une grande
surconsommation d'énergie du réseau entier. Pour le reste des simulations, nous fixons la valeur de
p à 0.5.
mme (9)
Figure 6-8 : DurCe de vie du systéme
La figure 6-8 illustre le nombre de nœuds survivants au cours du temps pour les quatre
algorithmes de routage : LEACH, LEACH-C, PEGASIS et DECHP. Les résultats de cette figure
montrent clairement que DECHP a de meilleures performances que les autres algorithmes. Cela
vient du fait que dans LEACH et LEACH-C, tous les CHs transmettent directement des paquets de
données à la SB qui est assez éloignée. Les CHs qui sont loin de la SB vont donc rapidement
épuiser leurs réserves d'énergie, ce qui implique de fréquentes réélections de CHs suivies de
reconfigurations des cluscers. Cela a pour conséquence une grande surconsommation d'énergie du
réseau entier. PEGASIS allége ce probléme en ayant un seul nœud qui envoie les paquets à la SB.
Néanmoins, l'algorithme de routage CH-en-CH u ~ h s é dans DECHP lui permet de surpasser la
durée de vie du système de PEGASIS. En effet, l'algorithme vorace (greedy) utilisé par PEGASIS
implique une augmentation progressive de la longueur des chemins parcourus par les paquets avant
d'arriver à la SB, ce qui cause une grande consommation d'énergie du système entier.
Figure 6-9 : Dissipation moyenne d'énetgie du système
L'amélioration apportée par DECHP est encore confirmée par les résultats de la figure 6-9.
Cette figure présente la dissipation moyenne d'éner,gie de l'ensemble des nœuds pour les quatre
algorithmes au cours du temps. Nous voyons clairement que DECHP optimise beaucoup plus la
dépense d'énergie que LEACH, LEACH-C et PEGASIS. En outre, on s'attend à ce que cette
amélioration soit plus significative pour des réseaux de grandes dimensions, cela est dû aux raisons
citées ci-dessus.
Avmne energy drsayralrsn (4
Figure 6-10 : Quantité de données reçues par la SB
Maintenant, nous analysons la quantité des données reçues par la SB pour les quatre
protocoles étudiés. Dans cette optique, nous avons encore simulé plusieurs fois différentes
topologies de réseau où chaque nœud commence la communication avec un niveau d'énergie
initialisé à 2 Jotlles. La figure 6-10 montre le nombre de paquets de données reçus par la SB en
fonction de la dissipation moyenne d'énergie du système. Les résultats exposés dans cette figure
illustrent l'efficacité de DECHP en livrant un nombre plus élevé de messages de données que ses
contreparties. A partir de ces résultats nous pouvons déduire que DECHP optimise efficacement la
consommation d'énergie du système due à la communication.
Dans un deuxième temps, nous évaluons les performances des quatre algorithmes en variant la
superficie du réseau. Pour ces simulations, nous avons déployé aléatoirement 500 nœuds dans une
grille de taille variable, puis nous avons placé la SB à au moins lOOm plus loin du nœud le plus
proche. Les résultats ont été obtenus en simulant différentes topologies de réseau pour chaque taille
de N e .
Figure 6-11 : Impact de la superficie du réseau sur la dissipation d'énergie
La figure 6-11 représente la dissipation moyenne d'énergie du système en fonction de la
superficie du réseau pour les quatre algorithmes. Les résultats de cette figure montre que DECHP a
de meilleures performances que les deux versions de LEACH ainsi que PEGASIS. Effectivement,
le choix aléatoire des CHs dans LEACH peut mener vers une distribution irrégulière des nœuds
élus, ce qui cause une grande dissipation d'énergie. En effet, dans le cas où les CHs sont voisins ou
situés à la frontière du réseau, les nœuds éloignés des CHs nécessitent des puissances d'émission
très élevées pour effectuer la communication intra-cluster. DECHP résout ce problème en
effectuant une distribution uniforme des CHs dans le réseau. De plus, il distribue équitablement les
nœuds dans des clusters, tandis que dans les deux versions de LEACH, certains clusters peuvent
être surchargés et d'autres contiennent peu de nœuds. Nous remarquons aussi que les performances
de PEGASIS dégradent lorsque la superficie du réseau devient vaste. C'est parce que la longueur de
la chaîne formée par i'algorithme vorace (greedy) dans PEGASIS augmente avec l'augmentation de
la superficie du réseau. Par conséquent, les paquets empruntent de très longs chemins, ce qui cause
une grande dissipation d'énergie.
Nehork area (square km)
Figure 6-12 : Nombre de nœuds survivants en fonction de la superficie du réseau
Les résultats de la figure 6-12 illustrent encore l'efficacité du DECHP pour des applications
des réseaux de capteurs couvrant un secteur très large. Comme démontré sur cette figure, environ
70% des nczuds restent vivants pour un réseau d'une superficie égale à l W en utilisant DECHP,
alors que les autres protocoles souffrent d'un très grand nombre de perte de nœuds. A partir de ces
analyses, il est clair que DECHP offre un gain très significatif de performance pour de vastes
réseaux, mais ce gain diminue lorsque la superficie du réseau rétrécit.
6.6 Conclusion
Dans ce chapitre, nous avons proposé un nouveau protocole de routage hiérarchique basé sur
le clustering, dénoté DECHP. Ce protocole utilise, dans un premier temps, l'algorithme de
clustering proposé dans le chapitre précédent pour diviser le RCSF en clusters locaux, disjoints et
équilibrés, puis élire un CH pour chaque cluster, ensuite créer un modèle de communication intra-
cluster sans coilision dans chaque cluster. Dans un deuxième temps, DECHP forme des chemins
de routage CH-en-CH afin d'effectuer la communication inter-clusters en se basant sur la distance
entre les CHs ainsi que sur leurs réserves d'énergie. Les performances de DECHP ont été évaluées
par des simulations en le comparant avec LEACH, LEACH-C et PEGASIS. Les résultats des
simulations ont montré que DECHP surpasse ces comparatifs en divisant le réseau de capteurs en
clusters locaux, disjoints et équilibrés, en distribuant uniformément les CHs dans le secteur du
réseau, et en utilisant l'algorithme de routage CH-en-CH pour effectuer la communication inter-
clusters. Nous constatons également que le gain des performances de DECHP par rapport à ses
contreparties augmente avec l'augmentation de la superficie du réseau, mais ce gain diminue pour
des réseaux de petites superficies.
Chapitre 7
7 Conclusion et Perspectives
Ce chapitre clôt cette thèse en résumant nos contributions tour en donnant un jugement
critique sur le travail effectué ainsi que quelques directives concernant nos futurs travaux.
7.1 Résumé des rksultats obtenus
Nos contributions dans cette thèse portent sur le routage hiérarchique basé sur le clustenng
ainsi que son application dans différents environnements pour offrir de meilleures qualités de
service aux applications multimédia et aux applications des RCSF. Sachant que les besoins en QoS
de ces deux types d'applications sont différents, nos contributions ont été portées sur deux grands
axes :
Une architecture hiérarchique basée sur le clustering pour un routage multicast
fiable et robuste des flux multimédia dans Internet, dénotée AHM : cette contribution
permet de garantir la QoS aux applications multimédia sur Internet (vidéoconférence par
exemple) qui mettent en jeu un grand nombre d'utilisateurs. L'architecture AHM s'appuie sur
(i) la technique du clustering pour réduire la complexité du routage, ce qui permet de
résoudre le problème de scalabilité ; et (ii) la technique du muiticast pour optimiser le taux
d'occupauon de la bande passante. En effet, AHM divise, dans un premier temps, le groupe
multicast (ensemble de paficipants à une même application mdtimédia) en k-clusters
disjoints et équilibrés en étant chacun représenté par un seul nœud CH tout en minimisant le
délai de communication intra-cluster. Dans un deuxième temps, AHM interconnecte les CHs
des k-clusters construits par le biais d'un arbre partagé qui permet de considérablement
optimiser le taux d'occupation de la bande passante et de minimiser la moyenne de la
variation du délai multicast. De plus, AHM évite le problème de congestion en utilisant
plusieurs points de rendez-vous choisis d'une façon dynamique et sélective. Par ailleurs,
AHM fournit une gestion dynamique des utilisateurs et est efficace pour prendre en compte
les pannes. A partir des simulations effectuées, nous avons constaté que AHM affiche de
meilleurs résultats que DDVCA en terme de charge du réseau, de taux de perte de paquets et
de variation du délai multicast. De plus, AHM maintient une complexité inférieure à celle de
DDVCA.
Un protocole de routage hiérarchique basé sur le clustering optimisant la
consommation d'énergie dans les RCSF, dénoté DECHP. Cette conmbution permet de
prolonger la durée de vie du RCSF de grande envergure en optimisant la consommation
d'énergie des capteurs lors de la communication. Le protocole DECHP englobe deux
phases : fi] phase de clustering ; puis rii) phase de formation de chemins de routage entre les
CHs (CH-en-CH). Dans la première phase, DECHP divise le RCSF en k-clusters locaux,
disjoints et équilibrés en combinant d'une façon efficace différents paramètres : la proximité
des nœuds, ia taille du cluster, la puissance de transmission et le niveau d'énergie des nœuds.
Ensuite, il représente l'ensemble des nœuds de chaque cluster par un seul nœud CH qui peut
être élu de plusieurs manières. Enfin, il crée dans chaque duster un modèle de
communication intra-cluster sans collision. Ainsi, DECHP réduit la complexité de routage en
gérant localement les communications intra-cluster par le biais des CHs élus, ce qui permet
de résoudre le problème de passage à l'échelle. Dans la deuxième étape, DECHP s'appuie sur
la distance entre les CHs ainsi que sur leurs réserves d'énergie pour former des chemins de
routage CH-en-CH afin d'effectuer la communication inter-clusters. DECHP permet
d'optimiser la consommation d'énergie des capteurs en fi) équilibrant la t d e des clusters, (ii)
groupant les nœuds adjacents dans le même cluster, (iig évitant la réélection périodique des
CHs, (iv) plaçant uniformément les CHs à travers le RCSF, et (vJ distribuant la dissipation
d'énergie sur l'ensemble des nœuds capteurs. Les performances du DECHP ont été évaluées
par des simulations en le comparant avec LEACH, LEACH-C et PEGASIS. Les résdtats de
simulation obtenus ont montré que DECHP a de meilleures performances que ces
comparatifs.
7.2 Limites et perspectives
Nous sommes conscients que notre étude est loin d'avoir cerné les différents aspects et
comporte inévitablement des limites.
Première partie : la toute première critique concerne la construction de l'arbre partagé
entre les CHs. Notons que cette construction nécessite un échange volumineux
d'informations entre les CHs. Il s'agirait donc d'affiner l'étude sur les informations de
contrôle qui doivent être échangées et ce en exploitant par exemple i'existence d'une
certaine redondance. Sachant qu'à l'issue de cette étape des domaines autonomes seront
constitués. Chaque domaine est formé d'un ensemble de CHs dont l'un d'eux sera désigné
comme point de rendez-vous. Notre algorithme ne tolère pas la défaillance d'un tel point
de rendez-vous et de ce fait ne prévoit pas de point de rendez-vous secondaire. U s'agit là
d'un problème récursif (vu que le point de rendez-vous secondaire peut lui-même être .
potentiellement défaillant) qui mérite d'être étudié en vue de rendre l'algorithme tolérant
aux pannes.
Deuxième partie: vu que l'objectif de notre étude concernait l'optimisation de la
consommation d'énergie, nous pouvons affirmer que (i) lors de la construction des clusters,
une énergie non négligeable est donc dépensée. En effet, pour construire les différents
clusters, les nœuds doivent échanger entre eux des informations de contrôle @lus
précisément les poids des classes d'équivalences). (iiJ De plus la construction dynamique de
chemins de routage entre les différents CHs nécessite, elie aussi, une énergie
supplémentaire. Il nous semble important que l'on tienne compte de la consommation
d'énergie dans les deux cas précités.
Comme perspectives pour nos futurs travaux, nous pensons orienter nos recherches vers les
directions suivantes :
Implémenter l'architecture AHM sur Internet : sachant que les résultats de l'architecture
AHM sont obtenus seulement par des simulations, il serait intéressant d'implémenter cette
architecture dans un environnement réel. Dans ce sens, nous envisageons aussi d'intégrer un
mécanisme de différentiation de service sur l'architecrure AHM afin de satisfaire les
exigences en QoS des différentes applications multimédia en temps réel.
Qualité de service temps réel dans les réseaux de capteurs sans fil: les premières
applications, reposant sur un RCSF, avaient pour fonctionnalité la collecte d'informations
sans exigence en terme de contrainte de temps. Néanmoins, l'aspect temps réel devient
actuellement de plus en plus important avec l'avènement de nouveaux types d'applications
temps réel. En fait, le rôle des capteurs est d'effectuer des mesures sur l'environnement
physique, de les traiter et de les envoyer à une station de base qui peut interpréter l'ensemble
des informations reçues et agir sur l'environnement de manière cohérente avec son état. La
situation dans laquelle une mesure ne parviendrait pas à la station de base dans un délai
raisonnable peut avoir une conséquence critique sur la qualité de l'application. Ainsi, garantir
la QoS temps réel est actuellement un important challenge. Dans ce contexte, nous
envisageons d'améliorer le protocole de routage DECHP pour qu'il puisse supporter la
transmission de données critiques en temps réel. Ceci serait possible grâce à l'intégration
d'un mécanisme d'ordonnancement avec différentiation de service au niveau des CHs. En
effet, un même réseau de capteurs peut supporter des applications de différents niveaux de
criticité en fonction des types de traitements supportés par ce réseau. Les données transmises
par les nœuds ont donc différentes importances. Le problème est, alors, de partager de
manière optimale les ressources communes et de pouvoir, pour ceci, différencier les types de
données échangées.
Skcurité dans les réseaux de capteurs sans fil : les RCSF connaissent actuellement une
grande extension et une large utilisation dans différents types d'applications, dont ceux qui
exigent une grande sécurité. En revanche, les caractéristiques des RCSF constituent un
véritable challenge pour assurer leur sécurité. Les spécificités de ces réseaux sont
principalement : fl la transmission radio en milieu ouvert ; (ig les topologies dynamiques ;
(iig l'absence d'autorité centrale ; (iv) la nécessité de bonne coopération des nœuds ; et (y) les - capacités restreintes des nœuds. Ces contraintes concourent à rendre la sécurité des RCSF
difficile et complexe à appréhender, et font égaiement que l'application des mesures
classiques de sécurité est restreinte. Dans cette optique, nous envisageons d'étudier cette
problématique, et donc de proposer des solutions maximisant les performances de sécurité
tout en minimisant la consommation d'énergie des capteurs.
PUBLICAT~ONS ISSUES DE CETTE THESE
Articles parus dans les actes de conférences internationales avec comité de lecture en Anglais :
p] Omar Moussaoui, Aden Ksentini, Mohamed Naïmi, and Mourad Gueroui, "Clustering- based Hierarchy Protocol for Wireless Sensor Networks," Submitted to the IEEE Interna~onal Confere~Ce on Communications (ICCf07), Glasgow-Scotland, U K , June 2007.
[2] Omar Moussaoui, Adlen Ksentini, Mohamed Naïmi, and Mourad Gueroui, "A Novel Clustering Algorithm for Efficient Energy Saving in Wireless Sensor Networks," in the 7th IEEE Internationa/Symposis/m on Computer N e h o r h (ISCN'ogl, Istanbul, Turkey, June 2006.
[3] Omar Moussaoui, and Mohamed Naïmi, "A Distnbuted Energy Aware Routing Protocol for Wireiess Sensor Networks," in the 2ndACM Pefomance Evaluation of Wireless A d Hoc, Sensor, and Ubiquitous Networks (PB- WASUN'Ofl, Montreal, Canada, October 2005.
{4] Omar Moussaoui, Adlen Ksentini, Mohamed Naimi, and Mourad Gueroui, "Multicast Tree Construction with QoS Guaranties," in the 8" IEEE/IFIP Internationai Conference on Management Mw1timedia Networks and Services (MMNS'ffg, Barcelona, Spain, October 2005.
[5] Abderrahirn Benslimane, and Omar Moussaoui, "A Scalable Multicast Protocol with QoS guaranties," in IEEEIIFIP International Conference on Nefivork Contml and En~neenngforQoS, Senirio and Mobihg (Net-Con2003/, a w e r Academic Pubhiber, pp. 1-13, Muscat, Oman, October 2003.
Articles parus dans les actes de conférences internationales avec comité de lectures en français :
[6] Omar Moussaoui, Adlen Ksentini, Mohamed Naïmi, and Mourad Gueroui, "Formation de Grappes Minimisant I'Energie dans les Réseaux de Capteurs," datls le Colloguefrancophone Gestion de Réseaux et de Semkes (GRES'Oq), Bordeaux, France, Mai 2006.
m Omar Moussaoui, Mohamed Naïmi, and Mourad Gueroui, "Architecture Hiérarchique du Groupe Muiticast garantissant la QoS," dans le Colloque francophone Gestion de Réseaux et de Senices (GRES'Oq, Luchon, France, Mars 2005.
Contributions à des chapitres de livres:
[8] Abderrahim Benslimane, Omar Maussaoui, and Rachid El-Azouzi, "Protocoles de Multicast hiérarchique avec Qualité de Service," dans le /ivm : Multicmt Multimédia sur Internet, Hemes Sciences Pubhher, pp. 71 -1 10, Mars 2005.
[9] Abderrahim Benslunane, and Omar Moussaoui, "A Hierarchicai Architecture for a scaiable Multicast," in Lcture Notes in Computer Science (LNCS}, Conputer and Infornation Science - ISCIS'îOO3, Spnnger Pubhber, vol. 2869, pp. 643-650, November 2003.
[IO] J-J. Pansiot, "Le Routage Multicast dans Internet," dans le k m : MulticastMul~~mddia s w Internet, fiermes Sciences Pubksher, pp. 21-70, Mars 2005.
[11]S. Deering, "Mdticast Routing in Datagram Internet work," PhD theJis, Stanford University, 1991.
[12] M. Handley, C. Perkins, and E. Whelan, "Session Announcement Protocol," RFC 2974, qerimental, 2000.
[13] Z. Albanna, et al., TANA Guidelines for IPv4 Multicast Address Assignrnents," W C 31 71, BCP51,2001.
[14] D- Meyer, "Adrninistrati~el~ Scoped IP Multicast," RFC 2365,1998.
[15] D. Meyer, and P. Lothberg, "GLOP Addressing in 233/8," RFC3180, BCPOO53,2001.
[16] P. Radoslavov, et al., "The Multicast Address-Set Claim (MASC) Protocol," W C 2909, eqerjmental, 2000.
117 M. Handley, and S. Hanna, "Multicast Address Allocation Protocol (AM)," drafb-@al/oc- aup-05. fxf, 2001.
[18] S. Hanna, B. Patel, and M. Shah, "Mdticast Address Dynamic Client AUocation Protocol (MADCAP)", RFC 2730, proposed standard, 1999.
[19] T. Bates, Y. Rekhter, and D. Katz, "Multiprotocol Extensions for BGP-4," RFC 2858, pmposed standard, 2000.
[20] T. Przygienda, and N. Sheth, "M-ISIS: Mdti Topology (MT) Routing in 1s-IS," drajf-ieg Uis-wg-multi-fq?10logy-O7.&f, 2004.
[21j W. Fenner, "Internet Group Management Protocol, Version 2," RFC 2236, pmposed standapd, 1997.
[22] Y. Dalal, and R. Metcalf, "Reverse Path Forwarding of Broadcast Packets," Commzinicariuns afthe A C M , vol. 21, n012, pp. 1040-1048, 1978.
[23j S. Deering, and D. Cheriton, "Multicast Routing in Datagram Internet works and Extended LANs," A C M Transactions on Coqûuter Syfems, vol. 8, n02, 1990.
[24]D. Waitzman, S. Deering, and C. Partridge, "Distance-Vector Muiticast Routing Protocol," RFC 1075, e$erimental, 1988.
[251S. Deering, et al., "An Architecture for Wide-Area Multkast Routing," in pmceedings oj AC44 SIGCOMM 94, London, pp. 126-135,1994.
[263 A. Adams, J. Nicholas, and W. Siadak, "Prorocol Independent Mulùcast - Dense Mode (PIM-DM): Protocol Speci fication (Revised)," draft-iefî-pim-dm-new-~245,2004.
[273 J. Moy, "Multicast Extensions to OSPF," RFC 1584, pmposed standard, 1994.
[28j J . Moy, "OSPF Version 2," RFC 2328, pmposed standard, 1998.
[29] A. Baiiardie, P. Francis, and J. Crowcroft, "Core Based Trees (CBTj: An Architecture for Scalabie Inter-domain Mdticast Routing," in praceedings rf JIGCOMM 93, San Francisco, pp. 85-95, 1993.
[30] D. Estrin, et al., "Protocol Independent Multicast-Sparse Mode (PIM-SM): Protocol Specification," RFC 2362, eqerimenfal, 1998.
[31]A. Bailarde, "Core Based Trees (CBT version 2) Mdticast Routing," RFC 2189, eqerimental, 1997.
[32] M . Handley, et al., "Bi-Directional Protocol Independent Multicast (BIDIR-PIM)," dm$- ie fî-pim- bidir-06. txt, 2004.
[33] Y. Rekhter, and T. Li, "A Border Gateway Protoc014 (BGP-4)," RFC 1771, drafd standard, 1995.
[34] S. Kumary, et al., "The MASC/BGMP Architecture for Inter-Domain Mdticast Routing," inpmceedings $AGW SIGCOMM 98, pp. 93-1 04, Vancouver, 1998.
[35]D. Thaler, "Interoperability Rules for Multicast Routing Protocols," WC 2715, infornational, 1999.
[36] D. Thaler, M. Handley, and D. Estrin, "Border Gateway Multicast Protocol (BGMP): Protocol Specification," RFC3913,2004.
[373 B. Fenner, and D. Meyer, "Multicast Source Discovery Protocol (MSDP)," RFC 3618, eqerimental, 22003.
[38] M. McBride, J. Mcylor, and D. Meyer, "Multicast Source Discovery Protocol Deployment Scenarios, Best Currenr Pxacticc," drafte~mboned-ms&-d~hj46.txt, 2004.
[39] H. Holbrook, and D. Cheriton, "IP Muiticast Channels: EXPFESS Support for Large- Scale Single-Source Appiicarions," in pmceeding of ACM SIGCOM 99, Cambridge, Massachusetts, 1999.
[40] H. Schulzrime, et d., "RTP: A Transport Protocol for Real-Time Applications," RFC 3550, standard, 2003.
[41] B. Cain, et al., "Internet Group Management Protocol, Version 3," WC 3376, pmposed standard, 2002.
1421 B. Fenner, et al., "Protocol Independent Multicast - Sparse Mode TIM-SM): Protocol Speci fication (Revised) ," draff-ietJ-pim-sm-v2-new- 1 O. txt, 2004.
1431 F. Beck, M. Hoerdt, and J-J. Pansiot, "Source Discovery Protocol in SSM Networks," dr~t-beck-mboned-s~m-source-115;~covey~mt0c0l-O3.hct, juin 2003.
[44] M. Hoerdt, F. Beck, D. Magoni, and J-J. Pansiot, "Source Discovery Protocol for ASM Applications in SSM Networks," inproceedings aftbe 3d International Conjmnce on Networking, Pointe-à-Pitre, 2004.
[45] R. Lehtonen, "Dynamic Muiti-Source Discovery for SSM using MSDP," draflehtonen- mboned-multissm-01 .&t, 2004.
1461 J. Chesterfield, E. Schooler, and J. Ott, "RTCP Extensions for Single-Source Multicast Sessions with Unicast Feedback," drafteieylavt-~pssm-07.txt, 2004.
[4;7 K Almeroth, S. Bhattacharrya, and C. Diot, "Challenges of Integrating ASM and SSM IP Multicast Protocol Architecrures," 3" Qwbenian International Worksbqb on D@ai Communication, Springeer Veriag, LNCS 2170, Taormina, Italy, 2001.
[48] G. Cizault, "Ipv6, théorie et pratique," O1Rei@,3c édition, Paris, 2002.
[49] B. Hinden, and S. Deering, "Il? Version 6 Addressing Architecture," RFC 3573, proposed standard, 2003.
[50] B. Haberman, and D. Thaler, "Unicast-Prefix-Based IPv6 Multicast Addresses," RFC 3306, pmposed standard, 2002.
1511 S. Deering, B. Fenner, and B. Haberman, "Muiticast Listener Discovery (MLD) for IPv6," RFC 271 0, pmposed standard, 1 999.
[52] R. Vida, and L. Costa, "Multicast Listener Discovery version 2 (MLDv2) for IPv6," RFC 3810,2004.
[53] P. Savola, and B. Haberman, "Embedding the Rendez-vous Point (RP) Address in an IPv6 Multicast Address," RFC 3956,2004.
[54] L. Costa, S. Fdida, and 0. Duatte, "Hop by Hop Multicast Routing Protocol," tnproceedings ofAGi.4 SIGCOMM, 2002.
[55]M. Faloutsos, A. Banerjea, and R. Pankaj, "QoSMIC: Quality of Service Sensitive Multicast Internet Protocol," in pmceedings uJACM SIGCOhdM, pp. 144-153, Vancouver, 1998.
[56]L. Sahasrabudhe, and B. Mukherjee, "Multicast Routing Algorithms and Protocols: a Tutoriai," IEEE Neh~ork, pp. 90-100, JanuarylFebruary 2000.
[571 A. Striegel, and G. Manimaran, "Survey of QoS Multicasting Issues," IEEE Communications Magaene, pp. 82-87, June 2002.
[58] P. Sheu, and S. Chen, "A Fast and Efficient Heuristic Algorithm for the Delay and Delay variation bound Multicast Tree Problem," inproceedings ofICOIN-15, pp. 61 1-618, January 2001.
[59]G. Rouskas, and 1. Baldine, "Multicast Routing with End-to-End Delay and Delay Variation Constraints," IEEEJSAC, pp. 346-356, Apnl 1997.
[60] P. Winter, "Steiner Problem in Networks: A Survey," Neh~orh, vol. 17, pp. 67-129,1987.
[6l]E. W. Dijkstra, "A Note on Two Problems in Comection with Graphs," Nmeric Mathematic, vol. 1, pp. 269-27 1,1959.
[62] Network Sirndator 2, ns-2, http://www.isi.edu/mnarn,
[63] TinyOS, htp://fr.wikipedia.om/wiki/Tin>OS
[64]I. Akyddiz, et ai., "Wireless Sensor Networks: a Survey," Cornputer Network, vo1.38, no.4, pp.393-422,2002.
[65]802.15.4-2003 Standard for information technology - Telecommunication and information exchange between systems - LAN/WAN - Part 15.4: Wireless Medium Access Control (MAC) and Physjcal Layer (PHY) specifications for wireless persona1 Area Networks (LR-WPAN).
[66] W. Ye, et al., "An Energy-efficient MAC Protocol for Wireless Sensor Networks," in Proceedings @the IEEE INFQCOM, pp. 1567-1 576, New York, USA, June 2002.
[67lJ. Elson, and K. Romer, 'Wireless Sensor Networks: a New Regime for Time Synchronisation," in First Worbhop on Hot Topics in Networh, Princeton, New Jersey, 2002.
[68] J. Lundelius, and N. Lynch, "A New Fault-tolerant Algorithm for Clock Synchronisation," in Pmceedings the Tbird Annual ACM Sypo~i t lm on Principles of Dismmbuted Computed, Vancouver, Canada, pp. 75-88,1984.
[69]W. Heînzelman, J. Kulik, and H. Balakrishnan, "Adaptive Protocols for Information Dissemination in Wireless Sensor Networks," in pmceedings of the F$?h ACM/IEEE MobiCom Conference, Seattle, WA, August: 1999.
PO] C. Intanagonwiwat, R. Govindan, and D. Estrin, "Directed Diffusion: a Scalable and Robust Communication Paradigm for Sensor Networks," in proceeding of the sixth ACMIIEEE MobiCom'2000 Cot$emnce, Boston, MA, August 2000.
p l ] W. Heinzelrnan, A. Chandrakasan, and H. Balakrishnan, "An Application Specific Protocol Architecture for Wireless Micro Sensor Networks," IEEE Transactions on ~'reless Communications, vol. 1 , no. 4, pp. 660-670, October 2002.
[72] S. Lindsey, C. Raghavendra, and K. Sivahngam, "Data Gathering Algorithms in Sensor Networks using Energy Metrics," IEEE Transacti0n.s on Parade1 and Dish'b~lted System, vol. 13, no. 9, pp. 924 - 935, September 2002.
P3] A. Manjeshwar, and D. Agrawal, "TEEN: a Protocol for Enhanced Efficiency in Wireless Sensor Networks," in pmceedngs of the Fhst International Workshop on Paralleel and Di~h'buted Cornpuhg Iss~les in Wireless Nehvorks and MoMe Comptlting, San Francisco, CA, April 2001.
[74] A. Manjeshwar, and D. Agrawal, "APTEEN: a Hybrid Protocol for Efficient Routing and Comprehensive Informarion Retrieval in Wireless Sensor Networks," in proceedings International Parallel and Dijtn'btlted PmcessiPlg Qmposium, pp. 195-202,2002.
[75] Y. Yu, D. Estrin, and R. Govindan, "Geographical and Energy-aware Routing: a Recursive Data Dissemination Protocol for Wireless Sensor Networks," U C L A C o q . Sci. Dqf. tech. 9.) UCLA-CSD TR-0 10023, May 2001.
[76] Y. Xu, J. Heidemam, and D. Esmn, "Geography-inforrned Energy Conservation for Ad hoc Routing," in pmceeditgs o f the Seventh Annual A C M I I E E E International Coflference on Mobile Comptrting and Networking, MotiiCom >O 1 , Rome, Italy, July 2001.
[77] S. Basagni, 1. Chlamtac, and A. Fargo, "A Generalized Clustering Algorithm for peer-to- peer Networks," in pmceedings c$ Work;rhqû on A&ota'thmic Aspects o f commtmiication (sateI6te worhhop O f I W ) , Juiy 1997.
[78] K. Weniger, and M. Zitterbart, "Address Autoconfiguration in Mobile Ad hoc Networks: Current Approaches and Future Directions," IEEE Netrvork, 18(4):6-11, July-August 2004.
[79] M. Günes, and J. Reibel, "An IP Address Configuration Algorithm for Zeroconf Mobile Multihop Ad hoc Nenvorks," in International Worhhap Bmadband Wireless A d Hoc Nefworh and Services, Sophia Antipolis, France, September 2002.
[80]S. Nesargi, and R. Prakash, "MANETconf: Configuration of Hosts in a Mobile Ad hoc Network," inprocee&ngs ofIEEE mTFOCOM, New York, N Y , June 2002.
[81] M. Mohsin, and R. Prakash, "IP Adress Assignment in a Mobile Ad Hoc Network," in pmceedings ofIEEE MILCOM 2002, Anaheim, CA, October 2002.
[82] C. Perkins, et al., "IP Address Autoconfiguration for Ad hoc Networks," IETF draft, 2001.
[83] N. Vaidya, "Weak Duplicate Address Detection in Mobile Ad hoc Networks," inpmceeings ofACM MobiHoc 2002, pp. 206-216, Lausanne, Switzerland, June 2002.
[84] K. Weniger, "Passive Duplicate Address Detection in Mobile Ad hoc Networks," in pmceedings ofIEEE WCNC 2003, New Orleans, LA, March 2003.
[85]Y. Sun, and E. Belding-Royer, "Dynamic Address Configuration for Mobile Ad hoc Networks," UCSB tech. rq . 2003-1 1, Santa Barbara, CA, June 2003.
[86]T. Kwon and M. Gerla, "Clustering with Power Control," in Pmceedings Of IEEE MILCOM'99, Atlantic City, NJ, November 1999.
[87J C. Lin, and M. Gerla, "Adaptive Clustering for Mobile Wireless Networks," in IEEE Journal on Sehcted Areas in Commtlnications U S A 0 vol. 1 5, pp. 1265-1275, September 1 997.
[88]T. Gerla, and G. Pei, "On Demand Routing in Large Ad hoc Wireless Networks with Passive Clustering," in Pmceedingj o f IEEE WClVC2000, Chicago, IL, September 2000.
[89]S. Basagni, "Distributed and Mobility Adaptive Clustering for Multimedia Support in Mulu-hop Wireless Networks," in Pmceedings the I E E E 50" International Vehicdar Technology Cotzjerence, V T C 1999-Fa/(, vol. 2, pp. 889-893, Amsterdam, The Netherlands, September 1999.
[9O] V. Kawadia, and P. Kurnar, "Power Control and Clustering in Ad hoc Nerworks," in Pmceedings o f IEEE INFOCOM V3,2003.
[91] 0. Younis, and S. Fahmy, "Distributed Clustering in Ad-hoc Sensor Networks: a Hybrid, Energy-e fficient Approach," in Pmceedtigs fl IEEE INFOCOM '04, Hong Kong, March 2004.
[92] H. Chan, and A. Perrig, "ACE: An Emergenr Algorithm for Highly Uniforrn Clusrer Formation," in Etlropean Workshop on Wireless Sensor Networh (EWSN 2004)) January 2004.
[93]T. Henderson, et al., "Smart Sensor Snow," in proceedings oj IEEE Conference on IntelLigent Robots and Intelligent Systems, October 1 998.
[94]T. Henderson, et ai., "Reaction-Diffusion Patterns in Smart Sensor Networks," in Pmceedings ofIEEE Conference on Robotics and Atrtomation, New Orleans, LA, April2004.
[95]V. Mharte, and C. Rosenberg, "Design Guidelines for Wireless Sensor Networks: Communication, Clustering and Aggregation," A d hoc Networks Jofirnal, Eheyier Science, 2 (1): 45-60,2004.
[96]V. Mharte, and C. Rosenberg, "Homogeneous vs Heterogeneous Clustered Sensor Networks: a Comparative Study," in Pmceedings of I E E E International Conference on Commtrnications (ICCW), vol. 6, pp. 3646-3651, Hong Kong, June 2004.
[97lA. Harter, and A. Hopper, "A New Location Technique for the Active Office," IEEE Personal Commnication, vol. 4, No. 5, pp. 42-47, October 1997.
[98]N. Priyantha, A. Chakraborty, and H. Balakrishnan, "The Cricket Location Support System," inpmceedings $6fbACM MOBICOM'2000, Boston, M A , August 2000.
[99] A. Sawides, H. Park, and M. Srivastava, "The n-hop Multilateration Primitive for Node Localization Problems," inpmceedings ofMobile Networks andApplications, pp. 443-51,2003.
j1001 Ubisense website, htt~://www.ubisense.net
[IO11 R. Adve, "Direction of Arrival Estimation," 2003.
il021 "Diagramme de rayonnement", www.bde.enseeiht.fr.
[IO31 "Principe de positionnement du GPS", www.adrniroutes.asso.fr.
[IO41 S. Gezici, 2, et ai., "Locahzation via Ultra-Wideband Radios," I E E E Signal Pmmssing Magaene, pp. 70-84, Juillet 2005.
[105] E. Sun, J. Chen, W. Guo, and K. Ray Liu, "Signal Processing Techniques in Network- Aided Positioning," IEEE Signal Pmcessing Magaene, pp. 12-23, Juillet 2005.
[IO61 "Tnanguiation", wikipedia.org.
[107 F. Gustafsson, and F. Gunnarsson, "Positioning Using Time-Difference of Arrival Measurements," inpmceedings o f IEEE ICASSP'O3, March 2003.
[108] B. Mungamuru, and P. Aarabi, "Enhanced Sound Localization," I E E E Transactions on Systems, Man, and Cjbernetics, vol. 34, no. 3, pp. 1526-1 540, June 2004.
[109] "The Cricket Indoor Location System," htt~://cricket.csail.rnit.edu/.
[110] K. Wang, "An Ultrasonic Compass for Context-Aware Mobile Applications," thèse de doctorat, June 2004.
[Il 11 N. Priyantha, "The Cricket Indoor Location System," thèse de doctorat, June 2005.
[Il21 "Federal Communications Commission," First Report and Order 0248,2002.
[Il31 A. Deiaï, et al., "Using 3d Indoor Microwave Phase Sensitive Stereoscopic Location System to Reduce Energy Consumption in Wireless ad-hoc Networks," sOc103, Mai 2003.
[Il41 S. Pradhan, J. Kusuma, and K. Ramchandran, "Distributed Compression in a Dense Microsensor Network," I E E E Sig. Pmc. Mag., vol. 19, no. 2, pp. 51-60, March 2002.
11 151 Boulis, S. Ganeriwal, and M. Srivastava, "Aggregation in Sensor Networks: an Energy- Accuracy Trade-Off," in Pmceedings oftbefirst IEEE International Worksbop on Sensor Network Pmtocols and Appk'catzons, pp. 128-1 38, May 2003.