协议:802.1AS-2020.pdf(这个有多域的概念)

802.1AS,2020版本的-网络基础文档类资源-CSDN下载

802.1AS的SystemIdentity理解_cao849861802的博客-CSDN博客

802.1AS的BMCA(最佳主时钟选举)理解_cao849861802的博客-CSDN博客

802.1AS 延迟测量理解_cao849861802的博客-CSDN博客

内容只作为我自己的理解;红色为自我理解内容,绿色和黑色为原文

这里只看媒体相关层的MD实体部分的11.1.3,不管媒体无关层的10.2的部分内容

11.1.3 Transport of time-synchronization information

注意:一定要注意时钟同步整个系统都是相对于主时钟的时基来计算的;

PTP 实例使用 Sync 和 Follow_Up(或只是 Sync)消息传输时间同步信息,如图 11-2 所示。 该机制在数学上等同于 IEEE Std 1588-2019 中描述的用于同步的对等透明时钟的机制(参见 IEEE Std 1588-2019 的 10.1、10.3、11.1 和 11.4)。 然而,通过同步的对等透明时钟和边界时钟传输同步的过程在数学和功能上是等效的。 两种时钟的主要功能区别是边界时钟参与最佳主机选择并调用 BMCA,而对等透明时钟不参与最佳主机选择并且不调用 BMCA(以及两种类型的时钟可以不同)。

图 11-2 显示了三个相邻的 PTP 实例,索引为 i-1、i 和 i+1。同步使用两步时间同步从 PTP 实例 i-1 传输到 PTP 实例 i,然后使用单步时间同步传输到 PTP 实例 i+1。 PTP Instance i-1 在时间 ts,i-1 向 PTP Instance i 发送一条相对于 PTP Instance i-1 的 LocalClock 实体的Sync 消息。稍后(因为它使用两步时间传输),PTP 实例 i-1 向 PTP 实例 i 发送关联的 Follow_Up 消息,其中包含preciseOriginTimestamp、correctionFieldi-1 和 rateRatioi-1。preciseOriginTimestamp包含Grandmaster Clock 最初发送此同步信息时的时间。它没有在此处编制索引,因为它通常不会随着 Sync 和 Follow_Up 消息穿越网络而改变。变量correctionFieldi-1包含发送Sync消息时的同步时间(即与本地时间ts,i-1对应的同步时间)与precisionOriginTimestamp之间的差异。 PrecisionOriginTimestamp 和 CorrectionFieldi-1 的总和给出了对应于 ts,i-1 的同步时间。 rateRatioi–1 是 Grandmaster Clock 频率与 PTP Instance i–1 的 LocalClock 实体频率的比值

precisionOriginTimestamp是来源与GM的source clock实体,一直在报文中传输
rateRatio:这个比值是Grandmaster Clock 频率: localclock频率
rateRatioi-1:是主时钟频率与PTP实例i-1的LocalClock实体的频率之比
rateRatio在Follow_Up 消息(或同步消息,如果启用了可选的一步处理)中传输
本PTP实例的rateRatio值的计算来源为neighborRateRatio,neighborRateRatio和接收到的Follow_Up 消息或同步消息中的rateRatio进行乘积得到本地相对于grandmaster的rateRatio
neighborRateRatio=端口另一侧的ptp的localclock的频率:本地的localclock频率

neighborRateRatio这个值的计算:802.1AS 延迟测量理解_cao849861802的博客-CSDN博客

PTP实例i在时间tr,i相对于其LocalClock实体从PTP实例i–1接收同步消息。它为同步消息的接收加上时间戳,时间戳值为tr,i。它在一段时间后接收相关的后续消息

PTP 实例 i 最终将在时间 ts,i 相对于其 LocalClock 实体发送一条新的同步消息。 时间 ts,i 发生在从 PTP 实例 i-1 接收到 Follow_Up 消息之后。 它必须计算 CorrectionFieldi,即对应于 ts,i 的同步时间与PrecisionOriginTimestamp 之间的差异。 要进行此计算,它必须计算 ts,i–1 和 ts,i 之间的时间间隔值,以主时钟时基表示。 此间隔等于以下量的总和:

a) PTP 实例 i-1 和 i 之间 PTP 链路上的传播延迟,以主时钟时基表示,和

b) ts,i 和 tr,i 之间的差异(即停留时间),以主时钟时基表示

这里就是说从ts,i-1到ts,i经过的时间为两个时间的和即延迟测量得到的时间和报文停留时间;并且目的是计算得到CorrectionFieldi

PTP 实例 i-1 和 i 之间的 PTP 链路上的平均传播延迟,相对于 PTP 实例 i-1 的 LocalClock 实体,等于 meanLinkDelay(见 10.2.5.8)。 这必须乘以 rateRatioi–1 以在超主时钟时基中表示。 总传播延迟等于平均传播延迟加上量 delayAsymmetry(见 8.3 和 10.2.5.9); delayAsymmetry 已在主时钟时基中表示。 停留时间 ts,i–tr,i 必须乘以 rateRatioi 以在大师时钟时基中表示。

驻留时间指的是tsi到tri就是从端口进来到下一个端口出去用的时间即传输过程中的非延迟测量的时间;驻留时间也是相对于localclock的,所以也要在表示的时候*rateRatioi来以grandmaster的时基来表示时间值;meanLinkDelay(延迟测量)也需要乘以 rateRatioi–1来表示相对于主时钟的时基

前面的计算在 11.2.14 和 11.2.15 的状态机中的组织方式略有不同。 不是在主时钟时基中明确表达 PTP 链路传播延迟,而是计算对应于 ts,i-1 的 PTP 实例 i 的本地时间; 这是 MDSyncReceive 结构的 upstreamTxTime 成员(见 10.2.2.2.7;记得 ts,i-1 是相对于 PTP 实例 i-1 的 LocalClock 实体)。 upstreamTxTime 等于量 tr,i 减去相对于 PTP 实例 i 的 LocalClock 实体表示的 PTP 链路传播延迟。 相对于 PTP 实例 i 的 LocalClock 实体表示的 PTP 链路传播延迟等于以下各项之和:

c) 变量meanLinkDelay(见 10.2.5.8)除以 neighborRateRatio(见 10.2.5.7),和

d) 变量 delayAsymmetry(见 10.2.5.9)除以 rateRatioi。

这里描述了在状态机中计算correctionFieldi  的时候并不是依据meanLinkDelay+停留时间的方式来计算的而是用的upstreamTxTime 这种方式来计算;但是原理一致;

这里其实就只按照meanLinkDelay来表示传播延迟就行,这个delayAsymmetry表征的是非对称的链路的传播延迟建模的时候用到的,我们这里可以不采用这个值,如果是对称的那么这个值为0

delayAsymmetry建模的话如下:
meanLinkDelay = ( tir + tri) / 2
tir = meanLinkDelay – delayAsymmetry
tri = meanLinkDelay + delayAsymmetry

upstreamTxTime:这个值的计算目的是为了填充correctionField,这个值是用来计算当前接收到sync报文的上个ptp系统的发送时候的时间戳;correctionField是在Sync报文中体现的

delayAsymmetry 除以 rateRatioi 是在 rateRatioi 更新后执行的。 upstreamTxTime 的计算由函数中的 MDSyncReceiveSM 状态机完成 setMDSyncReceiveMDSR()(见 11.2.14.2.1)。 当 PTP Instance i 向 PTP Instance i+1 发送 Sync 消息时,它计算 PTP Link 传播延迟和停留时间的总和,以 Grandmaster Clock 时基表示,如 e) 项所示。

e) The quantity (ts,i – upstreamTxTime)(rateRatioi).

与本条中的 d) 项一样,该计算是在更新 rateRatioi 之后执行的。 e)项的数量加到correctionFieldi-1中,得到correctionFieldi。 e) 项和 CorrectionFieldi 的计算由函数 setFollowUp() 中的 MDSyncSendSM 状态机完成(见 11.2.15.2.3)。 在 PTP Instance i 发送的 Sync 消息中插入变量 CorrectionFieldi。

correctionFieldi  = correctionFieldi-1 + (ts,i – upstreamTxTime)(rateRatioi)

整个时间同步的过程其实是为了计算出correctionFieldi 用来添加到往下同步的同步报文中,而每个同步报文中其实带着的都是grandmaster时钟和correctionField,也就是PrecisionOriginTimestamp +correctionField就是相对与grandmaster的时基的时间;

在本小节的第一段中指出,通过同步的对等透明时钟和边界时钟传输同步的过程在数学和功能上是等效的。这种等价的原因是,到目前为止,本小节中描述的计算计算了 PTP 实例发送 Sync 消息时的同步时间。如果 PTP 实例 i 发送 Sync 消息而没有收到新的 Sync 消息,即如果发生 Sync 接收超时(见 10.7.3.1),则进行相同的计算。在这种情况下,PTP 实例 i 使用最近从 PTP 实例 i–1 接收到的时间同步信息,这将在 PTP 实例 i 发送其最近的同步消息之前。发送Sync消息对应的同步时间等于precisionOriginTimestamp和correctionField之和。通常,边界时钟将整个值(除了任何亚纳秒部分)放在精确原始时间戳中,而透明时钟保留精确原始时间戳并更新校正字段。但是,这两个字段的和等于两种情况下发送 Sync 消息时的同步时间

主时钟频率与 PTP 实例 i 处的 LocalClock 实体的频率之比 rateRatioi 等于 PTP 实例 i–1 处的相同数量 rateRatioi–1 乘以 LocalClock 实体在 PTP 实例 i 处的频率之比PTP Instance i–1 到 PTP Instance i 处 LocalClock 实体的频率,neighborRateRatio(见 10.2.5.7)。如果neighborRateRatio 足够小,这大约等于rateRatioi–1 和数量neighborRateRatio –1 的总和,即PTP Instance i–1 相对于PTP Instance i 的频率偏移。该计算由 PortSyncSyncReceive 状态机完成(见 10.2.8)。

一步法和两步法的区别

一步法和两步法的报文头:

两步法的follow_up报文头:

一步法要求在发送同步报文发送的时候就将时间戳填到报文中,这个需要硬件去支持,对硬件性能有要求,而两步法是第一次发送同步报文,然后利用后面的follow_up报文把之前发送的同步报文的时间戳带过去,这样对硬件要求比较低;

802.1AS 时钟同步原理理解相关推荐

  1. TSN 802.1AS时钟同步协议测试

    最近在研究TSN. TSN网络中最基础的概念和要求是时钟同步,因为在一个网络中,只有时钟达到同步才能进行实时性的评估和处理,如果时钟都不同步,根本无法在时间上达成一致,TSN就无法实现. 测试网络拓扑 ...

  2. Capture Modules 车载网络报文捕获(监听)模块(低时延、802.1AS时钟同步)

  3. ntp如何确认与服务器偏差_NTP时钟同步原理及误差简析

    原标题:NTP时钟同步原理及误差简析 在我们某试验系统方案设计中,由于数据同步性的要求,需要将我们WP4000变频功率分析仪的时钟与客户的NI系统的时钟进行同步,对于WP4000变频功率测试系统而言, ...

  4. 32f407tim4时钟源频率_华为以太时钟同步原理介绍(一)

    1.以太时钟同步简介 以太时钟同步功能,用来实现以太网上的频率同步.它可以从线路上恢复时钟信号,或者从外时钟BITS接口输入时钟信号,然后通过以太网把频率向下游网络传递下去.使用该功能,使得时钟频率可 ...

  5. NTP时钟同步原理及误差简析

    在我们某试验系统方案设计中,由于数据同步性的要求,需要将我们WP4000变频功率分析仪的时钟与客户的NI系统的时钟进行同步,对于WP4000变频功率测试系统而言,多台分析仪之间可通过同步光纤接口达到严 ...

  6. 串行同步通信“时钟同步”怎么理解?

    问题:在串行同步通信中,发送端需要和接受端进行同步,时钟同步.这个时钟同步是什么概念?书上说是用同步码从发送端发出去,接受端接收同步码就可以同步了.这个同步怎么可能是时钟上的同步呢?比如发送端是0时刻 ...

  7. 计算机网络时钟同步怎么理解,时钟与计算机网络中的时钟同步.pdf

    时钟与计算机网络中的时钟同步.pdf 时钟与计算机网络中的时钟同步 冯 积 社 (西安交通大学软件学院 陕西西安 710049) 计算机中的时钟 的时钟都会产生 几乎所有的计算机中都会有专用线路用于计 ...

  8. IEEE 1588/802.1AS标准、硬件,Linux软件学习建议

    欢迎淘宝搜索飞灵科技,我司相关新产品陆续上线. 想学习IEEE 1588/802.1AS时钟同步技术?看完这篇文章,你就知道从哪里入手学习了.IEEE 1588/802.1AS首先它是IEEE制定的标 ...

  9. gPTP时钟同步(时间同步)协议简介

    一.时间同步要解决的问题 不知道大家还记得军训练习齐步走的场景吗? 齐步走的动作要领你还记得吗? • 教官首先发出"齐步-–走"的命令,大家听到"齐步"二字后, ...

最新文章

  1. Android下常见的内存泄露 经典
  2. UOJ#218. 【UNR #1】火车管理 线段树 主席树
  3. 2018-2019-2 20175308实验一 《Java开发环境的熟悉》实验报告
  4. 笔记本电脑下载python视频-如何用Python在笔记本电脑上分析100GB数据(下)
  5. input 下面的span 标签 作为下拉框选项的点击
  6. 超链接、插入子报表、网页框
  7. Hololens Vuforia 物体识别
  8. /proc/meminfo之谜
  9. 云知声打磨四年的AI芯片出炉,中国造芯势力群起
  10. 香港有个荷里活。。。
  11. CTF-MISC练习
  12. 语音信号处理频域语谱图matlab实验,语音信号的频域分析
  13. 考研必备 | 百度网盘网页视频在线倍速播放
  14. char 类型的数组,在函数内能最大能定义多大?
  15. Spring拦截器配置详解(如何定义一个拦截器)
  16. 单向链表的创建与遍历(先进先出和先进后出)
  17. 怎样利用计算机电源,如何使用智能手机的电源给笔记本电脑供电
  18. Hadamard Transform
  19. linux控制pwm输出个数,树莓派精确控制pwm输出,控制步进电机
  20. matlab中用公式求pi值,matlab用π 4公式求π的近似值,直到某一项的绝对值小于10-6为止...

热门文章

  1. Windows局域网访问共享资源常见问题
  2. ubuntu18 安装google谷歌浏览器
  3. 平行网页寻源(第二篇)
  4. requests 爬取博客园内容AttributeError: ‘NoneType‘ object has no attribute ‘xpath‘
  5. TV视频客户端的厂商分析
  6. 探索密码的奥秘_探索神秘的编程语言的奥秘世界
  7. 申请SSL证书验证域名所有权限的其他方法Alternative Methods of Domain Control Validation (DCV)
  8. python实验室公众号_推荐几个Python与数据分析的公众号
  9. yolov5识别工地安全帽
  10. 各平台云服务器选择和对比