专利名称:多版本组播协议融合方法
技术领域:
本发明涉及数据通信领域的组播通信子领域,特别是涉及多版本组播协议融 合方法。
背景技术:
IGMP和MLD是主机与路由器之间交换组播请求信息的协议,这种协议一般 被认为是三层协议,而在主机和路由器之间,往往由交换设备来传送数据。由于组 播技术的特殊性,在没有组播监听的情况下,交换设备通常会将组播数据洪泛到所 有的端口 ,这样那些不要求接受某些组播组的端口上的主机也会收到这些组播数 据,浪费了网络的带宽,降低了网络的性能和利用率;所以很多的交换设备都能够 对IGMP或者MLD协议进行监听、获取并记录端口组播组的相关信息,而后的组 播数据只会转发到需要的端口,这种技术就是IGMP SNOOPING (互连网组管理 协议侦听,IPv4组播侦听的技术)或者MLD SNOOPING (IPv6组播协议侦听) 技术。IGMP SNOOPING和MLD SNOOPING是用于组播组的管理和控制的技术, 它使用IGMP报文和MLD报文。IGMP协议运行在网络层,而IGMP SNOOPING 运行在链路层。如图1所示,IGMP SNOOPING允许交换机监听主机(主机1、主 机2、主机3)和路由器4之间的IGMP会话。当IGMP SNOOPING启动之后,组 播路由器周期地向所有VLAN发送IGMP查询报文,VLAN下的主机响应查询报 文,发送加入或报告报文。
IGMP主要有3个版本,RFC 1112规定了 IGMPvl , RFC 2236规定了 IGMPv2, IGMPv3还在制定中。IGMPvl中定义了基本的组成员査询和报告过程,IGMPv2 主要在IGMPvl上添加了组成员快速离开的机制,IGMPv3主要增加了允许主机只 接收组播组内某个特定信源的传输。MLD报文有两个版本(MLDvl、 MLDv2), 一般的SNOOPING实现只是监听其中的一个或几个版本,并且各自为阵,很多都 不能进行无损信息的统一处理。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供多版本组播协 议融仓方法。
本发明的目的可以通过以下技术方案来实现多版本组播协议融合方法,其 特征在于,该方法将交换设备组播组中的多种版本的组播协议报文以统一的格 式进行格式转换,再对统一格式报文的组播组信息进行组织处理,最后通过结 果转换将组织处理后的结果转换成能够直接写入芯片的格式。
所述的交换设备包括二层及二层以上交换机或交换机设备。
所述的多种版本的组播协议包括基于IPv4的IGMPvl(RFC1112)、 IGMPv2(RFC2236)、 IGMPv3(RFC3376),基于IPv6的MLDvl(RFC2710)、 MLDv2(RFC3810)。
所述的统一的格式为
报文中的组播地址;
报文类型报文类型按照模式分为INCLUDE、 EXCLUDE; INCLUDE模 式表示接收来自源地址列表中的特定组播数据,EXCLUDE模式表示接收除源 地址列表之外的所有特定组播数据;
源地址列表源地址列表包括在每种模式下的组播源地址,对于INCLUDE 模式表示接收来自此源地址列表的所有的该组播组数据,对于EXCLUDE模式 表示接收来自此源地址列表之外的所有的该组播组数据;
变化标志如果报文表示主机组播组状态发生变化,则设置变化标志;如 果报文是一般的査询应答报文,则不设置变化标志;该标志用于决策是否将该 报文转发。
所述的格式转换包括IGMPvl、 IGMPv2、 IGMPv3协议报文格式的转换, MLDvl、 MLDv2协议报文格式的转换;所述的IGMPvl、 IGMPv2、 IGMPv3 协议报文格式的转换主要是针对IGMPvl、 IGMPv2、 IGMPv3的由主机端发出 的报文,包括IGMPv 1报告报文、IGMPv2报告报文、IGMPv2完成报文、IGMPv3 报告报文,其中IGMPv3报告报文包括六个子类型的报文;所述的MLDvl、 MLDv2协议报文格式的转换主要是针对MLDvl、 MLDv2的由主机端发出的报
文,包括MLDvl报告报文、MLDvl完成报文、MLDv2报告报文,其中MLDv2 报告报文包括六个子类型的报文。
所述的IGMPvl、 IGMPv2、 IGMPv3协议报文格式的转换为
IGMPvl报告报文IGMPvl报告报文被当作EXCLUDE模式,源地址列 表为空的统一格式报文,如果本査询周期内收到过此报文,则不置状态变化标 志;如果本查询周期内没有收到过此报文,则设置状态变化标志;
IGMPv2报告报文IGMPv2报告报文被当作EXCLUDE模式,源地址列 表为空的统一格式报文,如果本查询周期内收到过此报文,则不置状态变化标 志;如果本查询周期内没有收到过此报文,则设置状态变化标志;
IGMPv2完成报文IGMPv2完成报文被当作INCLUDE模式,源地址列表 为空的统一格式报文;设置状态变化标志;
IGMPv3报告报文子类型一IGMPv3报告报文子类型一被当作INCLUDE 模式,源地址列表为报文源地址列表的统一格式报文,如果本査询周期内收到 过此报文,则不置状态变化标志;如果本查询周期内没有收到过此报文,则设 置状态变化标志;
IGMPv3报告报文子类型二 IGMPv3报告报文子类型二被当作EXCLUDE 模式,源地址列表为报文源地址列表的统一格式报文,如果本查询周期内收到 过此报文,则不置状态变化标志;如果本查询周期内没有收到过此报文,则设 置状态变化标志;
IGMPv3报告报文子类型三IGMPv3报告报文子类型三被当作INCLUDE 模式,源地址列表为报文源地址列表的统一格式报文,设置状态变化标志;
IGMPv3报告报文子类型四IGMPv3报告报文子类型四被当作EXCLUDE 模式,源地址列表为报文源地址列表的统一格式报文,设置状态变化标志;
IGMPv3报告报文子类型五IGMPv3报告报文子类型五被当作INCLUDE 模式,源地址列表为报文源地址列表的统一格式报文,如果本查询周期内收到 过此报文,则不置状态变化标志;如果本査询周期内没有收到过此报文,则设 置状态变化标志;
IGMPv3报告报文子类型六对于组播监听,不对该报文进'行处理,直接 将其转发。
所述的MLDvl、 MLDv2协议报文格式的转换为
MLDvl报告报文MLDvl报告报文被当作EXCLUDE模式,源地址列表 为空的统一格式报文,如果本査询周期内收到过此报文,则不置状态变化标志;
如巣本查询周期内没有收到过此报文,则设置状态变化标志;
MLDvl完成报文MLDvl完成报文被当作INCLUDE模式,源地址列表 为空的统一格式报文,设置状态变化标志;
MLDv2报告报文子类型一MLDv2报告报文子类型一被当作INCLUDE 模式,源地址列表为报文源地址列表的统一格式报文,如果本查询周期内收到 过此报文,则不置状态变化标志;如果本査询周期内没有收到过此报文,则设 置状态变化标志。
MLDv2报告报文子类型二 MLDv2报告报文子类型二被当作EXCLUDE 模式,源地址列表为报文源地址列表的统一格式报文,如果本查询周期内收到 过此报文,则不置状态变化标志;如果本査询周期内没有收到过此报文,则设 置状态变化标志。
MLDv2报告报文子类型三MLDv2报告报文子类型三被当作INCLUDE 模式,源地址列表为报文源地址列表的统一格式报文,设置状态变化标志;
MLDv2报告报文子类型四MLDv2报告报文子类型四被当作EXCLUDE 模式,源地址列表为报文源地址列表的统一格式报文,设置状态变化标志;
MLDv2报告报文子类型五MLDv2报告报文子类型五被当作INCLUDE 模式,源地址列表为报文源地址列表的统一格式报文,如果本査询周期内收到 过此报文,则不置状态变化标志;如果本査询周期内没有收到过此报文,则设 置状态变化标志;
MLDv2报告报文子类型六对于组播监听,不对该报文进行处理,直接 将其转发。
所述的组播组信息包括组播目的地址、组播源地址,还可以包括端口号、 VLAN号。
所述的组织处理为对于INCLUDE模式的报文,如果组播组目的地址相 同,直接将所有在有效期的INCLUDE报文的源地址合并,即求合集;对于 EXCLUDE模式的报文,如果组播组目的地址相同,将所有在有效期的
EXCLUDE报文的源地址列表求交集;如果组播组目的地址相同,将EXCLUDE 源地址集合减去INCLUDE源地址集合,得到的最后结果就是最后的EXCLUDE 模式下的源地址集合,即求差集;如果没有EXCLUDE模式的报文,则最后的 结果就是INCLUDE模式下的源地址集合。
所述的结果转换为对于INCLUDE模式的组织处理结果,直接将组播目 的地址和源地址一个个的写入芯片;对于EXCLUDE模式的组织处理结果,在 对应的源地址条目上写上空的端口列表,同时增加一项通配项;如果芯片不能 够对源地址进行区分,那只需要将组播目的地址写入,端口列表为所有同一组 播组的端口列表之和。
与现有技术相比,本发明使交换设备能够适应组网的任何组播协议版本环 境,提高了交换设备可靠性。
图l为组播组网运行示意图; 图2为本发明的流程示意图。
具体实施例方式
下面结合附图对本发明作进一步说明。
如图2所示,多版本组播协议融合方法,该方法将交换设备组播组中的多 种版本的组播协议报文以统一的格式进行格式转换,再对统一格式报文的组播 组信息进行组织处理,最后通过结果转换将组织处理后的结果转换成能够直接 写入芯片的格式。
本实施例主要用于数据交换设备的组播协议监听,能够对IGMPW、 IGMPv2、 IGMPv3的二层组播监听(SNOOPING)、或者MLDvl、 MLDv2的 二层组播监听(SNOOPING)实现融合,即用一个处理实例就可以统一对三个 协议版本的报文进行监听和处理,这样大大简化了二层组播监听的实现,可以 适应多版本的组播协议环境,提高设备可靠性。本实施例的关键在于把监听到 的组播协议各版本的报文转换成统一的格式,然后对这个统一的格式进行组织 和统计,处理的结果经过转换后写入芯片的组播表,控制组播数据的分发。
本实施例主要用于数据交换设备, 一般作为IGMP SNOOPING或者MLD SNOOPING的实现方法,将多种协议版本的报文转换成统一的格式之后再进行 组播组的组织和统计,这种统一的格式将不会丢失任何一种报文的信息量,统 计处理的结果将写入芯片。
多个版本组播协议包括以下几种基于IPv4的IGMPvl(RFC1112)、 IGMPv2(RFC2236)、 IGMPv3(RFC3376)和基于IPv6的MLDvl(RFC2710)、 MLDv2(RFC3810)。
交换设备包括二层及二层以上交换机或者类交换机设备。
IGMP SNOOPING或者MLD SNOOPING是一种协议监听技术,是指被动 的接受协议报文并进行相应的处理,但这些处理不会影响到协议机制的正常运 行。
统一的格式是一种能够不损失任何版本协议报文信息的格式。 报文信息量主要是指报文中包含的组播组及组播源的信息,如果进一步扩
展,可以包含收到报文的端口号和VLAN号。
对组播组的组织和统计是一种策略,是一种能够有效的进行组播组统计的方法。
本实施例的具体方案如下
1.转换IGMPvl、 IGMPv2、 IGMPv3报文的格式
主要是针对IGMPvl、 IGMPv2、 IGMPv3的由主机端发出的报文而言的, 包括IGMPvl报告报文、IGMPv2报告报文、IGMPv2完成报文和IGMPv3报告 报文,其中IGMPv3报告报文包括六个子类型的报文。统一的格式结构包括以 下信息-
(1) 组播组
就是报文中的组播地址。
(2) 报文类型
报文类型按照模式分为INCLUDE、 EXCLUDE。 INCLUDE模式表示接收 来自源地址列表中的特定组播数据,EXCLUDE模式表示接收除源地址列表之 外的所有特定组播数据。
(3) 源地址列表
源地址列表包括在每种模式下的组播源地址,对于INCLUDE模式表示接 收来自此源地址列表的所有的该组播组数据,对于EXCLUDE模式表示接收来 自此源地址列表之外的所有的该组播组数据。 (4)变化标志
如果报文表示主机组播组状态发生变化,则设置变化标志;如果报文是一 般的查询应答报文,则不设置变化标志。该标志用于决策是否将该报文转发。 从多种的IGMP主机端报文转换成统一报文格式的方法如下
(1) IGMPvl报告报文
IGMPvl报告报文被当作EXCLUDE模式,源地址列表为空的统一格式报 文。如果本査询周期内收到过此报文,则不置状态变化标志;如果本査询周期 内没有收到过此报文,则设置状态变化标志。
(2) IGMPv2报告报文
IGMPv2报告报文被当作EXCLUDE模式,源地址列表为空的统一格式报 文。如果本査询周期内收到过此报文,则不置状态变化标志;如果本查询周期 内没有收到过此报文,则设置状态变化标志。
(3) IGMPv2完成报文
IGMPv2完成报文被当作INCLUDE模式,源地址列表为空的统一格式报 文。设置状态变化标志。
(4) IGMPv3报告报文——子类型1
IGMPv3报告报文——子类型1被当作INCLUDE模式,源地址列表为报文 源地址列表的统一格式报文。如果本査询周期内收到过此报文,则不置状态变 化标志;如果本查询周期内没有收到过此报文,则设置状态变化标志。
(5) IGMPv3报告报文-…子类型2
IGMPv3报告报文----子类型2被当作EXCLUDE模式,源地址列表为报文 源地址列表的统一格式报文。如果本査询周期内收到过此报文,则不置状态变 化标志;如果本查询周期内没有收到过此报文,则设置状态变化标志。
(6) IGMPv3报告报文…-子类型3
IGMPv3报告报文一-子类型3被当作INCLUDE模式,源地址列表为报文 源地址列表的统一格式报文。设置状态变化标志。
(7) IGMPv3报告报文——子类型4
IGMPv3报告报文—--子类型4被当作EXCLUDE模式,源地址列表为报文 源地址列表的统一格式报文。设置状态变化标志。
(8) IGMPv3报告报文一子类型5
IGMPv3报告报文一-子类型5被当作INCLUDE模式,源地址列表为报文 源地址列表的统一格式报文。如果本査询周期内收到过此报文,则不置状态变 化标志;如果本査询周期内没有收到过此报文,则设置状态变化标志。
(9) IGMPv3报告报文——子类型6 对于组播监听,不对该报文进行处理,直接将其转发。 2.转换MLDvl、 MLDv2的协议报文格式
主要是针对MLDvl、 MLDv2的由主机端发出的报文而言的,包括MLDvl 报告报文、MLDvl完成报文和MLDv2报告报文,其中MLDv2报告报文包括 六个子类型的报文。统一的格式结构包括以下信息
(1) 组播组 就是报文中的组播地址。
(2) 报文类型 报文类型按照模式分为INCLUDE、 EXCLUDE。
(3) 源地址列表
源地址列表包括在每种模式下的组播源地址,对于INCLUDE模式表示接 收来自此源地址列表的所有的该组播组数据,对于EXCLUDE模式表示接收来 自此源地址列表之外的所有的该组播组数据。
(4) 变化标志
如果报文表示主机组播组状态发生变化,则设置变化标志;如果报文是一 般的査询应答报文,则不设置变化标志。该标志用于决策是否将该报文转发。
从多种的MLD主机端报文转换成统一格式的方法如下 (1) MLDvl报告报文
MLDvl报告报文被当作EXCLUDE模式,源地址列表为空的统一格式报 文。如果本查询周期内收到过此报文,则不置状态变化标志.,如果本查询周期 内没有收到过此报文,则设置状态变化标志。
(2) MLDvl完成报文
MLDvl完成报文被当作INCLUDE模式,源地址列表为空的统一格式报
文。设置状态变化标志。
(3) MLDv2报告报文…-子类型1
MLDv2报告报文…-子类型1被当作INCLUDE模式,源地址列表为报文 源地址列表的统一格式报文。如果本查询周期内收到过此报文,则不置状态变 化标志;如果本査询周期内没有收到过此报文,则设置状态变化标志。
(4) MLDv2报告报文——子类型2
MLDv2报告报文…-子类型2被当作EXCLUDE模式,源地址列表为报文 源地址列表的统一格式报文。如果本査询周期内收到过此报文,则不置状态变 化标志;如果本查询周期内没有收到过此报文,则设置状态变化标志。
(5) MLDv2报告报文-…子类型3
MLDv2报告报文…-子类型3被当作INCLUDE模式,源地址列表为报文 源地址列表的统一格式报文。设置状态变化标志。
(6) MLDv2报告报文——子类型4
MLDv2报告报文--子类型4被当作EXCLUDE模式,源地址列表为报文 源地址列表的统一格式报文。设置状态变化标志。
(7) MLDv2报告报文——子类型5
MLDv2报告报文----子类型5被当作INCLUDE模式,源地址列表为报文 源地址列表的统一格式报文。如果本査询周期内收到过此报文,则不置状态变 化标志;如果本查询周期内没有收到过此报文,则设置状态变化标志。
(8) MLDv2报告报文-—子类型6 对于组播监听,不对该报文进行处理,直接将其转发。 3.对统一格式报文的组播组进行组织和统计
需要进行组播组组织和统计的项目包括组播目的地址、组播源地址,可能 还包括端口号和VLAN号。
(1)对于INCLUDE模式统一格式报文的统计方法
对于INCLUDE模式的报文,如果组播组目的地址相同,可以直接将所有 在有效期的INCLUDE报文的源地址合并即可。即在数学上是一个求并集操作。 (2) 对于EXCLUDE模式统一格式报文的统计方法
对于EXCLUDE模式的报文,如果组播组目的地址相同,可以将所有在有 效期的EXCLUDE报文的源地址列表求交集即可。
(3) 对INCLUDE模式和EXCLUDE模式统一报文的统计方法 前两步已经对所有的INCLUDE模式和EXCLUDE模式报文分别进行了统
一处理,接下来的一步就是对二者进行综合。如果组播组目的地址相同,可以 将EXCLUDE源地址集合减去INCLUDE源地址集合,得到的最后结果就是最 后的EXCLUDE模式下的源地址集合,在数学上是一个求差集操作;如果没有 EXCLUDE模式的报文,则最后的结果就是INCLUDE模式下的源地址集合。 4.对统计结果转换成硬件组播转发表项的方法
前面的三步已经基本上可以获得每个端口所需要的组播信息,将具有相同 组播目的地址的统计结果再统计一遍端口列表,就可以准备写入芯片了。
一般来说,芯片上的条目都是目的地址、源地址、端口列表或还带有其他 的扩展。对于INCLUDE模式的最后结果来说,可以直接将组播目的地址和源 地址一个个的写入芯片;而对于EXCLUDE模式的最后统计结果来说,应该在 对应的源地址条目上写上空的端口列表,同时增加一项通配项。
如果芯片不能够对源地址进行区分,那只需要将组播目的地址写入即可, 端口列表为所有同一组播组的端口列表之和。
权利要求
1.多版本组播协议融合方法,其特征在于,该方法将交换设备组播组中的多种版本的组播协议报文以统一的格式进行格式转换,再对统一格式报文的组播组信息进行组织处理,最后通过结果转换将组织处理后的结果转换成能够直接写入芯片的格式。
2. 根据权利要求l所述的多版本组播协议融合方法,其特征在于,所述 的交换设备包括二层及二层以上交换机或交换机设备。
3. 根据权利要求l所述的多版本组播协议融合方法,其特征在于,所述 的多种版本的组播协议包括基于IPv4的IGMPvl(RFC1112)、IGMPv2(RFC2236)、 IGMPv3(RFC3376),基于IPv6的MLDvl(RFC2710)、 MLDv2(RFC3810)。
4. 根据权利要求l所述的多版本组播协议融合方法,其特征在于,所述的统一的格式为报文中的组播地址;报文类型报文类型按照模式分为INCLUDE、 EXCLUDE; INCLUDE模 式表示接收来自源地址列表中的特定组播数据,EXCLUDE模式表示接收除源 地址列表之外的所有特定组播数据;源地址列表源地址列表包括在每种模式下的组播源地址,对于INCLUDE 模式表示接收来自此源地址列表的所有的该组播组数据,对于EXCLUDE模式 表示接收来自此源地址列表之外的所有的该组播组数据;变化标志如果报文表示主机组播组状态发生变化,则设置变化标志;如 果报文是一般的査询应答报文,则不设置变化标志;该标志用于决策是否将该 报文转发。
5. 根据权利要求l所述的多版本组播协议融合方法,其特征在于,所述 的格式转换包括IGMPvl、 IGMPv2、 IGMPv3协议报文格式的转换,MLDvl、 MLDv2协议报文格式的转换;所述的IGMPvl、 IGMPv2、 IGMPv3协议报文格 式的转换主要是针对IGMPvl、 IGMPv2、 IGMPv3的由主机端发出的报文,包 括IGMPvl报告报文、IGMPv2报告报文、IGMPv2完成报文、IGMPv3报告报文,其中IGMPv3报告报文包括六个子类型的报文;所述的MLDvl、 MLDv2 协议报文格式的转换主要是针对MLDvl、 MLDv2的由主机端发出的报文,包括MLDvl报告报文、MLDvl完成报文、MLDv2报告报文,其中MLDv2报告 报文包括六个子类型的报文。
6.根据权利要求5所述的多版本组播协议融合方法,其特征在于,所述 的IGMPvl、 IGMPv2、 IGMPv3协议报文格式的转换为IGMPvl报告报文IGMPvl报告报文被当作EXCLUDE模式,源地址列表为空的统一格式报文,如果本査询周期内收到过此报文,则不置状态变化标志;如果本查询周期内没有收到过此报文,则设置状态变化标志;IGMPv2报告报文IGMPv2报告报文被当作EXCLUDE模式,源地址列表为空的统一格式报文,如果本査询周期内收到过此报文,则不置状态变化标志;如果本査询周期内没有收到过此报文,则设置状态变化标志;IGMPv2完成报文IGMPv2完成报文被当作INCLUDE模式,源地址列表为空的统一格式报文;设置状态变化标志;IGMPv3报告报文子类型一IGMPv3报告报文子类型一被当作INCLUDE 模式,源地址列表为报文源地址列表的统一格式报文,如果本査询周期内收到过此报文,则不置状态变化标志;如果本査询周期内没有收到过此报文,则设置状态变化标志;IGMPv3报告报文子类型二IGMPv3报告报文子类型二被当作EXCLUDE 模式,源地址列表为报文源地址列表的统一格式报文,如果本査询周期内收到过此报文,则不置状态变化标志;如果本查询周期内没有收到过此报文,则设 置状态变化标志;IGMPv3报告报文子类型三IGMPv3报告报文子类型三被当作INCLUDE模式,源地址列表为报文源地址列表的统一格式报文,设置状态变化标志;IGMPv3报告报文子类型四IGMPv3报告报文子类型四被当作EXCLUDE模式,源地址列表为报文源地址列表的统一格式报文,设置状态变化标志;IGMPv3报告报文子类型五IGMPv3报告报文子类型五被当作INCLUDE模式,源地址列表为报文源地址列表的统一格式报文,如果本查询周期内收到过此报文,则不置状态变化标志;如果本查询周期内没有收到过此报文,则设置状态变化标志;IGMPv3报告报文子类型六对于组播监听,不对该报文进行处理,直接将其转发。
7. 根据权利要求5所述的多版本组播协议融合方法,其特征在于,所述 的MLDvl、 MLDv2协议报文格式的转换为MLDvl报告报文MLDvl报告报文被当作EXCLUDE模式,源地址列表为空的统一格式报文,如果本査询周期内收到过此报文,则不置状态变化标志; 如果本查询周期内没有收到过此报文,则设置状态变化标志;MLDvl完成报文MLDvl完成报文被当作INCLUDE模式,源地址列表为空的统一格式报文,设置状态变化标志;MLDv2报告报文子类型一MLDv2报告报文子类型一被当作INCLUDE模式,源地址列表为报文源地址列表的统一格式报文,如果本査询周期内收到过此报文,则不置状态变化标志;如果本査询周期内没有收到过此报文,则设置状态变化标志。MLDv2报告报文子类型二 MLDv2报告报文子类型二被当作EXCLUDE模式,源地址列表为报文源地址列表的统一格式报文,如果本查询周期内收到过此报文,则不置状态变化标志;如果本査询周期内没有收到过此报文,则设 置状态变化标志。MLDv2报告报文子类型三MLDv2报告报文子类型三被当作INCLUDE模式,源地址列表为报文源地址列表的统一格式报文,设置状态变化标志;MLDv2报告报文子类型四MLDv2报告报文子类型四被当作EXCLUDE模式,源地址列表为报文源地址列表的统一格式报文,设置状态变化标志;MLDv2报告报文子类型五MLDv2报告报文子类型五被当作INCLUDE 模式,源地址列表为报文源地址列表的统一格式报文,如果本査询周期内收到过此报文,则不置状态变化标志;如果本查询周期内没有收到过此报文,则设置状态变化标志;MLDv2报告报文子类型六对于组播监听,不对该报文进行处理,直接将其转发。
8. 根据权利要求l所述的多版本组播协议融合方法,其特征在于,所述的组播组信息包括组播目的地址、组播源地址,还可以包括端口号、VLAN号。
9. 根据权利要求1所述的多版本组播协议融合方法,其特征在于,所述 的组织处理为对于INCLUDE模式的报文,如果组播组目的地址相同,直接 将所有在有效期的INCLUDE报文的源地址合并,即求合集;对于EXCLUDE 模式的报文,如果组播组目的地址相同,将所有在有效期的EXCLUDE报文的 源地址列表求交集;如果组播组目的地址相同,将EXCLUDE源地址集合减去 INCLUDE源地址集合,得到的最后结果就是最后的EXCLUDE模式下的源地 址集合,即求差集;如果没有EXCLUDE模式的报文,则最后的结果就是 INCLUDE模式下的源地址集合。
10. 根据权利要求l所述的多版本组播协议融合方法,其特征在于,所述 的结果转换为对于INCLUDE模式的组织处理结果,直接将组播目的地址和 源地址一个个的写入芯片;对于EXCLUDE模式的组织处理结果,在对应的源 地址条目上写上空的端口列表,同时增加一项通配项;如果芯片不能够对源地 址进行区分,那只需要将组播目的地址写入,端口列表为所有同一组播组的端 口列表之和。
全文摘要
本发明涉及多版本组播协议融合方法,该方法将交换设备组播组中的多种版本的组播协议报文以统一的格式进行格式转换,再对统一格式报文的组播组信息进行组织处理,最后通过结果转换将组织处理后的结果转换成能够直接写入芯片的格式。与现有技术相比,本发明使交换设备能够适应组网的任何组播协议版本环境,提高了交换设备可靠性。
文档编号H04L29/06GK101175068SQ20061011790
公开日2008年5月7日 申请日期2006年11月2日 优先权日2006年11月2日
发明者晏春平, 王安海 申请人:上海未来宽带技术及应用工程研究中心有限公司