快速环网保护协议负载分担方法和装置的制造方法_3

文档序号:8398049阅读:来源:国知局
,RRPP域中的边缘节点、辅助边缘节点都会在本地配置本RRPP域中存在的所有RRPP环。基于此,本步骤303基于本地配置识别出本RRPP域存在的RRPP环总数量,同时,RRPP域中的边缘节点、辅助边缘节点也会在本地配置本RRPP域中存在的所有RRPP保护实例,因此,本步骤303也会根据配置识别出本RRPP域中存在的RRPP保护实例数量。当本步骤303依据本地配置识别出本RRPP域中存在的RRPP保护实例数量和RRPP环总数量均为两个以上时,就执行步骤304。
[0082]以图1所示RRPP域为例,RRPP域中存在以下三个RRPP环:Ringl至Ring3,Ringl至Ring3这三个RRPP环按照从小到大排名的编号依次为:1,2,3。并且,假如图1所示的RRPP域中存在四个RRPP保护实例,分别是实例I至实例4,即,RRPP域中RRPP保护实例总数量、以及处于正常状态的RRPP环总数量均为两个以上时,继续执行下述步骤304。
[0083]需要说明的是,作为本发明的一个实施例,当子环中通过公共端口收到本子环中主节点发送的Hello报文的边缘节点或者辅助边缘节点判断出本RRPP域中RRPP保护实例总数量和RRPP环总数量中至少一个没有达到两个以上时,可按照现有方式实现,即,对接收的Hello报文不进行任何处理,直接通过连接本子环的边缘端口向本子环主节点的副端口发送;
[0084]作为本发明的另一个实施例,子环中通过公共端口收到本子环中主节点发送的Hello报文的边缘节点或者辅助边缘节点也可不执行步骤303的判断,直接执行下述的步骤304。本发明实施例以执行上述步骤303为例,不执行步骤303的实例不再描述。
[0085]步骤304,子环中通过公共端口收到本子环中主节点发送的Hello报文的边缘节点或者辅助边缘节点从本RRPP域存在的所有RRPP保护实例中确定出本子环当前绑定的RRPP保护实例。
[0086]本实施例,可按照取模规则确定本子环当前绑定的RRPP保护实例。以图1所示RRPP域中子环Ring3的主节点DUT5发送Hello报文为例,则如图1所示,Ring3中的辅助边缘节点DUT3是通过公共端口 P7接收到Ring3的主节点DUT5发送的Hello报文,如此,执行到本步骤304时,DUT3按照取模规则确定Ring3绑定的RRPP保护实例:
[0087]假设图1所示RRPP域中存在以下三个RRPP环:Ringl至Ring3,Ringl至Ring3这三个RRPP环按照从小到大排名的序号依次为:1,2,3;并且,假如图1所示的RRPP域中存在四个RRPP保护实例,分别是实例I至实例4,实例I至实例4的序号依次为:1、2、3、4 ;则计算实例I至实例4中哪些实例的序号与RRPP域中的RRPP环数量“3”进行模运算得到的模结果与Ring3的序号“3”对应,将该计算出的实例确定为与Ring3绑定的RRPP保护实例。其中,假如预先做出如下定义:
[0088]模结果“O”与Ring3的序号“3”对应;
[0089]模结果“ I”与Ringl的序号“ I”对应;
[0090]模结果“ 2 ”与Ring2的序号“ 2 ”对应;
[0091]如上做出的定义,Ring3的序号“3”与模结果“O”对应,则就会计算实例I至实例4中哪些实例的序号与RRPP域中的RRPP环数量“3”进行模运算得到模结果0,结果发现实例3的序号“3”与RRPP域中的RRPP环数量“3”进行模运算得到模结果0,正好与Ring3的序号“3”对应,如此,就确定实例3与Ring3绑定。
[0092]同样的计算方法,图1所示RRPP域中Ring2绑定的RRPP保护实例为实例2,Ringl绑定的RRPP保护实例为实例1、实例4。
[0093]需要说明的是,上述按照取模规为子环确定绑定的RRPP保护实例只是本实施例的一种举例,并不限定本发明,在不影响本发明保护范围的前提下,也可以采用其他方式为子环选择绑定的RRPP保护实例。
[0094]步骤305,子环中通过公共端口收到本子环中主节点发送的Hello报文的边缘节点或者辅助边缘节点将本RRPP域中的RRPP环总数量、本子环在RRPP域中所有RRPP环的序号携带在收到的Hello报文中,并通过连接本子环的边缘端口发送。之后执行步骤311。
[0095]仍以图1所示RRPP域中的Ring3为例,中主节点DUT5发送Hello报文后,Ring3中的辅助边缘节点DUT3会通过公共端口 P7收到Ring3中主节点DUT5发送的Hello报文,则执行到本步骤305时,DUT3将图1所示RRPP域中的RRPP环数量3、以及Ring3在RRPP域中所有RRPP环的序号“3”携带在收到的来自Ring3中主节点DUT5发送的Hello报文中,并通过连接Ring3的边缘端口即P8发送。
[0096]Hello报文中通常有一些保留位,本实施例中,可以占用Hello报文的任意一个保留位,在该占用的保留位的第一个字节内填写本RRPP域中的RRPP环总数量,即代表该RRPP域总共拥有的RRPP环个数;在该占用的保留位的第二个字节内填写本子环在RRPP域中所有RRPP环的序号,即代表该子环在RRPP域中所有RRPP环中的排名。
[0097]需要说明的是,本步骤305中,子环中通过公共端口收到本子环中主节点发送的Hello报文的边缘节点或者辅助边缘节点之所以在收到的Hello报文中携带本RRPP域中RRPP环总数量、以及本子环在RRPP域中所有RRPP环的序号并发送,目的是便于本子环中的主节点确定本子环当前绑定的RRPP保护实例。因此,该携带的本RRPP域中RRPP环总数量、以及本子环在RRPP域中所有RRPP环的序号可称为用于确定本子环当前绑定的RRPP实例的相关信息。
[0098]本实施例中,由于子环中通过公共端口收到本子环中主节点发送的Hello报文的边缘节点或者辅助边缘节点在步骤304已确定出本子环绑定的RRPP保护实例,基于此,本步骤305中,子环中通过公共端口收到本子环中主节点发送的Hello报文的边缘节点或者辅助边缘节点也可以直接携带本子环绑定的RRPP保护实例的序号并发送,以便本子环中的主节点依据收到的Hello报文中的本子环绑定的RRPP保护实例的序号直接确定本子环绑定的RRPP保护实例。也即,Hello报文携带的本子环绑定的RRPP保护实例的序号也可称为用于确定本子环绑定的RRPP保护实例的相关信息。
[0099]本实施例以在Hello报文携带RRPP域中RRPP环总数量、以及本子环在RRPP域中所有RRPP环的序号为例进行说明的,而Hello报文携带本子环绑定的RRPP保护实例的序号的原理类似,不再一一赘述。
[0100]作为一个优选方案,本发明实施例中,也可先不通过步骤304确定本子环当前绑定的RRPP保护实例,而是直接将步骤305替代步骤304。基于此,本步骤305中,子环中通过公共端口收到本子环中主节点发送的Hello报文的边缘节点或者辅助边缘节点在通过连接本子环的边缘端口发送Hello报文时,将用于确定本子环绑定的RRPP实例的相关信息即本RRPP域中的RRPP环总数量、以及本子环在RRPP域中所有RRPP环的序号携带在Hello报文中发送。
[0101]步骤306,子环中通过公共端口收到本子环中主节点发送的Hello报文的边缘节点或者辅助边缘节点,从本RRPP域存在的所有RRPP保护实例中确定本子环当前绑定的RRPP保护实例。
[0102]本步骤306、以及后续的步骤307至步骤310是子环中通过公共端口收到本子环中主节点发送的Hello报文的边缘节点或者辅助边缘节点在收到的Hello报文携带第一标识的前提下执行的。
[0103]在本步骤306中,确定本子环当前绑定的RRPP保护实例的方式类似上述步骤304确定本子环当前绑定的RRPP保护实例的方式,这里不再赘述。
[0104]在本步骤306中,之所以在收到Hello报文时,再次确定本子环当前绑定的RRPP保护实例,原因为=RRPP域中子环动态变化,比如RRPP域中子环增加、减少或故障,这种变化会导致子环绑定的RRPP保护实例发生变化,因此,子环中通过公共端口收到本子环中主节点发送的Hello报文的边缘节点或者辅助边缘节点在再次收到Hello报文时,需要再次确定本子环当前绑定的RRPP保护实例,目的是适应这种变化,精确确定出本子环当前绑定的RRPP保护实例。
[0105]步骤307,子环中通过公共端口收到本子环中主节点发送的Hello报文的边缘节点或者辅助边缘节点,比较所述公共端口对应本子环绑定的RRPP保护实例的数据转发状态为discarding的RRPP保护实例是否与本子环当前绑定的RRPP保护实例一致,如果是,执行步骤308,如果是,执行步骤309。
[0106]如前面步骤204所述,本步骤307中公共端口对应本子环绑定的RRPP保护实例其为前次确定出本子环绑定的RRPP保护实例;这里所说的前次,是指距离当前确定本子环绑定的RRPP保护实例最近的一次。由于本步骤307是在子环中通过公共端口收到本子环中主节点发送的Hello报文的边缘节点或者辅助边缘节点在收到的Hello报文携带第一标识的前提下执行的,基于上述步骤303至步骤305的描述,在当前,所述公共端口对应本子环绑定的RRPP保护实例肯定存在,但有可能因为RRPP域子环的变化,所述公共端口对应本子环绑定的RRPP保护实例与当前确定的本子环当前绑定的RRPP保护实例不一致,并且,所述公共端口对应本子环绑定的RRPP保护实例中数据转发状态为discarding的RRPP保护实例是否存在,以及在存在时,该存在的RRPP保护实例是否与当前确定的本子环当前绑定的RRPP保护实例一致,这都需要经过步骤307中的比较实现。
[0107]步骤308,维持本子环当前绑定的RRPP保护实例在所述公共端口的数据转发状态为discarding。之后执行步骤310。
[0108]本步骤308是在步骤307的比较结果为一致时执行的。
[0109]步骤309,从所述公共端口对应本子环绑定的数据转发状态为discarding的RRPP保护实例中识别出当前不与本子环绑定的RRPP保护实例,将所述公共端口对应该识别出的RRPP保护实例的数据转发状态从discarding修改为forwarding,并识别所述公共端口对应本子环当前绑定的每一 RRPP保护实例的数据转发状态,如果为forwarding,将forwarding修改为discarding,如果为discarding,继续维持discarding。之后执行步骤310。
[0110]本步骤309是在步骤307的比较结果为不一致时执行的。
[0111]通过步骤307至步骤309,能够使得在RRPP域中子环动态变化时,保证子环中通过公共端口收到本子环中主节点发送的Hello报文的边缘节点或者辅助边缘节点仅将所述公共端口对应本子环当前绑定的RRPP保护实例的数据转发状态设置为discarding,而所述公共端口对应其他RRPP保护实例的数据转发状态依然为forwarding。
[0112]作为本发明实施例的一个特殊情况,子环中通过公共端口收到本子环中主节点发送的Hello报文的边缘节点或者辅助边缘节点如果是第二次收到Hello报文,此时,所述公共端口对应本子环绑定的数据转发状态为discarding的RRPP保护实例是不存在的,针对这种情况,会认为所述公共端口对应本子环绑定的数据转发状态为discarding的RRPP保护实例与本子环当前绑定的RRPP保护实例不一致,即步骤307的比较结果为不一致,如此执行到步骤309时,可直接将所述公共端口对应本子环当前绑定的每一 RRPP保护实例在的数据转发状态从forwarding修改为discarding。
[0113]步骤310,子环中通过公共端口收到本子环中主节点发送的Hello报文的边缘节点或者辅助边缘节点,将本RRPP域中的RRPP环总数量、以及本子环在RRPP域中所有RRPP环的序号携带在所述Hello报文中并修改所述Hello报文中的第一标识为第二标识,将修改后的Hello报文通过连接本子环的边缘端口向本子环主节点的副端口发送。之后执行步骤 311。
[0114]本实施例中,该第二标识可为RRPP协议中未被规定的、且不同于第一标识的值,比如为0x0002。
[0115]这里,通过公共端口收到本子环中主节点发送的携带第一标识的Hello报文的边缘节点或者辅助边缘节点将接收的所述Hello报文中的第一标识修改为第二标识,目的是将本节点公共端口对应本子环当前绑定的RRPP保护实例的数据转发状态即将设置为discarding或者已设置为discarding的消息告知本子环中的主节点。
[0116]由于RRPP域中子环动态变化,子环绑定的RRPP保护实例也会动态变化,为适应这种变化,本步骤310在Hello报文中仍然携带本RRPP域中RRPP环总数量、以及本子环在本RRPP域中所有RRPP环的序号,以便子环主节点收到该Hello报文时,正确确定本子环当前绑定的RRPP保护实例。
[0117]仍以图1所示RRPP域中的Ring3为例,Ring3中主节点DUT5发送携带第一标识的Hello报文后,Ring3中的辅助边缘节点DUT3会通过公共端口 P7收到Ring3中主节点DUT5发送的携带第一标识的Hello报文,执行到本步骤310时,DUT3会将接收的所述Hello报文中的第一标识修改为第二标识,将图1所示RRPP域中RRPP环数量3、以及Ring3在RRPP域中所有RRPP环的序号“3”携带在第一标识修改为第二标识的Hello报文中,通过连接本子环的边缘端口 P8发送。
[0118]如上所述,在步骤305中Hello报文中携带的不是本RRPP域中的RRPP环总数量、以及本子环在RRPP域中所有RRPP环的序号,而是确定的本子环当前绑定的RRPP保护实例的序号时,则在本步骤310中,将步骤306确定的本子环当前绑定的RRPP保护实例的序号携带在所述Hello报文中,具体实现原理与将本RRPP域中的RRPP环总数量、以及本子环在RRPP域中所有RRPP环的序号来携带在所述Hello报文中的实现原理类似,这里不再赘述。
[0119]需要说明的是,上面描述的步骤307至步骤309,与步骤310并不存在固定的时间先后顺序,步骤310可先于步骤307至步骤309执行,也可后于步骤307至步骤309执行,本发明并不具体限定。本实施例只是以步骤310后于步骤307至步骤309执行为例描述。
[0120]步骤311,子环的主节点通过副端口接收到Hello报文后,依据该Hello报文携带的本RRPP域中的RRPP环总数量、以及本子环在本RRPP域中所有RRPP环
当前第3页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1