一种1588时钟域内确定主时钟的方法和时钟节点的制作方法

文档序号:7748017阅读:190来源:国知局
专利名称:一种1588时钟域内确定主时钟的方法和时钟节点的制作方法
技术领域
本发明涉及通信技术领域,特别涉及一种1588时钟域内确定主时钟的方法和时钟节点。
背景技术
1588是由IEEE定义的,全称是网络测量和控制系统的精密时钟同步协议标准, 简称精确时间协议(Precision Time Protocol,PTP)。整个1588ν2网络中,所有时钟都会按照主从(master-slave)层次关系组织在一起,系统的参考时间为最高层次时钟 (Grandmaster Clock)。整个同步的过程是通过交换1588v2报文来完成的。从时钟通过 1588v2报文中携带的时间戳信息计算与主时钟之间的偏移和延时,据此调整本地时间达到与主时钟的同步。一个物理上的时间同步网络可以分成逻辑上的多个时钟域。每个时钟域都有一个同步时间,域内设备都同步到该时间;不同时钟域有各自的时间,相互之间独立。在一个时钟域中的时钟,通过互相发送公告(announce)报文来确定主从关系。当对端时钟的announce报文发送间隔和本时钟发送间隔不一致时,可能造成无法跟踪到正确的主时钟,造成主时钟节点选举错误。目前协议中描述和一般厂商的实现方式是要求在一个时钟域内各个时钟的 announce报文发送间隔和超时系数设置为一致,来保证时钟网络中建立正确的主从关系, 即正确选择主时钟。在确定主时钟的解决方式中,现有解决方式增加了对配置的要求,降低了使用的灵活性。

发明内容
有鉴于此,本发明提供一种1588时钟域内确定主时钟的方法和时钟节点,本发明都能够正确确定主时钟,且对配置要求较低,提高了使用的灵活性。为解决上述技术问题,本发明的技术方案是这样实现的一种1588时钟节点域内确定主时钟的方法,该方法包括本地时钟节点收到同一域内其他时钟节点发来的公告报文并保存,预设时间到时,本地时钟节点将接收的有效公告报文携带的时钟质量与自身的时钟质量进行比较,将时钟质量最优的时钟确定为主时钟;本地时钟节点将接收的无效公告报文继续保存,当所述无效公告报文有效时,将该有效公告报文携带的时钟质量与无效公告报文有效时域内当前主时钟的时钟质量进行比较,如果该有效公告报文携带的时钟质量优,则将发送该有效公告报文的时钟节点的时钟作为主时钟;否则,继续维持当前主时钟为主时钟。所述方法进一步包括将收到的无效公告报文携带的时钟质量同当前主时钟的时钟质量进行比较,如果
4所述无效公告报文携带的时钟质量优,则执行所述将接收的无效公告报文继续保存及后续步骤;否则,将保存的所述无效公告报文删除。所述时钟节点保存同一域内其他时钟节点发来的公告报文的方法为将收到的其他时钟节点发来的公告报文分别保存,并分别记录不同公告报文的数目;所述无效公告报文为公告报文数目小于预设值的公告报文;所述有效公告报文为公告报文数目大于或等于预设值的公告报文。所述方法进一步包括所述本地时钟节点收到同一域内其他时钟发送的公告报文间隔不一致。所述方法进一步包括本地时钟节点收到新加入所述域的时钟节点发来的公告报文时;或者,收到所述域内其他时钟节点发来的携带的时钟质量变化的公告报文时;或者,当确定主时钟后达到自身的时钟的公告报文超时时间未收到主时钟发来的公告报文时;本地时钟节点将收到的各有效公告报文携带的时钟质量与自身的时钟质量进行比较,将时钟质量最优的时钟确定为当前主时钟。所述方法进一步包括本地时钟节点根据主时钟的公告报文发送间隔确定自身的时钟的公告报文超时时间;所述公告报文超时时间为本地时钟节点自身的时钟的超时系数与当前主时钟的公告报文发送间隔的乘积。一种1588时钟节点域内确定主时钟的时钟节点,该时钟节点包括接收单元、存储单元和确定单元;所述接收单元,与所述存储单元和所述确定单元相连,用于接收与自身所在时钟节点的同一域内其他时钟节点发来的公告报文;所述存储单元,用于保存所述接收单元接收的同一域内其他时钟节点发来的公告报文;所述确定单元,用于预设时间到时,将所述接收单元接收的有效公告报文携带的时钟质量与自身所在时钟节点的时钟质量进行比较,将时钟质量最优的时钟确定为主时钟;将所述接收单元接收的无效公告报文继续保存,当所述无效公告报文有效时,将该有效公告报文携带的时钟质量与无效公告报文有效时域内当前主时钟的时钟质量进行比较,如果该有效公告报文携带的时钟质量优,则将发送该有效公告报文的时钟节点的时钟作为主时钟;否则,继续维持当前主时钟为主时钟。其中,所述确定单元,与所述存储单元相连,进一步用于将收到的无效公告报文携带的时钟质量同当前主时钟的时钟质量进行比较;所述存储单元,用于如果所述无效公告报文携带的时钟质量优,则将接收的无效公告报文继续保存;否则,将保存的所述无效公告报文删除。所述存储单元,用于将所述接收单元收到的其他时钟节点发来的公告报文分别保存,并分别记录不同公告报文的数目;所述确定单元,进一步用于将公告报文数目小于预设值的公告报文确定为无效公告报文;将公告报文数目大于或等于预设值的公告报文确定为有效公告报文。
所述接收单元,收到同一域内其他时钟发送的公告报文间隔不一致;所述接收单元,与所述确定单元相连,进一步用于接收到新加入所述域的时钟节点发来的公告报文;或者,进一步用于接收到所述域内其他时钟节点发来的携带的时钟质量变化的公告报文;或者,进一步用于当确定主时钟后达到自身的时钟的公告报文超时时间未收到主时钟发来的公告报文;所述确定单元,进一步用于将收到的各有效公告报文携带的时钟质量与自身所在的时钟节点的时钟质量进行比较,将时钟质量最优的时钟确定为当前主时钟。所述确定单元,进一步用于根据主时钟的公告报文发送间隔确定自身的时钟的公告报文超时时间;所述公告报文超时时间为本地时钟节点自身的时钟的超时系数与当前主时钟的公告报文发送间隔的乘积。综上所述,本发明中,时钟节点接收同一域内其他时钟节点发来的公告报文,预设时间到时,将收到的有效公告报文携带的时钟质量与本地时钟节点的时钟质量进行比较确定主时钟;将收到的无效公告报文继续保存,直到有效时参与主时钟的确定。本发明都能够正确确定主时钟,且对配置要求较低,提高了使用的灵活性。


图1为本发明1588时钟域内确定主时钟的方法流程图;图2为本发明具体实施例1588时钟域内确定主时钟的方法流程图;图3为本发明1588时钟域内确定主时钟的时钟结构图。
具体实施例方式为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明所述方案作进一步地详细说明。多个时钟节点连接组成拓扑,属于同一个域时,各时钟节点如果不经过特殊配置, 其公告报文发送间隔不一致,各时钟节点通过互相发送公告报文建立主从关系,即选出主时钟,其他时钟节点为普通时钟。现有实现一般将各时钟配置的公告报文发送间隔配置为一致,而本发明不进行该配置,正确确定主时钟。确定主时钟后,普通时钟跟随主时钟。由于每个时钟节点均会收到其他时钟节点发来的公告报文,选择主时钟过程一致,因此在下文描述时均以一个时钟节点的处理过程为例来说明整个域内主时钟的确定。参见图1,图1为本发明1588时钟域内确定主时钟的方法流程图。具体步骤为步骤101,本地时钟节点收到同一域内其他时钟节点发来的公告报文并保存。步骤102,预设时间到时,本地时钟节点将接收的有效公告报文携带的时钟质量与自身的时钟质量进行比较,将时钟质量最优的时钟确定为主时钟。协议规定在预设时间内收到足够数目的公告报文,才认为此公告报文代表的时钟是有效的,才能参与主时钟选举,预设时间采用选举定时器来实现,进行主时钟选择的条件发生时触发选举定时器开始计时。本地时钟节点收到同一域内其他时钟发送的公告报文间隔不一致。本步骤中,如果确定的主时钟为本地时钟节点的时钟,则本地时钟节点的时钟公告报文超时时间不变,如果确定的主时钟为其他时钟节点的时钟,则用确定的主时钟的公告报文发送间隔确定本地时钟的公告报文超时时间。具体确定方法为本地时钟节点的时钟公告报文超时时间为自身的时钟超时系数与确定的主时钟的公告报文发送间隔的乘积,其中自身的时钟超时系数为使用者根据实际使用情况进行预先配置的。公告报文发送间隔报文通过定时器机制,循环定期发送,连续两个报文间的发送时间间隔,称为发送间隔。各时钟的公告报文超时时间是判定是否超时的临界值,用来触发重新选择主时钟的,当本地时钟在自身的时钟公告报文超时时间未收到主时钟发来的公告报文,即触发本地时钟进行主时钟的重新选择。步骤103,本地时钟节点将接收的无效公告报文继续保存,当该无效公告报文有效时,将该有效公告报文携带的时钟质量与无效公告报文有效时域内当前主时钟的时钟质量进行比较,如果该有效公告报文携带的时钟质量优,则发送该有效公告报文的时钟节点的时钟作为主时钟;否则,继续维持当前主时钟为主时钟。预设时间到时,本地时钟收到其他各时钟节点发来的报文都有一定数目,在比较各时钟的时钟质量之前,先要判断其公告报文是否有效,如果收到的某个时钟节点发来的公告报文的数目达到预设值,则确定该报文为有效公告报文;否则确定为无效公告报文。由于收到的公告报文数目未达到预设值的无效公告报文,将各时钟发来的无效公告报文携带的时钟质量分别与当前主时钟的时钟质量进行比较,如果当前主时钟的时钟质量优,则删除保存的无效公告报文;否则,继续保存该无效公告报文。下面参见附图,通过具体实施例来详细说明1588时钟域内确定主时钟的方法。参见图2,图2为本发明具体实施例中1588时钟域内确定主时钟的方法流程图。 具体步骤为步骤201,本地时钟节点收到其他时钟节点发来的公告报文,并按照时钟ID的不同将收到的公告报文分别保存。本步骤中,对不同报文的分别保存为收到的某个时钟节点发来的第一条公告报文,进行保存并记录收到该公告报文的数目为1。当再收到该公告报文时将该公告报文的公告数目加1,并以此类推。也可以每条公告报文都保存,需要确定某个时钟节点发来的公告报文是否有效时,再统计收到该时钟节点发来的公告报文的数目。步骤202,预设时间到时。本步骤中预设时间到时,执行步骤203。如果未到预设时间,本地时钟节点继续接收其他时钟节点发来的公告报文,直到预设时间到时,执行步骤203。本步骤中的预设时间采用选举定时器来实现,该预设时间可以根据实际需要设置,也可以用如下方式计算本地时钟节点的时钟的公告报文发送间隔与本地时钟节点的选举系数的乘积作为本地时钟节点选举定时器的定时时间。选举系数对于参与时钟选举的外部时钟,本地时钟必须收到其一定数目的公告报文,才认为此公告记录有效,这个数目称为选举系数。其中本地时钟的选举系数使用者可以根据具体需要进行配置,用来确定本地时钟节点选举定时器的定时时间。步骤203,判断其他时钟节点发来的各公告报文中是否存在无效公告报文,如果是,执行步骤204 ;否则,执行步骤207。本步骤中,判断某个时钟节点发来的公告报文是否有效,即判断在一定时间内收到的该时钟节点发来的公告报文的数目是否达到预设值,达到即确定该公告报文有效,可以参与主时钟的选择,否则确定为无效。步骤204,判断无效的公告报文携带的时钟质量是否优于当前主时钟的时钟质量, 如果是,执行步骤206 ;否则,执行步骤205。本步骤中的公告报文携带发来该公告报文的时钟节点的时钟质量,时钟质量可以包括下述参数之一或任意项组合优先级1、时钟等级、时钟精度、偏移值、优先级2和时钟 ID。各参数具体如何比较在下文进行详细描述。步骤205,本地时钟节点将保存的该无效公告报文删除。执行步骤209。本步骤中如果保存了该无效公告报文的数目,也可只将该无效公告报文记录的数目删除。如果再收到该无效公告报文,不再进行时钟质量比较,不再保存该无效公告报文, 也不增加该无效公告报文记录的数目。步骤206,本地时钟节点接收到该无效公告报文继续保存。执行步骤209。本步骤中,如果再收到该无效公告报文,对该无效的公告报文继续进行保存,或者增加收到该公告报文的数目。直到收到该公告报文数目达到预设值,成为有效公告报文时, 参与主时钟的确定。具体确定方法为将该有效公告报文携带的时钟质量与当前主时钟的时钟质量相比较,确定新的主时钟。如果当前主时钟的时钟质量优,则维持该主时钟为当前主时钟;否则,将发来的无效成为有效的公告报文的时钟节点的时钟作为当前主时钟。如果该公告报文成为有效公告报文时,本时钟恰好在重新选择主时钟,此时该有效公告报文参与当前主时钟的选择。步骤207,本地时钟节点将收到的有效公告报文携带的时钟质量同自身的时钟质量进行比较。步骤208,如果本地时钟节点的时钟质量最优,则将本时钟作为主时钟;如果接收到的有效报文携带的时钟质量中存在优于本时钟的时钟节点质量,则接收的有效报文携带的时钟质量中时钟质量最高的时钟作为主时钟,本时钟作为普通时钟。步骤209,本次公告报文处理结束。如果域内时钟特性发生变化,本地时钟节点收到其他时钟节点发来的公告报文携带的时钟质量有变化时,重新进行主时钟的选择。如果有新的时钟节点加入该域,本地时钟节点收到新加入该域的时钟节点发来的公告报文成为有效公告报文时,重新进行主时钟的选择。如果本地时钟节点的时钟公告报文超时时间到时,本地时钟节点将重新选择主时钟。重新选择主时钟时,本地时钟节点将收到的各有效公告报文携带的时钟质量与自身的时钟质量进行比较,将时钟质量最优的时钟确定为当前主时钟。在主时钟的选举过程中,多个时钟节点的时钟质量进行比较,先两两比较,再将时钟质量优的进行两两比较,直到选择出时钟质量最优的。由于每个时钟的ID是不一致的, 因此最终能够选择出时钟质量最优的时钟。比较两个时钟的时钟质量优劣的方法为,按照时钟质量从高到低的顺序比较两个时钟的如下参数1、比较两个时钟的优先级1,优先级1高的时钟质量优。2、比较两个时钟的时钟等级,时钟等级高的时钟质量优。3、比较两个时钟的时钟精度,时钟精度高的时钟质量优。
4、比较两个时钟的偏移值,偏移值小的时钟质量优。5、比较两个时钟的优先级2,优先级2高的时钟质量优。6、比较两个时钟的时钟ID,时钟ID小的时钟质量优。时钟优先级1和优先级2为使用者根据实际的组网时间特性来进行配置的,时钟优先级1是判断时钟质量优劣的首要依据,其值设置越小,表示时间的质量越好,该时钟的时钟质量越优;时钟优先级2是在时钟优先级1、时钟等级、时钟精度和时钟偏移值都相同的情况下,其值设置越小,表示时间的质量越好,该时钟的时钟质量越优。时钟的时钟质量比较过程及参数同现有技术一致,这里不再赘述,基于上述同样的发明构思,本发明还提出了一种1588时钟域内确定主时钟的时钟节点,该时钟节点包括接收单元301、存储单元302和确定单元303。接收单元301,与存储单元302和确定单元303相连,用于接收与自身所在时钟节点同一域内其他时钟节点发来的公告报文。存储单元302,用于保存接收单元303接收的同一域内其他时钟节点发来的公告报文。确定单元303,用于预设时间到时,将接收单元301接收的有效公告报文携带的时钟质量与自身所在时钟节点的时钟质量进行比较,将时钟质量最优的时钟确定为主时钟; 将接收单元301接收的无效公告报文继续保存,当该无效公告报文有效时,将该有效公告报文携带的时钟质量与无效公告报文有效时域内当前主时钟的时钟质量进行比较,如果该有效公告报文携带的时钟质量优,则发送该有效公告报文的时钟节点的时钟作为主时钟; 否则,继续维持当前主时钟为主时钟。较佳地,确定单元303,与存储单元302相连,进一步用于将收到的无效公告报文携带的时钟质量同当前主时钟的时钟质量进行比较。存储单元302,用于如果该无效公告报文携带的时钟质量优,则将接收的无效公告报文继续保存;否则,将保存的该无效公告报文删除。较佳地,存储单元302,用于将接收单元301收到的其他时钟节点发来的公告报文分别保存,并分别记录不同公告报文的数目。确定单元303,进一步用于将公告报文数目小于预设值的公告报文确定为无效公告报文;将公告报文数目大于或等于预设值的公告报文确定为有效公告报文。较佳地,接收单元301,收到同一域内其他时钟发送的公告报文间隔不一致。确定单元303,进一步用于确定自身所在时钟节点的时钟的公告报文超时时间为自身所在时钟节点的时钟的超时系数与确定的主时钟的公告报文发送间隔的乘积。较佳地,接收单元301,与确定单元303相连,进一步用于接收到新加入该域的时钟节点发来的公告报文;或者,进一步用于接收到该域内其他时钟节点发来的携带的时钟质量变化的公告报文;或者,进一步用于当确定主时钟后达到自身的时钟的公告报文超时时间未收到主时钟发来的公告报文。
确定单元302,进一步用于将收到的各有效公告报文携带的时钟质量与自身所在的时钟节点的时钟质量进行比较,将时钟质量最优的时钟确定为当前主时钟。综上所述,本发明在选择主时钟时,对于无效公告报文不是直接丢弃,而是比较其与当前主时钟节点的时钟质量,如果其时钟质量优,则继续接收保存该无效报文,直到一定时间后,收到足够多的该公告报文,成为有效的公告报文,再参与主时钟的选择,这样不会因为主时钟的公告报文发送间隔较长,收到的公告报文较少,而被丢弃,没能够选择正确的主时钟。因此,无论域内各时钟节点发送armoimce报文间隔是否一致,本发明都能够正确确定主时钟,且对配置要求较低,提高了使用的灵活性。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种1588时钟域内确定主时钟的方法,其特征在于,所述方法包括本地时钟节点收到同一域内其他时钟节点发来的公告报文并保存,预设时间到时,本地时钟节点将接收的有效公告报文携带的时钟质量与自身的时钟质量进行比较,将时钟质量最优的时钟确定为主时钟;本地时钟节点将接收的无效公告报文继续保存,当所述无效公告报文有效时,将该有效公告报文携带的时钟质量与无效公告报文有效时域内当前主时钟的时钟质量进行比较, 如果该有效公告报文携带的时钟质量优,则将发送该有效公告报文的时钟节点的时钟作为主时钟;否则,继续维持当前主时钟为主时钟。
2.根据权利要求1所述的方法,其特征在于,本地时钟节点将接收的无效公告报文继续保存之前,所述方法进一步包括将收到的无效公告报文携带的时钟质量同当前主时钟的时钟质量进行比较,如果所述无效公告报文携带的时钟质量优,则执行所述将接收的无效公告报文继续保存及后续步骤;否则,将保存的所述无效公告报文删除。
3.根据权利要求1或2所述的方法,其特征在于,所述时钟节点保存同一域内其他时钟节点发来的公告报文的方法为将收到的其他时钟节点发来的公告报文分别保存,并分别记录不同公告报文的数目;所述无效公告报文为公告报文数目小于预设值的公告报文;所述有效公告报文为公告报文数目大于或等于预设值的公告报文。
4.根据权利要求1或2所述的方法,其特征在于,所述方法进一步包括所述本地时钟节点收到同一域内其他时钟发送的公告报文间隔不一致。
5.根据权利要求4所述的方法,其特征在于,所述方法进一步包括本地时钟节点收到新加入所述域的时钟节点发来的公告报文时;或者,收到所述域内其他时钟节点发来的携带的时钟质量变化的公告报文时;或者,当确定主时钟后达到自身的时钟的公告报文超时时间未收到主时钟发来的公告报文时;本地时钟节点将收到的各有效公告报文携带的时钟质量与自身的时钟质量进行比较, 将时钟质量最优的时钟确定为当前主时钟。
6.根据权利要求5所述的方法,其特征在于,本地时钟节点根据主时钟的公告报文发送间隔确定自身的时钟的公告报文超时时间;所述公告报文超时时间为本地时钟节点自身的时钟的超时系数与当前主时钟的公告报文发送间隔的乘积。
7.—种1588时钟域内确定主时钟的时钟节点,其特征在于,所述时钟节点包括接收单元、存储单元和确定单元;所述接收单元,与所述存储单元和所述确定单元相连,用于接收与自身所在时钟节点的同一域内其他时钟节点发来的公告报文;所述存储单元,用于保存所述接收单元接收的同一域内其他时钟节点发来的公告报文;所述确定单元,用于预设时间到时,将所述接收单元接收的有效公告报文携带的时钟质量与自身所在时钟节点的时钟质量进行比较,将时钟质量最优的时钟确定为主时钟;将所述接收单元接收的无效公告报文继续保存,当所述无效公告报文有效时,将该有效公告报文携带的时钟质量与无效公告报文有效时域内当前主时钟的时钟质量进行比较,如果该有效公告报文携带的时钟质量优,则将发送该有效公告报文的时钟节点的时钟作为主时钟;否则,继续维持当前主时钟为主时钟。
8.根据权利要求7所述的时钟节点,其特征在于,所述确定单元,与所述存储单元相连,进一步用于将收到的无效公告报文携带的时钟质量同当前主时钟的时钟质量进行比较;所述存储单元,用于如果所述无效公告报文携带的时钟质量优,则将接收的无效公告报文继续保存;否则,将保存的所述无效公告报文删除。
9.根据权利要求7或8所述的时钟节点,其特征在于,所述存储单元,用于将所述接收单元收到的其他时钟节点发来的公告报文分别保存, 并分别记录不同公告报文的数目;所述确定单元,进一步用于将公告报文数目小于预设值的公告报文确定为无效公告报文;将公告报文数目大于或等于预设值的公告报文确定为有效公告报文。
10.根据权利要求7或8所述的时钟节点,其特征在于,所述接收单元,收到同一域内其他时钟发送的公告报文间隔不一致。
11.根据权利要求10所述的时钟节点,其特征在于,所述接收单元,与所述确定单元相连,进一步用于接收到新加入所述域的时钟节点发来的公告报文;或者,进一步用于接收到所述域内其他时钟节点发来的携带的时钟质量变化的公告报文;或者,进一步用于当确定主时钟后达到自身的时钟的公告报文超时时间未收到主时钟发来的公告报文;所述确定单元,进一步用于将收到的各有效公告报文携带的时钟质量与自身所在的时钟节点的时钟质量进行比较,将时钟质量最优的时钟确定为当前主时钟。
12.根据权利要求11所述的时钟节点,其特征在于,所述确定单元,进一步用于根据主时钟的公告报文发送间隔确定自身的时钟的公告报文超时时间;所述公告报文超时时间为本地时钟节点自身的时钟的超时系数与当前主时钟的公告报文发送间隔的乘积。
全文摘要
本发明公开了一种1588时钟域内确定主时钟的方法,该方法包括本地时钟节点收到同一域内其他时钟节点发来的公告报文并保存,预设时间到时,将接收的有效公告报文携带的时钟质量与自身的时钟质量进行比较,将时钟质量最优的时钟确定为主时钟;将接收的无效公告报文继续保存,当该无效公告报文有效时,将该有效公告报文携带的时钟质量与无效公告报文有效时域内当前主时钟的时钟质量进行比较,重新确定主时钟。基于同样的发明构思,本发明还提出一种时钟节点,本发明都能够正确确定主时钟,且对配置要求较低,提高了使用的灵活性。
文档编号H04L7/00GK102263631SQ201110228319
公开日2011年11月30日 申请日期2011年8月10日 优先权日2011年8月10日
发明者闻冠 申请人:瑞斯康达科技发展股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1