CN102075439B - 一种组播报文转发方法和路由设备 - Google Patents
一种组播报文转发方法和路由设备 Download PDFInfo
- Publication number
- CN102075439B CN102075439B CN201110042521.XA CN201110042521A CN102075439B CN 102075439 B CN102075439 B CN 102075439B CN 201110042521 A CN201110042521 A CN 201110042521A CN 102075439 B CN102075439 B CN 102075439B
- Authority
- CN
- China
- Prior art keywords
- igmp
- multicast
- network multicast
- message
- address
- 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
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000013507 mapping Methods 0.000 claims abstract description 27
- 230000001960 triggered effect Effects 0.000 claims description 12
- 238000004806 packaging method and process Methods 0.000 claims description 2
- 239000002699 waste material Substances 0.000 abstract description 12
- 230000005540 biological transmission Effects 0.000 abstract 2
- 238000010586 diagram Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 238000006424 Flood reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1836—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with heterogeneous network architecture
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/185—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种组播报文转发方法:作为组播源的PE在接收到CE发送的第一个组播报文时,触发MD报文,并将其广播给VSI实例内的每一个对端PE;每一个对端PE对接收到的MD报文进行解析后,建立私网组播组地址和公网组播地址的映射,且存在相同私网组播组地址的PE触发并广播公网组播地址的IGMP加入请求报文,各设备接收到IGMP请求报文后建立公网组播地址转发表,作为组播源的PE将组播报文封装公网组播隧道头后,根据公网组播地址转发表对组播报文进行组播转发。本发明同时公开了一种路由设备,应用本发明所述的方法和路由设备,能够通过组播方式实现对组播报文的转发,不仅避免了无效广播造成的网络资源的浪费,而且避免了单播方式造成的带宽资源的浪费。
Description
技术领域
本发明涉及通信网络中的报文转发方法,特别涉及一种组播报文转发方法和路由设备。
背景技术
虚拟专用局域网(VPLS)是在多协议标签交换(MPLS)网络中提供的透传的局域网(LAN)服务,其最主要的目的是通过城域网/广域网(MAN/WAN)为地域上隔离的用户站点相连,并且使两地连接效果像在一个LAN中一样。
现有的VPLS网络对于组播报文可以采取广播的方式转发。如图1所示,运营商边缘路由器(PE)1、PE2、PE3和PE4上都创建了实例虚拟交换接口(VSI)1,PE1接收到用户边缘路由器(CE)1发送的组播报文后按照如下过程处理:1)确定组播报文所属的VPLS实例,即为VSI1;2)在整个VSI1内广播该组播报文,此时组播报文将沿着VSI1内的所有PW发送到公网,并沿着本地所有接入链路(AC)口发送到各个CE。
采用广播的方式虽然能够完成对组播报文的转发,然而,PE不能记录组播源请求的路径信息,组播源根据请求发送的组播报文到达PE时,由于PE无法获取到具体的路径信息,也就不能得到组播报文的目的媒体访问控制(MAC)地址,因此,PE需要向VSI实例内的其他所有PE和CE广播该组播报文,也就造成了网络资源的浪费。
此外,现有也可采用单播的方式来转发组播报文,如图1所示,在各个PE设备上监控CE侧的因特网控制报文协议(IGMP)报文和因特网组管理协议(PIM)报文,本地PE保存IGMP报文和PIM报文并将报文泛洪到其它VSI对端,比如,PE1接收到了本地CE的IGMP消息(包括IGMP组成员报告消息和IGMP组成员离开消息),并将其发送给对端PE2、PE3和PE4,当某个组播源所挂接的PE设备如PE4接收到本地CE侧的组播报文时,只会向PE1发送该组播报文,不会向PE2/PE3发送该组播报文,当PE2和PE3也有组播组成员加入时,PE4才会向PE2和PE3发送报文,报文在公网上走单播隧道到达各自的PE设备。
通过上述分析可以看出,通过广播和单播的方式虽然都能够实现组播报文转发,然而,广播的方式转发组播报文时会造成网络资源的浪费,而单播方式转发组播报文时,报文在公网上是以单播方式转发的,而采用单播方式处理组播报文会造成带宽资源的浪费。
发明内容
有鉴于此,本发明提供了一种组播报文转发方法,能够通过组播方式实现对组播报文的转发,不仅避免了无效广播造成的网络资源的浪费,而且避免了单播方式造成的带宽资源的浪费。
本发明还提供了一种组播报文转发中的路由设备,能够通过组播方式实现对组播报文的转发,不仅避免了无效广播造成的网络资源的浪费,而且避免了单播方式造成的带宽资源的浪费。
为了达到上述目的,本发明提出的技术方案为:
一种组播报文转发方法,该方法包括:
与存在私网组播组接收者的用户边缘路由器CE相连的运营商边缘路由器PE接收由所述CE发出的因特网控制报文协议IGMP请求报文,将所述IGMP请求报文进行扩展使之携带虚拟交换接口的身份标识号码VSI-ID后,将所述扩展的IGMP请求报文广播给虚拟交换接口VSI实例内的每一个对端PE;使得每一个对端PE分别对扩展的IGMP请求报文进行解析,保存解析出的VSI-ID、私网组播组地址和虚链路PW信息;
作为组播源的PE接收到本地CE发送的组播报文后,为所述保存的私网组播组地址分配公网组播隧道、为所述私网组播组增加公网隧道接口;同时,作为组播源的PE在接收到本地CE发送的组播报文中的第一个报文时,触发组播域MD报文,所述MD报文包含私网组播组地址和分配的公网组播隧道的目的IP地址,将所述MD报文广播给VSI实例内的每一个对端PE,使得接收到MD报文的每一个对端PE对所述MD报文进行解析后,建立私网组播组地址和公网组播地址的映射,且存在相同私网组播组地址的PE触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文进行广播,直到作为组播源的PE接收;
其中,所述将所述IGMP加入请求报文进行广播后,该方法还包括:
使得公网中的每一个设备接收到IGMP加入请求报文后,建立包含公网组播地址和对应的出接口的公网组播地址转发表,作为组播源的PE将组播报文封装上公网组播隧道头后,根据公网组播隧道头中的公网组播地址和建立的公网组播地址转发表对所述接收到的组播报文在VSI实例内进行组播。
作为组播源的PE接收本地CE发送的组播报文之前,该方法进一步包括:
当与存在私网组播组接收者的CE相连的PE的接入链路AC去使能IGMP时,该PE判断该私网组播组是否存在其它接收接口,如果是,则删除去使能IGMP的AC所对应的接口;否则,产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的每一个对端PE;使得每一个对端PE删除保存的该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
作为组播源的PE接收本地CE发送的组播报文之前,该方法进一步包括:
当与存在私网组播组接收者的CE相连的PE的VSI实例状态由UP变为DOWN时,该PE产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的每一个对端PE;使得每一个对端PE删除保存的该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
所述作为组播源的PE将组播报文封装上公网组播隧道头之后,该方法进一步包括:
当与不存在相同私网组播组地址的PE连接的CE加入该私网组播组时,该PE接收该CE发送的IGMP请求报文,将所述IGMP请求报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP请求报文广播给VSI实例内的每一个对端PE,并根据建立的私网组播组地址和公网组播地址的映射关系,触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文进行广播,直到作为组播源的PE接收;使得公网中的每一个设备接收到IGMP加入请求报文后,建立包含公网组播地址和对应的出接口的公网组播地址转发表,作为组播源的PE将组播报文封装上公网组播隧道头后,根据公网组播隧道头中的公网组播地址和建立的公网组播地址转发表对所述接收到的组播报文在VSI实例内进行组播。
所述作为组播源的PE将组播报文封装上公网组播隧道头之后,该方法进一步包括:
当存在相同私网组播组地址的PE连接的CE退出该私网组播组时,该PE接收到该CE发送的IGMP通告报文后,PE判断该私网组播组是否存在其它接收接口,如果是,则删除退出该私网组播组的CE的接口;否则,产生IGMP退出请求报文,删除该私网组播组,并将所述IGMP退出请求报文进行广播,直到作为组播源的PE接收。
一种组播报文转发方法,该方法包括:
与存在私网组播组接收者的用户边缘路由器CE相连的运营商边缘路由器PE接收由所述CE发出的因特网控制报文协议IGMP请求报文,将所述IGMP请求报文进行扩展使之携带虚拟交换接口的身份标识号码VSI-ID后,将所述扩展的IGMP请求报文广播给虚拟交换接口VSI实例内的每一个对端PE;
每一个对端PE分别对扩展的IGMP请求报文进行解析,保存解析出的VSI-ID、私网组播组地址和虚链路PW信息;同时,每一个对端PE接收由作为组播源的PE触发的组播域MD报文,所述MD报文包含私网组播组地址和分配的公网组播隧道的目的IP地址,并对所述MD报文进行解析后,建立私网组播组地址和公网组播地址的映射,且存在相同私网组播组地址的PE触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文进行广播,直到作为组播源的PE接收;
其中,所述将所述IGMP加入请求报文进行广播后,该方法还包括:
公网中的每一个设备接收到IGMP加入请求报文后,建立包含公网组播地址和对应的出接口的公网组播地址转发表,使得作为组播源的PE将组播报文封装上公网组播隧道头后,根据公网组播隧道头中的公网组播地址和建立的公网组播地址转发表对所述接收到的组播报文在VSI实例内进行组播。
所述每一个对端PE接收由作为组播源的PE触发的MD报文之前,该方法进一步包括:
当与存在私网组播组接收者的CE相连的PE的接入链路AC去使能IGMP时,该PE判断该私网组播组是否存在其它接收接口,如果是,则删除去使能IGMP的AC所对应的接口;否则,产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的每一个对端PE;每一个对端PE删除保存的该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
所述每一个对端PE接收由作为组播源的PE触发的MD报文之前,该方法进一步包括:
当与存在私网组播组接收者的CE相连的PE的VSI实例状态由UP变为DOWN时,该PE产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的每一个对端PE;每一个对端PE删除保存的该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
所述作为组播源的PE将组播报文封装上公网组播隧道头之后,该方法进一步包括:
当与不存在相同私网组播组地址的PE连接的CE加入该私网组播组时,该PE接收该CE发送的IGMP请求报文,将所述IGMP请求报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP请求报文广播给VSI实例内的每一个对端PE,并根据建立的私网组播组地址和公网组播地址的映射关系,触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文进行广播,直到作为组播源的PE接收;公网中的每一个设备接收到IGMP加入请求报文后,建立包含公网组播地址和对应的出接口的公网组播地址转发表,使得作为组播源的PE将组播报文封装上公网组播隧道头后,根据公网组播隧道头中的公网组播地址和建立的公网组播地址转发表对所述接收到的组播报文在VSI实例内进行组播。
所述作为组播源的PE将组播报文封装上公网组播隧道头之后,该方法进一步包括:
当存在相同私网组播组地址的PE连接的CE退出该私网组播组时,该PE接收到该CE发送的IGMP通告报文后,PE判断该私网组播组是否存在其它接收接口,如果是,则删除退出该私网组播组的CE的接口;否则,产生IGMP退出请求报文,删除该私网组播组,并将所述IGMP退出请求报文进行广播,直到作为组播源的PE接收。
一种组播报文转发中的路由设备,该路由设备被指定为本端运营商边缘路由器PE,该路由设备包括发送单元、分配单元、第一触发单元和第二触发单元,其中,
所述发送单元,用于接收存在私网组播组接收者的用户边缘路由器CE发出的因特网控制报文协议IGMP请求报文,将所述IGMP请求报文进行扩展使之携带虚拟交换接口的身份标识号码VSI-ID后,将所述扩展的IGMP请求报文广播给虚拟交换接口VSI实例内的对端PE;使得对端PE对扩展的IGMP请求报文进行解析,保存解析出的VSI-ID、私网组播组地址和虚链路PW信息;
所述分配单元,用于接收到由CE发送的组播报文后,为所述私网组播组地址分配公网组播隧道、为所述私网组播组增加公网隧道接口;
所述第一触发单元,用于当接收到CE发送的组播报文中的第一个报文时,触发组播域MD报文,将所述MD报文广播给VSI实例内的对端PE,所述MD报文包含私网组播组地址和分配的公网组播隧道的目的IP地址;
所述第二触发单元,用于当存在与所述MD报文相同的私网组播组地址时,触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文广播到对端PE;
其中,该路由设备还包括组播单元,用于将组播报文封装上公网组播隧道头,根据每一个设备接收到IGMP加入请求报文后建立的包含公网组播地址和对应的出接口的公网组播地址转发表对所述接收到的组播报文在VSI实例内组播给对端PE。
该路由设备还包括删除单元,用于当AC去使能IGMP时,判断该私网组播组是否存在其它接收接口,如果是,则删除去使能IGMP的AC所对应的接口;否则,产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的对端PE,使得对端PE删除该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
该路由设备还包括删除单元,用于当VSI实例状态由UP变为DOWN时,产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的对端PE,使得对端PE删除该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
一种组播报文转发中的路由设备,该路由设备被指定为对端运营商边缘路由器PE,该路由设备包括发送单元、解析单元和建立映射单元,其中,
所述发送单元,用于接收存在私网组播组接收者的用户边缘路由器CE发出的因特网控制报文协议IGMP请求报文,将所述IGMP请求报文进行扩展使之携带虚拟交换接口的身份标识号码VSI-ID后,将所述扩展的IGMP请求报文广播给虚拟交换接口VSI实例内的本端PE;
所述解析单元,用于对扩展的IGMP请求报文进行解析,保存解析出的VSI-ID、私网组播组地址和虚链路PW信息;
所述建立映射单元,用于接收本端PE触发的组播域MD报文,所述MD报文包含私网组播组地址和分配的公网组播隧道的目的IP地址,并对所述MD报文进行解析后,建立私网组播组地址和公网组播地址的映射,且存在相同私网组播组地址的PE触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文进行广播,直到本端PE接收;
其中,该路由设备还包括组播单元,用于接收到IGMP加入请求报文后,建立包含公网组播地址和对应的出接口的公网组播地址转发表,使得作为组播源的PE将组播报文封装上公网组播隧道头后,根据公网组播隧道头中的公网组播地址和建立的公网组播地址转发表对所述接收到的组播报文在VSI实例内进行组播。
该路由设备还包括删除单元,用于当AC去使能IGMP时,判断该私网组播组是否存在其它接收接口,如果是,则删除去使能IGMP的AC所对应的接口;否则,产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的本端PE,使得本端PE删除该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
该路由设备还包括删除单元,用于当VSI实例状态由UP变为DOWN时,产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的本端PE,使得本端PE删除该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
综上所述,本发明所采用的组播报文转发方法和路由设备,是通过当作为组播源的PE接收到第一个报文时触发组播域(MD)报文,所述MD报文中包含私网组播组地址和公网组播地址信息,将所述MD报文广播给VSI实例内的每一个对端PE,每一个对端PE对MD报文进行解析后,建立私网组播组地址和公网组播地址的映射,同时,存在相同私网组播组地址的PE触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文进行广播,直到作为组播源的PE接收,中间运营商骨干路由器(P)设备接收到IGMP加入请求报文后,建立公网组播地址的转发表,所述公网组播地址的转发表中包含公网组播地址和对应的出接口,作为组播源的PE接收到IGMP加入请求报文后,为组播报文添加公网组播隧道头,进而根据公网组播隧道的出接口对所述接收到的组播报文在VSI实例内进行组播,也就实现了通过组播方式对组播报文的转发,不仅避免了无效广播造成的网络资源的浪费,而且避免了单播方式造成的带宽资源的浪费。
进一步地,本发明所采用的组播报文转发方法和路由设备中,PE在将IGMP请求报文进行广播之前,先将其进行扩展使之携带虚拟交换接口的身份标识号码(VSI-ID),将IGMP请求报文与其它数据报文区分开来,避免了将具有与一般数据报文内容的IGMP请求报文作为数据报文来对待的问题,使得组播报文能够正常进行转发。
附图说明
图1为现有VPLS域内组播报文处理的结构示意图;
图2为本发明组播报文转发方法实施例的工作流程图;
图3为本发明IGMP报文泛洪过程示意图;
图4为本发明公网组播地址创建示意图;
图5为本发明路由设备装置实施例一的结构示意图;
图6为本发明路由设备装置实施例二的结构示意图。
具体实施方式
为了解决现有技术中存在的问题,本发明提出了一种组播报文转发方法和路由设备,即通过当作为组播源的PE接收到第一个报文时触发MD报文,所述MD报文中包含私网组播组地址和分配的公网组播隧道的目的IP地址,将所述MD报文广播给VSI实例内的每一个对端PE,每一个对端PE对MD报文进行解析后,建立私网组播组地址和公网组播地址的映射,同时,存在相同私网组播组地址的PE触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文进行广播,直到作为组播源的PE接收,公网中的每一个设备接收到IGMP加入请求报文后,建立包含公网组播地址和对应的出接口的公网组播地址转发表,作为组播源的PE为接收到的组播报文封装公网组播隧道头后,进而根据公网组播隧道头中的公网组播地址和建立的公网组播地址转发表中公网组播地址对应的出接口对所述接收到的组播报文在VSI实例内进行组播。
基于上述介绍,本发明所述方案的具体实现包括:
与存在私网组播组接收者的用户边缘路由器CE相连的运营商边缘路由器PE接收由所述CE发出的因特网控制报文协议IGMP请求报文,将所述IGMP请求报文进行扩展使之携带虚拟交换接口的身份标识号码VSI-ID后,将所述扩展的IGMP请求报文广播给虚拟交换接口VSI实例内的每一个对端PE;使得每一个对端PE分别对扩展的IGMP请求报文进行解析,保存解析出的VSI-ID、私网组播组地址和虚链路PW信息;作为组播源的PE接收到本地CE发送的组播报文后,为所述保存的私网组播组地址分配公网组播隧道、为所述私网组播组增加公网隧道接口;同时,作为组播源的PE在接收到本地CE发送的组播报文中的第一个报文时,触发组播域MD报文,所述MD报文包含私网组播组地址和分配的公网组播隧道的目的IP地址,将所述MD报文广播给VSI实例内的每一个对端PE,使得接收到MD报文的每一个对端PE对所述MD报文进行解析后,建立私网组播组地址和公网组播地址的映射,且存在相同私网组播组地址的PE触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文进行广播,直到作为组播源的PE接收,
或,与存在私网组播组接收者的用户边缘路由器CE相连的运营商边缘路由器PE接收由所述CE发出的因特网控制报文协议IGMP请求报文,将所述IGMP请求报文进行扩展使之携带虚拟交换接口的身份标识号码VSI-ID后,将所述扩展的IGMP请求报文广播给虚拟交换接口VSI实例内的每一个对端PE;每一个对端PE分别对扩展的IGMP请求报文进行解析,保存解析出的VSI-ID、私网组播组地址和虚链路PW信息;同时,每一个对端PE接收由作为组播源的PE触发的组播域MD报文,所述MD报文包含私网组播组地址和分配的公网组播隧道的目的IP地址,并对所述MD报文进行解析后,建立私网组播组地址和公网组播地址的映射,且存在相同私网组播组地址的PE触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文进行广播,直到作为组播源的PE接收。
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步地详细描述。
图2为本发明组播报文转发方法的工作流程图。如图2所示,该流程包括:
步骤201:PE接收由CE发出的IGMP请求报文,对其进行扩展后发送给所有对端PE;每一个对端PE解析并保存扩展的IGMP请求报文中的VSI-ID、私网组播组地址和PW信息。
本步骤的具体处理过程可参见图3所示的IGMP报文泛洪过程,如图3所示,当CE10存在私网组播组239.1.1.1接收者,且与PE1的AC上使能IGMP时,CE10向PE1发出IGMP请求报文请求加入私网组播组,PE1接收IGMP请求报文并检查是否已经存在VSI1实例内的私网组播组,若存在,则在该私网组播组239.1.1.1中添加CE10这个出接口,若不存在,则创建本地私网组播组转发表,其中包含CE10这个出接口。同时,PE1将该IGMP请求报文进行协议扩展,使之携带实例VSI1的VSI-ID信息后,并将该报文广播给所有VSI1实例内的所有对端PE、即P2、P3、PE2、PE4和PE3,PE1将扩展的IGMP请求报文进行广播时,需要将其携带VPLS标签隧道头。扩展后的IGMP请求报文的具体格式可参见如下表1。
表1
其中,Type为IGMP请求报文的类型,如查询报文为0x11,报告报文为0x16,扩展加入报文为0x26,表示IGMP请求报文为扩展报告报文;VSI-ID为VSI实例的ID,标识该IGMP所属的实例号;Checksum为校验和;MulticastAddress为私网组播组地址,这里为239.1.1.1。
每一个对端PE在接收到扩展的IGMP请求报文后,解析所述扩展的IGMP请求报文,并保存解析出的扩展的IGMP请求报文中的VSI-ID、私网组播组地址和PW信息。其中,PW信息是指接收扩展的IGMP请求报文的PE(图3中的P2、P3、PE2、PE4或PE3)与发送扩展的IGMP请求报文的PE(图3中的PE1)之间的连接,也即扩展的IGMP请求报文发送者的源IP地址。
当其它CE上也存在239.1.1.1的私网组播组接收者时,与该PE相连的PE也会将扩展的IGMP请求报文广播到VPLS域内,其具体实现过程同上,这里不再赘述。
需要说明的是,一般情况下,每条AC链路上都默认为是IGMP使能的,因此,只要某个CE上存在私网组播组的接收者时,与该CE相连的PE都会将扩展的IGMP请求报文广播到VPLS域内。
进一步地,在本步骤中,当CE10与PE1的AC上去使能IGMP时,PE1判断该私网组播组是否存在其它接收接口,如果是,则删除去使能IGMP的AC所对应的接口;否则,产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的每一个对端PE。从图3中可以看出,如果CE10与PE1的AC上去使能IGMP,由于PE1没有连接其它的CE,因此,PE1会产生一个IGMP通告报文,并删除私网组播组239.1.1.1,同时,还会将产生的IGMP通告报文进行扩展使之携带VSI-ID后,广播到P2、P3、PE2、PE4和PE3。在本步骤中,IGMP通告报文的具体格式可参见如下表2。
表2
其中,Type为IGMP通告报文类型,查询报文为0x11,报告报文为0x16,扩展离开报文为0x27,表示IGMP通告报文为扩展报告报文;VSI-ID为VPLS实例的ID,标识该IGMP通告报文所属的实例号;Checksum为校验和;Multicast Address为私网组播组地址。
此外,在本步骤中,当本端PE上的VSI1实例状态由UP变为DOWN时,需要向所有对端PE发送IGMP离开报文,通告本端PE不再存在VSI1实例内组播组的接收者,此时,本端PE删除该私网组播组,并将所述IGMP离开报文进行扩展使之携带VSI-ID后,再将所述扩展的IGMP离开报文广播给VSI实例内的每一个对端PE。在本步骤中,IGMP离开报文的具体格式也可参见表2,这里不再赘述。
步骤202:作为组播源的PE接收到组播报文后,为保存的私网组播组地址分配公网组播隧道、为私网组播组增加公网隧道接口,并将所述组播报文在VSI实例内广播。
本步骤的处理过程可参见图4,如图4所示,当完成了IGMP报文泛洪之后,各个PE上均保留了各个私网组播组的信息,此时,当其中某个PE、如PE2接收到CE20发送的组播报文时,PE2将为私网组播组地址239.1.1.1分配公网组播隧道,并为私网组播组增加公网隧道接口,同时,PE2还将按照普通的广播报文方式为组播报文封装VPLS标签在VSI1域内广播,也即此时组播流量会在整网内广播。
步骤203:作为组播源的PE接收到第一个组播报文的同时,还会触发并广播MD报文;每一个对端PE解析接收到的MD报文,并根据MD报文中的私网组播组地址和公网组播地址信息建立私网组播组地址的映射,且存在相同私网组播组地址的PE还会触发并广播公网组播地址的IGMP加入请求报文;公网中每一个设备接收到IGMP加入请求报文后,建立包含公网组播地址和对应的出接口的公网组播地址转发表,作为组播源的PE将组播报文封装公网组播隧道头后,根据公网组播地址和公网组播地址转发表中公网组播地址对应的出接口对所述接收到的组播报文在VSI实例内进行组播。
本步骤的具体处理过程同样也可参见图4,如图4所示,PE2在检测第一个报文时会触发MD报文,所述MD报文包含私网组播组地址和公网组播隧道的目的IP地址,同时,PE2对MD报文使用VPLS标签封装后,将其广播给VSI1实例内的对端PE,各个PE均能接收到该MD报文,并在接收到之后对其进行解析,根据解析出的MD报文中私网组播组地址和公网组播地址建立私网组播组地址和公网组播地址的映射。进一步地,存在相同私网组播组地址的PE还会触发并广播公网组播地址的IGMP加入请求报文,以请求加入公网组播地址,该IGMP加入请求报文被广播到公网中,沿途中间P设备接收到IGMP加入请求报文后,建立包含公网组播地址和对应的出接口的公网组播地址转发表,作为组播源的PE接收到IGMP加入请求报文后,不仅建立包含公网组播地址和对应的出接口的公网组播地址转发表,而且还将接收到的组播报文封装公网组播隧道头,进而根据公网组播隧道头中的公网组播地址和公网组播地址转发表中公网组播地址对应的出接口对所述接收到的组播报文在VSI实例内进行组播。
比如,当步骤202中的PE2接收到第一个组播报文时,触发包含私网组播组地址239.1.1.1和分配的公网组播地址224.1.1.1信息的MD报文,并将其广播给所有PE对端,接收到MD报文的所有PE对端、即PE1、PE3和PE4解析该MD报文,并根据解析出的MD报文中私网组播组地址和公网组播地址信息建立私网组播组地址和公网组播地址的映射;同时,由于PE1和PE4中存在相同的私网组播组地址239.1.1.1,且在本地都有私网组播组的出接口、即CE10和CE40,因此,PE1和PE4都会触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文广播到公网中;公网上的P3和P1、以及每一个PE接收到PE1和PE4的IGMP加入请求报文后,都建立包含公网组播地址和对应的出接口的公网组播地址转发表,此外,作为组播源的PE2接收到IGMP加入请求报文后,不仅建立包含公网组播地址和对应的出接口的公网组播地址转发表,而且还将组播报文封装公网组播隧道头,并根据公网组播隧道头中的公网组播地址和公网组播地址转发表中公网组播地址对应的出接口对组播报文进行组播方式转发,即,当公网组播地址转发表建立之后,步骤202中由PE2接收到的组播报文将以组播方式进行转发。
当PE2为私网组播地址封装公网组播隧道头后,如果与其它PE连接的CE加入私网组播组,如PE3接收到了CE30的IGMP请求报文,要求加入到239.1.1.1私网组播组中,由于PE3已经接收到了PE2发出的MD报文,并保存了该私网组播组地址239.1.1.1和公网组播地址的映射,因此,PE3会在本地将CE30出接口添加到私网组播地址转发表中,并直接向公网广播IGMP加入请求报文,由此,组播流量就可以引入到PE3。需要说明的是,当CE30加入私网组播组时,为了保持各个私网组播组信息的同步,PE3在本地将CE30出接口添加到私网组播地址转发表中后仍然需要触发IGMP报文泛洪,即在VPLS实例内广播IGMP请求报文。
当PE2为私网组播地址封装公网组播隧道头后,如果该私网组播组中的CE要求退出该私网组播组,如与PE3连接的CE30退出私网组播组239.1.1.1,此时PE3接收到CE30发送的IGMP通告报文后,PE3判断该私网组播组是否存在其它接收接口,如果是,则删除退出该私网组播组的CE的接口;否则,产生IGMP退出请求报文,删除该私网组播组,并将所述IGMP退出请求报文进行广播,直到作为组播源的PE接收。即:PE3接收到CE30发送的IGMP通告报文后,发现该私网组播没有其他的接口,则删除该私网组播组,同时向公网中的各个PE广播IGMP退出请求报文,该IGMP退出请求报文为增加了VSI-ID字段的扩展报文,各个PE设备接收到私网组播地址的IGMP退出请求报文后,删除与PE3对应的VSI-ID、私网组播地址和PW信息,同时PE3会向组播源的上游设备通告公网组播地址的IGMP通告报文,上游设备接收到IGMP通告报文后,更新公网组播地址转发表,删除与PE3相连的公网组播隧道的出接口,停止转发到PE3的组播流量。
至此,即得到了本发明所采用的组播报文转发方法。
需要说明的是,在本实施例中,组播报文在VPLS网络中的转发分为两种,即先广播后组播的方式,具体为:当PE为私网组播地址封装公网组播隧道头之前,组播报文是按照广播的方式进行转发的;当PE为私网组播地址封装公网组播隧道头之后,组播报文才按照组播方式进行转发。由于作为组播源的PE在接收到组播报文的同时会触发MD报文,进而使得各个PE设备在接收到组播报文后很快就能够建立公网组播地址转发表,进而由作为组播源的PE为私网组播地址封装公网组播隧道头,使得组播报文能够按照组播的方式转发,因此,也就避免了广播造成的网络资源的浪费。
还需说明的是,本实施例是以对IGMP报文进行泛洪来说明的组播报文的转发实现方法,实际中还可采用对PIM报文进行泛洪来实现,具体实现过程类同,这里不再赘述。
基于上述方法,图5为本发明所采用的路由设备装置实施例一的结构示意图。该路由设备应用于组播报文转发中,且被指定为本端PE,如图5所示,该路由设备包括:发送单元501、分配单元502、第一触发单元503和第二触发单元504。其中,
所述发送单元501,用于接收存在私网组播组接收者的CE发出的IGMP请求报文,将所述IGMP请求报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP请求报文广播给VSI实例内的对端PE;使得对端PE对扩展的IGMP请求报文进行解析,保存解析出的VSI-ID、私网组播组地址和PW信息。
所述分配单元502,用于接收到由CE发送的组播报文后,为所述私网组播组地址分配公网组播隧道、为所述私网组播组增加公网隧道接口
所述第一触发单元503,用于当接收到CE发送的第一个组播报文时,触发MD报文,将所述MD报文广播给VSI实例内的对端PE,所述MD报文包含私网组播组地址和分配的公网组播隧道的目的IP地址。
所述第二触发单元504,用于当存在与MD报文相同的私网组播组地址时,触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文广播到对端PE。
该路由设备还可包括组播单元505,用于将组播报文封装上公网组播隧道头,根据每一个设备接收到IGMP加入请求报文后建立的包含公网组播地址和对应的出接口的公网组播地址转发表对所述接收到的组播报文在VSI实例内组播给对端PE。
进一步地,该路由设备还包括删除单元506,用于当AC去使能IGMP时,判断该私网组播组是否存在其它接收接口,如果是,则删除去使能IGMP的AC所对应的接口;否则,产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的对端PE,使得对端PE删除该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
所述删除单元506,还用于当VSI实例状态由UP变为DOWN时,产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的对端PE,使得对端PE删除该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
至此,即得到了本实施例所采用的路由设备。
同样地,基于上述方法,图6为本发明路由设备装置实施例二的结构示意图。该路由设备应用于组播报文转发中,且被指定为对端PE,如图6所示,该路由设备包括:发送单元601、解析单元602和建立映射单元603,其中,
所述发送单元601,用于接收存在私网组播组接收者的CE发出的IGMP请求报文,将所述IGMP请求报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP请求报文广播给虚拟交换接口VSI实例内的本端PE;
所述解析单元602,用于对扩展的IGMP请求报文进行解析,保存解析出的VSI-ID、私网组播组地址和PW信息;
所述建立映射单元603,用于接收本端PE触发的MD报文,所述MD报文包含私网组播组地址和分配的公网组播隧道的目的IP地址,并对所述MD报文进行解析后,建立私网组播组地址和公网组播地址的映射,且存在相同私网组播组地址的PE触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文进行广播,直到本端PE接收。
进一步地,该路由设备还包括组播单元604,用于接收到IGMP加入请求报文后,建立包含公网组播地址和对应的出接口的公网组播地址转发表,使得作为组播源的PE将组播报文封装上公网组播隧道头后,根据公网组播隧道头中的公网组播地址和建立的公网组播地址转发表对所述接收到的组播报文在VSI实例内进行组播。
该路由设备还可以包括删除单元605,用于当AC去使能IGMP时,判断该私网组播组是否存在其它接收接口,如果是,则删除去使能IGMP的AC所对应的接口;否则,产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的本端PE,使得本端PE删除该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
进一步地,所述删除单元605,还用于当VSI实例状态由UP变为DOWN时,产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的本端PE,使得本端PE删除该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
至此,即得到了本实施例所采用的路由设备。
图5和图6所示路由设备的具体工作流程可参见图2,这里不再赘述。
总之,本发明所采用的组播报文转发方法和路由设备,通过当作为组播源的PE接收到第一个报文时触发MD报文,所述MD报文中包含私网组播组地址和公网组播隧道的目的IP地址信息,将所述MD报文广播给VSI实例内的每一个对端PE,每一个对端PE对MD报文进行解析后,建立私网组播组地址和公网组播地址的映射,同时,存在相同私网组播组地址的PE触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文进行广播,直到作为组播源的PE接收,中间P设备接收到IGMP加入请求报文后,建立公网组播地址的转发表,所述公网组播地址的转发表中包含公网组播隧道的目的IP地址和对应的出接口,作为组播源的PE接收到IGMP加入请求报文后,为组播报文添加公网组播隧道头,进而根据公网组播隧道的出接口对所述接收到的组播报文在VSI实例内进行组播,也就实现了通过组播方式对组播报文的转发,不仅避免了无效广播造成的网络资源的浪费,而且避免了单播方式造成的带宽资源的浪费。
进一步地,本发明所采用的组播报文转发方法和路由设备中,PE在将IGMP请求报文进行广播之前,先将其进行扩展使之携带VSI-ID,将IGMP请求报文与其它数据报文区分开来,避免了将具有与一般数据报文内容的IGMP请求报文作为数据报文来对待的问题,使得组播报文能够正常进行转发。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (16)
1.一种组播报文转发方法,其特征在于,该方法包括:
与存在私网组播组接收者的用户边缘路由器CE相连的运营商边缘路由器PE接收由所述CE发出的因特网控制报文协议IGMP请求报文,将所述IGMP请求报文进行扩展使之携带虚拟交换接口的身份标识号码VSI-ID后,将所述扩展的IGMP请求报文广播给虚拟交换接口VSI实例内的每一个对端PE;使得每一个对端PE分别对扩展的IGMP请求报文进行解析,保存解析出的VSI-ID、私网组播组地址和虚链路PW信息;
作为组播源的PE接收到本地CE发送的组播报文后,为所述保存的私网组播组地址分配公网组播隧道、为所述私网组播组增加公网隧道接口;同时,作为组播源的PE在接收到本地CE发送的组播报文中的第一个报文时,触发组播域MD报文,所述MD报文包含私网组播组地址和分配的公网组播隧道的目的IP地址,将所述MD报文广播给VSI实例内的每一个对端PE,使得接收到MD报文的每一个对端PE对所述MD报文进行解析后,建立私网组播组地址和公网组播地址的映射,且存在相同私网组播组地址的PE触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文进行广播,直到作为组播源的PE接收;
其中,所述将所述IGMP加入请求报文进行广播后,该方法还包括:
使得公网中的每一个设备接收到IGMP加入请求报文后,建立包含公网组播地址和对应的出接口的公网组播地址转发表,作为组播源的PE将组播报文封装上公网组播隧道头后,根据公网组播隧道头中的公网组播地址和建立的公网组播地址转发表对所述接收到的组播报文在VSI实例内进行组播。
2.根据权利要求1所述的方法,其特征在于,作为组播源的PE接收本地CE发送的组播报文之前,该方法进一步包括:
当与存在私网组播组接收者的CE相连的PE的接入链路AC去使能IGMP时,该PE判断该私网组播组是否存在其它接收接口,如果是,则删除去使能IGMP的AC所对应的接口;否则,产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的每一个对端PE;使得每一个对端PE删除保存的该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
3.根据权利要求1所述的方法,其特征在于,作为组播源的PE接收本地CE发送的组播报文之前,该方法进一步包括:
当与存在私网组播组接收者的CE相连的PE的VSI实例状态由UP变为DOWN时,该PE产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的每一个对端PE;使得每一个对端PE删除保存的该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
4.根据权利要求1所述的方法,其特征在于,所述作为组播源的PE将组播报文封装上公网组播隧道头之后,该方法进一步包括:
当与不存在相同私网组播组地址的PE连接的CE加入该私网组播组时,该PE接收该CE发送的IGMP请求报文,将所述IGMP请求报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP请求报文广播给VSI实例内的每一个对端PE,并根据建立的私网组播组地址和公网组播地址的映射关系,触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文进行广播,直到作为组播源的PE接收;使得公网中的每一个设备接收到IGMP加入请求报文后,建立包含公网组播地址和对应的出接口的公网组播地址转发表,作为组播源的PE将组播报文封装上公网组播隧道头后,根据公网组播隧道头中的公网组播地址和建立的公网组播地址转发表对所述接收到的组播报文在VSI实例内进行组播。
5.根据权利要求1所述的方法,其特征在于,所述作为组播源的PE将组播报文封装上公网组播隧道头之后,该方法进一步包括:
当存在相同私网组播组地址的PE连接的CE退出该私网组播组时,该PE接收到该CE发送的IGMP通告报文后,PE判断该私网组播组是否存在其它接收接口,如果是,则删除退出该私网组播组的CE的接口;否则,产生IGMP退出请求报文,删除该私网组播组,并将所述IGMP退出请求报文进行广播,直到作为组播源的PE接收。
6.一种组播报文转发方法,其特征在于,该方法包括:
与存在私网组播组接收者的用户边缘路由器CE相连的运营商边缘路由器PE接收由所述CE发出的因特网控制报文协议IGMP请求报文,将所述IGMP请求报文进行扩展使之携带虚拟交换接口的身份标识号码VSI-ID后,将所述扩展的IGMP请求报文广播给虚拟交换接口VSI实例内的每一个对端PE;
每一个对端PE分别对扩展的IGMP请求报文进行解析,保存解析出的VSI-ID、私网组播组地址和虚链路PW信息;同时,每一个对端PE接收由作为组播源的PE触发的组播域MD报文,所述MD报文包含私网组播组地址和分配的公网组播隧道的目的IP地址,并对所述MD报文进行解析后,建立私网组播组地址和公网组播地址的映射,且存在相同私网组播组地址的PE触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文进行广播,直到作为组播源的PE接收;
其中,所述将所述IGMP加入请求报文进行广播后,该方法还包括:
公网中的每一个设备接收到IGMP加入请求报文后,建立包含公网组播地址和对应的出接口的公网组播地址转发表,使得作为组播源的PE将组播报文封装上公网组播隧道头后,根据公网组播隧道头中的公网组播地址和建立的公网组播地址转发表对所述接收到的组播报文在VSI实例内进行组播。
7.根据权利要求6所述的方法,其特征在于,所述每一个对端PE接收由作为组播源的PE触发的MD报文之前,该方法进一步包括:
当与存在私网组播组接收者的CE相连的PE的接入链路AC去使能IGMP时,该PE判断该私网组播组是否存在其它接收接口,如果是,则删除去使能IGMP的AC所对应的接口;否则,产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的每一个对端PE;每一个对端PE删除保存的该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
8.根据权利要求6所述的方法,其特征在于,所述每一个对端PE接收由作为组播源的PE触发的MD报文之前,该方法进一步包括:
当与存在私网组播组接收者的CE相连的PE的VSI实例状态由UP变为DOWN时,该PE产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的每一个对端PE;每一个对端PE删除保存的该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
9.根据权利要求6所述的方法,其特征在于,所述作为组播源的PE将组播报文封装上公网组播隧道头之后,该方法进一步包括:
当与不存在相同私网组播组地址的PE连接的CE加入该私网组播组时,该PE接收该CE发送的IGMP请求报文,将所述IGMP请求报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP请求报文广播给VSI实例内的每一个对端PE,并根据建立的私网组播组地址和公网组播地址的映射关系,触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文进行广播,直到作为组播源的PE接收;公网中的每一个设备接收到IGMP加入请求报文后,建立包含公网组播地址和对应的出接口的公网组播地址转发表,使得作为组播源的PE将组播报文封装上公网组播隧道头后,根据公网组播隧道头中的公网组播地址和建立的公网组播地址转发表对所述接收到的组播报文在VSI实例内进行组播。
10.根据权利要求6所述的方法,其特征在于,所述作为组播源的PE将组播报文封装上公网组播隧道头之后,该方法进一步包括:
当存在相同私网组播组地址的PE连接的CE退出该私网组播组时,该PE接收到该CE发送的IGMP通告报文后,PE判断该私网组播组是否存在其它接收接口,如果是,则删除退出该私网组播组的CE的接口;否则,产生IGMP退出请求报文,删除该私网组播组,并将所述IGMP退出请求报文进行广播,直到作为组播源的PE接收。
11.一种组播报文转发中的路由设备,其特征在于,该路由设备被指定为本端运营商边缘路由器PE,该路由设备包括发送单元、分配单元、第一触发单元和第二触发单元,其中,
所述发送单元,用于接收存在私网组播组接收者的用户边缘路由器CE发出的因特网控制报文协议IGMP请求报文,将所述IGMP请求报文进行扩展使之携带虚拟交换接口的身份标识号码VSI-ID后,将所述扩展的IGMP请求报文广播给虚拟交换接口VSI实例内的对端PE;使得对端PE对扩展的IGMP请求报文进行解析,保存解析出的VSI-ID、私网组播组地址和虚链路PW信息;
所述分配单元,用于接收到由CE发送的组播报文后,为所述私网组播组地址分配公网组播隧道、为所述私网组播组增加公网隧道接口;
所述第一触发单元,用于当接收到CE发送的组播报文中的第一个报文时,触发组播域MD报文,将所述MD报文广播给VSI实例内的对端PE,所述MD报文包含私网组播组地址和分配的公网组播隧道的目的IP地址;
所述第二触发单元,用于当存在与所述MD报文相同的私网组播组地址时,触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文广播到对端PE;
其中,该路由设备还包括组播单元,用于将组播报文封装上公网组播隧道头,根据每一个设备接收到IGMP加入请求报文后建立的包含公网组播地址和对应的出接口的公网组播地址转发表对所述接收到的组播报文在VSI实例内组播给对端PE。
12.根据权利要求11所述的路由设备,其特征在于,该路由设备还包括删除单元,用于当接入链路AC去使能IGMP时,判断该私网组播组是否存在其它接收接口,如果是,则删除去使能IGMP的AC所对应的接口;否则,产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的对端PE,使得对端PE删除该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
13.根据权利要求11所述的路由设备,其特征在于,该路由设备还包括删除单元,用于当VSI实例状态由UP变为DOWN时,产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的对端PE,使得对端PE删除该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
14.一种组播报文转发中的路由设备,其特征在于,该路由设备被指定为对端运营商边缘路由器PE,该路由设备包括发送单元、解析单元和建立映射单元,其中,
所述发送单元,用于接收存在私网组播组接收者的用户边缘路由器CE发出的因特网控制报文协议IGMP请求报文,将所述IGMP请求报文进行扩展使之携带虚拟交换接口的身份标识号码VSI-ID后,将所述扩展的IGMP请求报文广播给虚拟交换接口VSI实例内的本端PE;
所述解析单元,用于对扩展的IGMP请求报文进行解析,保存解析出的VSI-ID、私网组播组地址和虚链路PW信息;
所述建立映射单元,用于接收本端PE触发的组播域MD报文,所述MD报文包含私网组播组地址和分配的公网组播隧道的目的IP地址,并对所述MD报文进行解析后,建立私网组播组地址和公网组播地址的映射,且存在相同私网组播组地址的PE触发公网组播地址的IGMP加入请求报文,并将所述IGMP加入请求报文进行广播,直到本端PE接收;
其中,该路由设备还包括组播单元,用于接收到IGMP加入请求报文后,建立包含公网组播地址和对应的出接口的公网组播地址转发表,使得作为组播源的PE将组播报文封装上公网组播隧道头后,根据公网组播隧道头中的公网组播地址和建立的公网组播地址转发表对所述接收到的组播报文在VSI实例内进行组播。
15.根据权利要求14所述的路由设备,其特征在于,该路由设备还包括删除单元,用于当接入链路AC去使能IGMP时,判断该私网组播组是否存在其它接收接口,如果是,则删除去使能IGMP的AC所对应的接口;否则,产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的本端PE,使得本端PE删除该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
16.根据权利要求14所述的路由设备,其特征在于,该路由设备还包括删除单元,用于当VSI实例状态由UP变为DOWN时,产生IGMP通告报文,删除该私网组播组,并将所述IGMP通告报文进行扩展使之携带VSI-ID后,将所述扩展的IGMP通告报文广播给VSI实例内的本端PE,使得本端PE删除该私网组播组对应的VSI-ID、私网组播组地址和PW信息。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110042521.XA CN102075439B (zh) | 2011-02-22 | 2011-02-22 | 一种组播报文转发方法和路由设备 |
EP12749062.1A EP2678975A4 (en) | 2011-02-22 | 2012-02-22 | MULTICAST PACKET TRANSMISSION |
PCT/CN2012/071427 WO2012113326A1 (en) | 2011-02-22 | 2012-02-22 | Multicast packet transmission |
US13/905,127 US20130259042A1 (en) | 2011-02-22 | 2012-02-22 | Multicast packet transmission |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110042521.XA CN102075439B (zh) | 2011-02-22 | 2011-02-22 | 一种组播报文转发方法和路由设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102075439A CN102075439A (zh) | 2011-05-25 |
CN102075439B true CN102075439B (zh) | 2013-09-11 |
Family
ID=44033791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110042521.XA Active CN102075439B (zh) | 2011-02-22 | 2011-02-22 | 一种组播报文转发方法和路由设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20130259042A1 (zh) |
EP (1) | EP2678975A4 (zh) |
CN (1) | CN102075439B (zh) |
WO (1) | WO2012113326A1 (zh) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102075439B (zh) * | 2011-02-22 | 2013-09-11 | 杭州华三通信技术有限公司 | 一种组播报文转发方法和路由设备 |
CN102215166A (zh) * | 2011-06-02 | 2011-10-12 | 中兴通讯股份有限公司 | 一种vpls组播数据转发方法及装置 |
CN102333028B (zh) * | 2011-06-22 | 2013-02-13 | 杭州华三通信技术有限公司 | 一种分层式二层虚拟专用网发送报文的方法及通信设备 |
CN102984072B (zh) * | 2011-09-02 | 2017-06-16 | 南京中兴新软件有限责任公司 | 一种广播报文中继方法、系统和接入服务路由器 |
CN102571375B (zh) * | 2012-02-09 | 2015-04-22 | 北京星网锐捷网络技术有限公司 | 组播转发方法、装置及网络设备 |
CN103634210B (zh) * | 2012-08-28 | 2016-10-19 | 杭州华三通信技术有限公司 | 发现vpls实例的对端pe设备的方法及设备 |
US8953618B2 (en) * | 2012-10-10 | 2015-02-10 | Telefonaktiebolaget L M Ericsson (Publ) | IP multicast service leave process for MPLS-based virtual private cloud networking |
CN102938733B (zh) * | 2012-11-22 | 2016-01-13 | 华为技术有限公司 | 报文的转发方法及其路由设备、识别设备 |
CN103067286B (zh) * | 2013-01-25 | 2016-06-08 | 杭州华三通信技术有限公司 | 一种组播数据传输方法和设备 |
CN103152280B (zh) * | 2013-03-12 | 2016-05-25 | 福建星网锐捷网络有限公司 | 组播流的传输方法、装置和入口边缘设备 |
US9866641B2 (en) * | 2013-06-19 | 2018-01-09 | Huawei Device (Dongguan) Co., Ltd. | Information query method and device |
CN103441878B (zh) * | 2013-08-29 | 2016-08-17 | 杭州华三通信技术有限公司 | Vcf网络中pe设备的归属处理方法及设备 |
CN105451095A (zh) * | 2014-09-30 | 2016-03-30 | 中兴通讯股份有限公司 | 一种支持组播流的媒体播放方法、装置及机顶盒 |
CN105791109B (zh) * | 2014-12-25 | 2020-03-10 | 中兴通讯股份有限公司 | 多协议标签交换中间节点组播转发的方法、装置和节点 |
CN104518891B (zh) | 2014-12-31 | 2017-12-15 | 华为技术有限公司 | 胖树网络中的组播组建立方法、装置及胖树网络 |
CN106161258B (zh) * | 2015-03-25 | 2019-10-01 | 华为技术有限公司 | 用于传输组播协议报文的方法、设备及系统 |
US10511548B2 (en) * | 2017-06-22 | 2019-12-17 | Nicira, Inc. | Multicast packet handling based on control information in software-defined networking (SDN) environment |
CN109981302B (zh) * | 2017-12-28 | 2021-12-03 | 北京华为数字技术有限公司 | 组播通信的方法和装置 |
CN110868353B (zh) * | 2018-08-28 | 2022-02-08 | 杭州海康威视数字技术股份有限公司 | 一种报文处理方法及装置 |
CN111327534B (zh) * | 2018-12-13 | 2022-06-14 | 浙江宇视科技有限公司 | 一种跨域单播转组播传输方法及装置 |
CN112636935B (zh) * | 2019-10-08 | 2023-06-30 | 中兴通讯股份有限公司 | 基于IPv6网络的虚拟专用网络组播方法及电子设备 |
CN115883286B (zh) * | 2022-11-29 | 2024-04-09 | 迈普通信技术股份有限公司 | Igmp报文处理方法、装置、vtep设备及存储介质 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030080443A (ko) * | 2002-04-08 | 2003-10-17 | (주) 위즈네트 | 하드웨어 프로토콜 프로세싱 로직으로 구현된 인터넷 통신프로토콜 장치 및 상기 장치를 통한 데이터 병렬 처리 방법 |
US20060007930A1 (en) * | 2004-07-09 | 2006-01-12 | Dorenbosch Jheroen P | Downlink multicast method in wireless internet protocol system |
US7701937B2 (en) * | 2005-10-13 | 2010-04-20 | Motorola, Inc. | Method and apparatus for IP multicasting |
CN100442775C (zh) | 2005-11-17 | 2008-12-10 | 华为技术有限公司 | 一种在MAC in MAC网络中实现组播的方法 |
US8037303B2 (en) | 2006-03-13 | 2011-10-11 | Cisco Technology, Inc. | System and method for providing secure multicasting across virtual private networks |
US8582468B2 (en) * | 2006-03-13 | 2013-11-12 | Cisco Technology, Inc. | System and method for providing packet proxy services across virtual private networks |
CN101459606B (zh) * | 2008-12-31 | 2011-04-20 | 华为技术有限公司 | 一种组播虚拟私有网络的外联网组网方法、系统和装置 |
CN101621467B (zh) * | 2009-08-13 | 2012-05-30 | 华为技术有限公司 | 一种实现组播vsi的方法、装置及系统 |
CN101631129B (zh) * | 2009-08-18 | 2013-06-05 | 中兴通讯股份有限公司 | 组播数据转发方法及装置 |
US8576844B1 (en) * | 2010-04-16 | 2013-11-05 | Juniper Networks, Inc. | Forwarding multicast packets in a VPLS router on the basis of MAC addresses |
CN102075439B (zh) * | 2011-02-22 | 2013-09-11 | 杭州华三通信技术有限公司 | 一种组播报文转发方法和路由设备 |
-
2011
- 2011-02-22 CN CN201110042521.XA patent/CN102075439B/zh active Active
-
2012
- 2012-02-22 US US13/905,127 patent/US20130259042A1/en not_active Abandoned
- 2012-02-22 WO PCT/CN2012/071427 patent/WO2012113326A1/en active Application Filing
- 2012-02-22 EP EP12749062.1A patent/EP2678975A4/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
WO2012113326A1 (en) | 2012-08-30 |
US20130259042A1 (en) | 2013-10-03 |
EP2678975A1 (en) | 2014-01-01 |
EP2678975A4 (en) | 2014-08-13 |
CN102075439A (zh) | 2011-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102075439B (zh) | 一种组播报文转发方法和路由设备 | |
US8339973B1 (en) | Multicast traceroute over MPLS/BGP IP multicast VPN | |
US7570604B1 (en) | Multicast data trees for virtual private local area network (LAN) service multicast | |
CN102137000B (zh) | 一种建立切换组播分发树的方法、装置及系统 | |
CN102035729B (zh) | 一种组播数据转发方法 | |
US9413648B2 (en) | Pure control-plane approach for on-path connection admission control operations in multiprotocol label switching virtual private networks | |
CN100450086C (zh) | 在虚拟专用局域网业务中实现组播数据流转发的方法 | |
EP2378720B1 (en) | Extranet networking method, system and device for multicast virtual private network | |
EP2730060A1 (en) | Dynamic updating of a label switched path | |
EP2991284B1 (en) | Method and device used in ethernet virtual private network | |
KR101694223B1 (ko) | 패킷을 전송하는 방법, 라우팅 브리지, 및 시스템 | |
KR101699643B1 (ko) | 다중 프로토콜 라벨 스위칭에 기반한 oam 방법 및 장치 | |
US11323279B1 (en) | Internet group management protocol host mobility in ethernet virtual private network multicast networks | |
CN102571375B (zh) | 组播转发方法、装置及网络设备 | |
WO2007054006A1 (fr) | Station de base de système d’accès sans fil large bande et système pour réaliser un service de diffusion de groupe | |
WO2013139234A1 (zh) | 一种组播传输方法、装置和网络系统 | |
CN103001847B (zh) | 通过桥接协议数据单元隧道传输协议报文的方法和装置 | |
CN101119222B (zh) | Hope网络实现组播的方法、装置及系统 | |
CN102255787A (zh) | 一种基于服务质量的报文处理方法和运营商网络边缘设备 | |
EP2239956B1 (en) | Method, apparatus and system for ip/optical convergence | |
CN102045250A (zh) | Vpls中组播报文的转发方法和服务提供商边缘设备 | |
WO2014048120A1 (zh) | 点到多点的组播实现方法、网络节点和系统 | |
CN101009669B (zh) | 一种传输组播消息的方法和系统以及路由设备 | |
CN103401788B (zh) | 一种spt建立方法和设备 | |
CN106357541A (zh) | 一种信息传递方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Patentee before: Huasan Communication Technology Co., Ltd. |