PTP - Precision Time Protocol

Precision Time ProtocolAccuratezza di sincronizzazione nanosecondo

Fino a pochi anni fa, per la sincronizzazione distribuita dei clock dei computer in una rete LAN (Local Area Network), era possibile utilizzare protocolli standard come l’NTP (Network Time Protocol) e SNTP (Simple Network Time Protocol).
Per soddisfare queste richieste provenienti dal mondo dell’energia e dell’IT, è stato introdotto (per la prima volta nel 2002) lo standard IEEE 1588 Precision Time Protocol (PTP), offrendo un metodo per la sincronizzazione del clock con un precisione nell’ordine del microsecondo e (talvolta) nanosecondo. Nel 2008 è stata pubblicata la seconda versione del protocollo PTP (non retro-compatibile con la versione PTP V1). Dal 2008 ad oggi il PTP è diventato sempre di più indispensabile per sincronizzare in maniera precisa i processi, come ad esempio nel caso dei sistemi di automazione e controllo, misura e test automatico, centrali di produzione elettrica, nel mondo delle telecomunicazioni (5G) e nel settore dell’IT e del trading (MiFID II).
Ma come funziona il protocollo PTP?
La soluzione adottata per la sincronizzazione dei clock su una rete Ethernet è quella dell’invio agli slaves di un messaggio contenente il valore del tempo del PTP Grandmaster. Ricevuto il pacchetto dal PTP Grand Master, gli slave impostano il proprio clock in modo da farlo coincidere a quello del master. Tuttavia, a causa del tempo necessario per l’invio del messaggio ed a causa del ritardo di propagazione del percorso Ethernet, ai ritardi introdotti dalle CPU per l’elaborazione dei pacchetti ed al tempo (non statisticamente prevedibile) trascorso negli switch, il tempo in cui viene ricevuto dallo slave non indica in maniera precisa il tempo del Grand Master.

Il PTP risolve questo problema con diversi soluzioni: il protocollo PTP infatti prevede l’utilizzo di un Hardware Timestamping per timestampare il pacchetto scambiato tra il Grand Master e lo slave, definito attraverso l’IEEE 1588-2008.
Nella figura sopra il diagramma mostra lo scambio di messaggi tra un PTP grandmaster ed un PTP slave. Il tempo di partenza e di arrivo del messaggio di Sync e di Delay Request sono salvati con 4 timestamp (t1-t4). Il messaggio di Follow-Up e di Delay_response sono utilizzati per trasportare i time stamp salvati dal master clock allo slave, in modo che abbia le informazioni necessarie per regolare il tempo. Alla fine di questi scambi il clock del dispositivo slave ha tutti e quattro i timestamp e quindi si può calcolare l'offset del suo orologio rispetto al master attraverso la formula sotto.
Delay = [(t2-t1) + (t4-t3)]/2
Offset = (t2-t1) - Delay

Switch e router che sono PTP aware provvedono anche ad inserire il timestamp sui messaggi PTP in transito. I dispositivi possono essere di due tipi: Trasparent Clock che funzionano aggiornando il campo del pacchetto PTP con il tempo di transito all’interno del dispositivo stesso e Boundary Clock, che utilizzano il messaggio PTP per impostare il proprio clock e quindi inviare il messaggio di tempo a tutti gli slave che ne hanno bisogno fungendo a sua volta da master per la rete sottostante.
Prodotti con supporto PTP Hardware
Oregano Systems dispone di un Transparent Clock E2E PTP con un’accuratezza di timestamp di circa 2 nanoSecondi. Meinberg dispone invece di una vasta gamma di PTP Grand Master con supporto di PTP V1 ( IEEE 1588v1 ) e PTP V2 e di tutti i profili PTP attualmente sul mercato, come IEEE 1588v2 Default Profile, l’ Enterprise Profile, l’ IEEE C.37.238 Power Profile per il settore dell’energia, ITU-T G.8265.1 Telecom Frequency Profile, ITU-T G.8275.1 Telecom Phase / Time Profile (full timing support) e ITU-T G.8275.2 Telecom Phase / Time Profile (partial timing support) per il settore delle Telecomunicazioni, l’ SMPTE ST 2059-2 Broadcast Profile, IEEE 802.1AS TSN/AVB Profile, AES67 Media Profile e DOCSIS 3.1 per il mondo del broadcast e audio.

Prodotti correlati
Meinberg M1000
Il LANTIME M1000 è un apparato modulare aggiornabile sul campo ed estremamente flessibile che copre le esigenze di sincronizzazione di oggi e di domani.
Meinberg microSync
microSync è un Timeserver / PTP Grandmaster che all'interno di mezza unità rack dispone di svariate uscite e garantisce delle performance elevate.