一种基于光纤通道协议的设备时间同步方法及装置转让专利
申请号 : CN202110555228.7
文献号 : CN113014352B
文献日 : 2021-09-14
发明人 : 曹丽剑 , 李龙威 , 谢鹏 , 彭涛 , 李全磊 , 陈彬
申请人 : 北京国科天迅科技有限公司
摘要 :
权利要求 :
1.一种基于光纤通道协议的设备时间同步方法,其特征在于,包括:确定被授时设备满足同步过程状态条件后,基于所述被授时设备主动发起同步操作,并将同步帧通过光纤通道发送至授时设备;所述同步帧内部包含所述被授时设备当前所运行的第一本地时间;
基于所述授时设备通过光纤通道接收所述同步帧,并将当前的第二本地时间写入所述同步帧后,解析所述同步帧;根据解析结果将所述第一本地时间和所述第二本地时间写入应答帧;在所述应答帧组装完成后将所述授时设备当前的第三本地时间写入所述应答帧中,并通过光纤通道发送至所述被授时设备;
基于所述被授时设备接收到所述应答帧后,将当前的第四本地时间写入所述应答帧中,并确定相邻两次同步过程的同步周期;
根据所述同步周期以及相应的本地时间确定时间偏差值,若所述时间偏差值大于预设的偏差阈值,则将所述时间偏差值加到所述被授时设备的本地时间中,实现设备时间同步;
还包括:基于步进调频值、步进调相值以及步进时钟周期值确定步进值;
所述基于步进调频值、步进调相值以及步进时钟周期值确定步进值,具体包括:基于所述同步周期和所述同步周期的计数时间,确定步进调频值;所述步进调频值对应的计算公式:
其中,TCount为同步周期的计数时间; 为同步周期; 为步进调频值;
基于所述时间偏差值和所述同步周期的计数时间,确定步进调相值;所述步进调相值对应的计算公式:
其中,TCount为同步周期的计数时间;offset为时间偏差值; 为步进调相值;
基于预设的当前计数时钟值,确定步进时钟周期值;
基于预设的步进值计算算法对所述步进调频值、所述步进调相值和所述步进时钟周期值进行运算处理,得到所述步进值;
若所述时间偏差值小于所述偏差阈值,则通过调整所述步进值来减小同步延迟,并在下一同步周期到来前实现设备时间同步。
2.根据权利要求1所述的基于光纤通道协议的设备时间同步方法,其特征在于,所述通过调整所述步进值来减小同步延迟,具体包括:以单位为低纳秒级数值调整所述步进值来减小同步延迟,通过调整每次跳变范围来控制两次同步过程中的本地时间的变化范围。
3.根据权利要求1所述的基于光纤通道协议的设备时间同步方法,其特征在于,还包括:当基于所述授时设备通过光纤通道同时接收到多个被授时设备发送的同步帧时,按照预设的端口号优先级顺序进行一一响应。
4.根据权利要求1所述的基于光纤通道协议的设备时间同步方法,其特征在于,所述确定相邻两次同步过程的同步周期,具体包括:获得相邻两次同步过程中相对应的两个本地时间点;
基于所述两个本地时间点确定同步周期。
5.一种基于光纤通道协议的设备时间同步装置,其特征在于,包括:同步操作发起单元,用于确定被授时设备满足同步过程状态条件后,基于所述被授时设备主动发起同步操作,并将同步帧通过光纤通道发送至授时设备;所述同步帧内部包含所述被授时设备当前所运行的第一本地时间;
同步操作响应单元,用于基于所述授时设备通过光纤通道接收所述同步帧,并将当前的第二本地时间写入所述同步帧后,解析所述同步帧;根据解析结果将所述第一本地时间和所述第二本地时间写入相应的应答帧,并在所述应答帧组装完成后将所述授时设备当前的第三本地时间写入所述应答帧中,通过光纤通道发送至所述被授时设备;
同步周期确定单元,用于基于所述被授时设备接收到所述应答帧后,将当前的第四本地时间写入所述应答帧中,并确定相邻两次同步过程的同步周期;
时间同步单元,用于根据所述同步周期以及相应的四个时间点确定时间偏差值,若所述时间偏差值大于预设的偏差阈值,则将所述时间偏差值加到所述被授时设备的本地时间中,实现设备时间同步;还用于:基于步进调频值、步进调相值以及步进时钟周期值确定步进值;
所述基于步进调频值、步进调相值以及步进时钟周期值确定步进值,具体包括:基于所述同步周期和所述同步周期的计数时间,确定步进调频值;所述步进调频值对应的计算公式:
其中,TCount为同步周期的计数时间; 为同步周期;为步进调频值;
基于所述时间偏差值和所述同步周期的计数时间,确定步进调相值;所述步进调相值对应的计算公式:
其中,TCount为同步周期的计数时间;offset为时间偏差值; 为步进调相值;
基于预设的当前计数时钟值,确定步进时钟周期值;
基于预设的步进值计算算法对所述步进调频值、所述步进调相值和所述步进时钟周期值进行运算处理,得到所述步进值;
所述时间同步单元还用于,若所述时间偏差值小于所述偏差阈值,则通过调整所述步进值来减小同步延迟,并在下一同步周期到来前实现设备时间同步。
6.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1‑4任意一项所述的基于光纤通道协议的设备时间同步方法的步骤。
7.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1‑4任意一项所述的基于光纤通道协议的设备时间同步方法的步骤。
说明书 :
一种基于光纤通道协议的设备时间同步方法及装置
技术领域
背景技术
同步是指将授时设备所执行的时间同步到被授时设备中,在授时设备在获取到世界时间后
与被授时设备进行时间校准,保证了网络拓扑内所有设备获取的时间与世界时间在一定误
差内是同步的。
授时设备通过设备和硬线发送到被授时设备的延迟。传统的时间同步发起端由授时设备主
动发起时间码进行广播或硬线连接精确的时间脉冲,被授时设备为被动响应,该同步方式
会造成被授时设备在接收时间码时必须处于待接收状态,使得设备时间同步的精度和成功
率较差。因此,如何提高网络拓扑结构中设备时间同步的精度和成功率成为本领域研究的
重要课题。
发明内容
所运行的第一本地时间;
写入应答帧;在所述应答帧组装完成后将所述授时设备当前的第三本地时间写入所述应答
帧中,并通过光纤通道发送至所述被授时设备;
同步。
通过调整所述步进值来减小同步延迟,并在下一同步周期到来前实现设备时间同步。
进时钟周期值;
本地时间的变化范围。
级顺序进行一一响应。
操作,并将同步帧通过光纤通道发送至授时设备;所述同步帧内部包含所述被授时设备当
前所运行的第一本地时间;
时间和所述第二本地时间写入相应的应答帧,并在所述应答帧组装完成后将所述授时设备
当前的第三本地时间写入所述应答帧中,通过光纤通道发送至所述被授时设备;
时间中,实现设备时间同步。
同步延迟,并在下一同步周期到来前实现设备时间同步。
进时钟周期值;
本地时间的变化范围。
按照预设的端口号优先级顺序进行一一响应。
基于光纤通道协议的设备时间同步方法的步骤。
同步方法的步骤。
络拓扑内电子设备时间同步的精度,增加了时间同步成功率和可靠性。
附图说明
明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根
据这些附图获取其他的附图。
具体实施方式
本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员
在没有做出创造性劳动前提下所获取的所有其他实施例,都属于本发明保护的范围。
流程示意图,具体实现过程包括以下步骤:
本地时间写入应答帧;在所述应答帧组装完成后将所述授时设备当前的第三本地时间写入
所述应答帧中,并通过光纤通道发送至所述被授时设备。
后,将当前的第四本地时间(即T14)写入所述应答帧中,并获得相邻两次同步过程中相对应
的两个本地时间点(比如T23和T13),基于所述两个本地时间点,由T23减去T13获得同步周
期。
设备时间同步。
步进调频值、步进调相值以及步进时钟周期值确定的。具体的,基于所述同步周期和所述同
步周期的计数时间,确定步进调频值;基于所述时间偏差值和所述同步周期的计数时间,确
定步进调相值;基于预设的当前计数时钟值,确定步进时钟周期值;基于预设的步进值计算
算法对所述步进调频值、所述步进调相值和所述步进时钟周期值进行运算处理,得到所述
步进值。
间的变化范围。
先级顺序进行一一响应。此方式解决了被授时设备处于被动响应而无法保证自身状态是否
满足同步过程的条件的问题。同时,FC协议具有链路双冗余热备份功能,故在此时间同步方
法中,被授时设备可选择双路中任一端口作为同步的端口,此方式解决了通信过程中被授
时设备的双路中的其中一路发生故障而无法通信时可主动切换。另外,根据该方法通过预
设的公式进行计算,能够抵消根据授时设备发送时间到被授时设备中的硬件延迟的时间。
能和被授时功能。
议发送至授时设备,授时设备在通过光纤通道接收到同步帧后将当前的第二本地时间T12
写入同步帧中,然后解析该同步帧。获取第一本地时间T11、第二本地时间T12的时间信息并
写入应答帧中,同时组装改应答帧,组装完成后将授时设备的当前第三本地时间T13写入应
答帧中,通过光纤通道协议发送至被授时设备,被授时设备在接收到应答帧后将当前的第
四本地时间T14写入帧中。然后计算相邻两次同步过程中的同步周期,可由第二次同步过程
中的本地时间点T23减去相应的第一本地时间点T13获得。获取到四个本地时间点后,根据
所述同步周期以及相应的四个本地时间点确定时间偏差值。
也为光纤通道所造成的延迟时间加两个设备相差的时间,所不同的是,第一本地时间T11到
第二本地时间T12为延迟时间加偏差,第三本地时间T13到第四本地时间T14为延迟时间减
偏差,因此时间偏差值经过预设公式计算后能够将光纤通道所造成的延迟抵消。计算后得
出的时间偏差值若大于预设的偏差阈值(比如10ms),则将时间偏差值直接加到被授时设备
的本地时间中。若小于所述偏差阈值,则可通过调整步进值来减小同步延迟。该步进值调整
为单位为低纳秒级数值的调整,通过每次跳变范围用来控制两次同步过程中本地时间的变
化范围。
下:
值,可以想象8ns为一格,TCount就是代表这1s内数了多少个8ns的个数。具体计算公式(2)
如下:
值的时间偏差;T11‑ T14为第一次同步过程的四个本地时间点信息,即对应第一本地时间、
第二本地时间、第三本地时间以及第四本地时间。
一次同步过程中,T1、T2、T3、T4即分别为T11、T12、T13、T14;在第二次同步过程中,T1、T2、
T3、T4即分别为T21、T22、T23、T24。
设备的时间可能已经变成了2s。
次同步。具体计算公式(5)如下:
能够抵消由硬件链路造成的延迟,将时间同步方式的精度控制在百纳秒内,并基于FC协议
的双冗余热备份链路,能够解决因硬件链路故障导致同步失败的弊端。
高了网络拓扑内电子设备时间同步的精度,增加了时间同步成功率和可靠性。
例,所以描述得比较简单,相关之处请参见上述方法实施例部分的说明即可,下面描述的基
于光纤通道协议的设备时间同步装置的实施例仅是示意性的。请参考图3所示,其为本发明
实施例提供的一种基于光纤通道协议的设备时间同步装置的结构示意图。
部包含所述被授时设备当前所运行的第一本地时间;
地时间和所述第二本地时间写入相应的应答帧,并在应答帧组装完成后将所述授时设备当
前的第三本地时间写入所述应答帧中,通过光纤通道发送至所述被授时设备;
时间中,实现设备时间同步。
高了网络拓扑内电子设备时间同步的精度,增加了时间同步成功率和可靠性。
处请参见上述方法实施例部分的说明即可,下面描述的电子设备仅是示意性的。如图4所
示,其为本发明实施例公开的一种电子设备的实体结构示意图。该电子设备可以包括:处理
器(processor)401、存储器(memory)402和通信总线403,其中,处理器401,存储器402通过
通信总线403完成相互间的通信,通过通信接口404与外部进行通信。处理器401可以调用存
储器402中的逻辑指令,以执行基于光纤通道协议的设备时间同步方法,该方法包括:确定
被授时设备满足同步过程状态条件后,基于所述被授时设备主动发起同步操作,并将同步
帧通过光纤通道发送至授时设备;所述同步帧内部包含所述被授时设备当前所运行的第一
本地时间;基于所述授时设备通过光纤通道接收所述同步帧,并将当前的第二本地时间写
入所述同步帧后,解析所述同步帧;根据解析结果将所述第一本地时间和所述第二本地时
间写入应答帧;在所述应答帧组装完成后将所述授时设备当前的第三本地时间写入所述应
答帧中,并通过光纤通道发送至所述被授时设备;基于所述被授时设备接收到所述应答帧
后,将当前的第四本地时间写入所述应答帧中,并确定相邻两次同步过程的同步周期;根据
所述同步周期以及相应的本地时间确定时间偏差值,若所述时间偏差值大于预设的偏差阈
值,则将所述时间偏差值加到所述被授时设备的本地时间中,实现设备时间同步。
发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以
软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以
使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施
例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,
Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种
可以存储程序代码的介质。
述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的基于光纤通道协
议的设备时间同步方法,该方法包括:确定被授时设备满足同步过程状态条件后,基于所述
被授时设备主动发起同步操作,并将同步帧通过光纤通道发送至授时设备;所述同步帧内
部包含所述被授时设备当前所运行的第一本地时间;基于所述授时设备通过光纤通道接收
所述同步帧,并将当前的第二本地时间写入所述同步帧后,解析所述同步帧;根据解析结果
将所述第一本地时间和所述第二本地时间写入应答帧;在所述应答帧组装完成后将所述授
时设备当前的第三本地时间写入所述应答帧中,并通过光纤通道发送至所述被授时设备;
基于所述被授时设备接收到所述应答帧后,将当前的第四本地时间写入所述应答帧中,并
确定相邻两次同步过程的同步周期;根据所述同步周期以及相应的本地时间确定时间偏差
值,若所述时间偏差值大于预设的偏差阈值,则将所述时间偏差值加到所述被授时设备的
本地时间中,实现设备时间同步。
议的设备时间同步方法,该方法包括:确定被授时设备满足同步过程状态条件后,基于所述
被授时设备主动发起同步操作,并将同步帧通过光纤通道发送至授时设备;所述同步帧内
部包含所述被授时设备当前所运行的第一本地时间;基于所述授时设备通过光纤通道接收
所述同步帧,并将当前的第二本地时间写入所述同步帧后,解析所述同步帧;根据解析结果
将所述第一本地时间和所述第二本地时间写入应答帧;在所述应答帧组装完成后将所述授
时设备当前的第三本地时间写入所述应答帧中,并通过光纤通道发送至所述被授时设备;
基于所述被授时设备接收到所述应答帧后,将当前的第四本地时间写入所述应答帧中,并
确定相邻两次同步过程的同步周期;根据所述同步周期以及相应的本地时间确定时间偏差
值,若所述时间偏差值大于预设的偏差阈值,则将所述时间偏差值加到所述被授时设备的
本地时间中,实现设备时间同步。
元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其
中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性
的劳动的情况下,即可以理解并实施。
述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该
计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指
令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施
例或者实施例的某些部分所述的方法。
以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;
而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和
范围。