Optimization of Time Synchronization Techniques on Computer Networks - TEL - Thèses en ligne Accéder directement au contenu
Thèse Année : 2020

Optimization of Time Synchronization Techniques on Computer Networks

Optimisation des techniques de synchronisation horaire sur les réseaux informatiques

Résumé

Nowadays, as society has become more interconnected, secure and accurate time-keeping becomes more and more critical for many applications. Computing devices usually use crystal clocks with low precision for local synchronization. These low-quality clocks cause a large drift between machines. The solution to provide precise time synchronization between them is to use a reference clock having an accurate source of time and then disseminate time over a communication network to other devices. One of the protocols that provide time synchronization over packet-switched networks is Network Time Protocol (NTP). Although NTP has operated well for a general-purpose use for many years, both its security and accuracy are ill-suitedfor future challenges. Many security mechanisms rely on time as part of their operation. For example, before using a digital certificate, it is necessary to confirmits time validity. A machine with an inaccurate clock canaccept an expired or revoked certificate.This thesis first provides a background on time synchronization starting with the definition of some fundamental concepts such as the clock model, the problem of clock synchronization, and some notions like accuracy, precision, and stability of clocks. We study the most common time synchronization protocols used in packet-switched networks, and among others NTP.Then,we consider the security of time synchronization by presenting the possible security threats against time synchronization protocols and the security requirements of these protocols. We zoom in the securityof the NTP protocol as described by the standard NTP and other related work that tried to enhance NTP security. We also discuss the importance of having a well-balanced trade-off between security and performance.In our first contribution, we propose to go further in the support of NTP security with Secure Time Synchronization protocol (STS), a new secure authenticated time synchronization protocol suitable for widespread deployments. We describe the operation of STS and prove its design secure with a formal analysis using two security protocol verification tools: Proverif and Tamarin. We present the implementation of STS based on the OpenNTPD project, and evaluate its performance by comparing the STS precision with unauthenticated NTP. We point out the circular dependency between certificate validation and time synchronization. In fact, reliable time synchronization requires cryptographic materials that are valid only over designated time intervals, but time intervals can be only enforced when participating hosts are reliably synchronized. We present a solution for bootstrapping time synchronization based on the Bitcoin blockchain to break this circular dependency.In our second contribution, we propose a method for improving the accuracy of the NTP protocol by taking into account asymmetric transmission delays due to different bandwidth or routing on the forward and backward paths. In fact, asymmetry is quite prevalent in the Internet, which leads to low accuracy ofNTP that relies on the symmetric delay assumption to compute the clock offset. This method builds on using an NTP client synchronized with GPS to measure precisely the one-way transmission delay on the forward and backward path with his time server. In this way, it is possible to calibrate NTP to take into account asymmetry.
De nos jours, alors que la société est toujours plus interconnectée, une synchronisation temporelle sûre et précise devient de plus en plus critique pour de nombreuses applications. Les dispositifs informatiques utilisent souvent des oscillateurs à cristal de faible précision pour conserver le temps en local. Cette imprécision engendre une dérive entre les machines. La solution pour assurer une synchronisation précise de l’heure entre elles est d’utiliser une horloge de référence avec une source précise de temps, puis de diffuser le temps sur le réseau. Un des protocoles qui assurent la synchronisation temporelle est Network Time Protocol (NTP). Bien que NTP ait bien fonctionné pour un usage général pendant de nombreuses années, sa sécurité et sa précision sont mal adaptées aux défis futurs. De nombreux mécanismes de sécurité dépendent du temps dans le cadre de leur fonctionnement. Par exemple, avant d’utiliser un certificat électronique,il est nécessaire de confirmer sa validité temporelle. Une machine avec une horloge imprécise pourrait accepter des certificats expirés ou révoqués.Cette thèse présente d’abord le contexte de la synchronisation temporelle en commençant par la définition de certains concepts fondamentaux tels que le modèle d’horloge, le problème de la synchronisation d’horloge et certaines notions comme l’exactitude, la précision et la stabilité des horloges.Nous étudions les protocoles de synchronisation temporelle les plus courants des réseaux de communication, et entre autres NTP.Ensuite, nous considérons la sécurité de la synchronisation temporelle en présentant les possibles menaces de sécurité contre les protocoles de synchronisation temporelle et les exigences de sécurité de ces protocoles. Nous nous concentrons sur la sécurité du protocole NTP tel que décrit par le standard, et les travaux connexes qui ont tenté de l’améliorer sur ce point. Nous discutons également de l’importance d’avoir un compromis bien équilibré entre sécurité et performance.Dans notre première contribution, nous proposons d’aller plus loin que NTP avec Secure Time Synchronization Protocol (STS), un nouveau protocole de synchronisation de l’heure, qui est authentifié et sécurisé, et adapté aux larges déploiements. Nous décrivons le fonctionnement de STS et prouvons sa conception sécurisée, à l’aide d’une analyse formelle faite par deux outils de vérification de protocole de sécurité : Proverif et Tamarin. Nous présentons l’implémentation de STS basée sur le projet OpenNTPD, et évaluons ses performances en comparant la précision de STS avec celle de NTP non authentifié. Nous soulignons la dépendance circulaire entre la validation du certificat et la synchronisation temporelle.En réalité, une synchronisation temporelle fiable nécessite des matériaux cryptographiques qui ne sont valables que sur des intervalles de temps désignés, mais ces intervalles de temps ne peuvent être comparés à l’heure actuelle que lorsque les hôtes participants sont synchronisés de manière fiable. Nous présentons une solution qui fournit, lors de l’amorçage, une synchronisation approximative basée sur le blockchain Bitcoin, pour rompre cette dépendance circulaire.Dans notre deuxième contribution, nous proposons une méthode pour améliorer l’exactitude du protocole NTP, en tenant compte des délais de transmission asymétriques dus à une bande passante ou à un routage différent sur le chemin d’aller et de retour. En fait, l’asymétrie est assez répandue sur Internet, ce qui dégrade la performance de NTP qui fait l’hypothèse de délais symétriques. Cette méthode s’appuie sur l’utilisation d’un client NTP synchronisé par GPS, pour mesurer le délai unidirectionnel minimal aller et retour jusqu’à son serveur de temps. Ainsi, il est possible de calibrer NTP en prenant en compte cette asymétrie.
Fichier principal
Vignette du fichier
MKACHER_2020_archivage.pdf (3.79 Mo) Télécharger le fichier
Origine : Version validée par le jury (STAR)

Dates et versions

tel-02988168 , version 1 (04-11-2020)

Identifiants

  • HAL Id : tel-02988168 , version 1

Citer

Faten Mkacher. Optimization of Time Synchronization Techniques on Computer Networks. Operating Systems [cs.OS]. Université Grenoble Alpes [2020-..], 2020. English. ⟨NNT : 2020GRALM015⟩. ⟨tel-02988168⟩
221 Consultations
597 Téléchargements

Partager

Gmail Facebook X LinkedIn More