一种实现交替BMC的方法及装置与流程

文档序号:12375300阅读:290来源:国知局
一种实现交替BMC的方法及装置与流程

本发明涉及精确时间同步技术,尤指一种实现交替BMC的方法及装置。



背景技术:

随着精确时间同步协议(PTP,Precision Time Protocol)在电信网络中的大规模部署,时间同步协议在通讯网络中得到了越来越多的重视和广泛应用。以1588v2协议为基础,国际电信联盟(ITU,International Telecommunication Union)标准组也在定制适应电信网络的时间标准,G.8275.1协议就是ITU组织定义的时间同步的一个重要标准。

在G.8275.1协议中,定义了新的最佳主时钟(BMC,Best Master Clock)算法即交替(Alternate)BMC,用于应用在电信网络中。Alternate BMC算法与1588v2协议中定义的标准BMC算法相比,调整了数据集比较算法的规则;在数据集比较算法中加入了本地优先权(Localpriority)属性;在状态选择算法中加入了用于控制时间输入的非从时钟(noslave)属性,也就是说,非从时钟属性的端口不能接入时间。无疑,这些改变使得时钟网络拓扑按照时钟优劣来展开,更加合理,同时由于加入了Localpriority及noslave元素,大大加强了人工干预网络拓扑的能力。

但是,同时也带来了新的问题:由于Localpriority属性改变了原来标准BMC算法的最小路径选择规则,把人工配置的本地优先级加在最小路径选择前面,使得拓扑不是按照最小路径形成的,这样配置不当就会直接配置成环路,或者在环境变动时,容易引发环路;而通过noslave属性,人为调整了时钟端口输入规则,在环境变动时容易引发环路。因此,加入的Localpriority及noslave元素在环网中应用会带来潜在的时钟环路风险。而现在成型的时钟网络大多是以环网部署为主,为了解决时钟环路风险,用户在配置时,必须要仔细考虑及分析组网,考虑组网可行性及给出具体每个设备详细的组网配置指定,不象原来BMC算法只要配置2个输入节点即可,其他设备默认配置, 这样,无疑使得在部署时增加了运维成本。



技术实现要素:

为了解决上述技术问题,本发明提供一种实现交替BMC的方法及装置,能够降低时钟环路的风险。

为了达到本发明目的,本发明提供了一种实现交替最佳主时钟BMC的方法,包括:

设置环上与环外存在时钟通信的节点为环网时间节点,并配置环网时间节点的本地优先权Localpriority属性;其中,Localpriority属性包括:

对于用于接入时钟的环网时间输入节点:配置其输入端口的Localpriority优于其环上端口的Localpriority;

对于用于向外输出时钟的环网时间输出节点:配置其输出端口的Localpriority劣于其环上端口的Localpriority;

对于时间存在双向传递的环网双向时间节点:配置输出端口的Localpriority等于其环上端口的Localpriority。

可选地,所述环网时间节点决定进入从时钟slave状态后,该方法还包括:

所述环网时间节点在预先设置的进入slave状态的等待时间内广播自身的设备信息。

可选地,所述等待时间默认为通告Announce报文间隔时间与距离祖父时钟GM的跳数相乘得到的积值;

或者,为预先配置的值。

可选地,所述广播的设备信息为作为GM的环网时间节点的时间信息。

可选地,当超过所述等待时间时,还包括:所述环网时间节点的状态切换到正常slave状态,再按照标准协议向外通告真正GM的信息。

可选地,该方法之前还包括:判断出节点为所述环上与环外存在时钟通信的所述环网时间节点。

可选地,所述节点存在非从时钟noslave端口;该方法还包括:

包括所述环网时间节点的所有节点按照预先设置的状态选择策略选择最佳的时间源Ebest并确定所有端口状态。

可选地,所述状态选择策略包括:

所述节点遍历所有非noslave属性的时间端口,按照数据集比较算法选择出最好的Erbest作为所述节点的Ebest。

可选地,所述确定所有端口状态包括:

当所述节点的本地时钟D0的clockclass数值在1到127之间时,如果所述noslave端口的Erbest优于本地时钟D0,则所述节点的noslave端口进入被动passive状态,否则,进入主master状态;

当所述节点的本地时钟D0的clockclass数值不在1到127之间时,如果所述noslave端口的Erbest优于本地时钟D0,且同时优于所述节点的Ebest,则所述节点的noslave端口进入passive状态,否则,进入master状态。

所述非noslave端口按照标准算法规则确定端口状态。

本发明还提供了一种实现交替BMC的装置,至少包括判断单元、配置单元;其中,

判断单元,用于判断出自身所在节点为环上与环外存在时钟通信的环网时间节点;

配置单元,用于配置环网时间节点的Localpriority属性为:对于环网时间输入节点:配置其输入端口的Localpriority优于其环上端口的Localpriority;对于环网时间输出节点:配置其输出端口的Localpriority劣于其环上端口的Localpriority;对于环网双向时间节点:配置输出端口的Localpriority等于其环上端口的Localpriority。

可选地,还包括第一处理单元,用于自身所在的环网时间节点决定进入slave状态后,在预先设置的进入slave状态的等待时间内广播自身的设备信息。

可选地,所述第一处理单元还用于:当超过所述等待时间时,将自身所在环网时间节点的状态切换到正常slave状态,再按照标准协议向外通告真正GM的信息。

可选地,所述判断单元还用于:判断出自身所在节点存在noslave端口;

所述装置还包括第二处理单元,用于按照预先设置的状态选择策略选择Ebest并确定所有端口状态。

可选地,所述第二处理单元具体用于:

自身所在节点遍历所有非noslave属性的时间端口,按照数据集比较算法选择出最好的Erbest作为该节点的Ebest;

当自身所在节点的本地时钟D0的clockclass数值在1到127之间时,如果所述noslave端口的Erbest优于本地时钟D0,则自身所在节点的noslave端口进入passive状态,否则,进入master状态;

当自身所在节点的本地时钟D0的clockclass数值不在1到127之间时,如果所述noslave端口的Erbest优于本地时钟D0,且同时优于自身所在节点的Ebest,则自身所在节点的noslave端口进入passive状态,否则,进入master状态;

自身所在节点的非noslave端口按照标准算法规则确定端口状态。

可选地,所述判断单元还用于:判断出自身所在节点是环网时间节点;相应地,

所述装置还包括第三处理单元,用于按照标准协议的算法流程实现slave状态切换。

与现有技术相比,本申请技术方案包括设置环上与环外存在时钟通信的节点为环网时间节点,并配置环网时间节点的Localpriority属性;其中,Localpriority属性包括:对于环网时间输入节点:配置其输入端口的Localpriority优于其环上端口的Localpriority;对于环网时间输出节点:配置其输出端口的Localpriority劣于其环上端口的Localpriority;对于环网双向时间节点:配置输出端口的Localpriority等于其环上端口的Localpriority。从本发明提供的技术方案可见,由于引入环网时间节点的概念,并对其Localpriority属性提供了规范的配置,避免了不当的配置导致算法选路成环振荡,因此,降低了时钟环路的风险。

进一步地,在环网时间节点决定进入从时钟(slave)状态后,环网时间 节点在预先设置的进入slave状态的等待时间内广播自身的设备信息;如果环网时间节点存在noslave端口,环网时间节点按照预先设置的状态选择策略选择最佳的时间源(Ebest)并确定端口状态;其中,状态选择策略包括:noslave端口遍历所有非noslave属性的时间端口,按照已有数据集比较算法选择出最好的Erbest作为noslave端口的Ebest。这样,通过环网时间节点时间信息加入了一个延时过滤流程,对于由于组网中配置Localpriority引起的无效时间信息传递起到过滤作用,消除了外部时间输入消失引起的无效时间信息成环。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1为本发明实现交替BMC的方法的流程图;

图2为本发明实现环网时间节点的第一实施例的网络结构示意图;

图3为本发明实现环网时间节点的第二实施例的网络结构示意图;

图4为本发明实现环网时间节点的第三实施例的网络结构示意图;

图5为本发明实现交替BMC的装置的组成结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

图1为本发明实现交替BMC的方法的流程图,如图1所示,包括:

步骤100:设置环上与环外存在时钟通信的节点为环网时间节点,并配置环网时间节点的Localpriority属性。

其中,环网时间节点分为三类:

一类用于接入时钟,即通过环网时间节点从外界获取时钟,也可以称为环网时间输入节点;

一类用于向外输出时钟,也可以称为环网时间输出节点;

还有一类是,当环内与环外的地位是等同的,时间存在双向传递的可能,此时,环网时间节点为环网双向时间节点。

一个环上可以有多个环网时间节点。

本步骤中的配置环网时间节点的Localpriority属性包括:

对于环网时间输入节点:配置其输入端口的Localpriority优于(如数值上小于)其环上端口的Localpriority;如图2所示,

假设网络结构为一个标准时间源(PRTC)给一个环供时,节点A就是环网时间输入节点,节点A与PRTC相连的时间端口为输入端口、与节点B、节点F分别相连的端口为环上端口,配置时要求节点A的输入端口的Localpriority值小于其环上端口的。

对于环网时间输出节点:配置其输出端口的Localpriority劣于(如数值上大于)其环上端口的Localpriority;如图3所示,

假设网络结构为一个PRTC给两个串联环供时,节点D就是环网时间输出节点,节点D从环内获取时间,并向下游环传递时间。节点D与节点D1相连的时间端口为输出端口,与节点C、节点E分别相连的端口为环上端口,配置时要求节点D的输出端口的Localpriority值大于其环上端口的。

对于环网双向时间节点:配置输出端口的Localpriority等于(如数值上大于)其环上端口的Localpriority;如图4所示,

假设网络结构为两个PRTC给两个串联环主备供时,节点D在一个时刻从一个环上获取时间,并向另一个环通告,节点D同时兼有在另一时刻从另一个环获取时间的能力与要求,节点D就是环网双向时间节点,配置时要求节点D上4个时间端口的Localpriority数值相等。

从本发明提供的技术方案可见,由于引入环网时间节点的概念,并对其Localpriority属性进行了相应配置,提供了规范的配置说明,避免了不当的配置导致算法选路成环振荡,因此,降低了时钟环路的风险。

本发明方法之前还包括:判断出节点为环上与环外存在时钟通信的环网时间节点。

如果判断出节点不是环网时间节点,该方法还包括:按照标准协议的算法流程实现slave状态切换。

如果节点存在noslave端口,本发明方法还包括:

步骤101:包括环网时间节点的所有节点按照预先设置的状态选择策略选择最佳的时间源(Ebest)并确定所有端口状态。

其中,状态选择策略包括:

节点遍历所有非noslave属性的时间端口,按照已有数据集比较算法选择出最好的Erbest作为该节点的Ebest。

其中,Erbest与Ebest都是已有协议上定义的信息,Erbest是指端口上最好的时间源及其时间信息;Ebest是指设备上最好的时间输入信息,也就是说,Ebest是所有可用的Erbest信息中最好的。

其中,确定所有端口状态包括:

当节点的本地时钟D0的clockclass数值在1到127之间时,如果noslave端口的Erbest优于本地时钟D0,则节点的noslave端口进入被动(passive)状态,否则,进入主(master)状态;

当节点的本地时钟D0的clockclass数值不在1到127之间时,如果noslave端口的Erbest优于本地时钟D0,且同时优于节点的Ebest,则节点的noslave端口进入passive状态,否则,进入master状态;

非noslave端口按照标准算法规则确定端口状态。

其中,节点的Ebest的选取包括:在除noslave端口的Erbest之外的Erbest中选择出的最好的Erbest,具体如何选择的实现属于本领域技术人员的公知技术,这里不再赘述。

进一步地,在环网时间节点决定进入从时钟(slave)状态后,本发明方法还包括:

步骤102:环网时间节点在预先设置的进入slave状态的等待时间内广播 自身的设备信息。

环网时间节点进入slave状态是因为接收到上游的通告(Announce)报文,比较其与本设备的时钟信息,发现外部比本设备优才进入slave状态的一种行为。其中,Announce报文中携带有环网时间节点的用于拓扑计算的时间信息,以及距离祖父时钟的跳数信息。

本步骤中,等待时间可以默认为Announce报文间隔时间与距离祖父时钟(GM,GrandMaster)的跳数相乘得到的积值。

进一步地,等待时间也可以为通过用户手工预先配置的值。

本步骤中广播的设备信息为作为GM的环网时间节点的时间信息。

当超过等待时间时,本发明方法还包括:环网时间节点的状态切换到正常slave状态,然后再按照标准协议向外通告真正GM的信息。

需要说明的是,如果节点不是环网时间节点,那么,该方法还包括:按照标准协议的算法流程实现slave状态切换。

图5为本发明实现交替BMC的装置的组成结构示意图,如图5所示,至少包括判断单元、配置单元;其中,

判断单元,用于判断出自身所在节点为设置环上与环外存在时钟通信的环网时间节点;

配置单元,用于配置环网时间节点的Localpriority属性为:

对于环网时间输入节点:配置其输入端口的Localpriority优于其环上端口的Localpriority;对于环网时间输出节点:配置其输出端口的Localpriority劣于其环上端口的Localpriority;对于环网双向时间节点:配置输出端口的Localpriority等于其环上端口的Localpriority。

本发明装置还包括第一处理单元,用于在自身所在的环网时间节点决定进入slave状态后,在预先设置的进入slave状态的等待时间内广播自身的设备信息。

第一处理单元还用于:当超过等待时间时,将自身所在环网时间节点的状态切换到正常slave状态,再按照标准协议向外通告真正GM的信息。

判断单元还用于:判断出自身所在节点存在noslave端口,此时,本发明装置还包括第二处理单元,用于按照预先设置的状态选择策略选择Ebest并确定所有端口状态。具体用于:

自身所在节点遍历所有非noslave属性的时间端口,按照已有数据集比较算法选择出最好的Erbest作为该节点的Ebest;

当自身所在节点的本地时钟D0的clockclass数值在1到127之间时,如果noslave端口的Erbest优于本地时钟D0,则自身所在节点的noslave端口进入passive状态,否则,进入主时钟(master)状态;

当自身所在节点的本地时钟D0的clockclass数值不在1到127之间时,如果noslave端口的Erbest优于本地时钟D0,且同时优于自身所在节点的Ebest,则自身所在节点的noslave端口进入passive状态,否则,进入master状态;

自身所在节点的非noslave端口按照标准算法规则确定端口状态。

判断单元还用于:判断出自身所在节点不是环网时间节点;相应地,本发明装置还包括第三处理单元,用于按照标准协议的算法流程实现slave状态切换。

本发明实现交替BMC的装置可以设置在环网的节点中。

以上所述,仅为本发明的较佳实例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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