一种基于单播的时间同步实现方法、装置及网络设备与流程

文档序号:12375296阅读:309来源:国知局
一种基于单播的时间同步实现方法、装置及网络设备与流程

本发明涉及网络中的时间同步技术领域,尤其涉及一种基于单播的时间同步实现方法、装置及网络设备。



背景技术:

随着PTP(Precision Time Protocol,精确时间同步协议)协议在电信网络中的大规模部署展开,时间同步协议在通讯网络中得到越来越多的重视和广泛的应用,目前运营商的时间同步网络大都以环网存在,并且要求实现时间同步路径备份,封装形式默认为组播,但组播存在洪泛、安全等控制问题。

单播协商机制在IEEE1588v2标准中有着明确定义,规定任意可用端口都可以发送单播请求,任意端口都可以应答单播请求,但对单播下的时间同步组网拓扑却没有描述,标准中只对组播下的时间同步组网拓扑有明确的设计,并定义了BMCA算法来控制组网拓扑。

由于ITU标准推出的G.8265.1标准来定义PTP的频率同步,采用IEEE1588v2单播协商机制,规定单播协商的行为及相应拓扑算法,使得单播能够在包频率恢复网络中得到应用,但是G.8265.1标准定义的网络模型很有限,其定义的模型不适用于环网时间同步网络,在环网中如何使用单播来完成时间网络部署,是一个需要解决的问题。



技术实现要素:

本发明要解决的技术问题是,提供一种基于单播的时间同步实现方法、装置及网络设备,在单播网络中实现时间同步组网拓扑。

本发明采用的技术方案是,所述基于单播的时间同步实现方法,网络中的任一网络设备执行的流程包括:

对所述任一网络设备的各邻居网络设备分别执行如下操作:

向邻居网络设备请求单播时间同步协商;

在协商的过程中,进行端口角色抉择,并与邻居网络设备进行时间同步。

进一步的,向邻居网络设备请求单播时间同步协商,包括:

A1:所述任一网络设备周期性的向邻居网络设备发送时间同步请求;

A2:若该邻居网络设备回复了时间同步信息,则协商成功,重复执行步骤A1;否则协商失败,重复执行步骤A1。进一步的,所述的进行端口角色抉择,包括:在所述任一网络设备的第一精确时间同步协议PTP端口与一邻居网络设备的第二PTP端口相连的情况下,基于BMC(Best Master Clock,最佳主时钟)算法确定出的所述第一PTP端口与第二PTP端口的角色;在任意两个相邻的网络设备之间,由端口的角色代表网络设备的角色;

所述与邻居网络设备进行时间同步,包括:

当所述任一网络设备的角色为master时,基于接收到的邻居网络设备的时间同步请求而回复时间同步信息;

当任一网络设备的角色为非master时,对接收到的邻居网络设备的时间同步请求进行丢弃或拒绝。

进一步的,所述任一网络设备周期性的向邻居网络设备发送时间同步请求,包括:

当任一网络设备的角色为slave或uncalibrated时,周期性的向邻居网络设备请求该邻居网络设备以设定的发送方式回复announce报文、sync报文以及delay response报文;

当任一网络设备的角色为master、passive、pre-master、或listening时,周期性的向邻居网络设备请求该邻居网络设备以设定的发送方式回复announce报文;

所述设定的发送方式的内容包含:保活周期和各类型报文的发送频率。

进一步的,所述任一网络设备执行的流程,还包括:

在协商失败的情况下,以设定的频率向邻居网络设备重新请求单播时间同步协商;所述设定的频率至少大于保活周期对应的频率。

进一步的,所述网络的组网形式包括:环形组网或者链形组网;

当所述网络的组网形式为环形组网时,所述设定的频率大于时间同步过程中的announce报文的发送频率。

本发明还提供一种基于单播的时间同步实现装置,设置于网络中的任一网络设备中,所述装置包括:协商模块和同步模块,针对所述任一网络设备的各邻居网络设备分别执行如下功能:

所述协商模块,用于向邻居网络设备请求单播时间同步协商;

所述同步模块,用于在协商的过程中,进行端口角色抉择,并与邻居网络设备进行时间同步。

进一步的,所述协商模块,包括:

处理模块,用于所述任一网络设备周期性的向邻居网络设备发送时间同步请求;若该邻居网络设备回复了时间同步信息,则协商成功;否则协商失败;

回调模块,用于在协商成功和协商失败时均重新调用处理模块。进一步的,所述同步模块,用于:

在所述任一网络设备的第一精确时间同步协议PTP端口与一邻居网络设备的第二PTP端口相连的情况下,基于最佳主时钟BMC算法确定出的所述第一PTP端口与第二PTP端口的角色;在任意两个相邻的网络设备之间,由端口的角色代表网络设备的角色;

当所述任一网络设备的角色为master时,基于接收到的邻居网络设备的时间同步请求而回复时间同步信息;

当任一网络设备的角色为非master时,对接收到的邻居网络设备的时间同 步请求进行丢弃或拒绝。

本发明还提供一种网络设备,包括上述基于单播的时间同步实现装置。

采用上述技术方案,本发明至少具有下列优点:

本发明所述基于单播的时间同步实现方法、装置及网络设备,与现有技术相比较,本发明根据网络部署的现实要求,提出了单播模式、并通过约束单播请求的间隔来控制报文的互通速度,最后把单播封装接入已经成熟的组播拓扑计算模型,很好解决了环网中的单播部署问题,此方案不单能完成单播环网需求,也同时支持单组播混合应用的网络拓扑需求。

附图说明

图1为本发明第一实施例的基于单播的时间同步实现方法流程图;

图2为本发明第二实施例的基于单播的时间同步实现方法流程图;

图3为本发明第三实施例的基于单播的时间同步实现装置组成结构示意图;

图4为本发明第六实施例环网单播拓扑结构示意图;

图5为本发明第六实施例发生故障时环网单播中的拓扑倒换示意图。

具体实施方式

为更进一步阐述本发明为达成预定目的所采取的技术手段及功效,以下结合附图及较佳实施例,对本发明进行详细说明如后。

本发明第一实施例,一种基于单播的时间同步实现方法,如图1所示,网络中的任一网络设备执行的流程,包括:

对所述任一网络设备的各邻居网络设备分别执行如下操作:

步骤S101,向邻居网络设备请求单播时间同步协商;

具体的,步骤S101包括:

A1:所述任一网络设备周期性的向邻居网络设备发送时间同步请求;

A2:若该邻居网络设备回复了时间同步信息,则协商成功,重复执行步骤A1;否则协商失败,重复执行步骤A1。本领域公知的,只要邻居网络设备回复了时间同步信息,则该邻居网络设备必然同意了该时间同步请求,这里的时间同步信息具体是指announce报文、sync报文、delay response报文等中携带的时间信息。在实际应用中,初始时,网络中的所有网络设备都处于监听listening角色的状态,若超时未收到时间同步信息,则将自身的角色转变为master,因此几乎所有网络设备的角色都变成了master,此时,所述任一网络设备与邻居网络设备互相向对方以master的角色执行:发送时间同步请求以及基于对方的时间同步请求而回复时间同步信息,若对方以master的角色回复了时间同步信息,则协商成功;否则协商失败。现有的单播协商机制规定任意可用端口都可以发送单播时间同步请求,任意可用端口都可以应答单播请求,本发明实施例针对这种当单播协商机制并未明确规定的现状,本实施例规定相邻的网络设备间的端口均可以以master的角色主动发起时间同步协商,并且作为master的端口必须应答对方的请求,从而确定出各端口所代表的角色,

进一步的,

步骤S102,在协商的过程中,进行端口角色抉择,并与邻居网络设备进行时间同步。

具体的,在步骤S102中,所述的进行端口角色抉择,包括:在所述任一网络设备的第一PTP端口与一邻居网络设备的第二PTP端口相连的情况下,基于BMC算法确定出的所述第一PTP端口与第二PTP端口的角色。角色的类型包括:master、passive、pre-master、listening、slave、和uncalibrated等,其中,slave、master、passive为稳态角色,而pre-master、listening、uncalibrated为瞬态角色。为了使下面的描述更加简洁明了,在任意两个相邻的网络设备之间,由端口的角色代表网络设备的角色。

所述与邻居网络设备进行时间同步,包括:

当所述任一网络设备的角色为master时,基于接收到的邻居网络设备的时间同步请求而回复时间同步信息,以供当时该邻居网络设备作为slave角色的情况下基于该时间同步信息进行同步;

当任一网络设备的角色为非master时,对接收到的邻居网络设备的时间同步请求进行丢弃或拒绝。

实际上,在整个PTP的过程中,本发明实施例规定任一网络设备的端口不论是什么角色,都需要不停的周期性的向相应的邻居网络设备发送时间同步请求,请求获得时间同步信息。且master角色的端口均有义务基于邻居网络设备的请求而向其回复时间同步信息,这样有助于采用组播的BMC算法在单播情况下实现规划拓扑,顺利的将应用于组播PTP的BMC算法应用于单播,因为组播没有请求机制,各端口均是根据角色为master时而主动发送时间同步信息,本发明实施例可以使得对外表现上,除了报文单播封装外,其他行为与组播情况基本一致。

进一步的,所述任一网络设备周期性的向邻居网络设备发送时间同步请求,包括:

当任一网络设备的角色为slave或uncalibrated时,周期性的向邻居网络设备请求该邻居网络设备以设定的发送方式回复announce报文、sync报文以及delay response报文;

当任一网络设备的角色为master、passive、pre-master、或listening时,周期性的向邻居网络设备请求该邻居网络设备以设定的发送方式回复announce报文;

所述设定的发送方式中包含:保活周期和各类型报文的发送频率。例如:设定在半小时内每隔5秒发送一次报文,其中,保活周期即为半小时,每隔5秒即为报文的发送频率。

在本实施例中,网络的组网形式包括:环形组网或者链形组网。

本发明第二实施例,一种基于单播的时间同步实现方法,本实施例所述方法与第一实施例大致相同,区别在于,如图2所示,本实施例的所述方法除了包括与第一实施例步骤S101~S102对应的步骤S201~202之外,所述任一网络设备执行的流程还包括以下具体步骤:

步骤S203,在协商失败的情况下,以设定的频率向邻居网络设备重新请求单播时间同步协商;所述设定的频率至少大于保活周期对应的频率。该保活周期为用户预先设定的请求对方邻居网络设备回复时间同步信息的周期性时长。

优选的,当所述网络的组网形式为环形组网时,所述设定的频率大于时间同步过程中的announce报文的发送频率。

本发明第三实施例,与第一实施例对应,本实施例介绍一种基于单播的时间同步实现装置,设置于网络中的任一网络设备中,如图3所示,所述装置包括以下组成部分:协商模块100和同步模块200,针对所述任一网络设备的各邻居网络设备分别执行如下功能:

1)协商模块100,用于向邻居网络设备请求单播时间同步协商;

具体的,协商模块100,包括:

处理模块,用于所述任一网络设备周期性的向邻居网络设备发送时间同步请求;若该邻居网络设备回复了时间同步信息,则协商成功;否则协商失败;

回调模块,用于在协商成功和协商失败时均重新调用处理模块。

在实际应用中,初始时,网络中的所有网络设备都处于监听listening角色的状态,若超时未收到时间同步信息,则将自身的角色转变为master,因此几乎所有网络设备的角色都变成了master,此时,所述任一网络设备通过协商模块100与邻居网络设备互相向对方以master的角色执行:发送时间同步请求以及基于对方的时间同步请求而回复时间同步信息,若对方以master的角色回复了时间同步信息,则协商成功;否则协商失败。

进一步的,所述的进行端口角色抉择,包括:在所述任一网络设备的第一PTP端口与一邻居网络设备的第二PTP端口相连的情况下,基于BMC(Best Master Clock,最佳主时钟)算法确定出的所述第一PTP端口与第二PTP端口的角色;角色的类型包括:master、passive、pre-master、listening、slave、和uncalibrated等。为了使下面的描述更加简洁明了,在任意两个相邻的网络设备之间,由端口的角色代表网络设备的角色。

2)同步模块200,用于在协商的过程中,进行端口角色抉择,并与邻居网络设备进行时间同步。

具体的,同步模块200用于:

当所述任一网络设备的角色为master时,基于接收到的邻居网络设备的时间同步请求而回复时间同步信息,以供当时该邻居网络设备作为slave角色的情况下基于该时间同步信息进行同步;

当任一网络设备的角色为非master时,对接收到的邻居网络设备的时间同步请求进行丢弃或拒绝。

进一步的,同步模块200用于:

当任一网络设备的角色为slave或uncalibrated时,周期性的向邻居网络设备请求该邻居网络设备以设定的发送方式回复announce报文、sync报文以及delay response报文;

当任一网络设备的角色为master、passive、pre-master、或listening时,周期性的向邻居网络设备请求该邻居网络设备以设定的发送方式回复announce报文;

所述设定的发送方式中包含:保活周期和各类型报文的发送频率。

在本实施例中,网络的组网形式包括:环形组网或者链形组网。

本发明第四实施例,与第二实施例对应,介绍一种基于单播的时间同步实现装置,本实施例所述装置与第三实施例大致相同,区别在于,本实施例中的 协商模块100还需完成当协商失败时的如下功能:

协商模块100,还用于,在协商失败的情况下,以设定的频率向邻居网络设备请求单播时间同步协商;所述设定的频率至少大于announce报文的保活周期对应的频率。

优选的,当所述网络的组网形式为环形组网时,所述设定的频率大于时间同步过程中的announce报文的发送频率。

本实施例中之所以设计当协商失败时,任一网络设备通过协商模块100以较高的频率向邻居网络设备请求单播时间同步协商,是为了完成拓扑的响应,这样设计,可以在BMC算法把PTP端口状态切换为master端口时,快速的依请求而发出announce报文,防止由于响应速度慢引起的网络动荡。在单播环网的情况下,所要求的请求频率更高,设定为announce报文的发送频率,这样能够达到更好的快速响应效果。

本发明第五实施例,一种网络设备,可以作为实体装置来理解,包括上述第三实施例或者第四实施例中所述的基于单播的时间同步实现装置。

本发明第六实施例,本实施例是在上述实施例的基础上,以单播环网形式为例,结合附图4~5介绍一个本发明的应用实例。

一、单播协商机制

本发明实施例最关键的就是规定了以下两个内容:

1)在PTP过程中,环网中的任一网络设备的各种角色的端口均需要通过周期性的发送单播请求报文(类似于前面实施例中的时间同步请求)来请求时间同步协商,在协商的过程中,进行端口角色抉择并进行时间同步。

2)PTP的master端口需要接收并应答该单播请求报文,同时需要发出协商成功的announce、sync报文的时间同步信息,其余的端口角色则拒绝或不响应邻居网络设备的该单播请求报文。

在初始时,任一网络设备与其各邻居网络设备均执行如下操作:

在实际应用中,初始时,网络中的所有网络设备都处于监听listening角色的状态,若超时未收到时间同步信息,则将自身的角色转变为master,因此几乎所有网络设备的角色都变成了master,此时,所述任一网络设备与邻居网络设备互相向对方以master的角色执行:请求时间同步信息以及基于对方的请求而回复时间同步信息,若对方以master的角色回复了时间同步信息,则协商成功;否则协商失败。

所述进行端口角色抉择,包括:在所述任一网络设备的第一PTP端口与一邻居网络设备的第二PTP端口相连的情况下,基于BMC算法确定出的所述第一PTP端口与第二PTP端口的角色;角色的类型包括:master、passive、pre-master、listening、slave、和uncalibrated。

在任意两个相邻的网络设备之间,由端口的角色代表网络设备的角色。

二、单播协商间隔控制

在任一网络设备与其各邻居网络设备之间均遵循以下单播协商的间隔控制方式:

协商成功时,按照用户配置的保活周期向邻居网络设备周期性的请求时间同步信息;协商失败时,需要维持在较高频率向邻居网络设备周期性的请求时间同步信息,该较高频率可以是announce报文的发送频率。

对比G.8265.1的设计,其协商失败时,对失败的master协商速率可以降至60s一次,本实施例在环网中需要维持一个高频请求,是为了完成拓扑的快速响应,这样设计,可以在拓扑算法把PTP端口状态切换为master端口时,快速的发出announce报文,使得对外表现上,除了报文单播封装外,其他行为与组播情况基本一致,这样便于采用组播的拓扑算法来规划拓扑,防止由于响应速度引起网络动荡。

三、具体组网部署说明

如图4所示,先通过配置网络设备的协商目的地址,这样每个PTP端口都会向外发送单播请求报文,由于组播的拓扑算法(BMC算法)会在初始时把端口超时为master端口,所以会相互协商成功,并发送announce报文,然后按照算法生成拓扑,此时网络中,各个端口状态都会发送单播请求报文,但各自作用不同。slave端口是为了维持从master获取时间;passive端口是为了维持对端master端口发送announce报文,使本端口保持在passive状态。master端口发出请求报文会被对端拒绝,其发送的报文起了监控网络拓扑作用,当网络发送变化时,能快速响应。

总结起来,本发明实施例针对每台网络设备均需执行如下操作:

步骤A:通过在每个PTP端口上配置相邻端口的IP地址完成邻居感知;

步骤B:开启环网单播模式;

步骤C:PTP端口向配置的IP地址发起单播时间同步请求报文;

步骤D:单播时间同步请求报文的接收端:若是master端口则接受并应答请求,其他角色端口则拒绝或不响应请求。

步骤E:在master端口协商成功发出announce报文后,就可以参考组播模式完成拓扑计算。具体如图5所示,当设备E与F间发送故障时,此时E设备无法收到F给的时间,其时间信息发生了降质,此时D设备就会把passive端口变为master端口,进而响应设备E的单播请求,设备E检测到D设备后,改成跟踪D的时间,从而完成了拓扑倒换。

本发明实施例所述基于单播的时间同步实现方法、装置及网络设备,与现有技术相比较,本发明根据网络部署的现实要求,提出了单播模式、并通过约束单播请求的间隔来控制报文的互通速度,最后把单播封装接入已经成熟的组播拓扑计算模型,很好解决了环网中的单播部署问题,此方案不单能完成单播环网需求,也同时支持单组播混合应用的网络拓扑需求。

通过具体实施方式的说明,应当可对本发明为达成预定目的所采取的技术手段及功效得以更加深入且具体的了解,然而所附图示仅是提供参考与说明之 用,并非用来对本发明加以限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1