一种报文转发方法及装置制造方法及图纸

技术编号:14027711 阅读:50 留言:0更新日期:2016-11-19 12:17
本发明专利技术实施例公开了一种报文转发方法,包括:获取待转发报文的特征属性以及转发所述待转发报文的路由条数,所述特征属性包括源地址、目的地址、协议号、源端口号以及目的端口号中的至少一种;根据所述待转发报文的特征属性以及所述转发所述待转发报文的路由条数,计算网关关键值;从可用的所述路由条数的路由网关中选择与所述网关关键值对应的路由网关,并使用选择的所述路由网关对所述待转发报文进行转发。本发明专利技术实施例还公开了一种报文转发装置。采用本发明专利技术实施例,提高报文转发的流量负载均衡,提高网络的吞吐量。

【技术实现步骤摘要】

本专利技术涉及电子
,尤其涉及一种报文转发方法及装置
技术介绍
多租户的overlay网络中存在大量与underlay网络的通信,均依赖overlay与underlay之间的路由网关,在处理状态业务时,路由网关需要部署主设备和从设备,以提高可靠性,在需要扩展处理能力时,需要增加路由网关,以提高扩展性。在现有技术方案中,路由器可以与下一跳集群中的多个路由网关连接,但是,对于去往同一个目标路由(网络地址和掩码均相同)的报文,只能将报文转发到下一跳集群中同一路由网关,其它路由网关处于备份状态或无效状态,并且不支持扩容和容灾,导致流量负载不均衡以及网络吞吐量低。
技术实现思路
本专利技术实施例提供一种报文转发方法及装置。可以解决现有技术方案中流量负载不均衡以及网络吞吐量低的问题。本专利技术实施例提供了一种报文转发方法,包括:获取待转发报文的特征属性以及转发所述待转发报文的路由条数,所述特征属性包括源地址、目的地址、协议号、源端口号以及目的端口号中的至少一种;根据所述待转发报文的特征属性以及所述转发所述待转发报文的路由条数,计算网关关键值;从可用的所述路由条数的路由网关中选择与所述网关关键值对应的路由网关,并使用选择的所述路由网关对所述待转发报文进行转发。其中,所述根据所述待转发报文的特征属性以及所述转发所述待转发报文的路由条数,计算网关关键值包括:根据所述待转发报文的特征属性,计算所述待转发报文的哈希值;根据所述待转发报文的哈希值以及所述转发所述待转发报文的路由条数,计算所述网关关键值。其中,所述根据所述待转发报文的哈希值以及所述转发所述待转发报文的路由条数,计算所述网关关键值包括:将所述待转发报文的哈希值除以所述路由条数取余数,并将所述余数作为所述网关关键值。其中,所述选择的所述路由网关包括N条路由网关,所述待转发报文包括多个数据包,所述N为大于等于1的正整数;所述使用选择的所述路由网关对所述待转发报文进行转发包括:获取所述N条路由网关中每条路由网关的权重值;根据所述N条路由网关中每条路由网关的权重值,将所述多个数据包分配到所述N条路由网关进行转发。其中,所述选择的所述路由网关包括N条路由网关,所述待转发报文包括多个数据包,所述N为大于等于1的正整数;所述使用选择的所述路由网关对所述待转发报文进行转发包括:记录转发所述多个数据包中的第一个数据包所使用的所述N条路由网关中的目标路由网关;将所述多个数据包中的其他数据包全部分配到所述目标路由网关进行转发。相应地,本专利技术实施例提供了一种报文转发装置,包括:信息获取模块,用于获取待转发报文的特征属性以及转发所述待转发报文的路由条数,所述特征属性包括源地址、目的地址、协议号、源端口号以及目的端口号中的至少一种;信息计算模块,用于根据所述待转发报文的特征属性以及所述转发所述待转发报文的路由条数,计算网关关键值;报文转发模块,用于从可用的所述路由条数的路由网关中选择与所述网关关键值对应的路由网关,并使用选择的所述路由网关对所述待转发报文进行转发。其中,所述信息计算模块包括:哈希值计算单元,用于根据所述待转发报文的特征属性,计算所述待转发报文的哈希值;关键值计算单元,用于根据所述待转发报文的哈希值以及所述转发所述待转发报文的路由条数,计算所述网关关键值。其中,所述关键值计算单元具体用于:将所述待转发报文的哈希值除以所述路由条数取余数,并将所述余数作为所述网关关键值。其中,所述选择的所述路由网关包括N条路由网关,所述待转发报文包括多个数据包,所述N为大于等于1的正整数;所述报文转发模块,还用于获取所述N条路由网关中每条路由网关的权重值;根据所述N条路由网关中每条路由网关的权重值,将所述多个数据包分配到所述N条路由网关进行转发。其中,所述选择的所述路由网关包括N条路由网关,所述待转发报文包括多个数据包,所述N为大于等于1的正整数;所述报文转发模块,还用于记录转发所述多个数据包中的第一个数据包所使用的所述N条路由网关中的目标路由网关;将所述多个数据包中的其他数据包全部分配到所述目标路由网关进行转发。相应地,本专利技术实施例提供了一种报文转发装置,所述装置包括接口电路、存储器以及处理器,其中,存储器中存储一组程序代码,且处理器用于调用存储器中存储的程序代码,用于执行以下操作:获取待转发报文的特征属性以及转发所述待转发报文的路由条数,所述特征属性包括源地址、目的地址、协议号、源端口号以及目的端口号中的至少一种;根据所述待转发报文的特征属性以及所述转发所述待转发报文的路由条数,计算网关关键值;从可用的所述路由条数的路由网关中选择与所述网关关键值对应的路由网关,并使用选择的所述路由网关对所述待转发报文进行转发。实施本专利技术实施例,首先获取待转发报文的特征属性以及转发待转发报文的路由条数;然后根据待转发报文的特征属性以及转发待转发报文的路由条数,计算网关关键值;最后从可用的路由条数的路由网关中选择与网关关键值对应的路由网关,并使用选择的路由网关对待转发报文进行转发,由于每个待转发报文的特征属性不同,进而可以计算得到不同的网关关键值,并选择不同的路由网关,将流量负载均衡到下一跳集群中的多个路由网关,每个路由网关承担一部分流量的处理,从而实现流量均衡负载,提高网络的吞吐量。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的的一种VPC网路的架构示意图;图2是本专利技术第一实施例提供的一种报文转发方法的流程图;图3是本专利技术实施例提供的的另一种VPC网路的架构示意图;图4是本专利技术第二实施例提供的一种报文转发方法的流程图;图5是本专利技术实施例提供的一种报文转发装置的结构示意图;图6是本专利技术实施例提供的装置中信息计算模块的结构示意图;图7是本专利技术实施例提供的另一种报文转发装置的架构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。如图1所示,图1是专利技术实施例提供的一种VPC(Virtual Private Cloud,虚拟私云)网络的架构示意图,该系统包括控制设备Controller、代理模块Agent,虚拟机VM、路由器以及下一跳集群(包括网关A、网关B,……,网关N等等),控制设备Controller负责路由的切换、分配、管理以及调整等等,代理模块Agent负责接收Controller下发的路由信息,并根据路由信息将报文转发到处理模块进行全网部署。例如,主机Host可以接收源设备发送的报文,控制设备Controller根据路由信息从下一跳集群中选择一个网关,并通过选择的网关将该报文转发到目的设备,从而实现报文转发的目的。基于此VPC网络,本专利技术实施例提出了一种报文转发方法,本专利技术实施例的具体步骤如下所示。请参考图2,图2是本专利技术第一实施例提供的一种报文转发方法的流程图。本本文档来自技高网...
一种报文转发方法及装置

【技术保护点】
一种报文转发方法,其特征在于,所述方法包括:获取待转发报文的特征属性以及转发所述待转发报文的路由条数,所述特征属性包括源地址、目的地址、协议号、源端口号以及目的端口号中的至少一种;根据所述待转发报文的特征属性以及所述转发所述待转发报文的路由条数,计算网关关键值;从可用的所述路由条数的路由网关中选择与所述网关关键值对应的路由网关,并使用选择的所述路由网关对所述待转发报文进行转发。

【技术特征摘要】
1.一种报文转发方法,其特征在于,所述方法包括:获取待转发报文的特征属性以及转发所述待转发报文的路由条数,所述特征属性包括源地址、目的地址、协议号、源端口号以及目的端口号中的至少一种;根据所述待转发报文的特征属性以及所述转发所述待转发报文的路由条数,计算网关关键值;从可用的所述路由条数的路由网关中选择与所述网关关键值对应的路由网关,并使用选择的所述路由网关对所述待转发报文进行转发。2.如权利要求1的方法,其特征在于,所述根据所述待转发报文的特征属性以及所述转发所述待转发报文的路由条数,计算网关关键值包括:根据所述待转发报文的特征属性,计算所述待转发报文的哈希值;根据所述待转发报文的哈希值以及所述转发所述待转发报文的路由条数,计算所述网关关键值。3.如权利要求2所述的方法,其特征在于,所述根据所述待转发报文的哈希值以及所述转发所述待转发报文的路由条数,计算所述网关关键值包括:将所述待转发报文的哈希值除以所述路由条数取余数,并将所述余数作为所述网关关键值。4.如权利要求1所述的方法,其特征在于,所述选择的所述路由网关包括N条路由网关,所述待转发报文包括多个数据包,所述N为大于等于1的正整数;所述使用选择的所述路由网关对所述待转发报文进行转发包括:获取所述N条路由网关中每条路由网关的权重值;根据所述N条路由网关中每条路由网关的权重值,将所述多个数据包分配到所述N条路由网关进行转发。5.如权利要求1所述的方法,其特征在于,所述选择的所述路由网关包括N条路由网关,所述待转发报文包括多个数据包,所述N为大于等于1的正整数;所述使用选择的所述路由网关对所述待转发报文进行转发包括:记录转发所述多个数据包中的第一个数据包所使用的所述N条路由网关中的目标路由网关;将所述多个数据包中的其他数据包全部分配到所述目标路由网关进行转发。6.一种报文转发装置,其特征在于,所述装置包括:信息获取模块,用于获取待转发报文的特征属性以及转发所述待转发报文的路由条数,所述特征属性包括源地址、目的地址、协议号、源端口号以及目的端口号中的至少一种...

【专利技术属性】
技术研发人员:周显平曹德华刘尧甫陈康沙开波
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

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

1