时间同步方法、网元及系统转让专利

申请号 : CN201010192322.2

文献号 : CN102142953B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 曹德众王步云

申请人 : 华为技术有限公司

摘要 :

本发明提供一种时间同步方法、网元及系统,其中方法包括:与第一网元进行初始时间同步后,获取与空闲端口对应的链路对端的所述第一网元之间的第一路径延时;当所述空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,根据所述第一路径延时,获取与所述第一网元之间的第二时间偏差值;根据获取的所述第二时间偏差值,与所述第一网元进行时间同步。本发明提供的时间同步方法、网元及系统,可以保证网络结构变化前后,与标准参考源之间的时间偏差值保持不变,即使网络结构发生变化,也无需到各个网元人工检测检,检测量小,并且不会导致业务中断。

权利要求 :

1.一种时间同步方法,其特征在于,包括:

第二网元获取与空闲端口对应的链路对端的第一网元之间的第一时间偏差值;

当所述空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,所述第二网元根据所述第一时间偏差值,获取与所述第一网元之间的第二时间偏差值;

所述第二网元根据所述第二时间偏差值,与所述第一网元进行时间同步;

其中,所述第二时间偏差值为:在所述空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,所述第二网元与所述第一网元之间的时间偏差值的改变值;

所述获取与所述第一网元之间的第二时间偏差值,包括:

所述第二网元接收所述第一网元发送的第二同步消息,接收时刻为t2’,所述第二同步消息中携带有所述第一网元发送所述第二同步消息的时刻t1’;

所述第二网元在时刻t3’发送第二延时请求消息给所述第一网元;

所述第二网元接收所述第一网元发送的第二延时响应消息,所述第二延时响应消息中携带有所述第二延时请求消息到达所述第一网元的时刻t4’;

所述第二网元根据公式offset’=[(t2’-t1’)-(t4’-t3’)]/2计算获得第三时间偏差值,offset’为所述第三时间偏差值;

所述第二网元将所述第三时间偏差值减去所述第一时间偏差值,获取所述第二时间偏差值。

2.根据权利要求1所述的时间同步方法,其特征在于,所述获取与空闲端口对应的链路对端的第一网元之间的第一时间偏差值,包括:所述第二网元接收所述第一网元发送的第一同步消息,接收时刻为t2,所述第一同步消息中携带有所述第一网元发送所述第一同步消息的时刻t1;

所述第二网元在时刻t3发送第一延时请求消息给所述第一网元;

所述第二网元接收所述第一网元发送的第一延时响应消息,所述第一延时响应消息中携带有所述延时请求消息到达所述第一网元的时刻t4;

所述第二网元根据公式offset=[(t2-t1)-(t4-t3)]/2计算获得所述第一网元和第二网元之间的第一时间偏差值,offset为所述第一时间偏差值。

3.根据权利要求1或2所述的时间同步方法,其特征在于,根据所述第二时间偏差值,与所述第一网元进行时间同步,包括:所述第二网元将自身的时间减慢所述第二时间偏差值。

4.一种网元,其特征在于,包括:

第三获取模块,用于获取与空闲端口对应的链路对端的第一网元之间的第一时间偏差值;

第四获取模块,用于所述空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,根据所述三获取模块获取的第一时间偏差值,获取与所述第一网元之间的第二时间偏差值;

第二同步模块,根据所述第四获取模块获取到的第二时间偏差值,与所述第一网元进行时间同步;

其中,所述第二时间偏差值为:在所述空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,所述网元与所述第一网元之间的时间偏差值的改变值;

所述第四获取模块包括:

第五接收单元,用于接收所述第一网元发送的第二同步消息,接收时刻为t2’,所述第二同步消息中携带有所述第一网元发送所述第二同步消息的时刻t1’;

第二发送单元,用于在时刻t3’发送第二延时请求消息给所述第一网元;

第六接收单元,用于接收所述第一网元发送的第二延时响应消息,所述第二延时响应消息中携带有所述第二延时响应消息到达所述第一网元的时刻t4’;

第四获取单元,用于根据公式offset’=[(t2’-t1’)-(t4’-t3’)]/2计算获得第三时间偏差值,offset’为所述第三时间偏差值;

第五获取单元,用于将所述第四获取单元获取的第三时间偏差值减去所述第三获取模块获取的第一时间偏差值,获取所述第二时间偏差值。

5.根据权利要求4所述的网元,其特征在于,所述第三获取模块包括:第三接收单元,用于接收所述第一网元发送的第一同步消息,接收时刻为t2,所述第一同步消息中携带有所述第一网元发送所述第一同步消息的时刻t1;

第一发送单元,用于在时刻t3发送第一延时请求消息给所述第一网元;

第四接收单元,用于接收所述第一网元发送的第一延时响应消息,所述第一延时响应消息中携带有所述第一延时请求消息到达所述第一网元的时刻t4;

第三获取单元,用于根据公式offset=[(t2-t1)-(t4-t3)]/2计算获得所述网元和所述第一网元之间的第一时间偏差值,offset为所述第一时间偏差值。

6.根据权利要求4或5所述的网元,其特征在于,所述第二同步模块具体用于将自身的时间减慢所述第二时间偏差值。

7.一种时间同步系统,其特征在于,包括至少一个第一网元和至少一个如权利要求4或5所述的网元。

说明书 :

时间同步方法、网元及系统

技术领域

[0001] 本发明实施例涉及网络技术领域,尤其涉及一种时间同步方法、网元及系统。

背景技术

[0002] 现代通信网络中,实时性要求高的业务对于整个通信网络的频率同步以及时间同步提出了很高的要求,其中频率同步是时间同步的基础。IEEE1588V2协议是一种频率时间同步协议,该协议规定了网络测量和控制系统的精密时钟同步的标准,又称作精密时间协议(Precision Time Protocol,简称PTP)。
[0003] 现有的时间同步方法中,在主机(Master)和从机(Slave)之间发送消息,获得各个消息到达主机和从机的时刻,根据这些时刻计算出主机和从机之间的路径延时以及时间偏差值,主机和从机可以根据时间偏差值进行时间同步。
[0004] 在网络结构发生变化后,例如主机和从机之间的光纤断开,或者主机和从机之间的光纤发生了替换,某个端口从空闲状态变成了忙碌状态,等等,为了获得准确的时间偏差值,进行较为准确的时间同步,就需要人工采用光时域反射仪(Optical Time Domain Reflect meter,简称OTDR)到网络中的各个网元处实际检测主机(通信网络中的某个网元)和从机(通信网络中和主机连接的另一个网元)的光纤长度,从而获取时间偏差值,或者人工采用GPS仪表到网元处实际测量主机和从机的真实时刻,这样会导致人工检测量大,并且会导致主机和从机正在进行的业务中断。

发明内容

[0005] 本发明实施例提供一种时间同步方法、网元及系统,用以解决现有技术中时间同步方法检测工作量大以及网路结构变化后进行的时间同步容易造成业务中断的问题。
[0006] 本发明实施例提供了一种时间同步方法,包括:
[0007] 与第一网元进行初始时间同步后,获取与空闲端口对应的链路对端的所述第一网元之间的第一路径延时;
[0008] 当所述空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,根据所述第一路径延时,获取与所述第一网元之间的第二时间偏差值;
[0009] 根据获取的所述第二时间偏差值,与所述第一网元进行时间同步。
[0010] 本发明实施例还提供了一种时间同步方法,包括:
[0011] 获取与空闲端口对应的链路对端的第一网元之间的第一时间偏差值;
[0012] 当所述空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,根据所述第一时间偏差值,获取与所述第一网元之间的第二时间偏差值;
[0013] 根据所述第二时间偏差值,与所述第一网元进行时间同步。
[0014] 本发明实施例还提供了一种网元,包括:
[0015] 第一获取模块,用于在与第一网元进行初始时间同步后,获取与空闲端口对应的链路对端的所述第一网元之间的第一路径延时;
[0016] 第二获取模块,用于在所述空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,根据所述第一获取模块获取的第一路径延时,获取与所述第一网元之间的第二时间偏差值;
[0017] 第一同步模块,用于根据所述第二获取模块获取的第二时间偏差值,与所述第一网元进行时间同步。
[0018] 本发明实施例还提供了一种时间同步系统,包括第一网元和如前所述的网元。
[0019] 本发明实施例还提供了一种网元,包括:
[0020] 第三获取模块,用于获取与空闲端口对应的链路对端的第一网元之间的第一时间偏差值;
[0021] 第四获取模块,用于所述空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,根据所述三获取模块获取的第一时间偏差值,获取与所述第一网元之间的第二时间偏差值;
[0022] 第二同步模块,根据所述第四获取模块获取到的第二时间偏差值,与所述第一网元进行时间同步。
[0023] 本发明实施例还提供了一种时间同步系统,包括第一网元和如前所述的网元。
[0024] 本发明实施例提供的时间同步方法、网元及系统,首先在与第一网元进行初始时间同步后,获取与空闲端口对应的链路对端的第一网元之间的第一延时,当空闲端口从空闲状态变为忙碌状态,或者从故障状态变为忙碌状态后,即网络结构发生变化后,根据第一延时获取与第一网元之间的第二时间偏差值,根据获取的第二时间偏差值,与第一网元进行时间同步。这样可以保证网络结构变化前后,与标准参考源之间的时间偏差值保持不变,即使网络结构发生变化,也无需到各个网元人工检测各个网元之间的时间偏差值;并且,可以不导致业务中断。

附图说明

[0025] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0026] 图1所示为本发明时间同步方法实施例一的流程图;
[0027] 图2所示为本发明实施例中涉及到的一种时间同步网络结构示意图;
[0028] 图3所示为本发明时间同步方法实施例二的流程图;
[0029] 图4所示为本发明网元实施例一的结构示意图;
[0030] 图5所示为本发明网元实施例二的结构示意图。

具体实施方式

[0031] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0032] 如图1所示为本发明时间同步方法实施例一的流程图,包括:
[0033] 步骤101、与第一网元进行初始时间同步后,获取与空闲端口对应的链路对端的第一网元之间的第一路径延时。
[0034] 步骤102、当空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,根据第一路径延时,获取与第一网元之间的第二时间偏差值。
[0035] 步骤103、根据获取的第二时间偏差值,与第一网元进行时间同步。
[0036] 下面详细介绍各个步骤的实现过程。
[0037] 通常,时间同步网络是由环形网络和链形网络组成的。如图2所示为本发明实施例中涉及到的一种时间同步网络结构示意图,该网络包括网元(Network Element,简称NE)1、网元2、网元3、网元4、网元5和网元6,其中网元1、网元2、网元3、网元4和网元5组成一个环形网络,网元6与网元4和基站7连接,网元6和网元4组成一个链形网络。网元1与大楼综合定时系统(Building Integrated Timing(Supply)System,简称BITS)8连接,BITS8与全球定位系统(Global Positioning System,简称GPS)设备9连接,BITS8可以看作该网络的标准参考源,网络中各个网元的时间都应当与该标准参考源的时间同步。网元1与BITS8连接,对于网络中的其他网元来说,网元1的时间可以看作是与标注参考源同步的,其他网元的时间应该与网元1同步。
[0038] 图2中,网元5需要与网元1进行时间同步,网元1可以作为主机,网元5可以作为从机。网元4需要与网元5进行时间同步,网元5可以作为主机,网元4可以作为从机。同理,网元2需要与网元1进行时间同步,网元1可以作为主机,网元2可以作为从机。网元3需要与网元2进行时间同步,网元2可以作为主机,网元3可以作为从机。除了网元1之外,各个网元分别与各自的主机进行时间同步之后,网络中的各个网元完成了与标准参考源之间的时间同步。
[0039] 主机和从机之间时间同步过程如下:主机在t1时刻发送同步(Sync)消息给从机,该同步(Sync)消息达到从机的时刻为t2,主机发送的同步(Sync)消息中携带有主机发送同步(Sync)消息的时刻t1的值,然后从机在时刻t3发送延时请求(Delay_Req)消息给主机,该延时请求(Delay_Req)消息到达主机的时刻为t4,主机发送延时响应(Delay_Resp)消息给从机,该延时响应(Delay_Resp)消息中携带有t4的值。这样,从机可以获知t1、t2、t3和t4这四个时刻的值。
[0040] 从机根据上述的过程可以获得如下的二元一次方程组:
[0041]
[0042] 其中,delay是主机和从机之间的路径延时,offset是主机和从机之间的时间偏差值。
[0043] 求解上述二元一次方程组(1)可以获得delay=[(t2-t1)+(t4-t3)]/2,offset=[(t2-t1)-(t4-t3)]/2。从机根据计算出的时间偏差值offset可以与主机之间进行同步。
[0044] 具体到图2所示的结构,例如,网元1在时刻t1发送同步(Sync)消息给网元5,该同步(Sync)消息达到网元5的时刻为t2,然后网元5在时刻t3发送延时请求(Delay_Req)消息给网元1,该延时请求(Delay_Req)消息到达网元1的时刻为t4,最后网元1发送延时响应(Delay_Resp)消息给网元5,该延时响应(Delay_Resp)消息中携带有t4的值。网元5根据公式offset=[(t2-t1)-(t4-t3)]/2即可计算出与网元1之间的时间偏差值。
计算出时间偏差值之后,网元5可以根据该时间偏差值调整自身的时间。
[0045] 图2所示的网络中,各个网元的端口并不都是处于忙碌状态,有的端口处于空闲(Passive)状态。根据最佳时钟算法(Best Master Clock Algorithm,简称BMC算法)可以检测到哪个端口处于空闲状态,例如检测到网元3的端口与网元4连接的端口处于空闲状态。将网元3看作第一网元,网元4看作第二网元。
[0046] 步骤101中,第二网元可以获取与空闲端口对应的链路对端的第一网元之间的第一路径延时,也就是说网元4(作为从机)获取与网元3(作为主机)之间的第一路径延时。具体可以是,第二网元通过空闲端口接收第一网元发送的第一同步(Sync)消息,接收时刻为t2,该同步(Sync)消息中携带有第一网元发送第一同步(Sync)消息的时刻t1,由于第二网元已经和第一网元进行完初始时间同步,则第二网元在计算时可以将第一网元与第二网元之间的时间偏差值取做0(然而,实际情况中,即使第一网元与第二网元进行了初始时间同步,第一网元与第二网元之间的时间偏差值也不一定就是0,仍然会一些差值,只是在计算时,将经过了初始时间同步后的时间偏差值取为0),这样,t2与t1的差即为第一路径延时。即,将t2和t1代入如下公式(2):
[0047] t2-t1=delay+offset (2)
[0048] 公式(2)中,delay是第一网元和第二网元之间的路径延时,offset是第一网元和第二网元之间的时间偏差值,由于将公式(2)中offset取做0,这样,delay即为t2和t1的差。
[0049] 步骤102具体可以包括:第二网元接收第一网元发送的第二同步(Sync)消息,接收时刻为t2’,第二同步(Sync)消息中携带有第一网元发送该第二同步(Sync)消息的时刻t1’,t2’与t1’的差减去步骤101中获取的第一路径延时即为第二时间偏差值。第二网元可以通过空闲端口接收或发送各种消息。
[0050] 具体到图2,当网络结构发生变化后,例如网络中其他光纤断开,业务切换到了网元3和网元4,这样网元3与网元4连接的端口从空闲状态变成忙碌状态。网元4接收网元3发送的第二同步(Sync)消息,接收时刻为t2’,第二同步(Sync)消息中携带有网元3发送该第二同步(Sync)消息的时刻t1’,将t1’和t2’代入到公式(2),公式(2)中t1可以取t1’的值,t2可以取t2’的值,将公式(2)中的delay取为步骤101中计算出的第一路径延时,可以计算获得一个offset的值,该offset的值即为第二时间偏差。
[0051] 步骤103具体可以包括:第二网元将自身当前的时间减慢第二时间偏差值。具体到图2,网元4可以将自身当前的时间减慢步骤102中计算出的第二时间偏差值。
[0052] 通过实施例一提供的方法,可以保证网络结构变化前后,网元4与网元1之间的实际时间偏差保持不变。
[0053] 例如,在网络结构变化之前,网元4与网元1之间的时间偏差值为TX1,网元3与网元1之间的时间偏差值为TX2。
[0054] 用公式可以表示如下:T4-T1=TX1;T3-T1=TX2;T4-T3=TX3。T1、T3和T4分别表示同一时刻网元1、网元3和网元4的实际时刻值。
[0055] 在网络结构发生变化后,网元3和网元4之间的时间偏差值发生变化,通过在网元3和网元4之间发送同步(Sync)消息,可以获得第二时间偏差值。也就是说,网络结构变化后,T4-T3=TX3+offset’,offset’是计算出的第二时间偏差值。通过步骤103,将网元4的时间减慢offset’,这样网元4和网元3之间的时间偏差仍然是TX3,由于网元3与网元
1之间的时间偏差值没有变化,所以网元4与网元1之间的时间偏差值也就没有变化。
[0056] 图2中,网元6如果需要输出时间值,由于网元4与网元1之间的时间偏差值在网络结构变化前后保持不变,所以网元6与网元1之间的时间偏差值也保持不变。可以人工测量网元6的绝对时间,输出网元6当前的时间。
[0057] 图2中,假设网元3与网元4连接的端口为空闲端口,其他网元之间的连接端口处于忙碌状态。在实际的网络中,可能包括多个空闲端口,空闲端口对应的链路两端的两个网元之间均可以采用如图1所示的方法来进行时间同步。上述空闲端口也包括发生故障的端口,例如,网元3与网元4之间的某个端口发生了故障,那么可以将发生故障的端口看作空闲端口。网络结构发生变化后,发生故障的端口从故障状态转换到忙碌状态。发生故障的端口可以在发生故障前获取第一路径延时,当发生故障的端口从故障状态转换到忙碌状态后,可以获取第二时间偏差值。
[0058] 本发明实施例一提供的时间同步方法,首先在与第一网元进行初始时间同步后,获取与空闲端口对应的链路对端的第一网元之间的第一路径延时,当空闲端口从空闲状态变为忙碌状态,或者空闲端口从故障状态变为忙碌状态后,根据第一路径延时获取与第一网元之间的第二时间偏差值,根据获取的第二时间偏差值,与第一网元进行时间同步。这样可以保证网络结构变化前后,与标准参考源之间的时间偏差值保持不变,即使网络结构发生变化,也无需到各个网元人工检测各个网元之间的时间偏差值,减小了检测工作量,而且不会造成各个网元的业务的中断。
[0059] 如图3所示为本发明时间同步方法实施例二的流程图,包括:
[0060] 步骤201、获取与空闲端口对应的链路对端的第一网元之间的第一时间偏差值。
[0061] 步骤202、当空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,根据第一时间偏差值,获取与第一网元之间的第二时间偏差值。
[0062] 步骤203、根据第二时间偏差值,与第一网元进行时间同步。
[0063] 下面结合图2所示的网络结构,详细说明实施例二的各个步骤的实现过程。
[0064] 根据BMC算法可以获知哪个端口处于空闲状态,例如检测到网元3的端口与网元4连接的端口处于空闲状态。将网元4看作第二网元,网元3看作第一网元。
[0065] 步骤201中,第二网元获取与空闲端口对应的链路对端的第一网元之间的第一时间偏差值,也就是说网元4获取与网元3之间的第一时间偏差值。具体可以是,网元3在t1时刻发送第一同步(Sync)消息给网元4,该同步(Sync)消息到达网元4的时刻为t2,网元3发送的第一同步(Sync)消息中携带有主机发送第一同步(Sync)消息的时刻t1的值,然后网元4在时刻t3发送第一延时请求(Delay_Req)消息给网元3,该第一延时请求(Delay_Req)消息到达网元3的时刻为t4,主机发送第一延时响应(Delay_Resp)给网元4,该第一延时响应(Delay_Resp)消息中携带有t4的值。第二网元获取t1、t2、t3和t4这四个时刻的值之后,将这四个时刻的值代入到offset=[(t2-t1)-(t4-t3)]/2,即可求出网元4与网元3之间的第一时间偏差值。并保存该第一时间偏差值。
[0066] 步骤202中,当空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,网元4可以获取与网元3之间的第二时间偏差值。具体可以包括:接收第一网元发送的第二同步消息,接收时刻为t2’,第二同步消息中携带有第一网元发送第二同步消息的时刻t1’;在时刻t3’发送第二延时请求消息给第一网元;接收第一网元发送的第二延时响应消息,第二延时响应消息中携带有第二延时请求消息到达第一网元的时刻t4’;根据公式offet’=[(t2’-t1’)-(t4’-t3’)]/2计算获得第三时间偏差值,offset’为第三时间偏差值。将第三时间偏差值减去第一时间偏差值获得第二时间偏差值。由于网络结构发生了变化,步骤202中各个消息的发送时刻也不同于步骤201,为了区别于步骤201中获取的时间偏差值,将步骤202中获取的时间偏差值称为第二时间偏差值,将步骤202中发送的同步消息称为第二同步消息,以区别于步骤201中发送的第一同步消息,第一同步消息和第二同步消息的发送时刻是不同的。
[0067] 步骤203中,获取第二时间偏差值之后,网元4可以根据第二时间偏差值与网元3进行时间同步。具体地,网元4可以将自身的时间减慢第二时间偏差值。
[0068] 通过实施例二提供的方法,同样可以保证网络结构变化前后,网元4与网元1之间的时间偏差保持不变。
[0069] 例如,在网络结构变化之前,网元4与网元1之间的时间偏差值为TX1,网元3与网元1之间的时间偏差值为TX2,网元3与网元4之间的第一时间偏差值为TX3。
[0070] 用公式可以表示如下:T4-T1=TX1;T3-T1=TX2;T4-T3=TX3。T1、T3和T4分别表示同一时刻网元1、网元3和网元4的实际时刻值。
[0071] 在网络结构发生变化后,即网元4的某个空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,通过在网元3和网元4之间发送第二同步(Sync)消息,获得第二时间偏差值。也就是说,网络结构变化后,T4-T3=TX3’,TX3’是通过发送第二同步(Sync)消息获得的第三时间偏差,TX3’-TX3等于第二时间偏差值。通过步骤203,将网元4的时间与网元3同步,也就是将网元4的时间减慢TX3’-TX3,那么网元4与网元3之间的时间偏差又变成TX3,这样在网络结构发生变化后,网元4和网元3之间的实际时间偏差值仍然是TX3,由于网元3与网元1之间的实际时间偏差值没有变化,所以网元4与网元1之间的实际时间偏差值也就没有变化。
[0072] 本发明实施例二提供的时间同步方法,首先获取与空闲端口对应的链路对端的第一网元之间的第一时间偏差值,当空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,根据第一时间偏差获取与第一网元之间的第二时间偏差值,根据第二时间偏差值,与第一网元进行时间同步。这样可以保证网络结构变化前后,与标准参考源之间的实际时间偏差值保持不变,即使网络结构发生变化,也无需到各个网元人工检测各个网元之间的实际时间偏差值,减小了检测工作量,而且不会造成各个网元的业务的中断。
[0073] 如图4所示为本发明网元实施例一的结构示意图,该网元包括:第一获取模块11、第二获取模块12和第一同步模块13,第一获取模块11用于在与第一网元进行初始时间同步后,获取与空闲端口对应的链路对端的第一网元之间的第一路径延时;第二获取模块12与第一获取模块11连接,用于在空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,根据第一获取模块11获取的第一路径延时,获取与第一网元之间的第二时间偏差值。第一同步模块13与第二获取模块12连接,用于根据第二获取模块12获取的第二时间偏差值,与第一网元进行时间同步。
[0074] 其中,第一获取模块11可以包括第一接收单元111和第一获取单元112。第一接收单元111用于接收所述第一网元发送的第一同步消息,接收时刻为t2,第一同步消息中携带有第一网元发送第一同步消息的时刻t1。第一获取单元112与第一接收单元111连接,用于获取t2与t1之间的差,t2与t1的差即为第一路径延时。
[0075] 第二获取模块12可以包括第二接收单元121和第二获取单元122。第二接收单元121用于接收第一网元发送的第二同步消息,接收时刻为t2’,第二同步消息中携带有第一网元发送所述第二同步消息的时刻t2’。第二获取单元122与第二接收单元121和第一获取单元112连接,用于获取t2’与t1’的差和第一路径延时之间的差,t2’与t1’的差和所述第一路径延时之间的差即为第二时间偏差值。
[0076] 第一同步模块13具体可以用于将网元自身当前的时间减慢第二时间偏差值。
[0077] 本发明网元实施例一中,首先在与第一网元进行初始时间同步后,第一获取模块获取与空闲端口对应的链路对端的第一网元之间的第一路径延时,当空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,第二获取模块根据第一路径延时获取与第一网元之间的第二时间偏差值,第一同步模块根据获取的第二时间偏差值,与第一网元进行时间同步。这样可以保证网络结构变化前后,与标准参考源之间的实际时间偏差值保持不变,即使网络结构发生变化,也无需到各个网元人工检测各个网元之间的实际时间偏差值,减小了检测工作量,而且不会造成各个网元的业务的中断。
[0078] 如图5所示为本发明网元实施例二的结构示意图,包括:第三获取模块21、第四获取模块22和第二同步模块23。第三获取模块21用于获取与空闲端口对应的链路对端的第一网元之间的第一时间偏差值。第四获取模块22用于在空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,根据第三获取模块21获取的第一时间偏差值获取与第一网元之间的第二时间偏差值。第二同步模块23与第四获取模块22连接,用于根据第四获取模块22获取到的第二时间偏差值,与第一网元进行时间同步。
[0079] 其中,第三获取模块21可以包括第三接收单元211、第一发送单元212、第四接收单元213和第三获取单元214。第三接收单元211用于接收第一网元发送的第一同步消息,接收时刻为t2,第一同步消息中携带有第一网元发送第一同步消息的时刻t1。第一发送单元212用于在时刻t3发送第一延时请求消息给第一网元。第四接收单元213用于接收第一网元发送的第一延时响应消息,第一延时响应消息中携带有第一延时请求消息到达第一网元的时刻t4。第三获取单元214分别与第三接收单元211、第一发送单元212和第四接收单元213连接,用于根据公式offset=[(t2-t1)-(t4-t3)]/2计算获得第一网元和第二网元之间的第一时间偏差值,offset为第一时间偏差值。
[0080] 第四获取模块22可以包括第五接收单元221、第二发送单元222、第六接收单元223、第四获取单元224和第五获取单元225。第五接收单元221用于接收第一网元发送的第二同步消息,接收时刻为t2’,第二同步消息中携带有第一网元发送第二同步消息的时刻t1’。第二发送单元222用于在时刻t3’发送第二延时请求消息给第一网元。第六接收单元223用于接收第一网元发送的第二延时响应消息,第二延时响应消息中携带有第二延时响应消息到达第一网元的时刻t4’。第四获取单元224分别与第五接收单元221、第二发送单元222和第六接收单元223连接,用于根据公式offset’=[(t2’-t1’)-(t4’-t3’)]/2计算获得第三时间偏差值,offset’为第三时间偏差值。第五获取单元225分别于第四获取单元224和第三获取模块21中的第三获取单元214连接,用于将第四获取单元224获取的第三时间偏差值减去第三获取模块21中的第三获取单元214获取的第一时间偏差值,获取第二时间偏差值。
[0081] 第二同步模块23与第五获取单元225连接,具体可以用于将自身的时间减慢第二时间偏差值。
[0082] 本发明网元实施例二中,首先第三获取模块获取与空闲端口对应的链路对端的第一网元之间的第一时间偏差值,当空闲端口从空闲状态变为忙碌状态或者从故障状态变为忙碌状态后,第四获取模块根据第一时间偏差值获取与第一网元之间的第二时间偏差值,第二同步模块根据第二时间偏差值,与第一网元进行时间同步。这样可以保证网络结构变化前后,与标准参考源之间的实际时间偏差值保持不变,即使网络结构发生变化,也无需到各个网元人工检测各个网元之间的实际时间偏差值,减小了检测工作量,而且不会造成各个网元的业务的中断。
[0083] 本发明实施例还提供一种时间同步系统,可以包括至少一个第一网元和至少一个如图4所示的网元。
[0084] 本发明实施例还提供一种时间同步系统,可以包括至少一个第一网元和至少一个如图5所示的网元。
[0085] 本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0086] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。