一种组播报文的转发方法和设备的制作方法

文档序号:7690889阅读:142来源:国知局
专利名称:一种组播报文的转发方法和设备的制作方法
技术领域
本发明涉及通信技术领域,尤其涉及一种组播报文的转发方法和设备。
技术背景在现有的组播技术中,IP报文的目的地址字段为组播组地址,组播源向以此目的地址所标识的终端群组传送信息。组播设备通过PIM (Protocol Independent Multicast,独立组^番协议)协议实现对三层组4番4艮文的转发。组 播路由利用静态路由和任意单播路由协议所生成的单播路由表维护。现有技 术中为了在网络中实现组播,以图1所示的组网环境为例,为保证SWITCHl 和SWITCH2之间路由可达,在所有途径的组播路由设备以及转发接口使能 PIM协议,并设置RP ( Rendezvous Points,汇聚点)和BSR ( Bootstrap Router, 自举路由器)。通过设置RP和BSR,可以向所有PIM-SM路由器通告组播信 息,并利用路由器的加入/剪枝信息,建立起基于RP的共享树。从而减少了 数据报文和控制报文占用的网络带宽,降低路由器的处理开销。而以图2所示的网络为例,假设在SWITCH1和SWITCH2之间的网络使 能PIM协议,可以进行三层组播转发;而在SWITCH1和SWITCH3之间的 网络不支持PIM协议或者就不想使能三层组播协议,将会导致通过SWITCH3 接入网络的用户终端无法收看组播节目。因此,需要提出一种在非组播的网 络环境中实现组播业务的方法。发明内容本发明提供一种组播报文的转发方法和设备,用于在非组播的网络环境 中实现组#~业务。为达到上述目的,本发明提供一种组播报文的转发方法,包括以下步骤 对于需要接收特定组播组的组播报文的单播地址,配置所述特定组播组的组#"组地址与所述单"l番地址的对应关系;对接收到的组播报文中的组播组地址进行匹配;所述组播报文中的组播组地址为所述特定的组播组地址时,根据所述对应关系获取与所述组播组地址对应的单播地址;使用所述单播地址替换所述组播报文中的组播组地址并转发。其中,所述组播才艮文中的组播组地址为所述特定的组播組地址时,还包括复制所述接收到的组播报文并进行组播转发。其中,所述对接收到的组播报文中的目的地址进行匹配的步骤具体为 通过设置接入控制列表ACL或寄存器,对从与组播服务器连接的接口接收到的组4番才艮文中的组播组地址进行匹配。其中,所述使用所述单播地址替换所述组播报文中的组播组地址并转发的步骤具体为查找单播路由转发表,转发所述组播组地址替换为单播地址后的组播报文。其中,所述单播地址为具体的单播地址、或单播地址的网段。 本发明还提供一种网络设备,用于实现组播报文的转发,包括 对应关系设置单元,用于对于需要接收特定组播组的组播报文的单播地址,配置所述特定組播组的组播组地址与所述单播地址的对应关系; 匹配单元,用于对接收到的组播报文中的组播组地址进行匹配; 单播地址获取单元,用于当所述匹配单元发现所述组播报文中的组4番组地址为所述对应关系设置单元中设置的特定的组播组地址时,根据所述对应关系设置单元设置的对应关系获取与所述组播组地址对应的单播地址;替换单元,用于使用所述单播地址获取单元获取的单播地址替换所述组播报文中的组播组地址;转发单元,用于转发所述替换单元替换后得到的报文。 其中,还包括复制转发单元,用于当所述匹配单元发现组播报文中的组播组地址为所 述特定的组播组地址时,复制所述接收到的组播报文并进行组播转发。其中,所述匹配单元进一步包括接入控制列表ACL或寄存器,用于对从 与组播服务器连接的接口接收到的组播报文中的组播组地址进行匹配。 其中,还包括单播路由转发表单元,用于向所述转发单元提供单播路由转发表,用于 转发所述目的地址替换为单播地址后的组播报文。其中,所述单^"地址为具体的单插-地址、或单#"地址的网>^。与现有^f支术相比,本发明具有以下优点通过对接收到的组播报文的组播组地址进行匹配,实现了将组播净艮文转 换成单播报文并将转换后的单播报文进行转发,使得处于非组播网络环境中 的用户可以接收到组播数据报文。


图l是现有技术中应用组播的组网环境示意图;图2是现有技术中无法应用组播的组网环境示意图;图3是本发明中组播报文转发方法的流程图;图4是本发明中组播报文转发方法的另一流程图;图5是本发明中用于组播报文转发的网络设备结构示意图。
具体实施方式
本发明的核心思想在于对接收到的组播报文的目的地址进行匹配,根 据匹配结果将组播净艮文转换成单播报文后,将转换后的单播报文进行转发, 使得处于非组播网络环境中的用户可以接收到组播数据报文。以下结合附图和实施例,对本发明的实施方式作进一步说明。 本发明提供一种组播报文转发方法,其流程如图3所示,包括以下步骤 步骤s101、对于需要接收特定组播组的组播报文的单播地址,配置所述 特定组纟番组的组,潘组地址与所述单纟番地址的对应关系。具体的,对于不同的组播组地址,可以分为两类,分别为需要向不支持的組播组、以及不需要向不支持组播的网络 中进行组播报文转发的组播组。对于需要向不支持组播的网络中进行组播报 文转发的组播组,需要预先根据需要接收该组播组内容的单播地址(包括具 体地址或网段),设定组播组地址与单播地址(包括具体地址或网段)的对应 关系,当多个单播地址需要接收组播组的组播报文时,该对应关系中包括一 个组播组地址与多个单播地址的对应关系。步骤s102、对接收到的组播报文中的组播组地址进行匹配。 具体的,该匹配可以通过设置接入控制列表ACL或寄存器,对从与组播 服务器连接的接口接收到的组播报文中的目的地址进行匹配。从与组播服务 器相连一侧的端口接收到的报文为组播服务器发送的组播数据报文,因此, 该步骤中匹配的目的地址为组纟番组地址。步骤s103、所述组纟番报文中的组纟番组地址为所述特定的组纟番组地址时, 根据所述对应关系获取与所述组播组地址对应的单播地址。具体的,对于组播^J:中的目的地址与预先设定的组播组地址相匹配的 组播报文,如果还需要向其他支持组播的网络中转发,还需要对该组播报文 进行复制,将复制后的报文上送到CPU进行地址的替换处理,将原始报文向 支持组播的网络中转发;当然也可以将原始报文上送到CPU进行地址的替换 处理,将复制后的报文向支持组播的网络中转发。对于组播报文中的目的地址与预先设定的组播组地址相匹配的组播报 文,按照该预先设定的组播组地址对应的单播地址替换组播报文中的目的地 址,当一个組播组地址与多个单播地址的对应关系时,按照每一个存在的对 应关系,将该组播报文分别进行多次替换,得到向不同单播地址发送的多个 报文。步骤s104、使用所述单播地址替换所述组播报文中的组播组地址并转发。 具体的,查找单播路由转发表,转发每一个目的地址替换为单播地址后 的组播报文。应用上述组播报文转发方法时,本发明中的组播报文转发方法的流程如图4所示,包括以下步骤步骤s201 、配置交换设备的端口或全局使其具备组播转单播功能。具体的,需要对《换设备上与网络中组播服务器一侧连接的端口进行配 置,使得交换设备的接口或全局支持组播转单播功能。步骤s202、对于需要接收特定组播组的组播报文的单播地址,配置特定 组播组的组播组地址与单4番地址的对应关系。具体的,对于不同的组播组地址,可以分为两类,分别为需要向不支持 组播的网络中进行组播才艮文转发的组播组、以及不需要向不支持组播的网络 中进行组播报文转发的组播组。对于需要向不支持组播的网络中进行组播报 文转发的特定组播组,需要预先根据需要接收该特定组播组内容的单播地址 (包括具体地址或网段),设定该特定组播组地址与单播地址(包括具体地址 或网段)的对应关系,当多个单播地址需要接收特定组播组的组播报文时, 该对应关系中包括一个特定组播组地址与多个单播地址的对应关系。步骤s203 、获取接收到的组播报文中的组播组地址。具体的,对于从与组播服务器相连一侧的端口接收到的报文为组播服务 器发送的组播数据才艮文,因此,该步骤中匹配的报文地址为该组播报文的组 播组地址(即组播报文的目的地址)。步骤s204、判断接收到的组播报文的组播组地址是否为特定组播组的组 播组地址,是则进行步骤s205,否则进行步骤s208。具体的,该判断可以通过设置接入控制列表ACL或寄存器,对从与组播服务器连接的接口接收到的组播报文中的组播组地址(即报文的目的地址) 进4亍匹酉己。步骤s205、将报文进行复制,将复制后的报文发送到CPU进行步骤s206, 对于原始报文仍进行步骤s208。步骤s206、替换组播报文中的目的地址。具体的,对于组播报文中的组播组地址(即报文的目的地址)与预先设定的特定组播组的组播组地址相匹配的组播报文,按照该预先设定的组播组 地址对应的单播地址替换组播报文中的组播组地址(即报文的目的地址),当 一个组播组地址与多个单播地址的对应关系时,按照每一个存在的对应关系, 将该组播报文分别进行多次替换,得到向不同单播地址发送的多个报文。步骤s207、查找单播路由转发表,并进行步骤s210。 步骤s208、判断报文是否存在于组播转发表项中,是则进行步骤s209, 否则进4亍步骤s211。步骤s209、匹配组播转发表项。 步骤s210、转发报文并结束。步骤s211、将报文上送CPU并建立dummy表项,若没有组播组成员加 入,则对报文进行丟弃处理,否则进行步骤s212。步骤s212、根据加入的组播组成员建立组播转发表项并进行步骤s209。以下仍以上述图2所描述的组网环境为例,对在该组网中应用本发明提供 的方法实现与SWITCH 3连接的用户终端的组播业务的方法进行详细描述。其 中IP为10.2.2.11的PC3、 IP为10.2.2.12的PC4、 IP为11.2.2.1的PC5的地址在 SWITCH 3中的路由表中存在。首先确定SWITCH 3下的终端与需要接收的组播组的对应关系,例如IP为10.2.2.11的PC3需要接收组播组225.1.1.1的内容;IP为10.2.2.12的PC4需要接收组播组225丄1.1的内容;IP为11.2.2.1的PC5需要接收组播组225.1.1.2的内容。之后在SWITCH 1的与组播服务器相连一侧的端口上设置ACL,该ACL中 的内容为对接收到的报文的目的地址进行匹配,将匹配到的报文复制到CPU 进行处理。SWITCH l从与组播服务器相连一侧的端口接收到的报文为组播服 务器发送的组播数据报文,其目的地址为组播组地址。因此对组播数据报文 中的组播组地址进行匹配,将符合条件的组播数据报文复制到CPU。该场景中,根据上述配置的终端与需要接收的组播组的对应关系,ACL 的内容可以为将接收到的组播组地址225.1丄1或225丄1.2的报文复制到CPU。CPU接收到报文后,根据预先设置的终端与需要接收的组播组的对应关 系,进行报文目的地址的替换本实施例中,对于报文目的地址为组播组地 址225丄U的报文,将其目的地址替换为10.2.2.11;对于报文目的地址为组播 组地址225.1.1.1的报文,将其目的地址替换为10.2.2.12;对于报文目的地址为 组播组地址225.1丄2的报文,将其目的地址替换为11.2.2.1。从而由两个组播 报文得到三个单播报文。将替换目的地址后得到的三个单播报文分别向对应的目的地址发送,具 体的查找单播路由转发表,找到通往目的IP 10.2.2.11、 10.2.2.12、 11.2.2.1 的下一跳接口转发数据,则通过SWITCH3接入网络的PC3、 PC4和PC5接收到 来自组播服务器的报文。除上述通过具体的单播地址确定SWITCH 3下的终端与需要接收的组播 组的对应关系外,还可以通过网段确定SWITCH 3下的终端与需要接收的组播 纟且的对应关系。例3口IP为10.2.2.0的网段中的所有PC需要接收组播组225丄1.1的内容;IP为11.2.2.1的PC5需要接收组播组225丄1.2的内容。则对于报文目的地址为组播组地址225丄1.1的报文,将其目的地址替换为 10.2.2.0;对于报文目的地址为组播组地址225.1丄2的报文,将其目的地址替 换为11.2.2.1。将替换目的地址后得到的单播净艮文分别向对应的目的地址发送,具体的, 查找单^番路由转发表,找到通往目的IP 10.2.2.0以及11.2.2.1的下一跳接口 转发数据,使得通过SWITCH3接入网络的IP地址为11.2.2.1的PC5接收到来自 组播服务器的报文,位于IP网段10.2,2.0中的PC3和PC4也能够收到来自组播服 务器的报文。本发明还提供一种网络设备,用于实现组播报文的转发,如图5所示, 包括对应关系设置单元10,用于对于需要接收特定组播组的组播报文的单播地址,配置所述特定组、潘组的组,播组地址与所述单^"地址的对应关系。具体 的,对于需要向不支持组播的网络中进行组播报文转发的特定组播组,需要 预先根据需要接收该特定组播组内容的单播地址(包括具体地址或网段),设 定该特定组播组地址与单播地址(包括具体地址或网段)的对应关系,当多 个单播地址需要接收特定组播组的组播报文时,该对应关系中包括一个特定 组^番组地址与多个单"l番地址的对应关系。匹配单元20 ,用于对接收到的组播报文中的组播组地址进行匹配。该匹 配单元20进一步包括接入控制列表ACL或寄存器,用于对从与组播服务器 连接的接口接收到的组播报文中的组播组地址进行匹配。单播地址获取单元30,用于当匹配单元20发现所述组播4艮文中的组^番组 地址为所述对应关系设置单元10中设置的特定的组播组地址时,根据所述对 应关系设置单元10设置的对应关系获取与所述组播组地址对应的单播地址。替换单元40,用于使用所述单播地址获取单元30获取的单播地址替换所 述组#^艮文中的组^番组地址。转发单元50,用于转发所述替换单元40替换后得到的"^艮文。还包括复制转发单元60,用于当匹配单元20发现组4番才艮文中的组播组地址为所 述特定的组播组地址时,复制所述接收到的组播报文并进行组播转发。单播路由转发表单元70,用于向转发单元50提供单播路由转发表,用于 转发所述目的地址替换为单播地址后的组播报文。通过使用本发明提供的方法和设备,对接收到的组播报文的目的地址进 行匹配,实现了将组播报文转换成单播报文并将转换后的单播报文进行转发, 使得处于非组播网络环境中的用户可以接收到组播数据报文。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发 明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件, 但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案 本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台设备 执行本发明各个实施例所述的方法。以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此, 任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
权利要求
1、一种组播报文的转发方法,其特征在于,包括以下步骤对于需要接收特定组播组的组播报文的单播地址,配置所述特定组播组的组播组地址与所述单播地址的对应关系;对接收到的组播报文中的组播组地址进行匹配;所述组播报文中的组播组地址为所述特定的组播组地址时,根据所述对应关系获取与所述组播组地址对应的单播地址;使用所述单播地址替换所述组播报文中的组播组地址并转发。
2、 如权利要求1所述组播报文的转发方法,其特征在于,所述组播^艮文 中的组播组地址为所述特定的组播组地址时,还包括复制所述接收到的组 播报文并进行组播转发。
3、 如权利要求1所述组播^J:的转发方法,其特征在于,所述对接收到 的组播报文中的目的地址进行匹配的步骤具体为通过设置接入控制列表ACL或寄存器,对从与组播服务器连接的接口接 收到的组播报文中的组^番组地址进行匹配。
4、 如权利要求1所述组播报文的转发方法,其特征在于,所述使用所述 单播地址替换所述组播报文中的组播组地址并转发的步骤具体为查找单播路由转发表,转发所述组播组地址替换为单播地址后的组播报文。
5、 如权利要求1至4中任一项所述组播报文的转发方法,其特征在于, 所述单播地址为具体的单播地址、或单纟番地址的网^:。
6、 一种网络设备,用于实现组播报文的转发,其特征在于,包括 对应关系设置单元,用于对于需要接收特定组播组的组播报文的单播地址,配置所述特定组播组的组播组地址与所述单播地址的对应关系; 匹配单元,用于对接收到的组播才艮文中的组播组地址进行匹配; 单播地址获取单元,用于当所述匹配单元发现所述组播报文中的组播组 地址为所述对应关系设置单元中设置的特定的组播组地址时,根据所述对应 关系设置单元设置的对应关系获取与所述组播组地址对应的单播地址;替换单元,用于使用所述单播地址获取单元获取的单播地址替换所述组#番净艮文中的组l番组地址;转发单元,用于转发所述替换单元替换后得到的"R文。
7、 如权利要求6所述网络设备,其特征在于,还包括 复制转发单元,用于当所述匹配单元发现组播报文中的组播组地址为所述特定的组播组地址时,复制所述接收到的组播报文并进行组播转发。
8、 如权利要求6所述网络设备,其特征在于,所述匹配单元进一步包括 接入控制列表ACL或寄存器,用于对从与组播服务器连接的接口接收到的组 4番才艮文中的组4番组地址进行匹配。
9、 如权利要求6所述网络设备,其特征在于,还包括 单播路由转发表单元,用于向所述转发单元提供单播路由转发表,用于转发所述目的地址替换为单播地址后的组播报文。
10、 如权利要求6至9中任一项所述网络设备,其特征在于,所述单播 地址为具体的单播地址、或单播地址的网段。
全文摘要
本发明公开了一种组播报文的转发方法和设备。该方法包括以下步骤对于需要接收特定组播组的组播报文的单播地址,配置所述特定组播组的组播组地址与所述单播地址的对应关系;对接收到的组播报文中的组播组地址进行匹配;所述组播报文中的组播组地址为所述特定的组播组地址时,根据所述对应关系获取与所述组播组地址对应的单播地址;使用所述单播地址替换所述组播报文中的组播组地址并转发。通过使用本发明,对接收到的组播报文的组播组地址进行匹配,实现了将组播报文转换成单播报文并将转换后的单播报文进行转发,使得处于非组播网络环境中的用户可以接收到组播数据报文。
文档编号H04L12/18GK101252529SQ20081009025
公开日2008年8月27日 申请日期2008年3月31日 优先权日2008年3月31日
发明者郭振华 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1