Passa al contenuto principale

RFC 1305 - Protocollo di Tempo di Rete (Versione 3)

  • Stato: Historic
  • Pubblicato: March 1992
  • Stream: Legacy
  • Sostituisce: RFC958, RFC1059, RFC1119
  • Sostituito da: RFC5905
  • Errata: Nessun errata

Nota

Questo documento consiste in una rappresentazione approssimativa in ASCII del documento PostScript con lo stesso nome. È fornito per comodità e per l'uso nelle ricerche, ecc. Tuttavia, la maggior parte delle tabelle, figure, equazioni e didascalie non sono state rese e la paginazione e le intestazioni di sezione non sono disponibili.

Sommario

Questo documento descrive il Protocollo di Tempo di Rete (NTP), specifica la sua struttura formale e riassume informazioni utili per la sua implementazione. NTP fornisce i meccanismi per sincronizzare il tempo e coordinare la distribuzione del tempo in un grande e diversificato internet operante a velocità da ordinarie a onde luminose. Utilizza un design a tempo restituibile in cui una sottorete distribuita di server di tempo operanti in una configurazione gerarchica master-slave auto-organizzante sincronizza gli orologi locali all'interno della sottorete e agli standard di tempo nazionali via cavo o radio. I server possono anche ridistribuire il tempo di riferimento tramite algoritmi di routing locali e demoni di tempo.

Stato di questo Memorandum

Questo RFC specifica un protocollo standard track IAB per la comunità Internet e richiede discussioni e suggerimenti per miglioramenti. Si prega di fare riferimento all'edizione corrente degli "Standard di Protocollo Ufficiali IAB" per lo stato di standardizzazione e lo stato di questo protocollo. La distribuzione di questo memorandum è illimitata.

Parole Chiave

sincronizzazione dell'orologio di rete, distribuzione del tempo standard, architettura tollerante ai guasti, stima della massima verosimiglianza, oscillatore disciplinato, protocollo internet, reti ad alta velocità, specifica formale.

Prefazione

Questo documento descrive la Versione 3 del Protocollo di Tempo di Rete (NTP). Sostituisce la Versione 2 del protocollo descritta in RFC-1119 datato settembre 1989. Tuttavia, non cambia il protocollo in modo significativo né rende obsolete le versioni precedenti o le implementazioni esistenti. La motivazione principale per la nuova versione è quella di raffinare i modelli di analisi e implementazione per nuove applicazioni a velocità di rete molto più elevate fino al regime gigabit al secondo e fornire la maggiore stabilità, accuratezza e precisione richieste a tali velocità. In particolare, le fonti di errori di tempo e frequenza sono state esaminate rigorosamente e i limiti di errore stabiliti al fine di migliorare le prestazioni, fornire un modello per le affermazioni di correttezza e indicare la qualità del cronometraggio all'utente. La revisione incorpora anche due nuove funzionalità opzionali, (1) un algoritmo per combinare gli offset di un certo numero di server di tempo peer al fine di migliorare l'accuratezza e (2) algoritmi di orologio locale migliorati che consentono di aumentare sostanzialmente gli intervalli di polling su tutti i percorsi di sincronizzazione al fine di ridurre il sovraccarico di rete. Una panoramica delle modifiche, che sono descritte in dettaglio nell'Appendice D, segue:

1. Miglioramenti dell'Algoritmo dell'Orologio Locale

Nella Versione 3, l'algoritmo dell'orologio locale è stato revisionato per migliorare la stabilità e l'accuratezza. L'Appendice G presenta un modello matematico dettagliato ed un esempio di progettazione che è stato perfezionato con l'aiuto dell'analisi del controllo a retroazione e simulazione estensiva utilizzando dati raccolti su percorsi Internet ordinari. La Sezione 5 di RFC-1119 sull'orologio locale NTP è stata completamente riscritta per descrivere il nuovo algoritmo. Poiché il nuovo algoritmo può risultare in tassi di messaggi molto inferiori a quelli vecchi, è altamente raccomandato che vengano utilizzati nelle nuove implementazioni. Si noti che l'uso del nuovo algoritmo non influisce sull'interoperabilità con le versioni precedenti o le implementazioni esistenti.

2. Algoritmo di Combinazione dell'Orologio

Nella Versione 3, un nuovo algoritmo per combinare gli offset di un certo numero di server di tempo peer è presentato nell'Appendice F. Questo algoritmo è modellato su quelli utilizzati dai laboratori di standard nazionali per combinare gli offset ponderati da un certo numero di orologi standard per costruire una scala temporale di laboratorio sintetica più accurata di quella di qualsiasi orologio separatamente. Può essere utilizzato in un'implementazione NTP per migliorare l'accuratezza e la stabilità e ridurre gli errori dovuti a percorsi asimmetrici nell'Internet. Il nuovo algoritmo è stato simulato utilizzando dati raccolti su percorsi Internet ordinari e, insieme al nuovo algoritmo di orologio locale, implementato e testato nei server di tempo Fuzzball che ora funzionano nell'Internet. Si noti che l'uso del nuovo algoritmo non influisce sull'interoperabilità con le versioni precedenti o le implementazioni esistenti.

3. Chiarimenti delle Procedure

Diverse incoerenze ed errori minori nelle versioni precedenti sono stati corretti nella Versione 3. La descrizione delle procedure è stata riscritta in pseudo-codice aumentato da commenti in inglese per chiarezza e per evitare ambiguità. L'Appendice I è stata aggiunta per illustrare le implementazioni in linguaggio C dei vari algoritmi di filtraggio e selezione suggeriti per NTP. Informazioni aggiuntive sono incluse nella Sezione 5 e nell'Appendice E, che include il materiale didattico precedentemente incluso nella Sezione 2 di RFC-1119, così come molto nuovo materiale che chiarisce l'interpretazione delle scale temporali e dei secondi intercalari.

4. Supporto per Secondi Intercalari e Oscillatore di Precisione

Sono state apportate modifiche minori agli algoritmi di orologio locale della Versione 3 per evitare problemi osservati quando i secondi intercalari vengono introdotti nella scala temporale UTC e anche per supportare un oscillatore di precisione ausiliario, come un orologio al cesio o un ricevitore di temporizzazione, come base di tempo di precisione. Inoltre, sono state apportate modifiche ad alcune procedure descritte nella Sezione 3 e nelle procedure di filtro dell'orologio e di selezione dell'orologio descritte nella Sezione 4. Sebbene queste modifiche siano state apportate per correggere bug minori trovati come risultato dell'esperienza e siano raccomandate per nuove implementazioni, non influenzano l'interoperabilità con le versioni precedenti o le implementazioni esistenti se non in modi minori (almeno fino al prossimo secondo intercalare).

5. Miglioramenti della Delimitazione degli Errori

Nella Versione 3, sono state apportate modifiche al modo in cui il ritardo, l'offset e la dispersione sono definiti, calcolati e elaborati al fine di delimitare in modo affidabile gli errori inerenti alle procedure di trasferimento del tempo. In particolare, le accumulazioni di errore sono state spostate dal calcolo del ritardo al calcolo della dispersione ed entrambe incluse nelle procedure di filtro dell'orologio e di selezione. La procedura di selezione dell'orologio è stata modificata per rimuovere il primo dei due passaggi di ordinamento/scarto e sostituire con un algoritmo proposto per la prima volta da Marzullo e successivamente incorporato nel Digital Time Service. Queste modifiche non influiscono in modo significativo sul normale funzionamento o compatibilità con varie versioni di NTP, ma forniscono la base per dichiarazioni formali di correttezza come descritto nell'Appendice H.

Sommario

Sezioni Principali

Appendici

Indirizzo dell'Autore

David L. Mills
Dipartimento di Ingegneria Elettrica
Università del Delaware
Newark, DE 19716
Telefono: (302) 451-8247
Email: [email protected]