IEEE1588的一些基本概念

合集下载

IEEE_1588协议

IEEE_1588协议

IEEE_1588协议IEEE1588协议,也称为精密时钟同步协议,是一个用于实时系统中精确同步时钟的网络协议。

它的目标是提供亚微秒级的时钟同步精度,以满足高精度和高同步性能的实时应用需求。

IEEE1588协议主要用于工业自动化、电力系统、通信系统等领域,能够实现在分布式系统中所有时钟设备之间的同步。

IEEE 1588协议的原理是基于主从模式,其中一个设备是主时钟(Master Clock),该设备通过发送同步消息来广播时间信息,其他设备则是从时钟(Slave Clock),它们通过接收同步消息来校正自身的时钟。

主从模式可以实现网络中所有设备的时间同步,但是主时钟设备需要提供高精准的参考时钟。

IEEE1588协议的消息格式如下:1. Sync消息(同步消息):主时钟设备通过此消息广播时间信息,从时钟设备通过解析此消息来校正自身的时钟。

2. Delay_Req消息(延迟请求消息):从时钟设备通过向主时钟设备发送此消息来计算时钟矫正的延迟。

3. Follow_Up消息(跟随消息):主时钟设备通过此消息回复Delay_Req消息,包含时钟矫正延迟的信息。

4. Delay_Resp消息(延迟响应消息):主时钟设备通过此消息回复Delay_Req消息,包含时钟矫正延迟的信息。

5. PDelay_Req消息(精确延迟请求消息):用于测量主从时钟之间的延迟。

6. PDelay_Resp消息(精确延迟响应消息):用于回复PDelay_Req消息,包含主从时钟之间的延迟信息。

7. Announce消息(通告消息):用于通知网络中的设备主时钟的更改。

IEEE 1588协议的核心算法是时钟同步算法,该算法通过计算往返时延(Round-Trip Delay)来实现时钟同步。

往返时延包括主时钟设备发送Sync消息到从时钟设备接收到Follow_Up消息的时间,以及从时钟设备收到Delay_Resp消息到主时钟设备接收到的时间。

IEEE-1588-v2-简介(共31张)

IEEE-1588-v2-简介(共31张)
1. PTP:IEEE Std 1588-2008(即IEEE-1588v2)中定义的重
要协议,即精密时间协议
2. PTP设备:用于产生或收发PTP消息的设备
3. PTP端口:用于访问PTP时钟设备的逻辑端点
4. E2E延迟:端到端延迟 5. P2P延迟:点对点延迟
第18页,共31页。
IEEE-1588v2 关键 名词 (guānjiàn)
3. 网络路径的延迟可能存在不对称性及抖动,软件时标 是造成不对称性与抖动的关键因素
第6页,共31页。
路径延迟(yánchí)的不对称性与抖动
1. IEEE 1588的路径延迟测量假设通信路径延迟是对称的,
即前向路径的传输延迟与后向传输延迟相同。 2. 在延迟测量期间,延迟不应变化。测量期间延迟变化会导
1. PTP普通时钟:PTP ordinary clock
2. PTP边界时钟:PTP boundary clock
3. PTP透明时钟:PTP transparent clock 4. 单步时钟:one step colock 5. 双步时钟:two step colock
第19页,共31页。
边界(biānjiè)时钟与普通时钟
1. 在成百上千台互连设备中,如何确定哪一台设备充当主时钟。 2. IEEE-1588定义了一种称为“最佳主时钟”(BMC) 的算法,用于选择最合适的主时
钟设备。
3. 这种方法要求IEEE-1588网络的每台设备均提供一个数据集,描述其本地时钟 的性质、质量、稳定性、唯一识别符和首选设置。
4. 当一台设备加入IEEE-1588网络时,它会广播其时钟的数据集,并接收所有其它设备 的数据集。
2. 要得到Tms需要两个重要的计算因子

1588协议简介

1588协议简介

IEEE1588协议简介IEEE1588协议,又称PTP(precise time protocol,精确时间协议),可以达到亚微秒级别时间同步精度,于2002年发布version1,2008年发布version2。

IEEE1588协议的同步原理,所提出的Delay Request-Response Mechanism(延时响应机制)如图1所示。

图1 PTP协议延迟响应机制图中所描述的PTP报文为以下几种:(1)sync同步报文(2)Follow_up跟随报文(3)Delay_req延迟请求报文(4)Delay_resp延迟请求响应报文延迟响应同步机制的报文收发流程:1.主时钟周期性的发出sync报文,并记录下sync报文离开主时钟的精确发送时间t1;(此处sync报文是周期性发出,可以携带或者不携带发送时间信息,因为就算携带也只能是预估发送时间戳originTimeStamp)2.主时钟将精确发送时间t1封装到Follow_up报文中,发送给从时钟;(由于sync报文不可能携带精确的报文离开时间,所以我们在之后的Follow_up报文中,将sync 报文精确的发送时间戳t1封装起来,发给从时钟)3.从时钟记录sync报文到达从时钟的精确时到达时间t2;4.从时钟发出delay_req报文并且记录下精确发送时间t3;5.主时钟记录下delay_req报文到达主时钟的精确到达时间t4;6.主时钟发出携带精确时间戳信息t4的delay_resp报文给从时钟;这样从时钟处就得到了t1,t2,t3,t4四个精确报文收发时间。

时钟偏差&网络延时offset:时钟间偏差(主从时钟之间存在时间偏差,偏离值就是offset,图1中主从时钟之间虚线连接时刻,就是两时钟时间一致点)delay:网络延时(报文在网络中传输带来的延时)从时钟可以通过t1,t2,t3,t4四个精确时间戳信息,得到主从时钟偏差offset和传输延时delay:从时钟得到offset和delay之后就可以通过修正本地时钟进行时间同步。

IEEE1588的高精度时间同步算法的分析与实现

IEEE1588的高精度时间同步算法的分析与实现

IEEE1588的高精度时间同步算法的分析与实现IEEE1588,也被称为精确时间协议(PTP),是一种用于网络中实现高精度时间同步的协议。

它在各种工业应用和通信系统中被广泛采用,因为它可以提供微秒级甚至亚微秒级的精度,满足了许多应用的实时性要求。

首先,IEEE 1588协议需要在网络中选择一个主时钟(Master Clock),作为时间同步的源头。

主时钟拥有最高的时间精度,并将其时间信息通过数据包广播给其他时钟节点。

其他节点被称为从时钟(Slave Clock),它们通过接收到的时间数据来调整自身的时钟,并与主时钟保持同步。

在主时钟启动时,它会周期性地发送特殊的数据包,称为同步事件(Sync Event)。

这些数据包包含了主时钟的当前时间戳,从时钟接收到这些数据包后,会记录接收时间戳。

当从时钟收到一定数量的同步事件后,它会计算出与主时钟的相对时间差,并根据这个时间差来调整自身的时钟。

为了确保时间同步的准确性,IEEE 1588采用了两个重要的概念,即时钟同步和时间戳校准。

时钟同步通过周期性的同步事件来实现,从而减小网络延迟带来的时间误差。

而时间戳校准则通过周期性地发送延迟请求(Delay Request)和延迟响应(Delay Response)数据包来估计网络延迟,并相应地调整时间戳。

在实际的实现中,IEEE1588通常使用硬件支持或软件实现的方式。

硬件支持一般通过专用的电路芯片或FPGA来实现,它们能够提供更高的时间精度和更低的延迟。

而软件实现则是在通用的计算机上运行,通过操作系统和网络协议栈来实现时间同步功能。

在软件实现中,IEEE1588通常依赖于操作系统的时钟服务和网络协议栈。

操作系统的时钟服务提供了计算机系统的时间信息,并提供了时间戳的功能。

网络协议栈则负责封装和发送数据包,并处理收到的数据包以提取时间戳信息。

在实现中,需要考虑以下几个关键问题:1.时间同步精度:在实现中,需要根据具体应用的要求选择合适的时钟源和自适应算法,以达到所需的精度。

IEEE1588协议

IEEE1588协议

1588v2
• 原理
• 实现
• TC模型
• 具体时钟同步过程:1.偏移测量+2.延迟测 量
IEEE 1588协议
1588协议介绍
• 什么1588协议: IEEE1588协议是网络测量和控制系统的精密 时钟同步协议标准,采用PTP(精密时钟同步) 协议。此标准的目的就是为了精确地把测量 与控制系统中分散、独立运行的时钟同步起 来。
• 技术特点:
同步技术 技术特点 • PTP(精确时钟 同步协议),利 用协议报文传递 同步信息 优势 • 可以实现时间同 步 • 时钟精度为亚us 级,应用范围广 • 协议自动协商、 无需配置 局限 • 要求全网设备支 持,必须全网部 署 • 新技术,要求硬 件支持,协议较 复杂,部署成本 较高

IEEE1588

IEEE1588
间,从而与主时钟同步。
源也较少,可以在嵌入式计算机系统中使用。该协议
可以应用的同步介质也十分广泛,既可以在应用广泛 的以太网中进行同步,也适用于通过支持多点传送信 息的局域网通信的系统,其能够使异种系统实现同步。 IEEE1588协议是通过连接在网络硬件接口上的辅助硬 件通道来触发获取时间标签的,它可以最大限度地消 除由软件产生的响应延迟所造成的不确定因素,使同 步精度达到亚微秒级。
off set_f rom_master = Ts1-Tm1-one_way_delay (1)
这里要说明的是,式(1) 中的one_way_delay 指的是主时 钟与从时钟之间的传输延迟时间,它将在下面的延迟测量 阶段测出,所以在这里是未知的。由于报文传输网络存在 着一定的延迟,因此还应进行网络延迟的测量。
则由上面的算式可得:
off set_ f rom _ master = ( (Ts1 /Tm1) - ( Tm2 /Ts2) ) / 2 (2)
one_way_delay = ( ( Ts1 / Tm1) + ( Tm2 / Ts2) ) / 2 (3) 根据式(2) 和式(3) 计算出的值,从时钟可以调整自己的时
IEEE1588协议历史
1985年以太网成为IEEE802.3标准后,1995年数据传 输速度从10Mb/s提高到100Mb/s,在这个过程中,计 算机界和网络界也在致力于解决以太网的定时同步能 力不足的问题,开发出了一种软件方式的网络时间协 议(NTP)以提高各网络设备之间的定时同步能力。 1992年NTP版本的同步准确度可以达到200μs,但是仍 然不能满足测量仪器和工业控制所需的准确度。为了 解决测量和控制应用的分布网络定时同步的需要,具 有共同利益的工程技术人员在2000年底成立了网络精 密时钟同步委员会,该委员会起草的规范在2002年底 获得IEEE标准委员会通过作为IEEE1588标准。

IEEE Std 1588基本技术

IEEE Std 1588基本技术

误差和延时的计算(P2P)
➢P2P的模式使用的报文类型
Sync报文:主站发送 Followup报文:主站发送 PDelayReq报文:主、从站均可发送 PDelayResp报文:主、从站均可发送 PDelayRespFollowup报文:主、从站均可发送
误差和延时的计算(P2P)
• 线路延时Delay:[(t6 – t5) + (t4 – t3)] / 2 • 时钟误差Offset:(t2 – t1) - Delay
• 线路延时的计算:IEEE-1588中定义了E2E( EndToEnd)或P2P(PointToPoint)同步机制
• 报文转发延时的计算:IEEE-1588中定义的TC 要提供该功能
乒乓对时原理
• 基本的乒乓对时原理与NTP对时原理是一致的
PTP通信方式
通信协议层
IEEE802.3(二层协议报文) UDP/IPv4(三层协议报文) UDP/IPv6(三层协议报文)
误差和延时的计算(E2E)
Master
time
t1
Sync
Follow up
Delay_Req
t8
TC time
Slave time
t2
Sync
t3
Sync
Follow up
t4
Follow up
Delay_Req t6 t7
Delay_Req
t5
Delay_Resp
Delay_Resp
Delay_Resp
目前大多主钟还只支持多播模式
PTP同步机制
一步法:使用一条报文提供同步时间信息 两步法:事件报文触发的时间信息,由跟
随其后的另一条Followup报文提供

IEEE_1588协议基础ppt版

IEEE_1588协议基础ppt版
统的消息传输时间的约束
(3)End-to-End透明时钟 设备模型如图所示,像一个网桥、路由器和转发器一样,端 到端透明时钟
发送所有的消息。对于PTP事件消息,驻留时间桥测量PTP事件 消息的驻留
时间。驻留时间在一个特殊的域-correctionField累积。这些校 正是当事件消
息进入和离开透明时钟产生的时间戳的不同。校正值计算如下 图所示
注意 用来计算驻留时间的时间戳是基于本地时间产
a)RC(Rate Control) 利用延时请求响应机制校正本地时钟频率等于 master的时钟频率。这个方
法的关键是它的操作是一个闭环,这意味着在一个节 点的本地振荡器调节会
影响下面的节点。
b) RE(Rate Estimation) 不控制本地振荡器,让其自由运行,用本地时间计 算的驻留时间加到Sync
(1)事件消息:SYNC、Delay_Req、Pdelay_Req、 Pd l R
1.2 消息时间戳的产生 当发送和接收任何事件消息时,都会产生时间戳。 当消息的时间戳点经
过节点与网络的边界时,时间戳事件发生,时间戳产 生模型如下图所示:
上图中A B C为打时间戳的点 这个点越靠近
1.3 两种同步机制
sequenceId,否者也有一个序列池。
2.9.4 startingBoundaryHops(UInteger8) 对于非响应的管理消息,startingBoundaryHops是依情况变 化的。对于响应的管理
消息,它的值是startingBoundaryHops-boundaryHops。 2.9.5 boundaryHops(UInteger8)
发送节点数据集成员的parentDS.grandmasterClockQuality的 值。

IEEE1588的一些基本概念

IEEE1588的一些基本概念

IEEE1588的一些基本概念1PTP系统(from 6.3) (2)2PTP报文类别(from 6.4) (2)3PTP设备类型(from 6.5) (3)4同步概况(from 6.6) (4)5PTP的epoch(from 7.1) (6)6通信路径非对称性(from 7.4) (7)7延迟问答机制Delay request-response mechanism(from 11.3) (8)8Peer 延时机制Peer delay mechanism(from11.4) (9)9PTP报文格式(from 13) (10)101588组播地址 (13)IEEE1588标准的全称是“网络测量和控制系统的精密时钟同步协议标准(IEEE 1588 Precision Clock Synchronization Protocol)”,简称PTP(Precision Timing Protocol),它的主要原理是通过一个同步信号周期性的对网络中所有节点的时钟进行校正同步,可以使基于以太网的分布式系统达到精确同步,IEEE 1588PTP时钟同步技术也可以应用于任何组播网络中。

参考标准及网上其他文章,一些总结或翻译的基本概念:1PTP系统(from 6.3)一个PTP系统是一个分布式的网络系统,它是由PTP设备和一部分非PTP设备组成。

PTP设备包括普通时钟(ordinary clocks),边界时钟(boundary clocks),端对端时钟(end-to-end transparent clocks),点对点时钟(peer-to-peer transparent clocks)和管理节点。

非PTP设备包括网桥,路桥及其他基础结构设备,也可能包括计算机,打印机和其他应用设备。

2PTP报文类别(from 6.4)PTP定义了事件和通用PTP两种报文,事件报文(event message)需要打上精确的时间戳(timestamp),通用报文(general message)不需要精确的时间戳。

[实用参考]IEEE1588协议介绍

[实用参考]IEEE1588协议介绍






内容提纲

时间分发协议概述


IEEE1588基本操作 协议内容介绍 协议具体实现及精度保证 IEEE1588 v2新特性 协议应用
系统时间及其重要性 时钟同步精度 为什么引入IEEE1588协议
内容提纲

时间分发协议概述 IEEE1588基本操作

基本报文交互流程 偏差和延迟测量 时钟调整

协议内容介绍 协议具体实现及精度保证 IEEE1588 v2新特性 协议应用
IEEE1588基本操作
报文发送与接收

但远不止如此简单……
IEEE1588基本操作
Delay, Jitter两个待解决问题
IEEE1588基本操作
Drift (Phase change rate)计算

根据offset, delay值计算时间调整量 校准Slave时钟为Master时钟
内容提纲

时间分发协议概述 IEEE1588基本操作

基本报文交互流程 偏差和延迟测量 时钟调整

协议内容介绍 协议具体实现及精度保证 IEEE1588 v2新特性 协议应用
内容提纲

单个PTP端口 一般为系统end设备 多个PTP端口 通常为网络中的路由器或交换机等通信设备

时间分发协议概述 IEEE1588基本操作 协议内容介绍

时钟类型及模型 报文类型、数据类型 拓扑、BMC、协议状态机及Data sets

协议具体实现及精度保证 IEEE1588 v2新特性 协议应用
IEEE1588协议内容
时钟类型

IEEE1588协议

IEEE1588协议

IEEE1588协议IEEE 1588协议是一种用于时钟同步的网络通信协议,其全称为"Precision Clock Synchronization Protocol for Networked Measurement and Control Systems"。

该协议是由IEEE所制定的,旨在解决分布式系统中设备时钟同步问题。

在分布式系统中,设备之间的时钟同步是至关重要的。

准确的时钟同步能够确保系统中的各个设备在不同节点上以一致的时间进行操作,从而实现更可靠的协调和协同工作。

此外,在一些需要严格时间同步的应用领域,如工业自动化、电力系统等,时钟同步则是成功实现系统任务的基础。

传统的时钟同步方法中,基于GPS(Global Positioning System)的时间同步方案是一种常见的解决方法。

然而,GPS无法完全适用于所有场景,尤其是对于移动设备、室内场景等。

IEEE 1588协议的出现,则为这类应用场景的时钟同步问题提供了有效的解决方法。

IEEE 1588协议基于主从(Slave)的建模方式,其中主时钟(Master Clock)负责向从时钟(Slave Clock)广播时钟信号。

具体而言,协议通过周期性发送时间戳消息来实现主从时钟之间的同步。

在主时钟发送时间戳消息时,从时钟会接收该消息,并通过与其内置的本地时钟进行比较,进而进行时钟校正。

这样,从时钟就可以根据主时钟的参考进行同步,从而实现各个设备间的时钟同步。

IEEE 1588协议定义了两个核心消息:Sync(同步)和Delay_Req(延迟请求)。

Sync消息用于主时钟广播当前的时间信息,而Delay_Req消息用于从时钟向主时钟请求延迟信息。

协议还提供了一些附加消息,如Follow_Up(回应)、Delay_Resp(延迟回应)和Pdelay_Req(对称延迟请求),用于进一步优化时钟同步过程。

除了时钟同步外,IEEE 1588协议还提供了一种高级特性,即时钟精度统计(Clock Accuracy Estimation)。

1588协议

1588协议

1588协议1588协议是一种用于精确时间同步的网络协议,广泛应用于工业自动化领域,以及其他需要对网络设备进行时间同步的应用场景。

该协议由IEEE(Institute of Electrical and Electronics Engineers)提出,并于2008年正式发布。

1588协议主要用于解决网络设备之间的时钟同步问题。

在许多实时应用场景中,如电力系统、工业控制等,设备之间的时钟同步至关重要。

而1588协议通过网络中的时间同步客户端和时间同步服务器之间的协作,使网络设备能够达到亚微秒级的时钟同步精度。

1588协议的基本工作原理是在网络中定义一个主时钟(Master Clock)和多个从时钟(Slave Clock),主时钟提供准确的时间信号,从时钟根据主时钟的时间信号进行同步。

主时钟和从时钟通过1588协议进行通信,主要包括消息的传输和同步算法。

1588协议的消息传输基于以太网,具体采用了一种称为“半透明时间戳”的技术。

该技术通过在以太网数据帧中添加时间戳信息,实现对数据帧的时间戳同步。

使用半透明时间戳技术,可以消除网络延迟对时钟同步精度的影响,提高同步性能。

1588协议的同步算法主要分为两个阶段,首先是粗同步(Coarse Synchronization),然后是精细同步(Fine Synchronization)。

粗同步阶段主要用于快速同步从时钟的相对时间,通过对主时钟发出的时间同步消息进行计算来实现。

在精细同步阶段,从时钟通过与主时钟的时间差进行反馈,逐步调整自己的时钟频率和相位,实现对主时钟信号的精确同步。

1588协议还支持多个从时钟同时同步的场景,可以通过对从时钟进行分级管理,组织多级时间同步网络。

每一级的从时钟都可以同步上一级的主时钟,实现全局的时间同步。

总之,1588协议是一种通过网络实现设备时钟同步的协议,具有高精度、高性能的特点。

在工业自动化领域,该协议被广泛应用于实时控制系统、电力系统等场景。

智能变电站同步IEEE1588介绍

智能变电站同步IEEE1588介绍
P2P TC
Link 3
Propagation time = tp2
S Ordinary Clock-3
P2P TC
N∑−1 Sync correction field + Follow Up correction field = (tri + tpi ) (1)
i =1
N∑−1
∑ N
total propagation plus residence time = tri + tpi
104
t1
A
106
Precise
Receive
Time (106)
108
Offset
t2
Computation
110
Precise
Send Time
(111)
112
114
Key Equations:
112
A = t1 – t0 = Delay + Offset B = t3 - t2 = Delay – Offset Delay = (A+B) / 2
电力系统应用1588的优势
高精度时钟同步(<1us);
郑小军 (国电南自)
IEEE 1588 —— 高精度对时协议
2010年7月8日 5 / 23
电力系统应用1588的优势
高精度时钟同步(<1us); 复用以太网络,无需单独铺设电缆(相对于GPS、IRIG-B);
郑小军 (国电南自)
IEEE 1588 —— 高精度对时协议
2010年7月8日 8 / 23
路径延时问题
以太网交换机报文排队引入抖动; 报文排队不可预知,Qos对此有些帮助; 100Mbps,64字节报文⇒5us; 100Mbps,1500字节报文⇒120us; OC可以通过高精度过滤器过滤一些抖动太大的报文;

IEEE1588及其测试方法简介

IEEE1588及其测试方法简介

( 2012/2/8 10:51 )1 IEEE1588概述IEEE1588定义了为网络测量和控制系统提供精确时钟同步协议的标准,运营商、电力、制造、运输等各大行业的部分系统都需要一个能在低成本、易部署的以太网上为其提供高精度时钟同步的方法,IEEE1588能满足此需求。

可以预见,IEEE1588将是这些业务系统的重要组成部分,在部署它之前需要对设备能力进行充分的测试,以确保满足业务要求。

IEEE1588分为两个版本,本文参照版本2——IEEE Std 1588-2008。

2 IEEE1588基本原理2.1 IEEE1588几个基本概念●域(Domain)是一个逻辑概念,属于同一个域的设备之间进行信息同步,不同域之间不需要同步。

●普通时钟(Ordinary Clock),在一个域中只有一个运行PTP协议的端口,既可以是主时钟,也可以是从时钟。

●边界时钟(Boundary Clock),在一个域中有多个运行PTP协议的端口,可以同时是主时钟和从时钟。

●端到端(End-to-end)E2E透明时钟,位于主从时钟之间,计算自身的驻留时间并累加到报文的修正域中。

●点到点(Peer-to-peer)P2P透明时钟,位于主从时钟之间,计算点到点链路时延和自身的驻留时间并累加到报文的修正域中。

2.2 主从关系的建立在一个域中,普通时钟和边界时钟的每个端口都有各自独立的状态,各个端口通过最佳主时钟算法(BMC,Best Master Clock algorithm),比较收到的宣告(Announce)报文内容以及自身配置,计算端口状态,状态包括主、从、消极(既不是主时钟,也不向主时钟同步,出现在环路情况下),BMC算法在一个网段上只会选择一个主设备。

此外,一个域中还存在一个超级主时钟(Grandmaster Clock),其它设备的都直接或间接向其同步。

一个域中会达到一个相对稳定的状态,具体参见图1。

图1 主从关系的建立2.3 PTP协议报文交互PTP协议是IEEE1588的核心协议,设备之间通过运行PTP协议,交互PTP报文,实现时间和频率的同步。

IEEE1588基础知识

IEEE1588基础知识

IEEE1588常见知识整理:deep_pro2013年2月21日1588协议的二层实现和四层实现的区别二层实现和四层实现只是工程师的口头说法。

所谓的四层实现(也有人叫1588的三层实现或应用层实现),指的是IEEE1588-2008标准的附录D:Transport of PTP over User Datagram Protocol over Internet Protocol。

示意图如下:所谓的二层实现,指的是IEEE1588-2008 (PTPv2)标准的附录F:Transport of PTP over IEEE 802.3 /Ethernet。

Ethertype是0x88F7,不是四层图中L/T的0x0800。

后面的结构也就不是IP数据包了。

1588的二层实现和四层实现,跟软件硬件都没有联系。

仅仅是数据帧结构不同。

纯软件也能做到IEEE1588的二层实现。

所以并不代表二层实现比四层实现的精度高,它们最高都能实现10ns的精度(相同环境,例如都是P2P)。

因为数据帧结构不同,1588相关的数据结构在以太网帧中相对于帧首界定符(SFD)的偏移也不同。

意味着这2种实现之间不能互通。

四层实现只能对四层实现,二层实现只能对二层实现。

四层的实现能够跨IP网段,能够支持E2E和P2P。

二层的实现只能在一个局域网(MAC地址的广播范围内)内起作用,只支持P2P。

现在了解到的情况是电力行业通常使用的是二层实现;电信行业常见的是四层实现,并且是PTPv2。

1588的纯软件实现、硬件辅助实现图中A方式表示接收时间戳和发送时间戳的获取,完全是应用软件实现的。

例如应用软件识别到接收到了一个1588 sync包,再去取当前的系统时间作为t2。

这是最差的实现,精度只能达到ms级。

图中B方式表示时间戳的获取,在内核中断服务里实现,但同样是中断服务识别接收到一个1588同步包之后才去获得接收时间;在内核识别到一个1588同步帧要被发送才去取发送时间。

IEEE1588测试

IEEE1588测试

消息类型
事件信息(需要时间戳)
Sync Delay_Req Pdelay_Req Pdelay_Resp
通用消息(不需要时间戳)
Announce Follow_Up Delay_Resp Pdelay_Resp_Follow_Up Management Signaling
事件戳
软件时间戳
通常由接收/发送的ISR处理,该时间戳为系统当前时间
硬件时间戳
实际到达/离开PHY时出现的硬件时间戳,添加时间戳由 硬件执行,硬件会维护一个自己的连续时间信息
边界时钟与普通时有一个逻辑接口,可看做多个普通时 钟的集成。
PTP透明时钟:PTP transparent clock
测量事件消息穿越透明时钟的所需的时间,并写入到事件消息的响应 字段。
端到端延迟:E2E Delay 时钟设备到时钟设备的总延时 点到点延迟:P2P Delay 两个直连设备之间的延迟
IEEE1588可以实现频率同步和时间(相位 )同步。
IEEE1588工作原理就是通过PHY添加在报 文中的时间戳。
1588概念
PTP普通时钟:PTP ordinary clock
基于一个物理端口上的两个逻辑接口在网络上通信,事件接口用于发送和接 收事件消息,通用接口用于发送和接收通用消息。
PTP边界时钟:PTP boundary clock
P2P 协议
IEEE Std 1588-2008 精密时间协议
1588可以解决的问题 时钟的漂移与抖动(频率调整) 传输路径延迟(相位调整) 路径延迟的不对称性与抖动(硬件时间戳) 对称性:前向/后向路径的传输延迟 抖动:中断延迟、环境切换、线程调度
1588介绍 IEEE 1588是网络测量和控制系统的精密时钟 同步协议标准,采用P2P(精密时钟协议) ,精度可以达到亚微秒级。

IEEE Std 1588基本技术

IEEE Std 1588基本技术

PTP网络中的节点类型
• OC: Ordinary Clock • BC: Boundary Clock • TC: Transparent Clock
– P2P-TC – E2E-TC
2P 透明时 钟TC
边界时 钟BC
E2E 透明时 钟TC,
• MN: Management Node
IEEE Std 1588基本技术
主讲:胡啸
2012.05
电力系统中常用的对时方式
IRIG-B码
光IRIG-B码 电IRIG-B码(AC、DC)
脉冲对时(PPS、PPM) 串行口报文对时 NTP、SNTP对时 IEEE Std 1588网络对时(PTP对时)
PTP对时与其它对时方案 的对比
PTP中的BMC功能
BMC:Best Master Clock,即最优主钟算法 • BMC算法主要 GC a GC b 用于解决网络 中多台主钟设 备共享的问题 网络 A • BMC算法的实 网络 B 现是通过主钟 广播 Announce IED IED IED IED 报文实现的
PTP 交换机 TC PTP 交换机 TC
乒乓对时原理
• 基本的乒乓对时原理与NTP对时原理是一致的
PTP通信方式
通信协议层
IEEE802.3(二层协议报文) UDP/IPv4(三层协议报文) UDP/IPv6(三层协议报文)
PTP通信方式
单播与多播
多播
使用01-1B-19-00-00-00 或01-80-C2-00-00-0E 作为目的 MAC地址 使用224.0.1.129,224.0.0.107为目的IP(UDP时) 使用319,320 为目的通信端口(UDP时)

IEEE 1588PTP介绍

IEEE 1588PTP介绍

IEEE 1588PTP介绍IEEE 1588PTP协议借鉴了NTP技术,具有容易配置、快速收敛以及对网络带宽和资源消耗少等特点。

IEEE1588标准的全称是“网络测量和控制系统的精密时钟同步协议标准(IEEE 1588 Precision Clock Synchronization Protocol)”,简称PTP(Precision Timing Protocol),它的主要原理是通过一个同步信号周期性的对网络中所有节点的时钟进行校正同步,可以使基于以太网的分布式系统达到精确同步,IEEE 1588PTP时钟同步技术也可以应用于任何组播网络中。

IEEE 1588将整个网络内的时钟分为两种,即普通时钟(Ordinary Clock,OC)和边界时钟(Boundary Clock,BC),只有一个PTP通信端口的时钟是普通时钟,有一个以上PTP通信端口的时钟是边界时钟,每个PTP端口提供独立的PTP通信。

其中,边界时钟通常用在确定性较差的网络设备(如交换机和路由器)上。

从通信关系上又可把时钟分为主时钟和从时钟,理论上任何时钟都能实现主时钟和从时钟的功能,但一个PTP通信子网内只能有一个主时钟。

整个系统中的最优时钟为最高级时钟GMC(Grandmaster Clock),有着最好的稳定性、精确性、确定性等。

根据各节点上时钟的精度和级别以及UTC(通用协调时间)的可追溯性等特性,由最佳主时钟算法(Best Master Clock)来自动选择各子网内的主时钟;在只有一个子网的系统中,主时钟就是最高级时钟GMC。

每个系统只有一个GMC,且每个子网内只有一个主时钟,从时钟与主时钟保持同步。

图1所示的是一个典型的主时钟、从时钟关系示意。

图1 主时钟、从时钟关系示意图同步的基本原理包括时间发出和接收时间信息的记录,并且对每一条信息增加一个“时间戳”。

有了时间记录,接收端就可以计算出自己在网络中的时钟误差和延时。

IEEE 1588的高精度时间协议

IEEE 1588的高精度时间协议

IEEE 1588的高精度时间协议摘要:IEEE 1588 是关于网络测量和控制系统的精密时间协议(precision time protocol,PTP)标准,其网络对时精度可达亚μs 级。

文章介绍了IEEE 1588 标准定义的高精度时钟同步的原理以及PTP 时钟模型文章从理论上分析了IEEE 1588 标准的时钟同步误差,最后从全网的角度探讨论了该标准的具体应用策略。

关键词:IEEE 1588;时钟同步;IEC61850正文:首先,我们先来了解一下什么是IEEE 1588。

IEEE1588 的概念是定义了一个在测量和控制网络中, 与网络交流、本地计算和分配对象有关的精确同步时钟的协议( PT P) 。

从这个概念中,我们提取到了测量和控制,以及一个同步时钟协议,那么我就先从网上资料比较多的PTP说起。

根据网上提供的资料:PT P 参考体系结构如图1 所示。

硬件单元由一个高度精确的实时时钟和一个用来产生时间印章的时间印章单元( T SU ) 组成。

软件部分通过与实时时钟和硬件时间印章单元的联系来实现时钟同步。

PT P 这种体系结构的目的是为了支持一种完全脱离操作系统的软件组成模型, 如图2 所示。

根据抽象程度的不同, PT P 可分为3 层结构: 协议层、OS 抽象层和OS 层。

下面我们来简单说一下时间同步的实现。

根据网上的资料显示,同步实现主要有一下几步,偏移测量,延迟测量和最后通过信息的交换来完成实现。

如下面这幅简单地示意图总结:精密时钟协议将IEEE1588 标准化达到亚微妙范围内的同步精确度, 而且还存在提高精确度的潜力。

它适用于那些需要实现最高精确度分布时钟的时间同步的有限网络领域。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

IEEE1588的一些基本概念1PTP系统(from 6.3) (2)2PTP报文类别(from 6.4) (2)3PTP设备类型(from 6.5) (3)4同步概况(from 6.6) (4)5PTP的epoch(from 7.1) (6)6通信路径非对称性(from 7.4) (7)7延迟问答机制Delay request-response mechanism(from 11.3) (8)8Peer 延时机制Peer delay mechanism(from11.4) (9)9PTP报文格式(from 13) (10)101588组播地址 (13)IEEE1588标准的全称是“网络测量和控制系统的精密时钟同步协议标准(IEEE 1588 Precision Clock Synchronization Protocol)”,简称PTP(Precision Timing Protocol),它的主要原理是通过一个同步信号周期性的对网络中所有节点的时钟进行校正同步,可以使基于以太网的分布式系统达到精确同步,IEEE 1588PTP时钟同步技术也可以应用于任何组播网络中。

参考标准及网上其他文章,一些总结或翻译的基本概念:1PTP系统(from 6.3)一个PTP系统是一个分布式的网络系统,它是由PTP设备和一部分非PTP设备组成。

PTP设备包括普通时钟(ordinary clocks),边界时钟(boundary clocks),端对端时钟(end-to-end transparent clocks),点对点时钟(peer-to-peer transparent clocks)和管理节点。

非PTP设备包括网桥,路桥及其他基础结构设备,也可能包括计算机,打印机和其他应用设备。

2PTP报文类别(from 6.4)PTP定义了事件和通用PTP两种报文,事件报文(event message)需要打上精确的时间戳(timestamp),通用报文(general message)不需要精确的时间戳。

事件报文包括:SyncDelay_ReqPdelay_ReqPdelay_Resp通用报文包括:AnnounceFollow_UpDelay_RespPdelay_Resp_Follow_UpManagementSignalingSync, Delay_Req, Follow_Up和Delay_Resp通过应答机制(delay request-response mec hanism)用于产生和通信用于同步普通时钟和边界时钟的时间信息。

Pdelay_Req, Pdelay_Resp和Pdelay_Resp_Follow_Up通过peer延时机制(peer delay m echanism)用于测量两个时钟port之间的链接延时。

链接延时被用来更正在Sync和Follow _Up报文中的时间信息。

Annouce用于建立同步层次关系。

Management用于查询和更新时钟所维护的PTP数据集。

Signaling用于其他的目的,例如在主从之间协调单播报文的发送频率。

3PTP设备类型(from 6.5)包括:a) Ordinary clock 普通时钟一个普通时钟通过基于一个物理端口上的两个逻辑接口在网络上通信。

事件接口用于发送和接收事件报文,通用接口用于发送和接受通用报文。

在一个PTP的域内,普通时钟只能处于唯一的一种状态,可以是主钟,也可以是从钟。

一个普通时钟维护两种类型的数据集:时钟数据集和端口数据集。

协议引擎负责:发送和接受PTP报文,维护数据集,执行与端口关联的状态机,根据接收到的PTP时间报文和产生的时间戳计算主机时间(如果端口处于从状态)。

b) Boundary clock 边界时钟边界时钟通常会有多个物理端口,每个物理端口有两个逻辑接口:时间和通用。

边界时钟的每个端口与普通时钟基本一致,除了:边界时钟所有的端口的时钟数据集是公用的,公用一个本地时间。

每个协议引擎会有额外的功能来解析所有端口的状态,从而决定哪个端口用来提供时间信号来同步本地时钟。

c) End-to-end transparent clock 端对端透明时钟端对端透明时钟象一个普通的桥、路由器或中继器那样转发所有的报文。

但对于PTP 事件报文,resident time bridge会测量PTP事件报文的停留时间(esidence times:报文穿越透明时钟所需要的时间)。

这个时间会写入到这个PTP事件报文或者其后续follow up报文(Follow_Up或者Pdelay_Resp_Follow_Up)的特定字段中(correctionField)。

这个更正值是基于事件报文进入和离开透明时钟时的时间戳的差值。

d) 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作出回应。

e) Management node有一条或者多条物理链接到网络上;作为一个通向PTP管理报文的人机或编程接口;可以与任何时钟类型组合。

4同步概况(from 6.6)建立主从层次关系:在一个域中,普通时钟和边界时钟的每个端口都有一个独立的协议状态机,每个端口检查其接受到的所有的Annouce报文,利用最佳主时钟算法(Best Master Clock,BMC),决定时钟端口的状态:Master,Slave还是Passive。

最佳主时钟算法通过比较描述两个时钟的数据来决定哪个数据描述了更好的时钟。

这个算法有两个分离的算法组成:数据集比较算法和状态决定算法。

数据集比较算法是基于相关属性的逐队比较的,这些属性包括有:priority1, clockClass, clockAccurary, offsetScaledLogVariance, priority2, clockIdentity.状态决定算法依据数据集比较算法的结果决定该端口的下一个状态。

普通时钟和边界时钟的同步:基本的同步报文交换过程:报文交换过程: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-t1Meanpathdelay=((t2 - t1) + (t4 - t3))/2在支持peer-to-peer路径更正中测量连接延时:这里没有主从之分Port-1:发送一个Pdelay_Req报文,并记下该时间t1。

Port-2:接收到Pdelay_Req报文,记下接收时间t2,然后返回一个Pdelay_Resp报文,记下该报文的发送时间t3。

(收到报文到发送报文的时间间隔要尽可能的短以减小由于两个端口之间的频率偏移引起的误差。

)然后Port-2可以:1. 在Pdelay_Resp中返回t2和t3的差值。

2. 在Pdelay_Resp_Follow_Up报文中返回t2和t3的差值。

3. 在Pdelay_Resp和Pdelay_Resp_Follow_Up报文中分别返回t2和t3。

Port-1:接收到Pdelay_Resp后,记下时间t4。

利用这四个时间可以计算平均链路延时。

Meanpathdelay=((t2 - t1) + (t4 - t3))/2如果链路传输不对称会引起链路传输延时误差。

5PTP的epoch(from 7.1)epoch时间起源PTP epoch is 1 January 1970 00:00:00 TAI, 也就是31 December 1969 23:59:51.999918 UTC.6通信路径非对称性(from 7.4)<meanPathDelay>,delayAsymmetry<meanPathDelay> = (tms + tsm)/2tms = <meanPathDelay> + delayAsymmetry,tsm = <meanPathDelay> ─ delayAsymmetry.delayAsymmetry的测量不在这个标准范围内。

普通时钟和边界时钟的offset计算(from 11.2)对于单步的时钟,即只有sync没有follow up报文,slave做如下计算<offsetFromMaster> = <syncEventIngressTimestamp> ─ <o r iginTimestamp> ─<meanPathDelay> ─ correctionF ield of Sync message.对于两步的时钟,即sync和follow up报文都有,slave做如下计算<offsetFromMaster> = <syncEventIngressTimestamp> ─ <preciseOriginTimestamp> ─<meanPathDelay> ─ correctionField of Sync message ─ correctionField of Follow_Up message.这里,offsetFromMaster是slave与master的时间偏移,syncEventIngressTimestamp即slave 收到的时间t2,originTimestamp是master发给slave sync报文自带的时间信息源t1,preciseOriginTimestamp master发给slave follow up报文自带的时间信息源t1 meanPathDelay 即平均路径延时,可以通过the Delay request-response mechanism和the peer delay mechanism两种机制来计算。

相关文档
最新文档