Vous êtes sur la page 1sur 45

Routage et MAC dans les rseaux de capteurs sans l e

Grard Chalhoub e 8 novembre 2010

Table des mati`res e


1 Introduction au routage 1.1 Vecteur de distance vs Etat de liens . . . . . . . 1.1.1 Vecteur de distance . . . . . . . . . . . . Etapes dun protocole vecteur de distance 1.1.2 Counting-to-innity . . . . . . . . . . . . 1.1.3 Etat de liens . . . . . . . . . . . . . . . . Etapes dun protocole tat de liens . . . . e 1.1.4 Dijkstra . . . . . . . . . . . . . . . . . . . 1.2 Protocoles proactifs . . . . . . . . . . . . . . . . . 1.2.1 Exemple : OLSR . . . . . . . . . . . . . . Intrt des MPR . . . . . . . . . . . . . . ee Echanges priodiques . . . . . . . . . . . e 1.3 Protocoles ractifs . . . . . . . . . . . . . . . . . e 1.3.1 Exemple : AODV . . . . . . . . . . . . . . 1.4 Protocoles hirarchiques . . . . . . . . . . . . . . e 1.5 Protocoles hybrides . . . . . . . . . . . . . . . . . 1.5.1 Exemple : ZRP . . . . . . . . . . . . . . . IARP et IERP . . . . . . . . . . . . . . . NDP . . . . . . . . . . . . . . . . . . . . . Exemple denvoi . . . . . . . . . . . . . . 1.6 Protocoles gographiques . . . . . . . . . . . . . e 1.6.1 Exemple : LAR . . . . . . . . . . . . . . . 4 4 4 4 5 5 5 5 5 6 6 6 7 7 8 8 10 10 10 11 11 12 14 14 15 15 15 15 16 16 16 16 16 17 17 17 17 17

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

2 Les techniques de routage dans les rseaux de capteurs sans l e 2.1 Domaines dapplication des rseaux de capteurs sans l . . . . . . . . . e 2.1.1 Applications militaires . . . . . . . . . . . . . . . . . . . . . . . . 2.1.2 Applications lies ` la scurit . . . . . . . . . . . . . . . . . . . e a e e 2.1.3 Applications environnementales . . . . . . . . . . . . . . . . . . . 2.1.4 Applications mdicales . . . . . . . . . . . . . . . . . . . . . . . . e 2.1.5 Applications cologiques . . . . . . . . . . . . . . . . . . . . . . . e 2.1.6 Applications de traabilit et de localisation . . . . . . . . . . . . c e 2.2 Contraintes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 Rappel : dirences entre MANET et WSN . . . . . . . . . . . . e 2.2.2 Crit`res ` prendre en compte . . . . . . . . . . . . . . . . . . . . e a 2.3 Prambule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 2.3.1 Flooding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.2 Gossiping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.3 Conlusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4 Classication des protocoles de routage des rseaux de capteurs sans l e 1

2.4.1

2.4.2

2.4.3 2.4.4

Protocoles Data-centric . . . . SPIN . . . . . . . . . . . . . . Direct Diusion . . . . . . . . . Procotoles hirarchiques . . . . e LEACH . . . . . . . . . . . . . TEEN . . . . . . . . . . . . . . Protocoles bass sur la position e GEAR . . . . . . . . . . . . . . Protocoles bass sur la QoS . . e SAR . . . . . . . . . . . . . . . SPEED . . . . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

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

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

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

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

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

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

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

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

17 17 18 18 18 18 18 18 19 19 19 20 20 20 21 21 21 21 21 22 22 22 23 24 24 24 26 27 27 28 28 30 30 31 31 31 31 31 31 33 34 36 36 37 37 37 37

3 Les protocoles MAC dans les WSN 3.1 Exemples de protocoles MAC pour les rseaux de capteurs sans l e 3.1.1 Economie dnergie . . . . . . . . . . . . . . . . . . . . . . . e Overhearing . . . . . . . . . . . . . . . . . . . . . . . . . . . Collisions . . . . . . . . . . . . . . . . . . . . . . . . . . . . Idle listening . . . . . . . . . . . . . . . . . . . . . . . . . . Envois infructueux . . . . . . . . . . . . . . . . . . . . . . . Overhead . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.2 Protocoles bass sur un squencement temporel . . . . . . . e e TRAMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FLAMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-MAC, L-MAC et AI-LMAC . . . . . . . . . . . . . . . . 3.1.3 Protocoles bass sur la contention . . . . . . . . . . . . . . e CSMA/CA de la norme IEEE 802.11 . . . . . . . . . . . . . S-MAC, T-MAC et D-MAC . . . . . . . . . . . . . . . . . . LPL : B-MAC, WiseMAC, B-MAC+, X-MAC et DW-LPL 3.1.4 Protocoles hybrides . . . . . . . . . . . . . . . . . . . . . . Z-MAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . G-MAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Funneling-MAC . . . . . . . . . . . . . . . . . . . . . . . . .

4 La norme 802.15.4 4.1 Couche physique IEEE 802.15.4 . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.1 Activation et dsactivation du module radio . . . . . . . . . . . . . . . e 4.1.2 Indication de la qualit du lien . . . . . . . . . . . . . . . . . . . . . . e 4.1.3 Test doccupation du mdium ou CCA (Clear Channel Assessment) . e 4.1.4 Slection du canal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 4.2 Couche MAC IEEE 802.15.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.1 Acc`s au mdium . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e e Algorithme de CSMA/CA slott . . . . . . . . . . . . . . . . . . . . . e Algorithme de CSMA/CA non-slott . . . . . . . . . . . . . . . . . . . e 4.2.2 Les scans, la cration du rseau, les associations et la synchronisation e e Les scans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cration du rseau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e e Association et dsassociation . . . . . . . . . . . . . . . . . . . . . . . e Synchronisation avec le beacon du coordinateur . . . . . . . . . . . . . 4.2.3 Echange de donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . e

Grard Chalhoub, Clermont Universit e e

Rseaux de capteurs sans l e

Echange direct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Echange indirect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Echange en GTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 5 ZigBee 5.1 Couche rseau ZigBee . . . . . . . . . . . e 5.1.1 Cration de la topologie . . . . . . e 5.1.2 Allocation des adresses . . . . . . . Allocation dadresses hirarchiques e Allocation dadresses alatoires . . e 5.1.3 Routage . . . . . . . . . . . . . . . Routage hirarchique . . . . . . . . e 5.2 Couche application ZigBee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 40 40 41 41 42 42 42 43

Grard Chalhoub, Clermont Universit e e

Rseaux de capteurs sans l e

Chapitre 1

Introduction au routage
Les rseaux mobiles ad hoc MANET : ensemble dentits mobiles communicant en sans l e e sans aucune infrastructure pour grer le rseau. Il ny a pas la notion de routeur ou passerelle e e ddie. Tous les nuds sont des routeurs. Ce type de rseaux est souvent reprsent par un e e e e e graphe de noeuds relis entre-eux par des artes, G (V, E). e e Routage : trouver un chemin pour envoyer un message dun nud vers une destination selon certains crit`res. Parmi les ds ` lever par les protocoles de routage : e e a porte limite (nombre de voisins), e e mobilit (changement de topologie), e interfrences, e liens instables.

1.1

Vecteur de distance vs Etat de liens

Les protocoles de routage sont regroups sous 2 grandes familles : vecteur de distance et e tat de liens. e

1.1.1

Vecteur de distance

Les changes se limitent au voisinage direct. Chaque nud maintient une table de vecteur e de distance (distance = cot, vecteur = direction) qui lui indique les nuds atteints via ses u voisins avec le cot de chaque chemin. Un nud diuse son DV priodiquement ou quand il le u e met ` jour. a Etapes dun protocole vecteur de distance 1. calculer le cot de chaque lien avec ses voisins directs, u 2. changer ceci avec les voisins uniquement, e 3. mettre ` jour sa table de routage en fonction des tables des voisins. a Les informations changes : e e chaque nud envoie priodiquement ` ses voisins : e a le nombre de sauts qui le spare dune destination donne, e e le prochain saut vers cette destination . rajoute les routes directement dans la table de routage.

1.1.2

Counting-to-innity

A-B-C-D, quand A est mort, B reoit une information de C indiquant que A est ` deux c a sauts de C, mais cela en passant par B, mais B ne le sait pas. C envoi son DV ` B, B detecte a que C peut atteindre A en 2 sauts, ainsi lui met ` jour son DV en indiquant quil peut atteindre a A en 3 sauts, et ainsi de suite jusqu` arriver ` linni. a a Une solution sera de ne pas envoyer le vecteur de distance de A ` B parce que C passe par a B pour atteindre A. Une autre solution sera de rajouter un numro de squence comme fait le e e protocole DSDV.

1.1.3

Etat de liens

Echanges priodiques avec tout le rseau. Chaque nud informe tout le rseau de sa liste e e e de voisins, ainsi tous les nuds sont capables de construire la carte du rseau en considrant e e uniquement les liens bidirectionnels. La construction de carte du rseau permet ` un nud de e a construire une table de routage en appliquant un algorithme de plus court chemin sur la carte comme Dijkstra. Etapes dun protocole tat de liens e 1. conna les voisins directs ` laide des HELLO, tre a 2. donner un cot ` chaque lien, u a 3. diuser cette information ` tout le rseau, a e 4. appliquer un algorithme pour calculer les chemins vers toutes les destinations du rseau. e Les informations changes : e e chaque nud envoie des informations consernant : ses liens avec ses voisins, ltat de chaque lien . e ces informations sont diuses ` tous les nuds du rseau, e a e chaque nud calcule sa table de routage en se basant sur ces informations.

1.1.4

Dijkstra

Dijkstra (prononc dikstra) permet de trouver le plus court chemin ` partir dun nud e a donn dans le graphe pour atteindre les autres nuds. Les tapes ` suivre sont les suivantes : e e a 1. on dmarre du noeud source et on consid`re que le cot vers tous les autres noeuds vaut e e u , 2. on commence par marquer les cots des arrtes qui sortent du nud, u e 3. on choisit ensuite comme prochain saut le nud avec le cot le plus petit, u 4. on continue ` partir du nud choisi et on marque le cot cumul pour atteindre les nuds a u e directement lis ` ce dernier, e a 5. on revient ` ltape 3 jusquon aura atteint lensemble des nuds. a e

1.2

Protocoles proactifs

Les routes pour lensemble des destinations du rseau sont mises ` jour priodiquement. Une e a e vision globale du rseau est toujours disponible. e Avantage(s) : Grard Chalhoub, Clermont Universit e e 5 Rseaux de capteurs sans l e

9 E 2

F 6 11 C

14 9 10 A 7 B 15

Fig. 1.1 Un exemple dun graphe. Nud en cours A B C E B 7/A 7/A 7/A 7/A C 9/A 9/A 9/A 9/A D 22/B 20/C 20/C E 14/A 14/A 11/C 11/C F 20/E

Tab. 1.1 Dijkstra appliqu au graphe de la gure 1.1. e diminue le dlai avant denvoyer un message. e Dsavantage(s) : e le trac de maintenance surcharge le rseau, e pas pratique sous forte mobilit. e

1.2.1

Exemple : OLSR

Optimized Link State Routing protocol. Projet HYPERCOM du laboratoire franais INRIA. c Les noeuds changent uniquement une sous-partie de leurs voisins : les MPR (Multi-Point e Relay). Ce sont les nuds qui permettent datteindre lensemble des voisins ` deux sauts. a Ceci diminue la surcharge due ` la diusion ` lensemble des voisins (un nud envoie les a a messages de donnes uniquement aux MPR), et diminue la taille des changes des listes des e e voisins en se limitant aux MPR. Chaque nud diuse ` lensemble du rseau la liste de nuds a e layant lu comme MPR (messages TC). e Intrt des MPR e e Innondation sans MPR : un nud retransmet un message si et seulement si il ne la pas dj` ea reu. c Innondation avec MPR : un nud retransmet un message si et seulement si il ne la pas dj` ea reu et il vient de le recevoir dun nud dont il est MPR. c Echanges priodiques e Des messages HELLO avec les voisins ` un saut. Ces messages contiennent la liste des a voisins ` un saut qui permettent de choisir les MPR. a

Grard Chalhoub, Clermont Universit e e

Rseaux de capteurs sans l e

Fig. 1.2 OLSR et les MPR. (source : wiki.uni.lu/secan-lab/graphics/olsr02.gif) Des messages TC (Topology Control) pour changer la liste des nuds layant lu comme e e MPR. Ces messages permettent de construire une image du rseau avec tous les nuds e et un sous ensemble de liens.

1.3

Protocoles ractifs e

Contrairement au mode proactif, les routes sont tablies a la demande. Une requte de e ` e dcouverte de route vers une destination donne est propage sur le rseau quand le nud a e e e e besoin de lui envoyer un message. Avantage(s) : Diminue la surcharge du rseau, il ny a pas de trac priodique dentretient des tables e e de routage ` propager sur le rseau. a e Dsavantage(s) : e Plus de dlai avant lenvoi dun message en attendant la dcouverte dune route, e e Risque de saturation ` cause dinnondations multiples. a

1.3.1

Exemple : AODV

Ad hoc On-demande Distance Vector. Des messages HELLO sont changs avec les voisins ` un saut pour surveiller les liens avec e e a ces derniers. Au bout de 4 messages HELLO non reus dun voisin, le lien est considr perdu. c ee Un nud qui cherche ` envoyer un message ` une destination dont il ne conna pas le a a t ` chemin envoie une RREQ Route REQuest en broadcast. A chaque saut intermdiaire la route e vers la source est construite pour que le nud ayant la rponse puisse retransmettre la rponse e e en unicast. Chaque nud intermdiaire rajoute son identit sur le chemin. e e Un nud nayant pas reu la requte avant, ne conna pas la destination et nest pas luic e t mme la destination, envoie le message ` son tour en broadcast. Sur le chemin de retour, tous e a les nuds intermediaires sont capables de stocker le chemin vers la destination. Le chemin le plus court est choisi si plusieurs RRESP Route RESPonse sont reues. Les c chemins dans la table de routage ont une dure de vie. e Si une coupure a eu lieu sur le chemin, une RERR Route ERRor est renvoye ` la source e a et les nuds intermediaires suppriment cette route de leurs tables de routage respectives. La Grard Chalhoub, Clermont Universit e e 7 Rseaux de capteurs sans l e

source dclenche une nouvelle RREQ. e


S HELLO RREQ RREP Data RERR 1 2 D

Fig. 1.3 Echanges de trames avec AODV.

1.4

Protocoles hirarchiques e

Les protocoles hirarchiques ont t proposs pour rduire la taille des tables de routage dans e ee e e les rseaux tr`s larges. Ceci en dcoupant le rseau en rgions. Chaque rgion est connecte ` e e e e e e e a une autre rgion ` travers un ou plusieurs nuds. Ce dcoupage rduit la taille des tables de e a e e routage parce quelles ne contiennent que les nuds de la rgion du nud. e

Fig. 1.4 Conguration plate. ler.com/html/how routing algorithms work.html)

(source

http

://ntwebresel-

1.5

Protocoles hybrides

Les protocoles hybrides sont utuliss dans un rseau dcoup en zone. Ils emploient un e e e e protocole proactif dans la zone et un protocole ractif pour les communications inter-zones. e

Grard Chalhoub, Clermont Universit e e

Rseaux de capteurs sans l e

Destination B C D E F G H I J K L M N O P Q

Prochain saut B C B B B B B C C C C C C C C C

Cot u 1 1 2 3 3 4 5 5 6 5 4 4 3 4 2 3

Tab. 1.2 Table de routage de A.

Fig. 1.5 Conguration hirarchique. e ler.com/html/how routing algorithms work.html)

(source

http

://ntwebresel-

Destination B C Rgion 2 e Rgion 3 e Rgion 4 e Rgion 5 e

Prochain saut B C B C C C

Cot u 1 1 2 2 3 4

Tab. 1.3 Table de routage de A.

Grard Chalhoub, Clermont Universit e e

Rseaux de capteurs sans l e

1.5.1

Exemple : ZRP

Avec ZRP Zone Routing Protocol les requtes de routes sont plus rapides (par rapport ` e a un protocole ractif) car les informations des zones sont dj` disponibles grce au protocole e ea a proactif. Il est plus simple de garder une vision de la topologie dune zone que pour le rseau e entier. Chaque nud dnit sa propre zone. Les nuds ` 3 sauts du nud par exemple. e a

Fig. 1.6 Zone de S. (source : Nicklas Beijar, Zone Routing Protocol (ZRP))

IARP et IERP Routage intra-zone IARP IntrA-zone Routing Protocol et routage inter-zone IERP IntErzone Routing Protocol. IARP est un protocole proactif qui change des messages HELLO pour maintenir la liste e des voisins et des routes vers les voisins appartenant ` la zone. a ` la place des Broadcast, ZRP utilise les Bordercast. Bordercast Resolution Protocol (BRP) A utilise les informations fournies par IARP pour atteindre les nuds prifriques. e e NDP Neighbor Discovery Protocol (NDP) met ` jour les tables de IARP, IERP utilise les tables a de IARP, IERP relaie les route requeste avec BRP. BRP utilise les tables de IARP pour orienter les requtes. e Si la destination est dans la zone, la route est donne par IARP, sinon une requte est faite e e par IERP. Une requte de route est envoye aux nuds prifriques avec BRP. Et ceci jusqu` e e e e a atteindre la destination. Deux techniques pour renvoyer la rponse en unicast : e Les nuds intermediaires rajoutent leurs adresses dans la requte, comme fait AODV. e Les informations concernant le prochain saut sont stockes dans les nuds, ceci vite de e e surcharger les trames de requte et de rponse. e e BRP atteint les nuds priferiques avec un multicast, moins coteux quun broadcast. e u Quand la zone est limite ` un saut, ZRP devient un protocol ractif. Le choix de la taille e a e de la zone doit tre fait selon le degr de mobilit. e e e

Grard Chalhoub, Clermont Universit e e

10

Rseaux de capteurs sans l e

Fig. 1.7 Architecture de ZRP. (source : Nicklas Beijar, Zone Routing Protocol (ZRP)) Exemple denvoi

Fig. 1.8 Zone de S. (source : Nicklas Beijar, Zone Routing Protocol (ZRP)) S veut envoyer un message ` X, il ne trouve pas X dans sa zone avec IARP, il envoie une a requte aux nuds prifriques avec BRP. I ne le trouve pas dans sa zone, I envoie une requte e e e e a ` ses nuds prifriques. e e T reoit la requte et trouve X dans sa zone. T rajoute le chemin de lui vers X au chemin c e construit dans la requte et renvoie une rponse avec le chemin complet. e e

1.6

Protocoles gographiques e

Dans un protocole gographique, le but est de rduire la zone de diusion de la requte de e e e route pour diminuer la surcharge du rseau due au trac de contrle des protocoles de routage. e o La position est donne grce ` un syst`me de GPS. e a a e

Grard Chalhoub, Clermont Universit e e

11

Rseaux de capteurs sans l e

Fig. 1.9 Zone de I. (source : Nicklas Beijar, Zone Routing Protocol (ZRP))

1.6.1

Exemple : LAR

Avec le protocole LAR Location-Aided Routing un nud estime la position de son destinataire en fonction de son ancienne position ` un instant donn et sa vitesse. Ceci donne une zone a e dun rayon donn (calcul grce ` la vitesse du nud : R = vitesse (t1 t0 ).) et de centre la e e a a derni`re position connue. Cette zone est appele expected zone (zone susceptible). e e Zone de requte : elle est plus grande que la zone susceptible. Ce sont uniquement les e noeuds appartenant ` cette zone qui diusent la requte de route. La raison est que si la source a e nappartient pas ` la zone estime, elle doit atteindre la zone en passant par des noeuds qui a e nappartiennent pas ` la zone susceptible. a Plus la zone de requte est grande plus la probabilit de trouver une rponse est grande e e e mais plus le trac de contrle est grand. o

Fig. 1.10 Zone de requte et zone destimation : source ` lextrieure. (source : Young-Bae e a e Ko and Nitin H. Vaidya, Location-Aided Routing (LAR) in mobile ad hoc networks) Deux mthodes sont possible pour eectuer la dcouverte de route : e e La requte de route inclut les coordonnes des 4 points qui constituent la zone de requte, e e e si un nud reoit la requte il diuse le message uniquement sil est dans la zone. Quand c e Grard Chalhoub, Clermont Universit e e 12 Rseaux de capteurs sans l e

Fig. 1.11 Zone de requte et zone destimation : source ` lintrieure. (source : Young-Bae Ko e a e and Nitin H. Vaidya, Location-Aided Routing (LAR) in mobile ad hoc networks) D reoit le message il inclut sa position actuelle dans la rponse. La vitesse moyenne ou c e max tant connue. e La source inclut la distance Ds entre elle la destination et la derni`re position connue de e la destination. Quand un noeud intermdiaire reoit la requte il la diuse si et seulement e c e si : a Ds + b Di . Ensuite, il remplace la distance dans la requte par Di . De cette e faon un noeud forward la requte si et seulement si il est plus proche de la destiantion c e que celui de qui il a reu la requte. c e Pour inclure une estimation derreur sur la position connue, dans la premi`re mthode e e R = erreur + v (t1 T0 ). Dans la deuxi`me mthode les valeurs de a et b sont xes en fonction e e e de lerreur estime. Les noeuds intermdiaires peuvent recalculer la zone de requte avant de e e e diuser la requte. e La table de positions : une entre par nud dont la position est connue. Quand un nud e souhaite conna la position dun autre nud il vrie sa table de positions, sil ne trouve pas tre e une entre correspondante, il diuse sur le rseau une requte de route. Les nuds coutent les e e e e rponses et mettent ` jour leurs tables. e a

Grard Chalhoub, Clermont Universit e e

13

Rseaux de capteurs sans l e

Chapitre 2

Les techniques de routage dans les rseaux de capteurs sans l e


Un nud capteur est constitu de 4 entits essentielles ` son fonctionnement : e e a une entit de captage (son, temprature, humidit, intensit, vibration, pression, mouvee e e e ment, pollution...), un micocontrlleur, o une source dnergie, e une antenne de communication. Un luxe sera de trouver un GPS ou un moyen de mobilit. e

Fig. 2.1 Un nud capteur. (source : Classication and comparision of routing protocols in wireless sensor networks, UbiCC Journal Volume 4)

2.1

Domaines dapplication des rseaux de capteurs sans l e

Nous pouvons citer les domaines suivants : militaire, environnemental, domestique, sant, e scurit, cologie, traabilit, etc. Des exemples dapplications potentielles dans ces dirents e e e c e e domaines sont exposs ci-dessous. e

14

WAN Rseau e

Rseau de capteurs sans l e

Passerelle Unit de contrle e o

Fig. 2.2 Un exemple dun rseau de capteurs sans l. e

2.1.1

Applications militaires

Le dploiement rapide, lauto-conguration et la tolrance aux pannes des rseaux de cape e e teurs sont des caractristiques qui font de ce type de rseaux un outil apprciable dans un tel e e e domaine. Dploiement sur un endroit stratgique ou dicile dacc`s, an de surveiller toutes e e e les activits des forces ennemies ou danalyser le terrain avant dy envoyer des troupes (par la e dtection dagents chimiques, biologiques ou de radiations, par exemple). e

2.1.2

Applications lies ` la scurit e a e e

Diminuer considrablement les dpenses nanci`res consacres ` la scurisation des lieux et e e e e a e a ` la protection des tres humains tout en garantissant des rsultats plus ables. e e (i) la dtection des altrations dans la structure dun btiment, suite ` un sisme ou au e e a a e vieillissement, par des capteurs intgrs dans les murs ou dans le bton, e e e (ii) la surveillance des mouvements an de constituer un syst`me de dtection dintrusions e e distribu. Laspect distribu rend plus complexe la possibilit de mettre hors dusage ce syst`me e e e e de surveillance.

2.1.3

Applications environnementales

(i) la dispersion de thermo-capteurs ` partir dun avion sur une fort pour signaler un a e ventuel dbut dincendie dans le champ de captage, e e (ii) le semis de nuds capteurs en mme temps avec les graines dans les champs agricoles e pour pouvoir identier les zones s`ches et rendre lirrigation plus ecace, e (iii) le dploiement de nuds capteurs sur les sites industriels, les centrales nuclaires ou dans e e les raneries de ptrole pour dtecter des fuites de produits toxiques (gaz, produits chimiques, e e lments radioactifs, ptrole, etc.) et alerter les utilisateurs dans un dlai susamment court ee e e pour permettre une intervention ecace.

2.1.4

Applications mdicales e

Surveillance permanente des patients et une possibilit de collecter des informations physioe logiques de meilleure qualit facilitant ainsi le diagnostic de maladies grce ` des micro-capteurs e a a Grard Chalhoub, Clermont Universit e e 15 Rseaux de capteurs sans l e

qui pourront tre ingrs ou implants sous la peau. e ee e (i) les micro-camras qui peuvent tre ingres et sont capables, sans avoir recours ` la e e ee a chirurgie, de transmettre des images de lintrieur dun corps humain, e (ii) la cration dune rtine articielle compose dune centaine de micro-capteurs pour e e e amliorer la vision de lil. e

2.1.5

Applications cologiques e

Lintgration de plusieurs micro-capteurs dans le syst`me de climatisation et de chauage e e des immeubles. Ainsi, la climatisation ou le chauage ne sont dclenchs quaux endroits o` il y e e u a des personnes prsentes et seulement si cest ncessaire. Le syst`me distribu peut aussi maine e e e tenir une temprature homog`ne dans les pi`ces. Utilise ` grande chelle, une telle application e e e e a e permettrait probablement de rduire la demande mondiale en nergie. e e

2.1.6

Applications de traabilit et de localisation c e

Suite ` une avalanche il est ncessaire de localiser les victimes enterres sous la neige en a e e quipant les personnes susceptibles de se trouver dans des zones ` risque par des capteurs. e a Ainsi, les quipes de sauvetage peuvent localiser plus facilement les victimes. e Contrairement aux solutions de traabilit et de localisation bases sur le syst`me de GPS c e e e (Global Positionning System), les rseaux de capteurs peuvent tre tr`s utiles dans des endroits e e e clos comme les mines par exemple.

2.2

Contraintes

Un WSN idal doit passer ` lechelle, tre robuste, conome en nergie, orir des perfore a e e e mances rseaux raisonnables en terme de dlai et taux de perte, tre able, pas ch`re et ne e e e e demande pas de maintenance ` long terme. Un peu trop exigeant ! ! a Trois limitations essentielles : nergie, calcul et porte. e e

2.2.1

Rappel : dirences entre MANET et WSN e

1. WSN collecte de donnes, MANET plus orients calcul distribu, e e e 2. nombre de nuds dans WSN plus grand que celui des MANET, 3. WSN limitations en calcul et en nergie, MANET sont rechargeable et plus puissants, e 4. WSN dploy de faon ad hoc mais peu mobile alos que MANET sont mobiles, e e c 5. dbit limit en WSN par rapport au MANET. e e

2.2.2

Crit`res ` prendre en compte e a

1. Tolrance aux pannes : maintenir lactivit du rseau mme si des nuds sont morts (piles, e e e e panne, conditions physiques, etc.), 2. Passage ` lechelle : dixaines, centaines et mme des milliers de nuds, a e 3. Cots : n*1000*cot dun nud, u u 4. Conditions gographiques : sous marins, zone de guerre, forts, barrage, industrie, etc., e e 5. Consommation nergtique : on consomme moins en faisant du multi-sauts, e e 6. Collecte des mesures : priodique (continue), sous v`nement, ` la demande, hybride, e e e a 7. Agrgation de donnes : min, max, moyenne (moins de transmission), e e Grard Chalhoub, Clermont Universit e e 16 Rseaux de capteurs sans l e

8. Qualit de service : dure de vie, dlai, taux de perte, latence, nergie. . . e e e e 9. Surcharge : trac de contrle, calcul, o 10. Dploiement du rseau : alatoire, prdnit, etc. e e e e e

2.3
2.3.1

Prambule e
Flooding

Pour prendre en compte les faibles capacits de calcul des nuds capteurs, les protocoles e de routage les plus simples sont ceux qui sont bass sur le ooding. En revanche, ceci cre e e une duplication de paquets, les nuds reoivent plusieurs fois le mme paquet. Les nuds ne c e prennent pas en compte la limitation nergtique. e e

2.3.2

Gossiping

Limite la diusion en choisissant un seul nud voisin pour lui envoyer le message. Non prise en compte de la limitation nergtique et rception multiple de la mme donne. Possibilit de e e e e e e tourner en boucle.

2.3.3

Conlusion

Ncessit dun protocol de routage. e e

2.4

Classication des protocoles de routage des rseaux de cape teurs sans l

Hirarchique ou plat : dans plat tous les nuds sont du mme niveau, type et capae e cit, hirarchique certains sont plus puissants que dautres, certains peuvent avoir des e e tches que les autres nont pas. On parle de cluster dans hiarchique et chef de cluster a e (aggrgation des donnes provenant dun mme cluster). e e e Data centric : requte de collecte dun type de donnes. e e Location aware : notion de position et de rgion, dpendance GPS. e e Bas sur la QoS : taux de perte, dlai, latence, consommation. e e

2.4.1

Protocoles Data-centric

Ces protocoles supposent quil est dicile davoir des identiants comme les adresses MAC ou IP pour pouvoir communiquer entre les nuds capteurs. Ne demandent pas un mcanisme e dadressage. Les informations sont propages de proche en proche. e Envoient une annonce des donnes avant denvoyer les donnes elles-mmes, les voisins ine e e teresss demandent les donnes annonces, les donnes sont ensuite envoyes. e e e e e SPIN Sensor Protocol for Information via Negotiation. Annonce les donnes par des paquets ADV e (ADVertise), les nuds intresss rpondent par une REQ (REQuest) et ensuite les donnes e e e e sont envoyes. Point fort : connaissance se limite au voisinage ` un saut. e a Ne garantie pas la rception des donnes : si le nud destinataire ne se trouve pas ` porte e e a e dun nud qui annonce lenvoi, les donnes ne seront jamais transmises. e

Grard Chalhoub, Clermont Universit e e

17

Rseaux de capteurs sans l e

Direct Diusion Cest linverse de SPIN : les nuds intresss par une donne diusent une requte. Les e e e e nuds voisins prennent en compte cette requte, rpondent en fonction et rediusent ` leur e e a tour la requte. e

2.4.2

Procotoles hirarchiques e

Construction de clusters (groupe de nuds) avec un chef par cluster qui se chargera de transmettre les messages gnrs par son cluster aux autres chefs de clusters pour atteindre la e ee destination nale. Le choix du chef de cluster (cluster head) est fait soit ` tour de rle, soit a o selon le nombre de voisins en considrant comme cluster head le nud avec le plus de voisins, e soit selon le niveau de lnergie rsiduelle... e e LEACH Low Energy Clustering Hierarchy. 5% des nuds sont lus pour tre des chefs de clusters. e e Election priodique des chefs de clusters en fonction du % de nombre de cluster, nombre de tour e depuis lequel le nud na pas t chef de cluster. TDMA est utilis dans le cluster et CDMA ee e entre les clusters. Aggregation des donnes gnres dans un cluster limite la redondance et la e e ee consommation nergtique. e e Suppose que les chefs de clusters sont capables datteindre la station de base qui rcolte e tout. TEEN Threshold sensitive Energy Ecient Network protocol. Transmettre uniquement quand la valeur dtecte est suprieure ` un certain seuil x par le chef de cluster. Ensuite, un nud e e e a e ne transmet pas la mme donne tant que sa valeur na pas chang dun seuil de variation e e e (aussi x par le chef de cluster). TEEN adopte plusieurs niveau de clusters : clusters de chef e de clusters. Nest pas adapt pour la surveillance priodique. Une extension APTEEN (Adaptive Three e shold sensitive Energy Ecient Network protocol) supporte deux types de gnrations trac : e e priodique et critique (dpassement dun seuil). e e La complexit est au niveau de la cration des clusters et la dnition des seuils. e e e En consommation nergtique TEEN moins quAPTEEN, et APTEEN consomme moins e e que LEACH.

2.4.3

Protocoles bass sur la position e

Dans les rseaux de capteurs, on consid`re que la position du nud est plus importante que e e son identit (adresse). Ce type de protocoles consid`rent que les nuds conna e e ssent leur position respective et sont capables de conna la position des autres nuds. Ainsi, cette information tre est utilise pour diriger les messages vers la rgion dans laquelle se trouve la destination. e e GEAR Geographic and Energy Aware Routing. Ce protocole de routage dcoupe le rseau en rgions. e e e Chaque nud conna le cot pour atteindre chaque rgion. Lacheminement des packets suit t u e les tapes suivantes : e

Grard Chalhoub, Clermont Universit e e

18

Rseaux de capteurs sans l e

1. acheminer le paquet jusqu` la rgion, en envoyant le paquet au nud le plus proche de a e la rgion parmi ses voisins et ayant le niveau dnergie rsiduelle le plus lev (fonction e e e e e de distance et dnergie), e 2. acheminer le paquet dans la rgion de destination par une sorte de diusion si le nombre de e nud nest pas lev, sinon la rgion est dcoupe en sous-rgion et le paquet est tranmis e e e e e e individuellement ` chaque sous-rgion. a e Chaque paquet contient la rgion destination. Chaque nud conna sa position, son nergie e t e rsiduelle, la position et lnergie rsiduelle de ses voisins (` la demande). Un lien existe entre e e e a 2 nuds quand ils sont ` porte et leur niveau dnergie leur permet deectuer lenvoi. a e e

2.4.4

Protocoles bass sur la QoS e

Dans ce type de protocoles, les performances du rseau sont prises en compte pour garantir e un dlai de bout-en-bout raisonnable qui rpond aux besoins de lapplication. Cest surtout le e e cas des applications indutrielles et militaires. SAR Sequential Assignment Routing. Bas sur la construction darbre ` partir des voisins du puits. e a Les liens de chaque arbre sont choisis en fonction du dlai observ et de lnergie rsiduelle des e e e e nuds. Les donnes sont associes ` un niveau de priorit. e e a e La cration des arbres est assez lourde. e SPEED Une mtrique supplmentaire par rapport ` GEAR : le dlai. e e a e Se base sur une table de positions. Il estime le dlai sur chaque saut en calculant le dlai e e daller-retour (en retranchant le temps de traitement ct rcepteur). Le prochain saut est choisi oe e parmi les voisins qui sont plus proches de la destination que le nud.

Grard Chalhoub, Clermont Universit e e

19

Rseaux de capteurs sans l e

Chapitre 3

Les protocoles MAC dans les WSN


3.1 Exemples de protocoles MAC pour les rseaux de capteurs e sans l

Un protocole MAC pour les rseaux de capteurs sans l doit trouver le bon compromis e entre lconomie dnergie, laspect temps rel et lauto-conguration. Dans cette partie, nous e e e prsentons quelques protocoles MAC proposs pour les rseaux de capteurs sans l prsents e e e e e selon leur type. Nous avons identi trois types : les protocoles bass sur un squencement teme e e porel, les protocoles bass sur un vitement de collision probabiliste et les protocoles hybrides. e e ` Nous dcrivons en rsum quelques protocoles MAC reprsentatifs de chacun de ces types. A e e e e noter que ces protocoles sont les plus tudis dans la littrature et non pas forcment les plus e e e e performants : il sagit de protocoles de base et parfois sujets ` optimisation. a

3.1.1

Economie dnergie e

Les sources de consommation dnergie sur un nud capteur sont le module radio, le microe processeur et le capteur. La communication radio est souvent la plus consommatrice parmi les trois. La consommation dun capteur varie dans une tr`s large plage selon son type. Un capteur e consommant beaucoup dnergie est souvent aliment par sa propre source nergtique. Nous e e e e considrons ici que la couche MAC est concerne uniquement par lutilisation du module radio e e et du microprocesseur. Dans un rseau de capteurs, la porte est de lordre dune dizaine de m`tres dans un milieu e e e clos avec une puissance dmission de 0 dBm (1 mW ). Avec ce niveau de puissance dmission, e e lnergie consomme pour la rception et celle consomme pour lmission sont quasiment gales. e e e e e e Le tableau 3.1 montre un exemple dnergie consomme pour chaque tat du module radio dune e e e carte B2400ZB-tiny. Un protocole MAC conome en nergie essaie dutiliser le moins souvent possible le module e e radio. Les modules radio peuvent avoir plusieurs niveaux de consommation quand ils ne sont pas en mode mission ou rception, moins le nud consomme moins il est ractif, cest pour e e e cela que les dirents tats de sommeil existent pour assurer une exibilit selon le degr de e e e e ractivit demand par la couche MAC. e e e Lutilisation inutile du module provient de 5 sources essentielles : le Overhearing, les collisions, le Idle listening, les envois infructueux et les messages de contrle. o

20

Etat

Energie consomme e 26 mA 29 mA 15 A 3 A

Emission Rception e ou coute e Veille Sommeil

Tab. 3.1 Energie consomme par tat par le composant radio dune carte B2400ZB-tiny. e e Overhearing Loverhearing est la rception par un nud dune trame qui ne lui est pas destine. Lnergie e e e consomme pour la rception et le traitement des donnes de cette trame est perdue et sans e e e aucun intrt. ee Collisions Les collisions sont ` la fois une source de dgradation des performances du rseau et de perte a e e dnergie. Les pertes de trames ` cause des collisions forcent les nuds ` retransmettre le mme e a a e paquet plusieurs fois et donc ` rester actif pour le rpter et vrier quil est bien reu par la a e e e c ` destination. A noter que les retransmissions ne se font que pour les trames envoyes en mode e unicast (` un seul destinataire) et avec une demande dacquittement. a Idle listening Cest lattente dune trame par le module radio. Cela arrive quand il a t demand ` un ee ea nud dtre veill mais quil ne reoit aucune trame et nen transmet aucune non plus. Mme e e e c e si le nud ne transmet pas et ne reoit pas, le fait que son module radio soit activ et prt pour c e e recevoir consomme autant dnergie que pour la rception. e e Envois infructueux Cela arrive quand un nud essaie de communiquer avec un autre nud qui nest plus accessible parce quil est en mode sommeil par exemple (ou hors de porte). Le nud metteur est e e en attente dun acquittement, et il retransmet donc la mme trame plusieurs fois. Il consomme e de lnergie en le faisant du fait quil soit rest en mode transmission et en mode rception pour e e e lventuel acquittement. e Overhead LOverhead constitue les messages de contrle et tout bit utilis pour encapsuler des donnes o e e utiles ` lapplication. Cet Overhead gnr par la couche MAC, a pour but dassurer le bon a e ee fonctionnement de la mthode dacc`s mais cela amplie les 4 sources de consommation ` e e a contre-temps.

Grard Chalhoub, Clermont Universit e e

21

Rseaux de capteurs sans l e

3.1.2

Protocoles bass sur un squencement temporel e e

Les protocoles MAC appliquant un squencement temporel dcoupent le temps en slots, e e chaque slot de temps est allou (localement) ` un seul nud pour lui garantir lacc`s au canal e a e an quil puisse transmettre ses donnes. La mthode TDMA est un exemple de mthode de e e e squencement temporel dans les rseaux sans l. e e Ces protocoles sont gnralement conomes en nergie car ils vitent les collisions, ils limitent e e e e e le idle listening et le overhearing, et mettent les nuds en mode sommeil durant les slots de temps rservs aux autres nuds. De plus, ils garantissent un dlai born de bout-en-bout si e e e e un algorithme dallocation prend en compte les caractristiques du trac. En revanche, laspect e centralis et le besoin dune synchronisation rendent ce type de protocoles rigide et non-adapt e e pour les topologies dynamiques et mobiles. Par la suite, nous dcrivons bri`vement les protocoles TRAMA, FLAMA, E-MAC, L-MAC e e et AI-LMAC. TRAMA TRAMA (TRac-Adaptive Medium Access control) divise le temps en slots de temps et se base sur le trac annonc par les nuds pour dsigner les metteurs et les rcepteurs pour e e e e chaque slot de temps. Pour ce faire, TRAMA applique trois mcanismes : e un protocole de voisinage appel NP (Neighbor Protocol) pour changer la liste des voisins e e a ` un saut entre les nuds, ce qui permet dtablir une connaissance des voisins ` deux e a sauts, un protocole dchange de calendriers appel SEP (Schedule Exchange Protocol) o` chaque e e u nud annonce ce quil a comme trac ` envoyer en prcisant les rcepteurs concerns, a e e e un protocole dlection adaptative AEA (Adaptative Election Algorithm) qui choisit les e metteurs et les rcepteurs pour un slot de temps donn en fonction des informations e e e collectes par NP et SEP. e TRAMA dcoupe le temps en alternant des intervalles de temps ` acc`s plani et des ine a e e tervalles de temps ` acc`s alatoire. Chaque intervalle est constitu de slots de temps. TRAMA a e e e commence par des intervalles ` acc`s alatoire pour permettre au rseau de stablir. Les a e e e e changes pour la dcouverte de voisinage du protocole NP sont eectus durant les intervalles ` e e e a acc`s alatoire. Ces intervalles servent aussi pour permettre aux nouveaux nuds de rejoindre e e le rseau. Lenvoi de trames de donnes se fait durant les intervalles ` acc`s plani. e e a e e

1 0 1 0 1 0 1 0 1 0 1 0 1 0
Acc`s plani e e

1 0 1 0 1 0 1 0 1 0 1 0 1 0
Acc`s alatoire e e

1 0 Basculement entre actif/inactif 1 0


Fig. 3.1 Dcoupage temporel de TRAMA pour un nud du rseau. e e Pour raliser son dcoupage temporel, TRAMA a besoin que chaque nud diuse son cae e lendrier de trac et fasse une dcouverte de voisinage ` deux sauts. e a FLAMA FLAMA (FLow-Aware Medium Access) est propos comme une amlioration de TRAMA. e e Comme TRAMA, FLAMA divise le temps selon deux modes dactivit : intervalles de temps ` e a Grard Chalhoub, Clermont Universit e e 22 Rseaux de capteurs sans l e

acc`s plani et intervalles de temps ` acc`s alatoire. FLAMA a aussi besoin de conna le e e a e e tre voisinage dun nud ` deux sauts et des informations concernant le ux de donnes des voisins a e a ` un saut. En revanche, FLAMA ne diuse pas de calendriers de trac durant les intervalles de temps ` a acc`s plani mais change durant les intervalles de temps ` acc`s alatoire des informations par e e e a e e rapport aux ux de donnes lis ` lapplication. En outre, FLAMA tablit une synchronisation e e a e globale du rseau bas sur lestampillage des trames et une topologie arborescente pour le relais e e de donnes. e Pour dterminer les metteurs et les rcepteurs concerns par chaque slot de temps lors de e e e e lintervalle ` acc`s plani, FLAMA applique un algorithme plus simple que celui utilis dans a e e e TRAMA. Comme TRAMA, FLAMA assure des transmissions sans collision en ne permettant qu` un seul nud dmettre dans un voisinage ` deux sauts. a e a

Acc`s plani e e

Acc`s alatoire e e

Fig. 3.2 Dcoupage temporel de FLAMA. e FLAMA est plus performant que TRAMA en terme dconomie dnergie et de perte de e e trames. De plus, FLAMA amliore le dlai de bout en bout par rapport ` TRAMA grce e e a a a ` lexploitation des routes dnies ` partir dun arbre pour le cheminement multi-sauts. En e a revanche, FLAMA surcharge le rseau par des changes pour conna le ux de lapplication e e tre et tablir une synchronisation globale du rseau de proche en proche. e e E-MAC, L-MAC et AI-LMAC E-MAC (Event MAC) dcoupe le temps en slots, chaque slot est lui-mme dcoup en e e e e trois parties respectivement prvues pour accueillir les requtes de communication, le trac de e e contrle et le trac de donnes. E-MAC dnit trois types de nuds : les nuds actifs possdant o e e e un slot, les nuds passifs ne possdant pas de slot et ne transmettant quapr`s avoir fait une e e requte pour utiliser le slot dun voisin durant la partie ddie aux requtes de communication e e e e du slot du voisin, et les nuds dormants qui dorment la plupart du temps et choisissent un mode passif ou actif quand ils se rveillent. Chaque nud diuse une information concernant e les slots utiliss par ses voisins durant la partie trac de contrle de son slot. Les nuds doivent e o tous se rveiller durant la partie trac de contrle des slots de leurs voisins. e o Lallocation des slots commence par une station de base qui choisit un slot et annonce ce choix par une diusion. Ensuite, ses voisins choisissent alatoirement un slot. En cas de choix e dun mme slot, les nuds signalent ce fait durant la partie trac de contrle. Les slots sont e o rutiliss ` partir de trois sauts. e e a L-MAC (Lightweight-MAC) adopte le mme mcanisme dallocation de slots et de dcoupage e e e temporel que E-MAC. En revanche, L-MAC force tous les nuds a avoir au moins un slot. ` Ainsi, la partie requte de communication du slot nest plus prsente dans L-MAC et un slot e e est fractionn en 2 parties seulement. e AI-LMAC (Adaptive, Information-centric and Lightweight MAC) est une amlioration de e L-MAC qui prend en compte les conditions du trac applicatif et ore la possibilit aux nuds e davoir plusieurs slots. AI-LMAC regroupe les nuds avec des relations p`re-ls. Le p`re surveille e e les conditions de trac de ses ls et demande ` ses ls de sallouer plus de slots ou de se dsallouer a e des slots selon leur charge. Grard Chalhoub, Clermont Universit e e 23 Rseaux de capteurs sans l e

La gure 3.3 montre le dcoupage temporel en slots des trois protocoles. e

111 000 11 00 E-MAC 111 000 11 00 111 000 11 00 11111111111111111111111111 00000000000000000000000000 11 00 111 000 L-MAC et AI-LMAC 11 00 111 000 11 00 111 000
Requte de communication e Trac de contrle o Donnes e

1 0

Fig. 3.3 Dcoupage temporel de E-MAC, L-MAC et AI-MAC. e

3.1.3

Protocoles bass sur la contention e

Dans ce type de protocoles MAC, les nuds acc`dent au mdium durant le mme intervalle e e e de temps en utilisant un algorithme de la famille CSMA/CA, chacune de ses variantes essayant dviter les collisions. e Le point fort de ce type de protocoles est sans doute lextensibilit et le passage ` lchelle. e a e En revanche, ces protocoles norent pas de dlai born du fait quils ne garantissent pas lacc`s e e e au mdium d`s que la charge du rseau augmente. e e e Nous allons commencer cette partie en dcrivant bri`vement lalgorithme de CSMA/CA de e e la norme IEEE 802.11 en mode DCF, sur lequel est base la plupart des protocoles qui exploitent e de direntes faons une priode de contention, ce que nous allons dcrire par la suite. e c e e CSMA/CA de la norme IEEE 802.11 CSMA/CA est une mthode dacc`s de la mme famille que CSMA/CD (Carrier Sense e e e Multiple Access with Collision Detection) puisquelle impose ` un metteur de sassurer que le a e canal est libre avant dmettre. Dans CSMA/CA, les collisions ne peuvent pas tre dtectes e e e e comme dans le CSMA/CD, un nud essaie dviter les collisions (sans vraiment les viter ` 100 e e a %). Ceci ` cause de leet daveuglement du mdium sans l (Near Far Eect) qui empche une a e e entit de recevoir quand elle est en train dmettre. e e Rappel : Clear Channel Assessment, zone dinterfrences e Terminal cach et terminal expos e e S-MAC, T-MAC et D-MAC S-MAC (Sensor-MAC) est conu pour assurer une mthode dacc`s conome en nergie pour c e e e e les rseaux de capteurs sans l. Pour ce faire, les nuds se mettent en mode sommeil pendant e une certaine dure et se rveillent pour couter le mdium pendant une autre dure. e e e e e Les nuds changent leur calendrier de priodes dcoute en le diusant ` leurs voisins ` e e e a a un saut. Ainsi, chaque nud conna le calendrier de ses voisins et sait quand il faut se rveiller t e pour communiquer avec un nud ` sa porte. Plusieurs nuds peuvent avoir le mme intervalle a e e de temps comme priode dcoute. Les nuds acc`dent au mdium en utilisant le CSMA/CA e e e e de IEEE 802.11 avec le mcanisme RTS/CTS. En outre, un champ supplmentaire est ajout e e e a ` tous les messages (y compris les messages RTS/CTS et les acquittements) indiquant la dure e de lchange, ce qui permet aux nuds non concerns de dormir pendant cette dure. e e e Pour maintenir une synchronisation des horloges, les nuds metteurs envoient des messages e de synchronisation SYNC au dbut de la priode dcoute de leurs voisins. e e e

Grard Chalhoub, Clermont Universit e e

24

Rseaux de capteurs sans l e

Zone dinterfrence e C Porte e A B Seuil de dtection de porteuse e D

-82 dBm -95 dBm

Seuil de rception e

Fig. 3.4 Porte et zone dinterfrence. e e

Fig. 3.5 A et C envoient simultanment deux messages ` B et gn`rent un risque de collision e a e e en B.

Fig. 3.6 A communique avec D. B veut communiquer avec C mais ne le fait pas parce que A occupe le mdium, alors que si B communique avec C aucune collision naura lieu. e Grard Chalhoub, Clermont Universit e e 25 Rseaux de capteurs sans l e

replacements Rcepteur A e

coute e SYNC

coute RTS e
envoi de donnes e si CTS reu c

e sommeil coute SYNC

coute RTS e

Emetteur B SYNC

RTS

Emetteur C

SYNC

RTS

envoi de donnes e si CTS reu c

Fig. 3.7 Squencement des priodes dcoute et de sommeil dans S-MAC. e e e T-MAC (Timeout-MAC) propose de mettre un nud en mode sommeil apr`s un temps TA e durant lequel le nud na reu aucun message. Ainsi, T-MAC rduit lidle listening par rapport c e a ` S-MAC. S-MAC sommeil sommeil

T-MAC
TA

sommeil
TA

sommeil
TA

Fig. 3.8 Squencement des priodes dcoute et de sommeil de T-MAC et de S-MAC. e e e Avec cette approche, T-MAC fait dormir un nud sans stre assur que ses voisins nont e e plus de donnes ` lui envoyer. En eet, les donnes ` envoyer du voisin ont pu tre retardes ` e a e a e e a cause dun chec dacc`s au canal. e e Early sleep : Ce probl`me est appel le sommeil prmatur. e e e e D-MAC (Data gathering MAC) propose un squencement des priodes dactivit qui favoe e e rise la collecte dinformations dans une topologie arborescente. Les nuds de mme niveau se e rveillent en mme temps. e e LPL : B-MAC, WiseMAC, B-MAC+, X-MAC et DW-LPL Le LPL (Low Power Listening) est lune des premi`res approches pour rduire lidle listening e e en introduisant une priode dinactivit au niveau de la couche physique. Lide est de pnaliser e e e e les metteurs en envoyant un prambule long pour conomiser lnergie des rcepteurs. Les e e e e e rcepteurs activent leur module radio priodiquement pour dtecter la prsence dun prambule. e e e e e La dure de transmission du prambule doit tre de la mme longueur que lintervalle entre deux e e e e rveils dun rcepteur. e e Lun des premiers protocoles MAC pour les rseaux de capteurs sans l bass sur cette e e technique est B-MAC (Berkeley-MAC). WiseMAC a t propos pour rduire la longueur du prambule en fonction des priodes de ee e e e e rveil des rcepteurs voisins. e e B-MAC+ amliore B-MAC en remplaant le long prambule par plusieurs petits messages e c e appels des paquets de countdown contenant chacun lidentiant du destinataire et le temps e restant pour commencer lenvoi des donnes. e X-MAC dcompose lui aussi le long prambule en plusieurs prambules de petite taille e e e incluant lidentiant du destinataire du message. Contrairement ` B-MAC+, le destinataire a Grard Chalhoub, Clermont Universit e e 26 Rseaux de capteurs sans l e

replacemen
A
Rveil priodique e e Rception e du prambule e Prambule e Envoi de donnes e

Rception des donnes e e

Fig. 3.9 LPL : Lmetteur utilise un long prambule pour permettre au rcepteur dactiver e e e son module radio seulement de temps en temps. prvient lmetteur de son coute avec un acquittement envoy entre deux prambules conscutifs. e e e e e e Lmetteur peut alors commencer la transmission des donnes. Cela rduit loverhead au niveau e e e de lmetteur qui arrte la transmission du prambule d`s la rception de lacquittement. e e e e e DW-LPL (Dual Wake-up LPL) limite le probl`me de loverhearing en employant la teche nique du LPL pour les messages diuss uniquement. Lenvoi de messages unicast utilise une e technique de signalement par des trames spciques envoys par les rcepteurs pour informer e e e leur entourage quils sont prts ` recevoir des trames en unicast. Les instants et la priodicit e a e e denvoi des messages de signalement sont indpendants dun nud ` lautre. e a

3.1.4

Protocoles hybrides

Une troisi`me famille de protocoles propose de combiner les deux mthodes : TDMA et e e CSMA/CA. Ainsi, ces protocoles essaient davoir les avantages des deux mthodes en alternant e les deux dans le temps ou en les combinant dune mani`re intelligente. Dans la suite, nous allons e dcrire trois protocoles hybrides : Z-MAC, G-MAC et Funneling-MAC. e Z-MAC Z-MAC (Zebra-MAC) est un protocole hybride qui alterne des priodes de TDMA et CSMA/CA e selon le nombre dentits en concurrence en un instant donn. Z-MAC utilise un dcoupage teme e e porel bas sur TDMA et g`re les acc`s durant les slots avec le CSMA/CA de IEEE 802.11. e e e Une fois le rseau dploy, Z-MAC commence par une phase de dcouverte du voisinage ` e e e e a deux sauts suivie par une assignation de slots aux nuds en utilisant DRAND (Distributed Randomized TDMA Scheduling For Wireless Adhoc Networks). DRAND est un protocole distribu e qui assure quun slot de temps nest pas assign ` deux nuds situs ` moins de trois sauts e a e a lun de lautre. La synchronisation ncessaire est obtenue ` laide de deux protocoles utiliss de e a e faon complmentaire. c e Pour accder au mdium, si le nud est le propritaire du slot courant, il attend un temps e e e alatoire plus petit quune valeur To puis eectue un CCA. Si le canal est libre, il met. Sinon, e e il attend que le canal devienne libre et il recommence la mme dmarche. Si le slot actuel e e appartient ` un voisin ` deux sauts et si le nud a reu une indication de forte contention dun a a c de ses voisins ` deux sauts, le nud na pas le droit dutiliser ce slot. Sinon, il attend un temps a alatoire compris entre To et Tno avant deectuer un CCA. e Z-MAC utilise la technique LPL. Comme les nuds peuvent mettre durant tous les intere valles, les nuds coutent le mdium priodiquement pour vrier sil y a des missions qui les e e e e e concernent.

Grard Chalhoub, Clermont Universit e e

27

Rseaux de capteurs sans l e

B A C

A B C

11 00 11 00
T 11 00 11 00 11 00

To Tno T 11 00 11 00 11 00
o

Tno

Tno

1 0 1 0

To Tno

11 00 11 00
T 11 00 11 00 11 00

To Tno

Tno

Fig. 3.10 Dcoupage temporel de Z-MAC. Notons lexistence dun temps pendant lequel le e mdium nest pas utilis. e e G-MAC G-MAC (Gateway MAC) organise les changes ` lintrieur dun cluster. Dans ce domaine, e a e un cluster est un ensemble de nuds gr par une station appele passerelle. G-MAC dcoupe ee e e le temps en deux priodes : une priode de collecte o` les changes se font en CSMA/CA, et e e u e une priode de distribution o` les changes se font en TDMA. e u e Durant la priode de collecte, les nuds envoient ` leur passerelle deux types de trac : les e a requtes FRTS (Future Request To Send) pour rserver un slot de temps dans la priode de e e e distribution pour changer avec dautres nuds appartenant au mme cluster, et le trac intere e cluster destin aux nuds appartenant ` des clusters dirents. Durant un slot, les changes e a e e se font selon le squencement RTS-CTS-donnes-acquittement. La priode de distribution come e e mence par une diusion dun message GTIM (Gateway Trac Indication Message) qui contient les indications temporelles des deux priodes suivantes ainsi que le squencement des changes e e e entre les nuds du cluster qui ont russi ` envoyer une requte FRTS. e a e Pendant la priode de collecte et pendant les slots non rservs de la priode de distribution la e e e e passerelle change les donnes inter-cluster avec dautres passerelles une fois la collecte termine. e e e Priode de collecte e
Echanges de RTS (donnes inter-cluster ) e Requtes FRTS (donnes intra-cluster ) e e Echanges entre passerelles

11 00 11 00 11 00 11 00 11 00 11 00
GTIM

Priode de distribution e
Echanges de donnes intra-cluster e Echanges entre passerelles

Fig. 3.11 Dcoupage temporel de G-MAC. e

Funneling-MAC Funneling-MAC est un protocole MAC qui prend en compte le goulot dtranglement dont e sourent la plupart des applications des rseaux de capteurs. Ce phnom`ne survient quand e e e une station du rseau joue le rle dun puits de donnes vers lequel un ensemble de capteurs e o e Grard Chalhoub, Clermont Universit e e 28 Rseaux de capteurs sans l e

dirige son trac. Cela est reprsent sur la gure 3.12 sur laquelle est identie une zone ` forte e e e a charge.

CSMA/CA

TDMA et CSMA/CA Zone ` forte charge a

Goulot dtranglement e
Puits

Fig. 3.12 Gestion du goulot dtranglement dans Funneling-MAC. e Funneling-MAC adopte une mthode dacc`s en CSMA/CA dans lensemble du rseau due e e rant un intervalle de temps suivi par un intervalle de temps durant lequel une mthode dacc`s e e en TDMA est utilise pour la zone ` forte charge uniquement pour orir plus de temps dacc`s e a e aux nuds ` proximit du puits. Ces deux intervalles de temps constituent une supertrame. Ce a e dcoupage est reprsent sur la gure 3.13. e e e La zone ` forte charge est dimensionne par une diusion dun beacon par le nud puits. a e Les nuds qui ne reoivent pas ce beacon appliquent le CSMA/CA. c
Supertrame
CSMA/CA TDMA CSMA/CA TDMA

Supertrame

Le puits se base sur le chemin parcouru par les trames quil reoit pour dnir le squencement c e e et le dimensionnement des slots TDMA allous aux nuds de la zone ` forte charge. Seuls les e a nuds appartenant ` la zone ` forte charge mettent ` jour le chemin parcouru par une trame. a a a Pour viter que les nuds qui se trouvent au del` de la zone a forte charge interf`rent avec le e a ` e dcoupage temporel du TDMA et le beacon transmit par le nud puits, les nuds de la zone ` e a forte charge gn`rent priodiquement une trame contenant les informations concernant la dure e e e e de la priode CSMA/CA, la dure de la priode TDMA et le nombre de supertrames jusquau e e e prochain beacon.

Grard Chalhoub, Clermont Universit e e

Beacon

Fig. 3.13 Dcoupage temporel dans Funneling-MAC. e

Beacon

29

Rseaux de capteurs sans l e

Chapitre 4

La norme 802.15.4
4.1 Couche physique IEEE 802.15.4

La couche physique IEEE 802.15.4 est gnralement prise en charge par le module radio. e e Elle ore quatre dbits dirents. Le tableau 4.1 rsume les dbits proposs selon la frquence e e e e e e et la modulation.

Frquence e (MHz) 868/868.6 868/868.6 868/868.6 902/928 902/928 902/928 2400/2483.5

Modulation BPSK ASK O-QPSK BPSK ASK O-QPSK O-QPSK

Dbit e (kb/s) 20 250 100 40 250 250 250

Tab. 4.1 Le dbit en fonction de la frquence et de la modulation. e e Dans la bande de frquences des 2.4 GHz, le dbit est donc de 250 Kb/s, il lui est associ e e e 1 un seuil de rception qui va jusqu` 92 dBm. e a Avec les trois plages de frquences, la couche physique ore 27 canaux de transmission e dirents dont 16 sur la plage de frquences de 2400/2483.5 M Hz spars de 5 M Hz, 10 sur e e e e la plage de frquences de 902/928 spars de 2 M Hz et 1 canal sur la plage de frquences de e e e e 868/868.6 M Hz. Lusage de ces canaux dpend de la lgislation des pays dans lesquels des e e solutions conformes ` ce standard sont utilises. a e Parmi les fonctionnalits de contrle de cette couche, nous pouvons disposer de celles qui e o permettent de : activer et dsactiver le module radio, e remonter ltat dun lien ` la couche suprieure, e a e tester loccupation du canal en faisant un CCA, choisir le canal de transmission.
1` A noter que le dbit utilis pour lenvoi des trames de donnes par la couche physique de la norme IEEE e e e 802.11 est de 11 M bits/s, ce qui donne un seuil de rception de 82 dBm. Le seuil de dtection de porteuse est e e de 95 dBm.

30

4.1.1

Activation et dsactivation du module radio e

Le module radio poss`de trois tats de fonctionnement : un tat de transmission, un tat de e e e e rception et un tat de sommeil. Le temps de changement dtat entre transmission et rception e e e e ne doit pas dpasser les 192 s. Cet tat est pilot par la couche MAC. Il est essentiel pour e e e conomiser de lnergie de mettre le module en mode sommeil. e e

4.1.2

Indication de la qualit du lien e

Le LQI (Link Quality Indication) caractrise la qualit dun lien ` un instant donn suite ` e e a e a une rception dune trame. Ce param`tre est essentiel pour les protocoles des couches rseau et e e e application. Par exemple, un protocole de routage peut exploiter cette indication an didentier les meilleurs liens ` utiliser dans son choix de routes. a

4.1.3

Test doccupation du mdium ou CCA (Clear Channel Assessment) e

Le CCA permet de savoir ltat du canal radio. Il est essentiel pour le fonctionnement de e lalgorithme de CSMA/CA de la couche MAC. La couche physique est capable deectuer trois modes de CCA dirents : e La dtection dun signal avec une puissance reue suprieure ` un certain seuil. e c e a La dtection dun signal conforme ` la modulation de la couche physique. e a La dtection dun signal qui rpond aux deux conditions. e e ` noter que le seuil de dtection dactivit est typiquement -95 dBm. A e e

4.1.4

Slection du canal e

Comme la couche physique ore plusieurs canaux de transmission, il est ncessaire de e slectionner un canal prcis, ceci ` la demande des couches suprieures. Le changement de e e a e canal est aussi fait implicitement par la couche physique suite ` une demande de scrutation sur a lensemble des plages de frquences chacune constituant un canal de transmission. Cette action e est appele un scan. e

4.2

Couche MAC IEEE 802.15.4

La couche MAC 802.15.4 supporte deux modes de fonctionnement selon les besoins applicatifs : le mode suivi de beacon et le mode non suivi de beacon. En mode suivi de beacon, le coordinateur envoie priodiquement un beacon pour synchroniser lactivit des entits qui lui e e e sont attaches selon une structure de supertrame donne sur la gure 4.1. En mode non suivi e e de beacon, les beacons ne sont utiliss que pour la dcouverte du rseau. e e e Par la suite, nous allons dcrire les fonctionnalits de gestion essentielles de la couche MAC e e 802.15.4 : lacc`s au mdium, e e les scans, la cration du rseau et lassociation, e e la synchronisation avec un coordinateur, les changes de trames. e

4.2.1

Acc`s au mdium e e

Un coordinateur limite lacc`s au mdium en utilisant la diusion de beacon dlimitant des e e e supertrames. La structure de la supertrame est dnie par les deux param`tres BI (Beacon Ine e terval) qui dnit lintervalle qui spare deux beacons conscutifs et SD (Superframe Duration) e e e Grard Chalhoub, Clermont Universit e e 31 Rseaux de capteurs sans l e

qui dnit la dure de la supertrame. e e BI et SD sont calculs en fonction de BO (Beacon Order) et SO (Superframe Order) selon e les formules suivantes : BI = aBaseSuperf rameDuration.2BO , SD = aBaseSuperf rameDuration.2SO , avec 0 SO BO 14, aBaseSuperframeDuration est un attribut de la couche MAC qui dnit la dure de la supertrame quand SO = 0 (15.36 ms pour valeur par dfaut pour aBaseSue e e perframeDuration). aBaseSuperf rameDuration = aBaseSlotDurationaN umSuperf rameSlots, avec aBaseSlotDuration le nombre de symboles (un symbole vaut 4 bits) constituant un slot de la supertrame quand SO = 0. aBaseSlotDuration a 60 comme valeur par dfaut. aN umSuperf rameSlots e est le nombre de slots qui constituent la supertrame, il vaut 16. La portion active de la supertrame est dcoupe en aNumSuperframeSlots slots de temps e e gaux et est compose de trois parties : le beacon, la CAP (Contention Access Period) et la e e CFP (Contention Free Period). Durant la CAP toutes les stations sont en comptition pour e accder au mdium alors que la CFP est constitue de slots de temps, appels GTS (Guaranteed e e e e Time Slot) allous ` chaque station pour communiquer avec le coordinateur. e a Le dbut du premier slot est linstant denvoi du beacon. La CAP suit la n de transmission e du beacon et la CFP, si elle est prsente, suit immdiatement la n de la CAP. Si un coordinateur e e ne souhaite pas appliquer la structure de la supertrame, il initialise les valeurs de BO et de SO a ` 15. Dans ce cas, nous nous retrouvons dans un PAN en mode non suivi de beacon. CAP beacon CFP beacon

11111 00000 11111 00000 GTS GTS priode dinactivit e e 11111 00000 1111111111111111111111111111111111 0000000000000000000000000000000000 11111 00000 0 1 2 3 4 5 6 7 8 9 101112131415
SD (priode dactivit) e e BI Fig. 4.1 La structure de la supertrame.

La gure 4.1 montre un exemple dune supertrame incluant un priode de CAP, une priode e e de CFP contenant deux GTS de tailles direntes et une priode dinactivit (car BO = SO+1). e e e Lacc`s au mdium durant la CAP pour toute trame, sauf les acquittements et les beacons, e e est gr selon lalgorithme de CSMA/CA slott. Avant tout envoi, lentit doit sassurer de ee e e pouvoir nir la transaction (incluant la rception dun acquittement sil est demand) et de e e pouvoir attendre un IFS (InterFrame Space) 2 avant la n de la CAP. Si ce nest pas le cas, lenvoi est report ` la CAP de la supertrame suivante. Lenvoi de trames durant les slots e a rservs au GTS seectue sans CSMA/CA. e e
La dure dun IFS dpend de la longueur du MPDU (MAC Protocol Data Unit) de la trame envoye, ce qui e e e correspond ` la payload physique. Quand cette longueur dpasse 18 octets, le IFS vaut 40 symboles, sinon, le IFS a e vaut 12 symboles
2

Grard Chalhoub, Clermont Universit e e

32

Rseaux de capteurs sans l e

Algorithme de CSMA/CA slott e Lalgorithme de CSMA/CA slott est appliqu pour lenvoi dune trame durant la priode e e e CAP de la supertrame, sauf pour lenvoi des trames de beacon et des trames dacquittement. Lalgorithme se base sur une unit de temps appel priode de backo, une priode de backo e e e e est gale ` aUnitBackoPeriod symboles, soit 20 symboles. La synchronisation est base sur un e a e dcoupage du temps en intervalles ` trois niveaux dirents et imbriqus : des supertrames, ellee a e e mme dcoupes en slots, eux-mme dcoups en priode de backo. Les fronti`res des priodes e e e e e e e e e de backo de CSMA/CA pour chaque entit sont alignes avec les fronti`res des slots de la e e e supertrame. Le dbut de la premi`re priode de backo est le dbut du premier slot de la CAP e e e e (dbut de la transmission du beacon). Toute activit de la couche physique doit commencer ` e e a la fronti`re dune priode de backo. Ainsi, toute les entits sont synchronises entre-elles sur e e e e les priodes de backo. e La gure 4.2 montre la hirarchie du dcoupage temporel et lalignement des priodes de e e e backo avec les slots de la supertrame. Nous avons considr le cas o` BO = SO = 0, ce qui ee u nous donne un slot de supertrame durant 0,96 ms. Dans ce cas, chaque slot de supertrame contient trois priodes de backo. La supertrame montre sur la gure 4.2 ne comporte pas de e e CFP. CAP beacon

Une priode de backo e

Un slot de la supertrame

Fig. 4.2 Les priodes de backo et les 16 slots de la supertrame. e Lalgorithme de CSMA/CA slott est une variante de CSMA/CA qui exploite une synchroe nisation prcise pour se dispenser de surveiller en permanence loccupation du mdium, ce qui e e consomme beaucoup dnergie. Il est bas sur trois param`tres essentiels : NB, BE et CW. NB e e e (Number of Backos) est le nombre de fois o` lentit a appliqu lalgorithme pour essayer u e e denvoyer la trame courante. BE (Backo Exponent) est lexposant de backo qui dnit la e longueur de lintervalle dans lequel il faut tirer un backo. CW (Contention Window) dnit le e nombre de priodes de backo conscutives ` la n desquelles le canal doit tre dtect libre e e a e e e avant de commencer la transmission. La gure 4.3 prsente une version simplie des direntes tapes de lalgorithme de CSMA/CA e e e e slott. La premi`re tape est la phase dinitialisation. Lalgorithme commence avec BE = e e e macM inBE, N B = 0 et CW = 2. Une fois les param`tres initialiss, ltape 2 consiste ` localie e e a ser la fronti`re de la prochaine priode de backo et ` attendre un nombre entier de priodes de e e a e backo tir alatoirement dans lintervalle [0; 2BE 1]. Si la dure du backo tir est plus longue e e e e que le nombre restant de priodes de backo dans la CAP, lalgorithme consomme le backo e jusqu` la n de la CAP et reporte ce qui lui reste pour la CAP de la supertrame suivante. a Apr`s la consommation de ce backo, la couche MAC vrie que le nombre restant de e e priodes de backo dans la CAP est susant pour eectuer 2 CCA, transmettre la trame e Grard Chalhoub, Clermont Universit e e 33 Rseaux de capteurs sans l e

physique et recevoir un ventuel acquittement. Si cest le cas, ltape 3 est applique. Dans e e e cette tape, la couche MAC demande a la couche PHY deectuer un CCA ` la fronti`re de la e ` a e prochaine priode de backo. Si le temps restant dans cette supertrame est susant, la couche e MAC reporte le CCA au dbut de la CAP de la prochaine supertrame, en commenant avec e c un tirage de backo pour viter les collisions systmatiques dues ` plusieurs reports de CCA e e a eectus par direntes entits. e e e Si la couche PHY dtecte que le canal est libre, la couche MAC dcrmente CW, puis teste e e e si CW est nul. Si cest le cas, la couche MAC demande ` la couche PHY de commencer la a transmission ` la fronti`re de la prochaine priode de backo. Si CW nest pas nul, la couche a e e MAC demande ` la couche PHY de faire un autre CCA. Le mdium nest donc pas scrut en a e e permanence, mais cest deux CCA conscutifs positifs qui permettent de conclure que le mdium e e est libre 3 . Si la couche PHY dtecte que le canal est occup, la couche MAC incrmente NB et e e e BE de 1 (` condition que BE reste infrieur ou gal ` macM axBE) et remet CW ` 2. a e e a a Si N B = macM axCSM ABackof f s, lalgorithme renvoie un chec dacc`s. Cest alors ` la e e a couche MAC de demander une retransmission de la mme trame tant que le nombre de tene tatives est plus petit que macMaxFrameRetries (macM axF rameRetries = 3 par dfaut). Si e N B < macM axCSM ABackof f s, lalgorithme retourne ` ltape 2. a e Le mode BLE (Battery Life Extension) : le coordinateur de PAN peut dcider de faire e travailler le rseau en mode BLE pour conomiser davantage de lnergie. Un bit spcique est e e e e rserv dans le beacon ` cet eet. Quand ce bit est mis ` 1, les entits associes ` ce coordinateur e e a a e e a doivent accder au mdium en respectant un IFS suivi dune dure de macBattLif eExtP eriods e e e apr`s la rception du beacon. e e macBattLif eExtP eriods est un entier qui correspond ` un nombre de priodes de backo, a e qui est calcul en fonction de trois termes : (i) la valeur maximum dun backo tir dans une e e fentre avec BE = 2, cela vaut 3 priodes de backo, (ii) la dure de CCA, ce qui fait 2 e e e priodes de backo, et (iii) la dure de transmission du prambule physique et du champ de e e e synchronisation de len-tte physique, cela fait, pour la frquence de 2.4 GHz, une longueur de e e 5 octets et donc une dure arrondie ` une seule priode de backo. e a e Le total fait alors 6 priodes de backo. Une entit qui souhaite mettre un message dans e e e un rseau en mode BLE doit envoyer sa trame dans les 6 priodes de backo qui suivent lIFS e e apr`s la rception du beacon. Le coordinateur et toutes les autres entits se mettent en mode e e e sommeil si aucune trame nest transmise avant cette dure. e Algorithme de CSMA/CA non-slott e Lalgorithme de CSMA/CA non-slott est appliqu pour les envois de trames dans un rseau e e e en mode non suivi de beacon. Pour autant, il ne sagit pas de CSMA/CA de la norme IEEE 802.11. Le param`tre CW nexiste pas dans lalgorithme de CSMA/CA non-slott : il sut de e e dtecter une seule fois que le canal est libre pour commencer une transmission. Lunit du temps e e reste la priode de backo, mais lactivit des entits nest pas synchronise sur ces priodes de e e e e e backo. La gure 4.4 prsente les direntes tapes du CSMA/CA non-slott. Lalgorithme come e e e mence par la phase dinitialisation en mettant BE = macM inBE et N B = 0. Puis, elle tire alatoirement un nombre entier de priodes de backo. Apr`s la consommation du backo, e e e la couche MAC demande ` la couche PHY deectuer un CCA. Si la couche PHY dtecte a e le canal libre, la couche MAC commence la transmission. Si ce nest pas le cas, la couche MAC incrmente N B et BE (` condition que BE reste infrieur ou gal ` macM axBE). e a e e a
3

Dans le cas du CSMA/CA de la norme 802.11, la scrutation du canal est faite durant le backo

Grard Chalhoub, Clermont Universit e e

34

Rseaux de capteurs sans l e

Etape 1 Initialisation : BE = macM inBE, N B = 0 et CW = 2 Etape 2 Localiser la fronti`re de e la prochaine priode de backo e

Tirage de backo dans [0; 2BE 1] Etape 3 Eectuer un CCA

Canal libre ?
non oui

NB = NB + 1 BE = min(BE + 1, macM axBE)

CW = CW 1

non

NB > macMaxCSMABackos

CW = 0 ?
oui

non

oui

Echec

Succ`s e

Fig. 4.3 Diagramme de lalgorithme de CSMA/CA slott de la norme IEEE 802.15.4. e

Grard Chalhoub, Clermont Universit e e

35

Rseaux de capteurs sans l e

Si N B < macM axCSM ABackof f s, lalgorithme revient au tirage de backo. Si N B = macM axCSM ABackof f s, lalgorithme renvoie un diagnostic dchec dacc`s. Cest alors ` e e a la couche MAC de demander une retransmission de la mme trame tant que le nombre de tene tatives est plus petit que macMaxFrameRetries (macM axF rameRetries vaut 3 par dfaut). e Initialisation BE = macM inBE et N B = 0

Tirage de backo dans [0; 2BE 1]

Eectuer un CCA

Canal libre ?
non

NB = NB + 1 BE = min(BE + 1, macM axBE)

oui
NB > macMaxCSMABackos

non

oui Echec

Succ`s e

Fig. 4.4 Diagramme de lalgorithme de CSMA/CA non-slott de la norme IEEE 802.15.4. e

4.2.2

Les scans, la cration du rseau, les associations et la synchronisation e e

Les scans An de dcouvrir les rseaux existants ` porte, de crer un rseau, de sassocier ` un rseau e e a e e e a e ou de se synchroniser avec un rseau, la couche MAC eectue un des quatre types de scans e suivants : Le scan dnergie permet de rcuprer lnergie maximum dtecte sur chaque canal. Ce e e e e e e scan est utilis par un coordinateur souhaitant crer un PAN an de choisir le canal e e convenable. Le scan actif permet de rcuprer la liste des identiants de PAN existants. Le scan e e actif suit la diusion de requte de beacon. Un coordinateur fonctionnant selon un mode e non suivi de beacon rpond ` cette requte par une diusion de beacon. Un coordinateur e a e fonctionnant selon un mode suivi de beacon lignore et continue ` envoyer ses beacons a priodiquement. Ce scan est utilis par un coordinateur souhaitant crer un PAN pour e e e

Grard Chalhoub, Clermont Universit e e

36

Rseaux de capteurs sans l e

choisir le bon identiant de PAN, ou par une station qui cherche ` sassocier ` un PAN a a (dont elle conna lidentiant). t Le scan passif comme pour le scan actif, permet de rcuprer la liste des identiants e e de PAN existants. En revanche, la station nenvoie pas une requte de beacon mais elle e eectue une coute passive de chaque canal ` scanner pour une dure donne. Ce scan est e a e e utilis par une station qui cherche ` sassocier ` un PAN. e a a Le scan dorphelin permet ` une station de retrouver son coordinateur apr`s une perte de a e synchronisation avec ce dernier. Cration du rseau e e La couche suprieure envoie une requte ` la couche MAC pour eectuer un scan actif sur e e a une liste de canaux an de dcouvrir les rseaux existants ` porte. Une fois le bon canal choisi, e e a e la couche suprieure dcide dun identiant de PAN et demande ` la couche MAC dinitier un e e a PAN avec cet identiant. Association et dsassociation e Apr`s avoir eectu un scan (passif ou actif) et remont le rsultat d ` la couche suprieure, e e e e ua e cette derni`re demande ` la couche MAC de sassocier ` un PAN spcique en prcisant son e a a e e identiant PAN et ladresse du coordinateur correspondant. Suite ` cette demande, la couche a MAC gn`re une requte dassociation ` destination du coordinateur. e e e a ` A la rception dune requte dassociation, la couche MAC du coordinateur remonte linfore e mation ` la couche suprieure et cest ` celle-ci de dcider daccepter ou pas cette requte en a e a e e fonction des ressources quil lui reste par exemple. La rponse ` cette requte dassociation est e a e envoye en mode de transmission indirecte (voir le paragraphe 4.2.3). e Suite ` une requte de dsassociation envoye par la couche suprieure, la couche MAC a e e e e envoie une indication de dsassociation au coordinateur pour linformer que la station soue haite se dsassocier du PAN. De mme, la couche suprieure dun coordinateur peut dcider de e e e e dsassocier une station qui lui est associe, elle lui envoie alors une commande de dsassociation e e e pour linformer de ce fait. Synchronisation avec le beacon du coordinateur Dans le mode suivi de beacon, les entits restent synchronises au rseau grce ` la transmise e e a a sion priodique dune trame de beacon par le coordinateur. Le tableau 4.2 montre les dirents e e champs de ce beacon. Toute station appartenant ` un beacon-enabled PAN doit pouvoir se synchroniser avec le a beacon de son coordinateur pour conna la structure de la supertrame, et aussi pour rcuprer tre e e les trames la concernant (comme indiqu par la liste des entits ayant des trames en instance). e e Si une station ne reoit pas un nombre aMaxLostBeacons conscutifs de beacons, la couche MAC c e dtecte une perte de synchronisation et indique ce constat ` la couche suprieure. e a e La couche MAC rejette toute trame de beacon dont ladresse source ou lidentiant du PAN ne correspondent pas ` ladresse du coordinateur ou ` lidentiant du PAN auquel la station est a a associe, respectivement. e

4.2.3

Echange de donnes e

Dans la primitive de requte de transmission de donnes envoye par la couche suprieure, un e e e e champ (txOptions) spcie dans quel mode de transmission des donnes doivent tre transmises. e e e

Grard Chalhoub, Clermont Universit e e

37

Rseaux de capteurs sans l e

Octets : 2
Frame control

2/8

0/5/6/ 10/14

variable variable variable

Numro PAN e de ID squence source e

Adresse Entte Spcife e source scurit ications e e de la supertrame

Champs de GTS

Liste des adresses en attente

Payload

FCS

Entte MAC e

Payload MAC

Footer MAC

Tab. 4.2 Format du beacon de la norme IEEE 802.15.4. Les trois modes dchange sont : change direct, change indirect, change en GTS. Ce champ e e e e spcie aussi si la trame de donnes doit tre acquitte ou pas. e e e e Echange direct Durant la CAP, la station essaie denvoyer la trame en CSMA/CA slott. En cas de transe mission avec demande dacquittement, la couche MAC fait macMaxFrameRetries tentatives (par dfaut 3 tentatives) si lacquittement nest pas reu au bout de macAckWaitDuration 4 e c Echange indirect Pour favoriser laspect conomie dnergie, les stations feuilles initient la communication avec e e leur coordinateur, et cela selon deux procdures : (i) dans un PAN en mode suivi de beacon, e le coordinateur indique dans son beacon la liste des adresses des entits qui ont des trames en e attente chez lui, (ii) dans un PAN en mode non suivi de beacon, la station feuille sollicite le coordinateur pour vrier sil a des trames en attente pour elle. e Le coordinateur conserve les trames en attente pour une dure de macTransactionPersise tenceTime avant de les supprimer si la station concerne ne la pas sollicit pour les rcuprer. e e e e Echange en GTS Lallocation des GTS est faite uniquement par le coordinateur du PAN. Un GTS est allou e soit en mode rception (du coordinateur du PAN vers la station) soit en mode mission (de la e e station vers le coordinateur du PAN). Une station demande lallocation dun GTS aupr`s du coordinateur du PAN auquel elle est e alie. Le nombre maximal de GTS est limit ` 7, ` condition que la dure de la CAP restante e ea a e reste suprieure ou gale ` aMinCAPLength (aM inCAP Length = 7 ms pour la frquence de e e a e 2.4 GHz). La rponse dune requte de GTS est envoye dans le beacon via des descripteurs de e e e GTS. Cette information est garde dans le beacon pour aGTSDescPersistenceTime (par dfaut e e aGT SDescP ersistenceT ime = 4) beacons conscutifs. e
macAckW aitDuration = aU nitBackof f P eriod + aT urnaroundT ime + phySHRDuration + 6 phySymbolsP erOctet, o` aU nitBackof f P eriod = 320 s, aT urnaroundT ime = 192 s, phySHRDuration = u 128 s (pour la frquence de 2.4 GHz), 6 reprsente le nombre doctets de len-tte PHY incluant la longueur de e e e la payload PHY de lacquittement.
4

Grard Chalhoub, Clermont Universit e e

38

Rseaux de capteurs sans l e

La dsallocation dun GTS peut tre faite soit ` la demande de la couche suprieure de la e e a e station ayant le GTS, soit par la couche suprieure du coordinateur du PAN suite au constat e que la station na plus utilis son GTS durant 2 n supertrames conscutives5 . e e

n = 28BO si 0 BO 8, n = 1 si 9 BO 14.

Grard Chalhoub, Clermont Universit e e

39

Rseaux de capteurs sans l e

Chapitre 5

ZigBee
5.1 Couche rseau ZigBee e

La couche rseau de ZigBee est reste compatible avec la couche MAC IEEE 802.15.4 en ase e surant des fonctionnalits complmentaires et compatibles avec celles de la couche MAC. Il sagit e e soit de fonctionnalits lies ` la transmission de donnes, comme lencapsulation des donnes e e a e e applicatives et le choix du prochain saut du cheminement du paquet, soit de fonctionnalits e lies ` la gestion, comme la gestion des tables de routage, la conguration de la topologie et e a lallocation des adresses logiques.

5.1.1

Cration de la topologie e

Comme pour la couche MAC IEEE 802.15.4, la couche rseau supporte deux types de topoe logies : topologie en toile et topologie maille. Un cas particulier dune topologie maille est la e e e topologie arborescente. Le topologie arborescente est appele cluster-tree. e

association Coordinateur du PAN Coordinateur Feuille Fig. 5.1 Topologie cluster-tree. Dans un rseau de topologie cluster-tree, le coordinateur du PAN transmet dans le beacon e trois param`tres essentiels que chaque coordinateur doit respecter et qui dnissent la topologie e e 40

en arbre du rseau. Ces trois param`tres sont : e e la profondeur maximale du rseau (Lm), e le nombre maximal de ls par coordinateur (Cm), le nombre maximal de ls coordinateurs par coordinateur (Rm) . ` A noter que si Lm = 1 nous nous retrouvons dans une topologie en toile. e

5.1.2

Allocation des adresses

Avant dtre associe au rseau, une entit na que son adresse MAC IEEE, appele adresse e e e e e longue. Cette adresse occupe 8 octets. An doptimiser la taille des champs dadressage dans les trames changes, la couche rseau alloue une adresse courte logique qui noccupe que 2 octets. e e e Il existe deux mcanismes pour cette allocation : une allocation dadresses hirarchiques et une e e allocation dadresses alatoires. e Allocation dadresses hirarchiques e Lallocation des adresses courtes se fait en se basant sur la profondeur du coordinateur et sur les trois param`tres Lm, Rm et Cm. Ce mcanisme dallocation est distribu. A chaque coordie e e ` nateur est con une plage dadresses selon sa profondeur. Ltendue de cette plage dadresses e e est appele Cskip. Cskip pour une profondeur d donne est calcul selon la formule suivante : e e e si Rm = 1, 1 + Cm (Lm d 1) Cskip(d) = 1+CmRmCmRmLmd1 sinon 1Rm Les adresses sont alloues diremment selon le type de la station qui sassocie : e e AdrC = AdrP + 1 + nbC Cskip(d), AdrF = AdrP + Rm Cskip(d) + n

o` AdrC dsigne ladresse alloue pour un nouveau coordinateur, AdrP ladresse du p`re, u e e e AdrF ladresse alloue pour une nouvelle feuille, nbC le nombre actuel de coordinateurs ls, n e est un entier suprieur ` 1 incrment suite ` chaque nouvelle association dune feuille (1 n e a e e a (Cm Rm)). Prenons le cas o` Lm = 3, Rm = 3 et Cm = 5, valeurs que nous dsignerons par (3, 3, 5). u e Cela nous donne les valeurs donne sur le tableau 5.1 pour Cskip selon la profondeur d : e

Profondeur 0 1 2 3 21 6 1 0

Cskip

Tab. 5.1 Valeurs de Cskip pour lexemple (3, 3, 5). ` A noter quun coordinateur de profondeur Lm naccepte aucune association. En appliquant le jeu de param`tres (3, 3, 5) au le cluster-tree de la gure 5.1, nous obtenons les adresses e donnes sur la gure 5.2 pour chaque station. e Grard Chalhoub, Clermont Universit e e 41 Rseaux de capteurs sans l e

45 62 27 23 44 43 0 22 65 64 41 1 2 6 7 48

Coordinateur du PAN
8

Coordinateur Feuille

Fig. 5.2 Allocation des adresses hirarchiques sur un exemple. Le coordinateur 1 par exemple, e qui est ` la profondeur 1, a allou ladresse 2 ` son premier ls et 8 au deuxi`me, 8 = 2+Cskip(1). a e a e Allocation dadresses alatoires e Dans le mode dallocation dadresses alatoires, les param`tres Lm, Rm, Cm et la profondeur e e nont plus deet sur le choix dune adresse courte. Apr`s avoir accept lassociation dune entit, e e e le coordinateur choisit alatoirement une adresse courte, en vriant que cette adresse ne soit e e prsente dans aucune entre de sa table NIB (Network layer Information Base). Les ventuelles e e e conits dadresses sont dtects et rsolus par un mcanisme supplmentaire. e e e e e

5.1.3

Routage

Tout coordinateur qui poss`de des capacits de routage, maintient une table de routage e e qui sera utilise pour dterminer le prochain saut pour les paquets qui sont ` destination des e e a stations qui se trouvent hors porte du coordinateur. Nous allons nous limiter ` dtailler le e a e routage hirarchique uniquement. e Routage hirarchique e Lallocation dadresses hirarchiques ore la possibilit dappliquer un routage hirarchique. e e e Les coordinateurs nayant pas une stratgie de routage particuli`re appliquent le routage hirarchique. e e e Ce routage ne demande pas dchanges supplmentaires pour trouver les routes, ni la construce e tion de tables de routage. Les routes utilises pour acheminer les paquets dans un routage hirarchique sont uniquee e ment les routes de larbre. Pour dterminer le prochain saut dans un routage hirarchique le e e coordinateur applique un algorithme qui retourne ladresse du prochain saut en fonction de son adresse et ladresse de la destination nale du paquet. Nous dsignons par Adr ladresse du coordinateur qui cherche ` router le paquet selon le e a routage hirarchique, d sa profondeur, AdrP ladresse de son p`re, DestF inale ladresse de la e e destination nale du paquet et Dest ladresse du prochain saut.

Grard Chalhoub, Clermont Universit e e

42

Rseaux de capteurs sans l e

si alors

Adr < DestF inale Adr + Cskip(d 1), si DestF inale > Adr + Rm Cskip(d), alors Dest = DestF inale,
inale(Adr+1) sinon Dest = Adr + 1 + DestF Cskip(d) Cskip(d),

sinon Dest = AdrP

Si DestF inale est comprise entre Adr et Adr + Cskip(d 1), la destination nale est un descendant du coordinateur. Si ce nest pas le cas, le coordinateur remonte le paquet ` son p`re a e en mettant Dest = AdrP . Si la destination nale est un descendant, le coordinateur vrie si elle est une de ses feuilles. e Si cest le cas, il met Dest = DestF inale. Si la destination nale nest pas une feuille, pour trouver le ls vers lequel il va router le paquet, le coordinateur applique la formule Dest = inale(Adr+1) Cskip(d). Adr + 1 + DestF Cskip(d)

5.2

Couche application ZigBee

La couche application de ZigBee est constitue de la sous-couche APL (APplication sube Layer), du ZDO (ZigBee Device Object) et de lApplication Framework contenant des prols prdnis. La gure 5.3 reprsente les trois entits de la couche application. e e e e Application framework Objet Objet applicatif ... applicatif 1 240 APSDE-SAP APSDE-SAP

ZDO

APSDE-SAP

Couche application APL NLDE-SAP Couche rseau e NET NLME-SAP

Fig. 5.3 Couche application ZigBee. Linterface entre la couche application est les dirents e objets est appele APSDE pour (APplication Support sub-layer Data Entity). e LAPS (APplication Support) constitue linterface entre la couche rseau dune part, le ZDO e et les objets prdnis dautre part. Nous listons ` titre indicatif quelques services oerts par e e a lAPS : lencapsulation des donnes, la fragmentation et lassemblage de donnes, le cryptage e e de donnes et ladressage par groupe. e Grard Chalhoub, Clermont Universit e e 43 Rseaux de capteurs sans l e

LApplication Framework peut supporter 240 objets applicatifs dirents sur un mme nud e e ZigBee. Lobjet applicatif par dfaut est dni dans le ZDO. LApplication Framework permet e e aussi de dnir des prols applicatifs spciant des formats de messages et la faon de les traiter e e c entre un ensemble dobjets applicatifs appartenant ` des nuds ZigBee dirents. La gure 5.4 a e reprsente un exemple de deux nuds ZigBee A et B ayant chacun plusieurs objets applicatifs e (interrupteur 1 et interrupteur 2 appartenant au nud A et lampe 1, lampe 2, lampe 3 et lampe 4 appartenant au nud B). Nous voyons comment lobjet applicatif Int1 (interrupteur 1) peut communiquer ` plusieurs objets applicatifs (lampe 1, lampe 2 et lampe 3) grce ` une table a a a de binding qui permet de formaliser les correspondances entre dirents objets. Cette table est e partage par tous les nuds qui partage la mme application. Les objets interrupteurs Int1 et e e Int2 et les lampes L1, L2, L3 et L4 appartiennent tous ` un mme prol applicatif, ce qui leur a e permet de comprendre les messages changs entre-eux. e e

Radio

Radio L1 L2 L3 L4

Int1 Int2 Binding Table Nud A Nud B

Fig. 5.4 Exemples dapplication et de prols ZigBee.

Grard Chalhoub, Clermont Universit e e

44

Rseaux de capteurs sans l e

Vous aimerez peut-être aussi