一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于发送组播报文的方法和装置与流程

2021-11-15 17:57:00 来源:中国专利 TAG:

用于发送组播报文的方法和装置
1.本技术要求于2020年5月11日提交国家知识产权局、申请号为202010393103.4、发明名称为“一种组播转发方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本技术中。
技术领域
2.本技术涉及通信技术领域,更具体地,涉及用于发送组播报文的方法和装置。


背景技术:

3.位索引显式复制(bit index explicit replication,简称为bier)是一种常用的组播架构。互联网工程任务组(internet engineering task force,简称为ietf)标准中定义了bier头封装格式以及封装方法。bier封装可以例如基于多协议标签交换(multi-protocol label switching,简称为mpls)、基于以太网和基于因特网协议第6版(internet protocol version 6,简称为ipv6)等。基于ipv6的bier(或bierv6)在跨自治系统(autonomous system,简称为as)域的部署方面具有较好的灵活性。
4.在基于bierv6的跨域组播场景中,组播源可以与骨干网络的运营商边缘(provider edge,简称为pe)设备通信,多个组播接收者可以与城域网络的多个pe设备通信。与组播源通信的pe设备可以通过骨干网络的自治系统边界路由器(autonomous system boundary router,简称为asbr)向与组播接收者通信的pe设备发送组播报文。基于bierv6的组播场景中,任一pe设备可以被分配位转发路由器(bit forwarding router,简称为bfr)标识(bfr-id)。当与组播接收者通信的pe设备处于不同的as域内,且需要从某个组播源接收组播报文时,与组播源通信的pe设备需要复制多份组播报文,并向与组播接收者通信的pe设备所在的as域发送组播报文,会存在浪费网络资源的问题。


技术实现要素:

5.本技术提供了一种用于发送组播报文的方法和装置,能够节省网络资源。
6.第一方面,提供了一种用于发送组播报文的方法。该方法包括:中间设备基于来自入口设备的组播报文,获取组播报文对应的区域的标识;中间设备基于区域的标识和转发表项,获得下一跳设备的地址,转发表项包含区域的标识以及下一跳设备的地址;中间设备基于下一跳设备的地址发送组播报文。
7.上述方法中,中间设备作为一个或多个出口设备与入口设备之间的中转节点,可在接收到了入口设备组播报文后,根据确定的区域的标识来转发组播报文。该方法不会再如通常的跨域组播场景中从与组播源通信的pe设备开始进行组播报文复制和转发,而是根据区域标识定位作为中转节点的中间设备,由中间设备发送给下一跳设备,再由下一跳设备实现组播报文复制和转发操作,节省了入口设备与中间设备之间的流量(较少地占用网络资源来发送复制的组播报文)。可选地,当下一跳设备不是出口设备时,还可进一步节省中间设备与下一跳设备之间的流量(较少地占用网络资源来发送复制的组播报文)。
8.在一种可能的实现方式中,所述区域包含一个或多个as域。下一跳设备可以是出口设备,或者是出口设备所在的as域的asbr。出口设备是能够与组播接收者通信的边缘设备,也可称为位转发出口路由器(bit forwarding egress router,bfer)。入口设备可以是与组播源通信的边缘设别,也可称为位转发入口路由器(bit forwarding ingress router,bfir)。中间设备和入口设备为bier跨域网络场景中的设备。
9.在一种可能的实现方式中,组播报文包括区域的标识,中间设备基于来自入口设备的组播报文,获取组播报文对应的区域的标识包括:中间设备从组播报文中获取区域的标识。
10.在一种可能的实现方式中,组播报文包括中间设备的标识,中间设备基于来自入口设备的组播报文,获取组播报文对应的区域的标识包括:中间设备基于组播报文中的中间设备的标识,获取与中间设备的标识对应的区域的标识。该实现方式中,中间设备上可预先配置一对应关系,该对应关系包括中间设备的标识和区域的标识。这种方式具有更佳的兼容性,对组播报文无需进行过多的改进或处理。
11.在一种可能的实现方式中,该方法还包括:中间设备接收下一跳设备发送的下一跳设备的地址和下一跳设备所属的区域的标识;中间设备基于区域的标识和下一跳设备的地址,获得转发表项。
12.在一种可能的实现方式中,该方法还包括:中间设备接收下一跳设备发送的下一跳设备的标识和下一跳设备所属的区域的标识;中间设备基于下一跳设备的标识,获得下一跳设备的地址;中间设备基于区域的标识和下一跳设备的地址,获得转发表项。
13.在一种可能的实现方式中,该方法还包括:中间设备接收下一跳设备发送的目的as域内位转发路由器bfr标识的范围,目的as域为区域包含的下一跳设备所属的as域,转发表项还包括目的as域内bfr标识的范围。
14.在一种可能的实现方式中,组播报文还包括bfr标识的范围,该方法还包括:中间设备基于区域的标识和bfr标识的范围,确定转发表项。
15.在一种可能的实现方式中,该方法还包括:中间设备向入口设备发送中间设备的地址和中间设备所属的区域的标识。
16.在一种可能的实现方式中,该方法还包括:中间设备向入口设备发送中间设备所属as域内bfr标识的范围,中间设备所属as域包含于中间设备所属的区域。
17.第二方面,提供了一种用于发送组播报文的方法。该方法包括:入口设备获取接收到的组播报文对应的区域的标识;入口设备基于区域的标识和转发表项,获得用于将组播报文转发至区域的中间设备的地址,转发表项包括区域的标识以及中间设备的地址;入口设备基于中间设备的地址发送组播报文。
18.上述方法中,入口设备可根据区域的标识,将组播报文发送给中间设备,而不会再如通常的跨域组播场景中进行组播报文复制和转发,节省了其与中间设备之间的流量(较少地占用网络资源来发送复制的组播报文)。中间设备和入口设备为bier跨域网络场景中的设备。
19.在一种可能的实现方式中,该方法还包括:入口设备接收中间设备发送的中间设备的地址和区域的标识;入口设备基于中间设备的地址和区域的标识,获得转发表项。
20.在一种可能的实现方式中,该方法还包括:入口设备接收中间设备发送的中间设
备的标识和区域的标识;入口设备基于中间设备的标识,确定中间设备的地址;入口设备基于中间设备的地址和区域的标识,获得转发表项。
21.在一种可能的实现方式中,该方法还包括:入口设备接收中间设备发送的目的自治系统as域内bfr标识的范围,目的as域为区域包含的组播报文需要发送到的as域,转发表项还包括目的as域内bfr标识的范围。
22.在一种可能的实现方式中,该方法还包括:入口设备基于目的as域内bfr标识的范围和区域的标识,确定转发表项。
23.在一种可能的实现方式中,组播报文中包含区域的标识,入口设备获取接收到的组播报文对应的区域的标识包括:入口设备从组播报文获取区域的标识;或者组播报文中包含中间设备的标识,组播报文中包含区域的标识,入口设备获取接收到的组播报文对应的区域的标识包括:入口设备基于组播报文中的中间设备的标识,获取与中间设备的标识对应的区域的标识。
24.在第三方面,提供了一种用于生成转发表项的方法。该方法包括:中间设备从下一跳设备获取所述下一跳设备所属的区域的标识和所述下一跳设备的地址;中间设备基于区域的标识和下一跳设备的地址获得转发表项。
25.上述方法中,中间设备可根据从下一跳设备获取的参数来获得用于转发组播报文的转发表项,降低了网络结构发生变动后进行手动配置的复杂性,可以更灵活快捷地刷新用于转发组播报文的表项。
26.在一种可能的实现方式中,所述中间设备从下一跳设备获取所述下一跳设备所属的区域的标识和所述下一跳设备的地址包括:所述中间设备接收所述下一跳设备发送的所述下一跳设备的地址和所述区域的所述标识。
27.在一种可能的实现方式中,所述中间设备从下一跳设备获取所述下一跳设备所属的区域的标识和所述下一跳设备的地址包括:所述中间设备接收所述下一跳设备发送的所述下一跳设备的标识和所述区域的所述标识;所述中间设备基于下一跳设备的标识,获得所述下一跳设备的地址。其中,所述下一跳设备的标识可以是除地址之外的其它用于标识所述下一跳设备的信息或参数。中间设备可根据预设算法将所述下一跳设备的标识转换为所述下一跳设备的地址,或者中间设备可根据一对应关系和所述下一跳设备的标识,获得所述下一跳设备的地址,该对应关系包括下一跳设备的标识和下一跳设备的地址。
28.在一种可能的实现方式中,该方法还包括:中间设备接收下一跳设备发送的目的as域内位转发路由器bfr标识的范围,目的as域为区域包含的下一跳设备所属的as域,转发表项还包括目的as域内bfr标识的范围。
29.上述方法中,中间设备在生成了转发表项后,可利用转发表项发送来自入口设备的组播报文,节省了入口设备与中间设备之间的流量(较少地占用网络资源来发送复制的组播报文)。可选地,当下一跳设备不是出口设备时,还可进一步节省中间设备与下一跳设备之间的流量(较少地占用网络资源来发送复制的组播报文)。
30.在第四方面,提供了一种用于生成转发表项的方法。该方法包括:入口设备从中间设备获取所述中间设备的地址和区域的标识;入口设备基于中间设备的地址和区域的标识,获得转发表项。
31.上述方法中,入口设备可根据从中间设备获取的参数来获得用于转发组播报文的
转发表项,降低了网络结构发生变动后进行手动配置的复杂性,可以更灵活快捷地刷新用于转发组播报文的表项。
32.在一种可能的实现方式中,入口设备从中间设备获取所述中间设备的地址和区域的标识包括:所述入口设备接收所述中间设备发送的所述中间设备的地址和所述区域的所述标识。
33.在一种可能的实现方式中,入口设备从中间设备获取所述中间设备的地址和区域的标识包括:所述入口设备接收所述中间设备发送的所述中间设备的标识和所述区域的所述标识;所述入口设备根据所述中间设备的标识,确定所述中间设备的地址。其中,所述中间设备的标识可以是除地址之外的其它用于标识所述中间设备的信息或参数。入口设备可根据预设算法将所述中间设备的标识转换为所述中间设备的地址,或者入口设备可根据一对应关系和所述中间设备的标识,获得所述中间设备的地址,该对应关系包括中间跳设备的标识和中间跳设备的地址。
34.在一种可能的实现方式中,该方法还包括:入口设备接收中间设备发送的目的自治系统as域内bfr标识的范围,目的as域为区域包含的组播报文需要发送到的as域,转发表项还包括目的as域内bfr标识的范围。
35.上述方法中,入口设备在生成了转发表项后,可利用转发表项向中间设备发送组播报文,节省了入口设备与中间设备之间的流量(较少地占用网络资源来发送复制的组播报文)。
36.第五方面,提供了一种用于发送组播报文的装置,该装置设置于中间设备。该装置包括用于实现上述第一方面或第一方面任一种可能实现方式提供的方法对应功能的模块;或者该装置包括用于实现上述第三方面或第三方面任一种可能实现方式提供的方法对应功能的模块。
37.第六方面,提供了一种用于发送组播报文的装置,该装置设置于入口设备。装置包括用于实现上述第二方面或第二方面任一种可能实现方式提供的方法对应功能的模块;或者该装置包括用于实现上述第四方面或第四方面任一种可能实现方式提供的方法对应功能的模块。。
38.第七方面,提供了一种设备。该设备包括处理器和存储指令的存储器,该指令在被处理器执行时使该设备执行上述第一方面或第一方面任一种可能实现方式提供的方法;或者该指令在被处理器执行时使该设备执行上述第二方面或第二方面任一种可能实现方式提供的方法;或者该指令在被处理器执行时使该设备执行上述第三方面或第三方面任一种可能实现方式提供的方法;或者该指令在被处理器执行时使该设备执行上述第四方面或第四方面任一种可能实现方式提供的方法。
39.第八方面,提供了一种计算机可读存储介质,其上存储有指令,该指令在由设备中的处理器执行时,使设备执行上述第一方面或第一方面任一种可能实现方式提供的方法;或者该指令在被处理器执行时使该设备执行上述第二方面或第二方面任一种可能实现方式提供的方法;或者该指令在被处理器执行时使该设备执行上述第三方面或第三方面任一种可能实现方式提供的方法;或者该指令在被处理器执行时使该设备执行上述第四方面或第四方面任一种可能实现方式提供的方法。
40.第九方面,提供了一种系统,所述系统包括第五方面所述的装置和第六方面所述
的装置。
附图说明
41.图1示出了本技术实施例提供的一种网络场景示意图;
42.图2示出了本技术实施例提供的组播报文的交互流程示意图;
43.图3示出了本技术实施例提供的一种组播场景;
44.图4示出了本技术实施例提供的另一种组播场景;
45.图5示出了本技术实施例提供的另一种组播场景;
46.图6示出了本技术实施例提供的用于发送组播报文的装置的结构示意图;
47.图7示出了本技术实施例提供的用于发送组播报文的装置的结构示意图;以及
48.图8示出了本技术实施例提供的设备的结构示意图。
具体实施方式
49.本技术实施例中的术语“入口设备”是指跨域组播过程中靠近组播源且能够与组播源通信的设备。作为示例,入口设备可以包括组播源所在的as域中的pe设备。入口设备可以位于骨干网络中,也可以位于城域网络中。在基于bier进行跨域组播的实施例中,入口设备可以对来自组播源的组播报文进行bier封装。本技术实施例中的术语“出口设备”是指跨域组播过程中位于靠近组播接收者侧能够与组播接收者通信的设备。作为示例,出口设备可以包括组播接收者通信的或者所属的as域中的pe设备。出口设备可以位于城域网络中。在基于bier进行跨域组播的实施例中,出口设备可以对接收到的组播报文进行bier解封装。本技术实施例中的术语“中间设备”是指跨域组播过程中在入口设备和出口设备之间用于实现组播转发的设备。作为示例,中间设备可以包括骨干网络中的asbr。中间设备也可以位于城域网络中。本技术实施例中的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”。其他术语的相关定义将在下文描述中给出。尽管本文可以使用术语“第一”和“第二”等来描述各种元件,但这些元件不应受到这些术语的限制。这些术语仅用于区分一个元件和另一个元件。如本文所用,术语“和/或”包括一个或多个所列术语的任何和所有组合。
50.在通常的层次化组播中,从骨干网络向城域网络进行bierv6跨域转发时,各pe设备可以通过bfr-id来区分。pe设备的bfr-id是统一分配的,因此所支持的pe设备的数目受限于bfr-id值的位数。例如,如果bfr-id值为16位,则无法支持多于65535个pe设备。在通常的对等组播中,pe设备的bfr-id可以独立分配,因此可以支持较多pe设备。然而,入口设备需要向所有as域转发组播报文。特别是随着网络扩容,会增加越来越多的as域,即使某个as域的pe设备数目较少,入口设备也需要向该as域进行转发,这会造成巨大的流量复制浪费。
51.本技术实施例提出了一种用于发送组播报文的方法。该方法中,一个区域包括一个或多个as域。中间设备获得与区域对应的一个或多个转发表项,任一转发表项包括区域的标识(identifier,id)和该区域中的各as域的关联地址。该地址可以是与as域相关联的任意适当设备的地址。例如,可以是as域的中间设备或出口设备的地址,或者可以是在去往as域的路径上位于中间设备下游的某个设备的地址。中间设备从入口设备接收到组播报文
2,区域120-2包括的as域115-3的边缘设备为下一跳设备140-3,下一跳设备140-2的地址表示为“ip地址3a”,下一跳设备140-3的地址表示为“ip地址4a”。
57.下一跳设备140-1、140-2
……
140-n在以下还被称为设备140。在一种可能的实现方式中,设备140可以为其所属的as域的asbr。设备140可以将组播报文转发至其所属的在as域包括的一个或多个出口设备(未示出)。出口设备可以是其所属的as域内包括的pe设备。在另一种可能的实现方式中,设备140可以为其所属的as域的出口设备。中间设备110可以将组播报文直接转发给as域的出口设备。在又一种可能的实现方式中,当入口设备105和中间设备110位于城域网的同一as域中时,下一跳设备140可以为骨干网的as域中的asbr。
58.在图1所示的示例中,转发表125还包括列145,其存储的是138列的参数所标识的设备所属的as域对应的bfr标识(也称为“bfr-id”)的范围。如图1所示,在列145中,“ip地址2a”所标识的下一跳设备140-1所属的as域115-1对应的bfr-id范围为1~256,即as域115-1中的位转发出口路由器(bfer)(也称为出口设备)可被分配的bfr-id范围为1~256。在列145中,“ip地址3a”所标识的下一跳设备140-2所属的as域115-2对应的bfr-id范围为1~44,即as域115-2中的bfer可被分配的bfr-id范围为1~44。在列145中,“ip地址4a”所标识的下一跳设备140-3所属的as域115-3对应的bfr-id范围为45~144,即as域115-3中的bfer可被分配的bfr-id范围为45~144。通过bfr-id的范围,同一区域120-2中的as域115-2和as域115-3可以被区分开来。其中,记录bfr-id范围的列145是可选的。对于只包括一个as域115-1的区域120-1,与该区域120-1对应的转发表项130-1可以不包括bfr-id列145。
59.中间设备110可以从下一跳设备140接收指示其地址的信息以及其所属的区域id,并且基于接收到的信息建立转发表125。在一种可能的实现方式中,下一跳设备140可直接通过bgp消息,将下一跳设备140的地址和其所属的区域id发送给中间设备110。在另一种可能的实现方式中,下一跳设备140可以经由路由反射器(route reflector,简称为rr)向中间设备110发布bgp消息,该bgp消息包括下一跳设备140的地址和其所属的区域id。可选地,下一跳设备140还可将其所属as域对应的bfr-id的范围发布给中间设备110,比如通过bgp消息直接发布给中间设备110,或者通过rr向中间设备110发布bgp消息,相应地,bgp消息还包括下一跳设备140所属as域对应的bfr-id的范围。例如,区域120-2包括的as域115-2中的下一跳设备140-2向中间设备110发布的其所属的as域115-2对应的bfr-id的范围为1~44。区域120-2包括的as域115-3中的下一跳设备140-3向中间设备110发布的其所属的as域115-3对应的bfr-id的范围为45~144。
60.为了进一步简化信令,可以设置默认区域id。针对使用默认区域id的区域内的as域所包括的下一跳设备,可以不向中间设备110发送其所属的区域id。中间设备110可以根据设置在转发表125中记录该下一跳设备所属的区域使用默认区域id。
61.如图1所示,入口设备105存储有转发表150。转发表150包括多个转发表项,具体可以为转发表项155-1、155-2、155-3
……
。转发表150包括的转发表项155-1、155-2和155-3还被称为转发表项155(也称为第二转发表项155)。
62.在一种可能的实现方式中,入口设备105与中间设备110位于同一as域中。相应地,转发表150的列160记录了区域id,列162记录了与区域id相对应的中间设备110的地址,例如ip地址或其他形式的地址。中间设备110可以具有多个地址,每个地址与一个区域id相对应。在图1所示的转发表150中,与区域id“2”(标识区域120-1)对应的中间设备地址为ip地
址2b,与区域id“3”(标识区域120-2)对应的中间设备地址为ip地址3b。可选地,转发表150还包括存储bfr-id范围的列165,其记录区域id所标识的区域120中的bfr-id的范围。针对包括多个as域115-2和115-3的区域120-2,可以在转发表150中创建多个转发表项155-2和155-3,转发表项155-2记录as域115-2对应的bfr-id的范围1~44。转发表项155-3记录as域115-3内的bfr-id的范围45~144。
63.入口设备105可以从中间设备110获得区域id、中间设备地址和bfr-id的范围,并基于所获得的上述信息生成转发表150。例如,中间设备110可以通过bgp消息将区域id、中间设备110的地址以及区域id所标识的区域包括的as域对应的bfr-id的范围发布给入口设备105。中间设备110可以发布多个bgp消息,每个消息包含区域id、中间设备110的地址以及区域包括的某个as域的bfr-id范围。中间设备110可以通过rr发布bgp消息,也可以直接发布bgp消息。在设置了默认区域id的实施例中,所发布的bgp消息中可以不携带区域id。相应地,入口设备105可以根据设定获知相应的区域使用默认区域id。
64.根据本技术的实施例,在入口设备105确定组播报文将被发送到的区域的id后,利用区域id获得包括该区域id以及中间设备110的地址的第二转发表项155。入口设备105基于中间设备110的地址,将组播报文发送给中间设备110。中间设备110接收到该组播报文后,确定组播报文要被发送到的区域的id。中间设备110利用区域id获得记录该区域id和下一跳设备140的地址的第一转发表项130。中间设备110基于第一转发表项130中下一跳设备140的地址,将组播报文发送给下一跳设备140。中间设备110和入口设备105可以获得到达一个或多个区域的转发表125和150。每个区域120可以包括一个或多个as域115。区域120内可独立进行bfr-id规划,由此可以支持到较多出口设备的组播报文。中间设备110上的转发表125包括根据组播报文定位获得的区域id所标识的区域120中的多个as域115的下一跳设备地址,入口设备105无需向每个as区域分别发送组播报文,从而显著提高了组播效率。
65.在另一种可能的实现方式中,入口设备105与中间设备110位于不同的as域中,入口设备105的转发表150中列162所记录的地址可以是入口设备105与中间设备110之间转发设备的地址。
66.举例说明,入口设备105所位于的as域所属的区域的id不同于出口设备所位于的as域所属的区域的id。这样,入口设备105在作为出口设备的场景下,与组播源通信的入口设备和中间设备110可以基于作为出口设备的入口设备105区域id来实现组播报文的传输。这方面的具体实施例将在下文参考图4和图5详细描述。
67.图2示出了本技术实施例提供的组播报文的交互流程示意图。图2所示的过程200可以在图1所述的示例场景中进行。为讨论方便,以下将结合图1来进行描述。
68.205,入口设备105确定组播报文将被发送到的区域120的标识。
69.在一种是实现方式中,来自组播源的组播报文可以包含组播接收者通信的出口设备所属的区域的id。入口设备105可以基于接收到的组播报文确定区域id。在另一种可能的实现方式中,组播报文中的某个字段或部分可以与区域id之间存在映射或对应关系。组播报文中包含的目的地址可以与区域id具有对应关系。入口设备105可以根据接收到的组播报文中的目的地址和对应关系,来确定区域id。
70.210,入口设备105利用区域id获得第二转发表项155。
71.举例说明,第二转发表项155包括区域id和中间设备110的地址。如图1所示,转发
表150存储了区域id与中间设备地址的对应关系。入口设备105利用区域id查找转发表150,可以获得包含该区域id以及中间设备110的地址的第二转发表项155。其中,转发表150可以是静态配置的。例如,可以由人工配置。转发表150还可以是动态配置,以便进一步提高转发表的配置和更新效率,具体可参见上述图1的相关内容。
72.215,入口设备105基于所确定的地址将组播报文发送给中间设备110。
73.举例说明,入口设备105可以将所确定的中间设备110的地址封装在组播报文的目的地址中。在一种可能的实现方式中,组播报文可以包含要发送到的区域120的id,以向中间设备110明确指示区域id。可选地,组播报文还可包括需要发送到的出口设备所位于的as域对应的bfr-id的范围。在另一种可能的实现方式中,区域id与中间设备110的标识可存在映射或对应关系。中间设备110的标识可以为能够用于标识中间设备110的任意适当信息,例如包括中间设备110的地址。入口设备105可以将中间设备110的标识包含在组播报文中,以便向中间设备110隐式地指示区域id。中间设备110的标识可以包含在组播报文的任意适当部分中。例如,入口设备105可以将中间设备110的标识包含在组播报文的目的地址字段中。以此方式,可以简化组播报文的结构,更好地实现后向兼容。中间设备110可根据组播报文中包括的中间设备110的标识和对应关系,来获得区域id。
74.以此方式,入口设备105只需向一个区域120发送一份报文,而无需向所有as域115发送,提高了组播效率。
75.220,中间设备110在接收到目的地址为其自身地址的组播报文后,确定组播报文将被发送到的区域120的id。
76.在组播报文包含要发送到的区域120的id的实施例中,中间设备110可以从组播报文获得区域id。在组播报文中包含中间设备110的标识(例如,中间设备110的地址)的实施例中,中间设备110可以根据组播报文中包含的中间设备110的标识和区域id与中间设备110间的对应关系,来确定区域id。其中,中间设备110可以被分配多个标识(或地址),中间设备110的各个标识与不同的区域id相对应。在接收到组播报文后,中间设备110可以从组播报文中(例如,从组播报文的目的地址字段或部分中)获取中间设备110的标识,继而确定相应的区域id。
77.225,中间设备110利用区域id,获得第一转发表项130。
78.举例说明,中间设备110可以利用所确定的区域id查找转发表125,来获得第一转发表项130。在区域120包括多个as域115的实施例中,中间设备110可以在转发表125中查找到与某一个区域120的区域id对应的多个转发表项130。例如,针对包括as域115-2和115-3的区域120-2,可以查找到转发表项130-2和130-3与区域120-2的区域标识2。如果转发表项130-2和130-3中还包括as域115-2和115-3所分别对应的的bfr-id的范围,组播报文中还包括bfr-id的范围,则中间设备110可以基于组播报文中包含的bfr-id的范围,确定对应的转发表项130-2或130-3。其中,中间设备110处的转发表125可以静态或者动态地配置。静态配置的方法可以是人工配置。动态配置的方法可参见图1的相应内容。在网络扩容时,中间设备110可以接收到来自新增加的as域的信息,并且相应地更新转发表125,从而显著提高了转发表的配置和更新的效率。
79.230,中间设备110基于第一转发表项130中所包含的下一跳设备140的地址,将组播报文发送给下一跳设备140。
80.举例说明,对于只包括一个as域115-1的区域120-1,中间设备110在获得了包含区域120-1的id的转发表项130后,可以将组播报文直接发送到该区域120-1的as域115-1,而无需对所接收组播报文进行复制处理。对于包括多个as域115-2和115-3的区域120-2,中间设备140可以对组播报文进行复制处理,以便将组播报文和复制后的组播报文发送到区域120-2中的as域115-2和115-3。
81.下面结合图3、图4和图5讨论使用根据本技术的实施例提供的方法来发送组播报文的示例过程。
82.图3示出了本技术实施例提供的一种组播场景。为讨论方便,以下将结合图1来描述如图3所示的场景300。
83.场景300与场景1不同之处在于,as域115-4和115-5是网络扩容后增加的as域。区域120-2包括as域115-4。区域120-3包括as域115-5。入口设备105和中间设备110位于骨干网络的同一as域115-6中。入口设备105可由as域115-6的pe设备实现。中间设备110可由由as域115-6的asbr实现。下一跳设备140-4属于as域115-4。下一跳设备140-5属于as域115-5。相同的结构的说明可参见图1所示场景的相应内容。
84.下一跳设备140-1、140-2和140-3可以直接将下述信息发布给中间设备110,或者可以通过rr 310发布给中间设备110。下一跳设备140-1、140-2和140-3发布的信息例如如下:
85.·
下一跳设备140-1发布的信息为:(color=2,ipv6地址<asbr2>,bfr-id=1~256)
86.·
下一跳设备140-2发布的信息为:(color=3,ipv6地址<asbr3>,bfr-id=1~44)
87.·
下一跳设备140-3发布的信息为:(color=3,ipv6地址<asbr4>,bfr-id=45~144)
88.其中,color=2表示区域120-1的区域id,asbr2表示设备140-1,ipv6地址<asbr2>表示设备140-1的ipv6地址,bfr-id=1~256表示as域115-1对应的bfr-id的范围。color=3表示区域120-2的id,asbr3表示设备140-2,ipv6地址<asbr3>表示设备140-2的ipv6地址,bfr-id=1~44表示as域115-2对应的bfr-id的范围。color=3表示区域120-2的id,asbr4表示设备140-3,ipv6地址<asbr4>表示设备140-3的ipv6地址,bfr-id=45~144表示as域115-3内的bfr-id的范围。
89.中间设备110根据收到的信息建立转发表125。在此示例中,转发表125包括下列多条转发表项130:
[0090]-(color=2,bfr-id=1~256,下一跳=ipv6地址<asbr2>)
[0091]-(color=3,bfr-id=1~44,下一跳=ipv6地址<asbr3>)
[0092]-(color=3,bfr-id=45~144,下一跳=ipv6地址<asbr4>)
[0093]
在来自入口设备105的组播报文到达中间设备110后,中间设备110首先确定区域120的区域id。在一种可能的实现方式中,组播报文(例如,bierv6组播报文)中可以携带一个color值,用于表示区域id。在另一种可能的实现方式中,中间设备110可以获得color值与中间设备110的标识的对应关系。中间设备110根据该对应关系以及组播报文包括的中间设备110的标识,确定用于表示区域id的color值。其中,color值与中间设备110的地址的对
id=145~256,下一跳=ipv6地址<asbr5>)。中间设备110可以通过rr 310向入口设备105发布增加的信息(color=3,bfr-id=145~256,下一跳=2001:db1::3)。其中,下一跳=2001:db1::3是中间设备110与区域120-2对应的地址。
[0111]
入口设备105接收到上述信息后,创建如下转发表项155,以更新转发表150:
[0112]-(color=2,bfr-id=1 to 256,下一跳=2001:db1::2)
[0113]-(color=3,bfr-id=1 to 256,下一跳=2001:db1::3)
[0114]
在网络扩容增加了一个as域115-4时,只需要对扩容的设备140-4进行配置,其他设备或节点都不需要额外配置,入口设备和中间设备可以自动更新各自的转发表,提高了转发表的更新效率。
[0115]
举例说明,网络继续扩容,例如又增加了一个as域115-5,其bfr-id有65500个。可以将as域115-5设置为一个新的区域120-3,可以配置color=6来表示区域120-3的id。as域115-5设备140-5可以将区域id、设备140-5的地址以及as域115-5内的bfr-id范围通过rr 310发布给中间设备110。所发布的信息例如为(color=6,ipv6地址<asbr6>,bfr-id=1~65500),其中,color=6表示区域120-3的区域id,asbr6表示设备140-5,并且ipv6地址<asbr6>表示设备140-5的ipv6地址。
[0116]
中间设备110接收到上述信息后在转发表125中增加一条表项(color=6,bfr-id=1~65500,下一跳=ipv6地址<asbr6>)。中间设备110通过rr 310向入口设备105发布增加的信息(color=6,bfr-id=1~65500,下一跳=2001:db1::6)。入口设备105接收到上述信息后,创建如下转发表项155,以更新转发表150:
[0117]-(color=2,bfr-id=1~256,下一跳=2001:db1::2)
[0118]-(color=3,bfr-id=1~256,下一跳=2001:db1::3)
[0119]-(color=6,bfr-id=1~65500,下一跳=2001:db1::6)
[0120]
其中,2001:db1::6是中间设备110的另外一个ipv6地址,与color=6表示的区域id相对应。该地址可以由中间设备110根据接收到的color值动态申请,从而不必额外配置,提高了效率。此外,中间设备110也可配置color=6对应的地址。这两种方式都不需要入口设备105增加额外的配置。
[0121]
下面讨论使用本技术的实施例的组播机制的示例组播配置。bgp路由可以采用bgp ipv6单播(bgp ipv6-unicast)地址族,或者可以采用其它地址族,例如bgp链路状态(bgp-ls)地址族。备选地,可以是一个新建的地址族,如bier地址族。作为示例,可以使用ipv6-unicast地址族并且通过rr 310进行发布。在此示例中,设备140-1表示为asbr2,设备140-2表示为asbr3,设备140-3表示为asbr4,中间设备110表示为asbr1b,入口设备105表示为pe1。这些设备可配置如下:
[0122]
[0123][0124]
图4示出了本技术实施例提供的另一种组播场景。
[0125]
与图1中的场景100和图3中的场景300不同,在图4所示的场景400中,入口设备105和中间设备110位于不同的as域中。如图4所示,入口设备105位于城域网络的as域115-6中,例如实现为as域115-6的pe设备。中间设备110位于骨干网络的as域115-7中,例如实现为as域115-7的asbr。而且,不同于场景300,as域115-7中的另一asbr 405-7充当与as域115-1
……
115-5相关联的下一跳设备。发往各个as域115-1
……
115-5的组播报文,经由asbr 405-7转发到这些as域115-1
……
115-5的asbr 405-1
……
405-5。中间设备110与asbr 405-7可以都与rr 310建立bgp邻居,以便asbr 405-7经由rr 310向中间设备110发布相关的路由信息。在场景400中,as域115-6属于区域120-4,其具有与区域120-1、120-2和120-3不同的区域id。相应地,在中间设备110处建立转发表125可以包括以入口设备105作为组播目的地的转发表项,其中记录区域120-4的区域id。在此示例中,as域115-6的asbr 405-6充当与区域120-4相关联的下一跳设备。入口设备105的区域id、相关联的下一跳设备的地址以及区域120-4的bfr-id范围可以由asbr 405-6经由rr 310发布给中间设备110。由于入口设备105所在的区域120-4与区域120-1、120-2和120-3的区域id不同,在经由rr 310发布路由信息时,rr 310可以利用区域id对路由信息的目的地设备进行区分。
[0126]
图5示出了本技术实施例提供的另一种组播场景。在图5所示的场景500中,asbr405-1
……
405-7分别是as域115-1
……
115-7中的asbr,而asbr 405-8是as域115-7中的另一asbr。405-7和405-8都可以充当中间设备。在此示例中,路由信息不经由rr发布,而由各设备直接发布给上下游设备。
[0127]
在场景500中,各as域115-1
……
115-5的asbr 405-1
……
405-5作为原始的路由发布方,发布如下的路由信息:
[0128]
·
asbr 405-1发布的路由信息为:(prefix=asbr2,nexthop=asbr2,color=2,
[0129]
bier-info=<bfr-id-range 1 to 256>)
[0130]
·
asbr 405-2发布的路由信息为:(prefix=asbr3,nexthop=asbr3,color=3,
[0131]
bier-info=<bfr-id-range 1 to 44>)
[0132]
·
asbr 405-3发布的路由信息为:(prefix=asbr4,nexthop=asbr4,color=3,
[0133]
bier-info=<bfr-id-range 45 to 144>)
[0134]
·
asbr 405-4发布的路由信息为:(prefix=asbr5,nexthop=asbr5,color=3,
[0135]
bier-info=<bfr-id-range 145 to 256>)
[0136]
·
asbr 405-5发布的路由信息为:(prefix=asbr6,nexthop=asbr6,color=6,
[0137]
bier-info=<bfr-id-range 1 to 65500>)
[0138]
其中,prefix(前缀)这个字段用来携带ip地址前缀,nexthop(下一跳)这个字段用来携带ip地址,bier-info表示bier信息,bfr-id-range表示bfr-id的范围。asbr2、asbr3、asbr4、asbr5和asbr6分别表示asbr 405-1、405-2、405-3、405-4和405-5。
[0139]
作为与as域115-6相关联的下一跳设备的asbr 405-6也是原始的路由发布方,其发布关于as域115-6的如下路由信息:
[0140]-(prefix=asbr0,nexthop=asbr0,color=7,bier-info=<bfr-id-range 1 to 256>)
[0141]
其中,asbr0表示asbr 405-6,并且color=7表示as域115-6所属的区域120-4的区域id。
[0142]
asbr 405-8和asbr 405-7不是原始的路由发布方,但会将其他设备发布的路由信息向其他的内部bgp(ibgp)对等体或外部bgp(ebgp)对等体重新发布。例如,asbr 405-7可以从作为ebgp对等体的asbr 405-1
……
405-5收到相应的路由信息,然后向作为ibgp对等体的asbr 405-8发布,并且发布的时候会将路由的下一跳更改为自己。这可以通过路由策略实现。asbr 405-8可以从作为ebgp对等体的asbr 405-6收到路由信息,然后向作为ibgp对等体的asbr 405-7发布,并且发布的时候也会通过路由策略将路由的下一跳更改为自己。asbr 405-8和asbr 405-7还可以将路由信息发布给同一个as域115-7内作为ibgp对等体的pe 505。pe 505可以充当as域115-7的入口设备。此时,asbr 405-7可以作为与其相关联的中间设备。这样,pe 505可以获得如下的路由信息,其中asbr1b表示asbr 405-7,asbr1a表示asbr 405-8:
[0143]-(prefix=asbr2,nexthop=asbr1b,color=2,bier-info=<bfr-id-range 1 to 256>)
[0144]-(prefix=asbr3,nexthop=asbr1b,color=3,bier-info=<bfr-id-range 1 to 44>)
[0145]-(prefix=asbr4,nexthop=asbr1b,color=3,bier-info=<bfr-id-range 45 to 144>)
[0146]-(prefix=asbr5,nexthop=asbr1b,color=3,bier-info=<bfr-id-range 145 to 256>)
[0147]-(prefix=asbr6,nexthop=asbr1b,color=6,bier-info=<bfr-id-range 1 to 65500>)
[0148]-(prefix=asbr0,nexthop=asbr1a,color=7,bier-info=<bfr-id-range 1 to 256>)
[0149]
pe 505可以据此建立到达as域115-1
……
115-6的如下bier转发表项:
[0150]-(color=2,bfr-id=1~256,下一跳=asbr1b)
[0151]-(color=3,bfr-id=1~256,下一跳=asbr1b)
[0152]-(color=4,bfr-id=1~65550,下一跳=asbr1b)
[0153]-(color=7,bfr-id=1~256,下一跳=asbr1a)
[0154]
在场景500中,asbr 405-7将从作为ebgp对等体的asbr 405-1
……
405-5接收到的路由信息向作为ibgp的对等体的pe 505和asbr 405-8发布时,可以将下一跳地址设置为自己的一个或多个标识,以用于指示相应的区域id。这样,在asbr 405-7接收到组播报文后,asbr 405-7可以根据组播报文中包含的标识来确定相应的区域id。如此,pe 505可以获得如下路由信息:
[0155]-(prefix=asbr2,nexthop=asbr1b2,color=2,bier-info=<bfr-id-range 1 to 256>)
[0156]-(prefix=asbr3,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 1 to 44>)
[0157]-(prefix=asbr4,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 45 to 144>)
[0158]-(prefix=asbr5,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 145 to 256>)
[0159]-(prefix=asbr6,nexthop=asbr1b6,color=6,bier-info=<bfr-id-range 1 to 65500>)
[0160]-(prefix=asbr0,nexthop=asbr1a,color=7,bier-info=<bfr-id-range 1 to 256>)其中,asbr1b2、asbr1b3、asbr1b6和asbr1a表示分别对应于区域id color=2、color=3、color=6和color=7的asbr 405-7的标识。
[0161]
pe 505可以据此建立到达as域115-1
……
115-6的如下bier转发表项:
[0162]-(color=2,bfr-id=1~256,下一跳=asbr1b2)
[0163]-(color=3,bfr-id=1~256,下一跳=asbr1b3)
[0164]-(color=4,bfr-id=1~65550,下一跳=asbr1b6)
[0165]-(color=7,bfr-id=1~256,下一跳=asbr1a)
[0166]
而且,asbr 405-8可以获得如下路由信息:
[0167]-(prefix=asbr2,nexthop=asbr1b2,color=2,bier-info=<bfr-id-range 1 to 256>)
[0168]-(prefix=asbr3,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 1 to 44>)
[0169]-(prefix=asbr4,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 45 to 144>)
[0170]-(prefix=asbr5,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 145 to 256>)
[0171]-(prefix=asbr6,nexthop=asbr1b6,color=6,bier-info=<bfr-id-range 1 to 65500>)
[0172]-(prefix=asbr0,nexthop=asbr0,color=7,bier-info=<bfr-id-range 1 to 256>)
[0173]
asbr 405-8可以据此建立到达as域115-1
……
115-6的bier转发表项。asbr 405-8建立的到达as域115-6的bier转发表项的下一跳是asbr 405-6。
[0174]
类似地,asbr 405-7可以获得如下的路由信息:
[0175]-(prefix=asbr2,nexthop=asbr2,color=2,bier-info=<bfr-id-range 1 to 256>)
[0176]-(prefix=asbr3,nexthop=asbr3,color=3,bier-info=<bfr-id-range 1 to 44>)
[0177]-(prefix=asbr4,nexthop=asbr4,color=3,bier-info=<bfr-id-range 45 to 144>)
[0178]-(prefix=asbr5,nexthop=asbr5,color=3,bier-info=<bfr-id-range 145 to 256>)
[0179]-(prefix=asbr6,nexthop=asbr6,color=6,bier-info=<bfr-id-range 1 to 65500>)
[0180]-(prefix=asbr0,nexthop=asbr1a,color=7,bier-info=<bfr-id-range 1 to 256>)
[0181]
asbr 405-7可以据此建立到达as域115-1
……
115-6的bier转发表项。asbr 405-7建立的到达as域115-1
……
115-5的bier转发表的下一跳是asbr 405-1
……
405-5。
[0182]
在一种可能的实现方式中,asbr 405-8不会将从asbr 405-6发布的路由信息再发布给asbr 405-6,但会将从asbr 405-7发布的路由信息向asbr 405-6发布并且不修改下一跳,这可以通过路由策略实现。相应的,asbr 405-6可以获得如下的路由信息:
[0183]-(prefix=asbr2,nexthop=asbr1b2,color=2,bier-info=<bfr-id-range 1 to 256>)
[0184]-(prefix=asbr3,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 1 to 44>)
[0185]-(prefix=asbr4,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 45 to 144>)
[0186]-(prefix=asbr5,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 145 to 256>)
[0187]-(prefix=asbr6,nexthop=asbr1b6,color=6,bier-info=<bfr-id-range 1 to 65500>)
[0188]
asbr 405-6可以据此建立到达as域115-1
……
115-5的bier转发表项。asbr 405-6到达as域115-6的各bfr-id的bier转发表项属于as域内,可以不通过bgp消息建立。
[0189]
在一种可能的实现方式中,asbr 405-6将从asbr 405-8发布的路由信息再向入口
设备105发布且不修改下一跳,这可以通过路由策略实现。相应的,入口设备105可以获得如下的路由信息:
[0190]-(prefix=asbr2,nexthop=asbr1b2,color=2,bier-info=<bfr-id-range 1 to 256>)
[0191]-(prefix=asbr3,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 1 to 44>)
[0192]-(prefix=asbr4,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 45 to 144>)
[0193]-(prefix=asbr5,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 145 to 256>)
[0194]-(prefix=asbr6,nexthop=asbr1b6,color=6,bier-info=<bfr-id-range 1 to 65500>)
[0195]
入口设备105可以据此建立到达as域115-1
……
115-5的bier转发表项。入口设备105到达as域115-6的各bfr-id的bier转发表项属于as域内,可以不通过bgp消息建立。
[0196]
此外,asbr 405-7可以将接收到的路由信息进一步发布给asbr 405-1
……
405-5。例如,asbr 405-7可以将asbr 405-8发布的路由信息再发布给asbr 405-1
……
405-5并且不更改路由下一跳。
[0197]
asbr 405-7还可以将asbr 405-2
……
405-6发布的路由再发布给asbr 405-1,并且将路由下一跳更改为自己。asbr 405-1可以将从asbr 405-7发布的路由再发布给as域115-1中的pe 510-1(可以充当as域115-1的入口设备),并且不更改路由下一跳。
[0198]
相应的,asbr 405-1和pe 510-1都可以获得如下路由信息,并可据此建立相应的bier转发表项:
[0199]-(prefix=asbr3,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 1 to 44>)
[0200]-(prefix=asbr4,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 45 to 144>)
[0201]-(prefix=asbr5,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 145 to 256>)
[0202]-(prefix=asbr6,nexthop=asbr1b6,color=6,bier-info=<bfr-id-range 1 to 65500>)
[0203]-(prefix=asbr0,nexthop=asbr1a,color=7,bier-info=<bfr-id-range 1 to 256>)
[0204]
asbr 405-7还可以将asbr 405-1、405-3、405-4、405-5和405-6发布的路由再发布给asbr 405-2,并且将下一跳更改为自己。asbr 405-2还可以将从asbr 405-7发布的路由再发布给pe 510-2(可以充当as域115-2的入口设备),并且不更改路由下一跳。
[0205]
相应的,asbr 405-2和pe 510-2都可以获得如下路由信息,并可据此建立相应的bier转发表项:
[0206]-(prefix=asbr2,nexthop=asbr1b2,color=2,bier-info=<bfr-id-range 1 to 256>)
[0207]-(prefix=asbr4,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 45 to 144>)
[0208]-(prefix=asbr5,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 145 to 256>)
[0209]-(prefix=asbr6,nexthop=asbr1b6,color=6,bier-info=<bfr-id-range 1 to 65500>)
[0210]-(prefix=asbr0,nexthop=asbr1a,color=7,bier-info=<bfr-id-range 1 to 256>)
[0211]
asbr 405-7还可以将asbr 405-1、405-2、405-4、405-5和405-6发布的路由再发布给asbr 405-3,并且将下一跳更改为自己。asbr 405-3还可以将从asbr 405-7发布的路由再发布给pe 510-3(可以充当as域115-3的入口设备),并且不更改路由下一跳。
[0212]
asbr 405-3和pe 510-3都会可以获得如下路由信息,并可据此建立相应的bier转发表项:
[0213]-(prefix=asbr2,nexthop=asbr1b2,color=2,bier-info=<bfr-id-range 1 to 256>)
[0214]-(prefix=asbr3,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 1 to 44>)
[0215]-(prefix=asbr5,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 145 to 256>)
[0216]-(prefix=asbr6,nexthop=asbr1b6,color=6,bier-info=<bfr-id-range 1 to 65500>)
[0217]-(prefix=asbr0,nexthop=asbr1a,color=7,bier-info=<bfr-id-range 1 to 256>)
[0218]
类似地,asbr 405-4可以获得如下路由信息,并可据此建立相应的bier转发表项:
[0219]-(prefix=asbr2,nexthop=asbr1b2,color=2,bier-info=<bfr-id-range 1 to 256>)
[0220]-(prefix=asbr3,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 1 to 44>)
[0221]-(prefix=asbr4,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 45 to 144>)
[0222]-(prefix=asbr6,nexthop=asbr1b6,color=6,bier-info=<bfr-id-range 1 to 65500>)
[0223]-(prefix=asbr0,nexthop=asbr1a,color=7,bier-info=<bfr-id-range 1 to 256>)
[0224]
asbr 405-5可以获得如下路由信息,并可据此建立相应的bier转发表项:
[0225]-(prefix=asbr2,nexthop=asbr1b2,color=2,bier-info=<bfr-id-range 1 to 256>)
[0226]-(prefix=asbr3,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 1 to 44>)
[0227]-(prefix=asbr4,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 45 to 144>)
[0228]-(prefix=asbr5,nexthop=asbr1b3,color=3,bier-info=<bfr-id-range 145 to 256>)
[0229]-(prefix=asbr0,nexthop=asbr1a,color=7,bier-info=<bfr-id-range 1 to 256>)
[0230]
在此示例中,入口设备105和asbr 405-6记录的asbr 405-1
……
405-5的下一跳都是asbr 405-7,如果采用ipv6单播路由(即ipv6unicast地址族)的方式,可以要求ipv6单播路由不生成相应的单播转发表,而生成bier的转发表,这可以通过对ipv6单播路由使用路由策略实现。如果采用其它的地址族,比如可以采用ipv6组播路由(即ipv6 multicast地址族)的方式,则ipv6组播路由本身就不生成单播转发表,只需要根据这些ipv6组播路由及其携带的区域id信息(如color值)、bier信息(如bfr-id范围)生成bier转发表。
[0231]
图6示出了本技术实施例提供的用于发送组播报文的装置的结构示意图。图6所示的装置600可以设置于图1至图5对应的的任一实施例中的中间设备。下文将结合图1和图6,对装置600进行说明。
[0232]
如图6所示,装置600包括第一获得模块605、第二获得模块610和第一发送模块615。第一获得模块605用于基于来自入口设备的组播报文,获取组播报文对应的区域的标识。第二获得模块610用于基于区域的标识和转发表项,获得下一跳设备的地址,转发表项包含区域的标识以及下一跳设备的地址。第一发送模块615用于基于下一跳设备的地址发送组播报文。
[0233]
在一种可能的实现方式中,组播报文包括区域的标识,第一获得模块605用于从组播报文中获取区域的标识。
[0234]
在一种可能的实现方式中,第一获得模块605用于基于组播报文中的中间设备的标识,获取与中间设备的标识对应的区域的标识。其中,装置600可保存一对应关系,该对应关系包括中间设备的标识和区域的标识。
[0235]
在一种可能的实现方式中,第一获得模块605用于基于组播报文中的中间设备的地址,获取与中间设备的地址对应的区域的标识。其中,装置600可保存一对应关系,该对应关系包括中间设备的地址和区域的标识。
[0236]
在一种可能的实现方式中,装置600还可以包括:第一接收模块,用于接收下一跳设备发送的下一跳设备的地址和下一跳设备所属的区域的标识;以及第三获得模块,用于基于区域的标识和下一跳设备的地址,获得转发表项。
[0237]
在一种可能的实现方式中,装置600还可以包括:第一接收模块,用于接收下一跳设备发送的下一跳设备的标识和下一跳设备所属的区域的标识。第三获得模块,用于基于下一跳设备的标识,获得下一跳设备的地址;所述第三获得模块用于基于区域的标识和下一跳设备的地址,获得转发表项。其中,装置600可保存一对应关系,该对应关系包括下一跳设备的标识和下一跳设备的地址。
[0238]
在一种可能的实现方式中,第一接收模块还用于接收下一跳设备发送的目的as域内位转发路由器bfr标识的范围,目的as域为区域包含的下一跳设备所属的as域,转发表项还包括目的as域内bfr标识的范围。相应地,组播报文还包括bfr标识的范围,第三获得模块
用于基于区域的标识和bfr标识的范围,确定转发表项。
[0239]
在一种可能的实现方式中,装置600还可以包括:第二发送模块,用于向入口设备发送中间设备的地址和中间设备所属的区域的标识。
[0240]
在一种可能的实现方式中,第二发送模块还用于向入口设备发送中间设备所属as域内bfr标识的范围,中间设备所属as域包含于中间设备所属的区域。
[0241]
图7示出了本技术实施例提供的用于发送组播报文的装置的结构示意图。图7所示的装置700可以设置于图1至图5对应的的任一实施例中的入口设备。下文将结合图1和图7,对装置700进行说明。
[0242]
如图7所示,装置700包括第一获得模块705、第二获得模块710和第一发送模块715。第一获得模块705用于获取接收到的组播报文对应的区域的标识。第二获得模块710用于基于区域的标识和转发表项,获得用于将组播报文转发至区域的中间设备的地址,转发表项包括区域的标识以及中间设备的地址。第一发送模块715用于基于中间设备的地址发送组播报文。
[0243]
在一种可能的实现方式中,装置700还可以包括:第二接收模块,用于接收中间设备发送的中间设备的地址和区域的标识;以及第三获得模块,用于基于中间设备的地址和区域的标识,获得转发表项。
[0244]
在一种可能的实现方式中,装置700还可以包括:第二接收模块,用于接收中间设备发送的中间设备的标识和区域的标识;以及第三获得模块,用于基于中间设备的标识,确定中间设备的地址;所述第三获得模块用于基于中间设备的地址和区域的标识,获得转发表项。
[0245]
在一种可能的实现方式中,第二接收模块还用于接收中间设备发送的目的自治系统as域内bfr标识的范围,目的as域为区域包含的组播报文需要发送到的as域,转发表项还包括目的as域内bfr标识的范围。
[0246]
在一种可能的实现方式中,第二获得模块710用于基于目的as域内bfr标识的范围和区域的标识,确定转发表项。
[0247]
在一种可能的实现方式中,组播报文中包含区域的标识,并且第一获得模块705用于从组播报文获取区域的标识。
[0248]
在一种可能的实现方式中,组播报文中包含中间设备的标识,第一获得模块705用于基于组播报文中的中间设备的标识,获取与中间设备的标识对应的区域的标识。
[0249]
装置600和700中所包括的模块可以利用各种方式来实现,包括软件、硬件、固件或其任意组合。在一些实施例中,一个或多个模块可以使用软件和/或固件来实现,例如存储在存储介质上的机器可执行指令。除了机器可执行指令之外或者作为替代,装置600和700中的部分或者全部模块可以至少部分地由一个或多个硬件逻辑组件来实现。作为示例而非限制,可以使用的示范类型的硬件逻辑组件包括现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准品(assp)、片上系统(soc)、复杂可编程逻辑器件(cpld),等等。
[0250]
图8示出了其中可以实施本技术的某些实施例的设备800的框图。设备800能够用来实现例图1至图7对应的任一实施例提供的中间设备或入口设备。如图8所示,设备800包括处理器810、存储器820、通信接口830和通信总线840。处理器810、存储器820和通信接口830通过通信总线840进行内部交互。通信总线840可与外部设备或装置进行交互。其中。当
设备800设置于中间设备时,所述存储器820用于存储指令;所述处理器810用于执行所述存储器中的所述指令,执行上述图2至图5对应的任一实施例提供的由中间设备执行的方法。当设备800设置于入口设备时,所述存储器820用于存储指令;所述处理器810用于执行所述存储器中的所述指令,执行上述图2至图5对应的任一实施例提供的由入口设备执行的方法。,存储器820可以是适用于本地技术环境的任何合适的类型,并且可以利用任何合适的数据存储技术来实现,包括但不限于基于半导体的存储器件、磁存储器件和系统、光存储器件和系统。尽管图8中仅仅示出了一个存储器单元,但是在设备800中可以有多个物理不同的存储器单元。处理器810可以是适用于本地技术环境的任何合适的类型,并且可以包括但不限于通用计算机、专用计算机、微控制器、数字信号控制器(dsp)以及基于控制器的多核控制器架构中的一个或多个。设备800也可以包括多个处理器810。处理器810与通信单元840耦合。通信单元840可以通过无线电信号或者借助于光纤、电缆和/或其他部件来实现信息的接收和发送。
[0251]
一般而言,本技术的各种示例实施例可以在硬件或专用电路、软件、逻辑,或其任何组合中实施。某些方面可以在硬件中实施,而其他方面可以在可以由控制器、微处理器或其他计算设备执行的固件或软件中实施。当本技术的示例实施例的各方面被图示或描述为框图、流程图或使用某些其他图形表示时,将理解此处描述的方框、装置、系统、技术或方法可以作为非限制性的示例在硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备,或其某些组合中实施。
[0252]
作为示例,本技术的示例实施例可以在机器或计算机可执行指令的上下文中被描述,机器可执行指令诸如包括在目标的真实或者虚拟处理器上的器件中执行的程序模块中。一般而言,程序模块包括例程、程序、库、对象、类、组件、数据结构等,其执行特定的任务或者实现特定的抽象数据结构。在各示例实施例中,程序模块的功能可以在所描述的程序模块之间合并或者分割。用于程序模块的机器可执行指令可以在本地或者分布式设备内执行。在分布式设备中,程序模块可以位于本地和远程存储介质二者中。
[0253]
用于实现本技术实施例的方法的计算机程序代码可以用一种或多种编程语言编写。这些计算机程序代码可以提供给通用计算机、专用计算机或其他可编程的数据处理装置的处理器,使得程序代码在被计算机或其他可编程的数据处理装置执行的时候,引起在流程图和/或框图中规定的功能/操作被实施。程序代码可以完全在计算机上、部分在计算机上、作为独立的软件包、部分在计算机上且部分在远程计算机上或完全在远程计算机或服务器上执行。
[0254]
在本技术实施例的上下文中,机器可读介质或计算机可读介质可以是包含或存储用于或有关于指令执行系统、装置或设备的程序的任何有形介质。机器可读介质可以是机器可读信号介质或机器可读存储介质。机器可读介质可以包括但不限于电子的、磁的、光学的、电磁的、红外的或半导体系统、装置或设备,或其任意合适的组合。机器可读存储介质的更详细示例包括带有一根或多根导线的电气连接、便携式计算机磁盘、硬盘、随机存储存取器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪存)、光存储设备、磁存储设备,或其任意合适的组合。
[0255]
另外,尽管操作以特定顺序被描绘,但这并不应该理解为要求此类操作以示出的特定顺序或以相继顺序完成,或者执行所有图示的操作以获取期望结果。在某些情况下,多
任务或并行处理会是有益的。同样地,尽管上述讨论包含了某些特定的实施细节,但这并不应解释为限制任何发明或权利要求的范围,而应解释为对可以针对特定发明的特定示例实施例的描述。本说明书中在分开的示例实施例的上下文中描述的某些特征也可以整合实施在单个示例实施例中。反之,在单个示例实施例的上下文中描述的各种特征也可以分离地在多个示例实施例或在任意合适的子组合中实施。
[0256]
尽管已经以特定于结构特征和/或方法动作的语言描述了主题,但是应当理解,所附权利要求中限定的主题并不限于上文描述的特定特征或动作。相反,上文描述的特定特征和动作是作为实现权利要求的示例形式而被公开的。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献