一种确定网络中时钟跟踪成环的方法、装置及系统的制作方法

文档序号:7744243阅读:179来源:国知局
专利名称:一种确定网络中时钟跟踪成环的方法、装置及系统的制作方法
技术领域
本发明涉及通信领域,尤其涉及一种确定网络中时钟跟踪成环的方法、装置及系统。
背景技术
IEEE 1588标准定义了一种在诸如通信网络、本地计算、分布式对象等技术协同应用的测量与控制系统中,可以实现精确时间同步的协议。协议适用于支持组播通信的局域网通信系统,能够以最小的网络和本地时钟计算资源代价,使具有不同固有精度、分辨率、 稳定度时钟的各异系统能够同步于主时钟(Grandmaster Clock),并且达到全系统的同步准确度亚微秒级的范围。IEEE 1588标准所描述的协议的同步原理主要有以下的两点1、通过多播报文中的时钟等级信息建立起时钟的主从结构;2、通过主从之间交换带有时间信息的协议报文,从时钟跟踪到主时钟时间。通过多播报文Announce (公布)中的时钟等级信息建立起时钟的主从结构,最终从网络拓扑上看,网络会形成一个树型结构。当网络发生变化的时候,协议会重新建立起新的树型结构。为避免生成树在形成过程中成环,现有解决方法之一是,在端口状态过渡到 Master (主)态的时候加入一 I^re—Master状态。这样,由于端口在进入Master之前,会进入一个中间状态Pre_Master,且Pre_Master状态下并不会对外发送报文。Pre_Master进入Master的条件时到达等待时间,即离主时钟越远的设备,从其他状态等待进入Master的时间越长。理论上,在这一等待过程中,设备可以接收到更新的报文信息,从而在一定程度上降低出现跟踪成环的可能性。但发明人发现,这一方案不能从根本上确定时钟跟踪成环,例如ft~e_MaSter的等待时间已到,当设备还是没有收到更新的报文;或者,报文本身存在问题等等情况。现有另一解决方法是,通过步长的判断来确定时钟跟踪成环。通过成环后的网络拓扑图可以发现,错误的报文是没有源头的,没有源头的报文在经过每一个环上的设备时, 步长都需要自增,说明该信息经过了一跳设备。由于没有源头,步长的自增永远无法终止。 如果收到的报文的步长大于OxfT (十六进制,转换成十进制为255),就认为该报文不可用。但发明人发现,这一方案存在一个问题,就是必须等到步长累计到Oxff,网络才能发现错误,也就是说发现错误的时间相对比较慢。

发明内容
本发明的实施例提供一种确定网络中时钟跟踪成环的方法、装置及系统,能够快速且准确地确定网络中时钟跟踪成环。为达到上述目的,本发明的实施例采用如下技术方案一种确定网络中时钟跟踪成环的方法,包括
接收网络中的主时钟发送的携带有该主时钟心跳信号的第一报文;判断所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号是否相同;若所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号不同,则确定所述网络未发生时钟跟踪成环,并且所述第一报文正常;若所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号相同,则确定所述网络发生时钟跟踪成环,并且所述第一报文异常。一种同步设备,包括接收单元,用于接收网络中的主时钟发送的携带有该主时钟心跳信号的第一报文;判断单元,用于判断所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号是否相同;若所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号不同,则确定所述网络未发生时钟跟踪成环, 并且所述第一报文正常;若所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号相同,则确定所述网络发生时钟跟踪成环,并且所述第一报文异常。一种时钟跟踪系统,包括主时钟和同步设备,其中所述同步设备,用于接收网络中的所述主时钟发送的携带有该主时钟心跳信号的第一报文;判断所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号是否相同;若所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号不同,则确定所述网络未发生时钟跟踪成环,并且所述第一报文正常;若所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号相同,则确定所述网络发生时钟跟踪成环,并且所述第一报文异常。本发明实施例提供的确定网络中时钟跟踪成环的方法、装置及系统,同步设备接收网络中的主时钟发送的携带有该主时钟心跳信号的第一报文,判断该第一报文中携带的心跳信号与上一次从主时钟接收的第二报文中携带的心跳信号是否相同,若第一报文中的心跳信号与之前接收的第二报文中的不同,则说明该第一报文是由主时钟所发,正常可用; 若第一报文中的心跳信号与之前接收的第二报文中的相同,则说明该第一报文非主时钟所发,异常不可用,确定网络中出现了跟踪环。这样,下游同步设备就可以在时钟跟踪成环的同时发现问题,从而能够快速且准确地确定时钟跟踪成环。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例提供的确定网络中时钟跟踪成环的方法的框图;图2为本发明又一实施例提供的时钟跟踪网络示意图;图3为本发明实施例提供的确定网络中时钟跟踪成环的方法的流程示意图4为本发明实施例提供的同步设备的结构框图一;图5为本发明实施例提供的同步设备的结构框图二 ;图6为本发明实施例提供的时钟跟踪系统的结构框图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明实施例提供的确定网络中时钟跟踪成环的方法,如图1所示,该方法步骤包括S101、接收网络中的主时钟发送的携带有该主时钟心跳信号的第一报文。具体的,主时钟可以利用报文中的一个字节携带该主时钟的心跳信号。这样,使用的开销小,只是占用了报文中的一个保留字节。S102、判断该第一报文中携带的心跳信号与上一次从主时钟接收的第二报文中携带的心跳信号是否相同。S103、若第一报文中携带的心跳信号与上一次从主时钟接收的第二报文中携带的心跳信号不同,则确定该网络未发生时钟跟踪成环,并且第一报文正常。S104、若第一报文中携带的心跳信号与上一次从主时钟接收的第二报文中携带的心跳信号相同,则确定该网络发生时钟跟踪成环,并且第一报文异常。本发明实施例提供的确定网络中时钟跟踪成环的方法,同步设备接收网络中的主时钟发送的携带有该主时钟心跳信号的第一报文,判断该第一报文中携带的心跳信号与上一次从主时钟接收的第二报文中携带的心跳信号是否相同,若第一报文中的心跳信号与之前接收的第二报文中的不同,则说明该第一报文是由主时钟所发,正常可用;若第一报文中的心跳信号与之前接收的第二报文中的相同,则说明该第一报文非主时钟所发,异常不可用,确定网络中出现了跟踪环。这样,下游同步设备就可以在时钟跟踪成环的同时发现问题,从而能够快速且准确地确定时钟跟踪成环。本发明又一实施例提供的确定网络中时钟跟踪成环的方法,其网络场景如图2所示,假设设备4为具有主时钟的同步设备。在正常的情况下,设备4在间隔发送Announce (公布)报文的过程中,通过报文的一个保留字节的变化把主时钟的心跳信号广播到所有的同步设备,所有下游同步设备在收到主时钟——设备4的含有心跳信号的报文后,提取出该指示主时钟心跳信号的字节,与之前接收到的报文中的心跳信号字节进行比较,如果不同,说明该报文为主时钟所在的设备4 发出的正常的报文,从而建立以设备4为跟踪源点的跟踪树。在此,利用报文中的一个字节携带该主时钟的心跳信号,可以使开销为最小。当设备4降级的时候,从图2中可以看出,设备6比设备8距离设备4更远,或者其他的网络原因,设备6得到主时钟信息更新的要慢一些,设备6的发送的报文很可能还是设备4降级前的报文。但设备4上已经不会主动再发送降级前的报文,所以该降级前的报文不会再由老的主时钟——设备4产生心跳信号。这样,设备6发送的老的报文也就没有
5心跳变化。设备8收到设备6发送的报文后,连续监测到报文中携带的心跳信号没有变化, 即与之前接收到的报文的心跳信号相同,就确定出该报文为异常报文,并丢弃该报文。从而在最初的关键点上阻隔了错误的发生。此外,下游设备在接收并判断报文中携带的心跳信号时,如果确定报文为正常报文,就根据该报文进行时钟跟踪;如果确定该报文为异常报文,丢弃该报文后,将超时计数器加1,在超时计数器未超时时,继续接收监测并判断主时钟发送的报文。这样一来,本实施例还具有较强的容错性,如果上游设备是由于自身原因而引起的心跳信号未发生变化,只要时间未超过超时判断的时间,都不会引起下游设备的协议倒换。具体的,如图3所示,包括以下步骤S301、同步设备监测网络中的主时钟发送的新报文(第一报文),并执行步骤S 302。S302、判断是否接收到新的报文(第一报文)。如果没有接收到新的报文(第一报文),则执行步骤S301 ;如果接收到新的报文(第一报文),则执行步骤S303。S303、记录该新报文(第一报文)中携带的心跳信号,并执行步骤S304。S304、判断该新报文(第一报文)中的心跳信息心跳信号与上一次从主时钟之前接收到的报文(第二报文)中的心跳信息心跳信号是否相同。如果不同,则执行步骤S305 ; 如果相同,则执行步骤S308。S305、对该新报文(第一报文)进行其他检测。如果检测成功,则执行步骤S306 ; 如果检测失败,则执行步骤S308。S306、将超时计数器清零,并执行步骤S307。S307、保存该新的报文,并重新执行步骤S301。S308、将超时计数器加1,并执行步骤S309。S309、判断超时计数器是否超时。如果未超时,则执行步骤S301 ;如果超时,则执行步骤S310。S310、上报超时,确定网络中时钟跟踪成环,并重新执行步骤S301。本发明实施例提供的确定网络中时钟跟踪成环的方法,同步设备接收网络中的主时钟发送的携带有该主时钟心跳信号的第一报文,判断该第一报文中携带的心跳信号与上一次从主时钟接收的第二报文中携带的心跳信号是否相同,若第一报文中的心跳信号与之前接收的第二报文中的不同,则说明该第一报文是由主时钟所发,正常可用;若第一报文中的心跳信号与之前接收的第二报文中的相同,则说明该第一报文非主时钟所发,异常不可用,确定网络中出现了跟踪环。这样,下游同步设备就可以在时钟跟踪成环的同时发现问题,从而能够快速且准确地确定时钟跟踪成环。本发明实施例提供的同步设备40,如图4所示,包括接收单元401,用于接收网络中的主时钟发送的携带有该主时钟心跳信号的第一报文。判断单元402,用于判断该第一报文中携带的心跳信号与上一次从主时钟接收的第二报文中携带的心跳信号是否相同;若第一报文中携带的心跳信号与上一次从主时钟接收的第二报文中携带的心跳信号不同,则确定该网络未发生时钟跟踪成环,并且第一报文正常;若第一报文中携带的心跳信号与上一次从主时钟接收的第二报文中携带的心跳信号相同,则确定该网络发生时钟跟踪成环,并且第一报文异常。本发明实施例提供的同步设备,同步设备接收网络中的主时钟发送的携带有该主时钟心跳信号的第一报文,判断该第一报文中携带的心跳信号与上一次从主时钟接收的第二报文中携带的心跳信号是否相同;若第一报文中的心跳信号与之前接收的第二报文中的不同,则说明该第一报文是由主时钟所发,正常可用;若第一报文中的心跳信号与之前接收的第二报文中的相同,则说明该第一报文非主时钟所发,异常不可用,确定网络中出现了跟踪环。这样,下游同步设备就可以在时钟跟踪成环的同时发现问题,从而能够快速且准确地确定时钟跟踪成环。进一步地,如图5所示,该同步设备40还包括时钟跟踪单元403,用于当确定第一报文正常时,根据该正常的第一报文进行时钟足艮S宗。超时计数单元404,用于当确定第一报文异常时,丢弃该异常的第一报文,并累积超时计数器。超时判断单元405,用于在超时计数单元704累积的计数器未超时时,继续接收并判断主时钟发送的第一报文;当超时计数器超时后,确定该网络发生时钟跟踪成环。由此,该该同步设备40具有较强的容错性,如果上游设备是由于自身原因而引起的心跳字节未发生变化,只要时间未超过超时判断的时间,都不会引起下游设备的协议倒换。本发明实施例提供的时钟跟踪系统,如图6所示,包括主时钟602和同步设备601, 其中同步设备601,用于接收网络中的主时钟602发送的携带有该主时钟602心跳信号的第一报文;判断该第一报文中携带的心跳信号与上一次从主时钟602接收的第二报文中携带的心跳信号是否相同;若第一报文中携带的心跳信号与上一次从主时钟602接收的第二报文中携带的心跳信号不同,则确定该网络未发生时钟跟踪成环,并且第一报文正常;若第一报文中携带的心跳信号与上一次从主时钟602接收的第二报文中携带的心跳信号相同,则确定该网络发生时钟跟踪成环,并且第一报文异常。本发明实施例提供的时钟跟踪系统,同步设备接收网络中的主时钟发送的携带有该主时钟心跳信号的第一报文,判断该第一报文中携带的心跳信号与上一次从主时钟接收的第二报文中携带的心跳信号是否相同;若第一报文中的心跳信号与之前接收的第二报文中的不同,则说明该第一报文是由主时钟所发,正常可用;若第一报文中的心跳信号与之前接收的第二报文中的相同,则说明该第一报文非主时钟所发,异常不可用,确定网络中出现了跟踪环。这样,下游同步设备就可以在时钟跟踪成环的同时发现问题,从而能够快速且准确地确定时钟跟踪成环。本领域普通技术人员可以理解实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。以上所述,仅为本发明的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
权利要求
1.一种确定网络中时钟跟踪成环的方法,其特征在于,包括接收网络中的主时钟发送的携带有该主时钟心跳信号的第一报文;判断所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号是否相同;若所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号不同,则确定所述网络未发生时钟跟踪成环,并且所述第一报文正常;若所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号相同,则确定所述网络发生时钟跟踪成环,并且所述第一报文异常。
2.根据权利要求1所述的方法,其特征在于,利用报文中的一个字节携带所述主时钟的心跳信号。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括当确定所述第一报文正常时,根据该正常的第一报文进行时钟跟踪。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括当确定所述第一报文异常时,丢弃该异常的第一报文,累积超时计数器,在所述超时计数器未超时时,继续接收并判断所述主时钟发送的第一报文;当所述超时计数器超时后,确定所述网络发生时钟跟踪成环。
5.一种同步设备,其特征在于,包括接收单元,用于接收网络中的主时钟发送的携带有该主时钟心跳信号的第一报文;判断单元,用于判断所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号是否相同;若所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号不同,则确定所述网络未发生时钟跟踪成环,并且所述第一报文正常;若所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号相同,则确定所述网络发生时钟跟踪成环,并且所述第一报文异常。
6.根据权利要求5所述的同步设备,其特征在于,所述同步设备还包括时钟跟踪单元,用于当确定所述第一报文正常时,根据该正常的第一报文进行时钟跟S示ο
7.根据权利要求5所述的同步设备,其特征在于,所述同步设备还包括超时计数单元,用于当确定所述第一报文异常时,丢弃该异常的第一报文,并累积超时计数器;超时判断单元,用于在所述超时计数单元累积的计数器未超时时,继续接收并判断所述主时钟发送的第一报文;当所述超时计数器超时后,确定所述网络发生时钟跟踪成环。
8.一种时钟跟踪系统,其特征在于,包括主时钟和同步设备,其中所述同步设备,用于接收网络中的所述主时钟发送的携带有该主时钟心跳信号的第一报文;判断所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号是否相同;若所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号不同,则确定所述网络未发生时钟跟踪成环,并且所述第一报文正常;若所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号相同,则确定所述网络发生时钟跟踪成环,并且所述第一报文异常。
全文摘要
本发明实施例提供一种确定网络中时钟跟踪成环的方法、装置及系统,涉及通信领域,能够快速且准确地确定时钟跟踪成环。解决方案为接收网络中的主时钟发送的携带有该主时钟心跳信号的第一报文;判断所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号是否相同;若所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号不同,则确定所述网络未发生时钟跟踪成环,并且所述第一报文正常;若所述第一报文中携带的心跳信号与上一次从所述主时钟接收的第二报文中携带的心跳信号相同,则确定所述网络发生时钟跟踪成环,并且所述第一报文异常。本发明实施例用于时钟跟踪。
文档编号H04L7/00GK102201904SQ20101013037
公开日2011年9月28日 申请日期2010年3月23日 优先权日2010年3月23日
发明者朱派友, 杨丽, 葛良兵, 谢露 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1