ImageVerifierCode 换一换
格式:PPT , 页数:45 ,大小:2.47MB ,
资源ID:30847321      下载积分:15 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/30847321.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文((完整版)IEEE-1588协议基础ppt版.ppt)为本站会员(zf)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

(完整版)IEEE-1588协议基础ppt版.ppt

1、IEEE 1588 协议基础篇Contents一、时钟同步模型二、消息字段三、数据集四、数据类型一、时钟同步模型IEEE 1588 又叫网络化测量及控制系统的精确时钟同步协议,PTP(精确时钟协议),使用硬件和软件配合,不需要额外的时钟线,仍然使用原来以太网的数据线传送时钟信号,使组网连接简化和降低成本。1.1 PTP 消息类型分为两类:事件消息、普通消息。事件消息是在发送和接收端都要打精确的时间戳,普通消息不需要打时间戳。(1)事件消息:SYNC、Delay_Req、Pdelay_Req、Pd l R1.2 消息时间戳的产生当发送和接收任何事件消息时,都会产生时间戳。当消息的时间戳点经过节点

2、与网络的边界时,时间戳事件发生,时间戳产生模型如下图所示:上图中 A B C 为打时间戳的点 这个点越靠近1.3 两种同步机制延时请求响应机制(Delay Request-Response Mechanism)对等延时机制(Peer Delay Mechanism)(1)延时请求响应机制使用 Sync、Delay_Req、Follow_Up,Delay_Resp 消息进行消息同步,测量一对 PTP 端口的 ,模型为t2 t1=Delay+Offsett4 t3 =Delay OffsetDelay=(t2 t1)+(t4 t3)2Offset=(t2 t1)(t4 t3)2在算法校正过程中,对

3、从时钟的校正是通过校正 offset 实现的,Delay 通常影响 Offset 的值,因此要通过测量这个延迟值来修正 Offset。(2)对等延时机制对等延时机制用来测量端到端传输时间,如支持对等延时机制的通信端口的链路延时。用 Pdelay_Req,Pdelay_Resp,Pdelay_Resp_Follow_Up 消息进行同步。对于普通和边界时钟,对等延时机制与端口是 master 还是slave 没有关系。=(t2 t1)+(t4 t3)21.4 设备类型有 5 中基本的设备类型(1)普通时钟(Oridinary clock)(2)边界时钟(Boundary clock)(3)端到端透

4、明时钟(End-to-end transparentclock)(4)对等透明时钟(Peer-to-Peer transparentclock)(5)管理节点(Management node)普通和边界时钟的端口,两种机制都可以使用,端到端透明时钟与这两个机制无关,对等透明时钟使用对等延时机制。(1)普通时钟通过以一个物理端口为媒介的两个逻辑接口和网络通信,事件接口用来发送和接收事件消息,包括两类数据集,分别是时钟数据集和端口数据集。端口数据集包含端口属性,包括 PTP 状态。Protocol engine:(1)发送和接收 PTP 消息(2)维护数据集(3)执行与端口相关的状态机(4)如果端

5、口在 slave 状态,基于接收到的 PTP定时消息和产生的时间戳,计算 Master 的时间。Local clock:当普通时钟端口在 slave 状态时,本地时钟的控制环路调节时钟,使它的时钟与它的主一致。如果端口在 master 状态,本地时钟在 freerun 状态(2)边界时钟边界时钟模型如图所示,有多个物理端口,每个端口和一个普通时钟的端口类似,但有一些例外:1)时钟数据集对边界时钟的所有端口共用;2)local clock 也对边界时钟的所有端口共用;3)每一个协议引擎需要附加功能,它需要处理所有端口的状态,决定利用哪个端口提供的时间信号来同步本地时钟。与同步、建立主从层次和信令

6、相关的信息终止在一个边界时钟的协议引擎,不再向前转发,管理消息由边界时钟的其它端口转发,服从限制一个系统的消息传输时间的约束(3)End-to-End 透明时钟设备模型如图所示,像一个网桥、路由器和转发器一样,端到端透明时钟发送所有的消息。对于 PTP 事件消息,驻留时间桥测量 PTP 事件消息的驻留时间。驻留时间在一个特殊的域 correctionField 累积。这些校正是当事件消息进入和离开透明时钟产生的时间戳的不同。校正值计算如下图所示注意 用来计算驻留时间的时间戳是基于本地时间产a)RC(Rate Control)利用延时请求响应机制校正本地时钟频率等于master 的时钟频率。这个

7、方法的关键是它的操作是一个闭环,这意味着在一个节点的本地振荡器调节会影响下面的节点。b)RE(Rate Estimation)不控制本地振荡器,让其自由运行,用本地时间计算的驻留时间加到 Sync或者 Follow_Up 消息中,比较接收到的 sync 和Follow_Up 的驻留时间,计算本地自由运行时钟与上一级时钟之比。当驻留时间相对于时钟比值的足够大,一连串透明时钟的最差相位误差累(4)Peer_to_Peer 透明时钟设备模型如图所示,与 End_to_End 透明时钟不同在于:它校正和处理PTP 定时消息的方式上。对等透明时钟有一个 block,这个 block 用来计算每个端口与其

8、它端口的链路延时。通过交换Pdelay_Req,Pdelay_Resp 和Pdelay_Resp_Follow_Up 消息来计算。对等透明时钟和链路延时的校正模型如下图所示。(5)管理节点管理节点的设备特征是:a)可以有一个或者多个物理连接连接到网络中;b)PTP 管理消息的手动或可编程接口。c)能结合所有的时钟类型。1.5 同步在协议的执行过程中又来那个阶段:(1)建立主从层次;(2)同步时钟1.5.1 建立主从层次PTP 的状态有:Master、Slave 和 Passive。利用最佳主时钟算法来找最好的时钟,包含两个独立算法:(1)数据集比较算法(2)状态决策算法数据集比较算法以下列这些

9、优先属性比较算法:(1)priority1:用户可配置的指定,指这个时钟是否是固定的可选时钟;(2)clockClass:详细说明时钟的 TAI 可跟踪性属性;(3)clockAccuracy:定义一个时钟精度的属性;(4)offsetScaledLogVariance:定义时钟稳定性属性;(5)Priority2:是否是备选的主时钟;(6)clockIdentity:基于独特标志符的附加表示规则。最佳主时钟算法清楚地选择两个时钟中的一个更优。简单的主从层次如下图所示:只有普通和边界时钟维持这种状态形式,同时也只有边界时钟能在主从层次中建立分支点。二、消息字段PTP 协议根据发送和接收到的消息

10、来计算时间偏差和延迟,每个消息都由一个消息头(header),消息体(body)和消息后缀(suffix)组成。2.1 消息头2.1.1 transportSpecific(Nibble)根据传输的媒介有不同的说明。2.1.2 MessageType(Enumeration4)2.1.3 versionPTP(UInteger4)是发送消息节点的数据集 portDS.versionNumber 的值。2.1.5 domainNumber(UInteger8)此消息的发出节点不同,domainNumber 的值不同。2.1.6 flagField(Ocet2)一些标志位,表示的意义如下表2.1.

11、7 correctionField(Integer64)它的值是 ns 数诚意 216,如 2.5ns 表示成0 x0000000000028000,它的值依赖于消息类型2.1.8 sourcePortIdentity(PortIdentity)sourcePortIdentiy 的值是发送消息端口数据集的 portDS.portIdentity 的值。2.1.9 sequenceId(UInteger16)除了 Follow_Up、Delay_Resp、Pdelay_Resp、Pdelay_Resp_Follow_Up、management 消息外,所有的消息都有 sequenceId 序列

12、池,对于从同一个时钟的同一个端口发出同一个消息,后一个消息的 sequenceId 是前一个的值 1,采用循环计数的方式。2.1.10 controlField(UInteger8)主要是为兼容 V1 版本而设置的一组值,接收方不使用这组消息。2.1.11 logMessageInterval(Integer8)的值决定于消息类型 如2.2 Announce消息域如表:2.2.1 originTimestamp(Timestamp)当 Announce 消息发送时,这个的值置为 0 或者是与发送节点的本地时间相差在1s 之内。2.2.2 currentUtcOffset2.2.3 grandm

13、asterPriority1(UInteger8)发送节点数据集成员的 parentDS.grandmasterPriority1 的值。2.3.4 grandmasterClockQuality(ClockQuality)发送节点数据集成员的 parentDS.grandmasterClockQuality 的值。2.3.5 grandmasterPriority2(UInteger8)发送节点数据集成员的 parentDS.grandmasterPriority2 的值。2.3.6 grandmasterIdentity(ClockIdentity)数据集成员的 parentDS.gran

14、dmasterIdentity 的值。2.3.7 stepsRemoved(UInteger16)发送消息的时钟数据集的 currentDS.stepsRemoved 的值。2.3 Sync 和 Delay_Req 消息2.3.1 originTimestamp(Timestamp)对于 Sync 消息,当为 One-step 时钟时,OriginTimestamp 的值应该是 Sync 的,不包括小数 ns,Sync 消息correctionField 的值和originTimestamp 的值应该是真实的。当为 Two-step 时钟时,originTimestamp 的值还是,不包括小数

15、 ns,但是 correctionField 的值是 0,由对应的 Follow_Up 消息来表示2.4 Follow_Up 消息2.4.1 preciseOriginTimestamp(Timestamp)Follow_Up 消息的 preciseOriginTimestamp 是与对应的 Sync消息的 ,Follow_Up 消息和Sync 消息的 correctionField的和与 preciseOriginTimestamp 相加,就是同步消息发送的精确时间。2.5 Delay_Resp 消息2.6 Pdelay_Req 消息注意:这里的 reserved 域是为了使得 Pdelay

16、_Req 消息的长度等于 Pdelay_Resp 消息的长度,因为在一些网络或者网桥中,长度不同的消息有不同的传输时间,这样会引来不对称误差。2.7 Pdelay_Resp 消息2.9 管理消息2.9.1 domainNumber of the headerdomainNumber 应该是目标 domain2.9.2 sequenceId of the header如果是一个响应 management 消息,sequenceId 是接收到的管理消息的sequenceId,否者也有一个序列池。012345 FGETSETRESPONSECOMMONDACKNOWLEDGEReserved2.9.

17、4 startingBoundaryHops(UInteger8)对于非响应的管理消息,startingBoundaryHops 是依情况变化的。对于响应的管理消息,它的值是 startingBoundaryHops boundaryHops。2.9.5 boundaryHops(UInteger8)指管理消息在边界时钟的剩下需连续转发数量。2.9.6 actionFiled(Enumeration4(hex)Value)Action三、数据集普通和边界时钟应该维护的数据集有:(1)defaultDS(2)currentDS(3)parentDS(4)timePropertiesDS(5)po

18、rtDS透明时钟应该维护的数据集:(1)transparentClockDefaultDS(2)transparentClockPortDS数据集有三种属性:分别为 staticdynamic3.1 defaultDS 数据集成员说明defaultDS 数据集是描述时钟本身的属性。成员有-defaultDS.twostepFlag-defaultDS.clockIdentity-defaultDS.numberPorts-defaultDS.clockQuality-defaultDS.priority1-defaultDS.priority2-defaultDS.domainNumber-d

19、efaultDS.slaveOnly前三个是静态数据成员defaultDS.clockQuality 是动态成员,包括:(1)defaultDS.clockQuality.clockClass(2)defaultDS.clockQuality.ClockAccuracy(3)defaultDS.clockQuality.offsetScaledLogVariance这三个数据成员都是时钟自己的属性。3.2 currentDS 数据集成员说明数据成员都是动态的,包括的成员有:(1)currentDS.stepsRemoved指的是在本地时钟和 grandmaster 时钟之间通信路径的数量。(2

20、)currentDS.offsetFromMaster=(3)currentDS.meanPathDelay按照两种机制算出来的路径延迟。3.3 parentDS 数据集说明parentDS 数据集的初始化应该在 defaultDS 数据集初始化之后,它的所有成员都是动态的。数据集成员有:(1)parentDS.parentPortIdentity指的是发送 Sync 消息的 Master 的 PortIdentity,初始化值应该遵循:a)parentDS.parentPortIdentity.clockIdentity 的值是defaultDS.clockIdentity 的值。b)par

21、entDS.portNumber 的值初始化为 0。(2)parentDS.parentStats如果时钟有一个端口是 Slave 状态,并且统计地计算出了parentDS.observedParentOffsetScaledLogVariance 和parentDS observedParentClockPhaseChangeRate 的值时(4)parentDS.observedParentClockPhaseChangeRate以从时钟来观察的 parent 时钟的相位变化率估计,正值表示parent 时钟的相位变化率大于 slave 时钟的相位变化率。初始化值为 7FFFFFFF。注:

22、这个值依赖于测量时间间隔,如果这个值对一个应用来说确实有用,时间间隔应该在 PTP 协议中说明。(5)parentDS.grandmasterIdentity它是 grandmaster 时钟的 clockIdentity。初始化值为defaultDS.clockIdentity。(6)parentDS.grandmasterClockQuality(7)parentDS.grandmasterPriority1(8)parentDS.grandmasterPriority25 678 都是 grandmaster 的对应的值初始化时都初始化成3.4 timePropertiesDS 数据集成

23、员说明timePropertiesDS 数据集成员有:(1)timeProtertiesDS.currentUtcOffset(2)timeProtertiesDS.currentUtcOffsetValid(3)timeProtertiesDS.leap59(4)timeProtertiesDS.leap61(5)timeProtertiesDS.timeTraceable(6)timeProtertiesDS.frequencyTraceable(7)timeProtertiesDS.ptpTimescale(8)timeProtertiesDS.timeSourcecurrentDS 数

24、据集的所有成员都是动态的。timeProtertiesDS.ptpTimescale 的值应该在其它数据集成员初始化之前进行初始化。3.5 portDS 数据集成员说明对普通时钟的端口和边界时钟的每个端口,应该维护端口数据集来给协议决策和提供消息域的值作为基础。数据集的数量应该是defaultDS.numberPorts 的值。静态成员有:(1)portDS.portIdentity这个值就是本地端口的 PortIdentity 属性。动态成员有:(1)portDS.portState:值与状态的对应关系如下表所示(2)portDS.logMinDelayReqInterval指的是 Dela

25、y_Req 消息最小允许的平均时间间隔,这个值是slave 发个 master,这个的值视 master 时钟能处理的 Delay_Req 消息的能力来确定。(3)portDS.peerMeanPathDelay如果时钟是 peer-to-peer 时钟,这个的值硬挨链路上的当前单路传输延迟的估计。可配置成员有:(1)portDS.logAnnounceInterval这个值说明 Annouce 消息发送的时间间隔。(2)portDS.announceReceiptTimeoutportDS.announceReceiptTimeout 的值指发出ANNOUNCE_RECEIPT_TIMEOU

26、T_EXPIRES 时,没有收到Announce 消息的个数。(3)portDS.logSyncInterval指的是 Sync 消息的时间间隔四、数据类型数据类型有源数据类型和衍生数据类型,衍生数据类型都是由源数据类型构成的。4.1 源数据类型4.2 衍生数据类型(1)时间间隔类型描述 TimeIntervalstruct TimeIntervalInterger64 scaledNanoseconds;/单位是 2-16ns。(2)时间戳类型描述 Timestampstruct TimestampUInteger48 seconds;UInteger32 nanoseconds;(3)Cl

27、ockIdentitytypedef Octet8 ClockIdentity;(4)PortIdentitystruct PortIdentityClockIdentity clockIdentity;(5)PortAddress 表示 PTP 端口协议地址Struct PortAddressEnumeration16 networkProtocol;UInteger16 addressLength;OctetaddressLength addressField;(6)时钟质量struct ClockQualityUInteger8 clockClass;Enumeration8 clock

28、Accuraccy;Integer16 offsetScalelogVariance;(7)TLV 扩展struct TLV(8)PTP Text 用来表示 PTP 消息的文本材料Struct PTPText UInteger8 lengthField;OctetlengthField textField;(9)FaultRecord 用来组成错误纪录UInteger16 faultRecordLength;Timestamp faultTime;Enumeration8 severityCode;PTPText faultName;PTPText faultValue;PTPText faultDescription;BackBackBackBackBack

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1