CN103023595A - 一种最佳主时钟算法的实现方法及装置 - Google Patents
一种最佳主时钟算法的实现方法及装置 Download PDFInfo
- Publication number
- CN103023595A CN103023595A CN2012101887850A CN201210188785A CN103023595A CN 103023595 A CN103023595 A CN 103023595A CN 2012101887850 A CN2012101887850 A CN 2012101887850A CN 201210188785 A CN201210188785 A CN 201210188785A CN 103023595 A CN103023595 A CN 103023595A
- Authority
- CN
- China
- Prior art keywords
- clock
- data set
- jumping
- better
- ebest
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0641—Change of the master or reference, e.g. take-over or failure of the master
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0661—Clock or time synchronisation among packet nodes using timestamps
- H04J3/0667—Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种最佳主时钟算法的实现方法及装置,在进行时钟数据集的比较时,先比较外界时钟与本地时钟的时钟id是否相同,时钟id不同时,再比较外界时钟与本地时钟的时钟性能,在外界时钟与本地时钟的时钟性能一致时,决定是否进入多GM模式,如果决定进入多GM模式,则:比较两个时钟数据集的跳数,当跳数不相等时,跳数小的数据集好于跳数大的数据集;当跳数相等时,则通过比较时钟id或者随机选择确定较好的数据集。本发明实现了一个域中多个具有相同时钟性能的GM时钟存活,并可按照最短跳数方式来合理分配负载。
Description
技术领域
本发明涉及时钟同步通信网络技术领域,尤其涉及一种最佳主时钟算法的实现方法及装置。
背景技术
随着3G(The 3rd Generation,第三代移动通信技术)网络的高速发展,PTP时间同步协议在通讯网络中得到越来越多的重视和广泛的应用。国内外运营商不断的使用精确时间同步协议(Precision Time Protocol,简称PTP)进行时间同步,逐步替换使用GPS(Global Positioning System,全球定位系统)进行时间同步的方式。
在IEEE 1588V2协议中,组播组网下,网络拓扑是通过BMC算法(BestMaster Clock Algorithm,最佳主时钟算法)来控制的。标准的BMC算法来自于工控领域的应用,其思想为:先在域内选举一个等级最高祖母时钟(GrandMaster clock,简称GM),然后按照距离GM的跳数来完成拓扑建立,同时在距GM相等的设备间或设备内部完成破环处理。其优点是全网可以同步于一个时间源,这样在稳定状态下,整网处于同源时间同步状态。但是,由于限定了域内只能有一个GM,即在一个域中,只能存在一个GM时钟,因而使得网络对主用GM时钟有过高依赖度,当GM丢失后,网络中所有时钟都会受到影响,只有当算法再推举出一个新的GM后,网络才会趋于稳定。
在电信等通信网络中,为了网络的可靠性,一般要求网络具有备份功能;同时,为了提高单设备性能,也需要进行负载分担。这样,在时钟网络中,一般要部署2个甚至更多个GM时钟。在标准的BMC算法中,主用的GM时钟会尽量多的携带负载(只要这些负载能直接或间接与见到主用GM),而这使得备用GM不能发挥作用,只能在主用GM失效后,才会承担其GM作用,这就导致了围绕主用GM的负载过多,跳数过大,时钟恢复的性能变差;并且,当网络进行主备GM倒换时,需要所有负载都进行倒换,造成了网络的大规模动荡,引入时间抖动。
发明内容
本发明解决的技术问题是提供一种最佳主时钟算法的实现方法及装置,实现了一个域中多个具有相同时钟性能的GM时钟存活,并可按照最短跳数方式来合理分配负载。
为解决上述技术问题,本发明提供了一种最佳主时钟算法的实现方法,在进行时钟数据集的比较时,
先比较外界时钟与本地时钟的时钟id是否相同,时钟id不同时,再比较所述外界时钟与本地时钟的时钟性能,在所述外界时钟与本地时钟的时钟性能一致时,决定是否进入多祖母时钟(GM)模式,如果决定进入多GM模式,则:
比较所述两个时钟数据集的跳数,当跳数不相等时,跳数小的数据集好于跳数大的数据集;当跳数相等时,则通过比较时钟id或者随机选择确定较好的数据集。
进一步地,通过判断所述外界时钟的时钟等级是否优于本地时钟多GM等级阈值,决定是否进入多GM模式:如果优于本地时钟多GM等级阈值,则决定进入多GM模式;否则,决定不进入GM模式。
进一步地,所述方法还包括:
决定不进入GM模式时,则:通过比较时钟id确定最佳主时钟。
进一步地,在比较所述两个时钟数据集的跳数时,
如果跳数差大于1,则跳数小的数据集好于跳数大的数据集;如果跳数差为1,则跳数小且GM id小的数据集好于跳数大且GM id大的数据集、跳数小但GM id大的数据集拓扑好于跳数大但GM id小的数据集;如果跳数相等,则GM id小的数据集拓扑好于GM id大的数据集。
进一步地,所述方法还包括:
多GM模式下,当外界时钟最佳数据集ebest好于或者拓扑好于本地时钟数据集D0,且本地时钟等级(clockclass)大于127时,
如果ebest好于D0,则ebest所在端口进入slave状态;如果ebest拓扑好于D0,则ebest所在端口进入passive状态。
进一步地,所述方法还包括:
当外界时钟最佳数据集ebest好于或者拓扑好于本地时钟数据集D0,且本地时钟等级大于127时,
如果ebest好于本地其他端口最佳数据集erbest,则erbest所在端口进入master状态;如果ebest拓扑好于erbest,则erbest所在端口进入passive状态。
进一步地,所述方法还包括:
通过如下检测方式之一或其任意组合对数据集有效性进行检测:announce丢包检测、sync报文检测、delay-resp检测、时间戳抖动检测等。
本发明还提供了一种最佳主时钟算法的实现装置,所述装置包括:数据集比较模块,模式选择模块,
所述数据集比较模块,用于比较外界时钟与本地时钟的时钟id是否相同,时钟id不同时,比较所述外界时钟与本地时钟的时钟性能;以及,在多GM模式下,比较所述两个时钟数据集的跳数,当跳数不相等时,跳数小的数据集好于跳数大的数据集;当跳数相等时,则通过比较时钟id或者随机选择确定较好的数据集;
所述模式选择模块,用于在所述外界时钟与本地时钟的时钟性能一致时,决定是否进入多GM模式。
进一步地,所述模式选择模块,用于通过判断所述外界时钟的时钟等级是否优于本地时钟多GM等级阈值,决定是否进入多GM模式:如果优于本地时钟多GM等级阈值,则决定进入多GM模式;否则,决定不进入GM模式。
进一步地,所述装置还包括状态决定模块,所述状态决定模块,用于:
当外界时钟最佳数据集ebest好于或者拓扑好于本地时钟数据集D0,且本地时钟等级(clockclass)大于127时,
如果ebest好于D0,则ebest所在端口进入slave状态;如果ebest拓扑好于D0,则ebest所在端口进入passive状态;
如果ebest好于本地其他端口最佳数据集erbest,则erbest所在端口进入master状态;如果ebest拓扑好于erbest,则erbest所在端口进入passive状态。
进一步地,所述装置还包括如下模块中的一个或多个,以对数据集有效性进行检测:
announce丢包检测模块、sync报文检测模块、delay-resp检测模块、时间戳抖动检测模块。
进一步地,所述数据集比较模块用于,在比较所述两个时钟数据集的跳数时,
如果跳数差大于1,则跳数小的数据集好于跳数大的数据集;如果跳数差为1,则跳数小且GM id小的数据集好于跳数大且GM id大的数据集、跳数小但GM id大的数据集拓扑好于跳数大但GM id小的数据集;如果跳数相等,则GM id小的数据集拓扑好于GM id大的数据集。
与现有技术相比较,本发明通过增加两个控制参数增强外界对算法的参与程度,并通过多GM比较的算法分支,实现到多GM分担负载流程,使得BMC算法更适应电信组网;同时,还提出数据集有效性检测可以按照需要进行扩展,来适应不同用户的需要。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1a和图1b为标准BMC数据集比较算法流程示意图;
图2为标准状态决定算法流程示意图;
图3a和图3b为本发明实施例的改进数据集比较算法流程示意图;
图4为本发明实施例的改进状态决定算法流程示意图;
图5a、5b、5c为本发明实施例的采用改进算法网络拓扑示意图;
图6为本发明实施例的数据集有效性检测模块的示意图。
具体实施方式
本实施方式提供一种最佳主时钟(BMC)算法的实现方法,具体包括如下主要内容:
1.引进了多GM算法控制参数multi-GM model:用户通过配置此参数来实现标准算法与扩展算法间切换。
2.引进了本地时钟等级(clockclass)限值参数class-limit:是否需要切换成标准GM方式的时钟等级clockclass数值,此值由用户配置。
实际应用中可能有这样的需求:在网络中的多个GM时钟都具有较高性能,使得各个GM间的偏差可以忽略时,希望多个GM都存活,共同维护网络、分担负载;但当网络中的GM的时钟质量都下降到一定程度后,各个GM间就可能出现大的偏差,此时则希望网络不要再由多个GM共同工作,而改为只有一个主用GM工作,这样网络中不同负载间的偏差反而会变小。
而通过引入class-limit,在多GM算法模式下,也可以根据时钟等级的变化自动进行多GM与单GM的切换。
需要指出的是,上述提到的2个控制参数(multi-GM model、class-limit)是域的概念;通常要求一个域内的值配置成一样,这样可使得拓扑算法唯一,避免拓扑结果存在不确定性。
3.多GM算法的方案:在标准数据集比较算法中,当2个不同时钟id(时钟id是时钟设备的标识,用来区分网络中不同的时钟设备)的数据集比较时,如果除id外其他时钟属性一样,标准算法又比较了时钟id来决定最优时钟,当具有相同时钟id的2个数据集比较时,才通过比较跳数来确定优劣。本发明提供的改进算法是:当两个不同时钟id数据集的时钟性能一致时,通过比较跳数来确定优劣,当跳数不等时,跳数小的优,当跳数相等时,此时可以通过比较时钟id或者随机选择确定优劣;这样网络会以具有相同时钟性质、不同时钟id的GM为中心形成多GM拓扑。
形成多GM共同工作的前提是网络部署了多个同属性的GM时钟,这些GM时钟互为备份,没有主备之分;而后再根据距离GM的跳数来分配下游设备。
4.数据集有效性检测机制:在标准算法中,时钟数据的有效性是通过监控announce报文来实现的,其优点是算法收集的信息简单明了,利于算法快速收敛与稳定,但其弊端在于,该方法是假设设备都是完备的,不存在故障,网络通道也要是通畅的,而在实际应用中一旦这种假设不满足,例如announce报文正常,但由于硬件或者网络等故障,导致sync同步报文丢失,此时就会发生拓扑正常生成,但时钟同步并没有传递下去。在G.8265.1标准中定义了监控多个时钟报文的指标,不满足指标的数据集不能使用,该方案可以选择性的使用到BMC算法中,使用后算法可以响应故障,并做出选择,但拓扑收敛速度会受到很大影响。
本发明中提出一个数据集有效性检测的环节,检测的具体信息用户可以根据需要进行选择,包括但不限于:announce丢包检测、sync报文检测、delay-resp检测、时间戳抖动检测等。
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
图1示出了标准算法比较流程,:当不同GM id数据集比较时,如果其他时钟属性都相同,最后通过时钟id实现确定优劣;当相同GM id数据集比较时,按照跳数以及收发包的PTP端口号来确定优劣。
标准BMC状态决定算法,用于决定各个PTP端口的端口状态。标准BMC基本思路就是:根据比较数据集方法给出3个关键数据集:本地时钟数据集合D0(代表本设备的时钟性能)、端口r最佳数据集合Erbest(代表一个ptp端口(第r个口)上最佳的外边时钟输入)、最佳数据集合Ebest(代表整个设备的最佳时钟输入);然后对这几个数据集进行进一步的比较,进而决定各个ptp端口的端口状态,(1)本地比外界的好,本地的端口就为master;(2)外界比本地好,最好输入的那个端口为slave;其他端口中:拓扑差于Ebest的(就是跳数差1的那些端口)为passive;其他为master。
图2示出了标准状态决定算法的流程图,其具体流程描述如下:
(201)在第r个端口上比较数据;
(202)端口状态为侦听状态,保持侦听状态;
(203)时钟等级小于127:端口的Erbest比本地好,端口为passive,否则端口为master;
(204)当时钟等级大于127时,进入(205);
(205)本地比Ebest好,则本端口为master;
(206)本地没有Ebest好,如果Ebest是这个r端口上的数据得到的(即Ebest等于Erbest),端口状态为slave,否则进入(207);
(207)Ebest拓扑好于Erbest时,端口状态为passive,否则为master。
图3为本发明实施例的改进算法数据集比较流程,如图3所示,该流程具体包括如下主要步骤:
(301)比较时钟GM id,相同进入X流程继续比较;
(302)分别比较时钟优先级1、时钟等级、精度、精度方差、优先级2都相等时,进入新增流程;
(303)当进入多GM模式、并且时钟等级优于本地时钟多GM等级阈值(如本地时钟等级下限)时,进入Y流程;
(304)否则,比较GM id决定好坏。
图4为本发明实施例的改进状态决定算法流程,如图4所示,该流程具体包括如下主要步骤:
(401)在第r个端口上比较数据;
(402)端口状态为侦听状态,保持侦听状态;
(403)时钟等级小于127:端口的Erbest比本地好,端口为passive,否则端口为master;
(404)当时钟等级大于127时,进入(405);
(405)本地比Ebest好,端口为master;
(406)本地没有Ebest好,如果Ebest是这个r端口上的数据得到的(即Ebest等于Erbest),进入(407),否则进入(408);
(407)如果多GM模式关闭,端口状态为slave,如果打开,则再比较下Ebest与D0,Ebest好时,端口状态为slave,Ebest拓扑好时,端口状态为passive。
(408)Ebest拓扑好于Erbest时,端口状态为passive,否则为master。
结合图4,本发明与标准状态决定算法相比,具有如下特点:
1)当外界时钟的ebest数据优于本地数据时,增加multi-GM model开关,关闭时,进入标准流程;
2)打开multi-GM model开关后,如果外界时钟比本地的时钟质量好,则接收ebest的端口进入slave状态,否则,如果外界与本地比较只是拓扑好,则将本端口passive掉,不进入slave状态,防止备用GM被主用GM同步掉。
结合图3和图4,从上述流程可以看出,本发明与标准比较算法的流程相比,具有如下特点:
1)相同GM id数据集比较与标准算法相同;
2)当不同GM id数据集比较时,如果其他时钟属性相同,查看multi-GMmodel开关:当开关关闭时,切换到标准算法,当开关打开后,开始比较A(或者B)的GM class与本地配置的class-limit值;
3)当A(或者B)的GM class小于等于与本地配置的class-limit时,开始进入Y流程;当A(或者B)的GM class大于与本地配置的class-limit时,算法切换回标准算法;针对1588v2的组网,class-limit默认设置为6,用户可以根据需要修改此值;
4)Y流程:当跳数差大于1时,小跳数的好于大跳数的;当跳数差为1时,则跳数小且GM id小的时钟好于跳数大且GM id大的时钟、跳数小但GM id大的时钟拓扑好于跳数大但GM id小的时钟;当跳数相等时,GM id小的时钟拓扑好于GM id大的时钟,并且类似于标准算法,通过比较结果的好与拓扑好的不同,支持产生passive端口,避免环路;
5)当跳数相等时比较GM id的方案会造成具有小id的GM设备抢到了所有处于跳数交汇点的设备,这不利于负载分担;此时,也可采用通过随机函数(但不限于随机函数的方法)来确定2个时钟数据的好坏,这样有利于分担负载,例如:如果A,B中有一个为父辈时钟,则父辈时钟胜出,否则,进入随机函数来决定A与B的优劣。
图5为本发明示例的采用改进算法网络拓扑示意图。为简单起见,图例中只示出了2个GM设备。另外,示例中一共7个BC设备,其中与GM与备GM都外接GPS,假设主GM的时钟id小于备GM,其他配置相同,所有设备上都打开了多GM模式开关。
图5a是表示正常状况下的ptp端口状态拓扑图。
主GM设备:其时钟质量及时钟id都是全网最好的,所以其2个端口状态都为master;
备GM设备:其时钟质量全网最好,但时钟id大于主GM设备,导致其与主GM相连的端口会变为passive(P1流程),这个passive就避免了备用GM被主用GM同步,另一个端口为master。
BC-1:距离主GM跳数为1,距离备GM跳数为2;假设其与主GM相连的端口为A,与BC-2相连的端口为B;则A端口数据集为:主GM、跳数为0;B端口数据集为:备GM、跳数为1;通过比较A端口数据集最优,好于B端口,好于本身D0,A端口进入slave状态,而B端口进入master(M3流程)。
BC-2:距离主GM跳数为2,距离备GM跳数为1;假设其与备GM相连的端口为A,与BC-1相连的端口为B;则A端口数据集为:备GM、跳数为0;B端口数据集为:主GM、跳数为1;通过比较A端口数据集最优,拓扑好于B端口,好于本身D0,A端口进入slave状态,而B端口进入passive(P2流程),这个passive防止了拓扑环的产生。
同理,BC-3,BC-4都会在距离GM近的端口上变为slave,而另一个端口上距离GM的跳数与slave端口相比都大于1而变为master。
BC-5:其距离主备GM的跳数相同;按照比较GM id的规则,其与BC-4相连的端口变为slave,而与BC-3相连的端口变为passive(此时若按照随机方案选择,salve与passive状态可以互换),这个passive也破掉了环路。
从最终生成的拓扑可以看出:网络中的设备最终完成以多个GM为中心的拓扑映射,并且在跳数相等的地方用passive来防止环路的产生。
图5b是主GM的gps丢失后,主GM会发生降质;此时由于网络中只有备GM的时钟等级最高,拓扑就按照标准算法支配来完成,各个状态变化过程不累述。
图5c是主备GM的gps都丢失后,主备GM都会发生降质;这里假设GM的质量已经降低到class-limit以下;此时,算法就会切换回标准算法,备GM虽然时钟数据与主GM一样,但也被同步了;这样保证了网络中只有一个时钟注入点,避免了不同GM间的偏差给网络带来更大的抖动。
此外,本发明实施例中还提供了一种最佳主时钟算法的实现装置,主要包括:数据集比较模块,模式选择模块,
所述数据集比较模块,用于比较外界时钟与本地时钟的时钟id是否相同,时钟id不同时,比较所述外界时钟与本地时钟的时钟性能;以及,在多GM模式下,比较所述两个时钟数据集的跳数,当跳数不相等时,跳数小的数据集好于跳数大的数据集;当跳数相等时,则通过比较时钟id或者随机选择确定较好的数据集;
所述模式选择模块,用于在所述外界时钟与本地时钟的时钟性能一致时,决定是否进入多GM模式。
进一步地,所述模式选择模块,用于通过判断所述外界时钟的时钟等级是否优于本地时钟多GM等级阈值,决定是否进入多GM模式:如果优于本地时钟多GM等级阈值,则决定进入多GM模式;否则,决定不进入GM模式。
进一步地,所述装置还包括状态决定模块,所述状态决定模块,用于:
当外界时钟最佳数据集ebest好于或者拓扑好于本地时钟数据集D0,且本地时钟等级(clockclass)大于127时,
如果ebest好于D0,则ebest所在端口进入slave状态;如果ebest拓扑好于D0,则ebest所在端口进入passive状态;
如果ebest好于本地其他端口最佳数据集erbest,则erbest所在端口进入master状态;如果ebest拓扑好于erbest,则erbest所在端口进入passive状态。
进一步地,所述数据集比较模块用于,在比较所述两个时钟数据集的跳数时,
如果跳数差大于1,则跳数小的数据集好于跳数大的数据集;如果跳数差为1,则跳数小且GM id小的数据集好于跳数大且GM id大的数据集、跳数小但GM id大的数据集拓扑好于跳数大但GM id小的数据集;如果跳数相等,则GM id小的数据集拓扑好于GM id大的数据集。
进一步地,如图6所示,所述装置还包括如下模块中的一个或多个,以对数据集有效性进行检测:announce丢包检测模块、sync报文检测模块、delay-resp检测模块、时间戳抖动检测模块。在判断时钟数据集A是否可用时,可采用如下设计:启用announce报文检测一般为默认开启项,除非本算法以外的其他特殊应用都应该开启;sync报文检测等为可选开启项,当数据A满足用户需求时,把A置为可用,否则置为不可用,数据集检测结果变化需要重新触发算法状态机进行拓扑的重新计算。
以上仅为本发明的优选实施案例而已,并不用于限制本发明,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
Claims (12)
1.一种最佳主时钟算法的实现方法,其特征在于,在进行时钟数据集的比较时,
先比较外界时钟与本地时钟的时钟id是否相同,时钟id不同时,再比较所述外界时钟与本地时钟的时钟性能,在所述外界时钟与本地时钟的时钟性能一致时,决定是否进入多祖母时钟(GM)模式,如果决定进入多GM模式,则:
比较所述两个时钟数据集的跳数,当跳数不相等时,跳数小的数据集好于跳数大的数据集;当跳数相等时,则通过比较时钟id或者随机选择确定较好的数据集。
2.如权利要求1所述的方法,其特征在于,
通过判断所述外界时钟的时钟等级是否优于本地时钟多GM等级阈值,决定是否进入多GM模式:如果优于本地时钟多GM等级阈值,则决定进入多GM模式;否则,决定不进入GM模式。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:
决定不进入GM模式时,则:通过比较时钟id确定最佳主时钟。
4.如权利要求1所述的方法,其特征在于,在比较所述两个时钟数据集的跳数时,
如果跳数差大于1,则跳数小的数据集好于跳数大的数据集;如果跳数差为1,则跳数小且GM id小的数据集好于跳数大且GM id大的数据集、跳数小但GM id大的数据集拓扑好于跳数大但GM id小的数据集;如果跳数相等,则GM id小的数据集拓扑好于GM id大的数据集。
5.如权利要求1或4所述的方法,其特征在于,所述方法还包括:
多GM模式下,当外界时钟最佳数据集ebest好于或者拓扑好于本地时钟数据集D0,且本地时钟等级(clockclass)大于127时,
如果ebest好于D0,则ebest所在端口进入slave状态;如果ebest拓扑好于D0,则ebest所在端口进入passive状态。
6.如权利要求5所述的方法,其特征在于,所述方法还包括:
当外界时钟最佳数据集ebest好于或者拓扑好于本地时钟数据集D0,且本地时钟等级大于127时,
如果ebest好于本地其他端口最佳数据集erbest,则erbest所在端口进入master状态;如果ebest拓扑好于erbest,则erbest所在端口进入passive状态。
7.如权利要求1所述的方法,其特征在于,所述方法还包括:
通过如下检测方式之一或其任意组合对数据集有效性进行检测:announce丢包检测、sync报文检测、delay-resp检测、时间戳抖动检测等。
8.一种最佳主时钟算法的实现装置,其特征在于,所述装置包括:数据集比较模块,模式选择模块,
所述数据集比较模块,用于比较外界时钟与本地时钟的时钟id是否相同,时钟id不同时,比较所述外界时钟与本地时钟的时钟性能;以及,在多GM模式下,比较所述两个时钟数据集的跳数,当跳数不相等时,跳数小的数据集好于跳数大的数据集;当跳数相等时,则通过比较时钟id或者随机选择确定较好的数据集;
所述模式选择模块,用于在所述外界时钟与本地时钟的时钟性能一致时,决定是否进入多GM模式。
9.如权利要求8所述的装置,其特征在于,
所述模式选择模块,用于通过判断所述外界时钟的时钟等级是否优于本地时钟多GM等级阈值,决定是否进入多GM模式:如果优于本地时钟多GM等级阈值,则决定进入多GM模式;否则,决定不进入GM模式。
10.如权利要求8所述的装置,其特征在于,所述装置还包括状态决定模块,所述状态决定模块,用于:
当外界时钟最佳数据集ebest好于或者拓扑好于本地时钟数据集D0,且本地时钟等级(clockclass)大于127时,
如果ebest好于D0,则ebest所在端口进入slave状态;如果ebest拓扑好于D0,则ebest所在端口进入passive状态;
如果ebest好于本地其他端口最佳数据集erbest,则erbest所在端口进入master状态;如果ebest拓扑好于erbest,则erbest所在端口进入passive状态。
11.如权利要求8、9或10所述的装置,其特征在于,所述装置还包括如下模块中的一个或多个,以对数据集有效性进行检测:
announce丢包检测模块、sync报文检测模块、delay-resp检测模块、时间戳抖动检测模块。
12.如权利要求8、9或10所述的装置,其特征在于,所述数据集比较模块用于,在比较所述两个时钟数据集的跳数时,
如果跳数差大于1,则跳数小的数据集好于跳数大的数据集;如果跳数差为1,则跳数小且GM id小的数据集好于跳数大且GM id大的数据集、跳数小但GM id大的数据集拓扑好于跳数大但GM id小的数据集;如果跳数相等,则GM id小的数据集拓扑好于GM id大的数据集。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210188785.0A CN103023595B (zh) | 2012-06-08 | 2012-06-08 | 一种最佳主时钟算法的实现方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210188785.0A CN103023595B (zh) | 2012-06-08 | 2012-06-08 | 一种最佳主时钟算法的实现方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103023595A true CN103023595A (zh) | 2013-04-03 |
CN103023595B CN103023595B (zh) | 2017-07-21 |
Family
ID=47971767
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210188785.0A Active CN103023595B (zh) | 2012-06-08 | 2012-06-08 | 一种最佳主时钟算法的实现方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103023595B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104683132A (zh) * | 2013-11-29 | 2015-06-03 | 中兴通讯股份有限公司 | 一种确定备份时钟源的方法及装置 |
CN107046449A (zh) * | 2016-02-06 | 2017-08-15 | 华为技术有限公司 | 用于时间同步的方法和时钟 |
CN108462548A (zh) * | 2017-02-22 | 2018-08-28 | 深圳市中兴软件有限责任公司 | 时间同步方法及装置 |
CN109155788A (zh) * | 2016-05-19 | 2019-01-04 | 西门子股份公司 | 借助明确拆除消息在tsn网络中快速重新配置gm时钟的方法 |
CN109586833A (zh) * | 2018-12-18 | 2019-04-05 | 中国移动通信有限公司研究院 | 确定端口状态的方法和网络节点 |
CN112425124A (zh) * | 2018-07-25 | 2021-02-26 | 大陆汽车有限公司 | 汽车以太网网络中的拓扑发现 |
WO2021238377A1 (zh) * | 2020-05-28 | 2021-12-02 | 华为技术有限公司 | 时钟源管理的方法和装置 |
WO2022067732A1 (en) * | 2020-09-30 | 2022-04-07 | Zte Corporation | Methods, systems and apparatuses for 5g time synchronization |
WO2024073210A1 (en) * | 2022-09-29 | 2024-04-04 | Caterpillar Inc. | Node-to-node network time synchronization |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100177666A1 (en) * | 2007-09-25 | 2010-07-15 | Yong Cheng | Method and apparatus for tracking clock sources |
CN102215101A (zh) * | 2011-05-31 | 2011-10-12 | 中兴通讯股份有限公司 | 一种时钟同步方法及设备 |
CN102420688A (zh) * | 2011-12-13 | 2012-04-18 | 中兴通讯股份有限公司 | 一种时钟频率同步方法及装置 |
-
2012
- 2012-06-08 CN CN201210188785.0A patent/CN103023595B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100177666A1 (en) * | 2007-09-25 | 2010-07-15 | Yong Cheng | Method and apparatus for tracking clock sources |
CN102215101A (zh) * | 2011-05-31 | 2011-10-12 | 中兴通讯股份有限公司 | 一种时钟同步方法及设备 |
CN102420688A (zh) * | 2011-12-13 | 2012-04-18 | 中兴通讯股份有限公司 | 一种时钟频率同步方法及装置 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104683132A (zh) * | 2013-11-29 | 2015-06-03 | 中兴通讯股份有限公司 | 一种确定备份时钟源的方法及装置 |
CN107046449A (zh) * | 2016-02-06 | 2017-08-15 | 华为技术有限公司 | 用于时间同步的方法和时钟 |
CN109155788B (zh) * | 2016-05-19 | 2021-05-25 | 西门子股份公司 | 借助明确拆除消息在tsn网络中快速重新配置gm时钟的方法 |
CN109155788A (zh) * | 2016-05-19 | 2019-01-04 | 西门子股份公司 | 借助明确拆除消息在tsn网络中快速重新配置gm时钟的方法 |
CN108462548B (zh) * | 2017-02-22 | 2021-09-03 | 深圳市中兴软件有限责任公司 | 时间同步方法及装置 |
CN108462548A (zh) * | 2017-02-22 | 2018-08-28 | 深圳市中兴软件有限责任公司 | 时间同步方法及装置 |
CN112425124A (zh) * | 2018-07-25 | 2021-02-26 | 大陆汽车有限公司 | 汽车以太网网络中的拓扑发现 |
US11316604B2 (en) | 2018-07-25 | 2022-04-26 | Continental Automotive Gmbh | Topology discovery in an automotive ethernet network |
WO2020125683A1 (zh) * | 2018-12-18 | 2020-06-25 | 中国移动通信有限公司研究院 | 确定端口状态的方法和网络节点 |
CN109586833B (zh) * | 2018-12-18 | 2020-11-06 | 中国移动通信有限公司研究院 | 确定端口状态的方法和网络节点 |
CN109586833A (zh) * | 2018-12-18 | 2019-04-05 | 中国移动通信有限公司研究院 | 确定端口状态的方法和网络节点 |
WO2021238377A1 (zh) * | 2020-05-28 | 2021-12-02 | 华为技术有限公司 | 时钟源管理的方法和装置 |
WO2022067732A1 (en) * | 2020-09-30 | 2022-04-07 | Zte Corporation | Methods, systems and apparatuses for 5g time synchronization |
WO2024073210A1 (en) * | 2022-09-29 | 2024-04-04 | Caterpillar Inc. | Node-to-node network time synchronization |
Also Published As
Publication number | Publication date |
---|---|
CN103023595B (zh) | 2017-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103023595A (zh) | 一种最佳主时钟算法的实现方法及装置 | |
CN103916950B (zh) | 时间同步方法及系统 | |
CN103634091B (zh) | 一种多同步域的时间同步系统、方法及跨域设备 | |
US9641382B2 (en) | Fast network formation after network power restoration | |
EP2852087A1 (en) | Packet network synchronization method, apparatus and system | |
CN106375231A (zh) | 一种流量切换方法、设备及系统 | |
US20180302312A1 (en) | Asynchronous broadcast communication based on time-based events in channel-hopping networks | |
US8848515B2 (en) | Method and apparatus for topology discovery | |
CN101848193B (zh) | 网络同步的方法、系统和网络节点 | |
US20150229587A1 (en) | Method and apparatus for selecting passive port of transparent clock node based on ptp | |
CN103166750A (zh) | 时钟时间同步源配置方法及装置 | |
CN103490840B (zh) | 一种进行精确时间协议报文处理的装置和方法 | |
CN102130912B (zh) | 一种基于rrpp的mvrp实现方法和设备 | |
CN103236990B (zh) | 一种路由信息同步的方法和设备 | |
US9300529B2 (en) | Communication system and network relay device | |
CN102420688A (zh) | 一种时钟频率同步方法及装置 | |
CN103634208A (zh) | 防止ptp tc环网中环路的方法和装置 | |
CN101330411A (zh) | 一种模拟大规模网络拓扑的方法和系统 | |
CN107508648A (zh) | 基于设备功能分类的时间触发以太网分步时间同步策略 | |
CN109120536B (zh) | 一种面向确定链路状态变化的空间网络路由与转发方法 | |
CN104185268A (zh) | 一种适用于自组织组网的时隙同步算法 | |
CN102821033B (zh) | 一种报文传输方法及装置 | |
CN108462548B (zh) | 时间同步方法及装置 | |
CN101296188A (zh) | 在两级分布式设备上实现快速生成树协议的方法 | |
CN100493020C (zh) | 实现同步光网络上的以太网环境下生成树的方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |