1、PTP简介
PTP(precision time protocol)精确时间协议,是一种时间同步的协议,对应 IEEE 1588 标准,是基于网络数据包的一种时间同步协议,1588v2的同步精度可以达到ns级,但1588协议对硬件有依赖。
2、PTP原理
时间同步的核心就是不同时钟源之间的“对齐”,那么多个时钟源实体之间,要解决两个问题:
a、主从关系:两个设备或端口,谁作为基准方,谁作为跟随方。
b、对齐跟踪:如何实现从端RTC对齐主端RTC。
1588协议针对两个问题分别给出了解决方案;实际上1588中存在两套协议,一套是控制面协议,用于确定主从关系,一套是业务面协议,用于主从之间时间对齐。
控制面协议采用基于STP协议(生成树算法)的自动选源协议,被称为BMCA。
具体实现是依赖Announce报文携带信息,选出根节点和设备上的根端口,从而生成树状的结构,在我们的应用场景中这不是重点。
数据面协议采用双向打戳定时协议, 1588的理论依据需要来回路径严格对称,协议默认收发物理链路上的时延相等。下面重点介绍双向打戳的技术原理。
图1:delay one step