Portalul de știri și analitic „time of electronics”. Introducere în PTP De ce aveți nevoie de timp precis

S-au scris multe articole despre bine-cunoscutul Network Time Protocol (NTP), unele dintre ele menționând Precision Time Protocol, care se presupune că permite obținerea preciziei de sincronizare a timpului în nanosecunde (de exemplu, și). Să vedem ce este acest protocol și cum se obține o asemenea acuratețe. Și, de asemenea, să vedem rezultatele muncii mele cu acest protocol.

Introducere
„Protocolul de timp precis” este descris de standardul IEEE 1588. Există 2 versiuni ale standardului. Prima versiune a fost lansată în 2002, apoi standardul a fost revizuit în 2008 și a luat naștere protocolul PTPv2. Compatibilitatea inversă nu a fost păstrată.
Lucrez cu a doua versiune a protocolului, are multe îmbunătățiri față de prima (acuratețe, stabilitate, după cum ne spune wiki-ul). Nu voi face comparații cu NTP, simpla mențiune despre acuratețea sincronizării, iar acuratețea PTP chiar ajunge la zeci de nanosecunde cu suport „fier”, vorbește despre un avantaj față de NTP.
Suportul pentru protocolul „Iron” în diferite dispozitive poate fi implementat în moduri diferite. De fapt, minimul necesar pentru implementarea PTP este capacitatea piesei hardware de a marca marca temporală a momentului în care un mesaj este primit pe port. Timpul introdus va fi folosit pentru a calcula eroarea.
De ce este supărat ceasul?
Erorile pot apărea de oriunde. Să începem cu faptul că generatoarele de frecvență din dispozitive sunt diferite și este foarte puțin probabil ca două dispozitive diferite să funcționeze perfect ceas la ceas. De asemenea, puteți atribui condițiile de mediu în continuă schimbare care afectează frecvența generată.
Pentru ce ne străduim?
Să presupunem că avem un dispozitiv care funcționează în condiții ideale, un fel de ceas atomic care nu se va vinde deloc până la sfârșitul lumii (desigur, realului, și nu este destinat calendarului mayaș) și ni se dă sarcina de a obține cel puțin aproximativ (cu o precizie de 10 -9 sec) aceleași ore. Trebuie să sincronizăm aceste ceasuri. Pentru a face acest lucru, puteți implementa protocolul PTP.
Diferența dintre o implementare pur software și o implementare cu „suport de fier”
O implementare pur software nu va atinge acuratețea promisă. Timpul scurs din momentul în care mesajul a fost primit (mai precis, semnalul a fost primit pentru a primi mesajul în dispozitiv) până la trecerea la punctul de intrare întrerupere sau callback nu poate fi definit strict. „Hardware-ul inteligent” cu suport PTP poate pune aceste marcaje de timp pe cont propriu (de exemplu, cipuri de la Micrel, scriu un driver doar pentru KSZ8463MLI).
Pe lângă marcajele de timp, suportul hardware include și capacitatea de a regla un oscilator cu cristal (pentru a egaliza frecvența cu masterul) sau abilitatea de a regla ceasul (mărește valoarea ceasului cu X ns la fiecare ciclu). Mai multe despre asta mai jos.
Să trecem la standardul IEEE 1588
Standardul este descris deja pe 289 de pagini. Luați în considerare minimul necesar pentru implementarea protocolului. PTP este un protocol de sincronizare client-server, de ex. sunt necesare cel puțin 2 dispozitive pentru implementarea protocolului. Deci, dispozitivul Master este un ceas atomic, iar dispozitivul Slave este un ceas care trebuie făcut să funcționeze cu precizie.
Schimb de limbă
Anunțați mesajul– mesaj de anunț, conține informații trimise de master către toate dispozitivele Slave. Dispozitivul slave care utilizează acest mesaj poate alege cel mai bun master (există un algoritm BMC (Best Master Clock) pentru aceasta). BMC nu este chiar atât de interesant. Acest algoritm poate fi găsit cu ușurință în standard. Alegerea se bazează pe astfel de câmpuri de mesaj precum precizie, variație, clasă, prioritate etc. Să trecem la alte postări.

Sincronizare/Urmărire, DelayResp, PDelayResp/PDelayFollowUp- trimise de maestru, mai jos le vom analiza mai detaliat.

DelayReq, PDelayReq– cereri pentru dispozitive Slave.

După cum puteți vedea, dispozitivul Slave nu este pronunțat, Masterul furnizează aproape toate informațiile în sine. Trimiterea se efectuează pe adrese Multicast (dacă se dorește, puteți utiliza modul Unicast) adrese strict definite în standard. Pentru P Întârziere mesajele au o adresă separată (01-80-C2-00-00-0E pentru Ethernet și 224.0.0.107 pentru UDP). Mesajele rămase sunt trimise la 01-1B-19-00-00-00 sau 224.0.1.129. Pachetele diferă în câmpuri ClockIdentity(ID ceas) și SequenceId(ID pachet).

Sesiune de lucru
Să presupunem că masterul a fost selectat folosind algoritmul BMC sau singurul master din rețea. Imaginea prezintă procedura de comunicare între dispozitivul principal și cel sincronizat.

  1. Totul începe cu Maestrul care trimite un mesaj Sincronizareși înregistrează simultan timpul de expediere t1. Există moduri de funcționare cu una și două etape. Este foarte ușor să le distingem: dacă există un mesaj urmare- atunci avem de-a face cu o implementare în două etape, săgeata punctată arată mesaje opționale
  2. urmare mesajul este trimis după Sincronizareși conține timpul t1. Dacă transferul se efectuează într-o singură etapă, atunci Sincronizare conține t1 în corpul mesajului. În orice caz, t1 va fi primit de dispozitivul nostru. În momentul primirii mesajului Sincronizare marca temporală t2 este generată pe Slave. Astfel obținem t1, t2
  3. Slave generează un mesaj DelayReq concomitent cu generarea t3
  4. Maestrul primeste DelayReq mesaj, generând simultan t4
  5. t4 este trimis la dispozitivul Salve la DelayResp mesaj


Mesaje online

Cu o astfel de sesiune de schimb, așa cum se arată mai sus, se poate reuși doar dacă cuarțul generează în mod ideal aceleași frecvențe pentru dispozitivele sincronizate. De fapt, se dovedește că frecvența ceasului este diferită, adică. pe un dispozitiv, în 1 secundă, valoarea ceasului va crește cu 1 secundă, iar pe celălalt, de exemplu, cu 1,000001 secunde. De aici vine diferența de ceas.
Standardul descrie un exemplu de calcul al raportului dintre timpul scurs pe Master și pe Slave pentru un anumit interval. Acest raport va fi coeficientul pentru frecvența dispozitivului Slave. Dar, în același timp, există un indiciu că reglarea poate fi efectuată în diferite moduri. Să luăm în considerare două dintre ele:

  1. Schimbați frecvența de ceas a dispozitivului Slave (exemplu în standard)
  2. Nu modificați frecvența ceasului, dar pentru fiecare ciclu de durata T, valoarea ceasului va crește nu cu T, ci cu T + ∆t (utilizat în implementarea mea)
În ambele metode, va fi necesar să se calculeze diferența de valori de timp pe dispozitivul Master pentru un anumit interval, precum și diferența de timp pentru același interval pe dispozitivul Slave. Coeficient în prima metodă:


A doua metodă necesită calculul lui ∆t. ∆t este valoarea care va fi adăugată la valoarea timpului la fiecare anumit interval. În figură, puteți vedea că în timp ce 22 - 15 = 7 secunde au trecut pe master, 75 + (87-75) / 2 - (30 + (37-30) / 2) = 47,5 secunde scurse pe slave

Frecvență - frecvența procesorului, de exemplu, 25MHz - ciclul procesorului durează 1/(25*10 6) = 40ns.
În funcție de capacitățile dispozitivului, este selectată metoda cea mai potrivită.
Pentru a trece la următoarea secțiune, să exprimăm offset-ul puțin diferit:

Moduri de operare PTP
Privind standardul, puteți găsi nu singura modalitate de a calcula timpul de livrare. Există 2 moduri de operare pentru PTPv2. Acest E2E (de la capăt la capăt), s-a considerat mai sus, este descris și modul P2P (Peer-to-Peer). Să ne dăm seama unde ce metodă să aplicăm și care este diferența lor.
În principiu, puteți folosi oricare dintre moduri după bunul plac, dar nu pot fi combinate în aceeași rețea.
  • În modul E2E timpul de livrare este calculat din mesajele primite prin mai multe dispozitive, fiecare introducând în câmpul de corectare a mesajelor Sincronizare sau Urmare(dacă transmisie în două etape) timpul pentru care pachetul a fost întârziat pe acest dispozitiv (dacă dispozitivele sunt conectate direct, corecția nu este pusă jos, deci nu le vom lua în considerare în detaliu). Mesaje folosite: Sincronizare/FollowUp, DelayReq/DelayResp
  • În modul P2P nu numai timpul pentru care pachetul a fost întârziat este introdus în câmpul de corecție, la acesta se adaugă (t2-t1) (se poate citi în standard). Se folosesc mesaje Sincronizare/FollowUp, PDelayReq/PDelayResp/PDelayRespFollowUp
Conform standardului, se numesc orele prin care trec mesajele PTP cu modificarea câmpului de corectare Ceas transparent (TC). Să ne uităm la cifrele despre cum sunt transmise mesajele în aceste două moduri. Mesajele sunt marcate cu săgeți albastre. SincronizareȘi urmare.


Modul de la capăt la capăt


Modul peer-to-peer
Vedem că în modul P2P au apărut niște săgeți roșii. Acestea sunt mesajele rămase pe care nu le-am luat în considerare și anume PDelayReq, PDelayRespȘi PDelayFollowUp. Iată sesiunea de schimb a acestor mesaje:

Eroare de timp de livrare
Standardul descrie implementarea protocolului în diferite tipuri de rețele. Am folosit o rețea ethernet și am primit mesaje la nivelul ethernet. În astfel de rețele, timpul de livrare a pachetelor se schimbă constant (mai ales se observă atunci când se lucrează cu precizie de nanosecundă). Sunt aplicate diferite filtre pentru a filtra aceste valori.

Ce trebuie filtrat:

  1. Timpul de livrare
  2. Părtinire
Driverul meu folosește aproximativ același sistem de filtrare ca demonul Linux. PTPd, a cărei sursă poate fi găsită, există încă câteva informații. Îți dau doar o diagramă:


Filtru LP IIR (răspuns la impuls infinit trece jos).(Filtru cu răspuns la impuls infinit) descris prin formula:

, Unde s este un coeficient care vă permite să reglați limitarea filtrului.
Calcul de ajustare
Să trecem la tuning, la delta care va trebui adăugată la valoarea secundului. Schema de calcul folosită pe sistemul meu:


Am folosit un filtru Kalman pentru a filtra fluctuația puternică de reglare din cauza zgomotului din rețea, mi-a plăcut foarte mult. În general, puteți utiliza orice filtru care vă place, principalul lucru este să neteziți graficul. ÎN PTPd, de exemplu, filtrarea este mai simplă - se calculează media valorilor curente și anterioare. Pe grafic puteți vedea rezultatele filtrului Kalman din driverul meu (este afișată eroarea de reglare, exprimată în subnanoscunde pe un cip de 25 MHz):


Ne întoarcem la reglarea ajustării, ajustarea ar trebui să tinde spre o constantă, se folosește un controler PI. ÎN PTPd offset-ul ceasului este ajustat (setarea trece prin offset), dar îl folosesc pentru a regla tăierea (o caracteristică a KSZ8463MLI). Vedem că controlerul nu este configurat perfect, dar în cazul meu această ajustare este suficientă:

Rezultatul muncii


Rezultatul este prezentat în grafic. Decalaj ceas între -50ns până la 50ns. În consecință, am obținut acuratețea care este menționată în numeroase articole. Desigur, multe caracteristici mici ale implementării au rămas în culise, dar minimul necesar a fost demonstrat.

65 de nanometri este următorul obiectiv al uzinei Angstrem-T Zelenograd, care va costa 300-350 de milioane de euro. Întreprinderea a depus deja o cerere pentru un împrumut favorabil pentru modernizarea tehnologiilor de producție către Vnesheconombank (VEB), a raportat Vedomosti în această săptămână, citându-l pe Leonid Reiman, președintele Consiliului de Administrație al uzinei. Acum Angstrem-T se pregătește să lanseze o linie pentru producția de cipuri cu o topologie de 90 nm. Plățile împrumutului anterior VEB, pentru care a fost achiziționat, vor începe la jumătatea anului 2017.

Beijingul a prăbușit Wall Street

Indicii cheie din SUA au marcat primele zile ale Anului Nou cu o scădere record, miliardarul George Soros a avertizat deja că lumea așteaptă o repetare a crizei din 2008.

Primul procesor rus de consum Baikal-T1 la un preț de 60 de dolari este lansat în producție de masă

Compania Baikal Electronics promite la începutul anului 2016 să lanseze procesorul rus Baikal-T1 în valoare de aproximativ 60 de dolari în producția industrială. Dispozitivele vor fi solicitate dacă această cerere este creată de stat, spun participanții de pe piață.

MTS și Ericsson vor dezvolta și implementa împreună 5G în Rusia

PJSC „Mobile TeleSystems” și Ericsson au semnat acorduri de cooperare în dezvoltarea și implementarea tehnologiei 5G în Rusia. În proiecte-pilot, inclusiv în timpul Cupei Mondiale 2018, MTS intenționează să testeze evoluțiile vânzătorului suedez. La începutul anului viitor, operatorul va începe un dialog cu Ministerul Telecomunicațiilor și Comunicațiilor de Masă privind formarea cerințelor tehnice pentru a cincea generație de comunicații mobile.

Sergey Chemezov: Rostec este deja una dintre cele mai mari zece corporații de inginerie din lume

Într-un interviu acordat RBC, șeful Rostec, Sergey Chemezov, a răspuns la întrebări arzătoare: despre sistemul Platon, problemele și perspectivele AVTOVAZ, interesele Corporației de Stat în domeniul farmaceutic, a vorbit despre cooperarea internațională sub presiunea sancțiunilor, import înlocuire, reorganizare, strategii de dezvoltare și noi oportunități în vremuri dificile.

Rostec este „protejat” și încalcă laurii Samsung și General Electric

Consiliul de Supraveghere al Rostec a aprobat „Strategia de Dezvoltare până în 2025”. Sarcinile principale sunt de a crește ponderea produselor civile de înaltă tehnologie și de a ajunge din urmă cu General Electric și Samsung în indicatorii financiari cheie.

07.09.2012, Luni, 10:07, Msk

Principala problemă în rețelele de transport de generația următoare este că tehnologia Ethernet a fost concepută inițial pentru rețelele locale și nu a fost niciodată concepută pentru a transmite semnale de sincronizare. În rețelele cu comutare de circuite în ultimele decenii, tehnologia ierarhiei digitale sincrone (SDH) domină ca mediu de transport, ea bazându-se pe transmiterea semnalelor sincrone. Dar nici această tehnologie robustă și bine stabilită nu îndeplinește cerințele aplicațiilor actuale.

pagini: anterior | | 2

Folosind Sync Ethernet

Inițial, tehnologia Ethernet a fost dezvoltată exclusiv pentru utilizarea în rețelele locale. Metodele de codificare liniară a informaţiei la nivel fizic au fost alese în concordanţă cu sarcinile care nu implicau transmiterea unui semnal de ceas. Rețelele SDH au folosit inițial coduri de linie NRZ, care sunt adaptate pentru a transmite sincronizarea la nivelul fizic al canalului de comunicație. La crearea tehnologiei Sync Ethernet, stratul fizic și metodele de codificare au fost împrumutate de la tehnologia SDH, iar al doilea strat (canal) nu a fost practic afectat. Structura cadrului rămâne neschimbată, cu excepția octetului SSM de stare de sincronizare. Semnificațiile sale au fost împrumutate și de la tehnologia SDH.


Principiul sincronizării transmisiei prin protocolul Sync Ethernet

Avantajele tehnologiei Sync Ethernet includ utilizarea structurii SDH a ​​stratului fizic și, în același timp, o experiență uriașă și neprețuită în proiectarea și construirea rețelelor de sincronizare a ceasului de rețea. Identitatea metodelor a păstrat vechile recomandări G.803, G.804, G.811, G.812 și G.813 relevante în noua tehnologie. Dispozitivele scumpe - oscilatoare primare de referință (PEG), oscilatoare principale secundare (SGM) - pot fi utilizate și în noua rețea de transport construită pe standardul Sync Ethernet.


Schemă tipică de sincronizare folosind tehnologia Sync Ethernet

Dezavantajele includ faptul că în întreaga rețea de transmisie, fiecare dispozitiv trebuie să suporte noul standard, iar dacă un dispozitiv rămâne pe linie care nu acceptă Sync Ethernet, atunci toate dispozitivele din spatele acestui nod nu pot funcționa în modul sincron. În consecință, sunt necesare costuri mari de materiale pentru a moderniza întreaga rețea. De asemenea, dezavantajele includ faptul că această metodă acceptă doar transmisia sincronizării frecvenței.

Utilizarea protocolului PTP (IEEE1588v2)

Iar ultima modalitate de a transfera sincronizarea, care a devenit din ce în ce mai populară în ultima vreme, este Precise Time Protocol (PTP). Este descris în recomandarea IEEE 1588. În 2008, a fost lansată a doua versiune a acestui document, care descrie utilizarea protocolului în rețelele de telecomunicații. Precise Time Protocol este destul de tânăr, dar tehnologia de transfer de timp în sine a fost împrumutată de la protocolul Network Time Portocol (NTP). Protocolul NTP în cea mai recentă versiune nu oferă acuratețea necesară aplicațiilor de astăzi și astfel a rămas un instrument bun pentru sincronizarea timpului, care este utilizat pe scară largă în sincronizarea serverelor, bazelor de date distribuite etc. Dar în construirea unei sincronizări a rețelei de ceas de rețea, este potrivită o continuare logică a protocolului NTP - acesta este protocolul PTP. Elementele de rețea care participă la comunicarea PTP sunt următoarele dispozitive: PTP Grand Master și PTP Slave. De obicei, Grand Master preia sincronizarea de la receptorul GNSS și folosind aceste informații, schimbă pachete cu dispozitivul Slave și corectează în mod constant discrepanțele de sincronizare dintre dispozitivele Grand Master și Slave. Cu cât acest schimb este mai activ, cu atât va fi mai mare acuratețea ajustării. Dezavantajul unui astfel de schimb activ este o creștere a lățimii de bandă care este alocată pentru protocolul PTP. Cea mai importantă problemă în calcularea discrepanței dintre intervalele de timp este că routerele „clasice” de nivel 3 pot sta între dispozitivele Grand Master și Slave. Termenul „clasic” în acest caz este folosit pentru a sublinia faptul că aceste dispozitive nu înțeleg nimic în protocolul PTP layer 5.

Întârzierile în buffer-urile unor astfel de routere sunt dificil de gestionat și sunt de natură aleatorie. Pentru a controla aceste erori aleatoare, precum și pentru a face mai precis calculul diferenței de timp dintre Grand Master și Slave, a fost introdus un parametru special în protocolul PTP - Time Stamp. Această etichetă indică timpul necesar pachetului pentru a trece prin router. Dacă routerele de la Grand Master până la Slave au funcționalitate PTP și setează un marcaj de timp, atunci eroarea aleatorie asociată cu trecerea pachetelor PTP prin rețeaua IP poate fi minimizată.


Un exemplu de construire a unei rețele de sincronizare pe protocolul PTP

Comparația metodelor de transfer de sincronizare în rețelele de pachete de nouă generație

Funcționalitatea PTP pe routere este opțională, dar foarte recomandată atunci când se utilizează protocolul PTP. Trebuie remarcat faptul că majoritatea producătorilor de routere includ această funcționalitate în dispozitivele lor. Un exemplu de construire a unei scheme de sincronizare pentru un operator de telefonie mobilă este prezentat în figura de mai jos. Avantajul PTP este că protocolul este orientat să transfere toate cele trei tipuri de sincronizare: frecvență, fază și timp. Principalul dezavantaj al protocolului este dependența de încărcare. Cu congestionarea rețelelor IP care sunt dificil de gestionat, este foarte dificil să se garanteze respectarea strictă a normelor de transmisie de sincronizare în rețea.

Tehnologie Avantaje Defecte
GNSS Oferă sincronizare de frecvență, fază și timp.
Nu depinde de încărcarea rețelei.
Instalarea obligatorie a unei antene. Nu poate fi folosit în interior. Posibile interferențe de la alte dispozitive radio. Redundanța este asigurată numai prin instalarea unui al doilea receptor GNSS
Sincronizare Ethernet Nu depinde de încărcarea rețelei. Similaritate cu rețeaua SDH Oferă doar sincronizare de frecvență. Suportul de sincronizare Ethernet necesar pentru toate elementele rețelei
PTP Oferă sincronizare de frecvență, fază și timp. Depinde de încărcarea rețelei.

Fiecare dintre metode are propriile sale avantaje și dezavantaje, care sunt prezentate în tabel. Pentru a determina abordarea corectă, se recomandă să luați în considerare multe criterii care sunt specifice diferitelor rețele.

Mihail Vekselman

pagini: anterior | | 2

În 2005 s-au început lucrările de schimbare a standardului IEEE1588-2002 în vederea extinderii posibilelor sale domenii de aplicare (telecomunicații, comunicații fără fir etc.). Lucrarea a dus la o nouă ediție a IEEE1588-2008, care este disponibilă din martie 2008, cu următoarele caracteristici noi:

  • Algoritmi îmbunătățiți pentru a asigura erori în intervalul de nanosecunde.
  • Performanță îmbunătățită a sincronizării orei (este posibilă transmiterea mai frecventă a mesajelor de sincronizare).
  • Suport pentru noi tipuri de mesaje.
  • Introducerea unui principiu de funcționare monomod (nu este necesară transmiterea mesajelor de tip FollowUp).
  • Intrarea în suport pentru funcția așa-numitului. ceas transparent pentru a preveni acumularea erorilor de măsurare în cazul unei conexiuni în cascadă a comutatoarelor.
  • Introduceți profiluri care definesc setările pentru aplicații noi.
  • Atribuabil la mecanisme de transport precum DeviceNet, PROFInet și IEEE802.3/Ethernet (atribuire directă).
  • Introducerea structurii TLV (tip, lungime, valoare) pentru a extinde domeniul posibil al standardului și a satisface nevoile viitoare.
  • Introducerea extensiilor suplimentare opționale ale standardului.

Principiul de funcționare a sistemelor bazate pe protocolul PTP

În sistemele care utilizează protocolul PTP, există două tipuri de ceasuri: ceasul master și ceasul slave. Ceasul principal este controlat în mod ideal fie de radio cu ceas, fie de receptoare GPS și sincronizează ceasurile secundare. Ceasul din dispozitivul final, fie el master sau slave, este considerat un ceas normal; ceasurile din dispozitivele de rețea care îndeplinesc funcția de transmitere și rutare a datelor (de exemplu, în comutatoarele Ethernet) sunt considerate ceasuri de limită.

Orez. 1. Conform protocolului PTP, sincronizarea în timp a dispozitivelor se realizează pe baza schemei „master - slave”.

Procedura de sincronizare conform protocolului PTP este împărțită în două etape. În prima etapă, diferența de citire a timpului dintre ceasul master și cel slave este corectată - adică se realizează așa-numita corecție a offset-ului de timp. Pentru a face acest lucru, dispozitivul master trimite un mesaj pentru sincronizarea timpului Sync către dispozitivul slave (mesaj de tip Sync). Mesajul conține ora curentă a ceasului principal și este transmis periodic la intervale fixe.

Cu toate acestea, deoarece este nevoie de ceva timp pentru a citi ceasul principal, a procesa datele și a transmite prin intermediul controlerului Ethernet, informațiile din mesajul transmis sunt depășite în momentul în care sunt primite. În același timp, momentul în care mesajul Sync părăsește expeditorul, care include ceasul principal (TM1), este fixat cât mai precis posibil. Dispozitivul master trimite apoi ora fixă ​​de transmitere a mesajului Sync către dispozitivele slave (mesaj de urmărire). Ei măsoară, de asemenea, timpul de primire a primului mesaj (TS1) cât mai precis posibil și calculează valoarea cu care este necesar să se corecteze diferența dintre citirile de timp dintre ei și respectiv master (O) (vezi Fig. 1 și Fig. 2). Apoi, citirile ceasului din dispozitivele slave sunt corectate direct de valoarea offset. Dacă nu a existat nicio întârziere în transmiterea mesajelor prin rețea, atunci se poate argumenta că dispozitivele sunt sincronizate în timp.

Orez. 3. Calculul timpului de întârziere a mesajelor în comutatoare.

Întârzierea transmiterii mesajelor în ambele direcții va fi identică dacă dispozitivele sunt conectate între ele printr-o singură linie de comunicație și numai. Dacă există comutatoare sau routere în rețea între dispozitive, atunci nu va exista nicio întârziere simetrică în transmiterea unui mesaj între dispozitive, deoarece comutatoarele din rețea stochează acele pachete de date care trec prin ele și o anumită ordine a transmiterii lor. este implementat. Această caracteristică poate, în unele cazuri, să afecteze semnificativ cantitatea de întârziere în transmiterea mesajelor (sunt posibile diferențe semnificative în timpul de transmisie a datelor). Cu o încărcare scăzută de informații în rețea, acest efect are un efect redus, cu toate acestea, cu o încărcare mare de informații, acest efect poate afecta în mod semnificativ acuratețea sincronizării timpului. Pentru a elimina erorile mari, a fost propusă o metodă specială și a fost introdus conceptul de ceasuri de limită, care sunt implementate ca parte a comutatoarelor de rețea. Acest ceas de limită este sincronizat în timp cu ceasul dispozitivului principal. În plus, comutatorul pentru fiecare port este dispozitivul principal pentru toate dispozitivele slave conectate la porturile sale, în care se realizează sincronizarea corespunzătoare a ceasului. Astfel, sincronizarea se realizează întotdeauna conform schemei punct-la-punct și se caracterizează prin aproape aceeași întârziere în transmiterea unui mesaj în direcțiile înainte și înapoi, precum și invariabilitatea practică a acestei întârzieri în mărime de la unu. transmiterea mesajului către altul.

Deși principiul bazat pe utilizarea ceasului de limită și-a arătat eficacitatea practică, un alt mecanism a fost definit în a doua versiune a protocolului PTPv2 - mecanismul de utilizare a așa-numitului. ceas transparent. Acest mecanism previne acumularea erorilor din cauza modificărilor cantității de întârzieri în transmiterea mesajelor de sincronizare de către comutatoare și previne scăderea preciziei de sincronizare în cazul unei rețele cu un număr mare de comutatoare în cascadă. Cu acest mecanism, mesajele de sincronizare sunt trimise de la master la slave, la fel ca orice alt mesaj din rețea. Cu toate acestea, atunci când mesajul de sincronizare trece prin comutator, întârzierea transmisiei acestuia de către comutator este fixă. Întârzierea este fixată într-un câmp special de corecție ca parte a primului mesaj de sincronizare sau ca parte a mesajului de urmărire următor (vezi Fig. 2). La transmiterea mesajelor Solicitare întârziere și Răspuns întârziat, timpul de întârziere a acestora în comutare este, de asemenea, fix. Astfel, punerea în aplicare a sprijinului pentru așa-numitele. ceasurile transparente ca parte a comutatoarelor vă permit să compensați întârzierile care apar direct în ele.

Implementarea protocolului PTP

Dacă este necesară utilizarea protocolului PTP în sistem, trebuie implementat stiva de protocol PTP. Acest lucru se poate face cu cerințe minime pentru performanța procesorului dispozitivului și lățimea de bandă a rețelei. Acest lucru este foarte important pentru implementarea stivei de protocoale în dispozitive simple și ieftine. Protocolul PTP poate fi implementat cu ușurință chiar și în sistemele construite pe controlere ieftine (32 de biți).
Singura cerință care trebuie îndeplinită pentru a asigura o acuratețe ridicată a sincronizării este măsurarea cea mai precisă de către dispozitive a orei la care mesajul este transmis și a momentului la care este primit mesajul. Măsurarea trebuie făcută cât mai aproape de hardware (de exemplu, direct în driver) și cu cea mai mare precizie posibilă. În implementările pur software, arhitectura și performanța sistemului limitează direct acuratețea maximă permisă.

Prin utilizarea suportului hardware suplimentar pentru marcarea temporală, precizia poate fi mult îmbunătățită și poate fi practic independentă de software. Acest lucru necesită utilizarea unei logici suplimentare, care poate fi implementată într-un circuit integrat cu logică programabilă sau într-un circuit integrat specializat pentru rezolvarea unei sarcini specifice la intrarea în rețea.

concluzii

Protocolul PTP și-a dovedit deja eficacitatea în multe domenii. Poți fi sigur că va deveni mai răspândit în următorii ani și că multe soluții care îl folosesc pot fi implementate mai simplu și mai eficient decât folosind alte tehnologii.

Echipamente KYLAND care acceptă IEEE 1588v2

tehnologii

S.Telegin

Protocol PTP pentru sincronizarea rețelelor NGN

probleme de aplicare

ÎN Articolul tratează problema sincronizării rețelelor de date de generație următoare (NGN). ÎN

Autorul propune utilizarea protocolului PTP ca metodă alternativă de transfer de sincronizare. Caracteristicile sistemelor de sincronizare bazate pe protocolul PTP (IEEE 1588) sunt comparate cu sistemele care utilizează magistrala PXI, precum și cu protocolul NTP.

Problemă de sincronizare în rețelele NGN

Dezvoltarea tehnologiilor de telecomunicații și a rețelelor de transmisie a datelor duce treptat la construirea de rețele convergente de următoarea generație (NGN - Next Generation Networks) de către operatorii de telecomunicații. Principala diferență dintre astfel de rețele și rețelele tradiționale cu o ierarhie digitală sincronă (SDH) este că acestea folosesc tehnologii asincrone, cum ar fi Ethernet (Gigabit Ethernet, 10 Gigabit Ethernet) pentru transmisia de date în coloana vertebrală, împreună cu canalele sincrone convenționale. Principala cerință a operatorilor de telecomunicații pentru rețelele de generație următoare este transmiterea simultană de voce, video și date într-o singură rețea.

În trecerea de la rețelele tradiționale de transmisie a datelor bazate pe multiplexare în timp la rețelele NGN, se acordă o atenție deosebită transmiterii semnalelor de sincronizare. Sincronizarea echipamentelor este necesară în primul rând pentru transmiterea fără erori a datelor în timp real - imagini vocale și video. Deoarece rețelele Ethernet utilizează comutarea de pachete, care, datorită proprietăților statistice ale propagării pachetelor de date pe canale de transmisie asincrone, distruge fluxul de date sincronizat inițial, transmisia de sincronizare în rețelele NGN este o sarcină separată. Pentru a transmite date sincrone prin rețele cu comutare de pachete, de regulă, se folosește emularea canalului cu multiplexare în timp, care constă în încapsularea datelor sincrone în datagrame UDP și apoi restaurarea lor la nodul destinație.

PRIMUL MIL 5–6/2009

Pentru recuperarea fără erori a datelor transmise la joncțiunea canalelor asincrone și sincrone, echipamentul trebuie să primească și un semnal de ceas. Cerințele pentru stabilitatea semnalului de ceas variază în funcție de scopul specific al rețelei de date. Deci, în rețelele de operator pentru furnizarea de servicii de telefonie și acces la Internet, cerințele de sincronizare sunt destul de ușoare - 50 ppm (unități pe milion), iar în rețelele celulare, pentru o tranziție fără probleme a abonaților de telefonie mobilă de la o stație de bază la alta, stabilitatea sunt necesare 50 ppb (unităţi per milion). miliarde).

Modalități de sincronizare a rețelelor NGN

Recomandarea ITU-T G.8261 discută trei metode principale de resincronizare la marginile unui mediu de transport cu comutare de pachete atunci când semnalul de bandă de bază multiplexat în timp este transportat în acesta ca un serviciu de emulare a circuitului. Pentru a face acest lucru, echipamentul stației terminale trebuie să fie prevăzut cu funcțiile de internetworking. Toți abonații mediului de transport cu comutare de pachete pot primi frecvența de ceas de la rețeaua de sincronizare prin distribuția centralizată obișnuită (Fig. 1). Dacă echipamentul utilizatorului funcționează la propria frecvență de ceas (Fig. 2), atunci la marginea rețelei cu comutare de pachete este restaurat în diferite moduri relative, de exemplu, folosind algoritmul de potrivire a ratei SRTS. În ambele cazuri, nodul gateway trebuie să aibă acces la interfața cu generatorul primar de sincronizare.

tehnologii

zare (PRC). Pentru a face acest lucru, operatorul de rețea NGN trebuie fie să construiască o rețea de sincronizare separată, fie să o închirieze de la operatorii de rețele de transport SDH existenți.

Există multe exemple de sincronizare hardware locală. Deci, de exemplu, o sursă de sincronizare primară (PRS) ieftină bazată pe GPS este plasată în camera stației și frecvența ceasului este distribuită de la aceasta folosind tehnologii fără fir sau prin cabluri convenționale dedicate, în mediul fizic Ethernet, precum și folosind alte scheme originale. Dacă construirea unei rețele de sincronizare (sau utilizarea îmbinărilor de sincronizare) este imposibilă sau nedorită, atunci se folosește cea mai simplă, dar problematică din motive de stabilitate, metoda adaptivă de potrivire a ratelor de recepție și transmisie (Fig. 3).

Rezultatele cercetării arată că metoda adaptivă poate fi utilizată dacă abonatul nu impune cerințe stricte asupra stabilității frecvenței sale de ceas, în caz contrar este necesară netezirea hardware suplimentară a semnalului de ceas recuperat. O alternativă la metoda adaptivă este utilizarea protocolului RTP atunci când se încapsulează date multiplexate în timp în pachete de date asincrone (Fig. 4). După cum au arătat experimentele, în acest caz, cu o stabilitate ridicată a semnalului de ceas restaurat, echipamentul se dovedește a fi slab sensibil la schimbările de frecvență la sursa de ceas, ceea ce este necesar, de exemplu, în rețelele celulare atunci când treceți la o rezervă. semnal de ceas.

Protocolul PTP

Următoarea etapă de dezvoltare, aparent, va fi o transmisie separată a semnalelor de sincronizare a rețelei cu comutare de pachete

folosind protocoale special concepute (Fig. 5). În acest moment, acestea sunt protocoalele NTP și PTP. Aceste protocoale au fost create inițial pentru a sincroniza ora în diferite dispozitive din rețea, dar dacă ceasul este sincronizat cu succes, devine posibil și implementarea algoritmilor de sincronizare a ceasului pentru a restabili datele în timp real. Protocolul NTP (Network Time Protocol) este utilizat pe scară largă pentru a sincroniza ora curentă la nivelul aplicației. În schimb, Precision Time Protocol (PTP) operează la al doilea strat al modelului Open Systems Interconnection (OSI). Protocolul PTP este descris în standardul IEEE 1588. Este de așteptat ca în viitor PTP să poată fi utilizat atât pentru sincronizarea de înaltă precizie a orei curente, cât și pentru sincronizarea ceasului echipamentelor. Să luăm în considerare acest protocol mai detaliat.

Standardul IEEE 1588 sugerează că protocolul PTP oferă o metodă standard pentru sincronizarea dispozitivelor dintr-o rețea cu o precizie mai bună de 1 µs (până la 10 ns). Acest protocol menține dispozitivele slave sincronizate față de master, asigurându-se că evenimentele și marcajele de timp de pe toate dispozitivele folosesc aceeași bază de timp. Protocolul oferă doi pași pentru sincronizarea dispozitivului:

Orez. 3 Sincronizare adaptivă

Fig.4

Se transferă sincronizarea folosind RTP

Fig.5

Transferați sincronizarea folosind PTP

PRIMUL MIL 5–6/2009

Orez. 6 algoritm de operare PTP

dispozitiv master (1) și corectarea derivei timpului cauzată de decalajul ceasului în fiecare dispozitiv și întârzierile în transmiterea datelor prin rețea (2). În timpul inițializării sistemului, PTP utilizează un algoritm „cel mai bun ceas principal” pentru a determina cea mai precisă sursă de sincronizare din rețea. Un astfel de dispozitiv devine master, iar toate celelalte dispozitive din rețea devin sclave și își ajustează ceasurile în funcție de master.

Diferența de timp dintre master și slave este o combinație de decalaj de ceas și întârziere de transmitere a mesajului de sincronizare. Prin urmare, corectarea decalajului de timp trebuie efectuată în două etape: calcularea întârzierilor de transmisie și a decalajului, iar apoi corectarea acestora. Luați în considerare secvența de sincronizare a ceasului a două dispozitive (Fig. 6).

Masterul începe corectarea decalajului ceasului utilizând mesajele de sincronizare și de urmărire. Mesajul de urmărire indică timpul mesajului de sincronizare (TM1) măsurat cel mai aproape de mediul de transmisie pentru a minimiza eroarea de timp a sursei de referință. După ce dispozitivul slave primește primele mesaje de sincronizare și urmărire, își folosește ceasul pentru a marca ora de sosire a mesajului de sincronizare (TS1) și compară acest marcaj temporal cu cel primit de la master în mesajul de urmărire. Diferența dintre aceste două semne reflectă decalajul ceasului T0 plus întârzierea transmisiei mesajului de la master la slave ∆TMS : TS1  – TM1  = T0  + ∆TMS .

Pentru a calcula timpul de întârziere a transmisiei mesajului și decalajul ceasului, slave trimite un mesaj Delay_request cu timpul său TS2. Maestrul observă sosirea acestui mesaj și răspunde cu un mesaj Delay_response etichetat TM2. Diferența dintre cele două mărci este întârzierea transmisiei slave-la-master ∆TSM minus offset-ul din eșantionul slave: TM2  – TS2  =∆TSM  – T0 .

Când se calculează întârzierea transmisiei mesajului, se presupune că întârzierea medie a transmisiei de date pe canal este

asupra mediei aritmetice a întârzierilor de propagare în diferite direcții ale canalului:

TMS + TSM

Cunoscând timpii TS1 , TM1 , TM2 și TS2 , slave calculează întârzierea medie de propagare în legătura de date:

T = (TS1 − TM1 ) + (TM2 − TS2 ) . 2

Sincronizarea finală a ceasului este efectuată după ce comandantul trimite al doilea set de mesaje de sincronizare (TS3) și de urmărire (TM3). Dispozitivul slave își calculează offset-ul ceasului folosind formula T0  = TS3  – TM3  – ∆T.

Dispozitivul slave își ajustează apoi ceasul în funcție de valorile calculate. Deoarece referințele de ceas din fiecare dispozitiv sunt instabile și întârzierile canalului se pot schimba în timp, este necesară reajustarea periodică a ceasului slave.

Caracteristici ale implementării protocolului PTP

Majoritatea implementărilor PTP au o abatere mai mică de 1 µs, totuși precizia reală depinde de aplicație. Protocolul PTP în dispozitive este implementat în trei moduri: software, firmware și hardware. Implementările software ale RTP permit transmiterea semnalelor de sincronizare cu o precizie de aproximativ 100 μs. Pentru a obține o precizie mai mare, trebuie utilizat hardware. Fiecare componentă care procesează un pachet PTP după ce îl primește de pe mediul fizic crește eroarea de sincronizare. Partea software introduce cea mai mare eroare, deoarece sarcina procesorului și întârzierea asociată procesării întreruperi afectează viteza de procesare a cererii de sincronizare.

Atunci când sunt implementate în hardware și software, cele mai sensibile funcții de protocol, cum ar fi scrierea unui marcaj temporal de pachet PTP, sunt implementate la nivelul fizic Ethernet, de exemplu, într-un cip logic programabil separat. Astfel de metode sunt cele mai optime astăzi, deoarece nu necesită prea multe resurse și timp pentru a dezvolta dispozitivul, permițând obținerea unei precizii de aproximativ 20 ns. În cazul unei implementări hardware complete a protocolului PTP, este posibilă o precizie de aproximativ 10 ns.

Pe lângă metoda de implementare, o serie de alți factori afectează acuratețea protocolului PTP. De exemplu, standardul IEEE 1588 nu specifică frecvența ceasului master și slave. Ca rezultat, ceasurile cu frecvență mai mică vor avea o rezoluție de timp mai puțin precisă, rezultând marcaje de timp mai puțin precise în mesajele de ceas. Stabilitatea frecvenței oscilatoarelor de referință afectează și calitatea implementării protocolului. Semnalele de sincronizare obținute folosind oscilatoare de cuarț controlate cu temperatură și compensate cu temperatură vor fi mai stabile (de la -

PRIMUL MIL 5–6/2009

tehnologii

abaterea în părți pe miliard) mai degrabă decât oscilatorii cu cristal

alternativă pentru sincronizarea sistemelor distribuite

fără stabilizare termică (abatere în ppm).

teme cu precizie submicrosecundă.

Topo-

Deci, protocolul PTP este o alternativă

logica rețelei și uniformitatea traficului. Într-o rețea cu un număr mare

metoda de sincronizare a rețelelor, care poate obține

dispozitive vechi și încărcare mare a canalelor de date

distribuție în rețele NGN. Comparativ cu cele folosite în

precizia translației în timp va fi mai proastă. Prin urmare, pentru

în prezent prin intermediul sincronizării, această metodă

de preferinţă se utilizează transmisia semnalelor de sincronizare

are o serie de avantaje:

stabiliți o rețea de date separată.

Nu este necesar accesul la echipament direct la interfața de sincronizare.

scăderea PRC, ceea ce va permite operatorilor să optimizeze

Caracteristici comparative

costurile de construire a rețelei. În același timp, protocolul PTP poate oferi

sisteme de sincronizare

Sincronizarea transmisiei cuptorului cu precizie submicrosecundă

Luați în considerare caracteristicile sistemelor de sincronizare folosind

tew, ceea ce înseamnă că o stabilitate mai bună de 1 ppm este realizabilă;

folosind protocolul PTP, în comparație cu sistemele cu sincronizare

Spre deosebire de metoda adaptivă, pentru a restabili sincronizarea

peste magistrala PXI (linie de sincronizare fizică) și peste protocol

Ronizarea necesită un oscilator de referință foarte stabil

lu NTP (vezi tabel). Spre deosebire de sistemele cu o linie fizică

numai în dispozitivul principal;

sincronizare, unde acuratețea evenimentelor este determinată de acuratețe

Pentru sarcinile de sincronizare, puteți utiliza asincron

semnal de ceas, în protocolul PTP factorii determinanți sunt

canal cu o lățime de bandă relativ mică

există fluctuație de fază (jitter) asociată cu o schimbare aleatorie

performanță, ceea ce reduce semnificativ costul implementării.

nie intervale între pachete. Majoritatea implementărilor de proto-

De preferință, acest canal ar trebui să fie dedicat.

Cola PTP oferă o precizie mai mică de 1 μs.

Având în vedere ușurința implementării rețelelor

O altă valoare importantă care distinge diferite metode

Ethernet, precizie și performanță submicrosecunde

sincronizare, este timpul de așteptare pentru un eveniment de sincronizare

cu costuri minime de procesare a mesajelor, proto-

tiya. Acesta este timpul dintre trimiterea unui eveniment către master

count PTP este din ce în ce mai utilizat în multe industrii, în special

al tău și să-l conducă. Deoarece protocoalele PTP și

în automatizări industriale, metrologie etc. asteptand-

NTP pentru a trimite mesaje de sincronizare folosind

Xia că în viitor capacitățile protocolului PTP îl vor extinde

În cazul pachetelor de date, așteptarea unui eveniment este determinată de timp

aplicație în telecomunicații pentru sincronizarea dispozitivelor

latența pachetelor plus timpul de transmisie și procesare antet

roystvo prin rețele cu comutare de pachete.

pachet și este de obicei de câteva milisecunde. ÎN

diferență față de sistemele cu o linie de sincronizare fizică

Literatură

în așteptarea unui eveniment de sincronizare pentru mai multe

1. Stein Y., Schwartz E. Circuit Extension over IP: The

nanosecunde. Timp de așteptare pentru evenimentul de sincronizare op-

Abordare evolutivă a transportului vocii și moștenirii

determină o astfel de caracteristică ca maxim posibil

Date prin rețele IP. – RAD Data Communications, 2002.

reglarea frecvenței semnalului de ceas.

2. ITU-T G.8261/Y.1361 Cronometrare și sincronizare

Sisteme de sincronizare cu o singură magistrală de sincronizare,

aspecte în rețelele de pachete. – ITU_T, aprilie 2008.

precum PXI sunt ideale pentru înaltă precizie și rapiditate

3. Rodrigues S. Opțiuni de tehnologie pentru livrarea de sincronizare în

stnogo restaurarea de sincronizare și poate fi extins

Rețele de generație următoare. – a treia telecomunicații internaționale

wren la distanțe de până la sute de metri cu ajutorul special

module de sincronizare plasate în casete. Standard-

4. Telegin S.A. Aplicarea multiplexării TDMoIP

Sincronizare strânsă prin Ethernet folosind NTP

pentru transmiterea datelor în rețelele de transport

setează sincronizarea în milisecunde adecvată pentru

GSM. – Lumea neliniară, 2007, v.5, nr.5, p. 270–271.

aplicații cu viteză redusă, nu foarte critice pentru calitate

5. IEEE Std. 1588–2008 Standard IEEE pentru o precizie

sincronizare. Protocolul PTP este bun

Protocol de sincronizare a ceasului pentru rețea

Caracteristici comparative ale sistemelor de sincronizare

Sisteme de Măsurare și Control. – IEEE, iulie 2008.

6. IETF RFC1305 Network Time Protocol (Versiunea 3).

Sincronizarea

Protocol

Protocol

Specificare, implementare și analiză. - IETF,

module pe magistralele PXI

Temporar

<1·107

7. Tan E. IEEE 1588 Precision Time Protocol Time

permisiune

evenimente, ns

Performanță de sincronizare. Nota de aplicare 1728.–

National Semiconductor, octombrie 2007.

așteptări

8. Hamdi M. Neagoe T. A Hardware IEEE-1588

Implementare cu Controlul Frecvenței Procesorului. -

ajustări

Arrow Electronics, august 2006.

PRIMUL MIL 5–6/2009