Introduzione al Network Time Protocol (NTP)

Network Time Protocol (NTP) è uno dei protocolli più vecchi di Internet ancora oggi utilizzati. Sviluppato dal dott. David Mills dell'Università del Delaware, è stato costantemente utilizzato e aggiornato da 1985. NTP è un protocollo progettato per sincronizzare gli orologi su computer e reti attraverso Internet o reti locali (LAN).

NTP utilizza un algoritmo (l'algoritmo di Marzullo) per sincronizzare il tempo su una rete utilizzando scale temporali come UTC (Coordinated Universal Time o Temps Universel Coordonné) e può supportare tali funzioni come secondi intercalati - aggiunti per compensare il rallentamento della rotazione terrestre.

NTP (la versione 4 è la più recente) può mantenere l'ora su Internet pubblica entro 10 millisecondi (1 / 100 di un secondo) e può funzionare anche su LAN con precisione di microsecondi 200 (1 / 5000 di secondo) in condizioni ideali .

I time server NTP funzionano all'interno della suite TCP / IP e si basano su UDP (User Datagram Protocol). Una forma meno complessa di NTP denominata SNTP (Simple Network Time Protocol) che non richiede l'archiviazione di informazioni sulle comunicazioni precedenti, necessaria per NTP, viene utilizzata in alcuni dispositivi e applicazioni in cui i tempi di alta precisione non sono altrettanto importanti ed è anche incluso come standard nel software Windows (anche se le versioni più recenti di Microsoft Windows hanno l'NTP completo installato e il codice sorgente è gratuito e facilmente disponibile su Internet).

La sincronizzazione dell'ora con NTP è relativamente semplice, sincronizza il tempo con riferimento a una sorgente di clock affidabile. Questa fonte potrebbe essere relativa (l'orologio interno di un computer o l'ora di un orologio da polso) o assoluta (una sorgente di clock UTC, come un orologio atomico, che sia accurata come è umanamente possibile).

Gli orologi atomici sono i dispositivi di cronometraggio più assoluti. Essi funzionano sul principio che l'atomo, cesio-133, ha un numero esatto di cicli di radiazioni ogni secondo (9,192,631,770). Questo è dimostrato così accurata Sistema internazionale di unità (SI) e 'stato definito il secondo come la durata dei cicli di radiazione 9,192,631,770 dell'atomo di cesio-133.

Tuttavia, gli orologi atomici sono estremamente costosi e generalmente si trovano solo nei laboratori di fisica su larga scala. Tuttavia, NTP può sincronizzare le reti con un orologio atomico utilizzando la rete Global Positioning System (GPS) o la trasmissione radio specializzata.

Il più diffuso è il sistema GPS che consiste di un numero di satelliti che forniscono accurate informazioni di posizionamento e la posizione. Ogni satellite GPS può farlo solo utilizzando un orologio atomico, che a sua volta può essere può essere utilizzato come riferimento temporale.

Un ricevitore GPS tipico in grado di fornire informazioni di temporizzazione entro pochi nanosecondi di UTC finché c'è un'antenna situata con una buona vista del cielo.

Ci sono anche una serie di trasmissioni radio nazionali di tempo e frequenza che possono essere utilizzate per sincronizzare un server NTP. In Gran Bretagna il segnale (chiamato MSF) è trasmesso dal National Physics Laboratory in Cumbria che funge da riferimento temporale nazionale del Regno Unito, ci sono anche sistemi simili in Colorado, Stati Uniti (WWVB) e Francoforte, in Germania (DCF-77). Questi segnali forniscono all'ora UTC una precisione di microsecondi 100, tuttavia il segnale radio ha una portata limitata ed è vulnerabile alle interferenze.

La distanza dall'orologio di riferimento è nota come livelli di strato e esistono per prevenire i cicli nell'NTP e confermare l'accuratezza. Stratum 0 sono dispositivi come orologi atomici collegati direttamente a un computer. Stratum 1 sono computer collegati a dispositivi 0 stratum (come tramite un ricevitore GPS), mentre Stratum 2 sono computer che inviano richieste NTP ai server Stratum 1. NTP può supportare fino a strati 256.

Tutte le versioni di Microsoft Windows poiché 2000 includono il servizio Ora di Windows (w32time.exe) che ha la capacità di sincronizzare l'orologio del computer con un server NTP. Va notato che Microsoft consiglia di utilizzare riferimenti temporali esterni piuttosto che quelli basati su Internet in quanto questi non possono essere autenticati. Sono disponibili server NTP specializzati in grado di sincronizzare l'ora sulle reti utilizzando il segnale MSF (o equivalente) o GPS.

Questo post è stato scritto da

Richard Williams N

Richard N Williams è un autore tecnico e specialista nel settore della sincronizzazione server NTP e ora. Richard Williams N su Google+