一种组播报文转发方法和装置的制造方法_2

文档序号:9670694阅读:来源:国知局
据核中有6个VCPU,假设每个VCPU的处理能力相同,郝么数据核对于组播数据 报文的转发速率就相当于控制核转发速率的6倍,也就是50M/s*6=300M/s( W上是理论 上的计算结果,实际的转发速率根据设备本身性能和配置有关,根据相关测试显示该装置 的转发带宽能够达到4Gbps W上,相当于521M/S)。显然,本发明可W通过数据核转发组播 数据报文来提升报文的转发效率。
[0052]由于数据核要通过查找内存中的组播路由表转发组播数据报文,而内存中的组播 路由表是控制核创建后保存在内存中的,在一些情况下,数据核可能无法查找到与组播数 据报文匹配的组播路由表项,例如在转发一个首次出现的组播数据报文时,由于控制核还 没有为该首次出现的组播数据报文创建组播路由表项,则数据核在组播路由表中便查找不 到与所述组播数据报文匹配的组播路由表项。因此在本发明可选的实施例中,上述调用模 块还可W进一步调用控制核去查找与所述组播数据报文匹配的组播路由表项,W使控制核 中的第二转发模块对该组播数据报文进行转发,该第二转发模块转发组播数据报文的原理 与上述第一转发模块相同,此处不再赏述。
[0053] 需要说明的是,上述控制核的组播路由表理论上应该与之前数据核查找的组播路 由表是同一张表,但是实际方案中,由于控制核从处理完成的组播数据报文创建新的组播 路由表项,到将组播路由表项更新到内存中W使数据核能够访问该表项,期间通常会存在 一定的延迟,送个"延迟",可能使控制核使用的组播路由表已经更新成一个新的组播路由 表,而数据核还在使用内存中原来的组播路由表,即该新的组播路由表中添加了新的组播 路由表项,而在内存中的组播路由表中还未更新该新的组播路由表项。若此时数据核收到 一个组播数据报文,其SIP和DIP与所述新的组播路由表项中的SIP和DIP相同,郝么数据 核在内存的组播路由表中则无法找到与所述组播数据报文相匹配的组播路由表项,而在控 制核中可W找到,因此数据核可W将没有匹配到组播路由表项的组播数据报文上送到控制 核处理。
[0054] 在本发明可选的实施方式中,可W在控制核查找组播路由表之前,通过控制核中 保存的报文记录表,对待转发的报文先进行一次筛选,W便过滤掉与控制核的新的组播路 由表中存在相同SIP和DIP的组播数据报文,从而避免控制核进行重复处理,从而进一步提 高转发效率。举例来说,假设控制核接收一个组播数据报文(SIP=IPA,DIP=IPB)时,可 W先提取该组播数据报文的SIP和DIP,在控制核自身保存的所述报文记录表进行查找。 [005引当在该报文记录表中包括SIP=IPA,DIP=IPB的组播数据报文时,则说明控制 核的新的组播路由表中存在与上述SIP=IPA,DIP=IPB的组播数据报文具有相同SIP和 DIP的组播路由表项,郝么控制核对所述组播数据报文暂时不作处理,从而避免控制核的待 处理队列中出现相同SIP和DIP的报文。等待控制核将数据核上的组播路由表更新后,控 巧限将SIP=IPA,DIP=IPB对应的组播路由表项添加到原组播路由表中,郝么此时数据 核就可W根据更新后的组播路由表重新对上述控制核暂时不处理的组播数据报文(SIP= IPA,DIP=IPB)进行转发。
[0056] 当该报文记录表中不包括SIP=IPA,DIP=IPB的组播数据报文时,说明控制核 的新的组播路由表中不存在与上述SIP=IPA,DIP=IPB的组播数据报文具有相同SIP和 DIP的组播路由表项,或者说控制核未处理过该组播数据报文。郝么为了转发该报文,控制 核中的表项创建模块可W根据组播协议为所述组播数据报文创建新的组播路由表项;所述 组播协议通常包括IGMP协议和PIM(protocolinckpendentmulticast,协议无关组播)协 议,控制核可W根据上述组播协议下生成的PIM路由表为所述组播数据报文创建新的组播 路由表项,进而可W由第二转发模块根据所述新创建的组播路由表项对该组播数据报文进 行转发。
[0057] 由图1可知,数据核中VCPU的数量一般多于控制核中VCPU的数量,因此数据核通 常也比控制核具有更多的系统资源,例如硬件线程和缓存,通过本发明的报文转发装置可 W将数据核的资源充分利用,不仅为控制核减轻进行负担,还可W提高组播报文的转发效 率。
[005引为了合理分配数据核的VCPU资源,在本发明可选的实施例中,数据核可W采用如 下两种处理方式对组播数据报文进行转发:
[0059] -种是,流分类方式。本发明实施例中的所述装置可W对上送数据核处理的报文 可W进行流分类处理。对于图1中的网络设备,所述流分类处理的具体过程如下:
[0060] 当接收到组播数据报文时,流分类模块将该组播数据报文进行流分类;其中流分 类的方式可W是通过报文特征进行流分类,比如说按照SIP所属的地址段进行分类、或是 按照报文的入接口进行分类、又或者按照报文携带的特征标识、五元组信息等进行流分类。 W按照SIP所属的地址段进行分类为例,管理员可W事先配置一张流分类表存储在本设备 中,表中包含多个地址段及每个地址段对应的VCPU,例如将SIP属于第一地址段的组播数 据报文将由VCPU2处理;将SIP属于第二地址段的组播数据报文将由VCPU3处理,W此类 推。该流分类表如下所示:
[0061]
阳062]表I
[0063] 在该设备接收到组播数据报文时,调用模块101可W根据该组播数据报文的SIP 所属的地址段从流分类表中查找到该组播数据报文对应的流分类结果,从而可W调用数据 核中的指定VCPU(实际是硬件线程)来查找与该组播数据报文匹配的组播路由表项,从而 实现对该组播数据报文的转发。相对于现有技术中所有报文等待一个VCPU处理的现象,送 种流分类的方式可W数据核中的VCPU得到充分利用,并可W使报文处理效率得到成倍的 提升。
[0064]另外一种是,负载均衡方式。其中,调用模块101还可W根据负载均衡策略调用数 据核中的指定硬件线程查找与该组播数据报文匹配的组播路由表项,W图1中的数据核为 例,第一个组播数据报文由VCPU2处理,第二个组播数据报文由VCPU3处理,第H个组播数 据报文由VCPU4处理,第四个组播数据报文由VCPU5处理,第五个组播数据报文由VCPU6处 理,第六个组播数据报文由VCPU7处理,而第走个组播数据报文再由VCPU2处理,如此循环, 从而使数据核中的每个VCPU得到充分利用。由于负载均衡技术在本领域已经是较为成熟 的技术,此处不做详细说明。
[0065] W上所述仅为本发明的较佳实施例而已,并不用W限制本发明,凡在本发明的精 神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
【主权项】
1. 一种组播数据报文转发方法,其特征在于,所述方法包括: 当接收到组播数据报文时,调用数据核查找与该组播数据报文匹配的组播路由表项; 数据核根据查找到的组播路由表项对该组播数据报文进行转发。2. 如权利要求1所述的方法,其特征在于,所述方法还包括: 当数据核未查找到与该组播数据报文匹配的组播路由表项时,调用控制核查找与所述 组播数据报文匹配的组播路由表项; 控制核根据查找到的组播路由表项对该组播数据报文进行转发。3. 如权利要求2所述的方法,其特征在于,所述方法还包括: 当控制核未查找到与该组播数据报文匹配的组播路由表项时,控制核根据组播协议为 所述组播数据报文创建新的组播路由表项; 控制核根据所述新的组播路由表项对该组播数据报文进行转发。4. 如权利要求1所述的方法,其特征在于,所述方法还包括: 当接收到组播数据报文时,将该组播数据报文进行流分类; 所述调用数据核查找与该组播数据报文匹配的组播路由表项包括: 根据流分类结果调用数据核中的指定硬件线程查找与该组播数据报文匹配的组播路 由表项。5. 如权利要求1所述的方法,其特征在于,所述方法还包括: 当接收到组播数据报文时,所述调用数据核查找与该组播数据报文匹配的组播路由表 项包括: 根据负载均衡策略调用数据核中的指定硬件线程查找与该组播数据报文匹配的组播 路由表项。6. -种组播数据报文转发装置,该装置应用于网络设备,该网络设备包括数据核和控 制核,其特征在于,所述装置包括调用模块和第一转发模块,其中所述第一转发模块位于数 据核; 所述调用模块,用于接收到组播数据报文时,调用数据核查找与该组播数据报文匹配 的组播路由表项; 所述第一转发模块,用于根据查找到的组播路由表项对该组播数据报文进行转发。7. 如权利要求6所述的装置,其特征在于,所述调用模块还用于: 当未查找到与该组播数据报文匹配的组播路由表项时,调用控制核查找与所述组播数 据报文匹配的组播路由表项; 所述控制核包括第二转发模块; 所述第二转发模块,用于根据查找到的组播路由表项对该组播数据报文进行转发。8. 如权利要求7所述的装置,其特征在于,所述控制核还包括: 表项创建模块,用于当未查找到与该组播数据报文匹配的组播路由表项时,根据组播 协议创建新的组播路由表项; 所述第二转发模块,还用于根据所述新的组播路由表项对该组播数据报文进行转发。9. 如权利要求6所述的装置,其特征在于,所述装置还包括: 流分类模块,用于当接收到组播数据报文时,将该组播数据报文进行流分类; 所述调用模块还用于: 根据流分类结果调用数据核中的指定硬件线程查找与该组播数据报文匹配的组播路 由表项。10.如权利要求6所述的装置,其特征在于,所述调用模块还用于: 根据负载均衡策略调用数据核中的指定硬件线程查找与该组播数据报文匹配的组播 路由表项。
【专利摘要】本发明提供一种组播数据报文转发方法和装置,所述方法包括:当接收到组播数据报文时,调用数据核查找与该组播数据报文匹配的组播路由表项;数据核根据查找到的组播路由表项对该组播数据报文进行转发。本发明可以通过调用数据核来查找组播数据报文的组播路由表项,并对组播数据报文进行转发。使数据核可以分担控制核的运行负担,从而提高了组播报文的转发效率。
【IPC分类】H04L12/761, H04L12/741
【公开号】CN105429881
【申请号】CN201410490643
【发明人】刘晓贺
【申请人】杭州迪普科技有限公司
【公开日】2016年3月23日
【申请日】2014年9月23日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1