configuration dynamique et routage pour l'internet des objets

130
HAL Id: tel-01687704 https://tel.archives-ouvertes.fr/tel-01687704 Submitted on 18 Jan 2018 HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entiïŹc research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L’archive ouverte pluridisciplinaire HAL, est destinĂ©e au dĂ©pĂŽt et Ă  la diïŹ€usion de documents scientiïŹques de niveau recherche, publiĂ©s ou non, Ă©manant des Ă©tablissements d’enseignement et de recherche français ou Ă©trangers, des laboratoires publics ou privĂ©s. ConïŹguration dynamique et routage pour l’internet des objets Patrick Olivier Kamgueu To cite this version: Patrick Olivier Kamgueu. ConïŹguration dynamique et routage pour l’internet des objets. RĂ©seaux et tĂ©lĂ©communications [cs.NI]. UniversitĂ© de Lorraine, 2017. Français. NNT: 2017LORR0241. tel- 01687704

Upload: others

Post on 15-Apr-2022

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Configuration dynamique et routage pour l'internet des objets

HAL Id: tel-01687704https://tel.archives-ouvertes.fr/tel-01687704

Submitted on 18 Jan 2018

HAL is a multi-disciplinary open accessarchive for the deposit and dissemination of sci-entific research documents, whether they are pub-lished or not. The documents may come fromteaching and research institutions in France orabroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, estdestinĂ©e au dĂ©pĂŽt et Ă  la diffusion de documentsscientifiques de niveau recherche, publiĂ©s ou non,Ă©manant des Ă©tablissements d’enseignement et derecherche français ou Ă©trangers, des laboratoirespublics ou privĂ©s.

Configuration dynamique et routage pour l’internet desobjets

Patrick Olivier Kamgueu

To cite this version:Patrick Olivier Kamgueu. Configuration dynamique et routage pour l’internet des objets. RĂ©seauxet tĂ©lĂ©communications [cs.NI]. UniversitĂ© de Lorraine, 2017. Français. NNT : 2017LORR0241. tel-01687704

Page 2: Configuration dynamique et routage pour l'internet des objets

AVERTISSEMENT

Ce document est le fruit d'un long travail approuvĂ© par le jury de soutenance et mis Ă  disposition de l'ensemble de la communautĂ© universitaire Ă©largie. Il est soumis Ă  la propriĂ©tĂ© intellectuelle de l'auteur. Ceci implique une obligation de citation et de rĂ©fĂ©rencement lors de l’utilisation de ce document. D'autre part, toute contrefaçon, plagiat, reproduction illicite encourt une poursuite pĂ©nale. Contact : [email protected]

LIENS Code de la Propriété Intellectuelle. articles L 122. 4 Code de la Propriété Intellectuelle. articles L 335.2- L 335.10 http://www.cfcopies.com/V2/leg/leg_droi.php http://www.culture.gouv.fr/culture/infos-pratiques/droits/protection.htm

Page 3: Configuration dynamique et routage pour l'internet des objets

Configuration Dynamique et Routagepour l’Internet des Objets

THESE EN COTUTELLE

presentee et soutenue publiquement le 18 Decembre 2017

pour l’obtention du

Doctorat de l’Universite de Lorraine (France)

et de l’Universite de Yaounde 1 (Cameroun)

(mention informatique)

par

Patrick Olivier KAMGUEU

Composition du jury

President : Charles AWONO ONANA Professeur – Universite de Yaounde 1

Rapporteurs : Nathalie MITTON Directrice de Recherche – INRIA LilleYacine GHAMRI-DOUDANE Professeur – Universite de la Rochelle

Examinatrice : Noura LIMAM Chargee de Recherche – Univ. de Waterloo (Canada)

Encadrants de thùse : Olivier FESTOR Professeur – Universite de LorraineMaurice TCHUENTE Professeur – Universite de Yaounde 1Emmanuel NATAF MCF – Universite de LorraineThomas DJOTIO MCF – Universite de Yaounde 1

Laboratoire Lorrain de Recherche en Informatique et ses Applications — UMR 7503

Page 4: Configuration dynamique et routage pour l'internet des objets
Page 5: Configuration dynamique et routage pour l'internet des objets

iii

RĂ©sumĂ©L’intĂ©rĂȘt croissant de la communautĂ© scientifique et industrielle ces derniĂšres an-

nĂ©es pour les rĂ©seaux de capteurs sans fil (RCSF), a conduit Ă  la dĂ©finition de nouveauxprotocoles normalisĂ©s prenant en compte les spĂ©cificitĂ©s matĂ©rielles des nƓuds utilisĂ©s.Dans la couche rĂ©seau, le protocole RPL (de l’acronyme anglais IPv6 Routing Protocolfor Low-power and Lossy Network) a Ă©tĂ© proposĂ© en 2012 par l’IETF, comme standard deroutage pour les rĂ©seaux dont les nƓuds sont de type "LLN" (Low-power and LossyNetwork), i.e. caractĂ©risĂ©s par une faible autonomie Ă©nergique et transmettant sur desliens radios dotĂ©s d’un taux de perte de donnĂ©es Ă©levĂ©. Dans cette thĂšse, nous nousintĂ©ressons Ă  l’optimisation du routage dans ces rĂ©seaux (notamment ceux utilisant lapile protocolaire TCP/IP), ainsi qu’à leur interconnexion efficace Ă  Internet Ă  des coĂ»tssoutenables. Tout d’abord, nous proposons deux fonctions d’objectif organisant le rou-tage avec RPL. La premiĂšre se sert de l’unique critĂšre Ă©nergĂ©tique, avec comme objectifprincipal la maximisation de la durĂ©e de vie du rĂ©seau. Pour ce faire, nous avons im-plĂ©mentĂ© un modĂšle d’estimation d’énergie, intĂ©grĂ© par la suite aux nƓuds pour leurpermettre d’estimer en temps rĂ©el leur Ă©nergie rĂ©siduelle. La deuxiĂšme fonction d’ob-jectif proposĂ©e, vise Ă  combiner plusieurs critĂšres pour la prise en compte de la qualitĂ©de service durant le routage. Nous dĂ©veloppons un modĂšle Ă  base de la logique flouepour mettre en Ɠuvre la combinaison. En effet, elle nous permet d’obtenir un bon com-promis entre les diffĂ©rentes entrĂ©es et requiert une empreinte mĂ©moire faible. Dans laderniĂšre partie de cette thĂšse, nous concevons et mettons en Ɠuvre une architectured’activation de passerelles permettant d’assurer une connexion Internet efficace de di-vers RCSFs utilisant RPL, pour la rĂ©alisation de la vision de l’Internet des Objets.

AbstractIn recent years, the growing interest of scientific and industrial community has

led to the standardization of new protocols that take into account the unique require-ments of Wireless Sensor Networks (WSN) nodes. At network layer, RPL (IPv6 RoutingProtocol for Low-power and Lossy Network) has been proposed by IETF as the routingstandard for network that uses LLN nodes, namely, those where both nodes and theirinterconnects are constrained. They operate on low-power embedded batteries anduse lossy links, making communications unreliable and lead to a significant data lossrates. In this thesis, we aim at optimizing the routing in WSNs (especially those usingTCP/IP protocol stack), as well as their efficient and cost effective connection to theInternet. First of all, we proposed two new RPL objective functions. The first uses asunique routing criterion, the node remaining energy with the goal of maximizing thenetwork lifetime. An energy model that allows the nodes to dynamically estimate theirremaining energy at runtime has been implemented and integrate to the protocol. Thesecond objective function uses fuzzy logic reasoning to combine several criteria in or-der to take Quality of Service into account. Indeed, this scheme provides a good tradeoffon several inputs and requires a low memory footprint. In the last part of this thesis,we designed and implemented an architecture that enable an efficient integration ofseveral RPL based WSNs to the Internet in order to achieve the Internet of Things vi-sion.

Page 6: Configuration dynamique et routage pour l'internet des objets
Page 7: Configuration dynamique et routage pour l'internet des objets

v

RemerciementsLe travail rĂ©alisĂ© tout au long de cette thĂšse n’a Ă©tĂ© possible qu’avec l’aide et le sou-

tien de nombreuses personnes. Je profite de l’occasion qui m’est donnĂ©e ici pour leurexprimer mes sincĂšres remerciements.

Je voudrais tout d’abord tĂ©moigner ma profonde gratitude Ă  mon encadrant dethĂšse Dr. Emmanuel Nataf pour avoir cru en mon potentiel. Sans ses encouragementset son aide permanente, ce travail n’aurait certainement jamais Ă©tĂ© menĂ© jusqu’au bout.« Merci pour avoir partagĂ© avec moi votre goĂ»t de la recherche et votre passion desrĂ©seaux. » Je remercie Ă©galement mes co-directeurs de thĂšse, les professeurs ThomasDjotio, Olivier Festor et Maurice Tchuente pour la disponibilitĂ© et le grand profession-nalisme dont ils ont fait preuve durant toutes ces annĂ©es. Je les remercie pour leursprĂ©cieux conseils et pour avoir acceptĂ© d’encadrer cette thĂšse. J’ai eu la chance de ren-contrer des personnes passionnĂ©es par leur mĂ©tier et c’est grĂące Ă  elles que j’ai puobtenir le cadre institutionnel dans lequel ce travail a Ă©tĂ© menĂ© (cotutelle entre les uni-versitĂ©s de Lorraine – France et de YaoundĂ© 1 – Cameroun).

Je remercie le Professeur Yacine Ghamri-Doudane et Dr/HDR Nathalie Mitton pouravoir expertisĂ© ce travail. Je remercie Ă©galement le Professeur Charles Awono Onanaet Dr Noura Limam d’avoir acceptĂ© de faire partie de mon jury de soutenance et pouravoir examinĂ© cette thĂšse.

Si dans une telle aventure, les interactions scientifiques sont fondamentales, les rap-ports humains n’en demeurent pas moins importants. Je voudrais ici remercier mescamarades des Ă©quipes MADYNES et MASECNESS (devenu IoT4D), ceux qui sontencore lĂ  et ceux qui sont dĂ©jĂ  partis, pour l’ambiance qui a rĂ©gnĂ©, surtout pendantles pauses cafĂ© et dĂ©jeunĂ© :-) Je remercie Ă©galement mes collĂšgues du dĂ©partement in-formatique Ă  l’universitĂ© de YaoundĂ© 1, pour avoir acceptĂ© de me supplĂ©er dans mestaches acadĂ©miques durant mes nombreuses missions de recherche en France. Je neciterai personne de peur d’en oublier, toutefois j’ai une pensĂ©e particuliĂšre pour monĂ©tudiant de Master 2, Njine Chuangueu pour sa prĂ©cieuse aide dans ce sens.

Je tiens Ă©galement Ă  remercier les assistances de l’équipe MADYNES, CĂ©line Simonet Isabelle Herlich pour leur soutien administratif lors de mes voyages entre YaoundĂ©et Nancy. J’ai une gratitude pour les institutions suivantes : MinistĂšre Français desAffaires ÉtrangĂšres (Bourse SCAC), LIRIMA (Laboratoire International pour la Re-cherche en Informatique et MathĂ©matiques AppliquĂ©es) et INRIA (Institut Nationalde Recherche en Informatique et Automatique). Leur soutien financier et logistique arendu possible la rĂ©alisation de cette thĂšse.

Je ne saurai terminer mon propos sans remercier ma famille pour son soutien, sonamour inconditionnel et permanent. Un merci tout particulier Ă  ma chĂ©rie Ornela quim’a soutenu durant ces annĂ©es de thĂšse, surtout la derniĂšre, longue et interminableligne droite. Elle a su me remonter le moral pendant les moments de dĂ©couragementet a pu supporter mes sautes d’humeur. Le meilleur est Ă  venir . . .

Page 8: Configuration dynamique et routage pour l'internet des objets
Page 9: Configuration dynamique et routage pour l'internet des objets

vii

Publications

Les contributions rĂ©alisĂ©es dans cette thĂšse ont fait l’objet de plusieurs publications dans desrevues et confĂ©rences scientifiques internationales.

Revues internationales! P. O Kamgueu, E. Nataf et T. Djotio, « Architecture for an efficient integration of Wire-

less Sensor Networks to the Internet through IoT gateways », International Journal ofDistributed Sensor Networks – Special collection on Cloud Computing and Communi-cation Protocols for IoT Applications, Vol. 13(11) 2017.https://doi.org/10.1177/1550147717744735

! P. O Kamgueu, E. Nataf et T. Djotio, « Survey on RPL enhancements : a focus on to-pology, security and mobility », Ă  paraĂźtre dans une prochaine sĂ©rie (2018) d’Elsevier –Computer Communications.

Conférences internationales! P. O Kamgueu, E. Nataf et T. Djotio, « On Design and Deployment of Fuzzy-Based Me-

tric for Routing in Low-Power and Lossy Networks », actes du 40Ăšme IEEE Conferenceon Local Computer Networks (LCN 2015) pages 789 – 795, Clearwater Beach, FL, USA.https://doi.org/10.1109/LCNW.2015.7365929

! P. O Kamgueu, E. Nataf, T. Djotio et O. Festor, « Fuzzy-based routing metrics combi-nation for RPL », Doctoral Consortium of 3th international Conference on Sensor Net-works (DCSENSORNETS 2014) pages 11 – 17, Lisbon, Portugal.https://hal.inria.fr/hal-01093965/document

! P. O Kamgueu, E. Nataf, T. Djotio et O. Festor, « Energy-based metric for the RoutingProtocol in Low-Power and Lossy Network », actes du 2nd international Conference onSensor Networks (SENSORNETS 2013) pages 145 – 148, Barcelona, Spain.https://doi.org/10.5220/0004313401450148

Page 10: Configuration dynamique et routage pour l'internet des objets
Page 11: Configuration dynamique et routage pour l'internet des objets

ix

Table des matiĂšres

Résumé iii

Remerciements v

Publications vii

1 Introduction Générale 1

I Contexte et État de l’Art 5

2 Routage dans les Réseaux de Capteurs sans Fil 72.1 Problématique de routage dans les RCSF . . . . . . . . . . . . . . . . . . 7

2.1.1 Facteurs influençant la conception du routage dans les RCSFs . . 92.1.1.1 Type de dĂ©ploiement . . . . . . . . . . . . . . . . . . . . 92.1.1.2 Consommation Ă©nergĂ©tique . . . . . . . . . . . . . . . . 92.1.1.3 ModĂšle de transmission de donnĂ©es . . . . . . . . . . . 92.1.1.4 HĂ©tĂ©rogĂ©nĂ©itĂ© et capacitĂ© des nƓuds . . . . . . . . . . . 102.1.1.5 AgrĂ©gation de donnĂ©es . . . . . . . . . . . . . . . . . . . 102.1.1.6 TolĂ©rance aux pannes . . . . . . . . . . . . . . . . . . . . 102.1.1.7 Passage Ă  l’échelle . . . . . . . . . . . . . . . . . . . . . . 112.1.1.8 Dynamique rĂ©seau . . . . . . . . . . . . . . . . . . . . . . 112.1.1.9 QualitĂ© de Service . . . . . . . . . . . . . . . . . . . . . . 11

2.1.2 Classification des protocoles de routage dans les RCSF . . . . . . 112.1.2.1 Routage Ă  « plat » . . . . . . . . . . . . . . . . . . . . . . 122.1.2.2 Routage hiĂ©rarchique . . . . . . . . . . . . . . . . . . . . 122.1.2.3 Routage basĂ© sur la position des nƓuds . . . . . . . . . 122.1.2.4 Routage orientĂ©-donnĂ©es . . . . . . . . . . . . . . . . . . 132.1.2.5 Routage multi-chemins . . . . . . . . . . . . . . . . . . . 13

2.2 Métriques de routage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.2.1 Types de métriques . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.2.1.1 MĂ©trique de nƓud ou de lien . . . . . . . . . . . . . . . 142.2.1.2 Dynamique ou Statique . . . . . . . . . . . . . . . . . . . 142.2.1.3 MĂ©trique unidimensionnelle ou multidimensionnelle . 14

2.2.2 ConsidĂ©rations liĂ©es Ă  l’implĂ©mentation . . . . . . . . . . . . . . . 152.2.3 MĂ©triques usuelles pour les RCSF . . . . . . . . . . . . . . . . . . 15

2.2.3.1 Le nombre de sauts . . . . . . . . . . . . . . . . . . . . . 162.2.3.2 L’ETX et mĂ©triques apparentĂ©es . . . . . . . . . . . . . . 162.2.3.3 Le dĂ©lai . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.2.3.4 La taille de file d’attente des paquets . . . . . . . . . . . 18

Page 12: Configuration dynamique et routage pour l'internet des objets

x

2.2.3.5 L’énergie . . . . . . . . . . . . . . . . . . . . . . . . . . . 182.2.3.6 Le RSSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.3 Standardisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192.3.1 Standards de l’IETF relatifs aux RCSF . . . . . . . . . . . . . . . . 202.3.2 Le protocole de routage RPL . . . . . . . . . . . . . . . . . . . . . 21

2.3.2.1 Formation de la topologie . . . . . . . . . . . . . . . . . 222.3.2.2 Messages de contrĂŽle RPL . . . . . . . . . . . . . . . . . 232.3.2.3 Maintenance de la topologie . . . . . . . . . . . . . . . . 242.3.2.4 Rang, dĂ©tection et gestion des boucles de routage RPL . 252.3.2.5 Fonction d’objectif RPL . . . . . . . . . . . . . . . . . . . 25

3 Du RĂ©seau de Capteurs Ă  l’Internet des Objets 273.1 Technologies de l’Internet des Objets . . . . . . . . . . . . . . . . . . . . . 27

3.1.1 La Radio Identification (RFID) . . . . . . . . . . . . . . . . . . . . 293.1.2 L’IEEE 802.15.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293.1.3 BLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303.1.4 IPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313.1.5 Web des Objets et CoAP . . . . . . . . . . . . . . . . . . . . . . . . 32

3.2 ProblĂ©matique de l’interconnexion . . . . . . . . . . . . . . . . . . . . . . 333.2.1 Routeur de bordure . . . . . . . . . . . . . . . . . . . . . . . . . . 343.2.2 Plate-forme matĂ©rielle pour la passerelle . . . . . . . . . . . . . . 36

3.3 Stratégies de sélection de passerelles dans les réseaux sans fil multi-sauts 36

II Contribution au Routage 41

4 Routage par l’Énergie 434.1 ModĂšle d’estimation d’énergie pour les capteurs . . . . . . . . . . . . . . 43

4.1.1 ModÚle linéaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434.1.2 ModÚle non linéaire . . . . . . . . . . . . . . . . . . . . . . . . . . 444.1.3 Estimation logicielle en ligne . . . . . . . . . . . . . . . . . . . . . . 464.1.4 Résultats de simulation du modÚle non linéaire . . . . . . . . . . 47

4.1.4.1 Profil Ă©nergĂ©tique de dĂ©marrage . . . . . . . . . . . . . . 474.1.4.2 Profil Ă©nergĂ©tique selon la dynamique rĂ©seau . . . . . . 474.1.4.3 Erreur d’approximation . . . . . . . . . . . . . . . . . . . 494.1.4.4 DurĂ©e de vie des nƓuds . . . . . . . . . . . . . . . . . . 49

4.2 Fonction d’Objectif RPL basĂ©e sur l’énergie . . . . . . . . . . . . . . . . . 504.2.1 CapacitĂ© Ă©nergĂ©tique de la route . . . . . . . . . . . . . . . . . . . 514.2.2 Calcul de rang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524.2.3 OptimalitĂ© et absence de boucle . . . . . . . . . . . . . . . . . . . 53

4.3 Expérimentations et évaluation . . . . . . . . . . . . . . . . . . . . . . . . 554.3.1 Environnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 554.3.2 Répartition énergétique . . . . . . . . . . . . . . . . . . . . . . . . 564.3.3 Fiabilité de transmission . . . . . . . . . . . . . . . . . . . . . . . . 57

4.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

Page 13: Configuration dynamique et routage pour l'internet des objets

xi

5 Combinaison de métriques par la Logique Floue 615.1 Combinaison de métriques de routage RPL . . . . . . . . . . . . . . . . . 62

5.1.1 Composition additive . . . . . . . . . . . . . . . . . . . . . . . . . 625.1.2 Composition lexicographique . . . . . . . . . . . . . . . . . . . . . 63

5.2 SystĂšme d’infĂ©rence par la logique floue . . . . . . . . . . . . . . . . . . . 655.2.1 Variables linguistiques . . . . . . . . . . . . . . . . . . . . . . . . . 655.2.2 Fuzzification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675.2.3 InfĂ©rence et agrĂ©gation . . . . . . . . . . . . . . . . . . . . . . . . . 685.2.4 Defuzzification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

5.3 Fonction d’objectif RPL basĂ©e sur la logique floue . . . . . . . . . . . . . 705.3.1 Architecture du moteur d’infĂ©rence . . . . . . . . . . . . . . . . . 705.3.2 IntĂ©gration Ă  RPL . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

5.3.2.1 Logique floue . . . . . . . . . . . . . . . . . . . . . . . . . 725.3.2.2 Structure de données pour la topologie de routage . . . 725.3.2.3 Annonces de routage . . . . . . . . . . . . . . . . . . . . 735.3.2.4 Calcul de rang . . . . . . . . . . . . . . . . . . . . . . . . 73

5.4 Expérimentations et évaluation . . . . . . . . . . . . . . . . . . . . . . . . 745.4.1 Conditions expérimentales et outils . . . . . . . . . . . . . . . . . 755.4.2 Taux de livraison . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755.4.3 Stabilité de routage . . . . . . . . . . . . . . . . . . . . . . . . . . . 765.4.4 Efficacité énergétique . . . . . . . . . . . . . . . . . . . . . . . . . . 775.4.5 Délai de bout-en-bout . . . . . . . . . . . . . . . . . . . . . . . . . 78

5.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

III Configuration et Interconnexion pour l’Internet des Objets 80

6 RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 826.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 826.2 ConsidĂ©rations liĂ©es Ă  la conception . . . . . . . . . . . . . . . . . . . . . 836.3 ModĂ©lisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

6.3.1 ModÚle de réseau . . . . . . . . . . . . . . . . . . . . . . . . . . . . 856.3.2 Formulation du problÚme . . . . . . . . . . . . . . . . . . . . . . . 86

6.4 Procédure de résolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . 876.4.1 Complexité algorithmique . . . . . . . . . . . . . . . . . . . . . . . 876.4.2 Méthode de résolution . . . . . . . . . . . . . . . . . . . . . . . . . 886.4.3 Illustration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

6.4.3.1 Scénario No1 . . . . . . . . . . . . . . . . . . . . . . . . . 906.4.3.2 Scenario No2 . . . . . . . . . . . . . . . . . . . . . . . . . 90

6.5 Architecture du systĂšme . . . . . . . . . . . . . . . . . . . . . . . . . . . . 916.6 Mise en Ɠuvre et dĂ©ploiement . . . . . . . . . . . . . . . . . . . . . . . . . 93

6.6.1 Architecture matérielle . . . . . . . . . . . . . . . . . . . . . . . . . 936.6.2 Fonctionnement réseau . . . . . . . . . . . . . . . . . . . . . . . . 94

6.6.2.1 CÎté réseau de capteurs sans fils . . . . . . . . . . . . . . 946.6.2.2 CÎté passerelle . . . . . . . . . . . . . . . . . . . . . . . . 94

6.6.3 DĂ©ploiement et cas d’utilisation . . . . . . . . . . . . . . . . . . . 956.6.3.1 Simulation grande Ă©chelle . . . . . . . . . . . . . . . . . 956.6.3.2 ExpĂ©rience en environnement rĂ©el . . . . . . . . . . . . . 96

Page 14: Configuration dynamique et routage pour l'internet des objets

xii

6.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

7 Conclusion et Perspectives 1007.1 Résumé des contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . 1007.2 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

Page 15: Configuration dynamique et routage pour l'internet des objets

xiii

Table des figures

2.1 Composantes d’un rĂ©seau de capteurs sans fil . . . . . . . . . . . . . . . . 82.2 Standards relatifs au protocole RPL . . . . . . . . . . . . . . . . . . . . . . 202.3 Pile protocolaire standardisĂ©e pour les RCSF . . . . . . . . . . . . . . . . 212.4 Construction du DODAG . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.1 Évolution du nombre d’objets connectĂ©s de l’IoT [Eva11]. . . . . . . . . 283.2 Convergence numĂ©rique [VF14]. . . . . . . . . . . . . . . . . . . . . . . . 283.3 Structure de la Super-Trame IEEE 802.15.4 en mode Synchrone . . . 313.4 BAN : RĂ©seau personnel sans fil pour l’individu [Ban]. . . . . . . . . . . . 323.5 Modes de fonctionnement Routeur du 6LBR [Der+13]. . . . . . . . . . . 353.6 Modes de fonctionnement Pont Transparent du 6LBR [Der+13]. . . . . . 363.7 Passerelle par Association : Raspberry – TelosB . . . . . . . . . . . . . . . 37

4.1 Premiers instants d’activitĂ© . . . . . . . . . . . . . . . . . . . . . . . . . . 484.2 Dynamique du profil Ă©nergique . . . . . . . . . . . . . . . . . . . . . . . . 484.3 Gap entre les implĂ©mentations flottante et entiĂšre . . . . . . . . . . . . . 494.4 CapacitĂ© Ă©nergĂ©tique d’une route . . . . . . . . . . . . . . . . . . . . . . . 524.5 Calcul de rang de l’OF-Ă©nergie . . . . . . . . . . . . . . . . . . . . . . . . 524.6 Aperçu de la topologie rĂ©seau . . . . . . . . . . . . . . . . . . . . . . . . . 564.7 Distribution de l’énergie rĂ©siduelle sur les nƓuds . . . . . . . . . . . . . 574.8 Évolution Ă©nergĂ©tique des nƓuds les plus sollicitĂ©s . . . . . . . . . . . . 574.9 Nombre de paquets reçus au point de collecte par nƓud . . . . . . . . . 58

5.1 Processus de sĂ©lection du prochain saut . . . . . . . . . . . . . . . . . . . 665.2 Fonctions d’appartenances et ensembles flous . . . . . . . . . . . . . . . . 685.3 Composition et AgrĂ©gation pour la QdS . . . . . . . . . . . . . . . . . . . 695.4 Defuzzification de la QdS . . . . . . . . . . . . . . . . . . . . . . . . . . . 705.5 Moteur d’infĂ©rence floue . . . . . . . . . . . . . . . . . . . . . . . . . . . . 715.6 Architecture des structures de donnĂ©es pour la composition . . . . . . . 735.7 DIO transportant l’ensemble des mĂ©triques . . . . . . . . . . . . . . . . . 745.8 DĂ©ploiement des nƓuds dans le bĂątiment . . . . . . . . . . . . . . . . . . 755.9 Taux de perte de paquets au point de collecte . . . . . . . . . . . . . . . . 765.10 Nombre de changement de prochain saut dans le temps . . . . . . . . . . 775.11 Distribution de l’énergie rĂ©siduelle des nƓuds . . . . . . . . . . . . . . . 785.12 Fonction de rĂ©partition du dĂ©lai de bout-en-bout . . . . . . . . . . . . . . 79

6.1 RĂ©seau fĂ©dĂ©rateur de passerelles interconnectant les RCSF . . . . . . . . 846.2 Arborescence de routage pour diverses donnĂ©es en entrĂ©e . . . . . . . . 916.3 Architecture du systĂšme . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926.4 Simulation Cooja d’un rĂ©seau grande Ă©chelle . . . . . . . . . . . . . . . . 96

Page 16: Configuration dynamique et routage pour l'internet des objets

xiv

6.5 Capteurs dĂ©couverts de la passerelle [instance #20] . . . . . . . . . . . . 976.6 ExpĂ©rience pour la domotique : 1ere Passerelle – Phase 1 . . . . . . . . . . 986.7 ExpĂ©rience pour la domotique : 2nde Passerelle – Phase 2 . . . . . . . . . 98

Page 17: Configuration dynamique et routage pour l'internet des objets

xv

Liste des tableaux

4.1 Constantes du modĂšle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464.2 Mesures des consommations de courant : TelosB (sky) . . . . . . . . . . . 474.3 DurĂ©e d’utilisation de la Batterie . . . . . . . . . . . . . . . . . . . . . . . 504.4 Calcul dĂ©taillĂ© du rang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534.5 FiabilitĂ© de livraison des paquets . . . . . . . . . . . . . . . . . . . . . . . 58

5.1 Variable linguistique de sortie QdS . . . . . . . . . . . . . . . . . . . . . . 695.2 Variable linguistique de sortie : QUALITÉ . . . . . . . . . . . . . . . . . . 715.3 Pile protocolaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

6.1 ParamĂštres de simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

Page 18: Configuration dynamique et routage pour l'internet des objets
Page 19: Configuration dynamique et routage pour l'internet des objets

xvii

Liste des Abréviations

4G 4th Generation broadband cellular network (encore connu sous le nom LTE)6LBR IPv6 Low-power Border Router6LowPAN IPv6 over Low-power Wireless Personal Area NetworkARM Advanced RISC MachineBAN Body Area NetworkBLE Bluetooth Low EnergyCCA Clear Channel AssessmentCFLP Capacitated Facility Location ProblemCoAP Constrained Application ProtocolCoRE Constrained RESTful EnvironmentsCPU Central Processing UnitCSMA/CA Carrier Sense Multiple Access with Collision AdvoidanceDAO Destination Advertisement ObjectDHCP Dynamic Host Configuration ProtocolDIS DODAG Information SollicitationDIO DODAG Information ObjectDODAG Destination Oriented Direct Acyclic GraphETT Expected Transmission TimeETX Expected Transmission CountFFD Full Function DeviceHTTP HyperText Tranfert ProtocolIEEE Institute of Electrical and Electronics EngineersICMP Internet Control Message ProtocolIETF Internet Engineering Task ForceIoT Internet of Things (Internet des Objets en français)IPv6 Internet Protocol version 6LED Light Emitting DiodeLLN Low-power and Lossy NetworkLPM Low Power ModeLQI Link Quality IndicationMAC Medium Access ControlNAT Network Address TranslationND Neighbor Discovery ProtocolOF Objective Function (fonction d’objectif en français)OSI Open Systems InterconnectionPAN Pernal Area NetworkQdS QualitĂ© de ServiceRCSF RĂ©seaux de Capteurs Sans FilRDC Radio Duty CycleRFC Request For Comments

Page 20: Configuration dynamique et routage pour l'internet des objets

xviii

RFD Reduced Function DeviceRFID Radio Frequency IDentificationRPL IPv6 Routing Protocol for Low-power and Lossy NetworkRoLL Routing over Low-power and Lossy NetworkRTT Round-Trip delay TimeRx ReceptionSLAAC StateLess Address AutoConfigurationTCP Transmission Control ProtocolTx TransmissionUDP User Datagram ProtocolUSB Universal Serial BusWCETT Weighted Cumulative Expected Transmission TimeWNM Wireless Mesh NetworkWPAN Wireless Personal Area NetworkWoT Web of Things

Page 21: Configuration dynamique et routage pour l'internet des objets

1

Chapitre 1

Introduction GĂ©nĂ©raleL’évolution rapide des rĂ©seaux depuis quelques annĂ©es, couplĂ©e aux nombreuses

avancĂ©es technologiques dans diffĂ©rents secteurs, ont conduit Ă  de nouveaux usagesde l’Internet. Ceux-ci incluent de façon non exhaustive, la miniaturisation des archi-tectures matĂ©rielles, l’informatique embarquĂ©e et les technologies de communicationsans fil. Nous assistons Ă  l’émergence d’un nouveau paradigme : l’Internet des Objets(IoT) oĂč les entitĂ©s du monde rĂ©el (personnes, bĂątiments, vĂ©hicules, . . . ) couplĂ©es auxcomposants informatiques (ordinateurs, tablettes, smartphones) et objets embarquĂ©sdotĂ©s d’interfaces de mesures (camera, microphone, capteur d’humiditĂ©, de tempĂ©ra-ture, etc.) et d’actionneurs (moteurs, LED) sont connectĂ©s Ă  l’Internet. Ceci donne lapossibilitĂ© aux diffĂ©rents objets dĂ©ployĂ©s de mettre Ă  disposition leur donnĂ©es sur leweb, mais aussi de pouvoir recevoir leur ordre Ă  partir d’Internet. L’exploitation desservices et donnĂ©es offerts par le Web permet ainsi l’émergence de nouvelles applica-tions et amĂ©liorent ainsi la qualitĂ© de vie des individus. Parmi les plus significativeson peut citer celles liĂ©es aux domaines de l’e-santĂ©, Ă  la ville intelligente (transport,pollution, rĂ©seaux Ă©lectriques, etc.), Ă  la domotique, aux applications industrielles et lasurveillance environnementale.

D’une part, de nombreux objets « intelligents » (car dotĂ©s de capacitĂ©s d’acquisitiond’information, de traitement et d’interaction avec leur environnement) sont dĂ©ployĂ©sdans un environnement d’intĂ©rĂȘt. Ils communiquent entre eux par des liens radio mul-tisauts pour former un rĂ©seau de capteurs sans fil (RCSF). D’autre part, le RCSF lui-mĂȘme peut ĂȘtre connectĂ© Ă  l’Internet Ă  travers des dispositifs robustes constituĂ©s depasserelles qui assurent la communication entre les deux infrastructures (Internet et lerĂ©seaux sans fil). La volontĂ© de disposer de nƓuds (aussi appelĂ©s motes) en trĂšs grandnombre implique la nĂ©cessitĂ© d’en rĂ©duire les coĂ»ts de fabrication. On obtient de cefait, des Ă©quipements peu robustes au niveau matĂ©riel : autonomie Ă©nergĂ©tique limi-tĂ©e, faible dĂ©bit de donnĂ©es, mĂ©moire de capacitĂ© rĂ©duite et puissance de calcul faible.Par ailleurs, la qualitĂ© du lien radio dans ces rĂ©seaux est mauvaise. Ceci est dĂ» auxinterfĂ©rences avec les communications d’autres rĂ©seaux et dispositifs sans fil environ-nants ou aux obstacles, de mĂȘme que la nature «bon marché» des composants matĂ©rielsinternes utilisĂ©s. Pour toutes ces raisons, la mise en rĂ©seau de ces objets est dĂ©signĂ©esous le sigle LLN 1 (Low-Power and Lossy Network) .

L’un des principaux dĂ©fis que soulĂšve les LLN est celui de l’énergie. Recharger labatterie des nƓuds est trĂšs souvent difficile (emplacement des nƓuds) ou Ă©conomique-ment non viable (dĂ©ploiement Ă  grande Ă©chelle). La prise en compte de la contrainteĂ©nergĂ©tique lors de la conception de tout protocole dĂ©diĂ© Ă  ce type d’environnement

1. RĂ©seaux Ă  basse consommation dotĂ©s de liens non fiables – i.e. avec pertes

Page 22: Configuration dynamique et routage pour l'internet des objets

Chapitre 1. Introduction Générale 2

est essentielle, car de la gestion efficace de l’énergie dĂ©pend la durĂ©e de vie du rĂ©-seau. Un second dĂ©fi Ă  considĂ©rer lors de la mise en Ɠuvre d’un RCSF est celui dela communication. Les nƓuds sont en gĂ©nĂ©ral dĂ©ployĂ©s sans infrastructure dĂ©diĂ©e etdoivent s’auto-organiser pour faire remonter les informations aux diffĂ©rents points decollecte dans l’objectif de leur exploitation. La nature versatile du mĂ©dium de com-munication combinĂ©e Ă  la nĂ©cessitĂ© d’utiliser efficacement l’énergie embarquĂ©e dansla batterie des nƓuds ainsi que d’autres contraintes matĂ©rielles, ont conduit Ă  des ef-forts de standardisation d’un protocole de routage adaptĂ© Ă  cet environnement. CettetĂąche effectuĂ©e par le groupe de travail ROLL (Routing Over Low-Power and LossyNetwork) de l’IETF a donnĂ© naissance au protocole RPL (IPv6 Routing Protocol forLow-Power and Lossy Network). Un des points clĂ©s lors de la construction de la topo-logie de routage est celui de savoir : « comment s’effectue le choix du prochain saut? ».Le standard laisse ouvert la façon dont est rĂ©alisĂ© ce choix, mais offre tout de mĂȘmeun cadre : celui de la fonction d’objectif (OF) pour le dĂ©finir. Il indique Ă©galement uncertain nombre de mĂ©triques et contraintes pouvant orienter cette dĂ©cision. Les nƓudsdoivent alors adapter leur fonctionnement selon les conditions imposĂ©es par l’environ-nement et l’application cible. Ces conditions sont multiples et peuvent se dĂ©cliner entermes d’efficacitĂ© Ă©nergĂ©tique ou de qualitĂ© de la transmission (traduite sous forme dedĂ©lai, de dĂ©bit ou de taux de perte de donnĂ©es acceptable). Le problĂšme de combinerles mĂ©triques en fonction des conditions propres Ă  ces types de rĂ©seaux et au niveaude qualitĂ© de service requis par l’application cible reste ouvert.

Dans cette thĂšse, nous nous intĂ©ressons Ă  l’optimisation du routage dans les rĂ©seauxde capteurs sans fil sous contrainte d’énergie. Nous avons dans un premier temps,conçu et mis en Ɠuvre une fonction d’objectif RPL qui prend en compte l’unique cri-tĂšre Ă©nergĂ©tique pour organiser le routage. Le modĂšle d’énergie implĂ©mentĂ© considĂšrecertains effets non linĂ©aires qui se produisent Ă  l’intĂ©rieur de la batterie du nƓud pourestimer en temps rĂ©el (pendant l’exĂ©cution) la capacitĂ© Ă©nergĂ©tique rĂ©siduelle de celui-ci. La seconde contribution de cette thĂšse est la mise en Ɠuvre d’une mĂ©thode de com-binaison de mĂ©triques de routage qui soit rĂ©alisable dans l’environnement contrainten ressources dont dispose le noeud-capteur. Nous proposons la logique floue commemĂ©thode de combinaison. En effet, elle nous permet de ne pas nous limiter aux seulesmĂ©triques additives, et donne la possibilitĂ© de rechercher un bon compromis entre lesdiffĂ©rents critĂšres Ă  optimiser, selon la QualitĂ© de Service (QdS) souhaitĂ©e par l’appli-cation cible. Nous avons alors conçu une seconde fonction d’objectif qui combine parla logique floue plusieurs mĂ©triques, que nous avons intĂ©grĂ©e au standard de routageRPL. Des simulations et dĂ©ploiements en environnement rĂ©el ont Ă©tĂ© effectuĂ©s pourĂ©valuer ces deux propositions. La derniĂšre contribution consiste en la conception etl’implĂ©mentation d’une architecture permettant l’intĂ©gration Ă  l’Internet traditionnel,de plusieurs RCSF pour la rĂ©alisation de la vision de l’Internet des Objets. Nous conce-vons cette architecture de façon Ă  rĂ©aliser l’intĂ©gration visĂ©e Ă  la fois de façon Ă©cono-mique (au niveau du matĂ©riel requis) et robuste (adaptation dynamique Ă  l’évolutiondu rĂ©seau – ajout et retrait de RCSFs ou de nƓuds).

Ce manuscrit est organisĂ© en sept chapitres subdivisĂ©s en trois parties. Dans la pre-miĂšre partie, aprĂšs le prĂ©sent chapitre consacrĂ© Ă  l’introduction, nous faisons au cha-pitre 2, un Ă©tat de l’art de la problĂ©matique de routage dans les RCSF. La notion de

Page 23: Configuration dynamique et routage pour l'internet des objets

Chapitre 1. Introduction Générale 3

mĂ©trique de routage est prĂ©sentĂ©e ainsi que l’étude des mĂ©triques les plus rĂ©pandues.Les efforts de standardisation sont prĂ©sentĂ©s en fin de chapitre. Nous poursuivons auchapitre 3 par la prĂ©sentation du paradigme de l’Internet des Objets et des principalestechnologies associĂ©es. Nous abordons le problĂšme de l’interconnexion des RCSF Ă l’Internet des Objets et les principaux travaux effectuĂ©s dans la littĂ©rature pour sa miseen Ɠuvre.

Dans la deuxiĂšme partie de cette thĂšse, nous dĂ©taillons les principales contribu-tions rĂ©alisĂ©es pour l’optimisation du routage RPL. Au chapitre 4, nous dĂ©crivons lemodĂšle d’énergie utilisĂ© et son implĂ©mentation. Nous poursuivons par la conceptionde la fonction d’objectif proposĂ©e. Cette derniĂšre utilise la capacitĂ© Ă©nergĂ©tique rĂ©si-duelle des nƓuds pour construire la topologie de routage. Au chapitre 5, nous prĂ©-sentons le modĂšle de combinaison de mĂ©trique de routage par la logique floue et samise en Ɠuvre sous Contiki [DGV04], systĂšme d’exploitation largement utilisĂ© pourles capteurs sans fil.

La derniĂšre partie de cette thĂšse se consacre Ă  la conception d’une architecture d’in-terconnexion des RCSF Ă  l’Internet ainsi que sa rĂ©alisation grĂące Ă  des capteurs et pas-serelles Ă  moindre coĂ»t. Nous terminons par une conclusion et quelques perspectivesĂ  notre travail.

Page 24: Configuration dynamique et routage pour l'internet des objets
Page 25: Configuration dynamique et routage pour l'internet des objets

5

PremiĂšre partie

Contexte et État de l’Art

Page 26: Configuration dynamique et routage pour l'internet des objets
Page 27: Configuration dynamique et routage pour l'internet des objets

7

Chapitre 2

Routage dans les RĂ©seaux de Capteurssans Fil

2.1 Problématique de routage dans les RCSF

Un rĂ©seau de capteurs sans fil (RCSF) est constituĂ© de plusieurs centaines voiremilliers de nƓuds. Ces derniers, dĂ©ployĂ©s Ă  grande Ă©chelle dans un environnementd’intĂ©rĂȘt, mesurent les paramĂštres physiques de l’environnement et les transformenten signaux Ă©lectriques. Le traitement de ces informations (mesures, Ă©vĂ©nements, cor-rĂ©lation entre donnĂ©es collectĂ©es, . . . ) prĂ©sente un grand intĂ©rĂȘt pour de nombreusesapplications. Typiquement, chaque nƓud est dotĂ© d’une unitĂ© de traitement (le mi-crocontrĂŽleur), unitĂ© de captage (une ou plusieurs interfaces embarquĂ©es), unitĂ© decommunication (puce radio) et une unitĂ© d’alimentation (batterie embarquĂ©e ou mo-dule de rĂ©cupĂ©ration d’énergie de l’environnement). La figure 2.1 illustre une architec-ture gĂ©nĂ©rique de rĂ©seau de capteurs. Du fait de leurs caractĂ©ristiques matĂ©rielles limi-tĂ©es, les capteurs acheminent les informations collectĂ©es vers un centre de traitement(plus puissant) Ă  travers une ou plusieurs stations de base (puits ou sink en anglais).Les nƓuds sont gĂ©nĂ©ralement dotĂ©s d’une interface radio ayant une portĂ©e limitĂ©e. Ilsdoivent par consĂ©quent communiquer entre eux ou avec la station de base grĂące Ă  desliens radio multi-sauts.

Le routage consiste en un ensemble de mĂ©canismes mis en Ɠuvre par les nƓudspour sĂ©lectionner un chemin « intĂ©ressant » afin d’acheminer les donnĂ©es collectĂ©es auxdiffĂ©rents points de conservation et d’exploitation. Dans les rĂ©seaux de capteurs, latĂąche de routage soulĂšve de nombreux dĂ©fis inhĂ©rents Ă  leurs caractĂ©ristiques parti-culiĂšres. Les problĂšmes posĂ©s diffĂšrent grandement de ceux rencontrĂ©s dans les autrestypes de rĂ©seaux sans fil tels que les rĂ©seaux mobiles Ad-hoc ou cellulaires [AY05]. Pre-miĂšrement, les nƓuds sont peu robustes et contraints en Ă©nergie, en puissance de calculet capacitĂ© de stockage. Par consĂ©quent, les ressources doivent ĂȘtre utilisĂ©es avec mi-nutie. DeuxiĂšmement, les capteurs sont dissĂ©minĂ©s de façon ad-hoc et doivent s’auto-organiser pour former le rĂ©seau et acheminer les informations. TroisiĂšmement, dansun RCSF, le modĂšle de trafic dominant est de type multipoint Ă  point (encore dĂ©signĂ©par l’anglicisme convergecast). Le flux de donnĂ©es capturĂ©es est envoyĂ© des diffĂ©rentspoints d’acquisition vers la station de base. QuatriĂšmement, les donnĂ©es collectĂ©es ren-ferment un certain niveau de redondance. Plusieurs capteurs situĂ©s dans le mĂȘme voi-sinage rĂ©colteront des mesures identiques concernant le phĂ©nomĂšne Ă©tudiĂ©. L’exploi-tation de cette redondance par le routage contribuerait Ă  amĂ©liorer la vie du rĂ©seau et

Page 28: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 8

Internet

Cible

CapteurCapteur ADC ADC (convertisseur)(convertisseur)

ProcesseurProcesseur

StockageStockageÉmetteur/RĂ©cepteurÉmetteur/RĂ©cepteur

Unité d'alimentationUnité d'alimentation

Stationde Base

Unité de captage Unité de traitementUnité de traitement Unité de communicationUnité de communication

FIGURE 2.1 – Composantes d’un rĂ©seau de capteurs sans fil

l’utilisation de la bande passante. CinquiĂšmement, la conception d’un protocole pourrĂ©seau de capteurs peut ĂȘtre Ă©troitement liĂ©e Ă  l’application cible. Par exemple, le be-soin d’acheminer les informations de surveillance d’un site industriel ou une centralenuclĂ©aire nĂ©cessite une latence bornĂ©e, qui est diffĂ©rente de celle tolĂ©rĂ©e par une appli-cation de relevĂ© de tempĂ©rature classique (surveillance d’un bĂątiment).

En raison des diffĂ©rences Ă©voquĂ©es prĂ©cĂ©demment, de nombreux algorithmes ontĂ©tĂ© proposĂ©s dans la littĂ©rature pour le routage dans les RCSFs [AY05 ; PNV13]. Ilsprennent en compte Ă  la fois, les caractĂ©ristiques matĂ©rielles des nƓuds et les exi-gences liĂ©es Ă  l’application cible ou Ă  l’architecture du rĂ©seau. Rechercher et mainte-nir une route dans les RCSFs n’est donc pas une tĂąche aisĂ©e, car les contraintes Ă©ner-gĂ©tique et de mĂ©moire, couplĂ©es Ă  certains Ă©vĂ©nements (dĂ©faillance d’un nƓud parexemple) entraĂźne des changements frĂ©quents et imprĂ©visibles dans la topologie. Pourminimiser la consommation Ă©nergĂ©tique, les protocoles de routage pour RCSF propo-sĂ©s utilisent des mĂ©canismes de routage dits « classiques », auxquels il faut ajouter destechniques spĂ©cifiques Ă  ce type d’environnement. Les techniques les plus significa-tives sont : l’agrĂ©gation de donnĂ©es ; le clustering ; l’assignation de rĂŽles spĂ©cifiques Ă certains nƓuds ; le paradigme de routage centrĂ© sur la donnĂ©e (data-centric routing enanglais). Suivant la façon dont le rĂ©seau est organisĂ©, les solutions de routage sont clas-sĂ©es comme Ă©tant : « Ă  plat », hiĂ©rarchiques ou basĂ©es sur la position des nƓuds. Parailleurs, selon la mĂ©thode d’acheminement des informations ou les traitements rĂ©ali-sĂ©s sur celles-ci, on parlera de routage multi-chemins, orientĂ©-QdS (QualitĂ© de Service)

Page 29: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 9

ou Ă  base de requĂȘtes.

2.1.1 Facteurs influençant la conception du routage dans les RCSFs

2.1.1.1 Type de déploiement

La façon dont les nƓuds sont dĂ©ployĂ©s dans un rĂ©seau est spĂ©cifique Ă  l’applica-tion. Celle-ci influe sur les performances du routage. Les nƓuds peuvent ĂȘtre dĂ©ployĂ©sselon un modĂšle prĂ©dĂ©fini ou de façon alĂ©atoire. Dans un dĂ©ploiement prĂ©dĂ©fini, lesnƓuds seront manuellement disposĂ©s (installation d’alarmes ou dĂ©pĂŽt de sondes derelevĂ© de tempĂ©rature dans un bĂątiment). Les donnĂ©es peuvent alors ĂȘtre routĂ©es surdes chemins prĂ©Ă©tablis. Par contre, dans un dĂ©ploiement alĂ©atoire, les nƓuds sont dis-sĂ©minĂ©s au hasard dans l’environnement surveillĂ© (largage Ă  partir d’un hĂ©licoptĂšrepar exemple). Ceci rĂ©sulte trĂšs souvent en une distribution non uniforme. Une auto-organisation est alors nĂ©cessaire pour la dĂ©couverte et la construction de la topologiede routage. Du fait des limitations liĂ©es Ă  l’énergie et Ă  la bande passante, les cheminsinter-nƓuds se font alors le plus souvent Ă  travers des liens radio multi-sauts.

2.1.1.2 Consommation énergétique

La principale source de consommation Ă©nergĂ©tique dans un nƓud est la radio. Lapuissance de transmission Ă©tant proportionnelle au carrĂ© de la distance sĂ©parant lasource Ă  la destination, les transmissions un-saut ne sont pas toujours possibles : prĂ©-sence d’obstacle, Ă©loignement des nƓuds (dĂ©ploiement alĂ©atoire), . . . Pour assurer sadouble fonction de source et relayeur d’informations, le nƓud doit dĂ©penser son Ă©ner-gie avec soin. De celle-ci dĂ©pend la durĂ©e de vie du rĂ©seau. En cas de dĂ©faillance decertains nƓuds (principalement due Ă  l’épuisement de la batterie), le routage devraits’adapter, en effectuant une rĂ©organisation de la topologie suivie du re-routage despaquets par d’autres chemins.

2.1.1.3 ModÚle de transmission de données

Le captage et l’envoi des donnĂ©es dans un RCSF sont non seulement dĂ©pendantsde l’application cible, mais aussi fonction du niveau de criticitĂ© de l’information. Ondistingue alors les modĂšles de donnĂ©es continus, Ă©vĂ©nementiel, Ă  base de requĂȘte ouune combinaison de ceux-ci [TAGH02]. Dans le modĂšle continu, les nƓuds envoient lesinformations au point de collecte de façon pĂ©riodique. Ce modĂšle est appropriĂ© pourles applications de surveillance continue d’une grandeur physique, comme un relevĂ©de tempĂ©rature ou de luminositĂ©. Dans les modĂšles Ă  base de requĂȘte ou Ă©vĂ©nementiel,la transmission des informations est dĂ©clenchĂ©e par le sink ou lorsqu’un Ă©vĂ©nement seproduit : changement soudain ou seuil de valeur dĂ©passĂ© dans les donnĂ©es captĂ©es.Ces modĂšles conviennent pour les applications temps-critique. Une combinaison detous ces modĂšles est Ă©galement possible dans un dĂ©ploiement.

Page 30: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 10

2.1.1.4 HĂ©tĂ©rogĂ©nĂ©itĂ© et capacitĂ© des nƓuds

Dans de nombreux travaux et pour des raisons de simplicitĂ©, les nƓuds du RCSFsont supposĂ©s ĂȘtre homogĂšnes : initialement, ils possĂšdent les mĂȘmes capacitĂ©s d’éner-gie et de mĂ©moire, de puissance de calcul et de portĂ©e de transmission. Toutefois, cer-taines applications peuvent nĂ©cessiter d’associer des fonctions spĂ©cifiques (par exemplecapter, relayer, agrĂ©ger les informations) Ă  certains nƓuds. De nombreux protocolesde routage de la littĂ©rature sĂ©lectionnent une « tĂȘte de grappe » (cluster-head en an-glais) [HCB00]. Ce dernier est alors chargĂ© d’agrĂ©ger les donnĂ©es de la grappe (cluster)avant leur envoi vers la destination finale. Le routage est alors dit hiĂ©rarchique, car lestransmissions se faisant sur au moins deux niveaux. Cependant, implĂ©menter plus defonctions sur un nƓud comparĂ© Ă  ses pairs, contribue Ă  plus rapidement Ă©puiser sonĂ©nergie. Des dispositions doivent alors ĂȘtre prĂ©vues pour prendre en considĂ©ration cefait. Ceci passe notamment par l’introduction de nƓuds dotĂ©s d’une plus grande capa-citĂ© Ă©nergĂ©tique, ayant une plus grande portĂ©e de transmission ou offrant une bandepassante plus importante.

Par ailleurs, le phĂ©nomĂšne observĂ© peut nĂ©cessiter de dĂ©ployer des nƓuds em-barquant des interfaces de captage diffĂ©rents. On pourrait par exemple dĂ©ployer unevariĂ©tĂ© de capteurs de tempĂ©rature, d’humiditĂ©, en mĂȘme temps que des capteurs depression ou de dĂ©tection de prĂ©sence. Il est alors envisageable que les informationsremontĂ©es par les nƓuds le soient Ă  des frĂ©quences diffĂ©rentes, soumises Ă  diversesqualitĂ© de service et selon des modĂšles de transmission de donnĂ©es diffĂ©rents. Toutceci impose des dĂ©fis Ă  surmonter par le routage.

2.1.1.5 Agrégation de données

Lorsque des nƓuds gĂ©nĂšrent des donnĂ©es redondantes, les paquets issus de ceux-ci peuvent ĂȘtre agrĂ©gĂ©es de sorte Ă  rĂ©duire le nombre de transmissions nĂ©cessaires.L’agrĂ©gation est la fusion de donnĂ©es provenant de sources diffĂ©rentes en utilisant unopĂ©rateur d’agrĂ©gation. Il peut s’agir de la suppression des doublons, de la recherchedu minimum, du maximum ou de la moyenne des valeurs collectĂ©es. Certaines de cesopĂ©rations peuvent ĂȘtre rĂ©alisĂ©es partiellement sur chaque nƓud. Bien que celles-cine soient pas aussi consommatrices d’énergie que les communications, un gain signi-ficatif d’énergie peut ĂȘtre rĂ©alisĂ© Ă  travers l’agrĂ©gation. Dans certaines architectures,l’opĂ©ration d’agrĂ©gation est dĂ©volue Ă  un nƓud plus puissant en processeur, mĂ©moireet portĂ©e radio.

2.1.1.6 Tolérance aux pannes

Un certain nombre de nƓuds peuvent subir des dĂ©faillances matĂ©rielles, avoir desproblĂšmes de communication dus aux interfĂ©rences, ou ĂȘtre hors d’usage du fait del’épuisement de leur batterie. Cette dĂ©faillance de quelques nƓuds ne devrait pas com-promettre toutes les opĂ©rations rĂ©seaux. La couche MAC et le routage doivent s’adap-ter pour trouver de nouveaux liens et chemins d’acheminement de donnĂ©es Ă  la stationde base. Ceci peut nĂ©cessiter par exemple, une recherche active d’alternative par unesignalisation plus importante ou une adaptation de la puissance de transmission. Uneredirection des paquets sur des routes alternatives dont les nƓuds disposent encore

Page 31: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 11

de suffisamment d’énergie se fera. Un certain niveau de redondance est requis pourqu’un RCSF soit ainsi tolĂ©rant aux pannes.

2.1.1.7 Passage Ă  l’échelle

Le nombre de nƓuds dĂ©ployĂ©s dans un RCSF peut ĂȘtre de l’ordre de plusieurscentaines ou milliers, voire d’avantage. Tout schĂ©ma de routage devrait s’accommoderavec cette grande quantitĂ© de nƓuds. Si la densitĂ© du rĂ©seau est Ă©levĂ©e, certains nƓudspourront ĂȘtre maintenus Ă  l’état de sommeil, jusqu’à ce qu’un Ă©vĂ©nement particulierdĂ©clenche leur rĂ©veil. Les nƓuds restants assureront alors la fonction d’acquisition etde transport des informations.

2.1.1.8 Dynamique réseau

Si l’on considĂšre les entitĂ©s constitutives d’une application de RCSF Ă  savoir, les sen-ders (nƓud d’acquisition et de relais d’information), le sink et le phĂ©nomĂšne observĂ©,chacune d’elles peut ĂȘtre soit mobile soit statique. Une grande majoritĂ© d’architecturesrĂ©seaux suppose que les senders et le sink sont tous statiques. Toutefois de plus en plusde dĂ©ploiements considĂšrent une mobilitĂ© de l’un ou l’autre. Router les informations enprovenance ou Ă  destination de nƓuds en mouvement est un vĂ©ritable dĂ©fi. La stabilitĂ©de la route devient alors un paramĂštre prĂ©pondĂ©rant, en plus des autres facteurs (Ă©ner-gie, bande passante, mĂ©moire). Le phĂ©nomĂšne observĂ© peut lui aussi ĂȘtre dynamique,comme par exemple, une application de dĂ©tection et de suivi d’une cible. Pour un phĂ©-nomĂšne statique, le rĂ©seau peut ĂȘtre rĂ©actif, remontant uniquement le trafic lorsqu’unĂ©vĂ©nement se produit. Un phĂ©nomĂšne dynamique quant Ă  lui, nĂ©cessite trĂšs souventun envoi rĂ©gulier d’informations et par consĂ©quent d’avantage de donnĂ©es Ă  achemi-ner.

2.1.1.9 Qualité de Service

Pour de nombreuses applications, les donnĂ©es doivent ĂȘtre dĂ©livrĂ©es Ă  la destina-tion dans un dĂ©lai bornĂ© aprĂšs leur acquisition par le capteur, autrement elles devien-draient inexploitables et sans intĂ©rĂȘt. Toutefois la conservation d’énergie, ayant un im-pact direct sur la durĂ©e de vie du rĂ©seau, est gĂ©nĂ©ralement considĂ©rĂ©e comme plus im-portante que la qualitĂ© des donnĂ©es Ă  transfĂ©rer. DĂšs que l’énergie se fait rare, pour desapplications n’ayant pas de contraintes trĂšs strictes par rapport aux dĂ©lais, les nƓudspeuvent ĂȘtre amenĂ©s Ă  rĂ©duire la qualitĂ© des informations livrĂ©es de sorte Ă  maximiserl’utilisation du rĂ©seau.

2.1.2 Classification des protocoles de routage dans les RCSFLes différents protocoles de routage proposé pour RCSF peuvent se classer selon la

structure du rĂ©seau sous-jacent ou suivant les opĂ©rations dĂ©volues au routage [AY05].Dans la premiĂšre catĂ©gorie on distingue : le routage Ă  « plat », le routage hiĂ©rarchiqueet le routage basĂ© sur la position des nƓuds. La classification Ă  base d’opĂ©rations quantĂ  elle, s’attachera Ă  distinguer les protocoles de routage suivant la façon dont les infor-mations sont manipulĂ©es ou accĂ©dĂ©es. On aura alors dans cette derniĂšre : le routageorientĂ©-donnĂ©es, le routage multi-chemins ou le routage basĂ© sur la QdS.

Page 32: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 12

2.1.2.1 Routage à « plat »

Ici, tous les nƓuds ont les mĂȘmes rĂŽles et fonctionnalitĂ©s. L’ensemble collabore Ă  latĂąche d’acquisition d’information (captage) et Ă  leur (re)transmissions. Le routage peutĂȘtre proactif ou rĂ©actif. Dans le premier cas, les routes sont construites au prĂ©alable etsont disponibles en permanence pour la remontĂ©e des informations. Dans une approcherĂ©active, les routes ne sont Ă©tablies qu’à la demande. AussitĂŽt que les informationssollicitĂ©es sont acheminĂ©es Ă  la destination, les routes utilisĂ©es sont supprimĂ©es.

2.1.2.2 Routage hiérarchique

En raison de la densitĂ© Ă©levĂ©e des capteurs, un routage Ă  plat (un niveau) peu entraĂź-ner la surcharge de la station de base ou celui des nƓuds proches (phĂ©nomĂšne de hot-spot). Cette surcharge engendrerait augmentation de latence Ă  cause de la contention auniveau MAC et une consommation excessive d’énergie. Pour y remĂ©dier et faire faceĂ  la charge de trafic importante sans dĂ©grader la QdS, plusieurs passerelles peuventĂȘtre dĂ©ployĂ©es ou le rĂ©seau subdivisĂ© en clusters ou grappes [HCB00]. Contrairementau routage Ă  « plat », les nƓuds ont des fonctions et rĂŽles diffĂ©rents. L’idĂ©e principaleĂ©tant celle de rĂ©server la part de consommation Ă©nergĂ©tique dĂ©volue aux communi-cations multi-sauts Ă  l’intĂ©rieur du cluster. On rĂ©duit ainsi grandement le nombre decommunications en direction du sink. Dans chaque grappe, un nƓud particulier : lecluster-head se chargera d’agrĂ©ger les informations de la grappe avant des les achemi-ner vers la station de base. Le cluster-head peut alors, en fonction de ses performances,de l’étendue du rĂ©seau ou du protocole de routage, communiquer avec la station debase en un saut ou par multi-sauts impliquant les autres cluster-heads. La constitutiondes clusters et la sĂ©lection des cluster-heads contribuent Ă  amĂ©liorer le passage Ă  l’échelle,la consommation Ă©nergĂ©tique des nƓuds et la durĂ©e de vie globale du rĂ©seau.

2.1.2.3 Routage basĂ© sur la position des nƓuds

Dans cette approche encore appelĂ©e routage gĂ©ographique, les informations sur laposition des nƓuds sont exploitĂ©es pour router les informations dans le rĂ©seau [KK00 ;YEG01]. L’échange des informations de position entre voisins permet de calculer descoordonnĂ©es virtuelles ou rĂ©elles et ainsi d’estimer la distance qui les sĂ©pare. À cet effet,les nƓuds peuvent ĂȘtre Ă©quipĂ©s d’un dispositif GPS 1, mais celui-ci est trĂšs consomma-teur d’énergie. La plupart des solutions pour RCSF se fondent plutĂŽt sur des moyensplus Ă©conomes. L’estimation de la puissance du signal reçu (RSSI : Received SignalStrength Indication) en constitue un exemple. Toutefois, un inconvĂ©nient majeur decette technique est qu’elle n’est pas trĂšs prĂ©cise pour estimer la distance entre nƓuds[HV12a]. Des solutions hybrides utilisant quelques ancres (nƓuds robustes avec GPS)dissĂ©minĂ©es dans le rĂ©seau sont proposĂ©es. Les autres nƓuds calculent leur coordon-nĂ©es virtuelles par rapport Ă  ces ancres via des solutions plus efficaces en Ă©nergie etacheminent le trafic sur la base des coordonnĂ©es calculĂ©es.

1. Global Positionning System : systĂšme de gĂ©olocalisation fonctionnant au niveau mondial et repo-sant sur l’exploitation de signaux radio Ă©mis par des satellites dĂ©diĂ©s.

Page 33: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 13

2.1.2.4 Routage orienté-données

Dans ce paradigme, l’adressage diffĂšre de celui des rĂ©seaux traditionnels oĂč chaquenƓud possĂšde un identifiant unique : l’adresse IP et les routes sont crĂ©Ă©es entre despairs, puis gĂ©rĂ©es au niveau de la couche rĂ©seau de la pile OSI. La station de base dif-fuse plutĂŽt dans le rĂ©seau des intĂ©rĂȘts correspondant Ă  des requĂȘtes, puis attend d’éven-tuelles rĂ©ponses [Int+03]. Chaque nƓud qui reçoit un intĂ©rĂȘt le compare aux donnĂ©esdont il dispose et rĂ©pond en consĂ©quence. Une approche naĂŻve serait pour un nƓud,d’inonder son voisinage de la requĂȘte lorsqu’il n’est pas en mesure de la satisfaire. Tou-tefois, cette inondation conduirait Ă  gĂ©nĂ©rer des copies multiples de l’information de-mandĂ©e et engendrerait une consommation excessive d’énergie. Des mesures doiventĂȘtre prises pour surmonter cela. Puisque l’interrogation est faite sur les donnĂ©es plu-tĂŽt qu’à un nƓud spĂ©cifique, la dĂ©finition d’un systĂšme de nommage et d’attributs estĂ©galement nĂ©cessaire pour caractĂ©riser les informations interrogĂ©es par la requĂȘte.

2.1.2.5 Routage multi-chemins

Dans l’objectif d’amĂ©liorer les performances et la tolĂ©rance aux pannes, plutĂŽt qued’utiliser un seul chemin, plusieurs routes sont installĂ©es et exploitĂ©es en mĂȘme temps[YBO09]. La robustesse du protocole est alors mesurĂ©e comme son aptitude Ă  trouverune route alternative en cas de dĂ©faillance de la route principale [Gan+01]. Mainte-nir en permanence les routes secondaires nĂ©cessite l’envoi pĂ©riodique de messages decontrĂŽle et par consĂ©quent une consommation Ă©nergĂ©tique supplĂ©mentaire pour lesnƓuds. La fiabilitĂ© du routage peut ainsi ĂȘtre amĂ©liorĂ©e au dĂ©triment d’une surchargeliĂ©e Ă  la maintenance de plusieurs routes [Dul+03].

2.2 MĂ©triques de routage

Une mĂ©trique de routage est une donnĂ©e quantitative ou qualitative utilisĂ©e pourĂ©valuer le coĂ»t d’un chemin. Le « meilleur chemin » du point de vue du routage est celuiqui satisfait toutes les contraintes (lorsqu’il en existe) et possĂšde le coĂ»t le plus faibleau regard de la mĂ©trique utilisĂ©e. Il faut noter que mĂ©trique de routage et contraintene sont pas exclusives, l’une par rapport Ă  l’autre. Par exemple, on pourrait construiredes routes offrant le nombre de sauts minimum, tout en Ă©liminant les liens dont ledĂ©lai excĂšde une valeur donnĂ©e. La valeur de la mĂ©trique est influencĂ©e par diffĂ©rentsfacteurs. Elles peuvent ĂȘtre liĂ©s Ă  l’environnement ou Ă©maner du rĂ©seau lui-mĂȘme. Lesfacteurs environnementaux sont ceux qui ne sont pas sujets aux conditions du trafic.On peut citer par exemple, la position du nƓud, sa mobilitĂ© et l’interfĂ©rence due auxsources externes au rĂ©seau. Les facteurs Ă©manant du rĂ©seau sont ceux qui dĂ©pendentdirectement ou indirectement du trafic gĂ©nĂ©rĂ© par le rĂ©seau. Parmi ceux-ci on retrouvede façon non exhaustive, la congestion, l’interfĂ©rence interne (au rĂ©seau) et l’énergieconsommĂ©e.

2.2.1 Types de métriques

On peut classer les mĂ©triques en fonction des caractĂ©ristiques qu’elles exhibent oude certaines de leurs propriĂ©tĂ©s mathĂ©matiques.

Page 34: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 14

2.2.1.1 MĂ©trique de nƓud ou de lien

Cette catĂ©gorie permet de diffĂ©rencier les mĂ©triques selon l’objet sur lequel est rĂ©a-lisĂ© la mesure. Il peut s’agir du canal de communication entre les nƓuds, on parle demĂ©trique de lien ; dans le cas contraire on parle de mĂ©trique de nƓud. Le nombre desauts et l’énergie rĂ©siduelle sont des exemples de mĂ©triques de nƓud. Une mĂ©triquede lien peut ĂȘtre symĂ©trique si elle a la mĂȘme valeur dans les deux sens de la liai-son ; elle est asymĂ©trique sinon. Formellement, soit mi,j la mesure de la mĂ©trique delien dans le sens allant du nƓud i vers le nƓud j. Elle est dite symĂ©trique si et seule-ment si mi,j = mj,i. La latence (dĂ©lai) et le dĂ©bit (bande passante instantanĂ©e) n’ayantpas forcĂ©ment la mĂȘme valeur pour les deux sens de la communication, les mĂ©triquescorrespondantes sont asymĂ©triques. L’ETX qui mesure la fiabilitĂ© du canal de commu-nication dans les deux sens (que nous prĂ©senterons plus en dĂ©tail dans une sectionultĂ©rieure) est un bon exemple de mĂ©trique symĂ©trique.

2.2.1.2 Dynamique ou Statique

Une mĂ©trique est dite dynamique si sa valeur change dans le temps et elle est ditestatique dans le cas contraire. Beaucoup d’attention doit ĂȘtre accordĂ©e lors de l’utili-sation d’une mĂ©trique dynamique. En effet, une utilisation naĂŻve peut conduire Ă  desinstabilitĂ©s de routage. En particulier dans les RCSF, en raison de la variabilitĂ© de cer-tains paramĂštres du rĂ©seau (qualitĂ© du lien radio, intensitĂ© du trafic), la valeur d’unemĂ©trique dynamique peut changer Ă  une frĂ©quence Ă©levĂ©e dans le temps. Pour attĂ©-nuer l’impact de ces changements sur les dĂ©cisions de routage, on doit utiliser un algo-rithme Ă  base de seuils (ou hystĂ©rĂ©sis 2) qui dĂ©termine Ă  quel moment il est nĂ©cessaired’envoyer les mises Ă  jour aux voisins. Une grande majoritĂ© de mĂ©triques utilisĂ©es dansles rĂ©seaux IP sont de ce type. Toutefois il en existe qui sont invariants dans le temps etconstituent des exemples de mĂ©triques statiques, comme le nombre d’interfaces d’unnƓud donnĂ©.

2.2.1.3 MĂ©trique unidimensionnelle ou multidimensionnelle

Une mĂ©trique multidimensionnelle pour le routage est reprĂ©sentĂ©e comme un vec-teur de valeurs, chacune de ces valeurs Ă©tant dĂ©crite par une mĂ©trique unidimension-nelle. On la dĂ©signe encore sous le terme « mĂ©trique multiple » car elle peut se dĂ©-composer en ses composantes unidimensionnelles. L’utilisation de ce type de mĂ©triquepermet d’optimiser plus d’un aspect de performance rĂ©seau. Il serait par exemple pos-sible de combiner le nombre de sauts et le dĂ©bit pour construire une mĂ©trique multidi-mensionnelle qui exhibe les propriĂ©tĂ©s de ses deux mĂ©triques de base. Il est nĂ©cessairede dĂ©finir un opĂ©rateur de combinaison qui indique comment les mĂ©triques de basesont utilisĂ©es pour rĂ©aliser la mĂ©trique composite. Il peut s’agir d’une Ă©valuation desmĂ©triques dans l’ordre lexicographique ou tout autre opĂ©rateur d’agrĂ©gation dont lamise en Ɠuvre peut s’avĂ©rer plus complexe. À titre d’illustration, une combinaisonlexicographique 〈saut–dĂ©bit〉 correspond au chemin offrant le meilleur dĂ©bit parmi leschemins les plus courts (en nombre de sauts), tandis qu’une combinaison 〈dĂ©bit–saut〉reprĂ©sente une mĂ©trique diffĂ©rente. Cette derniĂšre reprĂ©sente le chemin le plus court

2. propriĂ©tĂ© d’un systĂšme qui tend Ă  demeurer dans un certain Ă©tat quand la cause extĂ©rieure qui aproduit le changement d’état a cessĂ©.

Page 35: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 15

parmi les chemins les plus larges (en terme de dĂ©bit). Dans ces deux exemples, c’esttoujours la premiĂšre composante qui est considĂ©rĂ©e pour Ă©valuer les chemins, la se-conde n’étant utilisĂ©e qu’en cas d’égalitĂ© de valeur dans la composante prĂ©cĂ©dente.Il a Ă©tĂ© dĂ©montrĂ© que la recherche du meilleur chemin dans un rĂ©seau utilisant unemĂ©trique multidimensionnelle est un problĂšme NP-complet [WC96]. De ce fait, l’uti-lisation d’une mĂ©trique multiple s’avĂšre plus complexe.

2.2.2 ConsidĂ©rations liĂ©es Ă  l’implĂ©mentationIl existe diverses possibilitĂ©s d’acquĂ©rir les informations nĂ©cessaires Ă  la mise en

Ɠuvre d’une mĂ©trique :

— Surveillance passive (passive monitoring) du rĂ©seau : Les informations requisessont collectĂ©es par le nƓud, par analyse du trafic entrant ou sortant. En combi-nant ces informations avec d’autres donnĂ©es ou en appliquant une formule ma-thĂ©matique la mĂ©trique peut ĂȘtre dĂ©rivĂ©e. C’est la mĂ©thode utilisĂ©e par exemplepour estimer le dĂ©bit des informations transitant par un nƓud.

— Informations liĂ©es au nƓud : Dans cette situation, aucun effort n’est rĂ©alisĂ©e parle nƓud pour obtenir la mesure souhaitĂ©e. Une simple lecture de valeurs dansles variables d’environnement ou systĂšmes est rĂ©alisĂ©e. C’est le cas par exemplepour le calcul de la taille de la file d’attente des paquets, de l’énergie rĂ©siduelleet du nombre d’interfaces. Il faut noter que pour les mesures dynamiques, unprocessus interne au nƓud peut ĂȘtre utilisĂ©e pour alimenter la variable lue.

— Piggy-backing : La mĂ©trique est conçue en insĂ©rant des informations addition-nelles (obtenues par sondage par exemple) au trafic rĂ©gulier ou aux paquetsde contrĂŽle du protocole de routage. Il convient de noter qu’aucun paquet decontrĂŽle supplĂ©mentaire n’est requis pour la mise en Ɠuvre de la mĂ©trique.Cette mĂ©thode est communĂ©ment utilisĂ©e pour implĂ©menter la mesure du dĂ©laide bout-en-bout.

— Sondage Actif (Active Probing) : Des paquets spĂ©cifiques sont envoyĂ©s dans lerĂ©seau pour mesurer les paramĂštres de la mĂ©trique.

Les informations requises pour l’implĂ©mentation d’une mĂ©trique devraient ĂȘtre dis-ponibles Ă  la couche rĂ©seau du modĂšle OSI, car c’est Ă  ce niveau qu’a lieu le routage.Toutefois, une grande majoritĂ© de travaux de recherche dans les RCSF s’accordent surla nĂ©cessitĂ© d’utiliser les approches cross-layer 3 pour rĂ©cupĂ©rer certains paramĂštres dela mĂ©trique dans les autres couches.

2.2.3 Métriques usuelles pour les RCSFPour répondre aux besoins spécifiques des applications pour RCSF, de nombreuses

mĂ©triques de routage ont Ă©tĂ© proposĂ©es dans la littĂ©rature. L’économie de l’énergie

3. possibilitĂ© de s’affranchir de l’utilisation stricte des interfaces standardisĂ©es de communicationentre couches voisines du modĂšle OSI. RĂ©alisĂ© dans le but d’obtenir un gain (performance, fonctionna-litĂ©, optimisation . . .) en fournissant une interaction inter-couches riche au delĂ  de l’interface standard.

Page 36: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 16

Ă©tant un facteur majeur pour le rĂ©seau, la plupart de ces mĂ©triques utilisent une ap-proche passive pour obtenir les informations pour leur mise en Ɠuvre.

2.2.3.1 Le nombre de sauts

Cette mĂ©trique est trĂšs largement utilisĂ©e dans les rĂ©seaux sans fil en gĂ©nĂ©ral, enraison de sa simplicitĂ©. Chaque lien traversĂ© pour atteindre la destination participe Ă coĂ»t Ă©gal d’une unitĂ©, sans tenir compte d’autres caractĂ©ristiques de la liaison (qualitĂ©du lien, taux de transmission, contention, . . . ). Par consĂ©quent, le protocole de rou-tage recherche le chemin le plus court en nombre de nƓuds traversĂ©s. Les auteurs de[DCAB02] ont montrĂ© expĂ©rimentalement que l’utilisation du nombre de sauts commemĂ©trique de routage dans un RCSF peut rĂ©sulter en de mauvaises performances. Eneffet, cette mĂ©trique a tendance Ă  privilĂ©gier des liens entre nƓuds Ă©loignĂ©s (qui sonten gĂ©nĂ©ral de piĂštre qualitĂ© en terme de fiabilitĂ©) aux liens courts (beaucoup plus ro-bustes). L’utilisation de liens de grande portĂ©e peut rĂ©sulter en une consommationd’énergie plus importante que la concatĂ©nation de plusieurs liens courts.

2.2.3.2 L’ETX et mĂ©triques apparentĂ©es

Partant du constat prĂ©cĂ©dent sur les performances mĂ©diocres du nombre de sauts,[DC+05] propose une mĂ©trique qui prend en compte la fiabilitĂ© du canal de transmis-sion et qui capture les taux de perte dans les deux sens de communication. L’ETX 4 est lenombre moyen de transmissions nĂ©cessaire (incluant les retransmissions), pour qu’unpaquet soit envoyĂ© sur la liaison et soit correctement reçu par le voisin [DC+05]. L’in-tĂ©rĂȘt majeur de cette mĂ©trique rĂ©side dans le fait que, non seulement elle amĂ©liore letaux de livraison global des paquets (en sĂ©lectionnant les chemins les plus fiables), elleparticipe Ă©galement Ă  rĂ©duire l’énergie totale consommĂ©e (car Ă©vitant les liens nĂ©ces-sitant d’avantage de retransmissions). Si Ps→d reprĂ©sente le taux de transmission avecsuccĂšs des paquets de s vers d alors l’ETX sur un saut est dĂ©fini mathĂ©matiquement parla relation 2.1.

ETX =1

Ps→d × Pd→s(2.1)

Bien que les auteurs n’aient pas indiquĂ© d’opĂ©rateur d’agrĂ©gation de cette mĂ©triquesur le chemin, l’addition est employĂ©e dans la plupart des travaux qui en font usage.

Pour l’implĂ©mentation initiale prĂ©sentĂ© dans [DC+05], chaque nƓud diffuse toutes lessecondes dans le voisinage des annonces de couche de liaison de donnĂ©es. Le voisin in-crĂ©mente chaque fois le nombre d’annonces reçues et calcule le taux de perte au bout de10 secondes, qu’il retourne Ă  l’émetteur. Cette mĂ©thode peut engendrer une surchargeimportante. Une alternative consiste Ă  effectuer une mesure passive par piggybackingdes numĂ©ros de segments dans les paquets de donnĂ©es. Toutefois, cette approche n’es-time l’ETX que sur les liens dĂ©jĂ  promus par le routage. Celui des liens vers des voisinspotentiels (non encore sĂ©lectionnĂ©s comme saut suivant) n’est pas Ă©valuĂ©.

Pour s’accommoder aux technologies radio et Ă  divers modĂšles de rĂ©seaux sans fil (RĂ©-seau Ad-Hoc, RĂ©seau Mesh, RCSF, etc.) de nombreuses variantes de l’ETX sont propo-sĂ©es. En l’occurrence, l’ETT (Expected Transmission Time) est une extension de l’ETX

4. littĂ©ralement de l’anglais : Expected Tx [i.e.Transmission] Count

Page 37: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 17

prenant en considĂ©ration le dĂ©bit de transmission et la taille des donnĂ©es [DPZ04]. Ellecorrespond au temps moyen nĂ©cessaire pour transmettre correctement un paquet Ă  unvoisin donnĂ©. Elle est dĂ©terminĂ©e par la formule : ETT = ETX × T

D, oĂč T est la taille

moyenne des paquets et D le débit de transmission.

De nombreuses technologies sans fil offrent plusieurs canaux qui ne se chevauchentpas. Les auteurs de [DPZ04] propose d’exploiter cette possibilitĂ© dans une mĂ©triquebasĂ©e sur l’ETX et apparentĂ©e Ă  la prĂ©cĂ©dente : le WCETT (Weighted CummulativeExpected Transmission Time). Cette mĂ©trique prend en compte non seulement les liensn’utilisant pas les mĂȘmes canaux, mais limite Ă©galement l’interfĂ©rence intra-flux 5. Ce-pendant, cette mĂ©trique prĂ©sente un inconvĂ©nient majeur : elle n’est pas isotonique[YWK05] (nous examinerons cette propriĂ©tĂ© ultĂ©rieurement au §4.2.3). Le risque deboucle de routage lors de la recherche de plus court chemin est Ă©levĂ©.

2.2.3.3 Le délai

Bien que cette mĂ©trique ne soit pas soit pas trĂšs rĂ©pandue dans les RCSFs, elles’avĂšre essentielle pour les applications temps-rĂ©els ou sensibles aux retards. Contrai-rement aux mĂ©triques prĂ©cĂ©dentes, elle prend en considĂ©ration l’effet de la conten-tion (backoff ) due Ă  la couche MAC, de mĂȘme que les retards engendrĂ©s par la rĂ©-Ă©mission des trames en cas de collision. Plusieurs Ă©lĂ©ments participent au dĂ©lai en-couru par un paquet qui transite par un nƓud spĂ©cifique. Soit D ce dĂ©lai, on a : D =Dtrait+Dfile+Dtrans+Dprop, oĂčDtrait est le dĂ©lai mis par le nƓud pour traiter le paquetet Dfile le dĂ©lai mis par le paquet en file de sortie, en attente de la disponibilitĂ© du sup-port et la transmission des paquets qui le prĂ©cĂ©dent. Dtrans est le dĂ©lai de transmission,il dĂ©pend uniquement de la bande passante et la taille du paquet. Enfin, Dprop est ledĂ©lai de propagation (il est trĂšs faible, en raison de la vitesse Ă©levĂ©e de la propagationdu signal dans l’air). Parmi tous ces Ă©lĂ©ments le seul qui soit variable pour un paquetdonnĂ© est Dfile. En effet, la durĂ©e passĂ©e par un paquet dans la file d’attente dĂ©pend del’état du trafic dans le rĂ©seau. La mĂ©trique ETT Ă©voquĂ©e plus haut ne prend en compteque la seule composanteDtrans. Elle ne change malheureusement pas pour des paquetsde mĂȘme taille et ne reflĂšte donc pas la rĂ©alitĂ© des conditions du trafic.

Le dĂ©lai est sujet Ă  beaucoup de variations. Pour cette raison, la plupart des pro-tocoles qui s’en servent n’utilisent pas la valeur mesurĂ©e Ă  l’instant, mais plutĂŽt uneestimation de dĂ©lai calculĂ© comme une moyenne pondĂ©rĂ©e, glissante dans le temps.

Lorsque le dĂ©lai est calculĂ© de façon unidirectionnelle (de l’émetteur vers le rĂ©cep-teur), il est nĂ©cessaire que les horloges internes des nƓuds soient synchronisĂ©es. Dansl’environnement distribuĂ© des RCSF, la mise en place d’horloges synchrones engendreune complexitĂ© d’implĂ©mentation importante . L’implĂ©mentation communĂ©ment rĂ©ali-sĂ©e est alors le dĂ©lai aller-retour, plus connu sous son anglicisme RTT (Round-Trip Time).Les donnĂ©es transportent une estampille horaire lors de leur envoi au prochain saut.

5. L’interfĂ©rence intra-flux se produit lorsque les radios de plusieurs liens appartenant au mĂȘme fluxou mĂȘme chemin de donnĂ©es opĂšrent sur le mĂȘme canal et sont en compĂ©tition pour l’accĂšs au mĂ©dium.Il faut distinguer celle-ci de l’interfĂ©rence inter-flux qui est l’interfĂ©rence causĂ©e par d’autres flux, maisopĂ©rant sur le mĂȘme canal radio.

Page 38: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 18

Une fois reçu, le voisin retourne un acquittement contenant l’estampille initiale. L’ini-tiateur peut ainsi Ă©valuer le dĂ©lai aller-retour mis par le paquet pour un seul saut (i.e.vers un nƓud voisin). Les dĂ©lais un-saut sont ensuite concatĂ©nĂ©s sur le chemin pourobtenir le dĂ©lai de bout-en-bout.

2.2.3.4 La taille de file d’attente des paquets

Les nƓuds peuvent recevoir plus de paquets qu’ils ne sont capables de traiter. Deplus, ils peuvent concourir pour l’accĂšs au support lors de la transmission des don-nĂ©es. En consĂ©quence, ils possĂšdent chacun un tampon de rĂ©ception (resp. de trans-mission) pour conserver les donnĂ©es entrantes (resp. sortantes) en attendant leur trai-tement (resp. leur transmission). Ces tampons fonctionnent par dĂ©faut selon le modĂšlede file d’attente : « premier entrĂ©, premier servi ». La taille de ces files constitue unbon indicateur de la charge du trafic dans le rĂ©seau et permet d’anticiper la congestionen Ă©vitant les goulots d’étranglement rĂ©seau. DĂšs que le tampon de rĂ©ception ou detransmission est plein, le nƓud n’est plus capable de conserver de nouvelles donnĂ©es.L’excĂ©dent des paquets reçus est alors abandonnĂ©, ceci conduit Ă  une perte de donnĂ©espouvant impacter sĂ©vĂšrement sur les performances de l’application.

2.2.3.5 L’énergie

De nombreuses propositions en vue d’optimiser la consommation Ă©nergĂ©tique dansles RCSFs ont Ă©tĂ© faites dans la littĂ©rature. Elles passent par : la conception de couchesMAC efficaces en Ă©nergie [Dun11], des solutions de routage prenant en compte laconsommation Ă©nergĂ©tique des nƓuds par estimation de l’intensitĂ© du trafic [PNV13]ou par construction d’une mĂ©trique de routage basĂ©e sur l’énergie [YBO09 ; Yoo+10 ;Kam+13], le contrĂŽle de la puissance de transmission [Ana+09] et le clustering [HCB00].D’autres travaux optent plutĂŽt pour la possibilitĂ© de recharger les batteries Ă  partir del’énergie rĂ©coltĂ©e de l’environnement [Kau+14 ; SZ16].

L’énergie nĂ©cessaire pour transmettre k bits Ă  un nƓud voisin Ă  une distance d del’émetteur est donnĂ©e par la relation 2.2 et celle consommĂ©e pour la rĂ©ception de k bitsĂ  la mĂȘme distance, donnĂ©e par 2.3 [HCB00].

ETx(k, d) = Eelec ∗ k + Δamp ∗ k ∗ d2 (2.2)

ERx(k, d) = Eelec ∗ k (2.3)

oĂč Eelec est l’énergie dissipĂ©e par les composants Ă©lectroniques pour la transmissionou la rĂ©ception d’un bit, et Δamp l’énergie consommĂ©e par l’amplificateur pour que lesignal transmis soit de qualitĂ© acceptable.

La façon dont une mĂ©trique fondĂ©e sur l’énergie est conçue dĂ©pend de l’objectif pour-suivi par le routage. Deux approches sont gĂ©nĂ©ralement adoptĂ©es :

— minimiser la consommation globale du rĂ©seau,— maximiser la date Ă  laquelle l’un des nƓuds aura complĂštement Ă©puisĂ© sa bat-

terie.

Page 39: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 19

Dans la premiĂšre approche, l’on comptabilise l’énergie consommĂ©e par les diffĂ©rentsflux de donnĂ©es envoyĂ©s dans le rĂ©seau [SWR98]. Soit ei,j , l’énergie nĂ©cessaire pourenvoyer un paquet du nƓud i et le recevoir au nƓud j (obtenu comme indiquĂ© par lesrelations 2.2 et 2.3). L’énergie totale requise pour envoyer un paquet de la source s versla destination d est alors :

E =∑

i∈[s...d]

ei,i+1 (2.4)

[s . . . d] Ă©tant l’ensemble des nƓuds sur le chemin allant de s Ă  d. Le principal inconvĂ©-nient de cette approche est qu’elle ne considĂšre pas l’énergie disponible sur le nƓudet embarquĂ©e dans la batterie. Bien que celle-ci maximise l’énergie totale due au trafic,des goulots d’étranglements Ă©nergĂ©tiques peuvent apparaĂźtre dans le rĂ©seau, certainsnƓuds consommant plus rapidement leur Ă©nergie que d’autres.

Pour Ă©viter ces goulots d’étranglements Ă©nergĂ©tiques, la seconde approche rechercheplutĂŽt Ă  Ă©quilibrer la consommation Ă©nergĂ©tique de tous les nƓuds [Yoo+10 ; Kam+13].Elle se fonde sur l’hypothĂšse suivante : « si les Ă©nergies des nƓuds sont distribuĂ©esle plus Ă©quitablement possible, ils Ă©puiseront leur batterie Ă  peu prĂšs dans la mĂȘmepĂ©riode ». Pour atteindre cet objectif, il est possible de considĂ©rer l’énergie rĂ©siduelledes nƓuds pendant le routage, i.e celle rĂ©ellement contenue dans leur batterie. Nousreviendrons en dĂ©tail sur cette approche dans un chapitre ultĂ©rieur.

2.2.3.6 Le RSSI

A la diffĂ©rence de l’ETX qui permet d’estimer les liens les plus robustes au niveaudes couches MAC et RĂ©seau, le RSSI (Received Signal Strength Indicator) est une mĂ©-trique exploitant les informations de la couche physique pour sĂ©lectionner les « bons »liens (meilleure qualitĂ© du signal reçu) [HV12a ; LXC14]. Toutefois, cette mĂ©trique n’estpas trĂšs prĂ©cise et prĂ©sente des zones grises pour lesquelles le taux de rĂ©ception de pa-quets Ă  la destination pour des valeurs similaires de RSSI varie Ă©normĂ©ment [SL06].Pour cette raison, la mĂ©trique LQI (Link Quality Indicator) est plus souvent utilisĂ©e, enparticulier avec des radios de type CC2420 oĂč elle est beaucoup plus prĂ©cise que leRSSI et permet d’obtenir un meilleur taux de rĂ©ception de paquet.

2.3 Standardisation

La large gamme d’applications qu’offrent les RCSF a suscitĂ© un fort intĂ©rĂȘt de lacommunautĂ© scientifique et industrielle autour des technologies qui s’y rapportent.Toutefois, les solutions proposĂ©es ont tardĂ© Ă  ĂȘtre transfĂ©rĂ©es du milieu scientifiquevers le monde industriel. De nombreuses implĂ©mentations des protocoles proposĂ©sdĂ©pendaient de chaque constructeur de matĂ©riels, rendant incompatibles les systĂšmesconçus. La nĂ©cessitĂ© d’obtenir des systĂšmes interopĂ©rables s’est imposĂ©e aux diffĂ©rentsacteurs et a conduit Ă  des efforts de standardisation de protocoles pour RCSF.

Page 40: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 20

2.3.1 Standards de l’IETF relatifs aux RCSFRiche de sa longue expĂ©rience en matiĂšre de protocoles et technologies standardi-

sĂ©es pour l’Internet, l’IETF a mis en place des nombreux groupes de travail relatifs Ă  lastandardisation des protocoles pour RCSF, parmi lesquels les plus significations sontlistĂ©s ci-dessous. Leurs travaux prend en compte la nĂ©cessitĂ© de rendre compatible lestechnologies destinĂ©es aux RCSF compatibles Ă  IP.

— ROLL (Routing Over Low-power and Lossy Network) : ce groupe de travail estchargĂ© de proposer une solution de routage adaptĂ©e aux rĂ©seaux de type LLN(Low-power and Lossy Network) ; i.e ceux oĂč les communications sont instableset les nƓuds Ă©quipĂ©s d’une interface radio Ă  faible puissance d’émission. Cegroupe de travail a publiĂ© en 2012 RPL [Win+12], comme rĂ©sultat de son cahierdes charges initial. De nombreux autres standards constituant des documentsd’accompagnement de ce protocole ont Ă©tĂ© Ă©galement publiĂ©s, ou sont en coursde publication. La figure 2.2 regroupe les principaux standards relatifs au pro-tocole RPL.

RPLRFC6550

TrickleRFC6206

OF 0RFC6552

MRHOFRFC6719

MĂ©triquesRFC6551

Options RPLRFC6553

Routes P2PRFC6997

UrbainRFC5548

IndustriesRFC5673

DomotiqueRFC5826

ImmeublesRFC5867

FIGURE 2.2 – Standards relatifs au protocole RPL

— 6LoWPAN (IPv6 over Low-Power Wireless Personal Area Networks) : Pour per-mettre aux paquets IPv6 (1280 octets) d’ĂȘtre transportĂ©s sur le RCSF, dont laMTU (Maximum Transfer Unit) au niveau physique est trĂšs limitĂ©e (127 oc-tets pour la couche PHY IEEE802.15.4), des adaptations sont nĂ©cessaires. Legroupe de travail 6LoWPAN est chargĂ© de dĂ©finir les mĂ©canismes de compres-sion Ă  rĂ©aliser pour permettre ce transport. Cela rend possible la connexiondes rĂ©seaux IPv6 standards aux rĂ©seaux contraints en ressources que consti-tuent les RCSF. Ils fondent leurs travaux sur le document de travail RFC4919

Page 41: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 21

[KMS07], dĂ©finissant les hypothĂšses, problĂšmes et objectifs poursuivis. Le prin-cipal standard publiĂ© par ce groupe est dĂ©signĂ© sous le nom « couche d’adapta-tion 6LoWPAN »[Mon+07 ; HT11].

— CoRE (Constrained RESTful Environments) : Il a pour objectif de fournir uncadre pour les applications destinĂ©es Ă  ĂȘtre dĂ©ployĂ©es dans les rĂ©seaux IP con-traints en ressources matĂ©rielles. Les travaux de ce groupe ont conduit Ă  la pu-blication du protocole CoAP [SHB14]. Le cadre applicatif est dĂ©fini selon l’ar-chitecture REST 6. CoAP rend possible l’accĂšs aux informations entre clients etserveur dans un rĂ©seau IP contraint.

Ces diffĂ©rents groupes collaborent entre eux. La contribution des universitĂ©s, institutsde recherche et industriels dans ceux-ci est significative. Il est important de noter queles standards proposĂ©s sont tous orientĂ©s IPv6. En effet, l’espace d’adressage IPv4 Ă©tanttrĂšs limitĂ© et compte tenu du nombre potentiellement Ă©levĂ© de nƓuds dans le rĂ©seau,la prĂ©cĂ©dente version d’IP n’est plus envisageable. La figure 2.3 prĂ©sente la pile desprotocoles standardisĂ©s pour les RCSF.

PHYIEEE802.15.4

MACIEEE802.15.4

6LoWPANRFC4919

UDPRFC1240

CoAPRFC7252

IPv6RFC4291

RPLRFC6550

FIGURE 2.3 – Pile protocolaire standardisĂ©e pour les RCSF

2.3.2 Le protocole de routage RPL

RPL (littéralement IPv6 Routing Protocol for LLN) [Win+12] est un protocole à vec-teur de distance proactif, conçu pour les besoins de RCSF fonctionnant sous IPv6. Il a

6. Representational State Transfer (ou RESTful) : architecture pour les systĂšmes hypermĂ©dia (texte,images, sons, vidĂ©os, etc.) distribuĂ©s assurant l’interopĂ©rabilitĂ© entre des machines sur Internet par l’uti-lisation des services Web. Elle est caractĂ©risĂ©e par le modĂšle de communication client-serveur et destransactions sans Ă©tat sur des ressources individuelles entre le client et le serveur.

Page 42: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 22

Ă©tĂ© spĂ©cifiquement pensĂ© pour optimiser le trafic de type multipoint Ă  point (conver-gecast). Toutefois, il fournit des mĂ©canismes pour prendre en compte le trafic point Ă multipoint ainsi que le trafic point Ă  point. Le groupe de travail ROLL a commencĂ© parpublier l’ensemble des exigences souhaitĂ©es pour le protocole relatives aux classes derĂ©seaux et d’applications supportĂ©s. Il s’agit d’applications pour la domotique [BBP10],tel que le contrĂŽle de l’éclairage, des stores et volets, la surveillance des donnĂ©es detempĂ©rature ou d’alarmes. Les besoins pour la gestion de grands bĂątiments comme lesadministrations (universitĂ©s, hĂŽpitaux, bureaux, etc.) sont spĂ©cifiĂ©s dans le documentRFC5867 [Mar+10]. Ceux relatifs Ă  l’automatisation des processus industriels Ă  tra-vers des solutions connectĂ©es sans fils sont Ă©galement spĂ©cifiĂ©s [Pis+09]. Il faut noterici que, les contraintes de dĂ©lai sont beaucoup plus prononcĂ©es dans ce type d’envi-ronnement. Le dernier champ d’utilisation est celui des applications urbaines partici-pant Ă  l’émergence du concept de ville intelligente (systĂšme de distribution intelligentd’électricitĂ©, feux de signalisation et gestion du transport, surveillance environnemen-tale, etc.) [Doh+09]. Le routage a Ă©tĂ© conçu pour permettre Ă  plusieurs applications decohabiter simultanĂ©ment dans le mĂȘme rĂ©seau physique grĂące Ă  la notion d’instanceRPL. Ainsi chaque instance optimise une (ou plusieurs) mĂ©trique(s) ou satisfait Ă  descontraintes spĂ©cifiques liĂ©es Ă  l’application.

2.3.2.1 Formation de la topologie

Étant donnĂ© un ensemble de nƓuds dĂ©ployĂ©s (de façon planifiĂ©e ou alĂ©atoire),le routage organise le rĂ©seau comme un (ou plusieurs) arbre(s) orientĂ©(s) (DODAG :Destination-Oriented Directed Acyclic Graph), chacun Ă©tant enracinĂ© en un point ap-pelĂ© racine (DODAG root). Un dĂ©ploiement RPL dans le rĂ©seau peut comporter plu-sieurs instances, chacune Ă©tant constituĂ©e d’un ou plusieurs DODAG. Bien qu’il soit pos-sible pour un nƓud d’appartenir Ă  plusieurs instances Ă  la fois, il ne peut toutefois par-ticiper qu’à un seul DODAG par instance. Pour des raisons de simplicitĂ©, nous considĂ©-rerons par la suite que nous n’avons qu’un seul DODAG, soit une seule racine RPL dansla topologie. Cette derniĂšre peut alors servir de passerelle vers l’Internet classique. Lafigure 2.4 prĂ©sente la topologie dont nous nous servirons pour les illustrations. Les ti-rets reprĂ©sentent la possibilitĂ© de communication sans fil entre les nƓuds.

Initialement (figure 2.4A), seule la racine fait partie intĂ©grante de la topologie activeRPL. Elle envoie pĂ©riodiquement dans son voisinage des informations de configura-tion embarquĂ©es dans des messages de contrĂŽle RPL spĂ©cifiques appelĂ©s DIO (DODAGInformation Objet), comme illustrĂ© sur la figure 2.4B. Les nƓuds qui reçoivent ces in-formations peuvent rejoindre le rĂ©seau en choisissant leur prochain saut (parent RPL)vers la racine. DĂšs qu’il fait partie intĂ©grante de la topologie RPL, le nƓud commencepar envoyer ses propres DIO (cf. figure 2.4C). Lorsqu’un nƓud reçoit plusieurs DIOconsistants Ă©manant de voisins diffĂ©rents, un choix doit ĂȘtre opĂ©rĂ© pour sĂ©lectionnerparmi ceux-ci, celui offrant le meilleur coĂ»t au regard de l’objectif recherchĂ© et descontraintes imposĂ©es par l’application. C’est par exemple le cas pour le nƓud centraldans la topologie finale (figure 2.4D) qui opte pour le parent de droite au dĂ©trimentde celui de gauche. La fonction d’objectif (OF) est responsable de l’indication sur lesmĂ©canismes de ce choix. Il est important de noter que tous les DIO reçus par un nƓud,

Page 43: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 23

RacineRacine RacineRacine

RacineRacine RacineRacine

[A][A] [B][B]

[C][C] [D][D]

FIGURE 2.4 – Construction du DODAG

ne sont pas toujours valides. En particulier, si celui-ci provient d’un voisin situĂ© dansun niveau infĂ©rieur de l’arbre topologique, choisir ce dernier conduirait Ă  une bouclede routage. La notion de rang est alors utilisĂ©e pour dĂ©terminer quels sont les DIO Ă considĂ©rer dans la recherche d’un prochain saut.

2.3.2.2 Messages de contrĂŽle RPL

Pour mettre en place et maintenir la topologie de routage, quatre nouveaux messagesICMPv6 [CDG06] ont été définis pour le protocole RPL :

— DIO (DODAG Information Object) : Ce message est utilisĂ© pour la crĂ©ation desroutes ascendantes. Il se propage dans le rĂ©seau en sens inverse, et transportede nombreux paramĂštres nĂ©cessaires Ă  la mise en place de la topologie. Ces para-mĂštres sont fournis uniquement par la racine RPL, les autres nƓuds ne servantque de relais. La dissĂ©mination des DIO se fait par dĂ©faut en multidiffusion,mais en cas de sollicitation spĂ©cifique d’un nƓud, la monodiffusion est utilisĂ©e.

— DIS (DODAG Information Sollicitation) : Elle est utilisĂ©e par un nƓud qui sou-haite rejoindre la topologie (envoi en multidiffusion) ou rĂ©clamant des infor-mations de configuration plus rĂ©centes (envoi en monodiffusion). Dans tous les

Page 44: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 24

cas, un nƓud recevant un DIS rĂ©pond Ă  l’initiateur par une monodiffusion depaquet DIO.

— DAO (DODAG Advertisement Object) : Ce message est utilisĂ© uniquement en casde nĂ©cessitĂ© de disposer des routes descendantes (pour le trafic point Ă  point parexemple). Autrement il peut ĂȘtre dĂ©sactivĂ© pour Ă©conomiser les ressources (mĂ©-moire et bande passante). Il est envoyĂ© Ă  la racine RPL quand le mode de fonc-tionnement est non conservation (non-storing mode) ou au(x) parent(s) en modeconservation (storing mode). Contrairement aux autres messages de contrĂŽle RPL,il est le seul toujours envoyĂ© en monodiffusion et nĂ©cessite un acquittement dudestinataire.

— DAO-Ack (DAO-Acknowledgment) : Il est utilisĂ© par la destination en rĂ©ponseĂ  un message DAO reçu pour acquitter ce dernier. En cas de non rĂ©ception duDAO-Ack par la source, celle-ci peut rĂ©Ă©mettre le DAO initial.

Le DIO est prĂ©vu pour transporter de nombreuses options, toutefois certaines infor-mations sont obligatoires. Parmi celles-ci on a : RPLinstanceID qui identifie de façonunique l’instance RPL dans le rĂ©seau, le DODAGID qui caractĂ©rise la racine (trĂšs souventl’une de ses adresses IPv6), le numĂ©ro de version du DODAG permettant de savoir si lesinformations reçues sont « fraĂźches » ou obsolĂštes et le rang du nƓud Ă©metteur dans leDODAG qui renseigne sur sa position dans l’arbre construit sur le rĂ©seau. Le DAO quantĂ  lui transporte les prĂ©fixes rĂ©seaux permettant de rendre accessible par monodiffusionles nƓuds situĂ©s en profondeur de l’arbre.

2.3.2.3 Maintenance de la topologie

Le routage Ă©tant proactif, la cohĂ©rence des informations de routage doit ĂȘtre assurĂ©een permanence. Pour attĂ©nuer la consommation Ă©nergĂ©tique inhĂ©rente aux messagesDIO envoyĂ©s, le routage utilise l’algorithme du Trickle [Lev+11]. L’idĂ©e de base decet algorithme est d’adapter dynamiquement la frĂ©quence d’envoi des DIO en fonctionde la qualitĂ© des informations Ă  transmettre : plus la topologie est stable, moins il estnĂ©cessaire d’envoyer les informations de contrĂŽle. Initialement, la frĂ©quence d’envoides DIO est prise dans un intervalle minimum, dĂ©fini par le paramĂštre de configu-ration Imin. Cet intervalle double rĂ©guliĂšrement Ă  l’expiration du minuteur d’envoi,jusqu’à une valeur maximale : Imax Ă  laquelle elle se stabilise. DĂšs qu’une incohĂ©renceest constatĂ©e ou qu’une nouvelle information est disponible, le minuteur de l’algo-rithme est rĂ©initialisĂ©. Ceci entraĂźne des envois plus frĂ©quents et par consĂ©quent, unepropagation plus rapide de l’information souhaitĂ©e dans le rĂ©seau. Le rĂ©seau est dansun Ă©tat stable (i.e consistant) lorsque tous les nƓuds ont obtenu les mĂȘmes paramĂštresde configuration et que ceux-ci sont cohĂ©rents (i.e. non contradictoires). Toutefois, lanature non fiable des transmissions et les pertes Ă©ventuelles de paquets peut conduireĂ  un Ă©tat d’incohĂ©rence (faisant suite Ă  un prĂ©cĂ©dent Ă©tat stable).

Une situation pratique de rĂ©solution d’incohĂ©rence se produit, lorsqu’un nƓud re-çoit d’un voisin des informations obsolĂštes (numĂ©ro de version d’instance antĂ©rieur).Il doit alors rĂ©initialiser son minuteur Trickle pour diffuser rapidement l’informa-tion « fraĂźche » dont il dispose. Les inconsistances sont ainsi rĂ©solues localement, parinteraction entre nƓuds voisins. Elles se propagent de proche en proche pour couvrirl’ensemble du rĂ©seau.

Page 45: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 25

2.3.2.4 Rang, détection et gestion des boucles de routage RPL

Pour Ă©viter la formation de boucles de routage, RPL qui est un routage Ă  vecteur dedistance, utilise un gradient. Ce dernier indique pour chaque nƓud, sa position rela-tive vis-Ă -vis de la racine comparĂ©e aux nƓuds du voisinage. Il s’agit d’une grandeurscalaire encore appelĂ©e rang dans le standard. La façon dont le rang est calculĂ© parla fonction d’objectif n’est pas prĂ©cisĂ©e, mais il doit exhiber des propriĂ©tĂ©s gĂ©nĂ©riquesquelle que soit la fonction d’objectif utilisĂ©e. Bien que sa valeur soit dĂ©rivĂ©e de la mĂ©-trique, il s’en diffĂ©rencie : il doit est ĂȘtre monotone (en particulier dĂ©croĂźtre) lorsqu’onprogresse vers la racine, mais ne doit pas nĂ©cessairement changer aussi rapidementque la mĂ©trique utilisĂ©e.

MalgrĂ© l’utilisation du rang pour sĂ©lectionner comme parent les nƓuds plus prochesde la racine (i.e. ayant un rang infĂ©rieur Ă  celui du nƓud considĂ©rĂ©), des boucles peuventapparaĂźtre. Ceci est dĂ» Ă  la nature non fiable du support (perte d’un ou plusieurs DIOannonçant des mĂ©triques de moins bonne qualitĂ©) et des inconsistances Ă©voquĂ©es prĂ©-cĂ©demment. RPL offre un mĂ©canisme pour dĂ©tecter l’existence d’une boucle pendantla transmission des donnĂ©es. Une nouvelle option [HV12b] est incorporĂ©e dans les pa-quets IPv6 qui transitent par un rĂ©seau utilisant RPL. Elle prĂ©voit un bit qui peut ĂȘtrepositionnĂ© pour indiquer le sens de progression du paquet (0→ vers-le-bas et 1→vers-le-haut). Si un paquet est reçu d’un nƓud fils avec un bit marquĂ© 0, le nƓudparent en dĂ©duit l’existence d’une boucle (inconsistance). Il dĂ©truit le paquet et prendles mesures nĂ©cessaires pour Ă©liminer la boucle. Ce bit de sens de progression du pa-quet devrait ĂȘtre utilisĂ© pour toutes les donnĂ©es transitant par un rĂ©seau RPL.

Deux mĂ©canismes de rĂ©paration sont prĂ©vus : la rĂ©paration locale et la rĂ©parationglobale. DĂšs qu’une boucle est dĂ©tectĂ©e, le nƓud concernĂ© dĂ©clenche une rĂ©parationlocale. Celle-ci fonctionne suivant le principe d’empoisonnement de la route. Le nƓudse dĂ©tache de son DODAG et annonce un rang de valeur infinie, ayant pour consĂ©-quence de l’invalider dans la liste des parents potentiels de tous ses fils (sous-DODAG).AprĂšs s’ĂȘtre dĂ©tachĂ© du DODAG, le nƓud s’y attache Ă  nouveau dĂšs qu’il a trouvĂ© unparent alternatif. Il recommence alors Ă  annoncer un rang de valeur non-infiniedĂ©terminĂ©e Ă  partir de celle de son nouveau parent.

Contrairement Ă  la rĂ©paration locale qui n’a d’incidence que sur le voisinage immĂ©-diat du nƓud l’ayant dĂ©clenchĂ© (incluant son sous-DODAG), la rĂ©paration globale im-pacte l’ensemble du DODAG. Elle est toujours dĂ©clenchĂ©e par la racine RPL et impliqueune reconstruction complĂšte du graphe RPL. Un implĂ©mentation simple de celle-ciconsiste pour la racine, Ă  annoncer dans les DIO un numĂ©ro de version supĂ©rieur Ă  lavaleur courante.

2.3.2.5 Fonction d’objectif RPL

La fonction d’objectif permet de spĂ©cifier comment les mĂ©triques de routage sonttransformĂ©es en rang. Elle est Ă©galement responsable de la dĂ©finition de la maniĂšredont le nƓud sĂ©lectionne le meilleur parent de la liste de ses parents potentiels. L’IETFn’a dĂ©fini que deux fonctions d’objectifs RPL :

Page 46: Configuration dynamique et routage pour l'internet des objets

Chapitre 2. Routage dans les RĂ©seaux de Capteurs sans Fil 26

— OF0 (Objective Function 0) : Elle implĂ©mente le nombre de sauts comme mĂ©-trique, tous les liens participent avec le mĂȘme poids pour la sĂ©lection du chemin[Thu12].

— MRHOF (Minimum Rank Hysterisis Objective Function) : Elle est implĂ©mentĂ©epour fonctionner avec les mĂ©triques additives [GL12]. Dans sa dĂ©finition, l’IETFutilise l’ETX comme mĂ©trique Ă  optimiser, mais toute autre mĂ©trique additive(nombre de sauts, dĂ©lai) pourrait ĂȘtre Ă©galement utilisĂ©e. MRHOF se sert d’unehystĂ©rĂ©sis pour limiter les variations liĂ©es Ă  l’emploi d’une mĂ©trique dynamique.

Dans les documents d’accompagnement du standard [Vas+12], plusieurs mĂ©triquessont prĂ©vues pour fonctionner avec le protocole, cependant la libertĂ© est donnĂ©e auconcepteur de dĂ©finir comment les utiliser. Par ailleurs, aucune recommandation n’estfaite sur la façon de les combiner pour prendre en considĂ©ration la qualitĂ© de service(QdS) ou de les utiliser selon les spĂ©cificitĂ©s liĂ©es Ă  l’application.

Page 47: Configuration dynamique et routage pour l'internet des objets

27

Chapitre 3

Du RĂ©seau de Capteurs Ă  l’Internet desObjets

3.1 Technologies de l’Internet des Objets

Le terme Internet des Objets (de l’anglais Internet of Things : IoT) a Ă©tĂ© pour lapremiĂšre fois utilisĂ© par K. Ashton en 1999, co-fondateur de Auto-ID Center au MITdans l’une de ses prĂ©sentations [Ash09]. Il y dĂ©crit sa vision de la façon dont les ob-jets et personnes du monde physique peuvent ĂȘtre recensĂ©s et gĂ©rĂ©s informatiquementgrĂące Ă  la technologie RFID (Radio-Frequency IDentification). Depuis lors, ce concept abeaucoup Ă©voluĂ© grĂące aux Ă©normes progrĂšs effectuĂ©s dans divers domaines technolo-giques : allant de celui des microcontrĂŽleurs, de la nanotechnologie, des capteurs et ac-tionneurs Ă  celui des technologies sans fils. Il fait aujourd’hui rĂ©fĂ©rence Ă  la possibilitĂ©de connecter tout objet du quotidien Ă  l’Internet traditionnel [MF10]. Les objets phy-siques ne sont plus dĂ©connectĂ©s du monde virtuel, mais peuvent ĂȘtre contrĂŽlĂ©s Ă  dis-tance et agir comme des points d’accĂšs Ă  diffĂ©rents services Internet. Dans ce contexte,les « objets » sont vus comme des entitĂ©s dotĂ©es de capacitĂ©s de calcul et de commu-nication, donc possĂ©dant un degrĂ© d’intelligence et capables d’interagir avec d’autresobjets, eux mĂȘmes connectĂ©s au rĂ©seau mondial de donnĂ©es. En effet depuis quelquesdĂ©cennies, les progrĂšs de l’informatique embarquĂ©e ont permis de pouvoir empaqueter :unitĂ© de traitement (CPU), interface de communication et de capture, unitĂ© d’alimenta-tion, . . . dans un volume de l’ordre du centimĂštre cube, voir du millimĂštre cube, crĂ©antainsi de minuscules dispositifs informatiques intelligents. Ces Ă©quipements de par leurtaille, peuvent ĂȘtre intĂ©grĂ©s dans divers objets usuels (lunettes, porte-clĂ©s, barquettesalimentaires et jouets), transportĂ©s par des personnes (captage des paramĂštres phy-siques et surveillance des personnes vulnĂ©rables) ou incorporĂ©s dans l’environnement(habitat, forĂȘt, centrale nuclĂ©aire et chaussĂ©e). Le rĂ©seau sans fil ainsi formĂ© [monde vir-tuel] rend possible l’observation, le suivi et le contrĂŽle (actionneur) de l’environnementphysique [monde rĂ©el].

Cisco dans son livre blanc relatif Ă  l’IoT illustre l’évolution du nombre d’objetsconnectĂ©s comme indiquĂ© par la figure 3.1 [Eva11]. Aujourd’hui, celui-ci dĂ©passe deloin le nombre d’habitants sur la planĂšte et il devrait continuer d’augmenter pour at-teindre les 50 milliards d’ici 2020. Chacun de ces Ă©quipements connectĂ©s Ă  l’Internet nĂ©-cessitera une unique adresse logique. L’adressage IPv4 possĂšde 32 bits et ne disposeque de 4.3 milliards d’adresses potentielles. Il n’est donc plus envisageable commesolution d’adressage, IPv6 s’impose alors comme seule alternative pour l’IoT. Cette

Page 48: Configuration dynamique et routage pour l'internet des objets

Chapitre 3. Du RĂ©seau de Capteurs Ă  l’Internet des Objets 28

version du protocole est utilisĂ©e pour fournir une large gamme de services et d’appli-cations et servir de support Ă  la convergence numĂ©rique illustrĂ© Ă  la figure 3.2.

FIGURE 3.1 – Évolution du nombre d’objets connectĂ©s de l’IoT [Eva11].

FIGURE 3.2 – Convergence numĂ©rique [VF14].

Le RCSF est un Ă©lĂ©ment constitutif essentiel vers la mise en Ɠuvre de cet Internetdes Objets. La combinaison de toutes ces innovations technologiques, Ă  la fois dansle domaine du dĂ©veloppement logiciel, du matĂ©riel embarquĂ©, couplĂ©e Ă  l’intĂ©grationdes technologies de l’Internet et la standardisation des protocoles pour RCSF ont per-mis une large adoption de ce nouveau paradigme. Toutefois, de nombreux dĂ©fis sontsoulevĂ©s :

— Mise en rĂ©seau et interconnexion des « objets » Ă  l’Internet, du fait de l’hĂ©tĂ©ro-gĂ©nĂ©itĂ© du matĂ©riel et des logiciels impliquĂ©s,

Page 49: Configuration dynamique et routage pour l'internet des objets

Chapitre 3. Du RĂ©seau de Capteurs Ă  l’Internet des Objets 29

— FlexibilitĂ© et passage Ă  l’échelle des applications, services et Ă©quipements,— Automatisation des procĂ©dures et des configurations,— Manipulation des grandes masses de donnĂ©es,— SĂ©curisation des services et des donnĂ©es personnelles collectĂ©es.

L’Internet des Objets n’est pas constituĂ© d’une unique technologie (cf. figure 3.2),mais utilise diverses technologies nouvelles de communications, matĂ©rielles et logi-cielles mises ensemble dans une plate-forme de communication globale basĂ©e sur IP.

3.1.1 La Radio Identification (RFID)Le plus souvent désigné par son acronyme anglais RFID (Radio Frequency Iden-

tification), il s’agit d’une technologie permettant de mĂ©moriser et de rĂ©cupĂ©rer Ă  dis-tance des donnĂ©es. Elle revĂȘt une importance capitale pour l’Internet des Objets carelle fut Ă  l’origine de ce paradigme. L’objectif initial Ă©tant celui d’identifier et de rĂ©a-liser un suivi minutieux des biens dans une chaĂźne d’approvisionnement ou dans ledomaine de la logistique. Cette technologie est utilisĂ©e aujourd’hui dans beaucoupd’autres domaines. Un systĂšme d’identification par radio-frĂ©quence est constituĂ© detrois Ă©lĂ©ments :

— Une Radio-Ă©tiquette (RFID tag) : c’est un circuit intĂ©grĂ© mĂ©morisant l’informa-tion sur l’objet auquel la puce est incorporĂ©e. Il est muni d’une antenne pour larĂ©ception/transmission des signaux. En gĂ©nĂ©ral, il s’agit d’un dispositif passif,c’est Ă  dire qui ne nĂ©cessite aucune source d’énergie extĂ©rieure que celle fourniepar le lecteur au moment de l’interrogation. Il faut noter que de nos jours, desversions actives existent. Elles embarquent une petite batterie leur permettantd’émettre des signaux.

— Un lecteur : utilisĂ© pour envoyer le signal radio Ă  la puce RFID et capturer la rĂ©-ponse de cette derniĂšre. Le systĂšme opĂšre dans la bande de frĂ©quence non licen-ciĂ©e ISM 1 (125 Khz en basse frĂ©quence, 13.56 Mhz en haute frĂ©quence, 868− 928Mhz en ultra-haute frĂ©quence et 2.45/5.8 Ghz dans la bande des micro-ondes).

— Un intergiciel : il reçoit et traite les informations reçues du lecteur.

Un systĂšme RFID assurera deux fonctions basiques pour l’Internet des Objets : l’identi-fication et la communication. Son principe de fonctionnement gĂ©nĂ©ral est le suivant. Lelecteur initie la communication en diffusant une requĂȘte. Les radio-Ă©tiquettes du voisi-nage rĂ©pondent Ă  ce dernier en fournissant leur identifiant et leurs donnĂ©es stockĂ©es.Pour gĂ©rer l’accĂšs au mĂ©dium des techniques de partage de ce dernier utilisant l’évite-ment de collision basĂ©es sur l’ALOHA « slottĂ© » sont utilisĂ©es [Kuo95]. Ils permettentaux radio-Ă©tiquettes de diffĂ©rer alĂ©atoirement leur rĂ©ponse.

3.1.2 L’IEEE 802.15.4C’est le standard de communication dominant dans les RCSFs. Il dĂ©finit les spĂ©ci-

fications pour la couche physique et liaison de données OSI. La norme est maintenuepar le groupe 4 du comité IEEE 802.15 qui gÚre tous les aspects relatifs aux réseaux

1. Industrielle, Scientifique et Medicale: ce sont des bandes de frĂ©quences qui peuvent ĂȘtre utilisĂ©essans accord ou licence prĂ©alable dans un espace rĂ©duit pour des applications de ces trois domaines.

Page 50: Configuration dynamique et routage pour l'internet des objets

Chapitre 3. Du RĂ©seau de Capteurs Ă  l’Internet des Objets 30

personnel sans fil (PAN) [Tg4]. De nombreux autres standards tels que Zigbee et Wi-relessHART l’utilisent comme base mais l’étendent pour prendre en considĂ©ration lescouches supĂ©rieures (qui ne sont pas dĂ©finies dans IEEE 802.15.4). La premiĂšreversion de ce standard a Ă©tĂ© publiĂ©e en 2003 suivie d’une rĂ©vision en 2006.

La conception de ce dernier a Ă©tĂ© rĂ©alisĂ©e pour permettre des communications defaible portĂ©es (de l’ordre de quelques dizaines de mĂštres) en supportant des dĂ©bitsfaibles : 20 kbit/s, 40 kbit/s et 250 kbit/s sur les frĂ©quences respectives de 868 MHz, 915MHz, et 2.4 GHz. La gestion de la consommation Ă©nergĂ©tique au niveau de la couchephysique est optimisĂ©e de façon Ă  utiliser des cycles d’activation/dĂ©sactivation quimaintiennent la radio Ă©teinte jusqu’à 99% du temps. La topologie rĂ©seau sous-jacentepeut ĂȘtre en Ă©toile, maillĂ©e ou une arborescence. Dans la premiĂšre les nƓuds commu-niquent uniquement avec le coordonnateur du rĂ©seau (PAN coordinator) qui lui esttoujours en fonction, en attente active des communications. Dans les deux autres cas, lacommunication n’est pas restreinte au coordonnateur : tout nƓud peut communiqueravec n’importe quel autre. Par ailleurs, deux types de fonctionnement sont possiblespour les autres nƓuds :

— ImplĂ©menter toutes les fonctions possibles (FFD: Full Function Device), i.e. quele nƓud peut assurer les fonctions d’un routeur, de coordonnateur de rĂ©seau etcelui de dispositif embarquant un capteur pour l’acquisition des donnĂ©es.

— Supporter un nombre limitĂ© de fonctions (RFD:Reduced Fonction Device). Dansce cas, contrairement au type prĂ©cĂ©dent, le nƓud ne peut que acquĂ©rir les infor-mations et les transmettre au prochain saut : il ne peut remplir la fonction derouteur dans ce mode.

Au niveau de la couche physique, le dispositif matĂ©riel est constituĂ© d’un Ă©metteur/rĂ©-cepteur de radiofrĂ©quences et intĂšgre les mĂ©canismes de contrĂŽle bas niveau tels que lecontrĂŽle de la qualitĂ© du signal (mĂ©trique LQI) et la dĂ©tection de l’activitĂ© sur le canal(CCA:Channel Check Assessment). La couche liaison de donnĂ©es gĂšre la transmissiondes trames de donnĂ©es sur le mĂ©dium physique et le contrĂŽle d’accĂšs Ă  ce support. Ellepeut fonctionner selon deux modes : un mode asynchrone (sans balises) et un modesynchrone (avec envoi de balises). Dans le premier mode, les nƓuds utilisent le mĂ©ca-nisme de CSMA/CA pour envoyer leurs trames. Dans le mode avec balise illustrĂ© par lafigure 3.3, le coordonnateur envoie des balises contenant des informations pour syn-chroniser les nƓuds. La super-trame divise le temps en trois pĂ©riodes : (a) une pĂ©riodede contention (CAP: Contention Access Period), pendant laquelle les nƓuds utilisentle mĂ©canisme CSMA/CA « slottĂ© » pour faire concurrence Ă  l’accĂšs du mĂ©dium; (b)une pĂ©riode sans contention contenant un certain nombre d’accĂšs garanti Ă  la tranchede temps (GTS: Guaranteed Time Slots) attribuĂ©e par le coordonnateur Ă  des nƓudsspĂ©cifiques ; (c) une pĂ©riode d’inactivitĂ©, oĂč tous les nƓuds (incluant le coordonnateur)peuvent passer en mode sommeil pour Ă©conomiser leur Ă©nergie.

3.1.3 BLELe BLE (Bluetooth Low Energy) est une technologie basse « consommation éner-

gĂ©tique » relativement rĂ©cente (dĂ©but 2010) basĂ©e sur la spĂ©cification Bluetooth [Blu].Initialement conçu par Ericsson pour s’affranchir de l’utilisation des cĂąbles lors de la

Page 51: Configuration dynamique et routage pour l'internet des objets

Chapitre 3. Du RĂ©seau de Capteurs Ă  l’Internet des Objets 31

FIGURE 3.3 – Structure de la Super-Trame IEEE 802.15.4 en mode Syn-chrone

connexion des pĂ©riphĂ©riques d’entrĂ©e/sortie, la technologie BluetoothTM permet de re-lier de petits dispositifs Ă©lectroniques pour former un rĂ©seau personnel sans fil (WPAN :Wireless Personnal Area Network) ou un rĂ©seau BAN (Body Area Network). Dans cedernier type de rĂ©seau, le sujet est le corps humain (trĂšs utilisĂ©s dans les applicationsd’e-SantĂ©) comme illustrĂ© par la figure 3.4. Les dĂ©bits varient de 1−3 Mbit/s, pour uneportĂ©e des communications de l’ordre d’une dizaine de mĂštres (dans le cas d’usagedes smartphones et autres gadgets Ă©lectroniques) voir une centaine de mĂštres (sce-narii d’applications industrielles). Un nƓud maĂźtre coordonne les transmissions desautres nƓuds (esclaves) pour former un rĂ©seau en Ă©toile (encore appelĂ© Pico-rĂ©seau).La consommation Ă©nergĂ©tique de la technologie permet des durĂ©es de vie de l’ordrede plusieurs jours voir quelques mois sur des Ă©quipements opĂ©rant sur des batteriesalcalines standards.

Des optimisations pour amĂ©liorer la consommation Ă©nergĂ©tique ont Ă©tĂ© rĂ©alisĂ©essur cette version initiale pour Ă©tendre la durĂ©e de vie du rĂ©seau de 1− 2 annĂ©es : ce quia donnĂ© naissance au BLE (aussi dĂ©signĂ© sous le nom Bluetooth Smart ou Bluetooth4.0) [Blu]. Cette nouvelle technologie loin de l’objectif initial de simple remplacementalternative sans fils aux cĂąbles, permet les communications entre Ă©quipements bassesconsommations et offre une large gamme de possibilitĂ©s et nouveaux services pour lesapplications de santĂ©, domotique, sport, industriel, etc. Le dĂ©bit maximal atteint est de1 Mbit/s sur une portĂ©e de quelques dizaines de mĂštres.

3.1.4 IPv6

Avec ses 128 bits utilisĂ©s pour l’adressage des hĂŽtes, ce systĂšme offre une espacequasi-inĂ©puisable (3.4×1038 adresses) pouvant soutenir l’attribution d’identifiants uni-ques Ă  chaque nƓud de l’Internet des Objets. Un autre avantage d’adopter ce systĂšmed’adressage pour les objets de l’Internet est celui de pouvoir tirer partie de nombreuxprotocoles existants sous IP, et effectuer des communications de bout-en-bout sans nĂ©-cessiter de traduction (Ă  travers un dispositif comme NAT 2).

2. Traduction d’adresse rĂ©seau (Network Address Translation) : Technique permettant de faire cor-respondre une seule adresse [publique] Ă  tout un rĂ©seau. Elle est nĂ©cessaire lorsque le nombre d’adresses

Page 52: Configuration dynamique et routage pour l'internet des objets

Chapitre 3. Du RĂ©seau de Capteurs Ă  l’Internet des Objets 32

FIGURE 3.4 – BAN : RĂ©seau personnel sans fil pour l’individu [Ban].

IPv6 dispose Ă©galement du SLAAC (StateLess Address Auto-Configuration) [TNJ07]qui donne la possibilitĂ© aux nƓuds de se configurer automatiquement un identifiantsans intervention de l’administrateur ou du service DHCP. Les hĂŽtes utilisent alors leprotocole Neighbor Discovery v6 (ND) pour envoyer des messages ICMPv6 de sollici-tation d’adresse au routeur. Ce dernier rĂ©pond en fournissant un prĂ©fixe IPv6 sur 64bits, Ă  partir duquel l’hĂŽte solliciteur se configurera une adresse IPv6 unique globa-lement « routable ». La partie identifiant d’hĂŽte de l’adresse construite est basĂ©e surl’adresse physique de ce dernier (EUI-64) [HD98]. Cette nouvelle possibilitĂ© permetaux nƓuds de pouvoir se connecter au rĂ©seau IPv6 et d’ĂȘtre gĂ©rĂ©s moyennant une sur-charge minimale. Toutefois, le protocole IPv6 impose des dĂ©fis pour des couches MACet physiques contraintes comme IEEE 802.15.4 ou celles apparentĂ©es. C’est dans cecontexte que 6LoWPAN [Mon+07 ; HT11] a Ă©tĂ© proposĂ© comme couche d’adaptationentre les couches MAC de l’IEEE 802.15.4 et rĂ©seau pour le transport des paquetsIPv6.

3.1.5 Web des Objets et CoAP

L’IoT est possible par l’intĂ©gration dans l’Internet classique d’un grand nombred’Objets de tout type, dotĂ©s de capacitĂ©s : d’acquisition d’informations, de calcul, decommunication, et de contrĂŽle de l’environnement. Ces nƓuds (capteurs, actionneurs,puces RFID, . . . ) opĂšrent grĂące Ă  une vaste gamme de technologies, parmi lesquellescelles prĂ©sentĂ©es plus haut. L’hĂ©tĂ©rogĂ©nĂ©itĂ© des plateformes matĂ©rielles, des intergi-ciels, et constructeurs impliquĂ©s, nĂ©cessite des dĂ©veloppeurs d’applications de prendreen considĂ©ration tous ces aspects. Par ailleurs, la nature dynamique de l’IoT et les nou-velles possibilitĂ©s qu’elles offrent imposent Ă©galement Ă  ces derniers d’ĂȘtre conscientsdes spĂ©cificitĂ©s de chaque nƓuds, de leurs fonctionnalitĂ©s et des services offerts. Il

IP octroyées par le fournisseur des services Internet est inférieur au nombre de machines à connecter surInternet.

Page 53: Configuration dynamique et routage pour l'internet des objets

Chapitre 3. Du RĂ©seau de Capteurs Ă  l’Internet des Objets 33

est Ă©vident que les dĂ©veloppeurs d’applications pour l’IoT ne souhaiterait pas tenircompte de tous ces dĂ©tails.

Le Web s’est imposĂ© comme un « standard de fait » pour la crĂ©ation d’applicationsinteropĂ©rables et indĂ©pendantes de l’architecture matĂ©rielle des composants impli-quĂ©s. Les services Web masquent ainsi l’hĂ©tĂ©rogĂ©nĂ©itĂ© des technologies sous-jacenteset permettent aux dĂ©veloppeurs de se concentrer sur les applications Webs dĂ©velop-pĂ©es. Le succĂšs du Web a permis la rĂ©utilisation et l’extension des outils existants pourles adapter aux spĂ©cificitĂ©s des nƓuds de l’Internet des Objets. Ceci a donnĂ© naissanceau concept du Web des Objets (WoT : Web of Things) [Pfi+11].

En utilisant le formalisme de reprĂ©sentation des donnĂ©es du Web (REST), tout ob-jet (quelque soit la technologie matĂ©rielle ou logicielle sous-jacente) peut publier lesressources dont il dispose. On pourrait par exemple vĂ©rifier l’occupation d’une sallede rĂ©union Ă  distance ainsi que le nombre de participants en consultant, grĂące Ă  unclient web Ă  une URL spĂ©cifique, le statut des capteurs de pression intĂ©grĂ©s aux siĂšges.C’est dans cette optique que CoAP [SHB14] a Ă©tĂ© proposĂ© comme solution permettantde faire tourner un serveur web adaptĂ© aux objets soumis Ă  des contraintes de res-sources matĂ©rielles et fonctionnant sur une couche physique IEEE 802.15.4. CoAPrend possible l’accĂšs aux services et ressources possĂ©dĂ©s par les objets de l’InternetgrĂące aux URLs. De plus, le contrĂŽle de ces objets est rĂ©alisĂ© par une interface simpleutilisant les opĂ©rations similaires aux GET et PUT du protocole HTTP standard. Maiscontrairement Ă  ce dernier, CoAP diffĂšre dans sa conception par l’optimisation qui yest faite de la consommation Ă©nergĂ©tique et de la surcharge requise. Il s’appuie Ă©gale-ment sur le protocole UDP (beaucoup plus lĂ©ger que TCP) pour relayer les messagesĂ  la couche transport. Le serveur CoAP hĂ©bergĂ© par un nƓud ne peut pas directementĂȘtre accĂ©dĂ© par un navigateur Web, il est nĂ©cessaire pour cela de disposer d’une pas-serelle rĂ©alisant la traduction CoAP–HTTP. Cette derniĂšre peut ĂȘtre une application ouun plug-in intĂ©grĂ© au navigateur, Ă  l’instar de Copper [Kov11].

3.2 ProblĂ©matique de l’interconnexion

Comme nous l’avons indiquĂ© dans la section prĂ©cĂ©dente, le RCSF constitue un blocessentiel dans la rĂ©alisation de l’Internet des Objets. Avec l’intĂ©gration du protocoleIP, tout nƓud du RCSF devient accessible de l’intĂ©rieur comme de l’extĂ©rieur (i.e. In-ternet traditionnel) du rĂ©seau. Toutefois les exigences propres Ă  chacune de ces deuxplate-formes a conduit Ă  la dĂ©finition de protocoles et standards optimisĂ©s en consom-mation d’énergie et autres ressources matĂ©rielles pour la partie RCSF (cf. Figure 2.3),tandis que ceux utilisĂ©s pour les rĂ©seaux traditionnels sont Ă  la fois flexibles et ou-verts. Il est alors nĂ©cessaire de disposer Ă  la frontiĂšre entre les deux rĂ©seaux (RCSF et lerĂ©seau traditionnel [Internet]) d’un certain nombre de nƓuds implĂ©mentant les deuxpiles protocolaires : pile IP optimisĂ©e pour le RCSF et la pile TCP/IP standard. Ces pas-serelles assureront les tĂąches de conversion de protocoles et de relais de messages del’un vers l’autre rĂ©seau, et vice-versa. La connectivitĂ© Internet de l’ensemble du RCSFdevient alors tributaire du placement, de la disponibilitĂ© et de la gestion efficace despasserelles installĂ©es. Pour ce faire, certains facteurs doivent ĂȘtre prises en compte :

— ProblĂšme de Hot-spot : Le standard de routage pour le rĂ©seau de capteurs Ă©tantRPL, les nƓuds proches de la racine (idĂ©ale pour servir Ă©galement de passerelle)

Page 54: Configuration dynamique et routage pour l'internet des objets

Chapitre 3. Du RĂ©seau de Capteurs Ă  l’Internet des Objets 34

reçoivent plus de trafic que les nƓuds qui en sont Ă©loignĂ©s. Ceci contribue Ă rĂ©duire d’avantage leur durĂ©e de vie comparĂ©e aux autres nƓuds du rĂ©seau.De nombreuses approches adoptent le principe de changer dynamiquement laposition de la racine pour remĂ©dier Ă  ce problĂšme [WCD06]. Mais cette solutionest difficilement rĂ©alisable dans un environnement oĂč la racine doit maintenirune connexion permanente vers Internet.

— Profondeur (en nombre de sauts) par rapport Ă  la racine du RCSF : Les trans-missions dans le rĂ©seau de capteurs sont instables, en raison de la qualitĂ© dulien et de la dynamique de l’environnement. Les nƓuds Ă©loignĂ©s de la stationde base peuvent voir la qualitĂ© de leur communication se dĂ©grader. Bien quede nombreuses mĂ©triques permettent d’amĂ©liorer la qualitĂ© de la communica-tion (en sĂ©lectionnant les liens les plus fiables) une solution simple consisterait Ă partitionner le rĂ©seau de capteurs et d’interconnecter chaque partition Ă  Internetpour assurer une meilleure qualitĂ© de la communication.

— DisponibilitĂ© : La passerelle constitue un point de dĂ©faillance unique pour laconnectivitĂ© Internet. Pour assurer une meilleure disponibilitĂ© et tolĂ©rance auxpannes, la redondance devra ĂȘtre implĂ©mentĂ©e et plusieurs passerelles instal-lĂ©es. Il est alors nĂ©cessaire de dĂ©velopper des mĂ©canismes permettant d’utiliserle plus efficacement les passerelles disponibles en fonction des besoins.

— Passage Ă  l’échelle : Les passerelles dĂ©ployĂ©es devront pouvoir prendre en comptel’ajout de nouveaux nƓuds et services au RCSF de façon Ă  en limiter leur impactsur les performances du systĂšme existant.

Dans la troisiĂšme partie de cette thĂšse, nous nous intĂ©ressons Ă  l’interconnexion duRCSF Ă  l’Infrastructure Internet et le moyen de le rĂ©aliser de façon efficace Ă  faiblecoĂ»t. [Zac+15] aborde la question de l’interconnexion dans un sens plus gĂ©nĂ©ral etprĂ©sente les principales questions de recherches soulevĂ©es. Une architecture gĂ©nĂ©riquesur la mise en Ɠuvre d’une passerelle sur smartphone en utilisant les nouvelles tech-nologies de communication sans fil : BLE (cĂŽtĂ© rĂ©seau d’objet) et 3G/4G ou WIFI (cĂŽtĂ©Infrastructure Internet), est Ă©galement proposĂ©e.

3.2.1 Routeur de bordureLa passerelle peut ĂȘtre implĂ©mentĂ©e comme un routeur de bordure assurant la liai-

son entre le RCSF et Internet. Il connectera deux technologies de liaisons de donnĂ©esdiffĂ©rentes : typiquement, l’IEEE 802.15.4 du cĂŽtĂ© RCSF et la technologie Ethernetou l’IEEE 802.11 du cĂŽtĂ© Internet. Il assure Ă©galement la sĂ©paration des plans decontrĂŽle des deux domaines de routage : RPL dans le RCSF et tout autre protocole deroutage (RIP, OSPF, statique, etc.) dans le second rĂ©seau. Pour remĂ©dier aux problĂšmesĂ©voquĂ©s plus tĂŽt, plusieurs routeurs de bordure devront ĂȘtre dĂ©ployĂ©s. Ce qui permet-tra d’assurer une haute disponibilitĂ© du rĂ©seau (en cas de partition) et Ă©quilibrer lacharge sur ceux-ci (pour le passage Ă  l’échelle). Toutefois, disposer de plusieurs nƓudsde ce type soulĂšvent d’autres problĂ©matiques, comme leur coordination, la gestion despannes, ainsi que leur intĂ©gration transparente dans le rĂ©seau IPv6 existant.

Deru et al. ont récemment développé une passerelle simple mais puissante, per-mettant de faire transiter les communications du domaine filaire (Ethernet) au RCSF

Page 55: Configuration dynamique et routage pour l'internet des objets

Chapitre 3. Du RĂ©seau de Capteurs Ă  l’Internet des Objets 35

(6LoWPAN), et vice versa [Der+13]. Nous nous en servirons comme base dans la construc-tion de notre plate-forme d’interconnexion dynamique entre le RCSF et Internet. Cettepasserelle est dĂ©signĂ©e sous le terme 6LoWPAN Border Router (6LBR) et elle peut s’exĂ©-cuter sur matĂ©riel embarquĂ© ou toute plate-forme disposant d’un systĂšme d’exploita-tion Linux. Trois principaux modes de fonctionnement sont possibles pour le 6LBR. Ilssont dĂ©taillĂ©s ci-dessous.

Mode routeur

Dans le mode routeur, le sous-rĂ©seau Ethernet et WPAN sont logiquement sĂ©parĂ©s, le6LBR fournissant la route entre les deux. Chaque interface a un prĂ©fixe rĂ©seau distinct,comme on peut le voir sur la figure 3.5, oĂč celui-ci est :a.a.a.a::/64 sur Ethernetet b.b.b.b::/64 pour le rĂ©seau WPAN. Les deux domaines de diffusion sont parfai-tement isolĂ©s l’un de l’autre. Pour assurer la communication entre les deux domaines,les nƓuds Ethernet devront ĂȘtre configurĂ©s pour acheminer le trafic destinĂ© au RCSFĂ  travers le 6LBR. Du cĂŽtĂ© du RCSF, c’est la racine RPL qui sera chargĂ©e de router letrafic destinĂ© au rĂ©seau Ethernet via le 6LBR.

FIGURE 3.5 – Modes de fonctionnement Routeur du 6LBR [Der+13].

Mode pont transparent

Ce mode assure une fonction de commutation de base permettant ainsi Ă  plusieursRCSF d’ĂȘtre agrĂ©gĂ©s en DODAG global, la racine RPL pouvant ĂȘtre extĂ©rieure au RCSF.Toutes les trames de multidiffusion ou destinĂ©es Ă  une interface IEEE 802.15.4 spĂ©-cifique sont commutĂ©es de l’interface Ethernet vers le RCSF. Inversement, celles desti-nĂ©es Ă  un hĂŽte Ethernet spĂ©cifique ou celles constituant une adresse de multidiffusionsont commutĂ©es du RCSF par le 6LBR vers le segment Ethernet. L’ensemble du rĂ©seauconstitue un seul domaine de diffusion et tous les nƓuds partagent le mĂȘme prĂ©fixe rĂ©-seau (comme indiquĂ© sur la figure 3.6). Le 6LBR dispose de sa propre adresse physiquedans chacun des segments rĂ©seaux et traduit les adresses physiques/trames Etherneten adresses/trames IEEE 802.15.4 et vice versa.

Page 56: Configuration dynamique et routage pour l'internet des objets

Chapitre 3. Du RĂ©seau de Capteurs Ă  l’Internet des Objets 36

FIGURE 3.6 – Modes de fonctionnement Pont Transparent du 6LBR[Der+13].

Mode pont intelligent

Ici, le 6LBR joue le rĂŽle de serveur de proximitĂ© (proxy) pour le protocole ND (Neigh-bor Discovery) de l’IPv6 dans le segment Ethernet. Les paramĂštres ND reçus sont utilisĂ©spour configurer le RCSF. Plusieurs DODAG RPL sont agrĂ©gĂ©s pour crĂ©er un seul sous-rĂ©seau virtuel IPv6. Le serveur de proximitĂ© sert alors Ă  rendre transparente la mobilitĂ©des nƓuds d’un DODAG RPL vers un autre, lorsque ceux-ci se recouvrent. Le nƓudrejoint le second DODAG s’il y dĂ©couvre un lien de meilleure qualitĂ©.

3.2.2 Plate-forme matérielle pour la passerelle

Le 6LBR pouvant s’exĂ©cuter sur toute plate-forme matĂ©rielle compatible Linux, leRaspberry Pi se rĂ©vĂšle comme une solution robuste et peu coĂ»teuse [Ras]. En effet,la version Raspberry 3 modĂšle B dispose d’excellentes caractĂ©ristiques matĂ©rielles quifont d’elle un ordinateur complet (d’un format identique Ă  celle d’une carte bancaire).Elle dispose : d’une mĂ©moire centrale de 1 Giga-octets, d’un processeur ARM 64 bits4-cƓurs cadencĂ© Ă  1.2Ghz et de 4 interfaces USB 2.0. On y retrouve par ailleurs de nom-breuses interfaces de communication (Ethernet, IEEE 802.11n, Bluetooth classiqueet BLE) qui font d’elle la plate-forme « idĂ©ale » pour la mise en place de passerellespour l’Internet des Objets. Elle peut ĂȘtre connectĂ©e via le port USB Ă  un « dongle »IEEE802.15.4 ou toute mote pour servir de pont entre RCSF et Internet. La figure 3.7illustre un exemple de connexion Raspberry avec une mote TelosB.

3.3 Stratégies de sélection de passerelles dans les réseauxsans fil multi-sauts

Le problÚme de sélection de passerelles pour offrir un accÚs Internet à travers uneinfrastructure filaire a été étudié dans la littérature, aussi bien dans le contexte desRCSF que celui des réseaux maillés sans fil (WMN : Wireless Mesh Network en anglais).

Ashraf et al. proposent un algorithme de sĂ©lection de passerelle offrant la connec-tivitĂ© Internet dans un WMN [AAJ09]. Trois opĂ©rations sont mises en Ă©vidence pourrĂ©aliser l’interconnexion du rĂ©seau sans fil multi-sauts et l’infrastructure filaire reliĂ©e Ă 

Page 57: Configuration dynamique et routage pour l'internet des objets

Chapitre 3. Du RĂ©seau de Capteurs Ă  l’Internet des Objets 37

FIGURE 3.7 – Passerelle par Association : Raspberry – TelosB

Internet : une premiĂšre phase de dĂ©couverte de passerelle, suivie par une phase de sĂ©-lection, et enfin la construction de la route vers cette derniĂšre. La phase de dĂ©couvertede la passerelle peut se faire suivant une approche proactive, rĂ©active ou hybride. Dansl’approche proactive, les passerelles diffusent rĂ©guliĂšrement des annonces pour signa-ler leur prĂ©sence tandis qu’en mode rĂ©actif, ce sont les nƓuds qui initient le processusde dĂ©couverte par des messages de sollicitation de passerelle. La premiĂšre gĂ©nĂšre unesurcharge liĂ©e aux messages de contrĂŽle pour la dĂ©couverte des passerelles, mais offrel’avantage d’avoir des routes disponibles Ă  tout moment. De plus elle offre une latencefaible lors de l’installation des routes. Une fois les informations sur les passerelles ob-tenues par les nƓuds, la sĂ©lection de passerelle et la construction de la route peuventĂȘtre effectuĂ©es. Le mode rĂ©actif limite la surcharge en Ă©vitant l’inondation du rĂ©seau.L’approche hybride combine les avantages de ces deux approches en dĂ©finissant deszones dans le rĂ©seau oĂč l’un ou l’autre des mĂ©thodes est utilisĂ©e.

[AAJ09] opte d’utiliser une approche proactive pour la dĂ©couverte des passerelleset construit une mĂ©trique composite par combinaison linĂ©aire de trois facteurs : charge,interfĂ©rence de la route et estimation de la qualitĂ© du lien (ETX) pour le choix de la pas-serelle. La charge est calculĂ©e comme la taille moyenne de la file d’attente des paquetsau niveau de la passerelle. L’idĂ©e Ă©tant celui de rĂ©partir la charge sur l’ensemble despasserelles plutĂŽt que de surcharger un nombre rĂ©duit d’entre ceux-ci. Pour estimerle facteur d’interfĂ©rence, chaque nƓud se base sur la mesure du taux d’occupation dumĂ©dium dans son voisinage. Les rĂ©sultats des simulations montrent de meilleurs rĂ©-sultats en terme de dĂ©lai, de dĂ©bit et de rĂ©partition de charge sur les passerelles aveccette approche, comparĂ©e Ă  un scĂ©nario de sĂ©lection de passerelle la proche (en nombrede saut).

Dans le mĂȘme sens, [Bei+15] propose une architecture pour la sĂ©lection de passe-relle dans les rĂ©seaux capillaires. Un rĂ©seau capillaire [AB+12] est dĂ©fini comme un en-semble de dispositifs Ă©lectroniques connectĂ©s Ă  travers des technologies d’accĂšs Ă  based’ondes radio Ă  courte portĂ©e (BLE, IEEE 802.11ah, IEEE 802.15.4, etc.) Ă  unĂ©quipement plus puissant appelĂ© passerelle capillaire. Cette derniĂšre offre une connec-tivitĂ© Internet Ă  l’ensemble du rĂ©seau capillaire Ă  travers une technologie d’accĂšs deplus grande capacitĂ© (4G ou LTE, Ethernet, etc.) Un tel rĂ©seau, Ă  l’instar des RCSF est

Page 58: Configuration dynamique et routage pour l'internet des objets

Chapitre 3. Du RĂ©seau de Capteurs Ă  l’Internet des Objets 38

dĂ©ployĂ© sans planification spĂ©cifique prĂ©alable. Pour assurer une connectivitĂ© maxi-male, plusieurs passerelles pouvant possĂ©der des caractĂ©ristiques diffĂ©rentes en termede connectivitĂ©, de capacitĂ©, et d’énergie (lorsqu’elle opĂšre sur des batterie) seront ins-tallĂ©es. Le rĂ©seau devra alors pouvoir s’auto-configurer et diriger les communicationsvers la passerelle appropriĂ©e en fonction de critĂšres spĂ©cifiques (minimiser la latence,maximiser la disponibilitĂ© des passerelle ou rĂ©partir la charge sur l’ensemble). Les au-teurs [Bei+15] effectuent la sĂ©lection sur la base de critĂšres spĂ©cifiques : informationsd’accessibilitĂ© des passerelles (puissance du signal reçu, taux de perte de paquet et qua-litĂ© de lien, . . . ), contraintes (nombre d’équipements admis par passerelle ou charge,capacitĂ© Ă©nergĂ©tique, coĂ»t de la liaison Internet, . . . ) et politiques. Les politiques servi-ront Ă  Ă©tablir une prioritĂ© sur la façon dont les contraintes sont prises en compte pourle choix de la passerelle appropriĂ©e. Elles devront ĂȘtre dĂ©finies de façon statique parl’administrateur, puis dissĂ©minĂ©es dans le rĂ©seaux Ă  destination des Ă©quipements. LamĂ©thode de sĂ©lection proprement dite peut se faire de trois façons :

— Serveur centralisĂ© : Toutes les informations de sĂ©lection (accessibilitĂ©, contrainteset politiques) sont transmises Ă  un serveur centralisĂ© qui exĂ©cute l’algorithme desĂ©lection et retourne les dĂ©cisions aux nƓuds concernĂ©es. Cette mĂ©thode prĂ©-sente l’inconvĂ©nient d’avoir un point de dĂ©faillance unique. Mais celui-ci peutĂȘtre attĂ©nuĂ© en prĂ©voyant un serveur de secours qui prendra le relais en cas dedĂ©faillance du serveur principal.

— De façon distribuĂ©e sur chaque passerelle : L’exĂ©cution de l’algorithme de sĂ©-lection est effectuĂ©e par chaque passerelle. Celles-ci se synchronisent en parta-geant au prĂ©alable les informations requises pour le calcul. Le temps nĂ©cessaireĂ  la rĂ©plication des informations de sĂ©lection sur les passerelles peut engendrerdes inconsistances conduisant Ă  des dĂ©cisions incohĂ©rentes pendant de courtsinstants.

— De façon autonome par chaque nƓud du rĂ©seau : Les contraintes et politiquesde sĂ©lection sont dissĂ©minĂ©es dans le rĂ©seau ou sur la demande des nƓuds quiexĂ©cutent localement l’algorithme de sĂ©lection. Le principal challenge ici est lalimitation du nƓud en ressources (calcul, mĂ©moire et Ă©nergie). Seuls les nƓudsles plus robustes seront capables de s’en servir. Ceux qui sont limitĂ©s en res-sources utiliseront l’une des deux premiĂšres mĂ©thodes.

L’algorithme de sĂ©lection calcule pour chaque passerelle une valeur de prĂ©fĂ©rence surla base des informations citĂ©es plus tĂŽt. Ces informations sont mises Ă  jours sur unebase rĂ©guliĂšre. Des expĂ©riences en environnement rĂ©el montrent qu’une approche cen-tralisĂ©e offre des rĂ©sultats meilleurs, Ă  la fois en terme de messages Ă©changĂ©s dans le rĂ©-seau (surcharge), que de distribution de charge sur l’ensemble des passerelles [Bei+15].De plus, l’architecture proposĂ©e offre un certain degrĂ© de flexibilitĂ© dans l’utilisationdes ressources pour assurer la connectivitĂ© du rĂ©seau capillaire Ă  Internet.

Feng et al. considĂšrent le problĂšme de sĂ©lection de passerelles dans le cadre de l’in-tĂ©gration d’un RCSF avec un rĂ©seau de mobiles (cellulaires) [Fen+13]. Ils prennent encompte aussi bien les paramĂštres de QdS du RCSF que celui de qualitĂ© du lien entrela passerelle et le rĂ©seau de mobiles. CĂŽtĂ© RCSF, le nombre de sauts et la charge de lapasserelle sont utilisĂ©s, tandis que la distance entre la station de base du RCSF est utili-sĂ©e comme mĂ©trique renseignant sur la qualitĂ© de la communication avec le rĂ©seau de

Page 59: Configuration dynamique et routage pour l'internet des objets

Chapitre 3. Du RĂ©seau de Capteurs Ă  l’Internet des Objets 39

mobiles. Une Ă©valuation de performance est rĂ©alisĂ©e pour mesurer le taux de livraisondes messages du RCSF vers le rĂ©seau de mobiles, le dĂ©lai de bout-en-bout moyen, ainsique le dĂ©bit de la communication. Les simulations montrent que la considĂ©ration destrois mĂ©triques offrent de meilleures performances, comparĂ© Ă  des scĂ©narios oĂč seulesune ou deux mĂ©triques sont prises en compte.

[CYDM11] utilise une approche par la logique floue pour combiner : le nombre denƓuds candidats offrant des routes vers chaque passerelle dans le RCSF, avec l’énergiede ces nƓuds. Les auteurs indiquent une amĂ©lioration de la consommation Ă©nergĂ©tiqueglobale du rĂ©seau ainsi que la rĂ©duction de la latence des transmissions.

[WLY09] prĂ©sente le problĂšme d’une toute autre maniĂšre. Le but Ă©tant celui de dĂ©-terminer le nombre de passerelles Ă  installer, leur position en terme de nombre de sautspar rapport aux autres nƓuds du rĂ©seau, tout en recherchant Ă  rĂ©partir le trafic. CetterĂ©partition est faite par minimisation de la variance de la charge supportĂ©e par chaquepasserelle. Le problĂšme est modĂ©lisĂ© comme un programme linĂ©aire multi-objectifs,oĂč l’optimisation de ces trois critĂšres est recherchĂ©e. i.e. minimiser le nombre de pas-serelles, tout en satisfaisant la demande des nƓuds du rĂ©seau de façon Ă©quilibrĂ©e surcelles-ci. Dans le mĂȘme ordre d’idĂ©e, [WBA09] montre que la placement des diffĂ©rentespasserelles dans le rĂ©seau influence grandement les performances. Ils expĂ©rimentesquelques heuristiques et comparent les approches utilisant le nombre de sauts aveccelles basĂ©es sur la distance euclidienne par diagramme de VoronoĂŻ.

Page 60: Configuration dynamique et routage pour l'internet des objets
Page 61: Configuration dynamique et routage pour l'internet des objets

41

DeuxiĂšme partie

Contribution au Routage

Page 62: Configuration dynamique et routage pour l'internet des objets
Page 63: Configuration dynamique et routage pour l'internet des objets

43

Chapitre 4

Routage par l’Énergie

4.1 ModĂšle d’estimation d’énergie pour les capteurs

L’énergie est sans doute l’un des paramĂštres les plus importants Ă  prendre en consi-dĂ©ration lors de la conception d’un rĂ©seau de capteurs sans fil. Les nƓuds sont dĂ©-ployĂ©s pour des pĂ©riodes plus ou moins longues, sans source d’alimentation continue.Par consĂ©quent, ils doivent utiliser le plus efficacement possible l’énergie embarquĂ©edans leur batterie. Une bonne connaissance de la consommation Ă©nergĂ©tique du nƓudpendant son activitĂ© et la prise en compte de celle-ci Ă  diffĂ©rents niveaux (application,routage, MAC . . . ) permettent de prolonger la durĂ©e de vie du rĂ©seau. Bien qu’il soitpossible de mesurer le niveau de tension de la batterie, cette derniĂšre ne constitue pasune bonne indication du niveau d’énergie restante dans la batterie ou dĂ©jĂ  consommĂ©epar le nƓud. L’estimation de la consommation Ă©nergĂ©tique du nƓud peut ĂȘtre faite,soit grĂące Ă  un dispositif matĂ©riel directement intĂ©grĂ© au nƓud, soit de façon logicielle[Dun+07]. La mise en Ɠuvre Ă  travers un dispositif matĂ©riel est difficile Ă  rajouter auxcomposants Ă©lectroniques qui constituent le capteur. De plus, elle induit un coĂ»t trĂšsĂ©levĂ© [Jia+07]. Pour ces raisons, la grande majoritĂ© des plate-formes pour capteurs nefournissent pas de mĂ©canismes intĂ©grĂ©s au matĂ©riel permettant de connaĂźtre l’énergierĂ©siduelle des nƓuds pendant leur fonctionnement.

Contrairement Ă  un dispositif matĂ©riel, la mise en Ɠuvre logicielle est beaucoupplus facile Ă  intĂ©grer Ă  tout nƓud, quel que soit le systĂšme d’exploitation cible. L’im-plantation de celle-ci ne nĂ©cessite que quelques lignes de code, sans avoir Ă  modifier lesapplications et protocoles existants sur le capteur. Elle offre en plus l’avantage de pou-voir prendre en compte, en temps rĂ©el, l’information sur la quantitĂ© rĂ©siduelle d’éner-gie du nƓud. Ceci permet d’influencer la prise de dĂ©cision des solutions dĂ©ployĂ©esafin d’amĂ©liorer la durĂ©e de fonctionnement du rĂ©seau. Deux approches peuvent ĂȘtreconsidĂ©rĂ©es pour estimer de façon logicielle l’énergie rĂ©siduelle d’un nƓud : l’une ba-sĂ©e sur un modĂšle linĂ©aire, l’autre sur un modĂšle non linĂ©aire.

4.1.1 ModĂšle linĂ©aireDans le premier modĂšle, l’énergie totale E consommĂ©e par le nƓud est constituĂ©e

de l’ensemble des consommations du nƓud Ă  diffĂ©rents Ă©tats de son fonctionnement[Dun+07].

E =(Icputcpu + Ilpmtlpm + Itxttx + Irxtrx +

∑Icitci

)V (4.1)

Celui-ci est dĂ©crit par la relation 4.1, oĂč V est la tension d’alimentation du nƓud, Icpul’intensitĂ© de courant lorsque le processeur est en activitĂ©, tcpu le temps de cette activitĂ©.

Page 64: Configuration dynamique et routage pour l'internet des objets

Chapitre 4. Routage par l’Énergie 44

Ilpm et tlpm sont respectivement l’intensitĂ© de courant et le temps passĂ© par le nƓud enmode basse consommation (en l’occurrence en phase de sommeil). Itx et ttx, l’intensitĂ©de courant et le temps lorsque le nƓud est en mode de transmission. Irx et trx, l’inten-sitĂ© de courant et le temps en phase de rĂ©ception. Ici et tci , l’intensitĂ© de courant et letemps passĂ© par le nƓud lorsque divers autres composants tels que les interfaces decapture (humiditĂ©, tempĂ©rature, . . . ) et LED sont activĂ©s.

Ce modĂšle a l’avantage d’ĂȘtre simple, donc facile Ă  implĂ©menter. Il suffit de faire ap-pel au module de consommation d’énergie chaque fois que le nƓud active ou dĂ©sactiveune de ses composantes matĂ©rielles (processeur actif ou en mode basse consommation,radio, capteur, etc.). Le module se chargera alors de conserver une estampille horaire Ă l’activation du composant concernĂ© et Ă  sa dĂ©sactivation. La diffĂ©rence de ces deux ho-rodatages fournit la durĂ©e passĂ©e dans l’état actif. Cette durĂ©e pourra alors ĂȘtre cumu-lĂ©e au cours du temps. En rĂ©itĂ©rant le processus, on obtient la liste des durĂ©es passĂ©esdans le mode actif pour tous les composants consommateurs d’énergie du nƓud. Lafiche technique du type de capteur utilisĂ© indique les intensitĂ©s de courants utilisĂ©espar chaque composant. L’énergie totale consommĂ©e par le nƓud pourra alors ĂȘtre esti-mĂ©e. Partant d’une capacitĂ© Ă©nergĂ©tique initiale connue du capteur, le modĂšle permetde calculer l’énergie rĂ©siduelle en dĂ©duisant de la charge initiale les consommationsĂ©nergĂ©tiques successives estimĂ©es.

Le principal inconvĂ©nient de cette approche est qu’elle ne prend pas en comptecertains effets non linĂ©aires liĂ©s Ă  la diminution de charge dans les batteries Ă©quipantles nƓuds. L’erreur associĂ©e Ă  une estimation basĂ©e sur cette approche est significativecar la durĂ©e de vie du nƓud n’est pas linĂ©airement corrĂ©lĂ©e Ă  la charge initiale de labatterie.

4.1.2 ModÚle non linéaire

Pour estimer de façon plus prĂ©cise la charge restante dans la batterie du nƓud, enplus de sa consommation Ă©nergĂ©tique Ă  diffĂ©rents Ă©tats d’activitĂ©s, une bonne connais-sance des caractĂ©ristiques inhĂ©rentes Ă  sa batterie est nĂ©cessaire. Deux phĂ©nomĂšnesdoivent ĂȘtre considĂ©rĂ©s : l’effet de capacitĂ© nominale et l’effet de rĂ©cupĂ©ration [Pan+01]. Lepremier dĂ©crit la dĂ©charge de la batterie lorsqu’une intensitĂ© de courant constante esttirĂ©e de celle ci, rĂ©sultant en une diminution de sa charge initiale. Pendant les pĂ©riodesd’inactivitĂ©, la diffusion conduit Ă  une rĂ©organisation des Ă©lectrons dans l’électrolyterĂ©sultant Ă  une recharge apparente. Cela contribue Ă  augmenter la durĂ©e d’utilisationde la batterie, encore connu sous le nom d’effet de rĂ©cupĂ©ration.

Les processus Ă©lectriques et chimiques survenant Ă  l’intĂ©rieur de la batterie ont Ă©tĂ©Ă©tudiĂ©s dans [RV03] et sont dĂ©crits par la relation mathĂ©matique 4.2.

α =

∫ L

0

i(τ)dτ + 2∞∑m=1

∫ L

0

i(τ)e−ÎČ2m2(L−τ)dτ (4.2)

Le paramĂštre α reprĂ©sente la charge initiale de la batterie. ÎČ est le coefficient de diffu-sion des ions dans l’électrolyte, dĂ©crivant le comportement non linĂ©aire de la batterie

Page 65: Configuration dynamique et routage pour l'internet des objets

Chapitre 4. Routage par l’Énergie 45

pendant les pĂ©riodes de dĂ©charge et de rĂ©cupĂ©ration. L, la durĂ©e d’utilisation de la bat-terie et i(τ) le courant consommĂ© Ă  l’instant τ . Dans ce modĂšle, la dĂ©termination de L,durĂ©e de vie du nƓud, ne dĂ©pend que des seuls paramĂštres α et ÎČ. Bien que beaucoupplus prĂ©cis pour dĂ©crire la dĂ©charge de la batterie au cours du temps, la relation 4.2 nepeut pas directement ĂȘtre implĂ©mentĂ©e dans le nƓud capteur. Sa complexitĂ© nĂ©cessitede rechercher dans de grandes tables et de calculer une sĂ©rie infinie. Sachant que lescapteurs sont trĂšs limitĂ©s en ressources matĂ©rielles, des adaptations sont nĂ©cessaires.Pour ces raisons, nous utilisons l’approximation de [Rah+10] de ce modĂšle par la rela-tion rĂ©cursive 4.3.

σ(Ln) =n∑k=1

IkΎk + λ

(σ(Ln−1)−

n−1∑k=1

IkÎŽk

)+ 2InA(Ln, Ln−1 + ήk, Ln−1) (4.3)

σ(Ln) est la charge consommĂ©e en mA.min (milliAmpĂšre minute) Ă  la date Ln. Elle dĂ©-pends rĂ©cursivement de la charge consommĂ©e Ă  la date prĂ©cĂ©dente Ln−1. L’intervallede temps ∆ = Ln−Ln−1 sĂ©parant les diffĂ©rentes tranches de temps est constant. Ainsi,on peut dĂ©terminer la charge restante dans la batterie Ă  l’instant Ln en effectuant la dif-fĂ©rence entre σ(Ln) et la charge initiale α.

Dans la formule 4.3, le premier terme :n∑k=1

IkÎŽk est dĂ©terminĂ© suivant le mĂȘme principe

qu’en §4.1.1. L’effet de rĂ©cupĂ©ration modĂ©lisant le comportement non linĂ©aire de la bat-terie est calculĂ© par la fonction A, apparaissant dans le troisiĂšme terme de l’équation4.3. Sa valeur est approximĂ©e en utilisant la fonction f issue de la relation 4.4. Cettefonction dĂ©pend de Îœ = ∆− σk, pĂ©riode d’inactivitĂ© Ă  la date Ln−1 et de σk, la pĂ©rioded’activitĂ© (i.e. celle oĂč le nƓud tire du courant de la batterie).

A(Ln, Ln−1 + ήk, Ln−1) =∞∑m=1

e−ÎČ2m2(Ln−Ln−1−ήk) − e−ÎČ2m2(Ln−Ln−1)

ÎČ2m2' f(Îœ)

ÎČ2− f(∆)

ÎČ2(4.4)

Les termes de la fonction d’approximation f sont donnĂ©s par les Ă©quations 4.5 et 4.6.Pour plus de dĂ©tails sur ces approximations, se rĂ©fĂ©rer Ă  [Rah+10].

f(Μ)

ÎČ2=Îœ

2−√π

ÎČ.√Μ +

π2

6ÎČ2(4.5)

f(∆)

ÎČ2=

∞∑m=1

e−ÎČ2m2∆

ÎČ2m2= c0 (4.6)

Le paramĂštre ÎČ ou coefficient de diffusion physique dans ces relations est une constantedont la valeur ne dĂ©pend que de la batterie utilisĂ©e. Il a Ă©tĂ© estimĂ© selon la mĂ©thode desmoindres carrĂ©es et sur des mesures relatives Ă  de nombreux tests de dĂ©charge de labatterie (pour diffĂ©rentes valeurs de charge initiale α) [NF13]. Dans la relation 4.6, vuque la sĂ©rie converge rapidement (Ă  partir de m = 10), on obtient une constante c0

calculable hors ligne.

Page 66: Configuration dynamique et routage pour l'internet des objets

Chapitre 4. Routage par l’Énergie 46

4.1.3 Estimation logicielle en ligne

Le principal dĂ©fi rĂ©side dans la mise en Ɠuvre de ce modĂšle et son implantationdans un systĂšme d’exploitation rĂ©el pour capteur sans fil : Contiki dans notre cas[DGV04]. Les principaux verrous Ă©tant la taille mĂ©moire limitĂ©e et le fait que les nƓudspossĂšdent un microcontrĂŽleur 16 bits ne rĂ©alisant que des opĂ©rations entiĂšres. Ces ver-rous levĂ©s, les nƓuds pourront estimer leur charge restante en temps rĂ©el. Il sera alorspossible d’adapter leur comportement pour influer sur les choix Ă  faire par les proto-coles dĂ©ployĂ©s et ainsi maximiser la durĂ©e de fonctionnement du rĂ©seau.Le modĂšle rĂ©cursif dĂ©crit par l’équation 4.3 lĂšve le premier verrou. Il nous affranchide la nĂ©cessitĂ© de disposer d’une mĂ©moire importante pour conserver l’historique detous les Ă©tats prĂ©cĂ©dents. Ainsi, la rĂ©cursion rend possible l’estimation de la capacitĂ©Ă©nergĂ©tique du nƓud en se basant sur la valeur prĂ©cĂ©dente qui est mise Ă  jour rĂ©gu-liĂšrement. Par ailleurs, en plus du coefficient de diffusion physique ÎČ et la constancec0 de l’équation 4.6, plusieurs autres paramĂštres sont calculĂ©s hors ligne (cf. tableau4.1). Le paramĂštre λ dans le deuxiĂšme terme du modĂšle rĂ©cursif 4.3 est dĂ©fini parle rapport A(Ln+1,ÎŽ1,0)

A(Ln,Ύ1,0)pour chaque valeur de n. Ce ratio est majoré par la constante

e−ÎČ2∆. Constante qui reste inchangĂ©e, ∀n pour ÎČ â‰„ 1.1 [Rah+10]. En pratique, la pĂ©-

riode d’inactivitĂ© Îœ varie autour d’une valeur a. Dans l’équation 4.5, on peut rĂ©Ă©crire√Μ ≈√a+(Μ−a) 1

2√a, oĂč√a et 1

2√a

sont Ă©galement calculĂ©s hors ligne. La dĂ©terminationprĂ©alable de toutes ces valeurs simplifie grandement les calculs, et nous permet d’im-planter le modĂšle sur l’architecture simple du microcontrĂŽleur Ă©quipant les nƓuds.

π2 √π ÎČ c0 λ a

√a 1

2√a

RĂ©elle 9.869 1.772 1 1.337 0.967 0.03 0.173 2.886

EntiĂšre 9 869 1 772 1 000 1 337 967 30 173 2 886

TABLE 4.1 – Constantes du modùle

Le tableau 4.1 consigne l’ensemble des valeurs des constantes dĂ©terminĂ©es horsligne et utilisĂ©es dans le modĂšle. Tous les calculs Ă©tant rĂ©alisĂ©s en arithmĂ©tique entiĂšresur un microcontrĂŽleur MSP430, nous multiplions les valeurs rĂ©elles par 1000 pour nese limiter qu’aux opĂ©rations entiĂšres.Une implĂ©mentation de ce modĂšle a Ă©tĂ© rĂ©alisĂ©e pour des nƓuds TelosB et WSN430sous Contiki [NF13]. Ces deux plates-formes sont dotĂ©es d’un microcontrĂŽleur MSP430et d’une puce radio CC2420 et CC1100, respectivement. Le tableau 4.2 indique lesintensitĂ©s de courant tirĂ©es de la batterie pour une plate-forme matĂ©rielle de typeTelosB Ă  divers Ă©tats d’activitĂ©s : CPU, LPM, Tx et Rx. Ils correspondent respective-ment aux phases de calcul, basse consommation, transmission et rĂ©ception. Les don-nĂ©es prĂ©sentĂ©es sont extraites de la fiche technique du TelosB et nous permettentde calculer la partie linĂ©aire du modĂšle rĂ©cursif. Les nƓuds dĂ©marrent tous avec unecharge initiale fixĂ©e Ă  880mA, reprĂ©sentant 100% de charge. Cette charge est rĂ©Ă©valuĂ©etoutes les 2s par un processus qui implĂ©mente le modĂšle. La frĂ©quence de rĂ©Ă©valuationcorrespond Ă  ∆, intervalle de temps d’estimation de la charge restante. Les adaptationsrĂ©alisĂ©es nous permettent une implĂ©mentation avec une empreinte mĂ©moire de 12KbreprĂ©sentant 25% de la mĂ©moire flash totale dont dispose le nƓud.

Page 67: Configuration dynamique et routage pour l'internet des objets

Chapitre 4. Routage par l’Énergie 47

Module Mode opérationnel Courant (mA)MSP430 Actif (CPU) 1.8

Sommeil (LPM) 0.0545Tranceiver Radio Tx 17.4CC2420 Rx 18.8

TABLE 4.2 – Mesures des consommations de courant : TelosB (sky)

Suivant les recommandations relatives Ă  la mĂ©trique Ă©nergie du standard de rou-tage RPL [Vas+12], l’énergie est estimĂ©e par un entier sur 8 bits. Pour obtenir une gra-nularitĂ© fine de l’évolution Ă©nergĂ©tique d’un nƓud donnĂ©, nous effectuons les calculsavec une prĂ©cision de 5 dĂ©cimales (255×105 correspond Ă  la capacitĂ© Ă©nergĂ©tique maxi-male).

4.1.4 Résultats de simulation du modÚle non linéaire

Les simulations ont Ă©tĂ© rĂ©alisĂ©es sur la plate-forme Cooja [OD06], avec des nƓudsde type TelosB Ă©quipĂ©s du systĂšme d’exploitation Contiki [DGV04]. Une applicationsimple de collecte de donnĂ©es, oĂč les nƓuds (Sender) envoient des informations appli-catives Ă  un point (Sink ou puits) par routage multi-sauts est dĂ©veloppĂ©e. Nous utili-sons pour cela le protocole RPL [Win+12]. Les nƓuds dĂ©marrent tous avec une batteriede charge initiale maximale fixĂ©e Ă  880mAh.

4.1.4.1 Profil énergétique de démarrage

Nous dĂ©butons la simulation avec uniquement deux nƓuds : un sender et un sink.La figure 4.1 illustre le profil Ă©nergĂ©tique du sender, relatif aux premiers instants d’acti-vitĂ©s. Les temps passĂ©s dans chacun des Ă©tats (CPU, Tx et Rx) sont Ă©galement prĂ©sentĂ©s.On peut voir que, pendant la premiĂšre minute (figure 4.1a), une forte dĂ©croissance dela batterie a lieu. Celle ci est corrĂ©lĂ©e Ă  la forte activitĂ© sur le schĂ©ma 4.1b, associĂ©e Ă la mĂȘme pĂ©riode. Cela se justifie par la pĂ©riode de mise en place du rĂ©seau. Il y a uneinitialisation du systĂšme et de la pile protocolaire (utilisation de la CPU), suivi de la dĂ©-couverte du voisinage (activitĂ©s TX et Rx). Durant la seconde minute, puis les minutessuivantes, l’effet de rĂ©cupĂ©ration est assez marquĂ©. Il correspond Ă  des phases de plusfaibles activitĂ©s de la radio.

4.1.4.2 Profil énergétique selon la dynamique réseau

Le profil Ă©nergĂ©tique du nƓud 2 est examinĂ© sous divers scĂ©narios. La figure 4.2aprĂ©sente les diffĂ©rentes conditions auxquelles est soumis ce dernier. A la dixiĂšme mi-nute de l’expĂ©rience, cinq autres nƓuds sont rajoutĂ©s Ă  la topologie initiale. Ceci nouspermet d’évaluer l’évolution Ă©nergĂ©tique liĂ©e Ă  l’accumulation du trafic sur le nƓudrelayeur. A la vingtiĂšme minute, les nƓuds prĂ©cĂ©demment ajoutĂ©s sont retirĂ©s. Puis,15 minutes plus tard, le nƓud 2 perds sa connectivitĂ© au sink (retirĂ© de la topologie).

La figure 4.2b illustre l’évolution Ă©nergĂ©tique du nƓud 2 sous les conditions prĂ©cĂ©-dentes, Ă  la fois suivants les modĂšles linĂ©aire et non linĂ©aire (avec effet de rĂ©cupĂ©ration).La premiĂšre chute importante de la batterie survient Ă  la dixiĂšme minute du fait de la

Page 68: Configuration dynamique et routage pour l'internet des objets

Chapitre 4. Routage par l’Énergie 48

99.9993

99.9994

99.9995

99.9996

99.9997

99.9998

99.9999

100

0 1 2 3 4 5 6

Battery

lifetim

e (

%)

Time (mn)

0

50

100

150

200

250

300

0 1 2 3 4 5 6

Duties s

chedule

(m

s)

Time (mn)

CPUTXRX

(a) (b)

FIGURE 4.1 – Premiers instants d’activitĂ©

1

2

1

2

4 63 7

5

1

2 2

Time (mn)

0 10 20 35

99.55

99.6

99.65

99.7

99.75

99.8

99.85

99.9

99.95

100

0 10 20 30 40 50 60

Battery

lifetim

e (

%)

Time (mn)

recoverylinear

(a) (b)

FIGURE 4.2 – Dynamique du profil Ă©nergique

Page 69: Configuration dynamique et routage pour l'internet des objets

Chapitre 4. Routage par l’Énergie 49

quantitĂ© de trafic gĂ©nĂ©rĂ© par les nƓuds 3 Ă  7. DĂšs que les nƓuds rajoutĂ©s sont retirĂ©sĂ  la vingtiĂšme minute, une forte rĂ©cupĂ©ration a lieu. Celle ci se stabilise Ă  un certainniveau, aprĂšs quoi la perte Ă©nergĂ©tique devient moins abrupte. Il faut noter que pourle modĂšle linĂ©aire oĂč l’on n’a pas de rĂ©cupĂ©ration, seule la pente reprĂ©sentant la dĂ©per-dition Ă©nergĂ©tique change entre ces deux dates.

A la trente-cinquiĂšme minute lorsque le sink est retirĂ©, on observe une forte chute dela batterie du nƓud 2. Elle est due Ă  une utilisation importante de la radio pour la trans-mission des messages de contrĂŽle RPL de type sollicitation de voisin (DIS). Le nƓud quia perdu sa connectivitĂ© au sink, pendant un moment recherche activement un pro-chain saut. AprĂšs environ trois minutes de recherche infructueuse, le nƓud diminuele rythme de ses sollicitations, et on observe Ă  nouveau une rĂ©cupĂ©ration importante.Encore ici, nous notons que le modĂšle linĂ©aire est moins rĂ©actif. Cette diffĂ©rence netteentre les deux modĂšles, nous suggĂšre une sous-estimation ou surestimation l’énergiedu nƓud par cette derniĂšre, relativement Ă  la dynamique du rĂ©seau.

4.1.4.3 Erreur d’approximation

Les adaptations rĂ©alisĂ©es pour implĂ©menter le modĂšle dans l’environnement con-traint du capteur intĂšgre nĂ©cessairement des erreurs d’approximation. Celles ci sontĂ  la fois dues aux opĂ©rations rĂ©alisĂ©es exclusivement en arithmĂ©tique entiĂšre du mi-crocontrĂŽleur MSP430 et aux erreurs d’arrondies liĂ©es aux divisions. Une version dumodĂšle en arithmĂ©tique flottante a Ă©tĂ© implĂ©mentĂ©e en script Perl. La figure 4.3 per-met d’évaluer le gap entre les deux implĂ©mentations. Nous observons que l’estimationĂ©nergĂ©tique calculĂ©e par les capteurs est lĂ©gĂšrement infĂ©rieure Ă  la version flottante,mais la diffĂ©rence entre les deux reste constante.

99.93

99.935

99.94

99.945

99.95

99.955

99.96

99.965

99.97

0 5 10 15 20 25 30 35 40 45

Ba

tte

ry life

tim

e (

%)

Time (mn)

IntegerFloating point

FIGURE 4.3 – Gap entre les implĂ©mentations flottante et entiĂšre

4.1.4.4 DurĂ©e de vie des nƓuds

Le principal intĂ©rĂȘt de l’estimation de l’énergie des nƓuds est de pouvoir planifierla durĂ©e d’utilisation du rĂ©seau dĂ©ployĂ© sans remplacement des capteurs ou recharge

Page 70: Configuration dynamique et routage pour l'internet des objets

Chapitre 4. Routage par l’Énergie 50

de leur batterie. Le systĂšme d’exploitation Contiki offre en dessous la couche MACplusieurs cycles d’utilisation radio (RDC : Radio Duty Cycle en anglais). Certaines de cessous-couches maximisent l’utilisation de l’énergie est dĂ©sactivant la radio autant quepossible (contikiMAC), tandis que d’autres laissent la radio ouverte en permanence(sicslowMAC). Le tableau 4.3 prĂ©sente le temps nĂ©cessaire pour que la batterie soit

RDC Durée Batterie(jours)

contikiMAC 128X-MAC 30

CX-MAC 26sicslowMAC 1.8

DĂ©bit : 1pkt/mn

Débit Durée Batterie(pkts/mn) (jours)

60 7720 10512 1132 124RDC : contikiMAC

TABLE 4.3 – DurĂ©e d’utilisation de la Batterie

complĂštement Ă©puisĂ©e (i.e. 0%) sous diverses RDC. Dans la partie gauche du tableau, ledĂ©bit d’émission des paquets est le mĂȘme pour tous les scĂ©narios, soit 1 paquet toutesles minutes. Comme on aurait pu le prĂ©voir, contikiMAC correspond Ă  la RDC oĂč la bat-terie a une durĂ©e d’utilisation maximale, tandis que sicslowMAC offre une durĂ©e mini-male. Par ailleurs, l’impact du dĂ©bit de paquets applicatifs sur la batterie a Ă©galementĂ©valuĂ© (partie gauche du tableau 4.3). Cette Ă©valuation a Ă©tĂ© rĂ©alisĂ©e avec contikiMAC,qui est la plus Ă©conome en Ă©nergie. Nous faisons varier le dĂ©but de 1 Ă  60 paquets parminutes. Au regard de ces expĂ©riences, nous pouvons conclure que la sous-couche decontrĂŽle du canal radio : RDC, a un fort impact sur la consommation du nƓud. Cetteinfluence est encore plus importante que le dĂ©bit applicatif, et contribue grandement Ă sa durĂ©e de vie.

4.2 Fonction d’Objectif RPL basĂ©e sur l’énergie

Le rĂ©seau de capteurs sans fil prĂ©sente des caractĂ©ristiques uniques qui rendentdifficile l’utilisation des solutions et protocoles des rĂ©seaux filaires ou sans fil (tel queles rĂ©seaux Ad-hoc) traditionnels. Pour faire face aux contraintes liĂ©es Ă  la capacitĂ© li-mitĂ©e des nƓuds en terme de puissance de calcul et de mĂ©moire, ainsi qu’aux faiblesdĂ©bits de donnĂ©es, Ă  l’instabilitĂ© et la non fiabilitĂ© du canal radio, le groupe de tra-vail ROLL de l’IETF a publiĂ© le standard de routage RPL [Win+12], adaptĂ© Ă  ce typed’environnement. Plusieurs mĂ©triques de routage sont prĂ©vues pour ĂȘtre prises encompte dans la construction de la topologie de rĂ©seau. Celles-ci sont dĂ©crites dansla RFC6551 [Vas+12], document d’accompagnement du standard. À notre connais-sance, aucune implĂ©mentation de fonction d’objectif (OF) RPL prenant en considĂ©ra-tion l’énergie comme unique mĂ©trique de routage n’existe dans la littĂ©rature. Seulesdeux implĂ©mentations de fonctions d’objectif sont largement dĂ©ployĂ©es, la premiĂšreutilisant le nombre de sauts comme mĂ©trique de routage, la seconde se servant del’ETX - mĂ©trique renseignant sur la fiabilitĂ© de la transmission. Les recommandationssur la mise en Ɠuvre de ces deux mĂ©triques sont publiĂ©es dans les RFCs 6552 et 6719[Thu12 ; GL12] accompagnant le standard. Nous proposons de nous servir de l’énergie

Page 71: Configuration dynamique et routage pour l'internet des objets

Chapitre 4. Routage par l’Énergie 51

restante estimĂ©e dynamiquement par le nƓud, suivant le modĂšle prĂ©sentĂ© en §4.1.2pour organiser la topologie de routage [Kam+13].

4.2.1 CapacitĂ© Ă©nergĂ©tique de la routeNous dĂ©finissons la capacitĂ© Ă©nergĂ©tique Ci du chemin allant du nƓud i Ă  la racine,

comme Ă©tant la valeur minimale d’énergie de tous les nƓuds sur ce chemin, i compris.Cette information codĂ©e sur 8 bits est propagĂ©e dans des messages de contrĂŽle RPLde type DIO, transportant d’autres paramĂštres de configuration. Le nƓud puits (ouracine) annonce toujours un niveau de batterie maximal ; i.e. MAXenergy = 255. Ce der-nier est supposĂ© ĂȘtre alimentĂ© par une source d’énergie permanente. Lorsqu’un nƓudreçoit plusieurs annonces (Ă©manant de prochains sauts potentiels) de son voisinageVi, il choisit comme prochain saut, le voisin lui indiquant une capacitĂ© Ă©nergĂ©tique dechemin la plus Ă©levĂ©e. Par la suite, le nƓud calcule la capacitĂ© Ă©nergĂ©tique du cheminpassant par le parent choisi, chemin ayant comme origine le nƓud lui-mĂȘme. DĂšs lors,ce dernier commence Ă  propager ses propres annonces DIO.Plus formellement, la capacitĂ© Ă©nergĂ©tique du chemin issu du nƓud i est :

Ci = min[maxj∈Vi

(Cj), Ei] (4.7)

avec Ei Ă©nergie rĂ©siduelle du nƓud i et Vi l’ensemble des voisins de i pouvant leconduire vers la racine. Pour un chemin issu d’un nƓud i donnĂ©, la relation 4.7 cor-respond Ă  la valeur minimale d’énergie sur le chemin le plus intĂ©ressant et l’énergiedu nƓud i, lui-mĂȘme. Cette mĂ©trique nous semble justifiĂ©e, car la route choisie estcontrainte par la capacitĂ© Ă©nergĂ©tique du nƓud le plus faible sur le chemin. Par ailleurs,Ă©tant donnĂ© plusieurs voisins potentiels, le chemin le plus intĂ©ressant est celui passantpar le voisin annonçant la plus grande mĂ©trique de route.

Pour illustrer le principe d’utilisation de cette mĂ©trique, considĂ©rons la topologie rĂ©-seau illustrĂ©e par la figure 4.4. Le nƓud 1 est la racine alimentĂ©e en permanence (E =255). Les autres nƓuds ont, Ă  l’instant capturĂ©, les niveaux de batterie indiquĂ©s. Lesliens en pointillĂ©s indiquent la possibilitĂ© de communication entre nƓuds voisins. LenƓud 6 reçoit les annonces DIO de ses voisins (potentiel prochain saut) : 3, 4, 5, et 8.Ces annonces indiquent respectivement des mĂ©triques de chemin C3 = 220, C4 = 215,C5 = 217 etC8 = 217 (notez que 8 n’annonce pas sa propre valeur Ă©nergĂ©tiqueE8 = 240comme mĂ©trique de chemin, mais plutĂŽt celle contraignant la route vers la racine).Ainsi sur la base la relation 4.7, le nƓud 6 choisira 3 comme parent qui est la meilleureroute vers le nƓud 1, du point de vue capacitĂ© Ă©nergĂ©tique rĂ©siduelle.

Le nƓud 3 qui est le plus sollicitĂ©, Ă©puisera plus rapidement sa batterie. ConsidĂ©ronsqu’à une autre date celle-ci ait diminuĂ© de 20 unitĂ©s, contre 5 unitĂ©s pour les autresnƓuds. La figure 4.5 montre comment le rĂ©seau rĂ©agira en fonction de la nouvellevaleur de mĂ©trique Ă©nergie propagĂ©e par les nƓuds :

1. Le nƓud 3 n’est plus le meilleur parent pour 6. Ce dernier dĂ©couvre une routeplus intĂ©ressante passant par 4 (C3 = 200 tandis que C4 = 210).

2. Pareillement, le nƓud 5 passe par 6 qui offre une meilleure route que 3 (C3 = 200tandis que C6 = 205).

Page 72: Configuration dynamique et routage pour l'internet des objets

Chapitre 4. Routage par l’Énergie 52

FIGURE 4.4 – CapacitĂ© Ă©nergĂ©tique d’une route

Le rĂ©seau s’adaptera dynamiquement Ă  ces changements, et nous faisons l’hypothĂšseque les niveaux des batteries s’équilibreront au fur et Ă  mesure.

4.2.2 Calcul de rang

Le rang est implĂ©mentĂ© comme une valeur Ă  virgule fixe oĂč la partie entiĂšre et la par-tie dĂ©cimale sont dĂ©terminĂ©es par le paramĂštre MinHopRankIncrease (fourni par laracine et transportĂ© par les annonces DIO). Lorsque le rang est utilisĂ© pour dĂ©terminerla position relative de deux nƓuds ou pour dĂ©tecter la prĂ©sente des boucles dans lerĂ©seau, seule la partie entiĂšre est utilisĂ©e. Par contre, l’OF rĂ©alise le calcul de la valeurcomplĂšte en virgule fixe (16 bits).

FIGURE 4.5 – Calcul de rang de l’OF-Ă©nergie

Soit un nƓud N ayant choisi comme prochain saut le parent P . N calcule son rang enajoutant au rang du parent, un accroissement (valeur strictement positive). L’accroisse-ment est dĂ©terminĂ© comme indiquĂ© par la formule 4.8, avec pas = MAXenergy − EN .

Rank(N) = Rank(P ) +Rankincravec Rankincr = pas+ MinHopRankIncrease

(4.8)

Page 73: Configuration dynamique et routage pour l'internet des objets

Chapitre 4. Routage par l’Énergie 53

Cette formule garantit la propriĂ©tĂ© de monotonie du rang qui augmente d’au moinsun point (i.e MinHopRankIncrease) entre un nƓud donnĂ© et son parent. Ceci li-mite dans le voisinage les nƓuds susceptibles d’ĂȘtre parent d’un nƓud donnĂ©, i.e. ceuxayant une valeur de rang strictement infĂ©rieur Ă  celle de ce dernier. L’augmentation derang est d’autant plus importante que la batterie du nƓud fils est faible, puisque le pasparticipant Ă  la partie dĂ©cimale du rang dĂ©pend de celui-ci. Par effet de cumul et despĂ©nalitĂ©s liĂ©es aux niveaux des batteries des nƓuds sur le chemin, la diffĂ©rence de rangentre un nƓud et son parent peut ĂȘtre de plus d’un point (voir Tableau 4.4 − accrois-sement de rang entre les nƓuds 5 et 7). La figure 4.5 illustre comment nous dĂ©rivonsla valeur du rang de la mĂ©trique de chemin, et le Tableau 4.4 met l’accent sur le calculdes rangs du chemin 1 − 4 − 6 − 5 − 7 − 9. La valeur du rang de la racine est la mĂȘmeque celle du paramĂštre MinHopRankIncrease (256 dans notre implĂ©mentation). Il

ID du Valeur en Virgule Partie DĂ©cimale Partie EntiĂšreNƓud Fixe (16 bits) (8 bits) (Int)

1 256 0 14 557 45 26 863 95 35 1162 138 47 1568 32 69 1834 42 7

TABLE 4.4 – Calcul dĂ©taillĂ© du rang

convient de remarquer que les nƓuds 7 et 8 ont un parent commun (nƓud 5), maisleur rang respectif nous montre que la position relative de 8 vers la racine est meilleureque celle de 7.

4.2.3 OptimalitĂ© et absence de boucleLes diffĂ©rentes exigences liĂ©es Ă  l’utilisation d’un rĂ©seau de capteurs et Ă  l’appli-

cation dĂ©ployĂ©e donne lieu Ă  la conception de diverses mĂ©triques de routage. Dans[YW03], les auteurs fournissent une analyse systĂ©matique de la relation entre mĂ©triqueet protocole de routage. Ces travaux repris par [Sob08] dĂ©finissent un cadre formel despropriĂ©tĂ©s algĂ©briques de base que la mĂ©trique doit possĂ©der pour garantir la consis-tance, l’optimalitĂ© et l’absence de boucle du routage conçu.

— consistance : Le routage sera dit consistant, si la dĂ©cision de transmission d’unpaquet le long d’un chemin donnĂ© est consistant pour tous les nƓuds sur cechemin. En d’autres termes, si le nƓud n1 transmet le paquet en direction dunƓud nk sur le chemin p(n1, nk) = 〈n1, n2, · · · , nk〉, tous les autres nƓuds sur cechemin en font de mĂȘme, i.e n2 transmettra le paquet vers nk selon le cheminp(n2, nk) = 〈n2, n3, · · · , nk〉, ainsi de suite pour chacun des nƓuds n3, · · · , nk−1.

— optimalitĂ© : Il s’agit d’une propriĂ©tĂ© gĂ©nĂ©rique du protocole du routage. Elleassure la transmission du paquet sur le chemin le plus « lĂ©ger » (au regard dela mĂ©trique implĂ©mentĂ©e). L’absence de cette propriĂ©tĂ© conduit Ă  un routagesous-optimal, donc inconsistant.

Page 74: Configuration dynamique et routage pour l'internet des objets

Chapitre 4. Routage par l’Énergie 54

— absence de boucle : C’est l’une des propriĂ©tĂ©s les plus importantes, car ayantun impact direct sur la qualitĂ© de service. Une boucle de routage se produitlorsqu’un paquet transmis passe par un ensemble de routeurs donnĂ©, puis tran-site Ă  nouveau par l’un des routeurs de l’ensemble sans atteindre sa destinationfinale.

Pour garantir ces trois propriĂ©tĂ©s fondamentales, les conditions nĂ©cessaires et suf-fisantes que doit satisfaire la mĂ©trique sont les propriĂ©tĂ©s d’isotonie et de monotonie[Sob08]. Plus formellement, une mĂ©trique de routage peut ĂȘtre dĂ©crite par une algĂšbresur le quadruplet (ÎŁ,⊕, w,), oĂč ÎŁ est l’ensemble des chemins,⊕ l’opĂ©rateur de conca-tĂ©nation des chemins, w une fonction qui transforme un chemin donnĂ© Ă  son coĂ»t as-sociĂ© et une relation d’ordre.

Isotonie :

Cette propriĂ©tĂ© signifie que la relation d’ordre entre deux chemins est prĂ©servĂ©e, sichacun d’entre-eux est prĂ©fixĂ© ou suffixĂ© par un chemin commun. En d’autres termes,la structure algĂ©brique (ÎŁ,⊕, w,) est dite isotonique si et seulement si : ∀a, b, c ∈ ÎŁ,w(a) w(b) implique Ă  la fois w(c⊕ a) w(c⊕ b) et w(a⊕ c) w(b⊕ c).

Monotonie :

La propriĂ©tĂ© de monotonie garantit que le coĂ»t associĂ© Ă  un chemin ne dĂ©croit pas(au sens de la relation d’ordre) lorsque celui-ci est prĂ©fixĂ© ou suffixĂ© par un autre che-min. Plus formellement, l’algĂšbre (ÎŁ,⊕, w,) est monotone si : w(a) w(c ⊕ a) etw(a) w(a⊕ c) est vĂ©rifiĂ©e ∀a, c ∈ ÎŁ.

Proposition 1 (Isotonie de la mĂ©trique Ă©nergie).Soit la structure algĂ©brique (ÎŁ,⊕,Emin,≄), oĂč Emin(p) est la plus petite Ă©nergie rĂ©siduelle denƓud sur le chemin p, algĂšbre dĂ©finie sur la relation d’ordre ≄. (ÎŁ,⊕,Emin,≄) est isotonique.

DĂ©monstration. L’opĂ©rateur ⊕ de concatĂ©nation des chemins est commutatif pour lafonction de coĂ»t Emin. Formellement, Emin(x⊕y) = Emin(y⊕x), ∀x, y ∈ ÎŁ. Nous pouvonsdonc nous limiter Ă  la dĂ©monstration Ă  celle de l’isotonie-gauche (Soit, uniquement pourceux des chemins prĂ©fixĂ©s).

En effet : ConsidĂ©rons deux chemins a et b tels que Emin(a) ≄ Emin(b). Nous voulonsmontrer que : ∀c ∈ ÎŁ, Emin(c ⊕ a) ≄ Emin(c ⊕ b). Pour la premiĂšre inĂ©galitĂ©, nousdistinguons trois cas de figures :

1. Emin(c) > Emin(a)On a Emin(c⊕ a) = Emin(a) et Emin(c⊕ b) = Emin(b) =⇒ Emin(c⊕ a) ≄ Emin(c⊕ b).

2. Emin(a) ≄ Emin(c) ≄ Emin(b)On a Emin(c⊕ a) = Emin(c) et Emin(c⊕ b) = Emin(b) =⇒ Emin(c⊕ a) ≄ Emin(c⊕ b).

3. Emin(b) > Emin(c)On a Emin(c⊕ a) = Emin(c⊕ b) = Emin(c) =⇒ Emin(c⊕ a) ≄ Emin(c⊕ b).

Page 75: Configuration dynamique et routage pour l'internet des objets

Chapitre 4. Routage par l’Énergie 55

Proposition 2 (Monotonie de la mĂ©trique Ă©nergie).Soit la structure algĂ©brique (ÎŁ,⊕,Emin,≄), oĂč Emin(p) est la plus petite Ă©nergie rĂ©siduelle denƓud sur le chemin p, algĂšbre dĂ©finie sur la relation d’ordre ≄. (ÎŁ,⊕,Emin,≄) est monotone.

DĂ©monstration. Pour la mĂȘme raison Ă©voquĂ©e plus haut (commutativitĂ© de⊕ pour Emin

dans ÎŁ), la dĂ©monstration peut se limiter Ă  l’établissement de la monotonie-gauche. Celarevient Ă  montrer que : ∀a, c ∈ ÎŁ, Emin(a) ≄ Emin(c⊕ a).

Pour tout chemin préfixé c, deux situations sont possibles :

1. Emin(a) ≄ Emin(c)On a Emin(c⊕ a) = Emin(c) =⇒ Emin(a) ≄ Emin(c⊕ a).

2. Emin(c) > Emin(a)On a Emin(c⊕ a) = Emin(a) =⇒ Emin(a) ≄ Emin(c⊕ a).

Nous avons ainsi montrĂ© que : la mĂ©trique RPL basĂ©e sur l’énergie proposĂ©e est Ă  la foisisotonique et monotone. En conformitĂ© avec [YW03], nous pouvons conclure qu’ellesatisfait les exigences de consistance, d’optimalitĂ© et d’absence de boucle.

4.3 Expérimentations et évaluation

4.3.1 Environnement

Pour Ă©valuer notre proposition, nous avons dĂ©ployĂ© deux scĂ©narios de routage :le premier, basĂ© sur notre proposition de routage par l’énergie, le second, utilisant laversion trĂšs rĂ©pandue de RPL : le routage avec l’ETX. Les expĂ©riences ont Ă©tĂ© rĂ©ali-sĂ©es dans le simulateur Cooja [OD06]. Les nƓuds dĂ©ployĂ©s embarquent une imagerĂ©elle du systĂšme d’exploitant Contiki [DGV04] grĂące Ă  l’outil Java MSPSim [Eri+08]qui Ă©mulent les instructions machines des plate-formes dotĂ©es d’un microcontrĂŽleurMSP430. La topologie rĂ©seau est une grille−2D 300m× 300m de 20 capteurs, la racineĂ©tant situĂ©e au coin supĂ©rieur gauche. Chaque nƓud Ɠuvre dans un rayon de trans-mission de 120m et d’interfĂ©rence de 140m, envoyant rĂ©guliĂšrement des datagrammesUDP avec un ratio de transmission/rĂ©ception fixĂ© Ă  80%. Nous utilisons ContikiMAC[Dun11], Ă  la couche 2 pour contrĂŽle d’accĂšs au support. Celle-ci nous permet d’éco-nomiser de l’énergie en dĂ©sactivant la radio le plus souvent (99% du temps). Tous lesnƓuds sont lancĂ©s avec une batterie pleine, fixĂ©e Ă  880mAh de charge, et qui reprĂ©sente100% d’énergie. L’ordinateur utilisĂ© pour les simulations est Ă©quipĂ© d’un processeurIntel Dual Core XEON de 3.2 Ghz, d’une mĂ©moire de 8 Go et tourne sous le systĂšmed’exploitation Ubuntu 11.10. La figure 4.6 donne un aperçu du rĂ©seau. Les flĂšches re-prĂ©sentent les choix de prochain saut effectuĂ©s par les capteurs, sur la base de la capa-citĂ© Ă©nergĂ©tique rĂ©siduelle des nƓuds se trouvant sur le chemin menant Ă  la racine. Sil’on considĂšre le nƓud 7 (mis en Ă©vidence), la rĂ©gion verte correspond au domaine detransmission/rĂ©ception et la zone grise Ă  la zone d’interfĂ©rence. Les inscriptions sousles nƓuds entourĂ©s indiquent la qualitĂ© du lien radio avec 7.

Page 76: Configuration dynamique et routage pour l'internet des objets

Chapitre 4. Routage par l’Énergie 56

FIGURE 4.6 – Aperçu de la topologie rĂ©seau

4.3.2 Répartition énergétique

Pour obtenir un profil Ă©nergĂ©tique significatif des nƓuds, nous avons simulĂ© 13jours d’activitĂ© (rĂ©alisĂ© en 30 jours rĂ©els sur notre machine). La durĂ©e de vie du rĂ©seauest la date Ă  laquelle le premier nƓud du rĂ©seau a complĂštement Ă©puisĂ© sa batterie[DD09]. Dans les deux scĂ©narios (routage par l’énergie et routage par l’ETX), les nƓudsgĂ©nĂšrent des donnĂ©es applicatives d’une taille de 87 octets, Ă  diverses frĂ©quences ex-primĂ©es en nombre de paquets applicatifs par minute (pkts/min). Ces donnĂ©es sont en-voyĂ©es vers la racine. Un routage prenant en compte l’énergie aura tendance Ă  utiliserles nƓuds qui en sont le plus dotĂ©s, ceux-ci Ă©puiseront plus rapidement leur batterie etdeviendront par la suite moins attractifs pour relayer les informations. Le rĂ©seau devraalors s’organiser pour sĂ©lectionner des nƓuds plus intĂ©ressants. Ceci devra conduire Ă une rĂ©partition assez Ă©quilibrĂ©e de l’énergie sur l’ensemble des nƓuds.Les rĂ©sultats des simulations illustrĂ©s par la figure 4.7 indiquent les proportions denƓuds dans le rĂ©seau avec leur pourcentage de batterie restante Ă  l’arrĂȘt de l’expĂ©-rience. Nous observons sur le schĂ©ma 4.7a dont les nƓuds Ă©mettent des donnĂ©es Ă 1pkt/min, 85% de nƓuds ont leur batterie dans l’intervalle [54%−56%] pour le routagepar l’énergie, tandis que le routage avec l’ETX rĂ©partit inĂ©galement l’énergie sur l’en-semble des nƓuds. Ce constat est beaucoup plus prononcĂ© sur le schĂ©ma 4.7b oĂč lesnƓuds Ă©mettent des donnĂ©es Ă  une frĂ©quence plus Ă©levĂ©e (6pkts/min). L’intensitĂ© dutrafic Ă©tant plus importante, les nƓuds Ă©puisent plus rapidement leur batterie, nĂ©an-moins le routage par l’énergie maintient un plus grand nombre de nƓuds Ă  un niveaude batterie plus important que dans le second scĂ©nario. Pour les deux intensitĂ©s detrafic, le routage avec l’ETX possĂšde toujours un plus grand nombre de nƓuds ayantun niveau de batterie plus faible (environ 20%) que celui du routage par l’énergie. Cedernier retarde d’avantage le(s) premier(s) nƓud(s) qui Ă©puisera(ront) leur Ă©nergie. Ils’agit d’un point capital, car l’intĂ©gritĂ© du rĂ©seau est forcĂ©ment affectĂ©e lorsque des

Page 77: Configuration dynamique et routage pour l'internet des objets

Chapitre 4. Routage par l’Énergie 57

5

10

15

20

25

30

35

40

45

51 52 53 54 55 56 57 58 59 60

No

de

s (

%)

Remaining Energy (%)

Throughput: 1pkt/min

ETXEnergy

5

10

15

20

25

30

35

40

45

50

55

60

22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51

No

de

s (

%)

Remaining Energy (%)

Throughput: 6pkts/min

ETXEnergy

(a) (b)

FIGURE 4.7 – Distribution de l’énergie rĂ©siduelle sur les nƓuds

nƓuds commencent Ă  s’arrĂȘter pour dĂ©faut d’énergie. Des scissions du rĂ©seau appa-raĂźtront, impactant grandement sur la qualitĂ© du service rendu.

0

20

40

60

80

100

0 5 10 15 20 25 30

Node p

ow

er

level (%

)

Time (day)

ETXEnergy

FIGURE 4.8 – Évolution Ă©nergĂ©tique des nƓuds les plus sollicitĂ©s

La figure 4.8 reprĂ©sente une estimation par rĂ©gression linĂ©aire de la date Ă  laquelle lenƓud le plus faible Ă©puisera complĂštement son Ă©nergie. Elle se fonde sur les donnĂ©escollectĂ©es des 13 premiers jours de fonctionnement du rĂ©seau, ceci pour une frĂ©quenced’émission de 6pkts/min dans les deux routages. Les rĂ©sultats indiquent une durĂ©e devie de 35 jours pour le scĂ©nario ETX et 40 jours pour le routage par l’énergie, impliquantune extension non nĂ©gligeable de plus de 14% de durĂ©e de vie.

4.3.3 Fiabilité de transmissionNous avons également évalué la fiabilité du réseau à livrer les paquets au point

de collecte. Le routage avec l’ETX promeut les routes ayant un taux de livraison plus

Page 78: Configuration dynamique et routage pour l'internet des objets

Chapitre 4. Routage par l’Énergie 58

important, tandis que le routage par l’énergie n’en tient pas compte. Il ne serait pas sur-prenant que le nombre de paquets reçus Ă  la racine soit meilleur dans le scĂ©nario avecl’ETX que celui avec l’énergie. Ceci est confirmĂ© par la figure 4.9 qui indique le nombrede paquets correctement reçus pour chaque frĂ©quence d’émission. Le tableau 4.5 fait

34000

36000

38000

40000

42000

2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

N. of re

ceiv

ed p

kts

Node ID

Throughput: 1pkt/min

ETXEnergy

200000

210000

220000

230000

240000

250000

2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

N. of re

ceiv

ed p

kts

Node ID

Throughput: 6pkts/min

ETXEnergy

FIGURE 4.9 – Nombre de paquets reçus au point de collecte par nƓud

un rĂ©capitulatif global de l’ensemble des paquets reçus par la racine, pour chaque frĂ©-quence d’émission. Nous constatons que les taux de livraison des paquets Ă  la racinedans les deux scĂ©narios est assez Ă©levĂ©, la diffĂ©rence entre ces taux Ă©tant faible. Bienque le routage avec l’ETX ait une meilleure performance, cette diffĂ©rence n’excĂšde pas3%.

Taux d’émission EnvoyĂ©s Reçus (ETX) Reçus (Énergie)6 pkts/min 4 488 635 4 390 282 (97.80%) 4 251 962 (94.72%)

1 pkt/min 748 105 735 680 (98.34%) 722 394 (96.56%)

TABLE 4.5 – FiabilitĂ© de livraison des paquets

4.4 Conclusion

Dans ce chapitre, nous avons conçu un routage pour les rĂ©seaux de capteurs sansfil prenant en compte l’énergie rĂ©siduelle des nƓuds. L’implĂ©mentation de ce routagea Ă©tĂ© rĂ©alisĂ©e et intĂ©grĂ©e Ă  un systĂšme d’exploitation largement rĂ©pandu dans les cap-teurs sans fil, Contiki. Les nƓuds dĂ©terminent en temps rĂ©el leur capacitĂ© Ă©nergĂ©-tique grĂące Ă  un modĂšle d’estimation d’énergie prenant en compte les processus Ă©lec-triques et chimiques Ă  l’intĂ©rieur de la batterie. Le modĂšle intĂšgre les effets non linĂ©airesliĂ©s Ă  la rĂ©cupĂ©ration de charge lors des phases d’inactivitĂ©s. Nous avons montrĂ© que lamĂ©trique conçue assure les propriĂ©tĂ©s de consistance et d’absence de boucle pour leroutage. Une Ă©valuation et comparaison du routage RPL par l’énergie a Ă©tĂ© faite avecla version par dĂ©faut du standard utilisant l’ETX comme mĂ©trique. Les rĂ©sultats nousindiquent une extension (≈ 14%) de la durĂ©e de vie du rĂ©seau avec un faible dĂ©grada-tion (moins de 3%) du taux de livraison des paquets.

Bien que l’énergie soit un facteur primordial dans la conception de protocoles pourrĂ©seau de capteurs sans fil, d’autres critĂšres, en fonction de l’application cible et de laqualitĂ© de service souhaitĂ©e doivent ĂȘtre considĂ©rĂ©s. Dans le prochain chapitre, nousĂ©tudions la possibilitĂ© de combiner l’énergie, avec d’autres mĂ©triques (ETX, dĂ©lai, . . .)

Page 79: Configuration dynamique et routage pour l'internet des objets

Chapitre 4. Routage par l’Énergie 59

pour construire la topologie rĂ©seau, grĂące Ă  un routage qui puisse tenir dans la mĂ©-moire des capteurs et ĂȘtre rĂ©alisable malgrĂ© leur faible puissance de calcul.

Page 80: Configuration dynamique et routage pour l'internet des objets
Page 81: Configuration dynamique et routage pour l'internet des objets

61

Chapitre 5

Combinaison de métriques par laLogique Floue

Un routage prenant en compte la qualitĂ© de service (QdS) dans un rĂ©seau de cap-teurs sans fil, vise Ă  considĂ©rer outre le facteur Ă©nergĂ©tique, d’autres paramĂštres de per-formance. Ces paramĂštres peuvent ĂȘtre : le dĂ©lai de bout-en-bout, la gigue, le taux deperte de paquets, le dĂ©bit de transmission, . . . Plusieurs flux de donnĂ©es ayant diversesexigences de QdS peuvent se partager le mĂȘme rĂ©seau. A titre d’illustration, une ap-plication pourrait envoyer pĂ©riodiquement des relevĂ©s de donnĂ©es environnementales(tempĂ©rature, humiditĂ© et luminositĂ©), tout en rĂ©agissant Ă  des Ă©vĂ©nements soudainscomme l’atteinte d’un seuil spĂ©cifique de pollution (gaz) ou la dĂ©tection de prĂ©sencedans la piĂšce. L’ensemble des services Ă  mettre en place lors de la transmission du fluxd’information de la source vers la destination (puits) consistera alors Ă  rĂ©duire le dĂ©laide bout-en-bout en maintenant une gigue stable ; Ă  minimiser la perte d’informationdans le rĂ©seau tout en maximisant la durĂ©e de vie du rĂ©seau. Ces exigences dans lecadre d’un rĂ©seau de capteurs sont quelques fois conflictuelles. Par exemple, il seraitpossible d’amĂ©liorer la fiabilitĂ© en augmentant pour chaque nƓud, sa puissance detransmission ou en exigeant autant de retransmissions que nĂ©cessaires par les couchesbasses de la pile protocolaire. Toutefois, ces deux mesures entraĂźneraient une dĂ©penseĂ©nergĂ©tique supplĂ©mentaire et par consĂ©quent une dĂ©gradation de la durĂ©e de vie durĂ©seau. Des compromis devront alors ĂȘtre faits entre l’efficacitĂ© Ă©nergĂ©tique et les autresconsidĂ©rations de QdS.

Dans ce chapitre, nous concevons et implĂ©mentons un moyen de rĂ©aliser ces com-promis pendant l’exĂ©cution. Le problĂšme gĂ©nĂ©ral de recherche d’un chemin optimalmulti-critĂšres est connu comme NP-complet [RST10]. De nombreuses solutions et ap-proches existent pour les rĂ©seaux classiques (filaires et sans fil Ad-hoc), mais celles-cine sont pas transposables aux capteurs sans fil qui prĂ©sentent de fortes contraintesmatĂ©rielles. Nous proposons la logique floue comme moyen de combinaison de plu-sieurs mĂ©triques. Celle-ci s’avĂšre intĂ©ressante car elle nĂ©cessite une empreinte mĂ©moirefaible pour son implĂ©mentation. De plus, elle fourni un bon moyen de trouver un com-promis intĂ©ressant entre plusieurs critĂšres (mĂȘme antagonistes). Nous intĂ©grons notreapproche dans le standard de routage pour les rĂ©seaux de capteurs RPL. La validationde celle-ci est faite Ă  travers de nombreuses simulations [Kam+14] et des expĂ©riencessur des capteurs rĂ©els dĂ©ployĂ©s en environnement intĂ©rieur [KND15].

Page 82: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 62

5.1 Combinaison de métriques de routage RPL

La combinaison de plusieurs mĂ©triques de routage dans le but de prendre en consi-dĂ©ration la QdS dans le contexte du routage RPL a Ă©tĂ© rĂ©cemment Ă©tudiĂ©e [Kar+13].Celle-ci fait appel Ă  deux types d’opĂ©rateurs de composition : la composition additive etla composition lexicographique.

5.1.1 Composition additiveConsidérons m1 et m2 deux métriques associées respectivement aux structures al-

gĂ©briques (ÎŁ,⊕, ω1,1) et (ÎŁ,⊕, ω2 , 2 ). Avec ω1 et ω2 les fonctions de coĂ»t de cheminrelatives Ă  chacune des mĂ©triques m1 et m2 ; ⊕ l’opĂ©rateur de concatĂ©nation sur ÎŁ, en-semble formĂ© de tous les chemins possibles ; 1 et 2 les relations d’ordre liĂ©es Ă  m1 etm2.On appelle composition additive m de m1 et m2, la mĂ©trique dont la structure algĂ©-brique associĂ©e est (ÎŁ,⊕, ω,add). La fonction de poids ω de la composition est dĂ©finiepar :

∀α ∈ ÎŁ, ω(α) = a1 . ω1(α) + a2 . ω2(α) (5.1)

a1 et a2 sont des coefficients réels strictement positifs, permettant de pondérer la contri-bution de chacune des métriques m1 et m2 lors de la composition.

ThĂ©orĂšme 1 (Stricte monotonie de la composition additive). Si ω1 et ω2 sont des fonc-tions de poids de chemins pour des mĂ©triques de base m1 et m2 strictement monotones, danslesquelles la relation d’ordre ≀ (infĂ©rieur ou Ă©gal Ă ) est appliquĂ©e aux nombres rĂ©els, alors lamĂ©trique composite m dĂ©finie sur la structure algĂ©brique (ÎŁ,⊕, ω,add), avec ω dĂ©fini par laformule 5.1 sur la relation d’ordre add ≡ ≀ est Ă©galement strictement monotone.i.e. ∀α, ÎČ âˆˆ ÎŁ, ω(α) < ω(α⊕ ÎČ) et ω(α) < ω(ÎČ âŠ• α)

DĂ©monstration.Puisque a1 > 0 et que ω1 est strictement monotone, on a :

ω1(α) < ω1(α⊕ ÎČ)⇒ a1 . ω1(α) < a1 . ω1(α⊕ ÎČ) (5.2)

De mĂȘme, puisque a2 > 0 et que ω2 est strictement monotone, nous avons :

ω2(α) < ω2(α⊕ ÎČ)⇒ a2 . ω2(α) < a2 . ω2(α⊕ ÎČ) (5.3)

Par sommation des deux inégalités 5.2 et 5.3, nous obtenons :

a1 . ω1(α) + a2 . ω2(α) < a1 . ω1(α⊕ ÎČ) + a2 . ω2(α⊕ ÎČ)⇒ ω(α) < ω(α⊕ ÎČ) (5.4)

De façon similaire, la monotonie Ă  gauche peut ĂȘtre Ă©tablie.

ThĂ©orĂšme 2 (Stricte isotonie de la composition additive). Si les deux structures algĂ©-briques (ÎŁ,⊕, ω1,1) et (ÎŁ,⊕, ω2,2) sont toutes strictement isotoniques et additives sur lesmĂ©triques de base m1 et m2 (i.e. ω1(α⊕ ÎČ) = ω1(α) + ω1(ÎČ) et ω2(α⊕ ÎČ) = ω2(α) + ω2(ÎČ)),alors leur composition additive (ÎŁ,⊕, ω,add) est Ă©galement strictement isotonique.i.e. ∀α, ÎČ, Îł ∈ ÎŁ, ω(α) < ω(ÎČ)⇒ [ω(α⊕ Îł) < ω(ÎČ âŠ• Îł)] ∧ [ω(Îł ⊕ α) < ω(Îł ⊕ ÎČ)]

Page 83: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 63

DĂ©monstration.De la dĂ©finition de l’additivitĂ© de composition des mĂ©triques, on peut Ă©crire :ω(α) < ω(ÎČ) ⇒ a1 . ω1(α) + a2 . ω2(α) < a1 . ω1(ÎČ) + a2 . ω2(ÎČ)

⇒ a1 . ω1(α) + a2 . ω2(α) + a1 . ω1(Îł) + a2 . ω2(Îł) < a1 . ω1(ÎČ) + a2 . ω2(ÎČ)+ a1 . ω1(Îł) + a2 . ω2(Îł)

⇒ a1 . [ω1(α) + ω1(Îł)] + a2 . [ω2(α) + ω2(Îł)] < a1 . [ω1(ÎČ) + ω1(Îł)]+ a2 . [ω2(ÎČ) + ω2(Îł)]

puisque

ω1(α⊕ Îł) = ω1(α) + ω1(Îł)ω1(ÎČ âŠ• Îł) = ω1(ÎČ) + ω1(Îł)ω2(α⊕ Îł) = ω2(α) + ω2(Îł)ω2(ÎČ âŠ• Îł) = ω2(ÎČ) + ω2(Îł)

⇒ ω(α⊕ Îł) < ω(ÎČ âŠ• Îł)

De façon similaire, l’isotonie Ă  gauche peut ĂȘtre Ă©tablie.

Le principal inconvénient de cette approche est le fait que les métriques de base (m1

et m2) doivent nĂ©cessairement ĂȘtre dĂ©finies sur la mĂȘme relation d’ordre ≀ (i.e. 1 ≡2 ≡ ≀). Ceci limite grandement la classe de mĂ©triques pouvant ĂȘtre combinĂ©es aveccette approche. A titre d’illustration, les deux mĂ©triques, nombre de sauts et bandepassante, ne sont pas combinables suivant cette approche. Si la premiĂšre mĂ©trique estadditive, la seconde (bande passante) ne l’est pas, mais est plutĂŽt concave. Minimisercette derniĂšre reviendrait Ă  rechercher la bande passante maximale sur le chemin. Al’opposĂ©, une combinaison additive du nombre de sauts et du dĂ©lai est possible.

5.1.2 Composition lexicographique

Soient les mĂ©triques m1 et m2, dĂ©crites par les structures algĂ©briques (ÎŁ,⊕, ω1,1)et (ÎŁ,⊕, ω2 , 2 ), respectives. Chacune des mĂ©triques de base faisant correspondretout chemin de ÎŁ Ă  un ensemble de valeurs (V1 et V2, respectivement).1 est la relationd’ordre dĂ©finie sur les valeurs de V1 et 2 la relation d’ordre sur les valeurs de V2.On appelle composition lexicographique dem1 etm2, la mĂ©triquem associĂ©e Ă  la struc-ture algĂ©brique (ÎŁ,⊕, ω,lex). La relation d’ordre de la compositionlex Ă©tant dĂ©finiepar :

∀α, ÎČ âˆˆ ÎŁ, ω(α) lex ω(ÎČ)⇔

ω1(α) â‰ș1 ω1(ÎČ) ou

[ω1(α) = ω1(ÎČ)] ∧ [ω2(α) 2 ω2(ÎČ)](5.5)

NB : est la relation d’ordre dĂ©finie au sens large, tandis que â‰ș est prise sens strict.

Autrement dit, lorsque plusieurs mĂ©triques sont combinĂ©es suivant une approchelexicographique, cela impose au routage de prioriser l’une des mĂ©triques de la com-position par rapport aux autres. Cela revient Ă  dire que, la route offrant le meilleurcoĂ»t de chemin au regard de la premiĂšre mĂ©trique est utilisĂ©e pour le transfert des pa-quets, indĂ©pendamment du coĂ»t associĂ© aux autres mĂ©triques. La seconde mĂ©trique dela combinaison n’est utilisĂ©e que lorsqu’il existe plusieurs chemins de meilleurs coĂ»ts

Page 84: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 64

pour la premiĂšre mĂ©trique. Il faut noter que, contrairement Ă  la combinaison additive,des mĂ©triques quelconques peuvent ĂȘtre utilisĂ©es, peu importe la relation d’ordre as-sociĂ©e Ă  chacune d’elle. Ceci du fait de la comparaison entre chemins qui se fait entreles coĂ»ts de la mĂȘme mĂ©trique.

Pour que le routage construit sur la composition assure les propriĂ©tĂ©s de convergenceet d’absence de boucle, il suffit que les mĂ©triques de base soient monotones et que lapremiĂšre soit strictement isotonique comme dĂ©fini par les deux thĂ©orĂšmes suivants :

ThĂ©orĂšme 3 (Monotonie de la composition lexicographique). Si les deux structures algĂ©-briques (ÎŁ,⊕, ω1,1) et (ÎŁ,⊕, ω2 , 2 ) associĂ©es aux mĂ©triques de base respectives m1 et m2,sont toutes deux monotones, alors la structure algĂ©brique (ÎŁ,⊕, ω,lex) relative Ă  la mĂ©triquecomposite m, telle que dĂ©finie par la relation 5.5 est Ă©galement monotone.

DĂ©monstration.De la monotonie de la structure algĂ©brique (ÎŁ,⊕, ω1,1) dĂ©finie sur m1, on a :

∀α, ÎČ âˆˆ ÎŁ; ω1(α) 1 ω1(α⊕ ÎČ) (5.6)

Deux situations sont possibles.

— Cas 1 : ω1(α) â‰ș1 ω1(α⊕ ÎČ)D’aprĂšs la dĂ©finition de la composition lexicographique donnĂ©e en 5.5, on endĂ©duit que :

ω(α) lex ω(α⊕ ÎČ) (5.7)

— Cas 2 : ω1(α) = ω1(α⊕ ÎČ)Puisque la seconde mĂ©trique est Ă©galement monotone (i.e. ω2(α) 2 ω2(α ⊕ ÎČ)),d’aprĂšs 5.5 on conclut que ω(α) lex ω(α⊕ ÎČ)

La monotonie Ă  droite est ainsi Ă©tablie. Un raisonnement similaire permet Ă©galementd’établir la monotonie Ă  gauche.

Remarque : Il convient de noter que la stricte monotonie de l’une ou l’autre des mĂ©-triques (m1 ou m2) suffit pour Ă©galement Ă©tablir celle de la composition m.

ThĂ©orĂšme 4 (Isotonie de la composition lexicographique). Si les deux structures algĂ©-briques ( ÎŁ ,⊕ , ω1 ,1 ) et (ÎŁ,⊕, ω2 , 2 ) associĂ©es aux mĂ©triques de base respectives m1 etm2, sont toutes deux isotoniques, et si de plus (ÎŁ,⊕, ω1,1) est strictement isotonique, alorsla structure algĂ©brique (ÎŁ,⊕, ω,lex) relative Ă  la mĂ©trique composite m, telle que dĂ©finie parla relation 5.5 est Ă©galement isotonique.

DĂ©monstration.Pour toute paire arbitraire de chemin α, ÎČ satisfaisant la relation suivante :

ω1(α) 1 ω1(ÎČ) ⇔

ω1(α) â‰ș1 ω1(ÎČ) ou

ω1(α) = ω1(ÎČ)(5.8)

La relation 5.8 est décomposable en 2 situations que nous détaillons ci-dessous :

Page 85: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 65

— Cas 1 : ω1(α) â‰ș1 ω1(ÎČ)Selon l’hypothĂšse du thĂ©orĂšme 4, la premiĂšre mĂ©trique est strictement isoto-nique :

i.e. ∀α, ÎČ, Îł ∈ ÎŁ ω1(α) â‰ș1 ω1(ÎČ) ⇒ ω1(α⊕ Îł) â‰ș1 ω1(ÎČ âŠ• Îł)

Par dĂ©finition de la composition lexicographique (cf. relation 5.5), lorsque c’estl’inĂ©galitĂ© stricte sur la mĂ©trique m1 qui prĂ©vaut, on peut conclure que :

∀α, ÎČ, Îł ∈ ÎŁ ω(α) lex ω(ÎČ) ⇒ ω(α⊕ Îł) lex ω(ÎČ âŠ• Îł) (5.9)

— Cas 2 : ω1(α) = ω1(ÎČ)D’aprĂšs 5.5 on peut rĂ©crire :

ω(α) lex ω(ÎČ) ⇔ [ω1(α) = ω1(ÎČ)] ∧ [ω2(α) 2 ω2(ÎČ)]

Comme la seconde métrique est isotonique,

i.e. ∀α, ÎČ, Îł ∈ ÎŁ ω2(α) 2 ω2(ÎČ) ⇒ ω2(α⊕ Îł) 2 ω2(ÎČ âŠ• Îł)

On peut en dĂ©duire que la composition lexicographique telle que definie en 5.5l’est aussi (cf. relation 5.9).

L’isotonie Ă  gauche est Ă©tablie par un raisonnement similaire.

5.2 SystĂšme d’infĂ©rence par la logique floue

Le systĂšme de raisonnement par la logique floue nous permet de transformer plu-sieurs mĂ©triques d’entrĂ©e en une unique valeur en sortie. Pour ce faire, nous procĂ©donsen trois Ă©tapes : une premiĂšre Ă©tape dite de fuzzification, suivie par une Ă©tape constituĂ©ede deux phases : l’infĂ©rence puis l’agrĂ©gation. Nous terminons par l’étape de dĂ©fuzzifi-cation. De par sa simplicitĂ© et son efficacitĂ©, nous utilisons le modĂšle d’infĂ©rence flouede Mamdani [Mam77]. Ce dernier utilise des opĂ©rations arithmĂ©tiques de base (maxi-mum, minimum, produit, . . . ) comme opĂ©rateurs de combinaison et d’agrĂ©gat. Cela serĂ©vĂšle judicieux au regard des contraintes matĂ©rielles (mĂ©moire centrale, processeur)liĂ©es Ă  notre environnement de mise en Ɠuvre.

5.2.1 Variables linguistiquesLes variables linguistiques utilisĂ©es en entrĂ©e de notre moteur d’infĂ©rence sont rĂ©cu-

pĂ©rĂ©es des couches basses (physique et MAC) par le nƓud ou issues de la surveillancede la qualitĂ© du lien de communication. Elles correspondent aux paramĂštres de perfor-mance ou mĂ©triques Ă  optimiser lors de la construction de la topologie rĂ©seau. Chaquevariable linguistique sera dĂ©composĂ©e en un certain nombre d’ensembles dit flous dĂ©-crivant celle-ci. La valeur exacte de la variable linguistique pour chacun des ensemblesflous dĂ©finis est dĂ©terminĂ©e par la fonction d’appartenance. Contrairement Ă  lalogique dite « classique » oĂč la variable boolĂ©enne ne peut prendre qu’une des valeursde l’ensemble vrai,faux, la logique floue admet pour la variable linguistique (plus

Page 86: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 66

précisément, de chacun des ensembles flous la décrivant) une infinité de valeurs entreces deux bornes (i.e. une valeur réelle dans [0, 1]).

A titre d’illustration, supposons que la capacitĂ© Ă©nergĂ©tique d’un nƓud soit indi-quĂ©e par un entier allant de 0 (batterie vide) Ă  255 (batterie pleine). En logique floue, ilsera possible de dĂ©crire la variable linguistique « Ă©nergie du nƓud » par des ensemblesflous, plein et vide. Un nƓud dont la capacitĂ© Ă©nergĂ©tique de la batterie vaut 200pourra alors, selon la sĂ©mantique donnĂ©e Ă  chacun des ensembles flous plein et videgrĂące Ă  leur fonction d’appartenance respective, ĂȘtre Ă©valuĂ© Ă  78.50% plein etĂ  21.50% vide.

Dans le modĂšle proposĂ©, les mĂ©triques choisies (ou variable linguistiques au sensde la logique floue) sont l’énergie rĂ©siduelle du nƓud, le dĂ©lai et l’ETX. Pour illustrerle principe du moteur d’infĂ©rence conçu, considĂ©rons le schĂ©ma de la figure 5.1.

ETX=4

ENERGY=75%

ETX=2

ENERGY=70%

N

?

S

DELAY=1000 DELAY=700P2 P1

FIGURE 5.1 – Processus de sĂ©lection du prochain saut

Le nƓud N souhaite envoyer des paquets au point de collecte S, sur la base des mĂ©-triques Ă©nergie, dĂ©lai et ETX. Nous souhaitons dĂ©terminer le prochain saut le plusadaptĂ© sur la base de ces paramĂštres. Il est Ă  noter que, dans une approche de com-position lexicographique de ces trois paramĂštres, la topologie rĂ©seau serait construiteen prioritĂ© sur la base de la premiĂšre mĂ©trique choisie pour la combinaison. Pour cequi est de la combinaison additive de ces mĂ©triques, elle est impossible en l’état. Eneffet, si les mĂ©triques dĂ©lai et ETX sont par nature additives, l’énergie ne l’est pas. Nousvisons Ă  combiner les mĂ©triques d’entrĂ©e et calculer par la logique floue un score ensortie, qui nous renseigne sur le parent le plus adaptĂ© pour le relai des paquets.

Pour rĂ©cupĂ©rer l’ETX et le dĂ©lai des couches MAC et rĂ©seau, nous utilisons un mĂ©ca-nisme de cross-layer. L’ETX mesure la qualitĂ© de la transmission entre un nƓudet son voisin. Elle est mise en Ɠuvre en comptant le nombre de transmissions nĂ©ces-saires pour qu’un paquet soit correctement reçu et acquittĂ© par le voisin. Une valeurfaible implique des liens fiables et offre un taux de livraison de paquets plus impor-tant vers la destination. La couche rĂ©seau place le paquet dans le tampon de sortieet fait appel Ă  la couche MAC pour la livraison. Cette derniĂšre transmet le paquetdĂšs que le support est disponible, vĂ©rifie par la suite le statut de la livraison. En casd’échec de transmission, le processus est repris selon la valeur du paramĂštre MAX_-MAC_RETRANSMISSION (fixĂ© Ă  5 dans l’implĂ©mentation rĂ©alisĂ©e). Pour attĂ©nuer l’im-pact des perturbations ponctuelles ou fluctuations transitoires sur la mĂ©trique, celle-ci

Page 87: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 67

est calculée comme une moyenne glissante exponentielle au cours du temps.

ETXnew = α ∗ ETXold + (1− α) ∗ ETXcur (5.10)

oĂč α ∈ [0, 1[ est la pondĂ©ration caractĂ©risant l’importance accordĂ©e Ă  ETXold qui dĂ©critles diffĂ©rentes valeurs d’ETX dĂ©jĂ  calculĂ©es dans le passĂ© et ETXcur la valeur de l’ETXissue de la transmission du dernier paquet correctement transmis au prochain saut.

Si la mĂ©trique prĂ©cĂ©dente mesure la fiabilitĂ© du canal de communication, le dĂ©lai quantĂ  lui, nous permet de capturer l’impact de la couche MAC et de la contention sur lestransmissions. Nous Ă©viterons ainsi les goulots d’étranglement du rĂ©seau. Il est Ă©ga-lement calculĂ© comme une moyenne glissante exponentielle. L’énergie rĂ©siduelle dunƓud est estimĂ©e suivant le modĂšle dĂ©fini en §4.1.2.

5.2.2 FuzzificationLa premiĂšre phase du systĂšme de contrĂŽle par la logique floue consiste en une

fuzzification. L’idĂ©e est de dĂ©terminer le niveau d’appartenance (sur une Ă©chelleallant de 0 Ă  1) de l’entrĂ©e scalaire aux diffĂ©rents ensembles flous de la variable linguis-tique considĂ©rĂ©e. Elle implique les fonctions suivantes :

— RĂ©cupĂ©rer en entrĂ©e les valeurs scalaires mesurĂ©es de la variable linguistique,— DĂ©finir les fonctions de correspondance ou fonctions d’appartenance trans-

formant les donnĂ©es scalaires d’entrĂ©e en Ă©lĂ©ments de l’univers du discours (en-core appelĂ©s ensembles flous),

— RĂ©aliser la fonction de fuzzification qui calcule, pour chaque valeur de lavariable linguistique, son degrĂ© d’appartenance aux ensembles flous.

Pour illustrer le modĂšle, la variable linguistique utilisĂ©e pour le dĂ©lai est reprĂ©sentĂ©epar trois ensembles flous : short, average et long. Ils dĂ©crivent respectivement ledegrĂ© d’appartenance de la donnĂ©e scalaire d’entrĂ©e dĂ©lai, Ă  une valeur faible, moyenneou grande. Sur la figure 5.2, avec un dĂ©lai Ă©gal Ă  700ms, les projections rĂ©alisĂ©es sur lesensembles flous nous indiquent une valeur faible Ă  83.33% et moyenne Ă  16.66%. Il fautnoter que la projection sur l’ensemble flou long n’est pas dĂ©finie, ceci indique un dĂ©laigrand Ă  0%.

Les formules 5.11 et 5.12 correspondent respectivement aux fonctions d’appar-tenances de dĂ©lai-faible et dĂ©lai-moyen. Elles renvoient la valeur numĂ©rique du de-grĂ© d’appartenance Ă  chacun des ensembles flous, short et average. Dans le mĂȘmeordre d’idĂ©e, une formule semblable Ă©tablie la valeur de la fonction d’appartenance dedĂ©lai-long sur les diffĂ©rents intervalles dĂ©finis.

”short(delai) =

1 si delai ∈ [0, 600ms]1200−delai

600si delai ∈ ]600ms, 1200ms[

0 si delai ∈ [1200ms,+∞[(5.11)

Page 88: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 68

0.5

1

0.5

1

0

0

0.66

0.33

0.83

0.16

1800

3 6 9 12

600 1200 2400 3000

15

ETX=4

Delay=700

small

short

average high

average long

FIGURE 5.2 – Fonctions d’appartenances et ensembles flous

”average(delai) =

0 si delai ∈ [0, 600ms]

delai−6001200−600

si delai ∈ ]600ms, 1200ms[

1 si delai ∈ [1200ms, 1800ms]

delai−18001800−2400

si delai ∈ ]1800ms, 2400ms[

0 si delai ∈ [2400ms,+∞[

(5.12)

La variable linguistique ETX est reprĂ©sentĂ©e par trois ensembles flous : small, averageet high, correspondant respectivement Ă  une grandeur petite, moyenne ou Ă©levĂ©e.Avec ETX = 4, un raisonnement similaire Ă  celui du dĂ©lai nous conduit Ă  trouverpour les ensembles flous small, average et high, les degrĂ©s d’appartenance respectifs66.66%, 33.33% et 0%.

5.2.3 InfĂ©rence et agrĂ©gationLes moteurs d’infĂ©rence sont au cƓur des systĂšmes Ă  base de raisonnement flou. Ils

simulent la prise de dĂ©cision comme le ferait un humain, en s’appuyant sur une base derĂšgles Ă©tablies suivant les connaissances d’un expert. Un moteur d’infĂ©rence passe par :

— La dĂ©finition de toutes les rĂšgles indiquant comment calculer la variable linguis-tique de sortie Ă  partir des entrĂ©es,

— L’exĂ©cution de toutes les rĂšgles applicables,— L’agrĂ©gation des rĂ©sultats lorsque les entrĂ©es activent plus d’une rĂšgle dans la

base.

ConsidĂ©rons le systĂšme d’infĂ©rence par la logique floue mis en Ɠuvre sur la base desvariables linguistiques choisies : ETX, Ă©nergie et dĂ©lai. Nous dĂ©finissons la variable lin-guistique intermĂ©diaire QdS, qui renseigne sur la qualitĂ© de service. Cette sortie estdĂ©duite des deux variables linguistiques ETX et dĂ©lai. Le tableau 5.1 rĂ©sume la relationentre ces deux variables d’entrĂ©e et la sortie QdS. Elle est dĂ©crite par les ensembles flous

Page 89: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 69

reprĂ©sentant une qualitĂ© de service allant de very_fast (pour une QdS de trĂšs bonnequalitĂ©) Ă  very_slow (pour une trĂšs mauvaise QdS). Le tableau est basĂ© sur l’idĂ©esuivante : « plus faible est le dĂ©lai et petite est l’ETX, meilleure est la QdS ». Nous consi-dĂ©rons Ă©galement qu’un dĂ©lai moyen et une valeur d’ETX petite produit la mĂȘme QdSqu’un faible dĂ©lai et une valeur moyenne d’ETX (en l’occurence « fast QdS »). Pour

ETX / Delay short average longsmall very_fast fast moderate

average fast moderate slowhigh moderate slow very_slow

TABLE 5.1 – Variable linguistique de sortie QdS

produire la sortie, nous nous servons du modĂšle d’infĂ©rence de Mamdani [Mam77], etutilisons l’opĂ©rateur minimum comme fonction de composition et le maximum commeopĂ©rateur d’agrĂ©gation. A cet effet, la formule 5.13 indique comment obtenir le degrĂ©d’appartenance Ă  l’ensemble flou moderate Ă  partir des variables linguistiques d’en-trĂ©es. Comme le montre le tableau 5.1, cet ensemble est reprĂ©sentĂ© par trois rĂšgles,d’oĂč leur agrĂ©gation par l’opĂ©rateur choisi.

”moderate(QdS) = max

min(”high(ETX), ”short(delai)min(”avg(ETX), ”avg(delai))min(”small(ETX), ”long(delai)

(5.13)

Reprenant l’exemple de la figure 5.1, sur la base des mĂ©triques reçues de son parent P1,le nƓudN calculera trois fonctions d’appartenance non nulles de QdS : ”very_fast(QdS) =66% ; ”fast(QdS) = 33% et ”moderate(QdS) = 16%. Partant du schĂ©ma 5.2, les entrĂ©es pro-duisent quatre combinaisons possibles. La figure 5.3 illustre comment les trois valeursde sortie pour la QdS en sont dĂ©duites, par application des opĂ©rateurs de compositionet d’agrĂ©gation. Il faut noter que, l’ensemble fast QdS Ă©tant produit plus d’une fois,c’est la plus grande valeur qui est retenue. La phase de defuzzification prĂ©sentĂ©eau prochain paragraphe, nous permet d’obtenir une unique valeur scalaire dĂ©crivantla QdS. Dans le cas d’espĂšce, 78% est obtenue.

FIGURE 5.3 – Composition et AgrĂ©gation pour la QdS

Page 90: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 70

5.2.4 DefuzzificationC’est la derniùre phase d’un systùme de contrîle à base de la logique floue. Elle

permet de produire une valeur scalaire en sortie Ă  partir du degrĂ© d’appartenance desentrĂ©es aux ensembles flous dĂ©finis pour les variables linguistiques. Toutes les valeursfloues obtenues aprĂšs la phase d’infĂ©rence et d’agrĂ©gation sont unifiĂ©es en une seule.Plusieurs opĂ©rateurs de defuzzification existent. Nous optons dans notre modĂšlepour le centre de gravitĂ© qui a l’avantage de prendre en compte les contributions detous les ensembles flous calculĂ©s Ă  l’étape prĂ©cĂ©dente, chacun Ă©tant pondĂ©rĂ© par ledegrĂ© d’appartenance des entrĂ©es Ă  ceux-ci. Formellement, la valeur numĂ©rique ensortie est obtenue par la relation 5.14.

α0 =

k∑i=1

(αi × ”C(αi))

k∑i=1

”C(αi)

(5.14)

α0 est l’abscisse du centre de gravitĂ© du polygone dĂ©limitĂ© par les valeurs de la variablelinguistique de sortie (cf. figure 5.4). k reprĂ©sente le nombre de rĂšgles activĂ©es dans lemoteur d’infĂ©rence, αi le domaine de valeur relatif Ă  la iime rĂšgle et ”C(αi) le degrĂ©d’appartenance des entrĂ©es Ă  l’ensemble flou C.La rĂ©gion mise en Ă©vidence dans la figure 5.4 dĂ©finit l’aire dont l’abscisse du centre degravitĂ© est la valeur « dĂ©fuzzifiĂ©e » de QdS pour les trois valeurs floues 66%, 33% et 16%.

1

0.15 0.25 0.35 0.45 0.55 0.65 0.85

very_slow very_fastslow fast

0

0.5

0.16

0.33

0.66

0.75 1

moderate

0.78

C

FIGURE 5.4 – Defuzzification de la QdS

5.3 Fonction d’objectif RPL basĂ©e sur la logique floue

5.3.1 Architecture du moteur d’infĂ©rence

Combiner directement les trois variables linguistiques d’entrĂ©e en une seule sortie,entraĂźnerait la gestion de 33 = 27 possibilitĂ©s de combinaisons des diffĂ©rentes fonctionsd’appartenance du moteur d’infĂ©rence. Pour Ă©viter la complexitĂ© liĂ©e Ă  cette gestion,nous organisons le systĂšme d’infĂ©rence en deux blocs fonctionnels comme illustrĂ© parla figure 5.5. Dans un premier temps, l’ETX et le dĂ©lai sont combinĂ©s pour produire lavariable linguistique QdS. Par la suite, cette derniĂšre est combinĂ©e en deuxiĂšme Ă©tape

Page 91: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 71

ETX

QdS

Delai

Energie

Premiere Phase Seconde Phase

d’Inference Floue

du Moteur

d’Inference Flouedu Moteur

Qualite

FIGURE 5.5 – Moteur d’infĂ©rence floue

avec l’énergie pour produire une unique sortie QUALITÉ. Cette derniĂšre variable lin-guistique renseigne sur l’aptitude d’un nƓud Ă  servir de relai. La variable Ă©nergie peutappartenir suivant la valeur de l’entrĂ©e scalaire aux ensembles flous : low, medium etfull (pour une batterie faible, moyenne ou pleine respectivement). La variable finalede sortie QUALITÉ quant Ă  elle varie de awfull Ă  excellent : pour un voisin depiĂštre qualitĂ© Ă  voisin trĂšs recommandĂ©, respectivement. La valeur scalaire dĂ©fuzzifiĂ©een sortie du moteur d’infĂ©rence varie elle de 0 Ă  100. Le tableau 5.2 montre commentnous calculons la sortie Ă  partir des variables linguistiques d’entrĂ©e QdS et Ă©nergie.

QdS / Énergie low medium fullvery_slow awful bad average

slow bad degraded averagemoderate degraded average acceptable

fast average acceptable goodvery_fast average good excellent

TABLE 5.2 – Variable linguistique de sortie : QUALITÉ

Pour l’exemple illustratif de la figure 5.1, nous obtiendrons alors en entrĂ©e du deuxi-Ăšme bloc de notre architecture les valeurs scalaires : QdS = 78% et Énergie= 75%. AprĂšsla phase de fuzzification, elles activent dans le moteur d’infĂ©rence les rĂšgles cor-respondant aux trois ensembles flous QUALITÉ suivants : ”acceptable(QUALITÉ) = 25%,”good(QUALITÉ) = 70% et ”excellent(QUALITÉ) = 30%. La phase de defuzzificationles unifie en QUALITÉ = 77%. Cette valeur correspond Ă  l’aptitude calculĂ©e du pa-rent P1 Ă  servir de prochain saut pour le nƓud N au vu des mĂ©triques Énergie= 75%,DĂ©lai= 700ms et ETX = 4.

Un raisonnement similaire nous produit la valeur QUALITÉ = 70% pour les don-nĂ©es issues de P2. Nous en concluons que le nƓud « recommandĂ© » pour servir deprochain saut Ă  N , au regard de la combinaison Ă  base de la logique floue proposĂ©e,est P1. Il faut noter qu’une utilisation de la combinaison lexicographique de ETX, dĂ©laiet Ă©nergie, aurait conduit Ă  sĂ©lectionner P2 comme prochain saut. En effet, il exhibe lemeilleur coĂ»t sur la mĂ©trique ETX. Par ailleurs, la combinaison additive de ces troiscritĂšres est impossible du fait de la mĂ©trique Ă©nergie utilisĂ©e.

Page 92: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 72

5.3.2 Intégration à RPL

5.3.2.1 Logique floue

Nous avons pris soin d’implĂ©menter le modĂšle Ă  base de la logique proposĂ© dansContiki, en dĂ©finissant une nouvelle fonction d’objectif intĂ©grĂ©e au protocolede routage RPL. Tenant compte des contraintes d’espace mĂ©moire et dans le but d’op-timiser son utilisation, les fonctions d’appartenance (toutes des fonctions af-fines) ont Ă©tĂ© implĂ©mentĂ©es comme des macros. Les bornes de ces fonctions sont quantĂ  elles spĂ©cifiĂ©es par des constantes (cf. script). Toutes les dĂ©finitions sont faites dans"fuzzify.h", rĂ©utilisĂ©es par la suite dans la bibliothĂšque "fuzzify.c" codant toutesles fonctions relatives Ă  la logique floue. Le script ci-dessous correspond aux dĂ©finitionsrelatives Ă  la variable linguistique Ă©nergie :

1 #define ENERGY_MAX 2552 #define ENG_B1 ENERGY_MAX / 53 #define ENG_B2 ENG_B1 * 24 #define ENG_B3 ENG_B1 * 35 #define ENG_B4 ENG_B1 * 46 #define energy_low(eng) FIRST_T_NORM(ENG_B1, ENG_B2, (eng))7 #define energy_medium(eng) T_NORM(ENG_B1, ENG_B2, ENG_B3, ENG_B4, (eng))8 #define energy_full(eng) LAST_T_NORM(ENG_B3, ENG_B4, (eng))

La ligne no1 reprĂ©sente l’intervalle des valeurs de la variable linguistique Ă©nergie (abrĂ©-gĂ©e nrg). Il s’agit d’un entier compris entre 0 et 255. La ligne no2 partitionne cet in-tervalle en quatre parties Ă©gales qui nous servirons par la suite de bornes (lignes 3 Ă 5) pour les T-Normes (Trapezoidal Norm) reprĂ©sentant les fonctions d’appartenance.Ces fonctions sont elles mĂȘmes dĂ©finies par les macros des lignes 6 Ă  8, et nous ren-voient la valeur du degrĂ© d’appartenance de l’énergie scalaire brute Ă  chacun des en-sembles flous dĂ©crivant l’énergie. Des dĂ©finitions similaires sont faites pour tous les en-sembles flous.

5.3.2.2 Structure de données pour la topologie de routage

Sous Contiki, la topologie de routage est gĂ©rĂ©e par un ensemble de structures dedonnĂ©es complexes, liĂ©es les unes aux autres selon la logique reprĂ©sentĂ©e sur la fi-gure 5.6. rpl_instance regroupe les informations sur l’instance RPL, parmi les-quelles un pointeur sur l’OF mise en Ɠuvre : rpl_of_fuzzy, un pointeur sur rpl_-metric_container, structure contenant les valeurs mesurĂ©es de chacune des mĂ©-triques utilisĂ©es (Ă©nergie, dĂ©lai, ETX, nombre de sauts) et un autre pointeur sur lastructure du DAG : rpl_dag. Cette derniĂšre structure pointe elle mĂȘme sur la listedes parents potentiels du nƓud, dont l’un en particulier correspond au prochain saut(best_parent). La fonction d’objectif est quant Ă  elle reprĂ©sentĂ©e par unestructure dont tous les champs sont des pointeurs sur des fonctions qui lorsqu’ellessont invoquĂ©es permettront : de mettre Ă  jour la valeur des mĂ©triques (update_-metric_container), de dĂ©terminer le prochain saut (best_parent), le meilleurDAG (best_dag) ou de calculer le rang du nƓud (calculate_rank) Ă  partir de cellede son parent et de la valeur des mĂ©triques. Les routines de l’OF sont invoquĂ©es se-lon que certains Ă©vĂ©nements se produisent dans le rĂ©seau : expiration d’un minuteur

Page 93: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 73

(Ă©valuation pĂ©riodique de l’énergie), changement de la qualitĂ© du lien (dĂ©lai, ETX), etc.Si les conditions sont remplies, les paramĂštres de qualitĂ© du prochain saut sont alorscomparĂ©es Ă  ceux de l’ensemble des parents potentiels du nƓud en vue de sĂ©lectionnerun nouveau candidat comme « parent prĂ©fĂ©rĂ© ».

...

energydelayETXhopcount

delay

ETX

energydelay

ETX

rank

metric

objective_function

rpl_metric_container

etc ...

rpl_dag

best_dag()calculate_rank()update_metric_cont()best_parent()

preferred_arent

parents

rank

metric

energy

rpl_instance

rpl_of_fuzzy

parent parentrpl_dag

metric_container

metric_container metric_container

FIGURE 5.6 – Architecture des structures de donnĂ©es pour la composition

5.3.2.3 Annonces de routage

Les annonces contenant les informations de configuration pour le routage sonttransportĂ©es par les DIO. Nous nous conformons aux recommandations de la norme[Win+12]. La figure 5.7 illustre la structure de l’annonce utilisĂ©e lorsque celle ci trans-porte des informations d’options de type 2 encore appelĂ©e « conteneur de mĂ©trique ». LesdiffĂ©rentes mĂ©triques associĂ©es Ă  un chemin donnĂ© sont transportĂ©es dans le conteneurles unes derriĂšres les autres, lorsque la valeur du champ type de mĂ©trique (Routing-MC-Type) est dĂ©finie sur RPL_DAG_MC_FUZZY (spĂ©cifique Ă  notre implĂ©mentation).Ceci nous permet de maintenir la taille du DIO aussi petite que possible, afin d’éviterla fragmentation des trames (la couche physique ne supportant que 127 octet maxi-mum). ComparĂ© Ă  un DIO transportant la seule mĂ©trique ETX [GL12], 6 octets sontrajoutĂ©s. Ceci reprĂ©sente une surcharge de 20% pour un DIO ne transportant que desmĂ©triques (option type 2).

5.3.2.4 Calcul de rang

Nous construisons le rang relatif Ă  la composition des mĂ©triques par la logiquefloue, de sorte que celle ci exhibe les propriĂ©tĂ©s de monotonie et d’isotonie. Ceci nouspermet d’éviter les boucles de routage et d’assurer la convergence du routage. Le nƓud

Page 94: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 74

0 1 2 30 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| |

... DIO header ...| |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| Type = 2 | Option Length |Routing-MC-Type|Res Flags|P|C|O|+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|R| A | Prec | Length (bytes)| Flags |I| T |E| Energy |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| ETX | Hop Count |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| Delay |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

FIGURE 5.7 – DIO transportant l’ensemble des mĂ©triques

n’installe dans sa liste de potentiels parents, que les voisins ayant un rang strictementinfĂ©rieur au sien. Par la suite, il recherche parmi les potentiels parents, celui qui prĂ©-sente le meilleur coĂ»t de chemin au regard de la combinaison. Ce dernier est alorspromu « parent prĂ©fĂ©rĂ© ». Le nƓud met Ă  jour son rang en ajoutant Ă  celui de son parentprĂ©fĂ©rĂ© un incrĂ©ment strictement positif. Cette quantitĂ© est fonction de la « mĂ©triquefloue » calculĂ©e par la combinaison comme indiquĂ© par la formule 5.15, oĂč N est lenƓud considĂ©rĂ© et P son parent. Il convient de noter que le nƓud devient ainsi inĂ©li-gible pour tous ses parents potentiels possĂ©dant un rang infĂ©rieur ou Ă©gal au sien.

Rank(N) = Rank(P ) +Rankincravec Rankincr = MinHopRankIncrease + α.[QUALITEmax − fuzzymetric(P )]

(5.15)Dans la formule, MinHopRankIncrease correspond Ă  un point d’augmentation durang. fuzzymetric(P ) est la valeur de sortie calculĂ©e par le moteur d’infĂ©rence floue,QUALITEmax Ă©tant sa valeur maximale. α nous permet de pondĂ©rer l’accroissement derang par rapport Ă  la perte de qualitĂ©. Nous l’avons fixĂ© Ă  1

10MinHopRankIncrease Ă 

l’issue de plusieurs tests.

5.4 Expérimentations et évaluation

Nous avons dans un premier temps rĂ©alisĂ© des simulations du modĂšle proposĂ©sous Cooja avec des nƓuds Ă©quipĂ©s du systĂšme d’exploitation Contiki v2.7. Par lasuite, nous avons dĂ©ployĂ© un rĂ©el rĂ©seau de capteurs sans fil en environnement in-tĂ©rieur (bĂątiment). Nous avons pris soin de vĂ©rifier la nĂ©cessitĂ© du routage par descommunications multi-sauts, car les transmissions des nƓuds ayant des difficultĂ©s Ă traverser plus de trois cloisons. Deux scĂ©narios ont Ă©tĂ© dĂ©veloppĂ©s. Le premier organi-sant le routage RPL selon les trois mĂ©triques : ETX, dĂ©lai et Ă©nergie combinĂ© en utilisantla logique floue comme dĂ©crit plus haut ; le second est l’implĂ©mentation par dĂ©faut quine prend en compte que l’ETX pour unique mĂ©trique [GL12]. L’application dĂ©veloppĂ©eest la mĂȘme pour tous les scĂ©narios : les nƓuds captent les informations sur l’état de

Page 95: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 75

l’environnement (tempĂ©rature, humiditĂ©, luminositĂ©) ou des paramĂštres de fonction-nement du rĂ©seau (nombre de voisins, qualitĂ© du lien radio, prochain saut, etc.) et lesenvoient pĂ©riodiquement au point de collecte.

5.4.1 Conditions expérimentales et outils

FIGURE 5.8 – DĂ©ploiement des nƓuds dans le bĂątiment

Le plan illustrĂ© par la figure 5.8 reprĂ©sente le dĂ©ploiement rĂ©alisĂ©. 28 nƓuds de type Te-losB MTM-CM5000-MSP ont Ă©tĂ© rĂ©partis dans 14 bureaux (2 par bureau). Les Ă©tiquettescorrespondent aux adresses physiques des nƓuds et nous servent d’identifiant. Lesliens (en bleu) indiquent le choix de prochain saut effectuĂ© par les nƓuds Ă  l’instantcapturĂ©. Chaque nƓud est Ă©quipĂ© d’un microcontrĂŽleur Texas Instrument MPS430 16bit, d’une puce radio CC2420, de divers capteurs environnementaux, d’un interfaceUSB et embarque deux piles au format AA. Les nƓuds sont maintenus fixes tout aulong de l’expĂ©rience exĂ©cutĂ©e pendant 2 semaines. Les donnĂ©es applicatives sont en-voyĂ©es par les nƓuds toutes les 5 minutes. Le point de collecte est un nƓud connectĂ©via son interface USB Ă  un ordinateur servant de passerelle. Ce nƓud est considĂ©rĂ©comme ayant une niveau d’énergie maximal, car alimentĂ© en permanence. Le tableau5.3 rĂ©sume les protocoles utilisĂ©s.

5.4.2 Taux de livraison

Nous avons dans un premier temps Ă©valuĂ© la fiabilitĂ© de l’application Ă  livrer lesinformations au point de collecte. Comme le montre la figure 5.9, le scenario combinant

Page 96: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 76

Couche ProtocoleApplication collecte périodique de donnéesTransport UDP

Réseau ”IPv6 + 6LoWPAN + RPL (routage)sous-couche MAC CSMA non-persistant

Cycle d’utilisation Radio (RDC) contikiMACPHY + puce Radio IEEE 802.15.4 & CC2420

TABLE 5.3 – Pile protocolaire

les trois mĂ©triques par la logique floue offre de meilleurs rĂ©sultats que la version RPLavec l’OF-ETX. Alors que le premier stabilise le taux de perte de paquets Ă  5%, dans lesecond scĂ©nario cette valeur est trois fois supĂ©rieure. Lorsque nous examinons les pre-miers moments de l’expĂ©rience (correspondant Ă  la phase dĂ©marrage du rĂ©seau), nousnotons que la combinaison de mĂ©triques se comporte mieux. En effet, tandis qu’ellemaintient le taux de perte de paquets Ă  un niveau faible, le routage avec ETX prĂ©sentependant les trois premiers jours un fort taux de perte de paquets (autour de 25%). Cecomportement du routage par l’ETX s’explique par sa lenteur Ă  accĂ©der Ă  un Ă©tat stablelorsque des routes non fiables ont Ă©tĂ© initialement sĂ©lectionnĂ©es.

0

5

10

15

20

25

30

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Loss R

atio (

%)

Days

ETXFUZZY

FIGURE 5.9 – Taux de perte de paquets au point de collecte

5.4.3 Stabilité de routageNous avons examiné de plus prÚs la stabilité du routage. Cette mesure de per-

formances nous permet d’évaluer le nombre de changements de prochain saut dansle temps. Un grand nombre de changements est rĂ©vĂ©lateur d’une topologie instable,chose indĂ©sirable car entraĂźnant le phĂ©nomĂšne de battement de route et susceptible d’in-fluencer le taux de livraison des paquets. La figure 5.10 prĂ©sente pour chacun des scĂ©-narios, le nombre de changements de parents par heure. Nous mettons Ă©galement enĂ©vidence la tendance principale de ces variations par rĂ©gression linĂ©aire des donnĂ©esde changement de parents collectĂ©es sur une quinzaine de jours.

Page 97: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 77

0

20

40

60

80

100

120

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

# p

are

nts

changes

Days

ETXFUZZY

linear_regr(ETX)linear_regr(FUZZY)

FIGURE 5.10 – Nombre de changement de prochain saut dans le temps

Nous observons que le nombre de changements de prochain saut reste faible et as-sez stable dans le scĂ©nario de routage de mĂ©triques combinĂ©es par la logique floue.Nous avons une moyenne de 43.52 changements par heure avec le routage par ETX,cette moyenne est de seulement 6.63 pour l’autre scĂ©nario. Ces rĂ©sultats montrentque le routage par l’ETX implique un grand nombre de changements de parents auxcours du temps. Ceci ce justifie par le fait que cette mĂ©trique soit trĂšs dynamique. Parailleurs, comme nous l’observons, sa combinaison par la logique floue avec d’autresparamĂštres, limite l’impact de sa forte variabilitĂ©, amĂ©liorant non seulement la stabi-litĂ© des routes mais aussi le taux de livraison des informations Ă  la destination.

5.4.4 Efficacité énergétique

Pour Ă©valuer la rĂ©partition Ă©nergĂ©tique des nƓuds au bout de 16 jours d’expĂ©rience,nous les avons tous dĂ©ployĂ©s tous avec la mĂȘme capacitĂ© de batterie (supposĂ©e reprĂ©-senter 100% de charge). La figure 5.11 illustre cette distribution, indiquant la propor-tion de nƓuds par capacitĂ© Ă©nergĂ©tique rĂ©siduelle. Nous observons nettement que lapyramide induite par l’histogramme de distribution Ă©nergĂ©tique des nƓuds dans lescĂ©nario de mĂ©trique combinĂ©es par la logique floue est plus Ă  droite que celle duscĂ©nario Ă  base de l’ETX. Ceci montre que le premier scĂ©nario est plus conservateurd’énergie que le routage par l’ETX. En effet, dans la combinaison par la logique floue,67.85% de nƓuds ont leur Ă©nergie supĂ©rieure 83% de la charge initiale, tandis que dansla version native de RPL, cette mĂȘme proportion est seulement de 21.42%. Par ailleursnous notons que le scĂ©nario de combinaison par la logique floue maintient une pro-portion important de nƓuds (39.27%) au mĂȘme niveau d’énergie rĂ©siduelle. Ce quidĂ©montre sa tendance Ă  Ă©quilibrer la consommation Ă©nergĂ©tique des nƓuds. A contra-rio, on observe Ă  la date considĂ©rĂ©e que : les nƓuds de plus faible capacitĂ© Ă©nergĂ©tique(Ă©nergie ≀ 81% de l’énergie initiale), sont beaucoup plus nombreux avec le routagepar l’ETX (50% de nƓuds) que dans la combinaison (17.85%). Ces rĂ©sultats montrentla considĂ©ration faite de l’énergie, en plus des autres paramĂštres dans la combinaisondes mĂ©triques par la logique floue.

Page 98: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 78

0

5

10

15

20

25

30

35

40

78 79 80 81 82 83 84 85 86 87

Nodes (

%)

Remaining Energy (%)

ETXFUZZY

FIGURE 5.11 – Distribution de l’énergie rĂ©siduelle des nƓuds

5.4.5 DĂ©lai de bout-en-bout

Le dĂ©lai est la troisiĂšme mĂ©trique que nous considĂ©rons lors de la sĂ©lection du pro-chain saut par un nƓud. L’évaluation du dĂ©lai de bout-en-bout constitue un vĂ©ritabledĂ©fi dans un rĂ©seau de capteurs dĂ©ployĂ©s en conditions rĂ©elles. Celle-ci nĂ©cessite queles nƓuds soient synchronisĂ©s et partagent une horloge de rĂ©fĂ©rence commune. Lamise en Ɠuvre de ces mĂ©canismes seraient trĂšs coĂ»teuse en mĂ©moire et processeur,Ă©lĂ©ments dĂ©jĂ  assez limitĂ©s sur les capteurs dĂ©ployĂ©s. Par ailleurs, cela induit des mes-sages de contrĂŽle supplĂ©mentaires et une surcharge rĂ©seau. Pour ces raisons et parsouci de simplicitĂ©, nous n’avons Ă©valuĂ© le dĂ©lai de bout-en-bout que dans la versionĂ©mulĂ©e de nos capteurs sous Cooja, sous des conditions similaires Ă  celui du rĂ©seaudĂ©ployĂ©. Les nƓuds partagent le mĂȘme code image que ceux dĂ©ployĂ©s en conditionsrĂ©elles, seule la couche radio est simulĂ©e. Le fait que tous les nƓuds soient Ă©mulĂ©s dansla mĂȘme machine et partagent une horloge commune avec le simulateur Cooja, nouspermet d’évaluer avec plus de prĂ©cision le dĂ©lai de bout-en-bout. La figure 5.12 prĂ©-sente la fonction de rĂ©partition (CDF : Cummulative Distribution Function en anglais)du dĂ©lai de bout en bout. Cette courbe n’est considĂ©rĂ©e que pour les paquets effecti-vement arrivĂ©s Ă  la destination. Bien que l’écart entre les deux scĂ©narios de routage nesoit pas important, la combinaison par la logique floue se comporte mieux. En effet,nous observons que 75% des paquets sont livrĂ©s au point de collecte en moins de 1seconde, tandis que cette proportion est de 68% dans le routage par l’ETX. Il faut noterque, comme indiquĂ© en §5.4.2, le taux de livraison de paquets Ă©tant meilleur dans lacombinaison de mĂ©triques, le dĂ©lai de bout-bout en bout considĂ©rĂ© est beaucoup plusprĂ©cis que celui avec l’ETX car d’avantage de paquets sont pris en compte.

5.5 Conclusion

Dans ce chapitre, nous avons conçu et mis en Ɠuvre une nouvelle fonction d’ob-jectif RPL combinant plusieurs mĂ©triques. Ceci nous permet de prendre en comptela QdS en considĂ©rant plus d’un paramĂštre de performance rĂ©seau. Bien que dans lalittĂ©rature et la documentation relative au standard RPL, plusieurs mĂ©triques soient

Page 99: Configuration dynamique et routage pour l'internet des objets

Chapitre 5. Combinaison de métriques par la Logique Floue 79

0

20

40

60

80

100

120

0 500 1000 1500 2000 2500 3000

# p

kts

havin

g d

ela

y <

= X

(%

)

Time (ms)

ETXFUZZY

FIGURE 5.12 – Fonction de rĂ©partition du dĂ©lai de bout-en-bout

dĂ©crites, la quasi-totalitĂ© des implĂ©mentations que nous avons rencontrĂ©es jusqu’ici neprennent qu’un seul critĂšre (les plus rĂ©pandus Ă©tant le nombre de sauts et l’ETX). Lesauteurs de [Kar+13] ont mis en Ɠuvre puis Ă©valuĂ© les mĂ©thodes de combinaison addi-tive et lexicographique des mĂ©triques dans le contexte de RPL. Mais ces deux formesde combinaison exhibent l’inconvĂ©nient de limiter le type de mĂ©triques Ă  considĂ©rer(additives) ou d’optimiser en prioritĂ© le (ou les) premier(s) critĂšre(s) (lexicographique),les mĂ©triques suivantes Ă©tant utilisĂ©es pour faire un choix dĂ©cisif en cas d’égalitĂ© surcelles qui prĂ©cĂšdent. Nous avons utilisĂ© la logique floue pour combiner l’ETX, le dĂ©-lai et l’énergie en une valeur de composition guidant le routage. Ce modĂšle offre debons rĂ©sultats dans la recherche d’un compromis entre plusieurs critĂšres et convientĂ  l’environnement contraint en ressources que constitue les rĂ©seaux de capteurs sansfil. Les rĂ©sultats obtenus d’expĂ©riences rĂ©alisĂ©es sur plusieurs capteurs dĂ©ployĂ©s enrĂ©seau dans un bĂątiment, sont meilleurs que le routage par l’ETX en termes de tauxde livraison de paquets, de stabilitĂ© de routage, de distribution de la consommationĂ©nergĂ©tique des nƓuds et de dĂ©lai de bout-en-bout. Un autre avantage qu’offre la lo-gique floue est la possibilitĂ© d’adapter en fonction de la QdS souhaitĂ©e, le poids (oucontribution) de chaque mĂ©trique Ă  la combinaison. Dans ce travail, nous donnons lamĂȘme importance aux diffĂ©rentes mĂ©triques considĂ©rĂ©es. Comme perspective Ă  celui-ci, il serait intĂ©ressant de paramĂ©trer dynamiquement le poids des mĂ©triques pendantle fonctionnement du rĂ©seau.

Page 100: Configuration dynamique et routage pour l'internet des objets

80

TroisiĂšme partie

Configuration et Interconnexion pourl’Internet des Objets

Page 101: Configuration dynamique et routage pour l'internet des objets
Page 102: Configuration dynamique et routage pour l'internet des objets

82

Chapitre 6

RĂ©seau fĂ©dĂ©rateur de passerelles pourl’Internet des Objets

6.1 Introduction

Ces derniĂšres annĂ©es, les rĂ©seaux de capteurs et plus gĂ©nĂ©ralement l’Internet desObjets ont profondĂ©ment rĂ©volutionnĂ©s la façon dont nous vivons et travaillons, of-frant ainsi de nouvelles opportunitĂ©s et services. Pour soutenir ceux-ci, plusieurs RCSFpeuvent ĂȘtre dĂ©ployĂ©s dans le mĂȘme environnent, chacun rĂ©pondant Ă  un besoin spĂ©ci-fique. Il est par exemple possible d’avoir un rĂ©seau de capteurs dĂ©diĂ© Ă  la surveillancede certains paramĂštres environnementaux comme la tempĂ©rature ou l’humiditĂ©. Dansle mĂȘme bĂątiment (ou aire gĂ©ographique), un autre rĂ©seau pourrait ĂȘtre chargĂ© de ladĂ©tection de prĂ©sence ou le relevĂ© de consommations de compteurs Ă©lectriques intel-ligents et leur acheminement vers un centre de traitement d’informations pour ainsiadapter la production Ă©lectrique Ă  la consommation. Tous ces rĂ©seaux devront ĂȘtrepleinement exploitables Ă  travers une connexion Internet. Nous avons pour ambitiond’offrir un tel accĂšs de façon fiable et efficace moyennant un coĂ»t d’investissementmatĂ©riel assez faible. Ceci offre la possibilitĂ© d’envoyer les donnĂ©es collectĂ©es vers descentres de traitement (sur Internet) adaptĂ©s aux gros volumes de donnĂ©es gĂ©nĂ©rĂ©es. Lesoutils de « cloud computing » et du « big data » sont visĂ©es dans ce cas. Par ailleurs, lescapteurs et actionneurs dĂ©ployĂ©s recevront leurs ordres ou commandes d’applicationsmĂ©tiers dĂ©ployĂ©es sur des machines puissantes depuis Internet ou de smartphones viaune interface Web. Les scĂ©narios applicatifs d’une telle infrastructure sont nombreuseset couvrent divers domaines tels que la domotique et les systĂšmes immotiques (bĂą-timents intelligents) oĂč ils permettent d’amĂ©liorer le confort ou qualitĂ© de vie. Dansle domaine de la santĂ© et celui des villes intelligentes il offrent divers services aux ci-toyens et patients. Lorsqu’ils sont utilisĂ©s dans l’industrie, ces rĂ©seaux sont sujets Ă  descontraintes de dĂ©lais et de QdS spĂ©cifiques.

Dans le but d’offrir une connectivitĂ© Internet aux diffĂ©rentes RCSF dĂ©ployĂ©s, nousproposons d’installer plusieurs passerelles en rĂ©seau, sous forme d’une infrastructurefĂ©dĂ©ratrice. Chaque passerelle rendra ainsi possible la communication entre les deuxsortes de rĂ©seaux Ă  connecter (rĂ©seaux sans fil – cĂŽtĂ© RCSF et rĂ©seaux Ethernet ou touteautre technologie d’accĂšs – cĂŽtĂ© rĂ©seau fĂ©dĂ©rateur). Elles relieront de cette façon (viaInternet) non seulement les parties non connexes d’un mĂȘme RCSF, mais elles assure-ront Ă©galement pour chacune, la connexion (Internet) de plusieurs RCSF diffĂ©rents.

Page 103: Configuration dynamique et routage pour l'internet des objets

Chapitre 6. RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 83

En raison de sa capacitĂ© finie (en terme de bande passante), la passerelle uniquepoint d’entrĂ©e vers Internet, constituera un goulot d’étranglement du trafic issue desnƓuds des diffĂ©rents RCSF. Par ailleurs, la faible fiabilitĂ© des communications sans fildes capteurs fait qu’il ne serait pas raisonnable de disposer que d’une seule passerelledans le rĂ©seau. D’autant plus que nous visons Ă  dĂ©ployer plusieurs RCSF et conce-voir une architecture passant Ă  l’échelle. Chaque composante connexe de RCSF devraalors avoir la possibilitĂ© d’accĂ©der Ă  Internet par une (ou plusieurs) des passerelles, enfonction de la situation du rĂ©seau. L’idĂ©e gĂ©nĂ©rale est la suivante, partant d’un certainnombre de passerelles prĂ©cĂ©demment dĂ©ployĂ©es nous souhaiterions dĂ©terminer cellesqui sont les plus appropriĂ©es pour assurer la connexion des diffĂ©rents RCSF en fonc-tion de contraintes spĂ©cifiques exprimĂ©es sous forme de demande du rĂ©seau (nombrede nƓuds, quantitĂ© de trafic et QdS souhaitĂ©e) et capacitĂ© associĂ©e Ă  chaque passerelle.Le rĂ©seau devrait pouvoir s’adapter et changer de point d’entrĂ©e Internet en fonctiondes conditions courantes du rĂ©seau, de la disponibilitĂ© des passerelles ou du trafic dĂ©jĂ supportĂ© par celui-ci.

6.2 Considérations liées à la conception

La figure 6.1 prĂ©sente un exemple de schĂ©ma d’interconnexion du rĂ©seau visĂ©. L’in-frastructure globale mise en place est conçue suivant une architecture en trois couche :RCSF – rĂ©seau fĂ©dĂ©rateur des passerelles (backbone) – Internet. Les passerelles matĂ©ria-lisĂ©es comme des routeurs sont des nƓuds beaucoup plus robustes que les capteursdĂ©ployĂ©s dans la partie RCSF. Ils disposent d’une source d’alimentation continue ainsique d’importantes ressources mĂ©moires et de calcul. Dans le prototype proposĂ©, nousavons optĂ© d’utiliser la plate-forme Raspberry Pi [Ras] en raison de leurs caractĂ©ris-tiques matĂ©rielles intĂ©ressantes et du faible coĂ»t requis pour leur acquisition. Nouspouvons ainsi en dĂ©ployer un nombre important si l’utilisation du rĂ©seau l’exige, avecun budget matĂ©riel peu Ă©levĂ©. Les nƓuds du RCSF collectent et acheminent les infor-mations par transmission radios multi-sauts au routeur de bordure intĂ©grĂ© Ă  la pas-serelle. Ces nƓuds appartiennent Ă  des rĂ©seaux distincts et sont matĂ©rialisĂ©s par descodes couleurs (grise, bleu et rouge dans la figure) reprĂ©sentant chacune une applica-tion (ou utilisation) spĂ©cifique du RCSF.

Un des problÚmes à résoudre est celui de la déterminer le nombre approprié depasserelles à utiliser parmi celles installées. Deux objectifs quelque peu conflictuelssont à relever :

— Chaque RCSF visera Ă  utiliser le plus grand nombre de passerelles disponibles.En effet, plus il de passerelles activĂ©es pour un RCSF donnĂ©, plus grande est ca-pacitĂ© totale offerte (transport des donnĂ©es) et meilleure est la QdS. Par ailleurs,disposer de plusieurs passerelles garantie une tolĂ©rance aux pannes.

— Seul un nombre adĂ©quat de passerelles doivent ĂȘtre utilisĂ©es, i.e. celles correspon-dant aux besoins actuels du rĂ©seau. Plus de passerelles pourront ĂȘtre installĂ©esmais seule une quantitĂ© limitĂ©e sera activĂ©e, celle pouvant garantir une « bonnecommunication » des RCSF dĂ©jĂ  dĂ©ployĂ©s tout en satisfaisant les contraintes ex-primĂ©es. La capacitĂ© rĂ©siduelle (passerelles non utilisĂ©es) permettra de rĂ©pondre

Page 104: Configuration dynamique et routage pour l'internet des objets

Chapitre 6. RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 84

Réseau FédérateurRéseau Fédérateur (via Internet)(via Internet)

20

1

5

14

11

10

3

6

13

2

79

12

8

4

19

26

22

23

2421

18

17

27

25

30

31

28

29

35

34

36

37

3216

15

33

Capteur (type réseau = couleur)

Passerelle

Liaison filaire

Liaison sans fil

p1

p2

p3 p

4

p5

FIGURE 6.1 – RĂ©seau fĂ©dĂ©rateur de passerelles interconnectant les RCSF

Ă  d’éventuelles dĂ©faillances (pannes de passerelles, rupture de lien, . . . ) ou as-surera le passage Ă  l’échelle (ajout de nouveaux nƓuds ou dĂ©ploiement d’unnouveau RCSF).

Un objectif supplĂ©mentaire consiste Ă  rĂ©partir le trafic (Ă©manant de tous les RCSF dĂ©-ployĂ©s) sur l’ensemble des passerelles mis en service. Ceci permet de maximiser l’utili-sation des ressources actives.

Une fois les passerelles constituant la couche intermĂ©diaire (backbone) sĂ©lectionnĂ©es,les capteurs devront s’organiser en rĂ©seau pour leur acheminer de façon efficace le tra-fic aux diffĂ©rents services. Chaque passerelle pourra alors jouer le rĂŽle de routeur debordure pour plusieurs RCSF Ă  la fois. Nous nous appuyons sur le protocole RPL etles contributions proposĂ©es aux chapitres prĂ©cĂ©dents pour organiser le routage dansla partie RCSF, chaque passerelle assurant Ă©galement la fonction de racine RPL. Parailleurs, le protocole est configurĂ© dans sa version multi-instance (i.e. possibilitĂ© defaire cohabiter plusieurs rĂ©seaux simultanĂ©ment). Une instance offre les services adap-tĂ©s pour un RCSF distinct et sera, selon les besoins de l’application cible, associĂ©e Ă  unefonction d’objectif optimisant un certain nombre de mĂ©triques (Ă©nergie, ETX, nombrede saut, combinaison, etc.). L’approche de combinaison par la logique floue (cf. cha-pitre 5) offre la possibilitĂ© de prioritiser certaines mĂ©triques en fonction des besoins deQdS. Il sera ainsi possible de mettre d’avantage l’accent sur l’énergie en modifiant lesbornes des fonctions d’appartenance y relatives.

Page 105: Configuration dynamique et routage pour l'internet des objets

Chapitre 6. RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 85

Les avantages liĂ©s Ă  la mise en Ɠuvre le l’architecture proposĂ©e sont nombreuses.Tout d’abord, elle offre un accĂšs Internet aux diffĂ©rents RCSF dĂ©ployĂ©s. DeuxiĂšme-ment, la fiabilitĂ© de la connexion Ă  Internet est amĂ©liorĂ©e en raison de possibilitĂ©sde points d’entrĂ©e redondants grĂące aux nombreuses passerelles installĂ©es. TroisiĂšme-ment, la capacitĂ© du rĂ©seau croit avec l’ajout des nouvelles passerelles. Cette croissancedĂ©pend linĂ©airement du nombre de passerelles si les ressources disponibles sur ces der-niĂšres sont convenablement allouĂ©es et la charge Ă©quitablement rĂ©parties entre elles.Enfin, les passerelles pourront allouer/dĂ©sallouer dynamiquement leurs ressourcesaux diffĂ©rents RCSF, en fonction de la situation (ajout ou retrait de RCSF) et de l’ar-chitecture du rĂ©seau (nombre de nƓuds, graphe d’interconnexion/voisinage).

6.3 Modélisation

Dans cette section, nous prĂ©sentons une modĂ©lisation formelle du problĂšme de sĂ©-lection de passerelles au niveau de la couche intermĂ©diaire de l’architecture proposĂ©e.Le problĂšme est formulĂ© comme un programme linĂ©aire en nombres entiers (ILP – In-teger Linear Program) visant Ă  atteindre diffĂ©rentes objectifs sous certaines contraintes.Les solutions au ILP sert de base Ă  la construction de l’infrastructure fĂ©dĂ©ratrice as-surant Ă  faible coĂ»t la connexion des diffĂ©rents RCSF Ă  l’Internet suivant de « bonnesperformances ».

6.3.1 ModÚle de réseau

Le schĂ©ma de la figure 6.1 illustre une configuration possible de l’architecture en-visagĂ©e. Le rĂ©seau peut ĂȘtre modĂ©lisĂ©e par un graphe orientĂ© G = (S,A), oĂč A estl’ensemble d’arcs entre les nƓuds et reprĂ©sente les connexions sans fil entre les nƓuds.S = Sp âˆȘ Sn est l’ensemble de sommets constituĂ©s de Sp = p1, p2, . . . , pm ensemble dem passerelles et Sn ensemble des capteurs installĂ©s. Ces derniers peuvent appartenir Ă des RCSF distincts dĂ©ployĂ©s dans le mĂȘme environnement.

Plus formellement, on note Sn =k⋃j=1

Snj, k étant le nombre de RCSF déployés. Ils

forment une partition Snj

j∈J1,kKde Sn. Il convient de noter que bien que partageant le

mĂȘme environnement les RCSF sont disjoints

A titre d’illustration, si l’on se rĂ©fĂšre au schĂ©ma de la figure 6.1, on a k = 3, m = 4et |Sn| = 37. Soient Sn1 , Sn2 et Sn3 les RCSF respectivement matĂ©rialisĂ©s par les codescouleurs gris, rouge et bleu. Nous avons alors |Sn1 | = 14, |Sn2| = 13 et |Sn3| = 10.

Tous les nƓuds (passerelles et capteurs) sont supposĂ©s fixes une fois dĂ©ployĂ©s. Lespasserelles pi

i∈J1,mKpossÚde chacune une capacité finie C(pi) = αi connue au moment

de leur installation. Cette capacitĂ© est proportionnelle Ă  la quantitĂ© de trafic qu’elle estcapable de traiter compte tenu de ses performances et de la bande passante d’accĂšs Ă Internet qu’elle offre. Pour des raisons de simplicitĂ©, on suppose que tous les capteursgĂ©nĂšrent la mĂȘme quantitĂ© de donnĂ©es. La capacitĂ© de chaque passerelle reprĂ©sente

Page 106: Configuration dynamique et routage pour l'internet des objets

Chapitre 6. RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 86

alors « le nombre de capteurs pouvant ĂȘtre pris en charge pour un trafic vers Internet. »

Pour minimiser les problĂšmes d’interfĂ©rence, chaque RCSF est supposĂ© utiliser surun canal dĂ©diĂ©. Une couche PHY de l’IEEE802.15.4 dispose Ă  cet effet de 16 canauxdistincts (numĂ©rotĂ©s de 11 Ă  26). Les passerelles seront alors ĂȘtre Ă©quipĂ©es d’autantd’interfaces que nĂ©cessaire chacun transmettant sur un canal donnĂ©.

6.3.2 Formulation du problĂšmePour la mise en place du rĂ©seau, plus il y a des nƓuds servant de passerelle, plus

importante est capacitĂ© totale du systĂšme. Toutefois, il est souhaitable de minimiser lecoĂ»t relatif Ă  l’installation et l’utilisation des passerelles. Par ailleurs, la rĂ©partition dutrafic sur l’ensemble des passerelles utilisĂ©es est recherchĂ©e, de mĂȘme que la garantiede suffisamment de ressources (bande passante) pour permettre un accĂšs Internet de« bonne qualitĂ© » aux diffĂ©rents RCSF.

L’objectif gĂ©nĂ©ral est le suivant, dĂ©terminer parmi les passerelles installĂ©es celles quidoivent ĂȘtre activĂ©es (nombre et position) de façon Ă  assurer une connectivitĂ© Internetglobale qui soit efficace aux regards des conditions du rĂ©seau. Une fois les passerellesdĂ©terminer, dans un second temps, il s’agira de construire le rĂ©seau en le reconfigu-rer dynamiquement pour rĂ©pondre aux modifications topologiques. Le problĂšme peutĂȘtre formellement dĂ©fini comme suit :

« Étant donnĂ© un rĂ©seau reprĂ©sentĂ©, par le graphe G = (Sp âˆȘ Sn, A), constituĂ© de |Sp| = mpasserelles, chacune de capacitĂ© C(pi) = αi, i ∈ J1,mK. Soient k rĂ©seaux de capteurs consti-tuĂ©s chacun de |Snj

| nƓuds, j ∈ J1, kK, sĂ©lectionner le nombre minimum s ≀ m de passerellesparmi les m existantes qui satisfait la demande des diffĂ©rents rĂ©seaux de capteurs sans fil souscontraintes spĂ©cifiques (libellĂ©es ci-dessous). »

La recherche de solutions au problÚme susmentionné est sujette aux contraintes :

— Couverture de l’ensemble des nƓuds : tous les capteurs doivent obtenir unecouverture Internet. Cet accùs est possible via n’importe quelle passerelle parcommunications radios multi-saut. Il doit exister au moins un chemin qui relietout nƓud à au moins une passerelle.

— CapacitĂ© des passerelles : Le nombre de nƓuds desservies par une passerelledonnĂ©e ne doit pas dĂ©passer sa capacitĂ©. Si celle-ci est atteinte, d’autres passe-relles devront ĂȘtre ajoutĂ©es au rĂ©seau (ou activĂ©es si prĂ©cĂ©demment installĂ©es).

— Utilisation des passerelles : Seules les passerelles activĂ©es par rĂ©solution duproblĂšme Ă©noncĂ© plus haut peuvent ĂȘtre utilisĂ©es comme point d’accĂšs Ă  Inter-net par les nƓuds. De mĂȘme, une passerelle n’est activĂ© que s’il existe au moinsun nƓud l’utilisant pour accĂ©der Ă  Internet.

— Profondeur du rĂ©seau : De part la nature non fiable des communications sansfil, le taux de perte des paquets augmente avec l’éloignement des nƓuds de lastation de base. Dans le but de contrĂŽler le taux de livraison, une contraintesupplĂ©mentaire permettant de limiter cette profondeur lors de la constructiondu RCSF est introduite. Soit MAXDeep ce nombre maximum de saut. Tout nƓud

Page 107: Configuration dynamique et routage pour l'internet des objets

Chapitre 6. RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 87

ne peut utiliser une passerelle que si celle-ci est situĂ©e Ă  une distance d’au plusMAXDeep.

Sous les contraintes listées ci-dessus, deux objectifs principaux sont recherchés :

1. Minimiser le nombre de passerelles activĂ©es. Des capteurs peuvent ĂȘtre sous lazone de service de plusieurs passerelles. Les passerelles utilisĂ©e est celle alimen-tant ces derniers aux meilleurs coĂ»ts. L’objectif recherchĂ© lors de la constructiondu rĂ©seau est l’optimisation de la mĂ©trique de routage considĂ©rĂ©e (nombre desaut, dĂ©lai, Ă©nergie ou une combinaison de ces critĂšres).

2. Équilibrage de charge. RĂ©partir le trafic sur les passerelles activĂ©es permet demaximiser leur utilisation.

6.4 Procédure de résolution

6.4.1 Complexité algorithmique

Proposition 1 (NP-difficultĂ© du problĂšme de sĂ©lection de passerelles). Le problĂšme desĂ©lection de passerelles tel qu’énoncĂ© en § 6.3.2 est NP-difficile.

Preuve. Établir la NP-difficultĂ© de la sĂ©lection des passerelles se fait par rĂ©duction duproblĂšme classique du CFLP (Capacitated Facility Location Problem) [She90] Ă  celui-ci.

En effet, on dispose d’un ensemble U d’usines capables de produire chacune unecertaine quantitĂ© d’un produit donnĂ©. Les usines sont soit ouvertes, soit fermĂ©es etdoivent satisfaire chacune Ă  une demande dj Ă©manant de divers clients j ∈ D situĂ©sdans diffĂ©rentes villes. L’ouverture d’une usine i ∈ U est associĂ©e Ă  un coĂ»t de fonc-tionnement fi et une capacitĂ© de production αi correspondant Ă  la demande maximalequ’elle est capable de satisfaire. Le coĂ»t de service d’une demande unitaire d’un clientj par l’usine i est cij . Le problĂšme CFLP revient Ă  dĂ©terminer un sous-ensemble U â€Č ⊆ Ud’usines Ă  ouvrir de façon Ă  satisfaire la demande de tous les clients et de telle sorteque le coĂ»t total d’ouverture de ces usines ainsi que celui associĂ© au service des clientssoit minimal.

La rĂ©duction du CFLP au problĂšme de sĂ©lection des passerelles se fait de façonaisĂ©e. Nous pouvons voir le CFLP comme une instance du problĂšme de sĂ©lection despasserelles, oĂč les usines correspondent aux passerelles et, ont tous le mĂȘme coĂ»t defonctionnement fi = 1. Le coĂ»t de service cij d’un client (i.e nƓud) j par l’usine i estassociĂ© Ă  au poids du chemin (au sens de la mĂ©trique de routage) entre le capteur etla passerelle correspondante. Nous supposons que tous les nƓuds expriment la mĂȘmedemande unitaire i.e. dj = 1, ∀j ∈ D correspondant au trafic gĂ©nĂ©rĂ©. On peut facilementgĂ©nĂ©raliser cette demande Ă  une valeur arbitraire pour tout nƓud. Ainsi, la capacitĂ©d’une usine est la quantitĂ© de trafic que la passerelle associĂ©e peut relayer. Elle est fixĂ©eĂ  αi comme Ă©tant le nombre maximum de nƓuds pris en charge par la iime passerelle.Par cette rĂ©duction, le CFLP est bien vue comme une instance du problĂšme de sĂ©lectiondes passerelles. Puisque la NP-difficultĂ© du CFLP est Ă©tablie [ZCY04], nous pouvonsen dĂ©duire celle de la sĂ©lection des passerelles.

Page 108: Configuration dynamique et routage pour l'internet des objets

Chapitre 6. RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 88

6.4.2 MĂ©thode de rĂ©solutionLe problĂšme peut ĂȘtre modĂ©lisĂ© comme un programme linĂ©aire en nombres entiers.

Les notations utilisĂ©es dans le modĂšle sont les mĂȘmes que celles introduites en §6.3.1.Les passerelles Ă©lĂ©ments de Sp sont indexĂ©es par i tandis que les capteurs Ă©lĂ©ments deSn sont indexĂ©s par j. Deux nouvelles variables multidimensionnelles X et Y Ă  valeursbinaires (resp. Xij et Yi) sont introduites et dĂ©finies comme suit :

Xij =

1 Si la passerelle i est utilisĂ©e par le nƓud j

0 Sinon

Yi =

1 Si la passerelle i est activée

0 Sinon

(6.1)

Le problĂšme de sĂ©lection des passerelles peut ĂȘtre rĂ©crit sous la forme du programmelinĂ©aire suivant :

Minimiser

|Sp|∑i=1

|Sn|∑j=1

cijXij +

|Sp|∑i=1

Yi + σi∈Sp

(

|Sn|∑j=1

Xij)

(6.2)

Sujet Ă  :

|Sp|∑i=1

Xij = 1, ∀j ∈ Sn

|Sn|∑j=1

Xij ≀ αi, ∀i ∈ Sp

Xij ≀ Yi, ∀i ∈ Sp, ∀j ∈ Sn|Sp|∑i=1

cijXij ≀ MAXDeep, ∀j ∈ Sn

0 ≀ Xij, Yi ≀ 1, ∀i ∈ Sp, ∀j ∈ Sn

(6.3)

(6.4)

(6.5)

(6.6)

(6.7)

La fonction d’objectif donnĂ©e par la relation 6.2 vise non seulement Ă  minimiser le

nombre de passerelles à ouvrir (|Sp|∑i=1

Yi), mais Ă©galement le coĂ»t du chemin d’accĂšs (par

la mĂ©trique de routage) du capteur j Ă  la passerelle i (|Sp|∑i=1

|Sn|∑j=1

cijXij). Par ailleurs, pour

prendre en considĂ©ration la rĂ©partition de la charge sur l’ensemble des passerelles ac-

tivĂ©es, un troisiĂšme terme σi∈Sp

(|Sn|∑j=1

Xij) est dĂ©fini comme Ă©tant l’écart type de la charge

des passerelles activées. Plus petite est la valeur, meilleure est la distribution de chargedes passerelles par rapport à la moyenne.

Page 109: Configuration dynamique et routage pour l'internet des objets

Chapitre 6. RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 89

La premiĂšre contrainte ou contrainte de couverture est dĂ©finie par la relation 6.3. Ellegarantie que dans la recherche de solutions tous les nƓuds ont accĂšs Ă  au moins unepasserelle. Par ailleurs, comme cette somme vaut 1, celle impose que chaque nƓudn’utilise qu’une et une seule passerelle pour accĂ©der Ă  Internet. Plus tard, des arbores-cences de routage disjointes pourront ĂȘtre construites. L’inĂ©galitĂ© 6.4 est la contrainte decapacitĂ©. Elle assure que les demandes des clients n’excĂšdent pas la capacitĂ© des passe-relles correspondantes. La relation 6.5 ou contrainte d’utilisation garantie que les nƓudsne se servent que des passerelles activĂ©es. L’inĂ©galitĂ© 6.6 (contrainte de profondeur) offrele moyen de limiter le rayon de couverture de toute passerelle Ă  MAXDeep. C’est la dis-tance maximale Ă  laquelle un nƓud peut ĂȘtre capturĂ© par celle-ci via des liens radiosmulti-sauts. Enfin, les inĂ©galitĂ©s rĂ©fĂ©rencĂ©es par 6.7 indiquent que les variables X et YcalculĂ©es en sortie du programme linĂ©aire ont bien un domaine de valeurs binaires.

Pour rĂ©soudre ce programme linĂ©aire, de nombreuses heuristiques sont proposĂ©esdans la littĂ©rature [She90 ; ZCY04]. Nous optons d’utiliser la librairie ILOG CPLEXv12.6.3 d’IBM [Ibm]. Cette derniĂšre recherche des solutions exactes pour le programmelinĂ©aire en nombre entiers en limitant l’espace de recherche par utilisation de la tech-nique « branch and cut ».

Les fonctions nécessaires à la résolution ont été codées en JAVA. Trois variables sontfournies en entrée :

— MAXDeep : profondeur maximale de capture des nƓuds,

— α : vecteur des capacitĂ©s respectives de passerelles,

— C : matrice des valeurs cij , indiquant le coĂ»t d’accĂšs du nƓud j Ă  la passerelle i.

Le modÚle produit en sortie deux variables multidimensionnelle, à savoir la matriceX et le vecteur Y dont les valeurs sont interprétées comme indiqué par la relation 6.1.

6.4.3 Illustration

Pour illustrer le fonctionnement du modĂšle, le rĂ©seau de la figure 6.1 est considĂ©rĂ©.La matrice C des coĂ»ts cij de chemin est donnĂ©e ci-dessous. Il s’agit d’une matrice5 lignes × 37 colonnes, oĂč i (resp. j) indexe la ligne (resp. colonne) correspondant Ă la passerelle (resp. nƓud) de mĂȘme rang. L’infini (matĂ©rialisĂ© par un point par soucid’espace) dĂ©note la non accessibilitĂ© (par lien radio multi-sauts) de la passerelle par lenƓud. Dans la pratique il est instanciĂ©e Ă  une valeur suffisamment grande par rapportĂ  la longueur de tout chemin d’un nƓud Ă  une passerelle quelconque. Dans l’illustra-tion dĂ©roulĂ©e le nombre de saut est utilisĂ© comme mĂ©trique de routage Ă  optimiser.

C =

1 2 2 3 4 4 . . . . . . . . 1 1 2 3 3 2 3 . . . . . . . . . . . . . . . .

4 4 3 2 2 1 . . . . . . . . 2 1 2 3 2 1 1 . . . . . . 1 2 3 3 . . . . . .

. . . . . . 1 1 2 2 3 . . . . . . . . . . . . . . . . 2 1 1 2 . . . . . .

. . . . . . 3 2 2 1 1 1 2 2 . . . . . . . 1 2 3 3 1 2 . . . . 1 2 2 3 3 3

. . . . . . . . . . . 2 2 1 . . . . . . . . . . . 2 1 . . . . 3 2 3 1 2 3

Page 110: Configuration dynamique et routage pour l'internet des objets

Chapitre 6. RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 90

6.4.3.1 Scénario No1

Dans un premier temps, la capacitĂ© de toutes les passerelles est dĂ©finie sur la mĂȘmevaleur fixĂ©e Ă  15. Ainsi, α = [15, 15, 15, 15, 15]. La longueur maximale de tout chemin Ă une passerelle quelconque est limitĂ©e Ă  MAXDeep = 4. AprĂšs instanciation et rĂ©solution,les sorties X et Y produites par le modĂšle sont indiquĂ©es ci-dessous.

Y = [0, 1, 1, 1, 0]

X =

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1 1 1 1 1 1 . . . . . . . . 1 1 1 1 1 1 1 . . . . . . . . . . . . . . . .

. . . . . . 1 1 1 1 1 . . . . . . . . . . . . . . . . 1 1 1 1 . . . . . .

. . . . . . . . . . . 1 1 1 . . . . . . . 1 1 1 1 1 1 . . . . 1 1 1 1 1 1

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Il convient de noter que pour des raisons de lisibilité la valeur zéro est représenté parun point dans la matrice X .

Comme on peut le voir sur la figure 6.2–a, sur la base de ces entrĂ©es le systĂšmerecommande l’activation des seules passerelles p2, p3 et p4, les autres devant ĂȘtre fer-mĂ©es. La premiĂšre est activĂ©e pour les instances de RCSF codĂ©es par les couleurs griseet rouge ; la seconde pour les instances bleue et grise ; et la derniĂšre pour toutes lesinstances. La matrice solution X indique comment les nƓuds sont associĂ©s aux passe-relles. Les arborescences de routage qui optimisent le nombre de saut par la fonctiond’objectif RPL pour chacune des instantes sont Ă©galement illustrĂ©es.

Il convient de noter par ailleurs que la charge associĂ©e Ă  chacune des passerellesp2, p3 et p4 notĂ© ÎČ, vaut respectivement : ÎČ2 = 13, ÎČ3 = 9 et ÎČ4 = 15. Celle-ci correspondĂ  un Ă©cart type σ2 = 2.49. p4 atteint sa charge maximale, tandis que p3 capture tous lesnƓuds dans son champ de couverture de sorte que la dispersion des charges soit aussifaible que possible sur cette configuration.

6.4.3.2 Scenario No2

Le schĂ©ma du rĂ©seau illustrĂ© par la figure 6.1, de mĂȘmes que les paramĂštres d’entrĂ©edu modĂšle sur le scĂ©nario prĂ©cĂ©dent sont conservĂ©s, seules les capacitĂ©s des passerellessont modifiĂ©es et dĂ©finies maintenant sur la valeur 10 i.e. α = [10, 10, 10, 10, 10]. La to-pologie rĂ©seau prĂ©conisĂ©e par le modĂšle reprĂ©sentĂ©e Ă  la figure 6.2–b est complĂštementdiffĂ©rente. Les donnĂ©e fournies en sortie sont les suivantes (le zĂ©ro Ă©tant remplacĂ© parle point dans la matrice X) :

Y = [1, 1, 0, 1, 1]

Page 111: Configuration dynamique et routage pour l'internet des objets

Chapitre 6. RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 91

Réseau FédérateurRéseau Fédérateur (via Internet)(via Internet)

20

1

5

14

11

10

3

6

13

2

79

12

8

4

19

26

22

23

2421

18

17

27

25

30

31

28

29

35

34

36

37

3216

15

33

p1

p2

p3 p

4

p5

Passerelle

Liaison filaire

Prochain saut sur la liaison sans fil

Passerelle ouverte (activé)

Passerelle fermée (désactivé)

Capteur (type réseau = couleur)

31

Réseau FédérateurRéseau Fédérateur (via Internet)(via Internet)

20

1

5

14

11

10

3

6

13

2

79

12

8

4

19

26

22

23

2421

18

17

27

25

30

28

29

35

34

36

37

3216

15

33

p1

p2

p3 p

4

p5

(a) αi = 15,∀i ∈ Sp (b) αi = 10,∀i ∈ Sp

FIGURE 6.2 – Arborescence de routage pour diverses donnĂ©es en entrĂ©e

X =

1 1 1 . . . . . . . . . . . 1 1 1 1 1 . . . . . . . . . . . . . . . . . .

. . . 1 1 1 . . . . . . . . . . . . . 1 1 . . . . . . 1 1 1 1 . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . 1 1 1 1 1 . . . . . . . . . . 1 1 1 1 . . . . . . 1 . . . . .

. . . . . . . . . . . 1 1 1 . . . . . . . . . . . 1 1 . . . . . 1 1 1 1 1

On remarque qu’en dĂ©finissant la capacitĂ© des passerelles Ă  une valeur infĂ©rieure, lemodĂšle rĂ©agit comme attendu. Il prĂ©conise l’ouverture de d’avantage de points d’en-trĂ©e sur le rĂ©seau fĂ©dĂ©rateur, quatre contre trois prĂ©cĂ©demment comme le montre levecteur solution Y . La nouvelle configuration des associations capteurs/passerelles estdonnĂ©e par X . Par ailleurs, les nouvelles charges des passerelles sont ÎČ1 = 8, ÎČ2 = 9,ÎČ4 = 10 et ÎČ5 = 10. L’écart type associĂ© Ă  ses charges Ă©tant σ2 = 0.83 dĂ©notant un trĂšsbon Ă©quilibrage de charge.

6.5 Architecture du systĂšme

Pour instancier le modĂšle tel que dĂ©crit dans les sections prĂ©cĂ©dentes, il est nĂ©ces-saire de disposer des informations sur la topologie du rĂ©seau. En particulier, celles re-latives au graphe d’interconnexion associĂ©s aux diffĂ©rents RCSF Ă  partir duquel serontinfĂ©rĂ© les chemins optimaux pour atteindre les passerelles et les coĂ»ts correspondants.Cette carte du rĂ©seau permettra de construire la matrice C (coĂ»ts des plus courts che-mins) utilisĂ©e comme entrĂ©e du programme linĂ©aire (cf. § 6.4.3).

Page 112: Configuration dynamique et routage pour l'internet des objets

Chapitre 6. RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 92

Réseau FédérateurRéseau Fédérateur (via Internet)(via Internet)

Capteur Passerelle Station de Gestion

1. Informations de voisinage

2. Graphe de plus court chemin

4. Communication des ordres

5. Informations de routage/instance

3. I

nst

anci

atio

n

FIGURE 6.3 – Architecture du systùme

La figure 6.3 prĂ©sente l’architecture globale du systĂšme. Trois entitĂ©s sont nĂ©ces-saires Ă  la mise en Ɠuvre de la plate-forme proposĂ©e, les nƓuds-capteurs, les passe-relles et une station de gestion centralisĂ©e. Le diagramme de sĂ©quence prĂ©sentĂ© dansla partie infĂ©rieure du schĂ©ma souligne les interactions entre ces diffĂ©rentes entitĂ©s.

1. Collecte des informations topologiques : Pour chaque instance, les nƓuds col-lectent rĂ©guliĂšrement les informations de voisinage qu’ils font remonter parmultidiffusion aux diffĂ©rentes stations de base. Dans l’implĂ©mentation propo-sĂ©e, station de base et passerelle sont assurĂ©es par le mĂȘme dispositif physique(Raspberry Pi). Pour collecter et gĂ©rer les informations topologique un proto-cole dĂ©diĂ© (DRPLCP – prĂ©sentĂ© un peu plus loin cf. § 6.6.2.1) a Ă©tĂ© conçu et misen Ɠuvre.

2. Graphe des coĂ»ts : Chaque passerelle construit Ă  partir du graphe topologiquereçu des nƓuds sous-jacents, l’arbre des plus court chemins oĂč elle est elle-mĂȘme racine et les capteurs sont soit des nƓuds internes soit des feuilles. Cetarbre, qui est le rĂ©sultat de l’arborescence de routage optimale pour la mĂ©triqueconsidĂ©rĂ©e, est envoyĂ© par chacune des passerelles Ă  la station de gestion qui lesagrĂšge et constitue la matrice des coĂ»ts C. Une ligne de la matrice reprĂ©sente lescoĂ»ts de plus courts chemins de la passerelle associĂ©e vers tous les nƓuds durĂ©seau. L’infini dĂ©notant une inaccessibilitĂ© du nƓud par la passerelle.

3. Instanciation du modÚle : Une fois les entrées du modÚle constituées (matrice

Page 113: Configuration dynamique et routage pour l'internet des objets

Chapitre 6. RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 93

des coĂ»ts C, vecteur des capacitĂ©s des passerelles α et longueur maximale deschemins MAXDeep) le programme linĂ©aire en nombres entiers est exĂ©cutĂ© parle solveur CPLEX sur la station de gestion. Les sorties de ce programme sontconverties en ordres d’activation ou fermeture de passerelle. Les diffĂ©rents rĂŽles(nombre d’instance RPL Ă  configurer par racine) de passerelle Ă  activer sont Ă©ga-lement dĂ©terminĂ©s.

4. Communication des ordres/rĂŽles : Les ordres et rĂŽles dĂ©terminĂ©s Ă  l’étape prĂ©-cĂ©dente sont transmis par la station de gestion aux diffĂ©rentes passerelles viale rĂ©seau. Celle-ci adaptent leur fonctionnement en consĂ©quence et mettent Ă jour leur capacitĂ© pour tenir compte des ressources dĂ©jĂ  allouĂ©es. La nouvellecapacitĂ© est obtenue par dĂ©duction Ă  la prĂ©cĂ©dente de la charge de trafic addi-tionnelle Ă  prendre en compte. Plus formellement, αi(t) = αi(t− 1) − ÎČi(t) , oĂčαi(t) est la nouvelle capacitĂ© de la passerelle i Ă  l’instant t, αi(t − 1) sa capacitĂ©prĂ©cĂ©dente et ÎČi(t) la charge de trafic supplĂ©mentaire Ă  recevoir en raison dereconfiguration rĂ©seau.

5. Configuration du routage : Les passerelles nouvellement activĂ©es commencentĂ  envoyer leurs paramĂštres de configuration (DIO) pour les instances RPL priseen charge. Les nƓuds rejoignent selon leur fonction d’objectif et l’arborescencede routage est alors construite en optimisant la mĂ©trique en vigueur (nombre desaut, Ă©nergie, ETX, dĂ©lai, ou combinaison)

Pour prendre en compte la dynamique du rĂ©seau, les capteurs continuent de sur-veiller leur voisinage au cours de leur activitĂ©. Afin de limiter la consommation desressources, les informations de voisinage ne sont remontĂ©es qu’en cas de modificationstopologiques (dĂ©couverte d’un nouveau nƓud ou mort/disparition d’un voisin). Lespasserelles recevant ces informations les relayent Ă  la station de gestion qui reconfigurele rĂ©seau si nĂ©cessaire. Une passerelle est dite fermĂ©e dans le sens oĂč elle ne construitpas d’arborescence de routage RPL et n’assure donc pas l’interconnexion vers Internet.

6.6 Mise en Ɠuvre et dĂ©ploiement

6.6.1 Architecture matérielleComme indiqué plus tÎt, le systÚme est constitué de deux infrastructure réseaux,

le RCSF et Internet (via le backbone). Dans l’implĂ©mentation proposĂ©e, les nƓuds dĂ©-ployĂ©s dans la partie RCSF sont des Telos B de type CM5000 [Tel] Ă©quipĂ©s d’un micro-contrĂŽleur MSP430 et d’une puce radio CC2420 opĂ©rant selon le norme IEEE802.15.4.Diverses interface de captage sont embarquĂ©es pour l’acquisition des donnĂ©es environ-nementales (i.e. tempĂ©rature, humiditĂ©, luminositĂ© etc.). Dans la partie backbone, c’estle Raspberry Pi– 3 agissant Ă  la fois comme passerelle et racine pour le DODAG RPL, quia Ă©tĂ© choisi. Les principales raisons de ce choix sont la taille assez rĂ©duite de la pla-teforme et ses performances intĂ©ressantes au regard de son faible coĂ»t d’acquisition.Par ailleurs, ses caractĂ©ristiques le rendent apte Ă  pouvoir assurer Ă  la fois les servicesdĂ©volus Ă  la passerelle et ceux liĂ©s au routage . Le mode d’utilisation rĂ©alisĂ© avec ce

Page 114: Configuration dynamique et routage pour l'internet des objets

Chapitre 6. RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 94

dernier est le mĂȘme que celui dĂ©crit plus tĂŽt en § 3.2.2 et illustrĂ© par la figure 3.7 (asso-ciation Raspberry–Telos B). Le Telos B est utilisĂ© comme interface IEEE802.15.4 pourconnecter le RCSF tandis que le port Ethernet assure la connexion l’équipement Ă  In-ternet.

6.6.2 Fonctionnement réseau

6.6.2.1 CÎté réseau de capteurs sans fils

Dans la partie RCSF, les nƓuds exĂ©cutent chacun une application spĂ©cifique (dĂ©-pendant du service) gravĂ©e dans leur mĂ©moire flash avant leur dĂ©ploiement. Les dif-fĂ©rentes applications sont rĂ©pertoriĂ©es par un numĂ©ro d’instance RPL au niveau de lapasserelle. Deux catĂ©gories d’instance sont gĂ©rĂ©es : les instances dites applicatives dĂ©-diĂ©es aux applications et l’instance de configuration. DĂšs qu’un nƓud est installĂ© dansle rĂ©seau, il commence par s’enregistrer dans un groupe de diffusion grĂące Ă  l’ins-tance de configuration et attend de recevoir de la racine RPL une instance applicative.Un protocole dĂ©diĂ©, DRPLCP (Dynamic RPL Configuration Protocol) a Ă©tĂ© conçu pourla gestion des enregistrement de nƓuds et le dispatching par la racine des instancesapplicatives. La possibilitĂ© d’installer de façon progressive les capteurs de mĂȘme quela nature dynamique de l’allocation des services (applications) permet de dĂ©ployer lerĂ©seau graduellement.

AussitĂŽt qu’un nƓud obtient son instance applicative, il rejoint l’arborescence RPLcorrespondante et commence Ă  exĂ©cuter l’application associĂ© Ă  l’instance reçue. Pen-dant les phases d’activitĂ© normale le nƓud continu de remonter Ă  sa passerelle l’in-formation de voisinage si nĂ©cessaire (changement topologique) qui infĂšre un nouveaugraphe rĂ©seau servant Ă  l’instanciation du modĂšle.

6.6.2.2 CÎté passerelle

La passerelle est mise en Ɠuvre par l’association Raspberry–Telos B. Dans ce cou-plage le Raspberry prend en charge Ă  la fois la distribution des instances mais aussile pontage entre RCSF et Internet. Elle assure Ă©galement une communication bidirec-tionnelle avec la station de gestion : envoie des paramĂštres topologiques et rĂ©ceptiondes ordres de fonctionnement. Pour interfacer le RCSF, le Telos B exĂ©cute une applica-tion SLIP basique [Rom88] : lecture d’un flux de donnĂ©es brutes sur l’interface radioIEEE802.15.4 qu’il rĂ©crit sur le port USB de l’équipement et inversement.

Une fois qu’il a dĂ©marrĂ©, la passerelle dissĂ©mine dans des DIO les informationsde configuration de toutes les instances locales pour lesquelles elle assure la fonctionde racine. En consĂ©quence, les nƓuds du voisinage appartenant Ă  l’une des instancessupportĂ©es peuvent rejoindre le rĂ©seau, sĂ©lectionner leur prochain saut et commen-cer Ă  y participer. Un moment important qu’il convient de prĂ©senter est la gestion desinstances nouvellement crĂ©Ă©es au niveau de la passerelle. Elle annonce celle-ci via l’ins-tance dĂ©diĂ© Ă  la configuration en utilisant le groupe de multidiffusion. Tout nƓud nou-vellement dĂ©ployĂ©, i.e. et n’ayant pas encore reçu d’instance applicative, peut alors enrecevoir une et contribuer aux services fournis par rĂ©seau associĂ© (exĂ©cution de l’ap-plication + collecte des informations de voisinage).

Page 115: Configuration dynamique et routage pour l'internet des objets

Chapitre 6. RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 95

6.6.3 DĂ©ploiement et cas d’utilisationPour Ă©valuer la plateforme dĂ©veloppĂ©e pour le modĂšle proposĂ©, dans un premier

temps nous avons Ă©valuĂ© la formation du rĂ©seau et son passage Ă  l’échelle. Étant donnĂ©que le prototype que nous avons dĂ©veloppĂ© pour le simulateur utilisĂ© ne supporteactuellement qu’une seule passerelle, un rĂ©seau aussi grand que le permet l’ordinateurhĂŽte de la simulation a Ă©tĂ© montĂ©. La simulation permet Ă©galement de pouvoir Ă©valuerla prise en charge par le modĂšle de plusieurs instance ainsi que la communication entreInternet et les nƓuds du RCSF.

Dans un second temps, un scĂ©nario rĂ©el a Ă©tĂ© mis dĂ©ployĂ© pour Ă©valuer le fonction-nement du modĂšle en prĂ©sence de plusieurs passerelle. Le cas d’utilisation choisi estcelui de la domotique, considĂ©rant un rĂ©seau recueillant les informations environne-mentales dans un bĂątiment.

6.6.3.1 Simulation grande Ă©chelle

En utilisant le simulateur Cooja intĂ©grĂ© Ă  Contiki, une topologie rĂ©seau de 500×500de plus de 100 nƓuds disposĂ© de façon alĂ©atoire a Ă©tĂ© installĂ©. Plus qu’une simulationles nƓuds disposĂ©s Ă©mulent code image que de rĂ©els capteurs Telos B. La fonctionde passerelle est assurĂ©e par la machine hĂŽte de la simulation qui fait tourner en ar-riĂšre plan l’exĂ©cutable associĂ©. La passerelle communique avec le RCSF montĂ© dansle simulateur grĂące Ă  un nƓud particulier qui exĂ©cute un programme SLIP. Les deuxprogrammes Ă©changent en utilisant une simple Socket TCP. L’ordinateur hĂŽte des si-mulations fonctionne sous Linux Ubuntu 16.04 et possĂšde un processeur de type Core 2Extreme QX6850 cadencĂ© Ă  3Ghz avec 8Go de mĂ©moire. Pour des raison de simplicitĂ©,les identifiant d’instance sont les mĂȘmes que le nombre de nƓud y opĂ©rant, Ă  savoir50, 30 et 20. Le tableau 6.1 regroupe les principaux paramĂštres de simulation et ceux dela pile protocolaire.

ParamĂ©trages ValeursCouche Application Collecte rĂ©guliĂšre de donnĂ©es captĂ©esCouche Transport UDPCouche RĂ©seau ”IPv6 + 6LoWPAN + RPL (routage)Couche MAC CSMA non-persistantRDC ContikiMACPHY + Puce Radio IEEE 802.15.4 & CC2420ModĂšle Canal sans fil Graphe de Disque Unitaire (UDG) & Perte avec distancePortĂ© Communications 80m (Tx/Rx), 100m (Interf.)Type de nƓud Tmote sky (Telos B)

TABLE 6.1 – Paramùtres de simulation

Le schĂ©ma de la figure 6.4 illustre le rĂ©seau simulĂ© oĂč les nƓuds coloriĂ©s en jaune,violet et bleu reprĂ©sentent les instances d’identifiant respectif #50, #30 et #20. LenƓud vert situĂ© au centre du rĂ©seau est celle assurant la connexion du simulateur auprogramme de passerelle s’exĂ©cutant sur l’ordinateur hĂŽte de la simulation. Les re-lations entre nƓuds matĂ©rialisĂ©es par des flĂšches correspondent aux prochains sauts

Page 116: Configuration dynamique et routage pour l'internet des objets

Chapitre 6. RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 96

FIGURE 6.4 – Simulation Cooja d’un rĂ©seau grande Ă©chelle

(parents prĂ©fĂ©rĂ©s) sĂ©lectionnĂ©s par la fonction d’objectif RPL. Comme voulu la topologierĂ©seau s’organise autour de trois arborescences de routage disjointes identifiable parleur couleur d’instance.

Une navigation sur l’adresse IPv6 de la passerelle permet de lister les diffĂ©rents cap-teurs appartenant Ă  chacune des instances ainsi que diffĂ©rentes statistiques (cheminsascendants et descendants). A titre d’illustration la figure 6.5 montre bien que tous lesnƓuds associĂ©s Ă  l’instance #20 ont Ă©tĂ© effectivement dĂ©couverts et sont accessible den’importe quel nƓud depuis Internet.

6.6.3.2 Expérience en environnement réel

A des fins de preuve de concept, un prototype de modĂšle a Ă©tĂ© dĂ©ployĂ© dans unehabitation. Deux applications ont Ă©tĂ© dĂ©veloppĂ©es pour matĂ©rialiser la notion d’ins-tance. La premiĂšre, enregistrĂ©e sous l’identifiant #10 permet de collecter des donnĂ©esde tempĂ©rature tandis que la seconde, d’identifiant #20 rĂ©alise le relevĂ© d’informa-tions de luminositĂ©. Les capteurs exĂ©cutent le systĂšme d’exploitation Contiki 2.7 etla passerelle fonctionnent avec un noyau Raspbian 4.4. Le projet 6LBR (prĂ©sentĂ© en§ 3.2.1) a Ă©tĂ© modifiĂ© pour prendre en charge plusieurs instances de mĂȘme que lesordres d’ouverture/fermeture de passerelles en fonction des commandes reçues de lastation de gestion. Deux passerelles et dix capteurs sont disposĂ©s dans divers endroitsd’une habitation de cinq piĂšces. Les passerelles sont connectĂ©s par leur port Ethernet(cf. figure 3.7) en rĂ©seau local qui est connectĂ© lui mĂȘme Ă  Internet.

Les paramĂštres du modĂšle sont fixĂ©es de sorte que les passerelles soient Ă  mesurede capturer la moitiĂ© des capteurs chacun, i.e. α = [5, 5]. Par ailleurs la profondeurmaximale est dĂ©finie sur MAXDeep = 2, ainsi tout nƓud peut atteindre devra atteindrepasserelle en au plus 2 sauts. Il faut noter que l’environnement d’expĂ©rience permet (en

Page 117: Configuration dynamique et routage pour l'internet des objets

Chapitre 6. RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 97

FIGURE 6.5 – Capteurs dĂ©couverts de la passerelle [instance #20]

absence de bruits) Ă  tous nƓud d’ĂȘtre Ă  portĂ©e de communication de tous les autres.L’ETX (fiabilitĂ© de transmission bidirectionnelle au niveau MAC) est utilisĂ© comme deroutage, ce qui rend possible un chemin passant par un voisin (indirect) plus intĂ©res-sant que le chemin direct (passerelle).

Dans un premier temps, cinq capteurs exĂ©cutant l’instance #10 associĂ© Ă  la pre-miĂšre application sont dĂ©ployĂ©s. L’instance est prĂ©alablement crĂ©Ă©e au niveau de deuxpasserelles. AprĂšs la phase d’initialisation, sur la base des paramĂštres susmentionnĂ©s,le systĂšme recommande l’activation d’une seule passerelle, notĂ©e passerelle no1. La fi-gure 6.6 illustre la topologie rĂ©seau obtenu Ă  partir de l’interface web utilisĂ© pour in-teragir avec cette passerelle. Comme indiquĂ©, tous les nƓuds (ici reprĂ©sentĂ©s par leuridentifiants MAC) utilisent la passerelle no1 comme unique point de sortie vers Internet.

Les sorties produites par le modĂšle sont X(1) =

[1 1 1 1 10 0 0 0 0

]et Y (1) = [1, 0].

Dans un second temps, la seconde instance est crĂ©Ă©e sur les passerelles et les cinqnƓuds restant sont ajoutĂ©es au rĂ©seau de sorte que deux exĂ©cutent l’instance relative Ă la premiĂšre application et les trois autres la seconde instance. AprĂšs ceci, au bout d’uncertain temps, passerelle no2 (prĂ©cĂ©demment fermĂ©e) commence Ă  opĂ©rer comme racineRPL pour les deux instances, tandis que passerelle no1 continue de capturer les nƓudsprĂ©cĂ©dant (tous dans l’instance #1). Les rĂ©sultats produits par le modĂšle sont Ă  prĂ©sent

X(2) =

[1 1 1 1 1 0 0 0 0 00 0 0 0 0 1 1 1 1 1

]et Y (2) = [1, 1].

La figure 6.7 prĂ©sente le rĂ©sultat de la navigation sur la seconde passerelle. Deux nƓudsopĂšrent dans l’instance #10 (fig. 6.7–a) et trois dans l’instance #20 (fig. 6.7–b).

Page 118: Configuration dynamique et routage pour l'internet des objets

Chapitre 6. RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 98

FIGURE 6.6 – ExpĂ©rience pour la domotique : 1ere Passerelle – Phase 1

(a)– Instance #10 (b)– Instance #20

FIGURE 6.7 – ExpĂ©rience pour la domotique : 2nde Passerelle – Phase 2

6.7 Conclusion

Dans ce chapitre, nous examinons la question sĂ©lection de passerelle pour l’intĂ©-gration efficace de RCSF Ă  Internet dans la rĂ©alisation de la vision de l’IoT. Une archi-tecture fĂ©dĂ©ratrice permettant de prendre en charge plusieurs RCSF fournissant diversservices (grĂące Ă  la notion d’instance) a Ă©tĂ© conçue et mise en Ɠuvre. L’élĂ©ment centraldu systĂšme proposĂ© est la passerelle, nous l’avons choisi façon Ă  obtenir un systĂšmefinal qui soit Ă  la fois efficace mais aussi Ă©conomiquement intĂ©ressant. Par ailleurs le

Page 119: Configuration dynamique et routage pour l'internet des objets

Chapitre 6. RĂ©seau fĂ©dĂ©rateur de passerelles pour l’Internet des Objets 99

systĂšme est conçu sous forme d’une architecture en trois couches de façon Ă  ĂȘtre flexibleet Ă©volutive. Le problĂšme de sĂ©lection de passerelle est formulĂ© comme un programmelinĂ©aire en nombres entiers. Une librairie basĂ©e sur CPLEX a Ă©tĂ© dĂ©veloppĂ©e pour confi-gurer dynamiquement le rĂ©seau en fonction des conditions variables du rĂ©seau. Celle-ci sĂ©lectionne les passerelles Ă  activer (nombre et position) pour assurer une connexionInternet respectant les contraintes de capacitĂ© des diffĂ©rentes passerelles et garantissantune bande passante suffisante (pour les RCSF) tout en Ă©vitant les goulots d’étrangle-ments.

Un prototype du modĂšle proposĂ© a Ă©tĂ© implĂ©mentĂ© comme preuve de concept enutilisant la plateforme matĂ©rielle Raspberry Pi pour hĂ©berger les services de la pas-serelle. Un dĂ©ploiement rĂ©el pour une application de domotique qui tĂ©moigne de lafaisabilitĂ© et fonctionnement du modĂšle proposĂ© a Ă©tĂ© rĂ©alisĂ©. Des simulations d’unrĂ©seau de grande taille ont Ă©galement Ă©tĂ© rĂ©alisĂ© sous Cooja pour Ă©valuer le passage Ă l’échelle de l’architecture. Nous soutenons que la limite de la taille de simulation (100nƓuds) n’est due qu’aux ressources mĂ©moire disponibles sur l’ordinateur hĂŽte des si-mulation car le code de chaque capteur est entiĂšrement Ă©mulĂ©.

Page 120: Configuration dynamique et routage pour l'internet des objets

100

Chapitre 7

Conclusion et Perspectives

Le concept de l’Internet des Objets permet aux entitĂ©s du monde rĂ©el (humains,vĂ©hicules), emplacements (maison, bĂątiment, usines, villes) et toutes sortes de gadgetsĂ©lectroniques (montres, lunettes, jouets, etc.) d’ĂȘtre connectĂ©s Ă  l’Internet, de publierleurs Ă©tats et informations collectĂ©es par divers capteurs. De mĂȘme, il est possible decontrĂŽler ces objets Ă  distance Ă  partir d’Internet (via les services Web) et influer grĂące Ă des actionneurs sur le monde environnant. Ce nouveau paradigme a changer la façondont les personnes, objets, donnĂ©es et services interagissent, offrant une large gammed’applications et de nouveaux usages du rĂ©seau de donnĂ©es Internet.

Les rĂ©seaux de capteurs sans fil constituent un Ă©lĂ©ment essentiel dans la rĂ©alisationde cette vision de l’Internet des Objets. En effet, ils permettent de couvrir de vasteszones grĂące Ă  de minuscules objets autonomes dotĂ©s d’interface de communication Ă faible puissance d’émission et communiquant par des liens radios multi-sauts caractĂ©-risĂ©s par leur instabilitĂ© et un fort taux de perte. Les nƓuds utilisĂ©s prĂ©sentent ainsi descaractĂ©ristiques uniques qui rend impossible la transposition des solutions et proto-coles existant dans les rĂ©seaux traditionnels vers ce type d’environnement. Des effortsde standardisation ont conduit depuis quelques annĂ©es Ă  la conception de nombreuxprotocoles adaptĂ©s Ă  l’environnement contraints des motes utilisĂ©es, mais des amĂ©lio-rations restent possibles.

7.1 Résumé des contributions

C’est dans ce contexte que s’inscrivent nos travaux, portant notamment sur descontributions au niveau du routage dans les RCSF et l’interconnexion de plusieursrĂ©seaux de ce type Ă  l’Internet traditionnel. Nous proposons deux nouvelles fonctionsd’objectif RPL pour la construction de la topologie de routage. La premiĂšre, dĂ©criteau chapitre 4 considĂšre la prise en compte de la question Ă©nergĂ©tique dans le routage[Kam+13]. Le modĂšle d’énergie sur lequel nous avons fondĂ© notre implĂ©mentationestime de façon assez prĂ©cise la capacitĂ© Ă©nergĂ©tique rĂ©siduelle des nƓuds comparĂ©saux modĂšles linĂ©aires classiques [Dun+07]. Pour cela, nous avons pris en compte l’effetde rĂ©cupĂ©ration qui se produit lors des phases d’inactivitĂ© des nƓuds, reprĂ©sentant uneproportion importante (99%) de la vie d’un capteur, en particulier lorsque certainescouches MAC optimisĂ©es comme ContikiMAC [Dun11] sont d’usage. Une comparaisondu routage RPL basĂ© sur la fonction d’objectif Ă©nergie avec l’implĂ©mentation rĂ©panduequi utilise l’ETX montre une amĂ©lioration considĂ©rable de la durĂ©e de vie du rĂ©seau(jusqu’à 14%).

Page 121: Configuration dynamique et routage pour l'internet des objets

Chapitre 7. Conclusion et Perspectives 101

Les exigences en matiĂšre de qualitĂ© de service des applications utilisant les RCSFpeuvent varier de l’une Ă  l’autre. Il est alors nĂ©cessaire de considĂ©rer en plus de l’éner-gie d’autres critĂšres de performance. Nous avons Ă©tudiĂ© dans la littĂ©rature les moyensexistant pour combiner plusieurs mĂ©triques, notamment dans le contexte du standardde routage RPL. Les seules formes de combinaison proposĂ©es se dĂ©clinent en com-position additive et lexicographique [Kar+13], limitant ainsi la classe des mĂ©triquescombinables. La logique floue constitue un bon moyen pour trouver un compromis in-tĂ©ressant entre plusieurs critĂšres ne suivant pas nĂ©cessairement le mĂȘme sens de varia-tion. Par ailleurs, son implĂ©mentation n’a nĂ©cessitĂ© qu’une faible empreinte mĂ©moire[Kam+14]. Ce qui s’avĂšre judicieux pour nos capteurs trĂšs limitĂ©s en capacitĂ© mĂ©moire.Par ce moyen, nous avons combinĂ©s les mĂ©triques : Ă©nergie, dĂ©lai et ETX. Les rĂ©sultatsobtenus des simulations et d’expĂ©riences sur des capteurs rĂ©els dans le bĂątiment sontmeilleurs que ceux d’un routage ne prenant en compte qu’une seule mĂ©trique. Ceci Ă la fois pour la durĂ©e de vie du rĂ©seau, la stabilitĂ© du routage, le taux de livraison despaquets et le dĂ©lai de bout en bout [KND15].

Dans la derniĂšre partie de cette thĂšse, nous avions pour objectif de concevoir unearchitecture permettant l’intĂ©gration de diffĂ©rents rĂ©seaux de capteurs sans fil Ă  l’In-ternet. Cette intĂ©gration devrait permettre, non seulement la communication dans lesdeux sens, mais aussi la possibilitĂ© de l’adapter dynamiquement Ă  la croissance durĂ©seau. Nous avons modĂ©lisĂ© le problĂšme d’allocation des passerelles comme un pro-gramme linĂ©aire en nombre entiers et rĂ©alisons sa rĂ©solution par un solveur CPLEXsur une station de gestion centralisĂ©. Cela nous permet d’allouer efficacement les res-sources nĂ©cessaires au rĂ©seau fĂ©dĂ©rateur en fonction des rĂ©els besoins. L’implĂ©men-tation d’un prototype a Ă©tĂ© rĂ©alisĂ©, celle-ci associe chaque rĂ©seau de capteurs Ă  uneinstance RPL, les passerelles pouvant prendre en charge plusieurs instances, configu-rant dynamiquement le routage selon les besoins.

7.2 Perspectives

Comme perspectives Ă  ce travail, concevoir une version distribuĂ©e de la stationde gestion proposĂ©e pour le rĂ©seau fĂ©dĂ©rateur (chapitre 6) permettra de rĂ©soudre leproblĂšme de dĂ©faillance unique liĂ©e Ă  une gestion centralisĂ©. De nouvelles fonction-nalitĂ©s devront Ă©galement ĂȘtre rajoutĂ©es Ă  la plate-forme dĂ©veloppĂ©e pour assurer lemonitoring des diffĂ©rents RCSF Ă  travers le protocole nouvellement standardisĂ© CoAP[SHB14].

Dans la combinaison par la logique floue proposĂ©e au chapitre 5, la mĂȘme impor-tance est accordĂ©e Ă  chacune des mĂ©triques considĂ©rĂ©es. La possibilitĂ© d’adapter dy-namiquement (pendant l’exĂ©cution) la contribution de chacune est possible par mo-dification des bornes des diffĂ©rentes fonctions d’appartenance. Par ailleurs, lemodĂšle utilisĂ© pour les opĂ©rateurs de la logique floue est celui de Mamdani [Mam77],il serait intĂ©resser d’implĂ©menter d’autres modĂšles et de comparer les rĂ©sultats obte-nus avec ce dernier. De mĂȘme, la T-norme utilisĂ©e se sert des opĂ©rateurs minimun etmaximum comme opĂ©rateurs de composition et d’agrĂ©gation. Il existe de nombreusesautres familles de T-normes aussi intĂ©ressant Ă  explorer.

Une contrainte forte au cours de notre travail a Ă©tĂ© la limitation de l’espace mĂ©moiredisponible pour conserver Ă  la fois l’image systĂšme (systĂšme d’exploitation Contiki +

Page 122: Configuration dynamique et routage pour l'internet des objets

Chapitre 7. Conclusion et Perspectives 102

pile protocolaire) et l’ensemble des applications sur la plate-forme Telos B (unique-ment 48 kilo-octets disponibles). Depuis lors, d’autres plate-formes matĂ©rielles pourRCSF disposant d’avantage de mĂ©moire et processeurs plus puissant sont disponiblessur le marchĂ© Ă  des prix comparables. Le Re-mote de Zolertia en constitue un bonexemple, avec 512 kilo-octets de flash ainsi que la possibilitĂ© d’étendre cette mĂ©moirepar ajout de carte SD. Il est Ă©galement dotĂ© d’un processeur ARM Cortex-M3 avec 32MHz de frĂ©quence horloge. Porter les propositions dĂ©veloppĂ©es dans cette thĂšse versces nouvelles plateformes, nous permet d’envisager de meilleures optimisations.

Page 123: Configuration dynamique et routage pour l'internet des objets
Page 124: Configuration dynamique et routage pour l'internet des objets

104

Bibliographie

[AAJ09] U. ASHRAF, S. ABDELLATIF et G. JUANOLE. « Gateway Selection in Back-bone Wireless Mesh Networks ». In : IEEE Wireless Communications andNetworking Conference (WCNC). Budapest, Hungary, avr. 2009, p. 1–6.

[AB+12] I. AUGÉ-BLUM et al. « Capillary networks : a novel networking paradigmfor urban environments ». In : Proceedings of the first workshop on Urbannetworking (UrbaNe). Nice, France, dĂ©c. 2012, p. 25 –30.

[Ana+09] G. ANASTASI et al. « Energy conservation in wireless sensor networks :A survey ». In : Ad Hoc Networks 7 (2009). Sous la dir. d’ELSEVIER, p. 537–568.

[Ash09] K. ASHTON. « That ’internet of things’ thing ». In : RFiD Journal 22 (2009),p. 97–114. URL : http://www.rfidjournal.com/articles/view?4986.

[AY05] K. AKKAYA et M. YOUNIS. « A survey on routing protocols for wirelesssensor networks ». In : Ad Hoc Networks 3 (2005), p. 325–349.

[Ban] Body Area Network. (accédé le 3 Sept. 2017). URL : https://fr.wikipedia.org/wiki/Body_Area_Network.

[BBP10] A. BRANDT, J. BURON et G. PORCU. Home Automation Routing Require-ments in Low-Power and Lossy Networks. RFC 5826 (Informational). InternetEngineering Task Force, avr. 2010. URL : http://www.ietf.org/rfc/rfc5826.txt.

[Bei+15] N. BEIJAR et al. « Gateway Selection in Capillary Networks ». In : Pro-ceedings of 5th IEEE International Conference on the Internet of Things (IOT).Seoul, South Korea, oct. 2015, p. 90 –97.

[Blu] Bluetooth Core Specification. (accédé le 1er Sept. 2017). URL : http://www.ieee802.org/15/pub/TG4.html.

[CDG06] A. CONTA, S. DEERING et M. GUPTA. Internet Control Message Protocol(ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification. RFC 4443(Draft Standard). Updated by RFC 4884. Internet Engineering Task Force,mar. 2006. URL : http://www.ietf.org/rfc/rfc4443.txt.

[CYDM11] A. T. CABRERA, A. J. YUSTE-DELGADO et D. C. MACÍAS. « A Fuzzy Logic-Based and Distributed Gateway Selection for Wireless Sensor Networks ».In : Proceedings of Highlights in Practical Applications of Agents and Mul-tiagent Systems (PAAMS). Salamanca, Spain, avr. 2011, p. 243 –248.

[DC+05] D. DE COUTO et al. « A High-Throughput Path Metric for Multi-hop Wi-reless Routing ». In : ACM Journal of Wireless Networks 11 (2005), p. 419–434.

Page 125: Configuration dynamique et routage pour l'internet des objets

BIBLIOGRAPHIE 105

[DCAB02] D. DE COUTO, D. AGUAYO et A. BENJAMIN. « Performance of multihopwireless networks : Shortest path is not enough ». In : Proceedings of the1st ACM SIGCOMM Workshop on Hot Topics in Networks (HotNets-I). NewJersey, USA, oct. 2002.

[DD09] I. DIETRICH et F. DRESSLER. « On the lifetime of WSN ». In : ACM : Tran-saction on Sensor Networks 5 (1 fév. 2009).

[Der+13] L. DERU et al. « Redundant Border Routers for Mission-Critical 6LoW-PAN Networks ». In : Proceedings of the Fifth Workshop on Real-World Wire-less Sensor Networks. Como, Italy, sept. 2013, p. 195–203.

[DGV04] A. DUNKELS, B. GRONVALL et T. VOIGT. « Contiki - a lightweight andflexible operating system for tiny networked sensors ». In : Proceedingsof 29th Annual IEEE International Conference on Local Computer Networks(LCN). Tampa, FL, USA, nov. 2004, p. 455–462.

[Doh+09] M. DOHLER et al. Routing Requirements for Urban Low-Power and Lossy Net-works. RFC 5548 (Informational). Internet Engineering Task Force, mai2009. URL : http://www.ietf.org/rfc/rfc5548.txt.

[DPZ04] R. DRAVES, J. PADHYE et B. ZILL. « Routing in Multi-radio, Multi-hopWireless Mesh Networks ». In : Proceedings of the 10th ACM annual interna-tional conference on Mobile computing and networking (MobiCom). New York,USA, sept. 2004, p. 114 –128.

[Dul+03] S. DULMAN et al. « Trade-Off between Traffic Overhead and Reliability inMultipath Routing for Wireless Sensor Networks ». In : Proceedings of Wi-reless Communications and Networking Conference (WCNC). New Orleans,USA, mar. 2003, p. 1918 –1922.

[Dun+07] A. DUNKELS et al. « Software-based On-line Energy Estimation for SensorNodes ». In : Proceedings of the 4th workshop on Embedded networked sensors(EmNets’07). New York, USA, 2007, p. 28–32.

[Dun11] A. DUNKELS. The ContikiMAC Radio Duty Cycling Protocol. Rapp. tech.ISBN 1100-3154. SICS, déc. 2011.

[Eri+08] J. ERIKSSON et al. « Demo abstract : MSPSim - an extensible simulatorfor MSP430-equipped sensor boards ». In : Proceedings of the 5th EuropeanConference on Wireless Sensor Networks (EWSN 2008). Bologna, Italy, 2008.

[Eva11] D. EVANS. The Internet of Things : How the Next Evolution of the InternetIs Changing Everything. Sous la dir. de Cisco Internet Business SolutionsGroup (IBSG). Cisco Press, 2011.

[Fen+13] J. FENG et al. « An Optimum Gateway Discovery and Selection Mecha-nism in WSN and Mobile Cellular Network Integration ». In : Proceedingsof 8th International Conference on Communications and Networking in China.Guilin, China, aoĂ»t 2013, p. 483 –487.

[Gan+01] D. GANESAN et al. « Highly-resilient, energy-efficient multipath routingin wireless sensor networks ». In : ACM SIGMOBILE Mobile Computingand Communications Review 5 (2001), p. 11–25.

Page 126: Configuration dynamique et routage pour l'internet des objets

BIBLIOGRAPHIE 106

[GL12] O. GNAWALI et P. LEVIS. The Minimum Rank with Hysteresis Objective Func-tion. RFC 6719. Sept. 2012. URL : http : / / www . ietf . org / rfc /rfc6719.txt.

[HCB00] W. R. HEINZELMAN, A. CHANDRAKASAN et H. BALAKRISHNAN. « Energy-Efficient Communication Protocol for Wireless Microsensor Networks ».In : Proceedings of the 33rd Hawaii International Conference on System Sciences.Hawaii, USA, jan. 2000.

[HD98] R. HINDEN et S. DEERING. IP Version 6 Addressing Architecture. RFC 2373(Proposed Standard). Obsoleted by RFC 3513. Internet Engineering TaskForce, juil. 1998. URL : http://www.ietf.org/rfc/rfc2373.txt.

[HT11] J. HUI et P. THUBERT. Compression Format for IPv6 Datagrams over IEEE802.15.4-Based Networks. RFC 6282 (Proposed Standard). Internet Engi-neering Task Force, sept. 2011. URL : http://www.ietf.org/rfc/rfc6282.txt.

[HV12a] K. HEURTEFEUX et F. VALOIS. « Is RSSI a Good Choice for Localizationin Wireless Sensor Network? » In : Proceedings of 26th IEEE InternationalConference on Advanced Information Networking and Applications. Fukuoka,Japan, mar. 2012, p. 732 –739.

[HV12b] J. HUI et JP. VASSEUR. The Routing Protocol for Low-Power and Lossy Net-works (RPL) Option for Carrying RPL Information in Data-Plane Datagrams.RFC 6553 (Proposed Standard). Internet Engineering Task Force, mar. 2012.URL : http://www.ietf.org/rfc/rfc6553.txt.

[Ibm] IBM ILOG CPLEX Optimizer 12.6.3. (accédé le 3 Sept. 2017). URL : https://www.ibm.com/us-en/marketplace/ibm-ilog-cplex.

[Int+03] C. INTANAGONWIWAT et al. « Directed Diffusion for Wireless Sensor Net-working ». In : IEEE/ACM Transactions On Networking (TON) 11 (2003),p. 2–16.

[Jia+07] X. JIANG et al. « Micro power meter for energy monitorinf of wirelesssensor networks at scale ». In : Proceedings of 6th International Conference onInformation Processing in Sensor Networks (IPNS’07). Massachusetts, USA,2007, p. 186–195.

[Kam+13] P. KAMGUEU et al. « Energy-based Metric for the Routing Protocol in Low-power and Lossy Network ». In : Proc. of 2nd Sensornets. Barcelona, Spain,fév. 2013.

[Kam+14] P. KAMGUEU et al. « Fuzzy-based routing metrics combination for RPL ».In : Doctoral Consortium SENSORNETS. Lisboa, Portugal, jan. 2014.

[Kar+13] P. KARKAZIS et al. « Evaluating routing metric composition approachesfor QoS differentiation in low power and lossy networks ». In : Trans. ofWireless Networks 19 (aoĂ»t 2013), p. 1269–1284.

[Kau+14] A. KAUSAR et al. « Energizing wireless sensor networks by energy har-vesting systems : Scopes, challenges and approaches ». In : Renewable andSustainable Energy Reviews 38 (2014). Sous la dir. d’ELSEVIER, p. 973 –989.

Page 127: Configuration dynamique et routage pour l'internet des objets

BIBLIOGRAPHIE 107

[KK00] B. KARP et H. T. KUNG. « GPSR : Greedy perimeter stateless routing forwireless sensor networks ». In : Proceedings of the 6th Annual ACM/IEEEInternational Conference on Mobile Computing and Networking (MobiCom).Boston, USA, aoĂ»t 2000, p. 243 –254.

[KMS07] N. KUSHALNAGAR, G. MONTENEGRO et C. SCHUMACHER. IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs) : Overview, Assump-tions, Problem Statement, and Goals. RFC 4919 (Informational). Internet En-gineering Task Force, août 2007. URL : http://www.ietf.org/rfc/rfc4919.txt.

[KND15] P. KAMGUEU, E. NATAF et T. DJOTIO. « On Design and Deployment ofFuzzy-based Metric for Routing in Low-Power and Lossy Networks ».In : IEEE SenseApp 2015. Clearwater Beach, Fl, USA, oct. 2015.

[Kov11] M. KOVATSCH. « Demo Abstract : Human–CoAP Interaction with Cop-per ». In : Proceedings of the 7th IEEE International Conference on DistributedComputing in Sensor Systems (DCOSS). Barcelona, Spain, juin 2011, p. 1 –2.

[Kuo95] F. KUO. « The ALOHA System ». In : ACM Computer Communication Re-view (1995).

[Lev+11] P. LEVIS et al. The Trickle Algorithm. RFC 6206 (Proposed Standard). Inter-net Engineering Task Force, mar. 2011. URL : http://www.ietf.org/rfc/rfc6206.txt.

[LXC14] T. H. LEE, X. S. XIE et L. H. CHANG. « RSSI-Based IPv6 Routing Metricsfor RPL in Low-power and Lossy Networks ». In : Proceedings of IEEE In-ternational Conference on Systems, Man, and Cybernetics (SMC). San Diego,CA, USA, oct. 2014, p. 1714 –1719.

[Mam77] E. H. MAMDANI. « Application of fuzzy logic to approximate reasoningusing linguistic synthesis ». In : IEEE Transaction on Computing C-26 (121977), p. 1182 –1191.

[Mar+10] J. MARTOCCI et al. Building Automation Routing Requirements in Low-Powerand Lossy Networks. RFC 5867 (Informational). Internet Engineering TaskForce, juin 2010. URL : http://www.ietf.org/rfc/rfc5867.txt.

[MF10] F. MATTERN et C. FLOERKEMEIER. « From the Internet of Computers tothe Internet of Things ». In : Lecture Notes in Computer Science (LNCS) 6462(2010). Sous la dir. de SPRINGER, p. 242–259.

[Mon+07] G. MONTENEGRO et al. Transmission of IPv6 Packets over IEEE 802.15.4 Net-works. RFC 4944 (Proposed Standard). Updated by RFCs 6282, 6775. Inter-net Engineering Task Force, sept. 2007. URL : http://www.ietf.org/rfc/rfc4944.txt.

[NF13] E. NATAF et O. FESTOR. « Online Estimation of Battery Lifetime for Wire-less Sensors Network ». In : Proc. of 2nd Sensornets. Barcelona, Spain, fév.2013.

[OD06] F. OSTERLIND et A. DUNKELS. « Cross-Level Sensor Network Simulationwith COOJA ». In : Proc. of 31st IEEE Conf. SenseApp. Tampa, Florida, 2006,p. 641 –648.

Page 128: Configuration dynamique et routage pour l'internet des objets

BIBLIOGRAPHIE 108

[Pan+01] D. PANIGRAHI et al. « Battery life estimation of mobile embedded sys-tems ». In : Proceedings of the the 14th International Conference on VLSI De-sign (VLSID’01). Washington, USA, 2001, p. 57–63.

[Pfi+11] D. PFISTERER et al. « SPITFIRE : Towards a Semantic Web of Things ». In :IEEE Communications Magazine 49 (nov. 2011), p. 40–48.

[Pis+09] K. PISTER et al. Industrial Routing Requirements in Low-Power and LossyNetworks. RFC 5673 (Informational). Internet Engineering Task Force, oct.2009. URL : http://www.ietf.org/rfc/rfc5673.txt.

[PNV13] N. A. PANTAZIS, S. A. NIKOLIDAKIS et D. D. VERGADOS. « Energy-EfficientRouting Protocols in Wireless Sensor Networks : A Survey ». In : IEEECommunications Surveys & Tutorials 7 (2 2013), p. 551 –591.

[Rah+10] J. RAHME et al. « A recursive battery model for nodes lifetime estimationin wireless sensor networks ». In : Proceedings of Wireless Communicationsand Networking Conference (WCNC). Sydney, Australia, avr. 2010, p. 1–6.

[Ras] Raspberry Pi Foundation. (accédé le 20 Juin 2016). URL : http://www.raspberrypi.org.

[Rom88] J.L. ROMKEY. Nonstandard for transmission of IP datagrams over serial lines :SLIP. RFC 1055 (Internet Standard). RFC. Fremont, CA, USA : RFC Editor,juin 1988. URL : https://www.rfc-editor.org/rfc/rfc1055.txt.

[RST10] G. G. ROSARIO, G. STEFANO et L. TAVANTI. « A survey on multi-constrainedoptimal path computation : Exact and approximate algorithms ». In : Com-puter Networks 54 (17 2010), p. 3081 –3107.

[RV03] D. RAKHMATOV et S. VRUDHULA. « Energy management for battery-poweredembedded systems ». In : Transaction of Embedded Computer System 2 (3aoĂ»t 2003). 2003, p. 277–324.

[SHB14] Z. SHELBY, K. HARTKE et C. BORMANN. The Constrained Application Pro-tocol (CoAP). RFC 7252 (Proposed Standard). Internet Engineering TaskForce, juin 2014. URL : http://www.ietf.org/rfc/rfc7252.txt.

[She90] B. SHETTY. « Approximate solutions to large scale capacitated facility lo-cation problems ». In : Applied Mathematics and Computation 39 (2 1990),p. 159–175.

[SL06] K. SRINIVASAN et P. LEVIS. « RSSI is Under Appreciated ». In : Proceedingsof 3rd Workshop on Embedded Networked Sensors (EmNets). Cambridge, MA,USA, mai 2006.

[Sob08] J. SOBRINHO. « Network Routing with Path Vector Protocols : Theory andApplications ». In : Proceedings of ACM SIGCOMM. Karsruhe, Germany,aoĂ»t 2008, p. 49 –60.

[SWR98] S. SINGH, M. WOO et C. RAGHAVENDRA. « Power-aware routing in mo-bile ad hoc networks ». In : Proceedings of the 4th Annual ACM/IEEE Inter-national Conference on Mobile Computing and Networking. Dallas, TX, USA,oct. 1998, p. 181 –190.

Page 129: Configuration dynamique et routage pour l'internet des objets

BIBLIOGRAPHIE 109

[SZ16] F. K. SHAIKH et S. ZEADALLY. « Energy harvesting in wireless sensor net-works : A comprehensive review ». In : Renewable and Sustainable EnergyReviews 55 (2016). Sous la dir. d’ELSEVIER, p. 1041 –1054.

[TAGH02] S. TILAK, N. B. ABU-GHAZALEH et W. HEINZELMAN. « A Taxonomy ofWireless Micro-Sensor Network Models ». In : Mobile Computing and Com-munications Review, 6 (2 2002), p. 28–36.

[Tel] Telos B CM5000. (accédé le 15 Sept. 2017). URL : http://www.epssilon.cl/files/EPS5000.pdf.

[Tg4] IEEE Task Group 4 (TG4) – IEEE 802.15 WPAN Standard. (accĂ©dĂ© le 15 Mars2017). URL : http://www.ieee802.org/15/pub/TG4.html.

[Thu12] P. THUBERT. Objective Function Zero for the Routing Protocol for Low-Powerand Lossy Networks (RPL). RFC 6552. Mar. 2012. URL : http://www.ietf.org/rfc/rfc6552.txt.

[TNJ07] S. THOMSON, T. NARTEN et T. JINMEI. IPv6 Stateless Address Autoconfigu-ration. RFC 4862 (Draft Standard). Updated by RFC 7527. Internet Engi-neering Task Force, sept. 2007. URL : http://www.ietf.org/rfc/rfc4862.txt.

[Vas+12] JP. VASSEUR et al. Routing Metrics Used for Path Calculation in Low-Powerand Lossy Networks. RFC 6551. Mar. 2012. URL : http://www.ietf.org/rfc/rfc6551.txt.

[VF14] O. VERMESAN et P. FRIESS. Internet of Things Applications - From Researchand Innovation to Market Deployment. River Publishers, juin 2014.

[WBA09] S. WAHARTE, R. BOUTABA et P. ANELLI. « Impact of Gateways Placementon Clustering Algorithms in Wireless Mesh Networks ». In : Proceedings ofIEEE International Conference on Communications (ICC). Dresden, Germany,juin 2009, p. 1 –5.

[WC96] Z. WANG et J. CROWCROFT. « Quality-of-service routing for supportingmultimedia applications ». In : IEEE Journal on Selected Areas in Communi-cations 7 (1996), p. 1228–1234.

[WCD06] X. WU, G. CHEN et S. K. DAS. « On the Energy Hole Problem of Nonuni-form Node Distribution in Wireless Sensor Networks ». In : IEEE Interna-tional Conference on Mobile Ad Hoc and Sensor Systems (MASS). Vancouver,Canada, oct. 2006, p. 180 –187.

[Win+12] T. WINTER et al. RPL : IPv6 Routing Protocol for Low-Power and Lossy Net-works. RFC 6550. Mar. 2012. URL : http://www.ietf.org/rfc/rfc6550.txt.

[WLY09] W. WU, J. LUO et M. YANG. « Gateway placement optimization for loadbalancing in wireless mesh networks ». In : Proceedings of InternationalConference on Computer Supported Cooperative Work in Design (CSCWD).Santiago, Chile, avr. 2009, p. 408 –413.

[YBO09] B. YAHYA et J. BEN-OTHMAN. « REER :Robust and Energy Efficient Mul-tipath Routing Protocol for Wireless Sensor Networks ». In : Proceedingsof the 28th IEEE conference on Global telecommunications (GLOBECOM). Ho-nolulu, USA, dĂ©c. 2009, p. 1–7.

Page 130: Configuration dynamique et routage pour l'internet des objets

BIBLIOGRAPHIE 110

[YEG01] Y. YU, D. ESTRIN et R. GOVINDAN. Geographical and Energy-Aware Rou-ting : A Recursive Data Dissemination Protocol for Wireless Sensor Networks.Rapp. tech. UCLA-CSD TR-01-0023. University of California Los Angeles(UCLA) Computer Science Department, mai 2001.

[Yoo+10] H. YOO et al. « GLOBAL : a Gradient-based routing protocol for LOad-BALancing in large-scale wireless sensor networks with multiple sinks ».In : Proceedings of IEEE Symposium on Computers and Communications (ISCC).Riccione, Italy, juin 2010, p. 556 –562.

[YW03] Y. YANG et J. WANG. « Design Guidelines for Routing in Wireless SensorNetwork ». In : Proceedings of 27th IEEE INFOCOM. Phoenix, USA, avr.2003, p. 1615 –1623.

[YWK05] Y. YANG, J. WANG et R. KRAVETS. Interference-aware load balancing for mul-tihop wireless networks. Rapp. tech. UIUCDCS-R-2005-2526. University ofIllinois at Urbana-Champaign, mar. 2005.

[Zac+15] T. ZACHARIAH et al. « The Internet of Things Has a Gateway Problem ».In : Proceedings of the 16th International Workshop on Mobile Computing Sys-tems and Applications (HotMobile ). Santa Fe, USA : ACM, fĂ©v. 2015, p. 27–32.

[ZCY04] J. ZHANG, B. CHEN et Y. YE. « A Multi-Exchange Local Search Algo-rithm for the Capacitated Facility Location Problem ». In : Proceedings ofthe 10th International Integer Programming and Combinatorial OptimizationConference (IPCO). New York, USA : Springer, juin 2004.