synchronisation d`horloges physiques
Transcription
synchronisation d`horloges physiques
TD algorithmique répartie SYNCHRONISATION D’HORLOGES PHYSIQUES On rappelle que les supports de cours sont disponibles à http://mathieu.delalandre.free.fr/teachings/dcomputing.html 1. Décalage d’horloge On considère un cas d’étude de décalage d’horloge, ou un client C se synchronise de manière journalière avec un serveur UCT. A la première synchronisation, le client ajuste son horloge avec UCT (θ = 0). Sur les synchronisations suivantes, le client relève les valeurs UCT obtenues conjointement à ses propres valeurs d’horloge pour estimer le décalage. Le décalage observé est reporté dans le tableau suivant, ou les heures sont indiquées au format h:m:s (pour une question de facilité de calcul, on s’intéressera ici à une précision bornée à la seconde). A partir de ces données, indiquez pour quelques événements de synchronisation les informations suivantes: les valeurs de décalage « offset », de fréquence (dC/dT) et de dérive « skew ». 0 1 2 3 4 5 6 7 8 9 10 Jours UCT 9:17:11 13:10:50 11:02:18 12:35:14 11:02:47 10:55:22 12:16:09 14:47:12 15:17:55 14:55:10 16:17:55 Cp(t) 9:17:11 13:10:54 11:02:26 12:35:28 11:03:09 10:55:57 12:16:57 14:48:24 15:19:32 14:57:33 16:21:06 Sachant un « maximum drift rate » de 40×10-5 pour l’horloge d’une machine, quelle recommandation feriez-vous pour synchroniser six ordinateurs « jumeaux » C1, C2, C3, C4, C5 et C6 sachant (i) que C1 est connecté à C2, C3, C4, C5 et que C4, C5 sont connectés à C6 (ii) que l’on souhaite fixer le décalage à 12 secondes dans le pire des cas entre deux machines. 2. Network Time Protocol (NTP) On souhaite effectuer une estimation du temps de communication entre un Client C et un serveur d’horloge UCT, via le protocole NTP. Calculer le temps de communication moyen tenant compte des paramètres suivants (i) C effectue sa requête à t0 = 9:55:13:0 et reçoit une réponse à t1 9:55:15:50 « h:m:s:ms » (ii) le délai d’interruption du serveur UCT est de 1,25 s. Sachant que, à réception de la valeur de UCT par C, l’écart entre de l’horloge de C « hc » et « UCT » est de hc - UCT = 5,65 s, indiquez la manière de synchroniser hc. Sachant que C dispose d’un processor cadencé à 500 MHz, indiquez comment hc peut être aligné sur la valeur d’UCT dans un délai maximum de 50 s de temps processeur. 3. Algorithme de Berkeley On considère un problème de synchronisation d’horloges entre 3 clients C1, C2 et C3 et un serveur d’horloge Sh en utilisant l’algorithme de Berkeley. A l’instant t=0, les valeurs des horloges de C1, C2, C3 et Sh sont respectivement de 12:12:26, 12:17:51, 11:51:22 et 12:13:47 « h:m:s » (pour une question de facilité de calcul, on s’intéressera ici à une précision bornée à la seconde). Détaillez les étapes de synchronisation entre C1, C2 et C3 et Sh, et donnez les valeurs finales des horloges à l’issue de la synchronisation.