La synchronisation temporelle est un aspect important de l'Internet des Objets (IoT). Dans l'IoT industriel, par exemple, une synchronisation précise peut prévenir les erreurs de production en assurant que les capteurs et les machines opèrent de concert.
Dans le domaine des applications liées à la sécurité, comme la surveillance des infrastructures critiques, la synchronisation horaire permet de corréler précisément les événements enregistrés par différents appareils (badgeuses, caméras de sécurité) centralisés dans un serveur maitre.
Pourquoi faut-il une synchronisation temporelle fiable et précise pour l’IoT ?
L’importance de la synchronisation horaire pour l’IoT se traduit par 4 exigences majeures :
- La précision temporelle. Une synchronisation précise garantit que les actions et mesures des dispositifs IoT sont fiables.
- La sécurité. Plusieurs types d’attaques existant sur les systèmes et réseaux peuvent être évités par un mécanisme fiable de synchronisation du temps. Par exemple, les attaques par rejeu, pour lesquelles un mécanisme d’horodatage permet de vérifier l’intégrité des messages. L’horodatage constitue une contre-mesure très efficace des attaques.
- L’interopérabilité. Au sein d’un même réseau, on retrouve souvent une multitude d’appareils connectés différents. Une synchronisation temporelle précise est alors indispensable pour que tous les équipements travaillent ensemble efficacement.
- L’énergie. Les appareils connectés doivent se synchroniser précisément tout en préservant leurs batteries. Il y a donc un intérêt à trouver des solutions économes, comme des serveurs de temps basse consommation, pour la synchronisation temporelle.
Quels sont les différents protocoles de synchronisation horaire pour l’IoT ?
Il existe plusieurs solutions techniques pour gérer les horloges des dispositifs connectés. Certaines sont basées sur des protocoles bien connus (NTP, NTS et PTP), tandis que d’autres ont été développées spécifiquement pour le contexte des appareils mobiles (IoT et communication mobile).
Ci-dessous, les protocoles les plus courants dans l’IoT :
- Network Time Protocol (NTP). NTP est le protocole de synchronisation le plus connu. Il permet de synchroniser les horloges des ordinateurs sur un réseau avec une précision de quelques millisecondes tout en gardant un haut niveau de sécurité grâce au protocole NTS (Network Time Security). Pour de nombreuses applications IoT, cette précision est suffisante. Cependant, dans des environnements où une plus grande précision est nécessaire, dans le secteur financier ou de l’énergie par exemple, NTP n’est pas une solution adaptée.
- Roughtime protocol. Le protocole Roughtime est un protocole de synchronisation temporelle sécurisé similaire au NTS offrant une solution simple et robuste dans une installation décentralisée. Ce protocole est particulièrement adapté aux objets connectés car il utilise des techniques cryptographiques modernes résistant aux attaques malveillantes.
- Precision Time Protocol (PTP). PTP, ou IEEE 1588, offre une solution à un besoin de précision accrue que NTP ne satisfait pas. Conçu pour répondre aux besoins des réseaux industriels où une synchronisation de l'ordre de la microseconde est requise, PTP est devenu un pilier des applications critiques. Son utilisation s'étend désormais à la synchronisation des réseaux de télécommunications, notamment pour le déploiement de la 5G, pour la gestion des communications fiables et à faible latence dans le réseau. Une version simplifiée émerge : le protocole SPTP (Simple Precision Time Protocol). Ce dernier permet de réduire considérablement le nombre d'échanges entre un serveur et un client favorisant ainsi une communication réseau beaucoup plus efficace.
- Short Packet Transmission (SPT). Dans les réseaux IoT la bande passante est souvent limitée et les équipements doivent être économes en énergie. L’utilisation de courts messages permet une synchronisation effective sans imposer une charge réseau excessive. La petite taille des paquets réduit la variabilité du délai de transmission, permettant ainsi aux dispositifs de maintenir la synchronisation avec une marge d'erreur minimale.
Comment maintenir la précision horaire ?
Pour éviter des synchronisations trop fréquentes à un serveur de temps externe, il est conseillé d’équiper l’infrastructure réseau d’un serveur de temps local. En effet, ces serveurs sont capables de maintenir une bonne précision horaire, notamment lorsque leur hardware intègre un oscillateur TCXO (Temperature Controlled Crystal Oscillator), par exemple.
La synchronisation temporelle pour l’IoT partage une partie des exigences et des solutions que l’on retrouve dans la gestion des horloges d’un réseau plus classique. Les protocoles comme NTP ou PTP sont ainsi utilisés dans ce contexte de l’Internet des Objets. On voit alors l’émergence de problématiques supplémentaires, comme l’interopérabilité entre équipements hétérogènes, et la gestion de l’énergie. Pour répondre à ces deux nouvelles exigences, des solutions sont déjà en place (Roughtime, SPT, synchronisation interne, etc.). De plus, la R&D est très dynamique sur ces problèmes.
Avec plus de 150 ans d’expertise en gestion des temps et présent dans plus de 140 pays, Bodet Time est un acteur français majeur de la synchronisation temporelle et du temps fréquence. Eco-conçus et dotés d’oscillateur TCXO, nos serveurs de temps Netsilon fournissent un temps de référence fiable, précis et sécurisé.