Synchronisation en réseau de capteurs
Transcription
Synchronisation en réseau de capteurs
Plan de la présentation Introduction Synchronisation en réseau filaire Synchronisation en réseau de capteurs Synchronisation en réseau sans fil Les défis et difficultés Principes Classification Nathalie Mitton Les différents protocoles [email protected] (LIFL, projet INRIA/CNRS/USTL POPS) Conclusion 2 POPS/LIFL Définition Motivations On a besoin du temps pour Dater un évènement Evaluer le temps entre deux évènements Ordonner les évènements « Time synchronization in a computer network aims at providing a common time scale for local clocks of nodes in the network » Synchronisation en réseau centralisé ? Aucune ambigüité de temps Synchronisation en réseau distribué ? Aucune horloge globale ou mémoire partagée Dérive d’horloge Offset 3 POPS/LIFL 4 POPS/LIFL Terminologie Le temps ou la date d’une horloge de la machine p Cp(t) = apt+bp Fréquence d’horloge : C’p(t) = ap Taux auquel l’horloge progresse Offset : bp La synchronisation classique différence entre Cp(t) et le temps réel (en général date de départ) Comparaison de deux horloges : CA(t) = aAB CB(t) +bAB POPS/LIFL 5 POPS/LIFL 6 1 Remote Clock Reading Method Time Transmission Method A veut se synchroniser à B: L’émetteur A synchronise le récepteur B: TB B T1 A T2 T3 T2 T1 A R1 Tn TB (T1 ) = TB + R3 … Rn A envoie n messages de synchro. B estime l’horloge TA de A après réception du nième message comme : T1 − T0 2 TS = Rn − ( Rn − Tn ) + d Avec 7 POPS/LIFL Tn = T0 Rn = 1 n ∑ Ri n i =1 8 Set-valued Estimation Method A veut se synchroniser à B: T1 1 n ∑ Ti n i =1 POPS/LIFL Offset Delay Estimation Method B R2 T1 A estime l’horloge de B au temps T1 : A veut se synchroniser à B: T2 TB B T0, T1, T2 A T0 T3 T0 ∆ est la dérive d’horloge entre A et B et d l’offset. A estime ∆ et d : ∆= Tn B T0 A … T3 (T1 − T0 ) − (T3 − T2 ) 2 d= A part de l’équation suivante CA(t) = aAB CB(t) +bAB et cherche à estimer aAB et bAB à partir de plusieurs ensembles de valeurs (T0, Tb, Tr). T0 < aTB + b (T1 − T0 ) + (T3 − T2 ) 2 Tr > aTB + b 9 POPS/LIFL Tr 10 POPS/LIFL Set-valued Estimation Method La synchronisation en réseau sans fil POPS/LIFL 11 POPS/LIFL 12 2 Les défis Les défis Energie limitée Les réseaux ad hoc et de capteurs sont des réseaux coopératifs. Très grand nombre d’entités Ce qui suppose Bande passante limitée Des actions coordonnées (telles le tracking) Des agrégations de données De l’ordonnancement Limite la possibilité d’échanger un grand nombre de messages Capacités de calcul limitées Ne peut calculer des dérives pour chaque autre nœud du réseau D’où l’importance de la synchronisation !!! Mémoire limitée Synchronisation sur des chemins multi-sauts 13 POPS/LIFL 14 POPS/LIFL Les défis Exigences Temps de propagation non déterministe Précision Impact du choix du matériel, des OS et de la couche MAC Durée de validité de la synchronisation Robustesse Mobilité to : Envoi d’un message accès au canal Coût Emetteur message reçu par la couche MAC Synchro locale ou globale ? t1:traitement du message Récepteur 1 t1_bis : traitement du message Récepteur 2 POPS/LIFL 15 16 POPS/LIFL Si on reliait tous les capteurs à une source d’énergie et à une horloge universelle ? La synchronisation en réseau sans fil Classification POPS/LIFL 17 POPS/LIFL 18 3 Maitre/esclave Vs P2P Maitre/esclave Vs P2P Maitre / Esclave Maitre / Esclave ou ☺ ? Tous les nœuds se synchronisent au même chef. élection d’un chef. Si le chef tombe, tout tombe. Certaines synchronisations inutiles. ☺ Facile à mettre en œuvre. Synchronisation Pair-à-Pair ou ☺ ? Synchronisation Pair-à-Pair Très difficile à mettre en œuvre. ☺ Plus robuste et plus flexible. ☺ Une paire de nœuds ne se synchronise que si nécessaire. 19 POPS/LIFL 20 POPS/LIFL Correction d’horloge Vs horloge débridée Interne Vs externe Correction d’horloge Synchronisation interne A chaque synchronisation, un nœud ajuste son horloge sur celle de référence. Il n’existe aucune horloge de référence dans le système. Synchronisation externe Horloge débridée Il existe une horloge de référence, comme par exemple un nœud équipé d’un GPS. synchronisation maitre/esclave Chaque horloge vit librement mais chaque nœud garde en mémoire les données nécessaires pour convertir son temps local en la base de temps de chacun des autres. 21 POPS/LIFL 22 POPS/LIFL Local Vs global Comment classez-vous cet exemple ? Synchronisation locale Seul un sous-ensemble du système est synchronisé. Synchronisation globale Tout le réseau est synchronisé sur la même horloge. POPS/LIFL 23 POPS/LIFL 24 4 Les protocoles Malgré les problématiques du sans fil, la majorité de ces protocoles se basent sur les méthodes classiques. Les protocoles de synchronisation en réseau sans fil 25 POPS/LIFL 26 POPS/LIFL RBS – Elson&Estrin 2001 RBS : Reference Broadcast Synchronization Exploite la particularité de diffusion du sans fil Cherche à synchroniser un ensemble de receveurs. Suppose que tous les receveurs reçoivent en même temps. La synchronisation en réseau sans fil RBS Source 27 POPS/LIFL 28 POPS/LIFL RBS ☺ et ☺ ☺ to : Envoi d’un message Ne se synchronise que si nécessaire (si envoi de message) accès au canal Économie d’énergie Emetteur Plus grande partie des sources d’erreur éliminée Estimation des dérives d’horloges indépendamment les unes des autres message reçu par la couche MAC t1:traitement du message Récepteur 1 Pas de conflit t2 : traitement du message Multi-sauts possible Récepteur 2 Ne fonctionne pas si un seul récepteur Grande complexité de messages à échanger On suppose t1 = t2. On élimine les premières zones d’incertitudes. Horloges débridées. POPS/LIFL Pour n receveurs, n(n-1) messages Temps de convergence non borné L’émetteur reste non synchronisé 29 POPS/LIFL 30 5 Time Synchronization – Romer 2001 Synchronisation très faible: Ne cherche qu’à ordonner deux évènements Se limite aux synchronisations pair-à-pair. Suppose une dérive d’horloge bornée. La synchronisation en réseau sans fil Time Synchronization Ne se synchronise que si un évènement survient. 31 POPS/LIFL 32 POPS/LIFL Time Synchronization – Romer 2001 ☺ et ☺ A encadre la date de l’évènement survenu à TB. B ☺ TB Ne se synchronise que si nécessaire (si envoi de message) Économie d’énergie Horloges débridées Multi-sauts possible Estimation bornée A T1 Si TU = temps universel, on a TU-ξ < T1 < TU+ξ. A va encadrer la valeur T1-Tb afin de savoir depuis combien de temps l’évènement a eu lieu à partir d’une estimation du RTT. L’erreur (ou la taille de l’intervalle d’estimation) augmente avec le nombre de sauts. Nécessite une estimation du RTT. 33 POPS/LIFL 34 POPS/LIFL Network-wide synchronization – Ganeriwal, Kumar, Adlakha & Srivastava 2003 Synchronisation globale Utilise la méthode Offset Delay Estimation En 2 étapes: La synchronisation en réseau sans fil Network-wide synchronization POPS/LIFL 1. attribution d’un niveau à chaque nœud 2. synchronisation des nœuds de niveau i à leur père de niveau i-1 35 POPS/LIFL 36 6 Network-wide synchronization – Ganeriwal, Kumar, Offset Delay Estimation Method Adlakha & Srivastava 2003 A veut se synchroniser à B: Etape 1 : attribution d’un niveau T2 T1 B T0 A Par algorithme classique d’élection de leader. Construction d’un arbre de niveau. T0, T1, T2 Niveau 2 Niveau 0 T0 Niveau 1 T3 ∆ est la dérive d’horloge entre A et B et d l’offset. A estime ∆ et d : Niveau 1 (T − T ) − (T3 − T2 ) ∆= 1 0 2 (T − T ) + (T3 − T2 ) d= 1 0 2 Niveau 3 Niveau 1 Niveau 2 Niveau 2 37 POPS/LIFL Niveau 2 38 POPS/LIFL Network-wide synchronization – Ganeriwal, Kumar, ☺ et ☺ Adlakha & Srivastava 2003 Etape 2 : Synchronisations initiées par la racine de l’arbre Vagues de synchronisation ☺ Passe à l’échelle Permet de nombreuses applications Demande une hiérarchie Temps de convergence pouvant être important Niveau 0 Niveau 1 Niveau 2 39 POPS/LIFL 40 POPS/LIFL Tiny Synchronization – Sichitiu & Veerarittiphan 2003 Basé sur échange de messages Applique la méthode Set-valued Estimation Détermine une borne assez fine de la dérive. La synchronisation en réseau sans fil Tiny Synchronization POPS/LIFL 41 POPS/LIFL 42 7 Set-valued Estimation Method ☺ et ☺ ☺ Faible complexité en calcul et mémoire Robuste face à la perte de paquets Supporte mal le passage à l’échelle Temps de convergence pouvant être important 43 POPS/LIFL 44 POPS/LIFL LTS – Greunen & Rabaey 2003 LTS : Lightweight Tree-based Synchronization Cherche à synchroniser non pas en augmentant la précision mais à diminuer la complexité pour une précision voulue. La synchronisation en réseau sans fil LTS 2 algorithmes 1 centralisé 1 distribué 45 POPS/LIFL 46 POPS/LIFL LTS ☺ et ☺ Algo centralisé : Un arbre couvrant est calculé à partir d’une source qui devient la racine. La racine à la responsabilité d’initier les synchronisations. Les synchronisations se font en pair à pair le long des arêtes de l’arbre. ☺ Évite les synchronisations inutiles Algo distribué : Chaque nœud décide d’initier ou non une synchronisation quand il en a besoin. Il envoie une requête de synchronisation à son nœud de référence le plus proche (atteint par routage classique). Il se synchronise avec ce nœud référence. POPS/LIFL Nécessite la synchronisation de tous les nœuds sur le chemin vers le nœud référence Goulot d’étranglement. Peut générer un grand nombre de paires à synchroniser. 47 POPS/LIFL 48 8 Sources et autres références F.Sivrikaya and B.Yener, « Time Synchronization in Sensor Networks: A Survey » IEEE Networks 2004 B. Sundararaman, U. Buy, A.D. Kshemkalyani, « Clock Synchronization in Wireless Sensor Networks: A Survey », Ad-Hoc Networks 2005 J. Elson, L. Girod, and D. Estrin. « Fine-Grained Network Time Synchronization using Reference Broadcasts. » Proc. Fifth Symposium on Operating Systems Design and Implementation (OSDI 2002), Vol 36, pp. 147–163, 2002. J. Elson and K. Romer. « Wireless Sensor Networks: A New Regime for Time Synchronization ». Proc. First Workshop on Hot Topics In Networks (HotNets-I), Princeton, New Jersey. Oct. 2002. R. C. Shah and J. Rabaey. « Energy Aware Routing for Low Energy Ad hoc Sensor Networks ». IEEE Wireless Communication Conference (WCNC), pp. 350–355,March 2002. S. Ganeriwal, R. Kumar, S. Adlakha, and M. Srivastava. « Network-wide Time Synchronization in Sensor Networks. » Technical Report, Networked and Embedded Systems Lab, Elec. Eng. Dept., UCLA, 2003. K. Romer. « Time Synchronization in Ad Hoc Networks. » Proc. ACM Symposium on Mobile Ad Hoc Networking and Computing (MobiHoc ’01), pp. 173–182, Oct. 2001. M. L. Sichitiu and C. Veerarittiphan. « Simple, Accurate Time Synchronization for Wireless Sensor Networks. » Proc. IEEE Wireless Communications and Networking Conference (WCNC 2003), 2003 J. van Greunen and J. Rabaey. « Lightweight Time Synchronization for Sensor Networks. » Proc. 2nd ACM Int. Workshop on Wireless Sensor Networks and Applications (WSNA ’03), California, Sept. 2003. POPS/LIFL 49 9