CN108347385B - 应用于弹性分组环rpr中的报文广播方法和装置 - Google Patents
应用于弹性分组环rpr中的报文广播方法和装置 Download PDFInfo
- Publication number
- CN108347385B CN108347385B CN201810453903.3A CN201810453903A CN108347385B CN 108347385 B CN108347385 B CN 108347385B CN 201810453903 A CN201810453903 A CN 201810453903A CN 108347385 B CN108347385 B CN 108347385B
- Authority
- CN
- China
- Prior art keywords
- rpr
- hop count
- message
- service domain
- specified
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/32—Flooding
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了应用于弹性分组环RPR中的报文广播方法和装置。本申请在广播报文时并非是在整个RPR广播报文,而是先依据报文所属的第一业务域对应的第一业务域拓扑信息确定报文在RPR中广播的广播方式,因为本申请中的广播方式是依赖于报文所属的第一业务域对应的第一业务域拓扑信息确定的,这使得本申请最终按照广播方式在RPR中广播报文,能够将报文局限在RPR中处于第一业务域中的节点之间广播,实现了报文只在所属业务域内有效广播,缩减了报文的广播域,避免大量报文在RPR广播泛洪,最大化提高RPR带宽利用率。
Description
技术领域
本申请涉及网络通信技术,特别涉及应用于弹性分组环(RPR:Resilient PacketRing)中的报文广播方法和装置。
背景技术
RPR是一种新型的媒体访问控制(MAC:Media Access Control)协议,可运行于同步光网络(SONET:Synchronous Optical Network)/同步数字系列(SDH:SynchronousDigital Hierarchy)、密级波分复用(DWDM:Dense Wavelength Division Multiplexing)和以太网之上,为宽带IP城域网运营商提供灵活高效的组网方案。
RPR采用逆向双环结构。所谓逆向双环结构是指沿顺时针方向的0环(也称OuterRing(外环))、以及沿逆时针方向的1环(也称Inner Ring(内环))。图1示出了RPR的逆向双环结构。
在RPR中,限定整个RPR为广播域,广播报文或者未知报文会无条件绕RPR广播一圈。但是,在实际业务应用中,RPR中所有节点的业务需求并非都与接收的广播报文或者未知报文有关。如此,限定整个RPR为广播域,会导致RPR中一些节点收到与自身业务需求没有关系的广播报文或者未知报文,这会浪费RPR中带宽浪费。
发明内容
本申请提供了应用于弹性分组环RPR中的报文广播方法和装置,以实现报文只在所属业务域内有效广播,避免大量报文广播泛洪。
本申请提供的技术方案包括:
一种应用于弹性分组环RPR中的报文广播方法,该方法应用于RPR中的节点,包括:
接收报文,所述报文为广播报文或者未知报文;
若本节点处于所述报文所属的第一业务域、且本节点需将所述报文插入至所述RPR,则依据所述第一业务域对应的第一业务域拓扑信息确定所述报文在所述RPR中广播的广播方式;所述第一业务域拓扑信息包含本节点、所述RPR中处于第一业务域的其他节点之间的拓扑结构关系;
按照所述广播方式发送所述报文。
一种应用于弹性分组环RPR中的报文广播装置,该装置应用于RPR中的节点,包括:
报文处理芯片,用于接收报文,所述报文为广播报文或者未知报文;
RPR处理芯片,用于对所述报文执行RPR处理;
所述报文处理芯片还用于当本节点处于所述报文所属的第一业务域、且当所述RPR处理芯片对所述报文执行的RPR处理为将所述报文插入至所述RPR时,依据所述第一业务域对应的第一业务域拓扑信息确定所述报文在所述RPR中广播的广播方式,按照所述广播方式发送所述报文,所述第一业务域拓扑信息包含本节点、所述RPR中处于第一业务域的其他节点之间的拓扑结构关系。
由以上技术方案可以看出,本申请在广播报文时并非是在整个RPR广播报文,而是先依据报文所属的第一业务域对应的第一业务域拓扑信息确定报文在RPR中广播的广播方式,因为本申请中的广播方式是依赖于报文所属的第一业务域对应的第一业务域拓扑信息确定的,这使得本申请最终按照广播方式在RPR中广播报文,能够将报文局限在RPR中处于第一业务域中的节点之间广播,实现了报文只在所属业务域内有效广播,缩减了报文的广播域,避免大量报文在RPR广播泛洪,最大化提高RPR带宽利用率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1为本申请提供的RPR逆向双环结构图;
图2为本申请提供的RPR示意图;
图3为本申请提供的方法流程图;
图4为本申请提供的确定报文在RPR中广播的广播方式的流程图;
图5为本申请提供的步骤402实现流程图;
图6为本申请提供的步骤403实现流程图;
图7为本申请提供的实施例示意图;
图8为本申请提供的装置结构示意图。
具体实施方式
本申请中,不再限定整个RPR是一个广播域,而是根据实际业务需求设置广播域。
作为一个实施例,在本申请中,当根据实际业务需求设置广播域时可参考各节点所属的业务域,以使报文只在所属业务域内有效广播,而非在整个RPR广播,这能避免大量报文在RPR广播泛洪,最大化提高RPR带宽利用率。
本申请中,各节点所属的业务域可通过配置实现。从业务层面看出,这里的业务域相当于一个逻辑上独立的业务环(也称逻辑业务环)。RPR上的节点可同时属于多个不同业务域。优选地,本申请中,整个RPR一共支持N个业务域,N可以根据需要定义,比如N取值为16。
以图2所示RPR为例,图2所示的RPR包括以下4个节点:S1至S4。假如RPR上两个节点(记为S1)与S4之间存在业务互通需求,则可配置S1、S4同属于同一个业务域(记为业务域1);类似地,S1与S3之间存在业务互通需求,则可配置S1、S3同属于同一个业务域(记为业务域2);S1与S2之间存在业务互通需求,则可配置S1、S2同属于同一个业务域(记为业务域3)。
本申请中,RPR上每一节点本地会配置所属的业务域的信息(也称业务域信息)。这里,业务域信息主要包括:业务域的标识(ID)、业务域所属的虚拟局域网(VLAN)。仍以图2所示的S4为例,基于如上描述,则S4本地会配置业务域1信息。业务域1信息主要包括业务域1的ID、业务域1所属的VLAN。
在本申请中,RPR上不同节点若处于同一业务域,则不同节点本地配置的同一业务域的VLAN相同。仍以图2所示的S4、S1为例,基于如上描述,S1、S4同处于业务域1,则S1、S4本地配置的业务域1信息中的VLAN相同。
本申请中,RPR上每一节点都会向同一RPR中的其他节点通告本节点所属业务域的业务域信息。作为一个实施例,RPR上每一节点可采用属性发现(ATD:AttributeDiscovery)帧向同一RPR中的其他节点通告本节点所属业务域的业务域信息。
本申请中,RPR上每一节点在接收到同一RPR中的其他节点通告的业务域信息时,识别该业务域信息中的业务域ID、VLAN,若发现该识别出的业务域ID与本节点本地配置的业务域信息中的业务域ID一致,则判断该识别出的VLAN是否与本节点本地配置的该业务域信息中的VLAN一致,若不一致,则发出告警,以指示最终不同节点上配置的同一业务域所属的VLAN一致。
本申请中,RPR上每一节点还会依据接收到的同一RPR中的其他节点通告的业务域信息为本节点所属的每一业务域生成对应的业务域拓扑信息;这里的业务域拓扑信息包含本节点、所述RPR中与本节点处于同一业务域的其他节点之间的拓扑结构关系。
最终,本申请中,RPR上每一节点本地会配置所属业务域的业务域信息,也会生成本节点所属的每一业务域对应的业务域拓扑信息。
基于如上描述,本申请提供了应用于RPR中的报文广播方法,具体如图3所示。
参见图3,图3为本申请提供的方法流程图。该方法应用于RPR中的节点。
如图3所示,该流程可包括以下步骤:
步骤301,接收报文,所述报文为广播报文或者未知报文。
这里的未知报文可为未知单播报文、未知组播报文等。
步骤302,若本节点处于报文所属的第一业务域、且本节点需将所述报文插入至所述RPR,则依据所述第一业务域对应的第一业务域拓扑信息确定所述报文在所述RPR中广播的广播方式;所述第一业务域拓扑信息包含本节点、所述RPR中处于第一业务域的其他节点之间的拓扑结构关系。
在应用中,报文的以太标签会携带报文所属业务域的指示,根据该指示,很容易确定报文所属的业务域,也即上述的第一业务域。需要说明的是,这里的第一业务域只是为便于描述而进行的命名,并非用于限定。
这里,本节点需将所述报文插入至所述RPR,则意味着报文是来自RPR外,本节点作为报文在RPR的源节点通过对报文执行上环操作以使报文插入至RPR。也即,本步骤302是在报文是来自RPR外的前提下执行的。而若报文是来自RPR上其他节点转发的,则本申请中,可进一步检查本节点是否处于报文的源MAC地址所属的业务域,这里的源MAC地址是插入报文至RPR的节点的MAC地址,如果否,则不再对所述报文进行下环操作,直接将所述报文转发至下一跳,这节省节点的处理资源。需要说明的是,本申请中,若检查本节点处于报文的源MAC地址所属的业务域,则对报文执行下环操作,最终实现本节点只对来源同一业务域中其他节点的报文执行下环操作。
步骤303,按照所述广播方式发送所述报文。
可以看出,本申请在广播报文时并非是在整个RPR广播报文,而是先依据报文所属的第一业务域对应的第一业务域拓扑信息确定报文在RPR中广播的广播方式,因为本申请中的广播方式是依赖于报文所属的第一业务域对应的第一业务域拓扑信息确定的,这使得本申请最终按照广播方式在RPR中广播报文,能够将报文局限在RPR中处于第一业务域中的节点之间广播,实现了报文只在所属业务域内有效广播,缩减了报文的广播域,避免大量报文在RPR广播泛洪,最大化提高RPR带宽利用率。
作为一个实施例,本申请中,上述步骤302中依据第一业务域对应的第一业务域拓扑信息确定报文在所述RPR中广播的广播方式有多种实现形式,图4示出其中一种实现形式:
参见图4,图4为本申请提供的确定报文在RPR中广播的广播方式的流程图。如图4所示,该流程可包括:
步骤401,检查所述RPR的环状态是闭环还是开环,若是闭环,执行步骤402,若是开环,执行步骤403。
在应用中,当RPR上两个相邻节点之间的链路故障,或者当RPR上的节点故障,则RPR的环状态从闭环变为开环。
步骤402,依据所述RPR中节点总数量T、第一指定跳数以及第二指定跳数确定所述报文在所述RPR中广播的广播方式。
这里,第一指定跳数是指基于所述第一业务域拓扑信息计算出的从本节点沿着所述RPR中0子环的方向至所述第一业务域中其他节点的最大跳数。
第二指定跳数是指基于所述第一业务域拓扑信息计算出的从本节点沿着所述RPR中1子环的方向至所述第一业务域中其他节点的最大跳数。
具体地,本步骤402依据RPR中节点总数量T、第一指定跳数以及第二指定跳数确定所述报文在所述RPR中广播的广播方式有很多实现方式,下文图5举例示出其中一种实现方式,这里暂不赘述。
步骤403,依据第三指定跳数以及第四指定跳数确定所述报文在所述RPR中广播的广播方式。
若从本节点沿着所述RPR中0子环的方向至开环处不存在属于第一业务域的节点,第三指定跳数为指定值,否则,第三指定跳数是指基于所述第一业务域拓扑信息计算出的从本节点沿着所述RPR中0子环的方向至所述第一业务域中其他节点的最大跳数。以图2所示RPR的S2为例,假如S2与S3之间的链路故障,则意味着RPR在S2与S3处开环,沿着所述RPR中0子环的方向发现从S2至开环处不存在节点,则此时第三指定跳数为指定值比如0。
其中,若从本节点沿着所述RPR中1子环的方向至开环处不存在属于第一业务域的节点,则所述第四指定跳数为指定值,否则,第四指定跳数是指基于所述第一业务域拓扑信息计算出的从本节点沿着所述RPR中1子环的方向至所述第一业务域中其他节点的最大跳数。以图2所示RPR的S3为例,假如S2与S3之间的链路故障,则意味着RPR在S2与S3处开环,沿着所述RPR中1子环的方向发现从S3至开环处不存在节点,则此时第四指定跳数为指定值比如0。
具体地,本步骤403依据第三指定跳数以及第四指定跳数确定所述报文在所述RPR中广播的广播方式,下文图6举例示出其中一种实现方式,这里暂不赘述。
至此,完成图4所示流程。
参见图5,图5为本申请提供的步骤402实现流程图。如图5所示,该流程可包括:
步骤501,以本节点为界将所述RPR划分为第一子RPR、第二子RPR,第一子RPR包含沿着所述RPR中0子环方向的N个节点,所述第二子RPR包含沿着所述RPR中1子环方向的M个节点,其中,若T为奇数,N与M相等,若T为偶数,N等于M与1之和。
以图2所示RPR中的S1为例,则按照本步骤501,将RPR中S2、S3之间的拓扑连接划分为第一子RPR,将S4划分为第二子RPR。
步骤502,基于所述第一业务域拓扑信息计算从本节点沿着所述RPR中0子环的方向至所述第一子RPR中属于第一业务域的其他节点的最大跳数Maxhop1,以及计算从本节点沿着所述RPR中1子环的方向至所述第二子RPR中属于第一业务域的其他节点的最大跳数Maxhop2。
步骤503,比较所述第一指定跳数、第二指定跳数、以及由所述Maxhop1与Maxhop2进行求和计算得到的第五指定跳数,若所述第一指定跳数取值最小,则确定所述广播方式为:沿着所述RPR中0子环的方向广播,且所述报文的生存时间TTL为第一指定跳数;若所述第二指定跳数取值最小,则确定所述广播方式为:沿着所述RPR中1子环的方向广播,且所述报文的TTL为第二指定跳数;若所述第五指定跳数取值最小,则确定所述广播方式为:沿着所述RPR中0子环的方向广播且所述报文的TTL为Maxhop1,沿着所述RPR中1子环的方向广播,且所述报文的TTL为Maxhop2。
至此,完成图5所示流程。
下面通过一个实施例描述图3至图5所示流程:
以图7所示的RPR(记为RPR700)为例,图7所示的RPR包括8个节点:S71至S78。其中,S71、S77、S78同属于一个业务域(记为业务域701),S71、S73、S75同属于一个业务域(记为业务域702),S72、S74同属于一个业务域(记为业务域703)。
图7所示的RPR700的环状态为闭环。
如图7所示,当S72接收到来自RPR700外部的报文(记为报文a1),依据报文a1的以太标签携带的业务域指示确定报文a1属于业务域701。
按照图4所示流程,S72基于之前已生成的业务域701的业务域拓扑信息计算从本节点S72沿着RPR700中0子环的方向至RPR700中属于业务域701的其他节点的最大跳数(记为第一指定跳数),RPR700中S77、S78均属于业务域701,沿着RPR700中0子环的方向,S72至S77的跳数为5,S72至S78的跳数为6,此时第一指定跳数为6。
S72基于之前已生成的业务域701的业务域拓扑信息计算从本节点S72沿着RPR700中1子环的方向至RPR700中属于业务域701的其他节点的最大跳数(记为第二指定跳数),RPR700中S77、S78均属于业务域701,沿着RPR700中1子环的方向,S72至S77的跳数为3,S72至S78的跳数为2,此时第二指定跳数为3。
按照图5所示流程,S72将RPR700上的S73、S74、S75、S76之间的拓扑连接划分为第一子RPR,将RPR700上的S77、S78、S71之间的拓扑连接划分为第二子RPR。
S72基于之前已生成的业务域701的业务域拓扑信息计算从本节点S72沿着RPR700中0子环的方向至第一子RPR中属于业务域701的其他节点的最大跳数Maxhop1。如上描述,第一子RPR中S73、S74、S75、S76均不属于业务域701,此时,Maxhop1可为指定值比如0。
S72基于之前已生成的业务域701的业务域拓扑信息计算从本节点S72沿着RPR700中1子环的方向至第二子RPR中属于业务域701的其他节点的最大跳数Maxhop2。第二子RPR中S77、S78均属于业务域701,而沿着RPR700中1子环的方向,S72至S78存在两跳,S72至S77存在三跳,此时Maxhop2为3。
S72对Maxhop1、Maxhop2执行求和计算,得到的结果称为第五指定跳数。此时第五指定跳数为3。
S72比较第一指定跳数、第二指定跳数、第五指定跳数,发现第二指定跳数、第五指定跳数相等、且为最小。此时,作为一个实施例,本申请可默认选择第二指定跳数最小。
基于第二指定跳数最小,S72确定报文a1在RPR700广播的广播方式为:沿着RPR700中1子环的方向广播,且报文a1的TTL为第二指定跳数(此时TTL为3)。图7的虚线01示出了报文a1的广播路径,报文a1最远到达S77即可剥离终止在RPR700广播。
如图7所示,当S78接收到来自RPR700外部的报文(记为报文a2),依据报文a2的以太标签携带的业务域指示确定报文a2属于业务域701。
按照图4所示流程,S78基于之前已生成的业务域701的业务域拓扑信息计算从本节点S78沿着RPR700中0子环的方向至RPR700中属于业务域701的其他节点的最大跳数(记为第一指定跳数),RPR700中S77、S78均属于业务域701,沿着RPR700中0子环的方向,S78至S72的跳数为2,S78至S77的跳数为7,此时第一指定跳数为7。
S78基于之前已生成的业务域701的业务域拓扑信息计算从本节点S78沿着RPR700中1子环的方向至RPR700中属于业务域701的其他节点的最大跳数(记为第二指定跳数),RPR700中S72、S72均属于业务域701,沿着RPR700中1子环的方向,S78至S77的跳数为1,S78至S72的跳数为6,此时第二指定跳数为6。
按照图5所示流程,S78将RPR700上的S71、S72、S73、S74之间的拓扑连接划分为第一子RPR,将RPR700上的S75、S76、S77之间的拓扑连接划分为第二子RPR。
S78基于之前已生成的业务域701的业务域拓扑信息计算从本节点S78沿着RPR700中0子环的方向至第一子RPR中属于业务域701的其他节点的最大跳数Maxhop1。如上描述,第一子RPR中S72属于业务域701,此时,Maxhop1可为从节点S78沿着RPR700中0子环的方向至节点S72的跳数,具体为2。
S78基于之前已生成的业务域701的业务域拓扑信息计算从本节点S78沿着RPR700中1子环的方向至第二子RPR中属于业务域701的其他节点的最大跳数Maxhop2。第二子RPR中S77属于业务域701,此时,Maxhop2可为从节点S78沿着RPR700中1子环的方向至节点S77的跳数,具体为1。
S78对Maxhop1、Maxhop2执行求和计算,得到的结果称为第五指定跳数。此时第五指定跳数为3。
S78比较第一指定跳数、第二指定跳数、第五指定跳数,发现第五指定跳数最小。基于第五指定跳数最小,S78确定报文a2在RPR700广播的广播方式为:沿着RPR700中0子环的方向广播,且报文a2的TTL为Maxhop1(此时取值为2),沿着RPR700中1子环的方向广播,且报文a2的TTL为Maxhop2(此时取值为1)。图7的虚线02示出了报文a2的广播路径。
以上对实施例进行了描述。
下面对上述步骤403进行描述:
参见图6,图6为本申请提供的步骤403实现流程图。如图6所示,该流程可包括:
步骤601,若所述第三指定跳数不为指定值且所述第四指定跳数为指定值,则执行步骤602,若所述第三指定跳数为指定值且所述第四指定跳数不为指定值,则执行步骤603,若所述第三指定跳数、所述第四指定跳数均不为指定值,则执行步骤604。
这里的指定值比如为0。
步骤602,确定所述广播方式为:沿着所述RPR中0子环的方向广播,且所述报文的TTL为所述第三指定跳数。
步骤603,确定所述广播方式为沿着所述RPR中1子环的方向广播,且所述报文的TTL为所述第四指定跳数。
步骤604,确定所述广播方式为:沿着所述RPR中0子环的方向广播,且所述报文的TTL为第三指定跳数,沿着所述RPR中1子环的方向广播,且所述报文的TTL为第四指定跳数。
图6所示流程是在RPR的环状态为开环的状态下执行的。比较简单,这里不再举例描述。
至此,完成图6所示流程。
以上对本申请提供的方法进行了描述,下面对本申请提供的装置进行描述:
参见图8,图8为本申请提供的装置结构图。该装置应用于RPR中的节点,包括:
报文处理芯片,用于接收报文,所述报文为广播报文或者未知报文;
RPR处理芯片,用于对所述报文执行RPR处理;
所述报文处理芯片还用于当本节点处于所述报文所属的第一业务域、且当所述RPR处理芯片对所述报文执行的RPR处理为将所述报文插入至所述RPR时,依据所述第一业务域对应的第一业务域拓扑信息确定所述报文在所述RPR中广播的广播方式,按照所述广播方式发送所述报文,所述第一业务域拓扑信息包含本节点、所述RPR中处于第一业务域的其他节点之间的拓扑结构关系。
作为一个实施例,本申请中,报文处理芯片与RPR处理芯片可通过ETH口相连。
作为一个实施例,本申请中的报文处理芯片可为目前常用的交换(Switch)芯片。RPR处理芯片可为现场可编程门阵列(FPGA:Field Programmable Gate Array)。
作为一个实施例,所述报文处理芯片依据第一业务域对应的第一业务域拓扑信息确定所述报文在所述RPR中广播的广播方式包括:
检查所述RPR的环状态是闭环还是开环;
若是闭环,则依据所述RPR中节点总数量T、第一指定跳数以及第二指定跳数确定所述报文在所述RPR中广播的广播方式;第一指定跳数是指基于所述第一业务域拓扑信息计算出的从本节点沿着所述RPR中0子环的方向至所述第一业务域中其他节点的最大跳数,第二指定跳数是指基于所述第一业务域拓扑信息计算出的从本节点沿着所述RPR中1子环的方向至所述第一业务域中其他节点的最大跳数;
若是开环,则依据第三指定跳数以及第四指定跳数确定所述报文在所述RPR中广播的广播方式;
其中,若从本节点沿着所述RPR中0子环的方向至开环处不存在属于第一业务域的节点,第三指定跳数为指定值,否则,第三指定跳数是指基于所述第一业务域拓扑信息计算出的从本节点沿着所述RPR中0子环的方向至所述第一业务域中其他节点的最大跳数;
若从本节点沿着所述RPR中1子环的方向至开环处不存在属于第一业务域的节点,则所述第四指定跳数为指定值,否则,第四指定跳数是指基于所述第一业务域拓扑信息计算出的从本节点沿着所述RPR中1子环的方向至所述第一业务域中其他节点的最大跳数。
作为一个实施例,所述报文处理芯片依据所述RPR中节点总数量T、第一指定跳数以及第二指定跳数确定所述报文在所述RPR中广播的广播方式包括:
以本节点为界将所述RPR划分为第一子RPR、第二子RPR,所述第一子RPR包含沿着所述RPR中0子环方向的N个节点,所述第二子RPR包含沿着所述RPR中1子环方向的M个节点,其中,若T为奇数,N与M相等,若T为偶数,N等于M与1之和;
基于所述第一业务域拓扑信息计算从本节点沿着所述RPR中0子环的方向至所述第一子RPR中属于第一业务域的其他节点的最大跳数Maxhop1;
基于所述第一业务域拓扑信息计算从本节点沿着所述RPR中1子环的方向至所述第二子RPR中属于第一业务域的其他节点的最大跳数Maxhop2;
比较所述第一指定跳数、第二指定跳数、以及由所述Maxhop1与Maxhop2进行求和计算得到的第五指定跳数,若所述第一指定跳数取值最小,则确定所述广播方式为:沿着所述RPR中0子环的方向广播,且所述报文的生存时间TTL为第一指定跳数;若所述第二指定跳数取值最小,则确定所述广播方式为:沿着所述RPR中1子环的方向广播,且所述报文的TTL为第二指定跳数;若所述第五指定跳数取值最小,则确定所述广播方式为:沿着所述RPR中0子环的方向广播且所述报文的TTL为Maxhop1,沿着所述RPR中1子环的方向广播,且所述报文的TTL为Maxhop2。
作为一个实施例,所述报文处理芯片依据第三指定跳数以及第四指定跳数确定报文在所述RPR中广播的广播方式包括:
若所述第三指定跳数不为指定值且所述第四指定跳数为指定值,则确定所述广播方式为:沿着所述RPR中0子环的方向广播,且所述报文的TTL为所述第三指定跳数;若所述第三指定跳数为指定值且所述第四指定跳数不为指定值,则确定所述广播方式为沿着所述RPR中1子环的方向广播,且所述报文的TTL为所述第四指定跳数;若所述第三指定跳数、所述第四指定跳数均不为指定值,则确定所述广播方式为:沿着所述RPR中0子环的方向广播,且所述报文的TTL为第三指定跳数,沿着所述RPR中1子环的方向广播,且所述报文的TTL为第四指定跳数。
作为一个实施例,所述RPR处理芯片还用于当所述报文是来自所述RPR其他节点转发至本节点,则检查本节点是否处于所述报文的源MAC地址所属的业务域;
所述报文处理芯片在所述RPR处理芯片检查出本节点不处于所述报文的源MAC地址所属的业务域时,禁止对所述报文进行下环操作,直接将所述报文转发至下一跳。
作为一个实施例,本申请中,所述报文处理芯片还用于向同一RPR中的其他节点通告本节点所属业务域的业务域信息,以及接收所述RPR中其他节点通告的业务域信息;所述业务域信息至少包括:业务域的标识、业务域所属的虚拟局域网VLAN;其中,同一业务域属于同一VLAN。
所述RPR处理芯片还用于依据其他节点通告的业务域信息为本节点所属的每一业务域生成对应的业务域拓扑信息。
至此,完成图8所示装置结构图。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (10)
1.一种应用于弹性分组环RPR中的报文广播方法,其特征在于,该方法应用于RPR中的节点,包括:
向同一RPR中的其他节点通告本节点所属业务域的业务域信息;
接收所述RPR中其他节点通告的业务域信息;
依据其他节点通告的业务域信息为本节点所属的每一业务域生成对应的业务域拓扑信息;
所述业务域信息至少包括:业务域的标识、业务域所属的虚拟局域网VLAN;其中,同一业务域属于同一VLAN;
接收报文,所述报文为广播报文或者未知报文;
若本节点处于所述报文所属的第一业务域、且本节点需将所述报文插入至所述RPR,则依据所述第一业务域对应的第一业务域拓扑信息确定所述报文在所述RPR中广播的广播方式;所述第一业务域拓扑信息包含本节点、所述RPR中处于第一业务域的其他节点之间的拓扑结构关系;
按照所述广播方式发送所述报文。
2.根据权利要求1所述的方法,其特征在于,所述依据第一业务域对应的第一业务域拓扑信息确定所述报文在所述RPR中广播的广播方式包括:
检查所述RPR的环状态是闭环还是开环;
若是闭环,则依据所述RPR中节点总数量T、第一指定跳数以及第二指定跳数确定所述报文在所述RPR中广播的广播方式;第一指定跳数为基于所述第一业务域拓扑信息计算出的从本节点沿着所述RPR中0子环的方向至所述第一业务域中其他节点的最大跳数,第二指定跳数为基于所述第一业务域拓扑信息计算出的从本节点沿着所述RPR中1子环的方向至所述第一业务域中其他节点的最大跳数;
若是开环,则依据第三指定跳数以及第四指定跳数确定所述报文在所述RPR中广播的广播方式;其中,当从本节点沿着所述RPR中0子环的方向至开环处不存在属于第一业务域的节点时第三指定跳数为指定值,否则第三指定跳数为基于所述第一业务域拓扑信息计算出的从本节点沿着所述RPR中0子环的方向至所述第一业务域中其他节点的最大跳数;当从本节点沿着所述RPR中1子环的方向至开环处不存在属于第一业务域的节点时第四指定跳数为指定值,否则第四指定跳数为基于所述第一业务域拓扑信息计算出的从本节点沿着RPR中1子环的方向至所述第一业务域中其他节点的最大跳数。
3.根据权利要求2所述的方法,其特征在于,所述依据所述RPR中节点总数量T、第一指定跳数以及第二指定跳数确定所述报文在所述RPR中广播的广播方式包括:
以本节点为界将所述RPR划分为第一子RPR、第二子RPR,所述第一子RPR包含沿着所述RPR中0子环方向的N个节点,所述第二子RPR包含沿着所述RPR中1子环方向的M个节点,其中,若T为奇数,N与M相等,若T为偶数,N等于M与1之和;
基于所述第一业务域拓扑信息计算从本节点沿着所述RPR中0子环的方向至所述第一子RPR中属于第一业务域的其他节点的最大跳数Maxhop1;
基于所述第一业务域拓扑信息计算从本节点沿着所述RPR中1子环的方向至所述第二子RPR中属于第一业务域的其他节点的最大跳数Maxhop2;
比较所述第一指定跳数、第二指定跳数、以及由所述Maxhop1与Maxhop2进行求和计算得到的第五指定跳数,若所述第一指定跳数取值最小,则确定所述广播方式为:沿着所述RPR中0子环的方向广播,且所述报文的生存时间TTL为第一指定跳数;若所述第二指定跳数取值最小,则确定所述广播方式为:沿着所述RPR中1子环的方向广播,且所述报文的TTL为第二指定跳数;若所述第五指定跳数取值最小,则确定所述广播方式为:沿着所述RPR中0子环的方向广播且所述报文的TTL为Maxhop1,沿着所述RPR中1子环的方向广播,且所述报文的TTL为Maxhop2。
4.根据权利要求2所述的方法,其特征在于,所述依据第三指定跳数以及第四指定跳数确定报文在所述RPR中广播的广播方式包括:
若所述第三指定跳数不为指定值且所述第四指定跳数为指定值,则确定所述广播方式为:沿着所述RPR中0子环的方向广播,且所述报文的TTL为所述第三指定跳数;若所述第三指定跳数为指定值且所述第四指定跳数不为指定值,则确定所述广播方式为沿着所述RPR中1子环的方向广播,且所述报文的TTL为所述第四指定跳数;若所述第三指定跳数、所述第四指定跳数均不为指定值,则确定所述广播方式为:沿着所述RPR中0子环的方向广播,且所述报文的TTL为第三指定跳数,沿着所述RPR中1子环的方向广播,且所述报文的TTL为第四指定跳数。
5.根据权利要求1所述的方法,其特征在于,若所述报文是来自所述RPR其他节点转发至本节点,则该方法进一步包括:
检查本节点是否处于所述报文的源MAC地址所属的业务域;
如果否,禁止对所述报文进行下环操作,直接将所述报文转发至下一跳。
6.一种应用于弹性分组环RPR中的报文广播装置,其特征在于,该装置应用于RPR中的节点,包括:
报文处理芯片,用于接收报文,所述报文为广播报文或者未知报文;
RPR处理芯片,用于对所述报文执行RPR处理;
所述报文处理芯片还用于当本节点处于所述报文所属的第一业务域、且当所述RPR处理芯片对所述报文执行的RPR处理为将所述报文插入至所述RPR时,依据所述第一业务域对应的第一业务域拓扑信息确定所述报文在所述RPR中广播的广播方式,按照所述广播方式发送所述报文,所述第一业务域拓扑信息包含本节点、所述RPR中处于第一业务域的其他节点之间的拓扑结构关系;
所述报文处理芯片还用于向同一RPR中的其他节点通告本节点所属业务域的业务域信息,接收所述RPR中其他节点通告的业务域信息;依据其他节点通告的业务域信息为本节点所属的每一业务域生成对应的业务域拓扑信息;所述业务域信息至少包括:业务域的标识、业务域所属的虚拟局域网VLAN;其中,同一业务域属于同一VLAN。
7.根据权利要求6所述的装置,其特征在于,所述报文处理芯片依据第一业务域对应的第一业务域拓扑信息确定所述报文在所述RPR中广播的广播方式包括:
检查所述RPR的环状态是闭环还是开环;
若是闭环,则依据所述RPR中节点总数量T、第一指定跳数以及第二指定跳数确定所述报文在所述RPR中广播的广播方式;第一指定跳数为基于所述第一业务域拓扑信息计算出的从本节点沿着所述RPR中0子环的方向至所述第一业务域中其他节点的最大跳数,第二指定跳数为基于所述第一业务域拓扑信息计算出的从本节点沿着所述RPR中1子环的方向至所述第一业务域中其他节点的最大跳数;
若是开环,则依据第三指定跳数以及第四指定跳数确定所述报文在所述RPR中广播的广播方式;其中,当从本节点沿着所述RPR中0子环的方向至开环处不存在属于第一业务域的节点时第三指定跳数为指定值,否则第三指定跳数为基于所述第一业务域拓扑信息计算出的从本节点沿着所述RPR中0子环的方向至所述第一业务域中其他节点的最大跳数;当从本节点沿着所述RPR中1子环的方向至开环处不存在属于第一业务域的节点时第四指定跳数为指定值,否则第四指定跳数为基于所述第一业务域拓扑信息计算出的从本节点沿着RPR中1子环的方向至所述第一业务域中其他节点的最大跳数。
8.根据权利要求7所述的装置,其特征在于,所述报文处理芯片依据所述RPR中节点总数量T、第一指定跳数以及第二指定跳数确定所述报文在所述RPR中广播的广播方式包括:
以本节点为界将所述RPR划分为第一子RPR、第二子RPR,所述第一子RPR包含沿着所述RPR中0子环方向的N个节点,所述第二子RPR包含沿着所述RPR中1子环方向的M个节点,其中,若T为奇数,N与M相等,若T为偶数,N等于M与1之和;
基于所述第一业务域拓扑信息计算从本节点沿着所述RPR中0子环的方向至所述第一子RPR中属于第一业务域的其他节点的最大跳数Maxhop1;
基于所述第一业务域拓扑信息计算从本节点沿着所述RPR中1子环的方向至所述第二子RPR中属于第一业务域的其他节点的最大跳数Maxhop2;
比较所述第一指定跳数、第二指定跳数、以及由所述Maxhop1与Maxhop2进行求和计算得到的第五指定跳数,若所述第一指定跳数取值最小,则确定所述广播方式为:沿着所述RPR中0子环的方向广播,且所述报文的生存时间TTL为第一指定跳数;若所述第二指定跳数取值最小,则确定所述广播方式为:沿着所述RPR中1子环的方向广播,且所述报文的TTL为第二指定跳数;若所述第五指定跳数取值最小,则确定所述广播方式为:沿着所述RPR中0子环的方向广播且所述报文的TTL为Maxhop1,沿着所述RPR中1子环的方向广播,且所述报文的TTL为Maxhop2。
9.根据权利要求7所述的装置,其特征在于,所述报文处理芯片依据第三指定跳数以及第四指定跳数确定报文在所述RPR中广播的广播方式包括:
若所述第三指定跳数不为指定值且所述第四指定跳数为指定值,则确定所述广播方式为:沿着所述RPR中0子环的方向广播,且所述报文的TTL为所述第三指定跳数;若所述第三指定跳数为指定值且所述第四指定跳数不为指定值,则确定所述广播方式为沿着所述RPR中1子环的方向广播,且所述报文的TTL为所述第四指定跳数;若所述第三指定跳数、所述第四指定跳数均不为指定值,则确定所述广播方式为:沿着所述RPR中0子环的方向广播,且所述报文的TTL为第三指定跳数,沿着所述RPR中1子环的方向广播,且所述报文的TTL为第四指定跳数。
10.根据权利要求6所述的装置,其特征在于,所述RPR处理芯片还用于当所述报文是来自所述RPR其他节点转发至本节点,则检查本节点是否处于所述报文的源MAC地址所属的业务域;
所述报文处理芯片在所述RPR处理芯片检查出本节点不处于所述报文的源MAC地址所属的业务域时,禁止对所述报文进行下环操作,直接将所述报文转发至下一跳。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810453903.3A CN108347385B (zh) | 2018-05-14 | 2018-05-14 | 应用于弹性分组环rpr中的报文广播方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810453903.3A CN108347385B (zh) | 2018-05-14 | 2018-05-14 | 应用于弹性分组环rpr中的报文广播方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108347385A CN108347385A (zh) | 2018-07-31 |
CN108347385B true CN108347385B (zh) | 2021-05-28 |
Family
ID=62955614
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810453903.3A Active CN108347385B (zh) | 2018-05-14 | 2018-05-14 | 应用于弹性分组环rpr中的报文广播方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108347385B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1929439A (zh) * | 2005-09-07 | 2007-03-14 | 杭州华为三康技术有限公司 | 弹性分组环网络中基于按域分割的数据传输方法 |
CN101087243A (zh) * | 2006-06-05 | 2007-12-12 | 华为技术有限公司 | 在弹性分组环中限制多播范围的方法及装置 |
CN102299840A (zh) * | 2010-06-25 | 2011-12-28 | 深圳市邦彦信息技术有限公司 | 基于弹性分组环的组播传输路径生成算法 |
CN104579982A (zh) * | 2015-01-06 | 2015-04-29 | 杭州华三通信技术有限公司 | 一种二层组播数据报文转发方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4887897B2 (ja) * | 2006-05-12 | 2012-02-29 | 富士通株式会社 | パケット伝送装置、パケット転送方法及びパケット伝送システム |
-
2018
- 2018-05-14 CN CN201810453903.3A patent/CN108347385B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1929439A (zh) * | 2005-09-07 | 2007-03-14 | 杭州华为三康技术有限公司 | 弹性分组环网络中基于按域分割的数据传输方法 |
CN101087243A (zh) * | 2006-06-05 | 2007-12-12 | 华为技术有限公司 | 在弹性分组环中限制多播范围的方法及装置 |
CN102299840A (zh) * | 2010-06-25 | 2011-12-28 | 深圳市邦彦信息技术有限公司 | 基于弹性分组环的组播传输路径生成算法 |
CN104579982A (zh) * | 2015-01-06 | 2015-04-29 | 杭州华三通信技术有限公司 | 一种二层组播数据报文转发方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108347385A (zh) | 2018-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1983694B1 (en) | Method and device for transmitting packet in resilient packet intersect ring | |
EP2104994B1 (en) | Hash-based multi-homing | |
KR101503629B1 (ko) | 주소 기반 캐리어 네트워크의 구별 전달 | |
US11689452B2 (en) | Method for forwarding service data, network device, and network system | |
US8391180B2 (en) | Method to develop hierarchical ring based tree for unicast and/or multicast traffic | |
JP2021522745A (ja) | マルチキャストデータ送信方法、関連装置、およびシステム | |
EP3340550B1 (en) | Service message multicast method and device | |
CN102055665B (zh) | 广播上或nbma上的ospf点到多点模式 | |
EP3934183B1 (en) | Service function chain sfc-based communication methods, and apparatuses | |
US20100110881A1 (en) | Method for protection switching in ethernet ring network | |
US20080080535A1 (en) | Method and system for transmitting packet | |
US9960992B2 (en) | Systems and methods for routing data in a network | |
US20100254258A1 (en) | Ring-based packet transmitting method, network system and node equipment | |
CN102396193A (zh) | 通过分组交换提供商网络的客户端数据传输方法 | |
CN102970231B (zh) | 组播流转发实现方法和路由网桥(rb) | |
CA2748703A1 (en) | Method and system for ring topology discovery and forwarding database flush nullification | |
EP3182645B1 (en) | Network protection switching method, network device and storage medium | |
US20140006845A1 (en) | Method and system for managing a communication network | |
CN108347385B (zh) | 应用于弹性分组环rpr中的报文广播方法和装置 | |
CN104022908A (zh) | 用于spb网络的区域管理方法和区域管理装置 | |
CN113472663B (zh) | 一种报文转发方法及设备 | |
CN111510364B (zh) | 一种报文转发方法和系统 | |
CN114079629B (zh) | 最大传输单元mtu确定方法、装置、设备以及存储介质 | |
Yongjun et al. | Ring Network Technology for Carrier Ethernet | |
Lian et al. | Resilient Ethernet ring for metropolitan area networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |