路由器上组播转发方法及转发路由器技术

技术编号:4098324 阅读:274 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种能精确到物理端口的路由器上组播转发方法及转发路由器。方法包括步骤:a、输入接口查找三层组播转发表项是否存在指定的输出接口,如是,进入步骤b;如否,转发结束;b、当输出接口为VLAN接口,设置该VLAN接口对应的VLAN?ID,复制转发此组播业务报文;c、硬件加速引擎查找二层组播硬件表项中是否存在指定的输出物理端口,如是,从指定的输出物理端口将组播业务报文转发出去。在现有三层组播转发的基础上再加上二层组播转发,使得组播业务报文达到输出接口是VLAN接口时,可以精确到物理端口。

【技术实现步骤摘要】

本专利技术涉及IP组播业务数据的转发技术,特别涉及三层组播技术。
技术介绍
在宽窄带路由器上,路由器既支持软件转发,同时带有硬件加速引擎(交换模块) 以支持交换功能;一股既有普通的广域网接口,又有VLAN(虚拟局域网)接口。路由器平台上面进行的是三层组播,是通过CPU进行组播业务转发的。因为增加 了交换模块,交换模块上的物理端口虚拟出VLAN接口,体现出三层接口的特性。现有三层 组播转发实现方法只能知道转发到哪个接口上,而VLAN接口上可能存在多个物理端口,如 果采用现有的实现,会在这些物理端口上广播组播业务报文。即,现有的路由器上的组播转 发模式为,组播业务报文从广域网接口进入,当VLAN接口上有接收成员时,从VLAN接口对 应的所有成员物理端口复制转发。因此现有技术存在三层组播转发时不能精确到物理端口的问题;组播业务报文在 该VLAN上广播,导致带宽浪费和其它设备不必要的CPU能力负担。
技术实现思路
本专利技术所要解决的技术问题是,提供一种能精确到物理端口的路由器上组播转发 方法及转发路由器。本专利技术为解决上述技术问题所采用的技术方案是,路由器上组播转发方法,包括 以下步骤a、输入接口接收到组播业务报文,查找三层组播转发表项是否存在指定的输出接 口,如是,进入步骤b ;如否,转发结束;b、循环处理各指定的输出接口;当输出接口为VLAN接口,设置该VLAN接口对应的 VLANID,复制转发此组播业务报文至CPU和硬件加速引擎之间的通道上;C、硬件加速引擎从通道接收到组播业务报文查找二层组播硬件表项中是否存在 指定的输出物理端口,如是,从指定的输出物理端口将组播业务报文转发出去;如否,丢弃 该组播业务报文,转发结束。在现有三层组播转发的基础上再加上二层组播转发,使得组播业务报文达到输出 接口是VLAN接口时,可以精确到物理端口。只向VLAN接口的有的接收成员的物理端口发 送组播业务报文,没有接收成员的物理端口不会收到组播业务报文。进一步的,步骤b中当输出接口为广域网接口,复制转发此组播业务报文至该广 域网接口。具体的,路由器的广域网接口与VLAN接口运行有三层组播路由协议;三层组播路 由协议用于收集接口成员信息,维护三层组播路由表,并将三层组播转发信息写入三层组 播转发表;VLAN接口对应的各物理端口上运行有二层组播协议与IGMP snooping (因特网组4成员管理协议监听)协议,通过侦听IGMP(因特网组管理协议)成员报告或离开消息,形成 IGMPsnooping组记录,二层组播协议根据IGMP snooping组记录维护二层组播转发表,并 将二层组播转发信息写入二层组播硬件表。所述三层组播路由协议为PIM-SM、PIM-DM或DVMRP。所述三层组播转发表包含有组播源IP地址、组播目的IP地址、输入接口与输出接 口列表;二层组播硬件表项包含有组播源IP地址、组播目的IP地址,VLAN ID、输出接口列 表;步骤a中根据组播源IP地址、组播目的IP地址查找三层组播转发表项是否存在 指定的输出接口;步骤C中提取并根据组播业务报文中的目的MAC地址和VLAN ID,或者,组播源IP 地址、组播组IP地址和VLAN ID查找二层组播硬件表项。进一步的,步骤a之后,步骤b之前还包括判断接收该组播业务报文的输入接口 是否为三层组播转发表项中指定的输入接口,如是,进入步骤b ;如否,丢弃此组播业务报 文,转发结束。步骤a中,三层组播转发表项无指定的输出接口时,三层组播转发模块向三层组 播路由协议发送缓存缺失消息,转发结束。另外,还提供了一种实现该方法的转发路由器,包括广域网接口、VLAN接口及其对 应的多个物理端口、CPU、硬件加速引擎,所述CPU与硬件加速引擎通过通道进行连接,广域 网接口、VLAN接口与CPU相连,VLAN接口与其对应的多个物理端口连接;所述CPU包含有 三层组播转发模块,硬件加速引擎中包含有二层组播转发模块;所述三层组播转发模块,用于在输入接收到组播业务报文后查找三层组播转发表 项是否存在指定的输出接口 ;如是,当输入接口为VLAN接口,设置该VLAN接口对应的VLAN ID,复制转发此组播业务报文至CPU和硬件加速引擎之间的通道上;如否,转发结束;所述二层组播转发模块,用于从通道接收到组播业务报文后,查找二层组播硬件 表项中是否存在指定的输出物理端口,如是,从指定的输出物理端口将组播业务报文转发 出去;如否,丢弃该组播业务报文,转发结束。进一步的,广域网接口与VLAN接口中均包括有三层组播路由协议模块;硬件加速 引擎中包含有二层组播转发模块,物理端口中包含有二层组播协议模块;所述三层组播路由协议模块,用于收集接口成员信息,维护三层组播路由表,并将 三层组播转发信息写入三层组播转发表;所述二层组播协议模块,用于收集端口成员信息,维护二层组播转发表,并将二层 组播转发信息写入二层组播硬件表。进一步的,所述三层组播转发模块,还用于当三层组播转发表项无指定的输出接 口时,向三层组播路由协议模块发送缓存缺失消息。进一步的,所述物理端口中还包含有IGMP snooping协议模块;所述IGMP snooping协议模块用于,侦听IGMP成员报告或离开消息,形成物理端 口的IGMP snooping组记录,二层组播协议模块根据IGMP snooping组记录维护二层组播 转发表。进一步的,所述三层组播转发模块,用于当指定的输出接口为广域网接口时,复制5转发组播业务报文至该广域网接口。本专利技术的有益效果是,使得路由器上的组播转发可以精确到VLAN接口对应的物 理端口,节约带宽。附图说明图1为实施例路由器结构示意图;图2为三层组播转发流程图;图3为二层组播转发流程图。具体实施例方式本专利技术同时结合IP三层组播和IP 二层组播分别形成软、硬件组播转发表和转发 控制流程。通过IP三层组播,形成和维护三层组播转发表,记录组播源IP地址,组播目的 IP地址,输入接口和输出接口列表。通过IP 二层组播,形成和维护特定VLAN接口上的成员 端口列表,并且将以上成员端口列表信息写入到硬件加速引擎中的二层组播硬件表项中。在进行组播业务转发时,组播业务流通过宽窄带路由器的广域网接口进入,然后 经过软件转发(三层组播转发),到达有接收成员的广域网接口和VLAN接口上。如果输出 接口是广域网接口,组播业务报文被复制转发到广域网接口上。如果输出接口是VLAN接 口,则设置VLAN ID,将此组播业务报文复制转发到CPU和硬件加速引擎之间的通道上。硬 件加速引擎根据从通道上到达的组播业务报文信息,提取出VLAN ID和目的MAC或者组播 源IP地址、组播组IP地址。硬件加速引擎再查找二层组播硬件表项。如果该表项存在,硬 件加速引擎将组播业务报文复制转发到各个输出端口上;否则,丢弃此组播业务报文。宽窄带路由器的结构图如图1 广域网接口、VLAN接口及其对应的多个物理端口、CPU、硬件加速引擎,CPU与硬件 加速引擎通过通道进行连接,广域网接口、VLAN接口与CPU相连,VLAN接口与其对应的多个 物理端口连接;CPU、硬件加速引擎和两者之间的通道。CPU负责完成三层组播软件转发流 程,将广域网接口的组播流发送到对应的广域网接口本文档来自技高网...

【技术保护点】
路由器上组播转发方法,其特征在于,包括以下步骤:a、输入接口接收到组播业务报文,查找三层组播转发表项是否存在指定的输出接口,如是,进入步骤b;如否,转发结束;b、循环处理各指定的输出接口;当输出接口为VLAN接口,设置该VLAN接口对应的VLANID,复制转发此组播业务报文至CPU和硬件加速引擎之间的通道上;c、硬件加速引擎从通道接收到组播业务报文查找二层组播硬件表项中是否存在指定的输出物理端口,如是,从指定的输出物理端口将组播业务报文转发出去;如否,丢弃该组播业务报文,转发结束。

【技术特征摘要】
CN 2010-3-31 201010136177.6路由器上组播转发方法,其特征在于,包括以下步骤a、输入接口接收到组播业务报文,查找三层组播转发表项是否存在指定的输出接口,如是,进入步骤b;如否,转发结束;b、循环处理各指定的输出接口;当输出接口为VLAN接口,设置该VLAN接口对应的VLANID,复制转发此组播业务报文至CPU和硬件加速引擎之间的通道上;c、硬件加速引擎从通道接收到组播业务报文查找二层组播硬件表项中是否存在指定的输出物理端口,如是,从指定的输出物理端口将组播业务报文转发出去;如否,丢弃该组播业务报文,转发结束。2.如权利要求1所述路由器上组播转发方法,其特征在于,步骤b中当输出接口为广域 网接口,复制转发此组播业务报文至该广域网接口。3.如权利要求2所述路由器上组播转发方法,其特征在于,路由器的广域网接口与 VLAN接口运行有三层组播路由协议;三层组播路由协议用于收集接口成员信息,维护三层 组播路由表,并将三层组播转发信息写入三层组播转发表;VLAN接口对应的各物理端口上运行有二层组播协议与IGMP snooping协议,通过侦听 IGMP成员报告或离开消息,形成IGMP snooping组记录,二层组播协议根据IGMP snooping 组记录维护二层组播转发表,并将二层组播转发信息写入二层组播硬件表。4.如权利要求1所述路由器上组播转发方法,其特征在于,所述三层组播转发表包含 有组播源IP地址、组播目的IP地址、输入接口与输出接口列表;二层组播硬件表项包含有 组播源IP地址、组播目的IP地址,VLAN ID、输出接口列表;步骤a中根据组播源IP地址、组播目的IP地址查找三层组播转发表项是否存在指定 的输出接口;步骤c中提取并根据组播业务报文中的目的MAC地址和VLAN ID,或者,组播源IP地 址、组播组IP地址和VLAN ID查找二层组播硬件表项。5.如权利要求1所述路由器上组播转发方法,其特征在于,步骤a之后,步骤b之前还 包括判断接收该组播业务报文的输入接口是否为三层组播转发表项中指定的输入接口, 如是,进入步骤b ;如否,丢弃此组播业务报文,转发结束。6.如权利要求1所...

【专利技术属性】
技术研发人员:王强赵春刚
申请(专利权)人:迈普通信技术股份有限公司
类型:发明
国别省市:90[中国|成都]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1