1.本发明及时钟同步技术领域,具体涉及一种面向网络时延抖动的时延估计周期动态调整方法。
背景技术:
2.时延是指从参考节点(主时钟)到终节点(从时钟)的时间戳数据包的传输时间,其包括参考点的处理时间、传输时间、终点的处理时间等。时钟同步技术的时延估计误差直接影响时钟同步的精度。
3.实际工业现场中,形成时延抖动的因素有很多。异构数据流如音视频、控制数据等的频繁转发造成的拥塞,包处理时延的不确定性以及复杂恶劣的电磁环境都会造成时延的抖动,如何降低时延抖动以及其所带来的影响是时钟同步技术发展的挑战之一。
技术实现要素:
4.有鉴于此,本发明的目的在于提供一种一种面向网络时延抖动的时延估计周期动态调整方法,可以显著减小由频繁抖动引起的时钟同步误差。
5.为实现上述目的,本发明采用如下技术方案:
6.一种面向网络时延抖动的时延估计周期动态调整方法,包括以下步骤:
7.步骤s1:时钟同步进程启动后,时钟同步域内的所有节点均向其他节点发送announce报文,并通过最佳主时钟算法,比较各时钟属性,确定域内节点主时钟,其余节点为从时钟;
8.步骤s2:主时钟周期性地向域内从时钟节点发送同步报文,主时钟在报文通过链路层层和物理层的中间层时,打下第一时间戳t1并保存,作为报文出栈时间。从时钟接收到到同步报文,在相同的位置记录下第二时间戳t2;
9.步骤s3:主时钟将第一时间戳t1封装成伴随报文,发送给从时钟,从时钟解封报文,从时钟获得第一时间戳t1和第二时间戳t2;
10.步骤s4:从时钟根据t1和t2,以及上次测量的时延数据,计算时钟偏移tf;
11.步骤s5:通过比较偏差tf与偏差抖动阈值θf判断是否发生抖动,若tf≤θf,则表示网络正常未抖动,进入步骤s6进行时钟更新;若tf>θf,表示网络时延抖动,此时直接更改时延估计周期为短周期t2,并立即触发一次时延测量得到时延数据td后进入步骤s6;
12.步骤s6:根据时延td,计算出可信时钟偏移tf,当tf≤θf时,则表示网络环境正常未抖动,使用tf校正本地本地时钟,完成高精度时钟同步。
13.进一步的,所述announce报文包括本时钟的属性数据集。
14.进一步的,所述计算时钟偏移tf,具体为:
15.tf=t
2-(t1+t’d
)
16.其中,t’d
为上次测量的时延数据。
17.进一步的,所述时延测量触发条件包括:定时器周期性触发,步骤s5中感知到时延
抖动后触发。
18.进一步的,所述时延测量,具体为:
19.从时钟节点向主时钟发送时延测量请求报文,从时钟记录发送时间形成第三时间戳t3,主时钟记录报文到达时间形成第四时间戳t4;主时钟将时间戳t4封装进时延测量回复报文(delay_resp),发送至从时钟;从时钟解封报文,获得全部所需的四个时间戳t1、t2、t3、t4;
20.从时钟将t1、t2、t3、t4代入下式,得出当前时刻时延观测值td,即td为双向时延的平均值
[0021][0022]
比较时延td和时延阈值θd;当td≤θd时,代表当前网络没有发生抖动,或者抖动结束,时延测量周期调整为正常周期t1;当td>θd,表示时延抖动发生或仍在持续,调整时延测量周期调整为短周期t2。
[0023]
本发明与现有技术相比具有以下有益效果:
[0024]
1、本发明对于存在时延抖动的网络,可降低由抖动引起的时延误差对于时钟同步精度影响;
[0025]
2、本发明能自动调整时延估计周期,因此加强对于时延抖动的精准估计,增强网络系统的鲁棒性,保证时钟同步的精度要求。
附图说明
[0026]
图1是本发明一实施例中时钟同步过程误差变化示意图;
[0027]
图2是本发明方法流程图。
具体实施方式
[0028]
下面结合附图及实施例对本发明做进一步说明。
[0029]
在本实施例中,网络中运行ieee1588精准时间同步协议(ptp),设置同步周期为1s,时延测量周期为8s,采集网络主从时钟的时延数据和时钟偏差。大多数时延稳定在2800us附近,时延出现多次抖动,抖动时的时延到达了3100us,这些抖动时钟偏差上有巨大的影响,抖动发生的时候,都会产生较大的时钟偏差,最大达到了750us。由上可以看出网络的时延不稳定,抖动的频率较高,幅值较大,成为影响时钟同步的主要因素。
[0030]
本实施例纵,根据统计学的方法,确定出偏移阈值和时延阈值。根据上面采集的偏移数据,得出时钟偏移的均值为33.27us,标准差为66.69us。若需要95%的偏移值在阈值区间内,则偏移的阈值θf=μ+2σ,即阈值θf取166.65us。
[0031]
同理,得到时延的均值为2807.64us,标准差为45.49us。若需要95%的偏移值在阈值区间内,则时延的阈值θd=μ+2σ,即时延阈值θd取2898.62us。
[0032]
将上述阈值参数代入本发明的方法,时延测量周期默认为8s,在时延超过阈值时,判断出现抖动,则将周期改为1s,同步周期保持不变。开启时钟同步进程,获取时延数据与时钟偏移。
[0033]
请参照图2,本发明提供一种面向网络时延抖动的时延估计周期动态调整方法,包括以下步骤:
[0034]
步骤s1:时钟同步进程启动后,时钟同步域内的所有节点均向其他节点发送announce报文,包含本时钟的属性数据集,其他节点接收后,通过最佳主时钟算法(best master clock algorithm,bmca),比较各时钟属性,确定域内节点主时钟,其余节点为从时钟;
[0035]
步骤s2:主时钟周期性地向域内从时钟节点发送同步报文,主时钟在报文通过链路层层和物理层的中间层时,打下第一时间戳t1并保存,作为报文出栈时间。从时钟接收到到同步报文,在相同的位置记录下第二时间戳t2;
[0036]
步骤s3:主时钟将第一时间戳t1封装成伴随报文,发送给从时钟,从时钟解封报文,从时钟获得第一时间戳t1和第二时间戳t2;
[0037]
步骤s4:从时钟根据t1和t2,以及上次测量的时延数据,由公式(1)计算时钟偏移tf[0038]
tf=t
2-(t1+td)
[0039]
(1);
[0040]
步骤s5:通过比较偏差tf与偏差抖动阈值θf判断是否发生抖动,若tf≤θf,则表示网络正常未抖动,进入步骤s6进行时钟更新;若tf>θf,表示网络时延抖动,此时直接更改时延估计周期为短周期t2,并立即触发一次时延测量得到时延数据td后进入步骤s6;
[0041]
优选的,时延测量,具体为:
[0042]
从时钟节点向主时钟发送时延测量请求报文,从时钟记录发送时间形成第三时间戳t3,主时钟记录报文到达时间形成第四时间戳t4;主时钟将时间戳t4封装进时延测量回复报文(delay_resp),发送至从时钟;从时钟解封报文,获得全部所需的四个时间戳t1、t2、t3、t4;
[0043]
从时钟将t1、t2、t3、t4代入下式,得出当前时刻时延观测值td,即td为双向时延的平均值
[0044][0045]
比较时延td和时延阈值θd;当td≤θd时,代表当前网络没有发生抖动,或者抖动结束,时延测量周期调整为正常周期t1;当td>θd,表示时延抖动发生或仍在持续,调整时延测量周期调整为短周期t2。
[0046]
步骤s6:将时延td带入公式(1),计算出可信时钟偏移tf,当tf≤θf时,则表示网络环境正常未抖动,使用tf校正本地本地时钟,完成高精度时钟同步。
[0047]
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
技术特征:
1.一种面向网络时延抖动的时延估计周期动态调整方法,其特征在于,包括以下步骤:步骤s1:时钟同步进程启动后,时钟同步域内的所有节点均向其他节点发送announce报文,并通过最佳主时钟算法,比较各时钟属性,确定域内节点主时钟,其余节点为从时钟;步骤s2:主时钟周期性地向域内从时钟节点发送同步报文,主时钟在报文通过链路层层和物理层的中间层时,打下第一时间戳t1并保存,作为报文出栈时间。从时钟接收到到同步报文,在相同的位置记录下第二时间戳t2;步骤s3:主时钟将第一时间戳t1封装成伴随报文,发送给从时钟,从时钟解封报文,从时钟获得第一时间戳t1和第二时间戳t2;步骤s4:从时钟根据t1和t2,以及上次测量的时延数据,计算时钟偏移t
f
;步骤s5:通过比较偏差t
f
与偏差抖动阈值θ
f
判断是否发生抖动,若t
f
≤θ
f
,则表示网络正常未抖动,进入步骤s6进行时钟更新;若t
f
>θ
f
,表示网络时延抖动,此时直接更改时延估计周期为短周期t2,并立即触发一次时延测量得到时延数据t
d
后进入步骤s6;步骤s6:根据时延t
d
,计算出可信时钟偏移t
f
,当t
f
≤θ
f
时,则表示网络环境正常未抖动,使用t
f
校正本地本地时钟,完成高精度时钟同步。2.根据权利要求1所述的一种面向网络时延抖动的时延估计周期动态调整方法,其特征在于,所述announce报文包括本时钟的属性数据集。3.根据权利要求1所述的一种面向网络时延抖动的时延估计周期动态调整方法,其特征在于,所述计算时钟偏移t
f
,具体为:t
f
=t
2-(t1+t
′
d
)其中,t
′
d
为上次测量的时延数据。4.根据权利要求1所述的一种面向网络时延抖动的时延估计周期动态调整方法,其特征在于,所述时延测量触发条件包括:定时器周期性触发,步骤s5中感知到时延抖动后触发。5.根据权利要求1所述的一种面向网络时延抖动的时延估计周期动态调整方法,其特征在于,所述时延测量,具体为:从时钟节点向主时钟发送时延测量请求报文,从时钟记录发送时间形成第三时间戳t3,主时钟记录报文到达时间形成第四时间戳t4;主时钟将时间戳t4封装进时延测量回复报文(delay_resp),发送至从时钟;从时钟解封报文,获得全部所需的四个时间戳t1、t2、t3、t4;从时钟将t1、t2、t3、t4代入下式,得出当前时刻时延观测值t
d
,即t
d
为双向时延的平均值比较时延t
d
和时延阈值θ
d
;当t
d
≤θ
d
时,代表当前网络没有发生抖动,或者抖动结束,时延测量周期调整为正常周期t1;当t
d
>θ
d
,表示时延抖动发生或仍在持续,调整时延测量周期调整为短周期t2。
技术总结
本发明涉及一种面向网络时延抖动的时延估计周期动态调整方法,包括以下步骤:步骤S1:时钟同步域内的所有节点均向其他节点发送Announce报文,并确定域内节点主时钟;步骤S2:主时钟周期性地向域内从时钟节点发送同步报文;步骤S3:主时钟将第一时间戳封装成伴随报文,发送给从时钟,从时钟解封报文;步骤S4:从时钟计算时钟偏移;步骤S5:通过比较偏差与偏差抖动阈值判断是否发生抖动,步骤S6:根据时延,计算出可信时钟偏移,当时,则表示网络环境正常未抖动,使用校正本地本地时钟,完成高精度时钟同步。本发明实现有效降低由抖动引起的时延误差对于时钟同步精度影响。由抖动引起的时延误差对于时钟同步精度影响。由抖动引起的时延误差对于时钟同步精度影响。
技术研发人员:徐哲壮 高绪超 崔冠文 陈剑 翁振海
受保护的技术使用者:福州大学
技术研发日:2021.12.09
技术公布日:2022/3/8