Network Time Protocol

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Network Time Protocol , în acronim NTP , este un protocol pentru sincronizarea ceasurilor computerelor într-o rețea cu comutare de pachete , prin urmare cu timpi de latență variabili și nesigure. NTP este un protocol client - server care aparține stratului de aplicație și ascultă pe portul UDP 123.

Operațiune

Arhitectura serviciului NTP

NTP este unul dintre cele mai vechi protocoale încă în uz și este acum la a patra versiune. A fost dezvoltat la Universitatea din Delaware de către Dave Mills, care își urmărește și astăzi dezvoltarea. Operațiunea se bazează pe detectarea timpilor de latență în tranzitul pachetelor în rețea. Folosește timpul universal coordonat și, prin urmare, este independent de fusurile orare. În prezent, este capabil să sincronizeze ceasurile computerului pe internet într-o marjă de 10 milisecunde și cu o precizie de cel puțin 200 de microsecunde într-o rețea LAN în condiții optime.

Diferitele servere NTP sunt organizate într-o structură ierarhică a „straturilor”, unde stratul 1 este sincronizat cu o sursă de timp externă, cum ar fi un ceas atomic , GPS sau un ceas radio controlat , stratul 2 primește datele de timp din stratul 1 server și așa mai departe. Un server se sincronizează comparându-și ceasul cu cel al altor servere cu nivel superior sau același strat. Acest lucru vă permite să creșteți precizia și să eliminați orice servere incorecte.

Un server NTP poate estima și compensa erorile sistematice ale ceasului hardware al sistemului, care este de obicei de calitate slabă.

Într-o mașină care acceptă NTP, serverul constă dintr-un proces care funcționează la nivel de utilizator, precum și din alte funcții auxiliare. Pentru a obține cele mai bune performanțe, este util ca partea referitoare la sincronizarea ceasului să fie implementată în nucleul sistemului de operare , mai degrabă decât încredințată unui proces de utilizator (toate versiunile recente ale nucleului Linux au această caracteristică). Datele pe 64 de biți schimbate de protocol sunt împărțite în 32 de biți care definesc secundele și alți 32 de biți pentru partea zecimală, putând astfel să reprezinte un interval de 2 32 și o rezoluție teoretică de timp de 2-32 secunde. La fiecare 2 32 de secunde se repetă intervalul de timp descris de protocol, deci este necesar să specificați la ce perioadă se referă. Aceasta nu este o problemă, deoarece 2 32 de secunde sunt egale cu aproximativ 136 de ani.

Detaliile despre funcționarea NTP sunt definite de RFC-uri : RFC 778 , RFC 891 , RFC 956 , RFC 1305 și RFC 5905 (anul 2010). NTP nu trebuie confundat cu protocoalele de zi ( RFC 867 ) și de timp ( RFC 868 ). O versiune simplificată a acestui protocol care nu necesită stocarea datelor între două comunicații succesive este Simple Network Time Protocol , SNTP ( RFC 1361 , RFC 1769 și RFC 2030 ), utilizat în sistemele încorporate unde nu este necesară o precizie mare. Mai mult, SNTP poate fi utilizat pe sisteme care acționează doar ca clienți NTP sau doar ca servere (echipamente dedicate care primesc ora de la un ceas extern și îl redistribuie prin NTP).

Implementare practică

Implementarea funcțiilor client și server NTP sunt disponibile pentru diferite sisteme de operare, inclusiv Windows , Linux și MacOS . Există, de asemenea, dispozitive independente concepute pentru a îndeplini funcția unui server NTP.

Mai jos sunt procedurile și comenzile care pot fi utilizate pentru a vă sincroniza computerul cu un server NTP.

Linux

Soluția preferată este utilizarea demonului NTP, ntpd , configurând unul sau mai multe servere NTP de referință în fișierul său de configurare /etc/ntpd.conf. În acest fel, pe lângă actualizarea ceasului sistemului, ntpd estimează eroarea sistematică și este capabilă să o corecteze, evitând o tendință neregulată a timpului și îmbunătățind precizia atunci când computerul nu este conectat la rețea.

Pentru a sincroniza manual ceasul sistemului cu cel al unui server, din consolă , cu privilegii de root , lansați comanda:

Această comandă este adesea utilizată într-un script de pornire, înainte de a începe ntpd.

De asemenea, este posibil să introduceți ntpdate în crontab pentru a menține automat ceasul actualizat.

O comandă mai veche prezentă în unele distribuții, dar cu sintaxă similară cu ntpdate , este netdate .

Cu comanda hwclock , puteți transfera, de asemenea, ora corectă la ceasul BIOS , astfel încât ceasul să fie corect atunci când computerul repornește. Această comandă este uneori plasată în scripturi care se execută la închiderea sistemului de operare.

Windows 95/98 / NT

Aceste sisteme de operare nu implementează un client NTP, care, prin urmare, trebuie instalat separat. Un client cu descărcare gratuită și open source este: Nettime

Windows XP / 2000/2003 / Vista / 2008

Aceste versiuni implementează standard un client NTP. În Windows XP , pentru a activa sincronizarea automată, deschideți secțiunea de dată și oră din panoul de control . Deschideți fila Internet Time și activați opțiunea Sincronizare automată cu serverul de timp . Adesea serverele de referință prestabilite de Windows XP nu funcționează, motiv pentru care în Italia este recomandabil să setați manual unul dintre serverele „NTP POOL PROJECT” activ pentru Italia ( http://www.pool.ntp.org/ zone / it ) (de ex. 0.it.pool.ntp.org, 1.it.pool.ntp.org, 2.it.pool.ntp.org, 3.it.pool.ntp.org)

Puteți obține mai multe informații direct pe site-ul de asistență tehnică Microsoft.

În Windows 2000 , din linia de comandă este posibil să emiteți comenzi:

net time /setsntp:ntp1.inrim.it

net stop w32time

net start w32time

Pentru a vizualiza tipul de server ntp curent:

net time /querysntp

În Windows 2003 , din serviciile de sistem, puteți porni serviciul „Windows Time” și puteți configura adresa serverului NTP.

În Windows7 și Windows 2008 comanda net time / querysntp este depreciată și înlocuită cu w32tm / query / status

Mac OS X

Sistemul de operare macOS este compatibil UNIX (în special nucleul derivă dintr-un sistem BSD ), deci se aplică aceeași comandă descrisă pentru Linux .

În „Preferințe sistem” faceți clic pe pictograma „Data și ora”. În panoul „Data și ora” din caseta de dialog, activați caseta de selectare „Setați automat data și ora” și introduceți numele serverului NTP în câmpul de text. Puteți alege dintre cele furnizate sau introduceți numele complet al serverului.

Elemente conexe

linkuri externe

Telematică Portal telematic : accesați intrări Wikipedia care vorbesc despre rețele, telecomunicații și protocoale de rețea