Il Network Time Protocol (NTP) e' un sistema per la sincronizzazione del tempo di orologio dei calcolatori attraverso la rete Internet, sviluppato principalmente presso l'universita' del Delaware negli Stati Uniti. Ne sono state definite 3 versioni: la 1 nel 1988, la 2 nel 1989 e la 3 nel 1992. la versione corrente e' la versione 3, compatibile con le precedenti. Per facilitare l'uso dell'NTP sui personal computer e' stata definita la versione semplificata Simplified NTP (SNTP 1995). Le principali caratteristiche dell'NTP sono le seguenti.
principio di funzionamento
Un server primario NTP, detto anche di strato 1, e' un calcolatore
collegato ad un orologio di alta precisione di riferimento e dotato di
un software NTP. Altri calcolatori, detti di strato 2, dotati di un software
similare, chiedono la sincronizzazione del proprio tempo di sistema al
server primario che risponde con dei messaggi di sincronizzazione, il tutto
in modo automatico. I calcolatori di strato 2 possono a loro volta sincronizzare
altri calcolatori, detti di strato 3, e cosi' via fino a 16 strati. Man
mano che ci si allontana dallo strato 1 la precisione della sincronizzazione
diminuisce. In questa struttura, ciascun calcolatore puo' essere contemporaneamente
server per le macchine di strato inferiore che si sincronizzano su di esso
e client per la macchina di strato superiore a cui esso stesso si sincronizza.
Ogni server puo' avere alcune centinaia di client, quindi il numero di
macchine sincronizzabili indirettamente da un singolo server primario e'
praticamente illimitato. Per rendere il sistema piu' affidabile, un client
puo' avere piu' di un server di strato superiore . In questo caso, il software
NTP misura continuamente le caratteristiche di stabilita' e precisione
dei possibili server, scegliendo di volta in volta come riferimento quello
con le migliori caratteristiche.
schemi di sincronizzazione
La figura mostra alcuni casi tipici di schemi di sincronizzazioni
con NTP.
Nel caso BX un singolo calcolatore BX e' stato sincronizzato sul server
A1 di strato 1.
Nel caso BY per avere una maggiore affidabilita' di sincronizzazione,
il calcolatore BY e' stato configurato con due possibili server A1 e A2.
Nel caso LANZ un'organizzazione, dovendo sincronizzare i calcolatori
della propria rete locale, ha scelto una soluzione classica: ha definito
due calcolatori della propria rete (B1 e B2) come server locali NTP, sincronizzandoli
su tre server primari (A1, A2, A3), poi ha sincronizzato il resto dei propri
calcolatori (C1, C2, ... Cn) sui server locali (B1, B2). Questa configurazione
riduce il traffico di rete verso i server primari e rende la configurazione
di tutti i calcolatori della rete locale dipendente solo dai server locali
B1 e B2, che possono essere facilmente riconfigurati su altri server esterni
in caso di necessita'.
che cosa richiede
Per realizzare un client o un server non primario e' sufficiente
installare e configurare un software per NTP. Per realizzare un server
primario, oltre al software, occorre un orologio di riferimento esterno:
sono possibili diverse scelte a seconda delle possibilita' e delle necessita'.
Esistono due tipi di software per NTP: completo e semplificato (SNTP). Il tipo completo ha tutte le funzionalita' previste dal protocollo NTP. Il tipo semplificato ha funzionalita' ridotte, infatti puo' funzionare solo come client ed avere definito un solo server alla volta.
Unix
Alcuni sistemi operativi di tipo UNIX includono gia' le funzioni
NTP (ad es. Digital Unix (ex OSF/1), Ultrix), anche se spesso si tratta
di vecchie versioni di software NTP. Per quelli che non le includono (ad
es. AIX 3.2), e' disponibile gratuitamente presso l'universita' del Deleware
(US) il software xntp che implementa in modo completo l'NTP.
Frequentemente, vengono rilasciate nuove versioni di questo software
che e' ancora in piena evoluzione. Poiche' l'xntp contiene l'algoritmo
di crittografia DES (Data Encryption System), la cui esportazione dagli
Stati Uniti e' vietata, in modo del
tutto saltuario e contestualmente al rilascio di una nuova versione, ne
viene rilasciata una di pari livello privata del DES. Attualmente (23/2/96)
la versione esportabile e' allineata alla piu' recente disponibile: la xntp3.5a.
Nel mese di luglio 1995 e' stato completato presso il CSTV lo sviluppo
di un nuovo driver per l'xntp che consente la sincronizzazione via modem
al segnale di tempo CTD dell'Istituto Elettrotecnico
Nazionale "Galileo Ferraris". L'aggiornamento e' stato inviato
all'Universita' del Delaware ed e' stato inserito nelle versioni piu' recenti
(xntp3.5a).
Il software xntp comprende tra l'altro i seguenti programmi corredati di un'ampia documentazione.
Per realizzare un server primario, l'xntp accetta oltre 20 tipi diversi di orologi esterni di riferimento su cui sincronizzarsi: ricevitori radio GPS, GEOS, OMEGA, CHU, WWV/H/B, servizi via modem ACTS, CTD, orologi atomici.
Windows 95
Si puo' utilizzare il programma gratuito (freeware) 4th
Dimension oppure la versione a pagamento (shareware) di NTP
semplificato a 32 bit (NTSNTP). E' necessario poi configurare il protocollo
TCP/IP nella propria installazione di Windows 95. Per la configurazione vedere:
come configurare l'SNTP.
Windows NT
Windows for Workgroups
Catalogo del
software di sincronizzazione
Server
NTP primari e secondari nel mondo
La home page
dell'NTP
News sull'NTP
Questi documenti RFC (Request For Comment (le norme di Internet)) contengono
le specifiche dettagliate del Network Time Protocol nelle varie versioni.
Si possono utilizzare gli stessi programmi per Windows 95.
Esiste una versione a pagamento (shareware) di NTP
semplificato a 16 bit (WINSNTP), che richiede come prerequisito l'installazione
di un TCP/IP Winsocket compatibile (ad es. il TCP/IP32
della Microsoft). Per l'installazione vedere: come
configurare l'SNTP.
Altre informazioni
Elenco molto ampio di tutti i tipi di software per la sincronizzazione
della maggior parte di tipi di calcolatori sia con NTP, sia con altri metodi.
Elenco di server NTP di tutto il mondo dove sincronizzarsi.
Un sito www dedicato al Network Time Protocol a cura degli
ideatori del protocollo.
Lista di discussione Usenet News comp.protocols.time.ntp.
F.
Pollastri - Il tempo di Internet