分享

IEEE1588时钟(PTP时钟系统)介绍

 法律安全 2019-01-16
1、 IEEE1588介绍
IEEE1588标准的全称是“网络测量和控制系统的精密时钟同步协议标准(IEEE 1588 Precision Clock Synchronization Protocol)”,简称PTP(Precision Timing Protocol),它的主要原理是通过一个同步信号周期性的对网络中所有节点的时钟进行校正同步,可以使基于以太网的分布式系统达到精确同步,IEEE 1588PTP时钟同步技术也可以应用于任何组播网络中。
一个PTP系统是一个分布式的网络系统,它是由PTP设备和一部分非PTP设备组成。 PTP设备包括普通时钟(ordinary clocks),边界时钟(boundary clocks),端对端时钟(end-to-end transparent clocks),点对点时钟(peer-to-peer transparent clocks)和管理节点。非PTP设备包括网桥,路桥及其他基础结构设备,也可能包括计算机,打印机和其他应用设备。
1.1 PTP设备分类
1)Ordinary clock 普通时钟
一个普通时钟通过基于一个物理端口上的两个逻辑接口在网络上通信。事件接口用于发送和接收事件报文,通用接口用于发送和接受通用报文。在一个PTP的域内,普通时钟只能处于唯一的一种状态,可以是主钟,也可以是从钟。
一个普通时钟维护两种类型的数据集:时钟数据集和端口数据集。
协议引擎负责:发送和接受PTP报文,维护数据集,执行与端口关联的状态机,根据接收到的PTP时间报文和产生的时间戳计算主机时间(如果端口处于从状态)。
2)Boundary clock 边界时钟
边界时钟通常会有多个物理端口,每个物理端口有两个逻辑接口:时间和通用。边界时钟的每个端口与普通时钟基本一致。边界时钟所有的端口的时钟数据集是公用的,公用一个本地时间。每个协议引擎会有额外的功能来解析所有端口的状态,从而决定哪个端口用来提供时间信号来同步本地时钟。
3)End-to-end transparent clock 端对端透明时钟
端对端透明时钟象一个普通的桥、路由器或中继器那样转发所有的报文。但对于PTP事件报文,resident time bridge会测量PTP事件报文的停留时间(esidence times:报文穿越透明时钟所需要的时间)。这个时间会写入到这个PTP事件报文或者其后续 follow up报文(Follow_Up或者Pdelay_Resp_Follow_Up)的特定字段中(correctionField)。这个更正值是基于事件报文进入和离开透明时钟时的时间戳的差值。
4)Peer-to-peer transparent clock点对点透明时钟
点对点透明时钟与端对端透明时钟主要区别在于它更正和处理PTP时间报文的方式,除此以外,两者是一样的。
点对点透明时钟对于每一个端口有一个额外的模块,这个模块用来计算每个端口和与它分享这条链接的另一端(也要支持点对点透明时钟)的链路延时。这个链路的延时计算是基于与其链路端交换Pdelay_Req,Pdelay_Resp和可选的Pdelay_Resp_Follow_Up报文过程的。端对端透明时钟是更正所有的PTP Event 时间报文,而点对点只更正Sync和Follow_Up报文,因为延时已经确定了。这些报文中的correctionField字段会被Sync报文的 Residence时间和链路延时时间更新。由于链路之间的延时已经包含在correctionField中,所以点对点透明时钟中的Master时钟不用对每个slave时钟的Delay_Req作出回应。
1.2 PTP基本原理
1)基本同步报文交互过程
1. Master发送Sync报文,记下该报文的本地发送时间t1;
2. Slave接收到Sync报文,并记下其接收到该报文的本地时间t2;
3. Master有两种方式告诉Slave该Sync报文的发送时间t1;
  1) 将t1时间嵌入到Sync报文中,这需要某种硬件处理以获得高精度;
  2)在后续的Follow_Up报文中发送;
4. Slave发送Delay_Req报文往Master,并记下发送时间t3;
5. Master接收到Delay_Req,并记下该报文到达时间t4;
6. Master发送Delay_Resp报文告知Slave t4。
利用这四个时间可以算出从钟与主钟之间的offset,以及两个钟之间的平均延时,(如上图即为t-ms and t-sm的平均值 )计算的前提是假设主钟到从钟和从钟到主钟的时延是相同的。
Offset=t2-t1
Meanpathdelay=((t2 - t1) + (t4 - t3))/2
2)1588软硬件实现


图中C方式表示接收时间戳和发送时间戳的获取,完全是应用软件实现的。例如应用软件识别到接收到了一个1588sync包,再去取当前的系统时间作为t2。这是最差的实现,精度只能达到ms级。图中B方式表示时间戳的获取,在内核中断服务里实现,但同样是中断服务识别接收 到一个1588同步包之后才去获得接收时间;在内核识别到一个1588同步帧要被发送才去取发送时间。无论收发时间戳都不是很准确的,所以只能达到几百us的精度。B、C都是纯软件的实现方式。A是硬件辅助实现。关键是在MAC或者PHY层,接收和发送时,都以帧首界定符SFD为采样点取时间戳,并有机制把时间戳传递给上层软件。phy层的时间戳传递更加困难,因为MDC/MDIO 的带宽有限;所以一些1588phy能把时间戳直接插入到1588 数据包传递上去。因为硬件取到的收发时间戳是非常精确的,之后无论在B层还是C层维护1588状态机都没有关系,最终都能做到10ns的精度。
赛思同步时钟SM2000采用了C的方式,用硬件实现IEEE1588输出。

2、1588时间服务器介绍
赛思时钟产品SM2000是一款支持IEEE1588的电信级高精度网同步设备,采用数字锁相环技术和基于FPGA(现场可编程逻辑门阵列)的自主守时算法,提供高精度、高可靠性的时间频率基准信号。该产品通过泰尔实验室检验认证,取得了工信部颁发的1级和2级节点时钟设备入网许可,可以提供符合ITU-T G.811、G.812标准的基准时钟源。
SM2000除了提供传统的2Mbit/2MHz频率同步信号外,还可以提供PPS+TOD、NTP、PTP等时间输出,是一款时频一体化的同步设备。目前该产品已广泛应用于移动运营商的通信同步网、电力系统通信同步网、轨道交通等同步场景。



2.1产品特点
Ø  机构采用独立4U,19英寸设计
Ø  全冗余设计,可靠性高
Ø  支持板卡热插拔,支持扩展机箱
Ø  支持IEEE1588v2,提供二层/三层PTP输出
Ø  支持NTP、PTP、DCLS、PPS+TOD等时间信号输出
Ø  通过工信部一级、二级入网测试
Ø  通过泰尔实验室7、8、9级抗震测试
Ø  通过低气压检验,同样适用于高原地区
Ø  支持CLI、SNMP、TLI配置管理设备

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多