Uno dei protocolli più vecchi utilizzati sulla rete Internet si chiama NTP (Network Time Protocol: il suo compito è quello di consentire la sincronizzazione degli orologi di sistema ricevendo le informazioni in tempo reale da server gestiti da parte di enti affidabili e riconosciuti.
Windows, Linux, macOS e qualunque altro sistema operativo utilizza NTP per sincronizzare l’orologio di sistema: non appena si collega un dispositivo alla rete Internet, esso riceve la data e l’ora corretta. Questo è particolarmente utile, ad esempio, quando ci si collega a siti Web HTTPS per evitare errori nella gestione del certificato digitale ed è essenziale per l’autenticazione con il protocollo Kerberos sui domini Active Directory oltre che in mille altre applicazioni.
Il servizio che sincronizza l’orario in Windows si chiama Ora di Windows ed è individuabile facilmente premendo Windows+R
quindi digitando services.msc
.
NTP fu sviluppato presso l’Università del Delaware da Dave Mills e venne presentato nel 1985. Il protocollo di solito può mantenere il tempo allineato con l’orario UTC (tempo coordinato universale) reale con uno scarto di qualche decina di millisecondi; una precisione migliore di un millisecondo può essere ottenuta nelle reti locali in condizioni ideali. Percorsi asimmetrici e congestione della rete possono causare errori di 100 ms o più.
Meta, la “casa madre” di Facebook, ha presentato un’iniziativa interna incentrata sull’aggiornamento del protocollo NTP a livello di data center. Per motivi tecnici i sistemi usati nei data center devono sincronizzare gli orologi perché utilizzino tutti la stessa ora.
“Per supportare miliardi di persone in tutto il mondo che utilizzano le nostre tecnologie, dobbiamo essere certi che ogni server, in ogni data center, sappia e concordi su che ore sono, nel modo più accurato e preciso possibile“, ha detto Ahmad Byagowi, responsabile del progetto all’interno di Meta.
Fino a poco tempo fa anche Meta utilizzava NTP: gli ingegneri della società di Menlo Park hanno abbracciato oggi PTP (Precision Time Protocol) per migliorare la sincronizzazione dell’orario con una precisione dell’ordine dei nanosecondi.
PTP è ampiamente utilizzato nel settore delle telecomunicazioni, ma l’adozione è stata limitata agli operatori di data center hyperscale. L’adozione della tecnologia da parte di Meta rappresenta una pietra miliare per l’industria.
“Sebbene PTP sia più preciso di NTP (misurazione in nanosecondi rispetto a millisecondi), questo più nuovo protocollo pone anche maggiori esigenze in termini di hardware di rete“, hanno spiegato i tecnici di Meta. “Mentre gli ingegneri stavano lavorando per implementare PTP, abbiamo rapidamente scoperto che i componenti standard non erano progettati per gestire PTP su larga scala“.
Una delle tecnologie sviluppate da Meta per supportare l’iniziativa è un dispositivo specializzato chiamato Time Appliance. Secondo l’azienda, è progettato per aiutare i server a determinare con precisione l’ora corrente e ad attenuare quindi le imprecisioni permaste con l’utilizzo di PTP. Il dispositivo svolge il compito con l’aiuto di un orologio atomico, un tipo di orologio estremamente preciso che misura il tempo osservando i cambiamenti nelle proprietà degli atomi.
Meta ha rilasciato il design di Time Appliance e i dettagli sulle altre tecnologie connesse su GitHub come parte dell’iniziativa con una licenza open source.
L’immagine utilizzata a corredo dell’articolo è stata realizzata da Meta ed è pubblicata in questa pagina.