IEEE1588v2解析(2)--PTP协议概述

EEE 1588 - Precision Time Protocol (PTP)最初发布于 2002;

2008年 做了修订为: IEEE 1588v2 or PTPv2

下面的介绍主要依照 IEEE 1588v2,简称PTP

PTP协议主要用于在网络中的不同设备间分发时间同步信息;

PTP协议工作的大概流程:

  1. PTP协议运行在网路设备的端口
  2. 不同的网络设备之间通过BMC算法(Best Master Clock algorithm)确定精度最高的时钟,确定为全局主时钟(grandmaster clock)
  3. 然后其他时钟都将同步(直接或间接)于全局主时钟。
  4. 全局主时钟通过“sync”报文发送同步时间戳信息,分发给slave时钟。
  5. slave和master之间需要通过指定的方法(有两种方法可选)传输网络的时延
  6. 有了时延值之后,slave时钟可以确定出和master之间的time offset,因而可以进一算出自己的精确时间。
  7. 如果全局主时钟出现故障,可以通过BMC算法确定新的全局主时钟。

时间戳需要硬件实现:

在网络中支持IEEE 1588v2协议的设备,如交换机/路由器,需要在硬件端口具备给进入和发出的PTP报文增加时间戳的能力。为了保证时间戳的准确性,需要在MAC 和 PHY 层之间通过硬件为报文添加时间戳(当报文刚进入或马上离开端口时)。

为了在一个大的网络(或PTP域)分发同步信息,PTP定义了一个时钟分层结构:

  • 普通时钟(Ordinary Clock): 只有一个端口(port)连接到网络的时钟,可以作为master或slave之一; 作为master时候,可以是 grandmaster,作为slave时候,一般作为时钟分发网络的端点设备(end,最后一级)。 
  • 边界时钟(Boundary Clock): 有多个端口连接到网络的时钟,一个slave端口连接到上游设备的PTP端口,其他的端口作为master连接到下游设备的slave端口。下游slave端口同构PTP协议直接同步于边界时钟,而不是直接和grandmaster通信。
  • 透明时钟(Transparent Clock): 一个网络设备,比如交换机,不通过ptp协议进行时间同步,但是能够转发或修改某些经过的PTP报文,比如把PTP报文经过自己时候花费的时间 增加到PTP报文的correctonField。

通过使用以上的时钟分层结构,可以消除或补偿网络交换机带来的jitter和内部时延,最终达到亚微妙的时间同步精度。

  • 2
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值