18
Page 1 of 18 Universitatea POLITEHNICA din Bucureşti Facultatea de Electronică, Telecomunicaţii şi Tehnologia Informaţiei Mecanisme de sincronizare în reţelele de calculatoare Băicoianu Raluca-Lavinia Master I IISC

Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 1 of 18

Universitatea POLITEHNICA din Bucureşti

Facultatea de Electronică, Telecomunicaţii şi Tehnologia Informaţiei

Mecanisme de sincronizare în

reţelele de calculatoare

Băicoianu Raluca-Lavinia

Master I IISC

Page 2: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 2 of 18

Cuprins

Introducere în problema sincronizarii reţelelor de calculatoare

1. Comparaţie PTP (Precision Time Protocol )/ NTP (network Time Protocol)

2. Măsurarea şi controlul dispozitivelor de sincronizare

3. Metodologii de sincronizare

3.1 Sincronizare de bază

3.1.1 Ştampile de timp şi configuratii în exclusivitate software

3.1.2 Configurare hardware

3.2 Boundary clocks

3.3 Transparent switches

3.4 Mecanismul "peer delay"

4. Profiluri PTP

5. Utilizarea PTP si a NTP

6.Concluzii

Bibliografie

Page 3: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 3 of 18

Probleme de sincronizare în reţelele de calculatoare

Introducere în problema sincronizării reţelelor de calculatoare

Este dificil de estimat importanţa sincronizării timpului în sistemele moderne de

calculatoare. Viaţa noastră depinde acum de tranzacţii financiare, telecomunicaţii, fabricaţii de

mare viteză, care sunt conduse de rapiditate, dispozitive puternice ale calculatoarelor coordonate

în timp unele cu celelalte. De asemeni, avem nevoie de sincronizarea informaţiilor de securitate,

autentificări şi semnături digitale, sincronizarea aplicaţiilor industriale (transport, energie, gaze).

Ceasul fizic ataşat unui calculator este folosit pentru marcarea temporală a oricărui

eveniment apărut în cadrul unui proces ce se execută la hostul respectiv. Rezoluţia ceasului

trebuie să fie mai mică decât rată la care apar evenimentele. Se pune problema comparării

marcajelor generate de ceasuri similare din punctual de vedere al construcţiei. Pentru aceasta

trebuie luat în considerare faptul că nu este suficientă cunoaşterea deplasamentului datorat

momentelor de iniţializare diferite. În practică ceasurile nu ticăie exact cu aceeasi frecventă:

diferenţe infime pot deveni de neneglijat prin acumularea lor. Mai trebuie ţinut cont si de

deviaţia ratei ceasului. De exemplu pentru ceasurile cu cuarţ deviaţia este de 10-6

secunde. Cele

mai exacte ceasuri sunt ceasurile atomice care masoară timpul cu o acurateţe de 1 la 1013

. Pentru

a putea stabili un etalon în ceea ce priveşte măsurarea timpului s-a format UTC, un standard

internaţional care se bazează pe timpul atomic, dar care în anumite condiţii (inserţia/extragerea

unei secunde) poate ţine pasul cu timpul astronomic. Semnalele UTC sunt emise periodic prin

staţii radio şi sateliţi (GOES, GPS). în cazul în care timpul recepţionat de la serviciu este mai

mare decât timpul propriu, se va sări la timpul respective. NTP permite sincronizarea cu

acurateţe la UTC a clienţilor din Internet. [1]

Pentru sistemele moderne de Unix, clientul NTP este implementat ca un proces daemon

care rulează continuu în spațiu utilizator (ntpd). Toate versiunile recente de Linux, BSD, Mac

OS X, Solaris și AIX sunt puse în aplicare în acest mod. Pachet NTP este o datagrama UDP,

efectuat pe portul 123 [6].

Microsoft Windows Microsoft Windows NT 4.0 nu a venit cu o punere în aplicare NTP.

Implementare de referință a NTP poate fi utilizat pe sistemele de NT4. [7]

Toate versiunile Microsoft Windows din Windows 2000 și Windows XP includ serviciul

Windows Time ("W32Time"), [3], care are capacitatea de a sincroniza ceasul computerului la un

server NTP. Versiunea în Windows 2000 și Windows XP implementează doar simplă NTP, și

încalcă mai multe aspecte ale NTP versiunea 3 de iarnă [2] Începând cu Windows Server 2003 și

Windows Vista, este inclus o punere în aplicare completă a NTP [4].

Cu toate acestea, Microsoft nu garantează că punerea în aplicare a acestora va fi mult mai precisa

Page 4: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 4 of 18

decat 2 secunde. [5] În cazul în care se dorește o mai mare acuratețe, Microsoft recomandă să

utilizați o alta aplicaţie NTP. [9]

De la prima specificare completă a NTP ( Network Time Protocol) versiunea 1 şi a

algoritmului care-l însoteşte apărut în RFC 1059 în anul 1988, NTP a jucat un rol important în

sincronizarea timpului pentru menţinerea ceasurilor reţelei de calculatoare sincronizate la un

ordin mai mic decat milisecunde unul cu celalalt. NTP a fost dezvoltat pentru un vast numar de

sisteme dealungul timpului. Cand utilizatorii doresc să coordoneze evenimente în timp între mai

multe sisteme, ei au mai multe opţiuni pentru a rezolva problema, fiecare cu compromisul ei.

NTP trebuie să nu eşueze în cazul unei întreruperi de conectivitate, să aibă protecţie contra

interferenţelor cu serviciul de timp. NTP se aplica în reţele de servere cu acces la Internet, în care

serverele primare sunt conectate la un receptor UTC, iar serverele secundare sunt sincronizate cu

primele. O subretea cu mai multe straturi este reconfigurabila în cazul unui esec.NTP utilizeaza

trei moduri de sincronizare:

1.Multicast destinat LAN-urilor de viteză mare, care are o acurateţe redusă, dar care este

suficienă în cele mai multe cazuri.

2. Apel de procedură- similar cu algoritmul Christian şi se aplică atunci cand hardware-ul

nu suportă multicast sau se doreşte obţinerea unei acurateţi mai bune.

3. Simetric- pentru servere care oferă timpul în LAN-uri si la nivele înalte ale subreţelei

de sincronizare

Una din alternativele NTP este PTP (Precision Time Protocol). PTP este definit de

standardul IEEE în noiembrie 2002 şi s-a bazat pe prototipurile de mai înainte ale Agilent

Technologies. O revizuire a PTP a fost publicată în 2008 şi este cunoscută ca PTP versiunea 2

sau IEEE 1588-2008. IEEE 1588 este proiectat pentru a umple o nișă nu sunt bine deservite de

către una dintre cele două protocoale dominante, NTP și GPS. IEEE 1588 este proiectat pentru

sistemele locale care necesită precizie în afară de cele realizabile cu ajutorul NTP. Acesta este,

de asemenea, proiectat pentru aplicații care nu pot suporta costul unui receptor GPS la fiecare

nod, sau pentru care semnalele GPS sunt inaccesibile. [10]

1. Comparaţie PTP/NTP

PTP şi NTP sunt similar prin faptul că ambele se bazează pe transmisiuni de pachete şi

trimiterea de ştampile printr-o reţea de la un dispozitiv de referinţă, către unul sau mai multe alte

dispozitive. În plus, ambele fac sincronizarea ceasurilor dispozitivelor offset-ului de timp şi

intarzierii reţelei. Ambele suportă mai multe tipuri de dispozitive cu precizii şi rezoluţii diferite.

Fiecare protocol are propriile puncte forte şi alegerea unuia în detrimentul celuilalt se

face prin evaluarea mediului sistemului, a capacităţilor acestuia.

PTP este ales cand performanţele de sincronizare ale sistemului trebuie să depăşească

ordinul de precizie al NTP şi anume ordinul milisecundelor. Cand utilizăm un sistem hardware

PTP, care are capacitatea de a trimite stampile în pachete. Dispozitivele care utilizează PTP într-

un LAN (Local Area Network) poate sincroniza ceasurile acestei reţele la un ordin de mărime

Page 5: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 5 of 18

mai mic decat zeci de nanosecunde. Fără ştampile hardware, referindu-ne la configurare

exclusive software, implementările PTP pot obţine precizii mai mici decât milisecunde.

NTP rămâne o tehnologie populară de sincronizare, chiar dacă implementarile PTP au

fost făcute disponibile designerilor de sisteme în mai multe platforme, ambele comerciale şi

constituind implemetări la fel de disponibile. [1]

2. Măsurarea şi controlul dispozitivelor de sincronizare

Măsurarea si controlul dispozitivelor a fost întotdeauna o avangarda a sincronizarii de

mare precizie. Pentru a obţine gradul de sincronizare necesar tipului de dispozitiv, semnale

trimise prin cabluri specializate pot fi utilizate pentru sincronizarea evenimentelor dintre

dispozitive. Aceste cabluri utilizate exclusive pentru sincronizarea evenimentelor sunt adesea

potrivite în lungime pentru a se asigura că intarzicerea propagării este una compatibilă.

Sincronizarea utilizand aceste cabluri dedicate se obtine cu o precizie foarte ridicată, iar

evenimentele pot fi coordonate intre ele cu un ordin mai mic decat picosecunde, peste dispozitive

aflate în vecinatate. Acest tip de sincronizare poartă numele de sincronizare bazate pe semnal.

În timp ce este imbatabil pentru aplicaţii care necesită cea mai precisă sincronizare

posibilă, sincronizarea bazată pe semnal poate deveni imposibil de utilizat. Cablurile dedicate

pentru sincronizarea separată a dispozitivelor pot fi costuri prohibitive şi sincronizarea bazată pe

semnale necesită suport hardware şi software specializat pentru a genera şi receptiona semnale

prin cablu.

Cablul însuşi poate fi adesea subiectul variaţiei întârzierilor de propagare în timp sau

de temperatură şi ca multe dispozitive sunt adăugate sistemului, complexitatea cablării multiple a

dispozitivelor creşte, ceea ce înseamnă o mentenanţă mai dificilă şi efort în plus în ceea ce

poriveşte depanarea problemelor. Sincronizarea bazată pe semnal necesită ca echipamentele să

nu comunice unele cu altele şi sa nu poata fi măsurat pe distanţe lungi, când îl comparăm cu alte

mecanisme de sincronizare.

Între timp, cu Ethernet omniprezent în laboratoarele şi fabricile unde se desfăşoară

controlul şi măsurătorile dispozitivelor, o necessitate apăruta pentru ca aceste dispozitive să

poate să utilize o reţea LAN sau WAN pentru comunicaţii de date şi control.

NTP este adesea obligat să seteze timpul sistemului pentru aceste dispozitive, dar se

păstrează necesitatea unui eveniment de stocare dedicate. În ciuda prezentei tuturor

ingredientelor de baza ale evenimentului pentru sincronizarea coordonată , cronometre distribuite

( uneori se referă la sincronizarea bazată pe timp ), o tehnologie acceptabilă care poate să utilize

aceasta infrastructură pentru a putea înlocui sincronizarea bazată pe semnal. NTP utilizează

algoritmul Marzullo și este proiectat pentru a rezista efectelor de latență variabilă. NTP poate

menține, de obicei, în termen de timp pentru a zeci de milisecunde pe internet publice și poate

atinge o acuratețe milisecundă în rețele locale, în condiții ideale.[1]

Pentru ca implementarea bazată pe semnal impune constrângerile descrise anterior,

soluţiile bazate pe timp care utilizează Ethernet au fost investigate mai departe ca o soluţie de

Page 6: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 6 of 18

sincronizare. La prima vedere NTP pare a fi un bun candidat pentru o soluţie de sincronizare de

cost mic, bazată pe timp şi aceasta pentru numeroase aplicaţii. Sincronizarea bazată pe semnal

totuşi, furnizează un nivel de precizie foarte ridicat, NTP versiunea 3 furnizând un nivel de

precizie doar de ordinul milisecundelor.Această precizie este insuficientă pentru aplicaţiile care

utilizează soluţii bazate pe semnal.[11]

PTP a fost construit să indeplinească necesităţile industriale de masură şi control.

Acesta este capabil să obţină o precizie de ordinul nanosecundelor, utilizând o infrastructura

similară cu cea NTP. O privire mai apropiată asupra PTP arată de ce este o masură bună în

măsurarea şi controlul aplicaţiilor.

Introducere în PTP

Primele puncte forte ale designului PTP au fost enumerate în numeroase prezentări şi

documente, inclusive în standardul IEEE 1588.

Pentru a furniza o sincronizare de ordin mai mic decât microsecunde a ceasurilor în timp

real aflate în componentele unei reţele distribuite de măsurare şi control al sistemului.

Să obtină cea mai bună performanţă cu sisteme localizate tipice pentru automatizări

industriale, teste şi măsurători ale mediului

Să fie adaptabil pentru comunicaţii multicast pe suport LAN (incluzând, dar nu se

limitează la Ethernet)

Să furnizeze o instalare simplă

Să suporte sisteme heterogene de ceasuri în care variază precizia, rezoluţia şi stabilitatea

Să impună cereri minime de resurse de reţea şi component ale host-urilor

PTP îndeplineşte aceste puncte utilizând o metodologie robustă de sincronizare, un

algoritm care în mod continuu şi automat menţine ierarhia potrivită a dispozitivelor

pentru acurateţe maximă şi hardware specializat (necesar doar pentru performantă

optimă).

3.1 Metodologii de sincronizare

3.1.1.Sincronizarea de bază

La baza standardului PTP este metodologia de sincronizare. Similar cu alte protocoale de

sincronizare Ethernet, bazate pet timp în ceea ce priveşte conceptul, metodologia de sincronizare

PTP este unică şi depinde oarecum de hardware –ul; folosit şi aplicaţie ( industrie de putere,

telecomunicaţii).

PTP defineşte o ierarhie coordonator-subordonat (master-slave). Coordonatorul serveşte

drept rererinţă de timp pentru mai multe dispozitive. Procesul selectării coordonatorului dintre

dispozitivele participante este definit de algoritmul BMC (Best Master Clock), care este aplicat

pentru fiecare dispozitiv la interval spcifice. Dispozitivele ( adesea referindu-se la ceasuri

Page 7: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 7 of 18

obişnuite) se pot considera ele însele coordonator pentru ca au fost determinate în concordanţă cu

BMC ca având la acest moment cea mai bună abilitate de a păstra timpul faţă de coordonatorul

curent. Ele vor transmite un mesaj anunţ multicast utilizând UDP ( User Datagram Protocol) la

interval configurabile. Alte dispozitive vor procesa aceste anunţuri în conformitate cu BMC şi

vor selecta noul coordonator. Dacă un coordinator va recepţiona un mesaj anunţ de la un alt

potenţial coordinator ( cunoscut ca coordinator strain) şi algoritmul BMC indica acest

coordinator strain ca fiind coordinatorul curent va face tranzitia catre o pozitie de subordonat.

În plus, la mesajul anunţ un ceas coordinator transmite periodic un mesaj Sync utilizând

UDP multicast (by default), care este recepţionat de un ceas subordonat. Fiecare subordonat

utilizează un mesaj Sync pentru a calcula diferenţa dintre ceasul propriu şi ceasul coordonator.

Mesajul conţine o ştampila provenită de la coordinator cu momentul în care a fost eliberat. (t1

din figura 1).

Figura 1 Sincronizarea de bază a schimbului de mesaje

Sursa: [1]

Când subordonatul recepţionează mesajul Sync, înregistreaza tipul recepţionării (t2).

Timpul în mesajul Sync nu reprezintă timpul precis în care mesajul a părăsit dispozitivul,

deoarece acesta nu este cunoscut decât dupa trimiterea mesajului. Coordonatorul trimite apoi

mesajul de Follow-up, care include momentul de timp actualizat în care mesajul Sync părăseşte

coordonatorul . Momentul în care mesajul Sync părăseste coordonatorul este determinat de

hardware-ul specializat sau de driver-ul de reţea. Subordonatul recepţionează mesajul Follow-up

şi utilizează valoarea actuala a t1.

În acest punct subordonatul a avut doua valori de timp (t1 şi t2) şi poate calcula diferenţe

între timekeepers şi coordonator. Din nefericire, offset-ul obtinut din t1 şi t2 include cateva

Page 8: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 8 of 18

cantitati necunoscute de intarzieri de propagare datorate retelei. Pentru a determina aceasta

întârziere şi pentru a calcula offset-ul actual între timekeepers, subordonatul eliberează o cerere

“Delay Request” către coordonator şi notează timpul când a fost trimis (t3) şi apoi timpul când a

fost recepţionat Delay Request (t4) şi eliberează Delay Response catre subordonatul care conţine

t4. Când subordonatul receptionează Delay Response, va deţine patru ştampile de timp- t1,t2,t3

şi t4- şi poate calcula offset-ul între timekeeper-ul sau şi timekeeper-ul masterului, luând în

considerare însa şi o intarziere datorata retelei. [1]

3.1.2 Ştampile de timp şi configuratii în exclusivitate software

Pentru a obtine timpul actual mesajul Sync a fost trimis de master cu scopul de a-l insera

în mesajul “Follow-up”. Masterul trebuie să ştie exact când este capabila reţeaua sa hardware

este capabilă să trimită message Sync. Acest hardware este mult mai probabil interfata fizica de

retea (PHY) sau alt hardware care recunoaste pachetele PTP şi noteaza timpul exact în care ele

au fost trimise sau receptionate. Diferenţa între situaţia în care software-ul masterul PTP iniţiază

trimiterea acestui mesaj ( valoarea estimate a lui t1 într-un mesaj de sincronizare) şi timpul cand

PHY este capabil să trimită mesaje în mediul fizic, nu numai ca va varia dar va fi putin

semnificativa cu privire la precizia mai bună ca ordin decat microsecundele. Pentru aceasta

mesajului Sync message trebuie să-i fie contabilizat timpul petrecut în stivă de reţea pentru a

putea obţine o acurateţe maximă (Vezi figura 2).

Figura 2: Stiva de retea cu stampile de timp asistate hardware

Sursa:[1]

PTP defineşte un alt mecanism de sincronizare putin diferit, care are avantajul unui

suport hardware adiţional. Mesajele Sync şi Follow-up utilizate pentru a calcula offset-ul intre

coordinator şi subordonat asa cum a fost descris mai devreme este utilizat de un Ceas în doi pasi.

Un ceas cu un pas utilizeaza retele hardware specializate nu numai când ştampile de timp PTP

Sync părăsesc dispozitivul, dar şi pentru a modifica ieşirea mesajelor Sync cu valoarea t1 a

timpului actual de plecare (Vezi figura 3).

Page 9: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 9 of 18

Figura 3:Operatii intr-un singur pas

Sursa:[1]

Această valoare este trimisă în mod normal în mesajul Follow-up, dar pentru că sistemul

hardware o face disponibilă în mesajul Sync, mesajul Follow-up va fi inutil. Un dispozitiv

subordonat va trebui să inteleagă că coordonatorul său lucrează ca un ceas într-un singur pas. El

poate determina aceasta prin citirea campului de bit, aflat în headerul mesajului PTP trimis de

către coordonator. Ceasul cu un singur pas ajută la minimizarea traficului reţelei în timp ce se

menţine o performanţă foarte bună în ceeea ce priveşte sincronizarea. Acest tip de ceas este util

pentru cererea de aplicaţii PTP în diverse industrii.

Interfata hardware a retelei PTP poate simplifica stampila de timp a mesajului PTP şi sa-l

coreleze cu mesajul IDs pentru incercarile de mai tarziu ale software-ului PTP. Aceasta

capacitate face posibila operarea masterului PTP în modul “doi pasi” pentru a trimite valoare

precisa t1 în mesajul “Follow-up” catresubordonat. în timp ce gradul de suport hardware nu face

posibila operarea în doi pasi, aceasta poate fi facuta pentru performante superioare în doi pasi, în

comparative cu o implementare bazată în exclusivitate pe software. Un dispozitiv PTP este

considerat a opera ca un ceas în exckusivitate software , dacă nu are suport hardware. Un ceas în

exclusivitate software este limitată la operaţii în doi pasi şi în mod tipic trimite valori t1 în

mesajul Follow-up, care sunt preluate din componentele software, cât mai repede posibil în stiva

software, adesea din nivelul driver. Deşi ceasurile bazate exclusive pe software sunt în mod

evident mai puţin precise decât cele cu asistenţă hardware, acestea sunt capabile încă să obţină o

precizie mai mica de milisecunde. [1]

Page 10: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 10 of 18

Algoritmul BMC

Algoritmul BMC oferă dispozitivelor PTP abilitatea de a menţine ierarhia de sincronizare

dorita la schimbarea conditiilor de retea. Descrierea algoritmului BMC în sine nu sta în scopul

acestui articol, dar putem spune ca algoritmul BMC este un element cheie în ceea ce priveste

simplitatea şi auto-adminitrarea, obiective propuse în PTP. Unele dispozitive PTP actioneaza fie

ca coordinator fie ca subordonat, algoritmul BMC fiind utilizat pentru a determina dacă este

necesara selectarea unui nou master sau dacă un dispozitiv necesită tranziţia de la statul de

coordonator la unul de subordonat. [1]

Schimbarea stării poate apărea ca rezultat al unui numar de condiţii, toate acestea reflectate în

mesajul de anunţ al subalternului sau al potenţialului subaltern. Mesajul de anunt al acestora este

trimis la o rată configurabila, ca parte a protocolului. Mesajul anunt conţine toate informaţiile

necesare pentru ca algoritmul BMC să poată determina dacă subalternul curent rămâne subaltern

sau se va transforma într-un subaltern sau în cazul subalternului, poate asculta un nou subaltern

sau poate deveni el însuşi subaltern . Unul dintre atributele mesajului de anunţ este sursa de timp

a dispozitivului ( GPS, Atomic Ceas sau un oscilator ce ruleaza liber); prioritatea, aşa cum este

ea determinată de administratorul local al PTP-ului; ID-ul ceasului dispozitivului, şi alte attribute

utilizate de către BMC.

A avea un dispozitiv PTP pe care rulează BMC şi trimite mesaje de anunţ, înseamnă că

administratorul trebuie doar să deschidă sistemul şi are déjà o reţea cu dispozitive automat

sincronizate în timp, configurate pentru performanţe optime, fără modificări la schimbările

spontane ale topologiei de reţea.[1]

3.2 Ceasul Boundary

Pentru ca switch-urile şi routerele segmenetază o reţea PTP, PTP a introdus boundary

ceas în sensul distribuţiei ceasului unui subordonat în diferite părţi ale reţelei. Standardul PTP

descrie boundary ceas ca fiind deţinătorul unei singure stampile de timp comandată de PTP, dar

având mai multe porturi PTP intr-un domeniu. Un port poate servi ca sursă de timp

(subordonatul PTP) dispozitivelor atasate acestuia sau ca ieşire destinata sincronizarii

timekeeper-ului ( un subordonat PTP) cu alte ceasuri conectate la acesta. Un ceas boundary poate

fi implementat pentru a inlocui un switch traditional sau un router dintr-o retea care în mod

obisnuit este segmentata de aceste dispozitive. Boundary ceas difera de ceasurile PTP în operatii.

PTP le diferentiaza pe cele doua numindu-le “ordinary clock” sau ceas obisnuit şi respectiv

ceasul boundary. [1][5]

Fiecare port al unui ceas boundary poate fi inteles ca un ceas obisnuit separat care

imparte acelasi timekeeper cu ceasurile boundary ale altor ceasuri obisnuite. Doar un port al

acestui dispozitiv poate fi în starea de subordonat, care elimină utilizarea timekeeper-ului

dispozitivului ( de exemplu doua porturi care incerarca sa ajusteze timpul). Toate celelalte

porturi sunt considerate coordonatoare pentru dispozitivele din segmentele respective.[1][5]

Page 11: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 11 of 18

Existenta unui ceas boundary cere PTP utilizarea unui coordonator general pentru a

descrie intreaga retea PTP, de cand subordonatull unui port ceas boundary considera acel ceas

boundary ca fiind subalternul sau. Fiecare port coordonator este responsabil pentru indeplinirea

acelorasi obictive ca şi un ceas obisnuit coordonator , care efectiv ascunde toti subordonatii din

ceasul boundary coordonator. [1][5]

De asemenea, un ceas obisnuit de tip subordonat ( sau un alt ceas boundary cu porturile

conectate în starea de subaltern) este ascuns din ierarhia PTP “ de deasupra” boundary ceas. Un

ceas boundary nu trece mesajul de sincronizare PTP de la subordonatii superiori în ierarhie la

coordonatorul sau. Fara aceasta un coordinator general poate fi responsabil pentru procesarea

mesajelor “Delay Request” şi emite mesajul de “ Delay Response”de la şi către, fiecare

dispozitiv subaltern din intreaga reţea PTP. Un ceas boundary, totuşi, poate permite în continuare

oricarui sclav eligibil să fie coordonator general în intreaga retea PTP .

De exemplu, dacă coordonatorul general iese din retea, urmatorul cel mai eligibil

dispozitiv subordonat poate declara el singur ca fiind coordinator ( o dată ce algoritmul său

BMC a determinat ca este potrivit să facă asta), şi ceasul boundary va trimite portul conectat la

acest subordonat intr-un subordonat. Acest ceas boundary va avea apoi un port care a fost în

starea de subaltern, acum e în starea de coordonator pentru alte ceasuri obisnuite şi boundary.

Aceste ceasuri vor evalua apoi noul coordinator cu ajutorul algoritmului BMC şi tranzitioneaza

potrivit acestuia, repetand acest process pentru restul ierarhiei. în functie de topologia de retea,

aceasta situatie poate sa nu fie una ideala, în functie de numarul de hopuri intre care acest nou

coordonator şi un subordonat a crescut cu o unu ( un ceas boundary conectat la un nou master),

aceasta marind orice acumulare a erorilor de sincronizare. Utilizarea ceasului boundary şi

ierarhia rezultata a dispozitivelor PTP trebuie luata în considerare pentru a maximize precizia de

sincronizare a sistemului. (Vezi figura 4).

Figura 4: Ierarhia de dispozitiv care utilizeaza ceasuri boundery

Sursa:[1]

Page 12: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 12 of 18

Ceasurile boundary pot fi , de asemenea, utilizate pentru retele corelate care utilizeaza diferite

protocoale de retea (vezi figura 5), de cand nu exista nicio constrangere pentru care

implementarile PTP utilizeaza aceeasi tehnologie sau mediu de comunicatie. De exemplu un

system poate avea cateva dispositive care utilizeaza Ethernet şi altele care utilizeaza DeviceNet,

toate sincronizate dupa acelasi coordonator general prin utilizarea capacitatilor unor ceasuri

boundary. în acest scenario un ceas boundary va putea avea un port compatibil DeviceNet

conectata la un dispozitiv DeviceNet şi un alt port conectat la dispositive Ethernet. PTP face

posibila sincronizarea ambelor tipuri de dispozitive la acelasi coordonator general fara a se uita

la mediul de transmisie. în plus, la protocoale diferite de retea, ceasurile boundary pot intra în

sisteme PTP mecanisme de calcul al intarzierii diferite, care sunt descrise mai jos. [1]

Figura 5 Ceasurile boundery utilizate pentru a se potrivi in diferite tehnologii de retea

Sursa:[1]

3.3 Switchuri invizibile

Nu toate aplicaţiile permit dispozitivelor PTP să fie desfăşurate într-o manieră care

conduce la o ierarhie netedă, echilibrată. Reţelele sunt uneori dezvoltate în topologii lungi lineare

sau de tip inel care pot avea acumulari semnificative de erori de sincronizare cand ceasurile

boundary sunt utilizate pentru a intra în aceste segmente. Din această cauză, PTP defineşte un

dispozitiv cunoscut la switch invizibil care conectează grupuri de dispositive PTP fără a

segmenta reţeaua PTP. Un switch invizibil recunoaşte mesajele PTP care trec prin reţea şi

Page 13: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 13 of 18

notează “timpul de rezidenţă”, timpul petrecut în switch unde mesajele nu sunt încă vizibile

dispozitivelor PTP vizate.Timpul de rezidenţă este adaugat cmpurilor de corectie ale mesajelor

PTP inainte de a fi transmise de la switch catre urmatorul dispozitiv (vezi figura 6).

Ceasurile PTP pot apoi să evalueze mesajele din camurile de corecţie si să le aplice

propriilor calcule. Deşi, mesajele au fost temporar păstrate în switchul invizibil- un

comportament nedeterminist, care în mod normal introduce erori de sincronizare semnificative-

câmpul de corecţie permite că timpul să fie îndepărtat, că şi cum switchul nu ar fi fost niciodată

acolo (şi de aici numele de switch invizibil).

Spre deosebire de ceasurile boundary, switchurile invizibile işi expun dispozitivele

subordonate coordonatorului PTP. Switchurile invizibile sunt interesate doar intr-un timp relativ,

şi anume timpul în care mesajul trece prin switch. De aceea nu este necesar un timekeeper

sincronizat cu timpul coordonatorului. Oscilatoarele care “ticaie” atat în coordinator cat şi în

switch, trebuie totusi sa “ticaie” cu caeeasi rata. Păstrarea acestei rate ca fiind aceeaşi este

cunoscută ca sincronizare. [1]

3.4 Mecanismul întârziere în pereche (“peer delay”)

Modelul de sincronizare descris mai devreme, în care subordonatul crea problema

mesajului Delay Request şi coordonatorul raspunde cu De;ay Response, este cunoscută ca

mecanismul întârzierii cerere raspuns (delay request-response). PTP oferă o alternativă la acest

mecanism numită îintârzierea în pereche sau modul peer-to-peer, care poate furniza performanţe

superioare în anumite situaţii. Pentru ca cele doua moduri nu pot fi utilizate împreună, designerii

de system au trebuit să evalueze care mecanism de întârziere furnizează cele mai bune rezultate

şi în consecinţă, proiectarea sistemului lor. în modul peer-to-peer un dispozitiv transmite

primului vecin un mesaj “Peer Delay Request”, care este sau nu coordonatorul dispozitivului.

Dispozitivul receptor raspunde cu un mesaj “Peer Delay Response” ( şi optional cu un mesaj

Peer Delay Follow-up dupa acesta în cazul folosirii unui ceas în doi pasi). Aceasta permite

dispozitivului solicitant sa calculeze intarzierea de propagare pentru segmental individual.

Prin cunoaşterea exactă a intarzierii de propagare pentru fiecare segment de reţea, modul

peer to peer permite PTP să aplice compensări ale întârzierii între coordinator şi subordonaţi,

care sunt mult mai precise decât în mecanismul Delay-Request-Response, unde switchurile

intermediare aleg diferite căi. De când modul peer to peer specifică faptul că switchurile

invizibile ajustează câmpul de corecţie nu doar cu timpul de rezidentă al mesajelor Sync şi

Follow up ( aşa cum se întâmplă în modul Delay-Request-Response), el adaugă întârzierea

calculate anterior pentru legara pe care a venit mesajul anterior.( vezi figura 7)

Acest comportament semnifică faptul că coordonatorul nu trebuie să proceseze mesajul

Delay Request de la fiecare subordonat; în schimb ea însăţi se refera la Peer Delay Request and

Response pentru perechea sa imediată (switchuri invizibile sau ceasuri PTP în starea de

subordonat). Din aceasta cauza switchurile invizibile în modul peer to peer pot fi mult mai

atractive pentru designerii de sisteme ceea ce priveşte traficul de reţea, de cand un dispozitiv

Page 14: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 14 of 18

coordonator nu trebuie să recepţioneze şi să răspundă fiecarui mesaj de cerere al unui

subordonat, ci se referă la el insuşi şi perechea sa imediat următoare. [1]

4. Profiluri PTP

Profilurile PTP permit specificarea valorilor atributelor şi ale caracteristicilor opţionale

ale PTP, care atunci când utilizăm acelaşi protocol de transport, lucrează împreuna şi obţin

performanţe care îndeplinesc cererile aplicatiilor particulare.3 Profilurile fac din PTP cel mai

potrivit mod pentru aplicatii particulare, în timp ce adera la un standard tot mai general.

Profilurile pot specifica mai multe aspect ale standardului. Exista doua profiluri default: Delay

Request Response şi Peer Delay. Implemetarile trebuie sa suporte cel putin una dintre aceste

default-uri. Profilurile însa si sunt standardizate şi definite de o organizatie recunoscuta de

standardizare care are jurisdictia asupra unor industrii particulare. Aceste organizatii, dupa cum

se mentioneaza în standardul PTP, trebuie să consulte The Precise Networked Clock

Syncronization Working Group of IM/ST (Instrumentation and Measurements/Sensor

Technology) Committee pentru revizuiri tehnice.

Profilurile PTP nu numai că schimbă mai multe aspecte ale standardului PTP, dar îl

extinde. Un profil poate defini propriul algoritm BMC , mecanismul de monitorizare şi

configurare, mecanismul de întarziere, transmisia unicast sau multicast, mecanismul de transport,

tipul nodurilor şi alte opţiuni care sunt cerute, permise sau interzise. Profilurile pot defini

mecanisme de transport complet noi şi tipuri de date. Flexibilitatea profilurilor PTP îndeplineşte

nevoile unor aplicaţii particulare s-au dovedit a fi utile în special în telecomunicaţii şi industria

energetica. [1]

Unicast

PTP a fost construit să asigure comunicaţii multicast, dar a fost adăugat şi suportul

unicast ca o caracteristică opţional.Standardul PTP nu descrie o implemetare PTP unicast în

detaliu, dar în schimb descrie mai multe caracteristici optionale unicast care pot fi utilizate atâta

timp cat comportamentul protocolului este pastrat.2 Cateva implementari pot necesita ca

ceasurile coordonaţilor să utilizeze o configuraţie care specifică o listă cunoscută de ceasuri

coordonatoare prin adresa protocolului ( de exemplu o listă de adrese IP utilizate în Ethernet).

Aceasta ajuta subordonaţii sa gaseasca potenţialii coordonatori. Mecasnismul de descoperire

unicast este optional, însemnând ca în utilizarea multicast poate alege să se implementeze

desoperirea multicast a ceasurilor coordonatoare şi unicast pentru toate celelalte mesaje. Mai

mult, acest tip de descoperire necesită anumite configuraţii pentru a define lista coordonatorilor,

din moment ce este specifica unui sistem dat şi imbunatateste indeplinirea obicetivelor PTP prin

faptul ca furnizeaza o instalare simpla care nu necesita administrare. [1]

O alta implementare optional definite de PTP este utilizarea mecanismului de negociere

unicast, care imbunatateste trimiterea mesajelor de semnalizare specifica catre dispozitivul

Page 15: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 15 of 18

coordonator, indicand faptul ca ei raspund cu un mesaj unicast Announce, Sync, Delay Response

sau Peer Delay Response dispozitivului subordonat. Aceasta flexibilitate în alocarea operatiei

unicast şi furnizarea mai multor caracteristici optionale în implementare, permit profilurilor sa

defieasca o implementare unicast specifica avand cele mai bune detalii pentru o anumita

aplicatie. [1]

5. Utilizarea PTP şi a NTP

Cererile dispozitivelor pentru masuratori şi control industrial sunt similare cu cele ale

multor alte industrii- şi multe rezultate inovatoare au venit din aplicarea tehnologieie în metode

pe care proprii designer nu le-au luat în considerare-, dar aplicatii destinate pentru anumite

tehnologii sunt luate în considerare inainte de a adopta altele noi.

Asa cum am descris mai sus şi este scris în standard, PTP a fost construit sa fie utilizat în

retele LAN, sau mai exact, sisteme localizate spatial, cu optiuni pentru sisteme mai mari,4 acesta

este unul dintre diferentiatorii specifici intre PTP şi NTP. Utilizarea unui LAN permite altor

obiective PTP sa fie indeplinite utilizand tehnici ca multicast pentru descoperire şi selectie

automata a coordonatorilor PTP, echipamente de retea cum sunt ceasurile boundary şi switchuri

invizibile, precum şi o rata foarte mare de transmitere a mesajelor, care nu ar fi posibila intr-un

WAN. O retea LAN ofera PTP-ului cateva libertati pe care NTP –ul nu le are, asa cum este

presupunerea- cu un grad de incredere rezonabil- care nu are legatura cu traficul scaut de retea şi

securitatea de nivel scazut, avand în vedere ca în LAN utilizarea este de obicei limitata şi

controlata. [1]

In contrast, NTP este utilizata în Internet şi este prin urmare subiectul unui numar mare

de intarzieri nedeterministe provenite de la elementele retelelor intermediare, asa cum sunt

routerele şi expuse unui numar mult mai mare de provocari de securitate. Aceste inconveniente

trebuie sa fie acceptate sau în cazul securitatii sa raspunda acestor provocari. Securitatea este

evidentiata de cand PTP include numai o extensie experimentala a protocolului adresata

securitatii, dar NTP defineste utilizarea listei de control al accesului şi o variant de criptografiere

numita Autokey. De altfel am notat ca NTP poate utilize modul milticast pentru a descoperi în

mod automat serverele cand este utilizat intr-un LAN, şi PTP poate opera în modul unicast

pentru a fi utilizat intr-un WAN . Totusi este cea mai comuna şi poate impune costuri aditionale

de configurare. [11]

Un alt obiectiv PTP este administrarea libera a operatiilor, în care dispozitivele care

formeaza un sistem pot fi desfasurate cu configurari mici sau inexistente , dar cu care se poate

obtine un timp optim de sincronizare pentru un mediu dat. Dispozitivele pot fi adaugate, şterse

sau reconfigurate în timpul utilizării sistemului şi dispozitivele PTP care formează sistemul vor

negocia automat o noua ierarhie pentru a menţine performanţa optimă de sincronizare.

Algoritmul BMC al PTP-ului este responsabil pentru acest comportament. Algoritmul de

optimizarea NTP nu permite acelasi grad de autonomie .Acesta nu permite unui dispozitiv să

devină coordonator general dacă este necesar, în ciuda schemei de descoperire dinamică a

Page 16: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 16 of 18

ultimelor specificatii NTP. deşi NTP defineste o serie de algoritmi de atenuare pentru a fi

utilizati în găsirea drumului optim.

Comparaţie privind tehnicile de sincronizare PTP si NTP

În timp ce metodologiile de sincronizare impuse de PTP şi NTP sunt similare prin faptul

ca în cele din urmă calculează offsetul ceasului şi întârzierea mesajului. Protocoalele diferă

semnificativ în ceea ce priveţte mecanismele şi acest lucru poate fi luat în considerare la alegerea

uneia dintre cele doua tipuri de tehnologii. De exemplu, PTP se bazează pe ceasuri boundery şi

switchuri invizibile pentru a obţine performanţe maxime în anumite medii.

Relevant pentru implementarea acestor aplicaţii este faptul că PTP nu defineşte un

algoritm servo pentru aplicarea informaţiilor PTP date de un dispozitiv unui dispozitiv oscilator.

în schimb, definiţia servo este specific implementată şi nu exista garanţii care să garanteze că

stivele software PTP vor avea aceeaşi sincronizare în acelaşi dispozitiv. în opozitie, NTP

defineşte un parametru tranformat şi adaptiv “cu o frecvenţă şi fază aflate într-o bucla”, utilizat

pentru a seta dispozitivul timekeeper-ului cu datele furnizate de NTP.

Termenele celor două tehnologii diferă. NTP utilizează timpul UTC, în timp ce PTP

utilizează TAI şi offseturile UTC. Aceste diferenţe pot fi semnificative designerilor de system

care işi asumă o anume scală de timp. Preocuparile legate de manipularea saltului pot fi, de

asemenea, un factor important. Spre deosebire de PTP, un salt de secunde va determina shiftarea

întregului interval de timp cu o secundă. [1]

Aşteptări în ceea ce priveşte performanţa

Un sistem tipic PTP sincronizat se aşteaptă la o sincronizare de o precizie mai mică decât

microsecunde, care în mod tipic implică asistare hardware şi dispozitive conectate într-un LAN.

Un sistem de sincronizare tipic NTP cu hardware nespecializat şi dispositive conectate într-un

WAN, va obţine o precizie de sincronizare mai mica decât milisecunde. Când PTP este

configurată corespunzator pentru utilizare într-un WAN, totuşi nu pot fi reduse la niciun avantaj

de performanţă într-un NTP. [1]

Page 17: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 17 of 18

Concluzii

PTP are capacitatea să sincronizeze dispozitivele la un ordin mai mic decât

nanosecundele unul de altul peste o infrastructură comună de reţea, care permit designerilor de

system să înlocuiască soluţiile de sincronizare costisitoare sau limitate. NTP a avut cazuri

similare, dar adesea se încadrează în aplicaţii care necesită un nivel de performanţă al

măsurătorilor şi control al sistemului. Algoritmul PTP al BMC permite adaptarea la condiţii

schimbătoare, asigurând mereu că dispozitivele au cea mai bună calitate a referinţei de timp.

Ceasurile PTP boundery şi switchurile invizibile asigură performanţe ridicate de sincronizare,

adesea într-o topologie de reţea nu tocmai ideală.

În contrast, NTP necesită ca toate dispozitivele să fie configurate la o referinţă predefinită

de timpi ai servarului, prioritari de utilizat, şi performanţă are de suferit când mesajele trebuie să

traverseze elemente de reţea aşa cum sunt switchurile.

Totuşi mediul PTP este diferit de NTP şi în functie de aplicaţie, NTP este sau nu o bună

alegere. De exemplu, mechanism de securitate al NTP şi faptul ca e timpul serverelor e

disponibil public, îl face mai potrivit pentru sincronizarea timpului în Internet, unde

performantele cerute permit.

PTP a umplut un gol pe care NTP nu a fost capabil să îl umple, dar el nu a fost înlocuit.

Totuşi PTP oferă designerilor de sistem noi instrumente de sincronizare.

Page 18: Mecanisme de sincronizare în reţelele de calculatoarestst.elia.pub.ro/news/soa/Teme_SOA_12_13/BaicoianuRalucaLavinia/Mecanisme de... · Ceasul fizic ataşat unui calculator este

Page 18 of 18

Bibliografie

1. Revista “Communications of the ACM”, Association for Computing Machinary, Rick Ratzel

si Rodney Greenstreet, online: www.acm.org/renew, accesat la 08.01.2013

2. "Windows Time Service Technical Reference". technet.microsoft.com. Link:

http://technet.microsoft.com/en-us/library/cc773061%28WS.10%29.aspx accesat la

08.01.2013

3. "Windows Time Service page at NTP.org". Support.ntp.org. 2008-02-25, accesat la

10.11.2012

4. "How the Windows Time Service Works"., technet.microsoft.com.accesat la 08.11.2012

5. "Support boundary to configure the Windows Time service for high accuracy

environments". Microsoft Corporation, http://support.microsoft.com/kb/939322 accesat la

12.01.2013

6. Internet Engineering Task Force (IETF),Request for Comments: 5905

Obsoletes: 1305, 4330, Category: Standards Track, ISSN: 2070-1721 D. Mills, U. Delaware,

J. Martin, J. Burbank, W. Kasch, APL June 2010

7. NTP 4.x for Windows NT". NTP Documentation Archive,

http://doc.ntp.org/4.2.6/hints/winnt.html, accesat la 20.01.2013

8. "Executive Summary: Computer Network Time Synchronization",

http://www.eecis.udel.edu/~mills/exec.html, accesat la 12.01.2013

9. Ned Pyle (2007-10-23). "High Accuracy W32time Requirements". Microsoft

Corporation, http://blogs.technet.com/b/askds/archive/2007/10/23/high-

accuracy-w32time-requirements.aspx?Redirected=true, accesat la 13.01.2013

10. Measurement, Control and Communication Using IEEE 1588, Eidson, John C. (April

2006), Springer. ISBN 1-84628-250-0.

11. Welcome to the NTP.Servers Web., http://ntp.isc.org/bin/view/Servers/