PTP (Precision Time Protocol,精确时间协议) IEEE1588

        精确时间协议(PTP)是一种用于在整个计算机网络中同步时钟的协议。在局域网上,它可实现亚微秒级的时钟精度,使其适用于测量和控制系统。 IEEE 1588专为要求精度超出使用NTP可获得的精度的本地系统而设计。

        IEEE 1588标准描述了用于时钟分配的分层主从体系结构。在这种体系结构下,时间分配系统由一个或多个通信媒体(网段)和一个或多个时钟组成。普通时钟是具有单个网络连接的设备,并且是同步基准源(PTP-master)或目标(PTP-slave)。边界时钟具有多个网络连接,可以准确将一个网段与另一个网段同步。为系统中的每个网段选择一个同步PTP-master。根定时基准称为grandmaster。它将同步信息传输到在其网段上的时钟。存在于该网段上的边界时钟随后将准确的时间中继到它们也连接到的其他网段。

        简化的PTP系统通常由连接到单个网络的普通时钟组成,并且不使用边界时钟。选择了一个grandmaster,所有其他时钟直接与其同步。

         IEEE 1588:2008标准引入了与用于传送PTP消息的网络设备相关的时钟。透明时钟在PTP消息通过设备时对其进行修改。消息中的时间戳会根据遍历网络设备所花费的时间进行校正。该方案通过补偿整个网络中的交付可变性来提高分发准确性。

      PTP通常使用与Unix时间相同的纪元(1970年1月1日开始)。Unix时间是基于协调世界时(UTC)并受闰秒影响,而PTP是基于国际原子时(TAI)。PTP Grandmaster传达UTC和TAI之间的当前偏移量,这样就可以从收到的PTP时间计算出UTC。

         精确时间协议(PTP)IEEE 1588旨在同步用于电信,电网,金融市场和工业自动化的LAN中的实时时钟,目前特别采用该协议来同步金融HFT交易,移动电话塔传输LTE/ 5G BTS ,海底声波阵列以及任何需要精确定时但无法访问GNSS时间基准的网络。

        在高速,多段LAN上实现的典型精度在100ns之内,并且在某些情况下要好得多。 PTP的版本1于2002年发布,版本2于2008年发布,并且不向后兼容,不久之后将有望推出新的PTP IEEE1588版本2.1

       PTP消息使用基于Internet协议的用户数据报协议(UDP / IP)进行传输。 IEEE 1588-2002第1版仅使用IPv4传输,但已将其扩展为在IEEE1588-2008规范中包括IPv6。在PTPv1 IEEE1588-2002中,所有PTP消息均使用多播消息传递发送,而PTPv2 IEEE1588-2008则为设备提供了选项在逐个端口的基础上协商单播传输。组播传输使用IP组播编址,为IPv4和IPv6定义了组播组地址。

       事件消息发送到端口号319。

       常规消息使用端口号320。

终端和网络设备

        IEEE 1588标准描述了用于时钟分配的分层主从体系结构

        1588时钟是一个振荡器,通常是一个温度补偿晶体振荡器(TCXO),以及一个以秒和纳秒为单位表示从1970年1月1日以来的时间的计数器。预期的时标是国际原子时间(TAI),其中规定UTC偏移和闰秒的提前通知。时间表示与POSIX相似,不同之处在于PTP秒字段具有48位,从而使时间戳长10个八位位组。

多少个从站支持PTP Master?

简短的答案:这取决于…

稍长一点的答案:

       NTS-5000 PTP IEEE1588扩展卡(LAN3及更高版本)的设计可以处理大约。每秒350个传出PTP消息。在多播中,这意味着:

s + d * n <350或n <(350 -s)/ d

       其中s是每秒同步消息的数量(one-step一步),d是每秒延迟请求消息的数量,n是从设备的数量。我们也有公告消息,但是这些消息通常以非常低的速率保存,因此并不重要。假设同步请求和延迟请求的速率相同,这意味着:

  • 1/秒:349,但为了安全起见,我们说250。这在很大程度上取决于slave在时间上如何分配他们的延
  • 迟请求。
  • 2 /秒:174
  • 32 /秒:9(在我们的实验室中测试)
  • 64 /秒:4(在我们的实验室中测试)

在单播中,公式为:

(s + d + a)* n <350或n <350 /(s + d + a)

        其中s是每秒同步消息(one-step一步)的数量,d是每秒延迟请求消息的数量,a是每秒通告消息的数量,n是从属设备的数量。假设同步和延迟请求的速率相同,并且默认宣布速率为每两秒1):

  • 1 /秒:140
  • 2 /秒:77
  • 16 /秒:10(在我们的实验室中测试)
  • 32 /秒:5(在我们的实验室中测试)
  • 64 /秒:2(在我们的实验室中测试)

        现在,这是理论计算(尽管已在一定程度上进行了实际验证),因此请记住这一点,并在任何数字上使用合理的余量。

        另一个非常重要的事情是,我们的Edge Grandmasters和Gateway时钟的概念大大降低了对高消息速率的需求,这是因为这些设备将更接近客户端,而它们之间的网络则不那么复杂。在大多数情况下,16 msg / s或以下应足够。