CN104639399B - 多主时间服务器检测方法和装置 - Google Patents
多主时间服务器检测方法和装置 Download PDFInfo
- Publication number
- CN104639399B CN104639399B CN201510054337.5A CN201510054337A CN104639399B CN 104639399 B CN104639399 B CN 104639399B CN 201510054337 A CN201510054337 A CN 201510054337A CN 104639399 B CN104639399 B CN 104639399B
- Authority
- CN
- China
- Prior art keywords
- time server
- device identification
- ntp
- primary time
- response messages
- 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.)
- Active
Links
Landscapes
- Computer And Data Communications (AREA)
Abstract
本申请提供了多主时间服务器检测方法和设备。本发明中,通过多主时间服务器检测方法检测网络中是否有多个主时间服务器,当检测出网络中出现多个主时间服务器,即意味着有多个主时间服务器都在给本设备同步时间,这能避免因网络中出现多个主时间服务器导致的网络中设备时间不同步。
Description
技术领域
本申请涉及网络通信技术,特别涉及多主时间服务器检测方法和装置。
背景技术
网络时间协议(NTP:Network Time Protocol)可以用来在分布式时间服务器和客户端之间进行时间同步,使网络内所有设备的时间保持一致,并提供较高的时间同步精度。
在NTP中,所谓主时间服务器,是指从权威时钟如原子时钟获得时间同步的NTP服务器。
当网络中出现了多个主时间服务器时,就可能会出现网络中的设备时间不再保持同步的状态。因为随着时间的推移多个主时间服务器的时间一定会出现偏差,即便是最开始的时候这些主时间服务器的时间是一样的。网络中出现多个主时间服务器一般都是对于孤立网络的时间同步方案规划不合理或者网络配置不正确造成的
如图1所示的组网,存在两个主时间服务器,分别为主时间服务器1和主时间服务器2,主时间服务器1和主时间服务器2在时间上相互独立。网络中的设备比如客户端或者是其他非主时间服务器即要从主时间服务器1同步时间,又要从主时间服务器2同步时间。当先从主时间服务器1收到NTP报文后经过时钟算法(包括过滤、合并和选择)最后得到的系统时间一定是和主时间服务器1同步的;当又从主时间服务器2收到NTP报文后再次经过时钟算法得到的时间就可能会出现即不和主时间服务器1同步、也不和主时间服务器2同步,并有可能出现时间不停震荡的现象,其原因就在于主时间服务器1和主时间服务器2的时间无法保持同步,从而就会造成网络中设备的时间无法保持同步。
通过检测网络中存在多个主时间服务器能够解决因为多个主时间服务器造成网络中设备的时间无法保持同步的问题,但是,对于一个规模较大的网络来说,通过手工排查NTP配置来找出来多个主时间服务器耗时耗力。然而,目前NTP还没有一种用于动态检测多个主时间服务器的方法。
发明内容
本申请提供了多主时间服务器检测方法和装置,以动态检测出多个主时间服务器,避免因网络中出现多个主时间服务器导致的网络中设备时间不同步。
本申请提供的技术方案包括:
一种多主时间服务器检测方法,该方法应用于网络设备,包括;
网络设备作为主时间服务器,接收网络时间协议NTP请求报文,将本设备的设备标识携带在NTP应答报文中返回至所述NTP请求报文的发送端;
网络设备作为非主时间服务器,接收NTP请求报文,将本地主时间服务器标识表记录的设备标识携带在NTP应答报文中返给发送该NTP请求报文的发送端;每隔设定的NTP请求报文发送周期向指定时间服务器发送NTP请求报文请求时间同步,接收NTP应答报文,比较NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致,若不一致,检测设定的多主时间服务器判定条件是否达到,是则确定网络中存在多个主时间服务器;
网络设备作为客户端,每隔设定的NTP请求报文发送周期向指定时间服务器发送NTP请求报文请求时间同步,接收NTP应答报文,比较NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致,如不一致,检测设定的多主时间服务器判定条件是否达到,是则确定网络中存在多个主时间服务器。
一种多主时间服务器检测装置,该装置应用于网络设备,包括;
当网络设备作为主时间服务器,所述装置包括:请求接收单元,用于接收网络时间协议NTP请求报文;发送单元,用于将所述网络设备的设备标识携带在NTP应答报文中返回至所述NTP请求报文的发送端;
当网络设备作为非主时间服务器,所述装置包括:请求接收单元,用于接收NTP请求报文;发送单元,用于将本地主时间服务器标识表记录的设备标识携带在NTP应答报文中返给发送该NTP请求报文的发送端,以及每隔设定的NTP请求报文发送周期向指定时间服务器发送NTP请求报文请求时间同步;应答接收单元,用于接收NTP应答报文;比较单元,用于比较应答接收单元接收的NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致,若不一致,检测设定的多主时间服务器判定条件是否达到,是则确定网络中存在多个主时间服务器;
当网络设备作为客户端,所述装置包括:发送单元,用于每隔设定的NTP请求报文发送周期向指定时间服务器发送NTP请求报文请求时间同步,应答接收单元,用于接收NTP应答报文;比较单元,用于比较应答接收单元接收的NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致,若不一致,检测设定的多主时间服务器判定条件是否达到,是则确定网络中存在多个主时间服务器。
由以上技术方案可以看出,本发明中,通过多主时间服务器检测方法检测网络中是否有多个主时间服务器,当检测出网络中出现多个主时间服务器,即意味着有多个主时间服务器都在给本设备同步时间,就能断定本设备会出现时间不同步,这能避免因网络中出现多个主时间服务器导致的网络中设备时间不同步。
附图说明
图1为现有多主时间服务器结构图;
图2为本发明提供的方法流程图;
图3为本发明提供的时钟层数结构图;
图4为本发明提供的NTPv4报文格式图;
图5为本发明提供的TLV格式图;
图6为本发明提供的TLV类型格式图;
图7为本发明提供的装置结构图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
如背景技术描述的,网络中之所以会出现设备的时间无法保持同步,究其原因就是网络中存在多个主时间服务器,但寻求时间同步的设备并不知道网络中存在多个主时间服务器,也不会检测网络中是否存在多个主时间服务器,最终造成设备的时间无法保持同步。
因此,为避免多主时间服务器造成网络中设备的时间无法保持同步,本发明提供了多主时间服务器检测方法,当检测出网络中出现多个主时间服务器,即意味着有多个主时间服务器都在同时给网络中的设备同步时间,就能断定网络中的设备会出现时间不同步,基于此,可提示管理人员该检测出的多个主时间服务器,以便管理人员及时排出多余的主时间服务器,保证主时间服务器的唯一性,比如:只保留一个主时间服务器比如图1所示的主时间服务器1,让另一个主时间服务器比如图1所示的主时间服务器2与主时间服务器1同步时间。
由此可见,本发明提供的多主时间服务器检测方法对防止因多主时间服务器而导致的时间不同步至关重要。
下面通过图2对本发明提供的方法进行描述:
参见图2,图2为本发明提供的方法流程图。如图2所示,该流程应用于网络设备。
这里的网络设备可为主时间服务器,也可为非主时间服务器,甚至还可为网络中的客户端。
其中,网络设备为主时间服务器、非主时间服务器、客户端时执行的操作均不同,下述的步骤201描述了网络设备为主时间服务器时执行的操作,下述的步骤202描述了网络设备为非主时间服务器时执行的操作,下述的步骤203描述了网络设备为客户端时执行的操作。
如图2所示,该流程可包括以下步骤:
步骤201,作为主时间服务器,接收NTP请求报文,将本设备的设备标识携带在NTP应答报文中返回至所述NTP请求报文的发送端。
NTP规定,根据精确度和重要性,时间同步从理论上一般分为多个时钟层数,常用的是1至16共16级时钟层数。时钟层数取值越小,其时钟准确度和重要性越高。通常一级时钟层数上从权威时钟(如原子时钟称为时钟源)获得时间同步的时间服务器为主时间服务器。至于如何划分时钟层数,这里不再展开描述,其可参考NTP。图3简单示出了4级时钟层数,在图3中,一级时钟层数的其中一个时间服务器为主时间服务器。
NTP规定,时间服务器的时间自取值最小的时钟层数向较大的时钟层数进行,比如,二级时钟层数的时间服务器(为非主时间服务器)从主时间服务器获得时间同步,三级时钟层数的时间服务器(为非主时间服务器)从二级时钟层数的时间服务器(为非主时间服务器)获得时间同步,以此类推。而对于客户端,其可以从同一级时钟层数的时间服务器获得时间同步,也可以从上一级时钟层数的时间服务器获得时间同步。
基于此,本步骤201中,当网络设备作为主时间服务器时,其接收的NTP请求报文可能是同一级或者下一级时钟层数的客户端发送的,也可能是下一级时钟层数即二级时钟层数的时间服务器发送的。但不管NTP请求报文是客户端还是时间服务器发送的,本网络设备作为主时间服务器时都会将本设备的设备标识携带在NTP应答报文回复给该NTP请求报文的发送端。
这里,作为一个实施例,设备标识可为设备的MAC地址,之所以选择MAC地址,是因为设备的MAC地址通常固化在设备的硬件里,很难被用户手工修改,而且全球唯一。至于本发明中,如何将设备标识携带在NTP应答报文回复给NTP请求报文的发送端,下文进行了具体描述。
步骤202,作为非主时间服务器,接收NTP请求报文,将本地主时间服务器标识表记录的设备标识携带在NTP应答报文中返回给发送该NTP请求报文的发送端;每隔设定的NTP请求报文发送周期向指定时间服务器发送NTP请求报文,接收NTP应答报文,比较NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致,如果不一致,检测设定的多主时间服务器判定条件是否达到,如果是,确定网络中存在多个主时间服务器。
基于上面描述的时钟层数,则本步骤202中,当网络设备作为非主时间服务器时,接收的NTP请求报文可能是同一级或者下一级时钟层数的客户端发送的,也可能是下一级时钟层数的时间服务器发送的。但不管NTP请求报文是客户端还是时间服务器发送的,网络设备作为非主时间服务器都会将本地主时间服务器标识表记录的设备标识携带在NTP应答报文回复给NTP请求报文的发送端。当然,如果本地主时间服务器标识表截至到此时还未记录任何一个设备标识,则只能按照现有NTP应答报文的方式执行,即回复的NTP应答报文不携带设备标识,这里不具体展开描述。
另外,基于上面描述的时钟层数,本步骤202描述的指定时间服务器可以为上级时钟层数的一个或者多个时间服务器。比如,当网络设备为非主时间服务器、且该非主时间服务器处于二级时钟层数时,指定时间服务器可为一级时钟层数的主时间服务器,而当网络设备为非主时间服务器、且该非主时间服务器处于二级时钟层数之下的时钟层数,比如三级时钟层数、甚至更下级时钟层数,则指定时间服务器可为上一级时钟层数的时间服务器(具体是非主时间服务器)。
另外,本步骤202中,设定的NTP请求报文发送周期可根据网络实际情况设置,比如1秒、30秒等,本发明并不具体限定。
至于本步骤202中,如何检测设定的多主时间服务器判定条件是否达到,下文进行了描述,这里暂不赘述。
步骤203,作为客户端,每隔设定的NTP请求报文发送周期向指定时间服务器发送NTP请求报文请求时间同步,接收NTP应答报文,比较NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致,如不一致,检测设定的多主时间服务器判定条件是否达到,是则确定网络中存在多个主时间服务器。
本步骤203中,网络设备作为客户端时设定的NTP请求报文发送周期与网络设备作为非主时间服务器时设定的NTP请求报文发送周期无关,可相同,也可不同。
还有,基于上面描述的时钟层数,本步骤203描述的指定时间服务器可以为上级时钟层数的一个或者多个时间服务器,和/或同级时钟参数的一个或者多个时间服务器。
至于本步骤203中,如何检测设定的多主时间服务器条件是否达到,下文进行了描述,这里暂不赘述。
至此,完成图2所示流程。
下面对图2所示流程的步骤202或者步骤203中的如何检测设定的多主时间服务器条件是否达到进行描述:
作为本发明的一个实施例,本发明中,检测设定的多主时间服务器判定条件是否达到可包括:
识别当前接收到NTP应答报文的时间戳;
将NTP应答报文携带的设备标识记录至临时表;
判断从所述时间戳之后连续N个NTP请求报文发送周期内收到的NTP应答报文是否都携带所述临时表记录的设备标识,N大于1;
如果是,更新本地主时间服务器标识表记录的设备标识为临时表记录的设备标识,清空临时表,确定设定的多主时间服务器判定条件未达到;
如果否,确定设定的多主时间服务器判定条件达到。
这里,当确定设定的多主时间服务器判定条件达到时,也就意味着确定出网络中存在多个主时间服务器,针对这种情况,本发明中,可先将所述临时表记录的设备标识、以及本地主时间服务器标识表记录的设备标识提供给管理平台,以由管理平台(由管理人员控制)从提供的设备标识中选择唯一一个设备标识作为主时间服务器的设备标识且控制其它未被选择的设备标识对应的时间服务器从该选择的设备标识对应的时间服务器同步时间,之后清空临时表。如此,即保证了网络中只有唯一一个主时间服务器。这里,具体地,当将临时表记录的设备标识、以及本地主时间服务器标识表记录的设备标识提供给管理平台后,管理人员可根据网络实际应用从管理平台提供的各个设备标识中选取唯一一个设备标识作为主时间服务器的设备标识,之后,配置其它未被选取的、且管理平台提供的设备标识对应的时间服务器为非主时间服务器,从该选取的设备标识对应的主时间服务器同步时间。
本发明中,当管理平台(由管理人员控制)从提供的设备标识中选择唯一一个设备标识作为主时间服务器的设备标识后,也就表示只有具有该设备标识的时间服务器为唯一一个主时间服务器,剩余的其他时间服务器为非主时间服务器,保证了主时间服务器的唯一性。
通过上面描述可以看出,当比较出NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识不一致时,并不立即做出网络中出现了多主时间服务器的判断,这是因为主时间服务器的设备标识比如MAC地址存在被认为改变的可能性,尽管这种可能性比较小。为防止这种可能性,就执行上述判断操作:判断从当前接收到NTP应答报文的时间戳之后连续N个NTP请求报文发送周期内收到的NTP应答报文是否都携带所述临时表记录的设备标识。作为一种较佳实施例,这里N取值可为8,这是因为RFC5905里规定的NTP时钟算法需要采集8组样本。
至此,完成上面描述的如何检测设定的多主时间服务器判定条件是否达到。
下面描述如何将设备标识携带在NTP应答报文回复给NTP请求报文的发送端:
从NTP原理层面上看,主时间服务器是不需要把主时间服务器的设备标识通告给非主时间服务器或者客户端,因此NTP在定义NTP报文(包括NTP请求报文和NTP应答报文)格式时并没有预留承载设备标识的字段。而本发明为执行多主时间服务器检测,就需要在NTP应答报文中增加一个携带主时间服务器的设备标识的字段,并将该主时间服务器的设备标识通过NTP应答报文扩散到整个网络里。
NTP版本4(v4:version 4)是截止目前最新的版本,RFC5905(Network TimeProtocol Version 4:Protocol and Algorithms Specification)在NTPv4的报文(简称NTPv4报文,包括NTP请求报文和NTP应答报文)中预留了可扩展TLV字段比如图4示出的Extension Field 1(variable)、Extension Field 2(variable)。对于图4示出的可扩展TLV字段,RFC5905又进一步限定了可扩展TLV字段域要满足四字节对齐,不够时则须填充0。图5示出了可扩展TLV字段域的格式。
基于此,本发明中,可通过NTP应答报文中的可扩展TLV字段增加一个携带主时间服务器的设备标识的字段,具体是:在可扩展字段中定义一种如下描述的TLV类型:
T(类型,Type),用于表示NTP应答报文携带设备标识,作为本发明的一个实施例,T可设置为DETECT_MULTI_SOURCE=1,其占用2个字节;
L(长度,Length),用于表示整个TLV类型的长度,占用2个字节;作为本发明的一个实施例,L可设置为12(用于表示整个TLV类型的长度为12个字节);
V(数值,Value),用于表示设备标识,占用6个字节,为保证四字节对齐,还需在该TLV类型中再填充2个字节来保证4字节对齐。图6示出了该新TLV类型的格式图。
通过图6示出了TLV类型,则能够使主时间服务器的设备标识通过NTP应答报文扩散到整个网络里NTP。
至此,完成如何将设备标识携带在NTP应答报文回复给NTP请求报文的发送端。
需要说明的是,在图2所示流程的步骤202或者步骤203中,不管网络设备是非主时间服务器,还是客户端,当其接收到NTP应答报文时,可能此时本地主时间服务器标识表还未记录有任何一个设备标识,这里,当本地主时间服务器标识表未记录有任何一个设备标识,表示本网络设备还未从任何主时间服务器同步时间,肯定不会出现多个主时间服务器都给本网络设备同步时间,即网络中不存在多个主时间服务器,因此,步骤202或者步骤203中就没有必要再执行后续的比较NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致。
基于此,一种较佳的实施方式就是在步骤202或者步骤203比较NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致之前,进一步执行以下步骤:
判断本地主时间服务器标识表是否记录有设备标识,
如果是,再继续执行比较NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致的操作,
如果否,记录NTP应答报文携带的设备标识至本地主时间服务器标识表,将当前接收到NTP应答报文的时间戳作为本地主时间服务器标识表中设备标识的最新时间戳并记录。这里记录时间戳是为了按照NTP检测主时间服务器的可达性,暂不赘述,下文进行了描述。
另外,在图2所示流程的步骤202或者步骤203中,不管网络设备是非主时间服务器,还是客户端,当比较出NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识一致时,可进一步执行以下步骤:
将已记录的本地主时间服务器标识表中设备标识的最新时间戳更新为当前接收到NTP应答报文的时间戳。同样,这里更新时间戳也是为了按照NTP检测主时间服务器的可达性,暂不赘述,下文进行了描述。
还有,为了按照NTP检测主时间服务器的可达性,在上面描述的判断出从所述时间戳之后连续N个NTP请求报文发送周期内收到的NTP应答报文都携带所述临时表记录的设备标识时,进一步将所述时间戳作为本地主时间服务器标识表中更新后的设备标识的最新时间戳并记录;
基于此,本发明中,就可在上述检测设定的多主时间服务器条件是否达到之前,进一步按照NTP检测主时间服务器的可达性,具体为:
计算当前收到NTP应答报文的时间戳与已记录的本地主时间服务器标识表中设备标识的最新时间戳之间的时间差;
如果所述时间差小于或者等于M个设定的NTP请求报文发送周期,M大于1,确定具有本地主时间服务器标识表中设备标识的主时间服务器可达,并继续执行上述检测设定的多主时间服务器条件是否达到的操作,否则,确定具有本地主时间服务器标识表中设备标识的主时间服务器不可达。这里的M按照NTP可取值为8。
以上对本发明提供的方法进行了描述。下面对本发明提供的装置进行描述:
参见图7,图7为本发明提供的装置结构图。该装置应用于网络设备。
当网络设备作为主时间服务器,如图7所示,所述装置包括:请求接收单元,用于接收网络时间协议NTP请求报文;发送单元,用于将所述网络设备的设备标识携带在NTP应答报文中返回至所述NTP请求报文的发送端;
当网络设备作为非主时间服务器,如图7所示,所述装置包括:请求接收单元,用于接收NTP请求报文;发送单元,用于将本地主时间服务器标识表记录的设备标识携带在NTP应答报文中返给发送该NTP请求报文的发送端,以及每隔设定的NTP请求报文发送周期向指定时间服务器发送NTP请求报文请求时间同步;应答接收单元,用于接收NTP应答报文;比较单元,用于比较应答接收单元接收的NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致,若不一致,检测设定的多主时间服务器条件是否达到,是则确定网络中存在多个主时间服务器;
当网络设备作为客户端,如图7所示,所述装置包括:发送单元,用于每隔设定的NTP请求报文发送周期向指定时间服务器发送NTP请求报文请求时间同步,应答接收单元,用于接收NTP应答报文;比较单元,用于比较应答接收单元接收的NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致,若不一致,检测设定的多主时间服务器条件是否达到,是则确定网络中存在多个主时间服务器。
优选地,比较单元在比较NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致之前,进一步包括:
判断本地主时间服务器标识表是否记录有设备标识,
如果是,继续执行比较NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致的操作,
如果否,记录NTP应答报文携带的设备标识至本地主时间服务器标识表,将当前接收到NTP应答报文的时间戳作为本地主时间服务器标识表中设备标识的最新时间戳并记录。
优选地,所述比较单元检测设定的多主时间服务器条件是否达到包括:
识别当前接收到NTP应答报文的时间戳;
将NTP应答报文携带的设备标识记录至临时表;
判断从所述时间戳之后连续N个NTP请求报文发送周期内收到的NTP应答报文是否都携带所述临时表记录的设备标识,N大于1;
如果是,更新本地主时间服务器标识表记录的设备标识为临时表记录的设备标识,将所述时间戳作为本地主时间服务器标识表中更新后的设备标识的最新时间戳并记录,清空临时表,确定设定的多主时间服务器条件条件未达到;
如果否,确定设定的多主时间服务器条件条件达到;
所述比较单元在确定网络中存在多个主时间服务器时进一步将所述临时表记录的设备标识、以及本地主时间服务器标识表记录的设备标识提供给管理平台,以由管理平台从提供的设备标识中选择唯一一个设备标识作为主时间服务器的设备标识且控制其它未被选择的设备标识对应的时间服务器从该选择的设备标识对应的时间服务器同步时间;清空临时表。
优选地,所述比较单元比较出NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识一致时,进一步将已记录的本地主时间服务器标识表中设备标识的最新时间戳更新为当前接收到NTP应答报文的时间戳;
所述比较单元检测设定的多主时间服务器条件是否达到之前,进一步包括:计算当前收到NTP应答报文的时间戳与已记录的本地主时间服务器标识表中设备标识的最新时间戳之间的时间差,如果所述时间差小于或者等于M个设定的NTP请求报文发送周期,M大于1,确定具有本地主时间服务器标识表中设备标识的主时间服务器可达,并继续执行检测设定的多主时间服务器条件是否达到的操作,否则,确定具有本地主时间服务器标识表中设备标识的主时间服务器不可达。
至此,完成本发明提供的装置描述。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (8)
1.一种多主时间服务器检测方法,其特征在于,该方法应用于网络设备,包括;
网络设备作为主时间服务器,接收网络时间协议NTP请求报文,将本设备的设备标识携带在NTP应答报文中返回至所述NTP请求报文的发送端;
网络设备作为非主时间服务器,接收NTP请求报文,将本地主时间服务器标识表记录的设备标识携带在NTP应答报文中返给发送该NTP请求报文的发送端;每隔设定的NTP请求报文发送周期向指定时间服务器发送NTP请求报文请求时间同步,接收NTP应答报文,比较NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致,若不一致,检测设定的多主时间服务器判定条件是否达到,是则确定网络中存在多个主时间服务器;
网络设备作为客户端,每隔设定的NTP请求报文发送周期向指定时间服务器发送NTP请求报文请求时间同步,接收NTP应答报文,比较NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致,如不一致,检测设定的多主时间服务器判定条件是否达到,是则确定网络中存在多个主时间服务器;
所述检测设定的多主时间服务器条件是否达到包括:
识别当前接收到NTP应答报文的时间戳;
将NTP应答报文携带的设备标识记录至临时表;
判断从所述时间戳之后连续N个NTP请求报文发送周期内收到的NTP应答报文是否都携带所述临时表记录的设备标识,N大于1;
如果是,更新本地主时间服务器标识表记录的设备标识为临时表记录的设备标识,将所述时间戳作为本地主时间服务器标识表中更新后的设备标识的最新时间戳并记录,清空临时表,确定设定的多主时间服务器判定条件未达到;
如果否,确定设定的多主时间服务器判定条件达到。
2.根据权利要求1所述的方法,其特征在于,在比较NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致之前,进一步包括:
判断本地主时间服务器标识表是否记录有设备标识,
如果是,继续执行比较NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致的操作,
如果否,记录NTP应答报文携带的设备标识至本地主时间服务器标识表,将当前接收到NTP应答报文的时间戳作为本地主时间服务器标识表中设备标识的最新时间戳并记录。
3.根据权利要求1所述的方法,其特征在于,所述确定网络中存在多个主时间服务器进一步包括:
将所述临时表记录的设备标识、以及本地主时间服务器标识表记录的设备标识提供给管理平台,以由管理平台从提供的设备标识中选择唯一一个设备标识作为主时间服务器的设备标识且控制其它未被选择的设备标识对应的时间服务器从该选择的设备标识对应的时间服务器同步时间;
清空临时表。
4.根据权利要求1或2任一所述的方法,其特征在于,当比较出NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识一致时,进一步包括:将已记录的本地主时间服务器标识表中设备标识的最新时间戳更新为当前接收到NTP应答报文的时间戳;
所述检测设定的多主时间服务器判定条件是否达到之前,进一步包括:
计算当前收到NTP应答报文的时间戳与已记录的本地主时间服务器标识表中设备标识的最新时间戳之间的时间差,如果所述时间差小于或者等于M个设定的NTP请求报文发送周期,M大于1,确定具有本地主时间服务器标识表中设备标识的主时间服务器可达,并继续执行检测设定的多主时间服务器条件是否达到的操作,否则,确定具有本地主时间服务器标识表中设备标识的主时间服务器不可达。
5.根据权利要求1至4任一所述的方法,其特征在于,所述设备标识为MAC地址。
6.一种多主时间服务器检测装置,其特征在于,该装置应用于网络设备,包括;
当网络设备作为主时间服务器,所述装置包括:请求接收单元,用于接收网络时间协议NTP请求报文;发送单元,用于将所述网络设备的设备标识携带在NTP应答报文中返回至所述NTP请求报文的发送端;
当网络设备作为非主时间服务器,所述装置包括:请求接收单元,用于接收NTP请求报文;发送单元,用于将本地主时间服务器标识表记录的设备标识携带在NTP应答报文中返给发送该NTP请求报文的发送端,以及每隔设定的NTP请求报文发送周期向指定时间服务器发送NTP请求报文请求时间同步;应答接收单元,用于接收NTP应答报文;比较单元,用于比较应答接收单元接收的NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致,若不一致,检测设定的多主时间服务器判定条件是否达到,是则确定网络中存在多个主时间服务器;
当网络设备作为客户端,所述装置包括:发送单元,用于每隔设定的NTP请求报文发送周期向指定时间服务器发送NTP请求报文请求时间同步,应答接收单元,用于接收NTP应答报文;比较单元,用于比较应答接收单元接收的NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致,若不一致,检测设定的多主时间服务器判定条件是否达到,是则确定网络中存在多个主时间服务器;
所述比较单元检测设定的多主时间服务器判定条件是否达到包括:
识别当前接收到NTP应答报文的时间戳;
将NTP应答报文携带的设备标识记录至临时表;
判断从所述时间戳之后连续N个NTP请求报文发送周期内收到的NTP应答报文是否都携带所述临时表记录的设备标识,N大于1;
如果是,更新本地主时间服务器标识表记录的设备标识为临时表记录的设备标识,将所述时间戳作为本地主时间服务器标识表中更新后的设备标识的最新时间戳并记录,清空临时表,确定设定的多主时间服务器判定条件未达到;
如果否,确定设定的多主时间服务器判定条件达到;
所述比较单元在确定网络中存在多个主时间服务器时进一步将所述临时表记录的设备标识、以及本地主时间服务器标识表记录的设备标识提供给管理平台,以由管理平台从提供的设备标识中选择唯一一个设备标识作为主时间服务器的设备标识且控制其它未被选择的设备标识对应的时间服务器从该选择的设备标识对应的时间服务器同步时间;清空临时表。
7.根据权利要求6所述的装置,其特征在于,比较单元在比较NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致之前,进一步包括:
判断本地主时间服务器标识表是否记录有设备标识,
如果是,继续执行比较NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识是否一致的操作,
如果否,记录NTP应答报文携带的设备标识至本地主时间服务器标识表,将当前接收到NTP应答报文的时间戳作为本地主时间服务器标识表中设备标识的最新时间戳并记录。
8.根据权利要求6或7所述的装置,其特征在于,所述比较单元比较出NTP应答报文携带的设备标识与本地主时间服务器标识表记录的设备标识一致时,进一步将已记录的本地主时间服务器标识表中设备标识的最新时间戳更新为当前接收到NTP应答报文的时间戳;
所述比较单元检测设定的多主时间服务器判定条件是否达到之前,进一步包括:计算当前收到NTP应答报文的时间戳与已记录的本地主时间服务器标识表中设备标识的最新时间戳之间的时间差,如果所述时间差小于或者等于M个设定的NTP请求报文发送周期,M大于1,确定具有本地主时间服务器标识表中设备标识的主时间服务器可达,并继续执行检测设定的多主时间服务器条件是否达到的操作,否则,确定具有本地主时间服务器标识表中设备标识的主时间服务器不可达。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510054337.5A CN104639399B (zh) | 2015-02-03 | 2015-02-03 | 多主时间服务器检测方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510054337.5A CN104639399B (zh) | 2015-02-03 | 2015-02-03 | 多主时间服务器检测方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104639399A CN104639399A (zh) | 2015-05-20 |
CN104639399B true CN104639399B (zh) | 2018-10-09 |
Family
ID=53217742
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510054337.5A Active CN104639399B (zh) | 2015-02-03 | 2015-02-03 | 多主时间服务器检测方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104639399B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105553588B (zh) * | 2015-09-11 | 2018-11-06 | 宇龙计算机通信科技(深圳)有限公司 | 一种更新时间方法及相关设备 |
CN107071586B (zh) * | 2017-04-06 | 2020-04-24 | 深圳Tcl新技术有限公司 | 电视终端的系统时间设定方法及装置 |
CN112260790B (zh) * | 2020-10-28 | 2021-08-31 | 中标慧安信息技术股份有限公司 | 一种基于ntp协议的时间同步方法及系统 |
CN112838980B (zh) * | 2020-12-30 | 2023-06-13 | 北京奇艺世纪科技有限公司 | 一种消息处理方法、系统、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101771528A (zh) * | 2008-12-31 | 2010-07-07 | 华为技术有限公司 | 实现时钟同步的方法、装置和系统 |
CN102457402A (zh) * | 2010-10-14 | 2012-05-16 | 杭州华三通信技术有限公司 | 一种检测多主用设备冲突的方法和装置 |
CN102739446A (zh) * | 2012-06-27 | 2012-10-17 | 中兴通讯股份有限公司 | 选择网络时间协议服务器的方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
MX2008014768A (es) * | 2006-05-19 | 2009-04-16 | Symmetricom Inc | Servicio de marca de hora de precision con protocolo de hora de red. |
-
2015
- 2015-02-03 CN CN201510054337.5A patent/CN104639399B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101771528A (zh) * | 2008-12-31 | 2010-07-07 | 华为技术有限公司 | 实现时钟同步的方法、装置和系统 |
CN102457402A (zh) * | 2010-10-14 | 2012-05-16 | 杭州华三通信技术有限公司 | 一种检测多主用设备冲突的方法和装置 |
CN102739446A (zh) * | 2012-06-27 | 2012-10-17 | 中兴通讯股份有限公司 | 选择网络时间协议服务器的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104639399A (zh) | 2015-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104639399B (zh) | 多主时间服务器检测方法和装置 | |
EP2378718B1 (en) | Method, node and system for controlling version in distributed system | |
EP1931084B1 (en) | A method for getting the link estimating parameters | |
CN106357362B (zh) | 一种时间同步方法、装置及ptp系统 | |
US20130088994A1 (en) | Method and apparatus for measuring performance of multi-service in tunnel | |
CN106411629B (zh) | 一种用于监控cdn节点的状态的方法和设备 | |
CN109788027A (zh) | 数据同步方法、装置、服务器及计算机存储介质 | |
KR20140147860A (ko) | 동기화 관리 그룹들 | |
CN102202073A (zh) | 一种分布式系统及其数据同步方法 | |
CN108322358B (zh) | 异地多活的分布式消息发送、处理、消费方法及装置 | |
CN103188064A (zh) | 时钟同步方法及装置 | |
JP6555445B1 (ja) | 時刻同期システム、タイムマスタ、管理マスタおよび時刻同期方法 | |
CN105208058A (zh) | 基于web会话共享的信息交互系统 | |
CN104641612A (zh) | 用于精确时间协议(ptp)实体的配置的智能监管 | |
CN110492967A (zh) | 一种时间同步方法、中继设备及装置 | |
CN106301996B (zh) | 一种ptp报文自动测试的方法及装置 | |
CN106789435B (zh) | 一种状态监控方法及其装置、数据中心及多活数据中心 | |
CN103763380B (zh) | 一种同步演示数据的方法及系统 | |
CN102739446B (zh) | 选择网络时间协议服务器的方法和装置 | |
CN105573905B (zh) | 软件兼容性测试方法和系统 | |
US9531530B2 (en) | Faster synchronization time and better master selection based on dynamic accuracy information in a network of IEEE 1588 clocks | |
CN106100910A (zh) | 一种实现掉电告警的方法、装置和系统 | |
JP6326907B2 (ja) | 伝送システム、伝送装置及びクロック同期方法 | |
CN106487852A (zh) | 实现客户端文件同步的方法、装置、终端设备及系统 | |
CN117521039A (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 | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant before: Huasan Communication Technology Co., Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |