[发明专利]报文的转发方法及装置、存储介质、电子设备在审
申请号: | 202110351749.0 | 申请日: | 2021-03-31 |
公开(公告)号: | CN112965824A | 公开(公告)日: | 2021-06-15 |
发明(设计)人: | 李澍桐 | 申请(专利权)人: | 北京金山云网络技术有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;H04L12/741 |
代理公司: | 北京华夏泰和知识产权代理有限公司 11662 | 代理人: | 蔡良伟 |
地址: | 100085 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 报文 转发 方法 装置 存储 介质 电子设备 | ||
1.一种报文的转发方法,其特征在于,包括:
接收待转发的报文;
解析所述报文的数据流向;
若所述数据流向为流出方向,通过对所述报文所包含的元信息进行哈希计算,以确定所述报文的处理线程;若所述数据流向为流入方向,根据目的端口和处理线程的映射关系,确定该报文所在数据流在流出方向上对应的处理线程,其中,每个所述处理线程绑定一个处理器核心;
在所述处理线程上采用预设会话表转发所述报文。
2.根据权利要求1所述的方法,其特征在于,所述通过对所述报文所包含的元信息进行哈希计算,以确定所述报文的处理线程,包括:
提取所述报文的六元组信息,其中,所述六元组信息包括以下元信息:用户虚拟网络标识、源IP地址、目的IP地址、源端口、目的端口和通信协议号;
以所述六元组信息为哈希因子计算哈希值;
基于所述哈希值确定所述报文的处理线程。
3.根据权利要求2所述的方法,其特征在于,所述基于所述哈希值确定所述报文的处理线程,包括:
以所述哈希值为索引根据预设映射表在线程集合中查找与所述哈希值匹配的处理线程,其中,所述预设映射表包括所述哈希值与所述处理线程的映射关系。
4.根据权利要求1所述的方法,其特征在于,根据目的端口和处理线程的映射关系,确定该报文所在数据流在流出方向上对应的处理线程,包括:
提取所述报文中的目的端口编号,并获取报文转发装置的处理器的总线程数;
根据所述目的端口编号与所述总线程数的映射关系查找该报文所在数据流在流出方向上对应的处理线程。
5.根据权利要求4所述的方法,其特征在于,
所述报文转发装置的处理线程与端口满足以下关系:
Pi={x|x=i+m*N,m∈自然数,1024≤x≤65535};其中,Pi为处理线程i对应的端口编号集合,x为端口编号,i为处理线程的编号,N为总线程数;
所述根据所述目的端口编号与所述总线程数的映射关系查找该报文所在数据流在流出方向上对应的处理线程,包括:
采用以下映射关系查找报文所在数据流在流出方向上对应的处理线程:线程编号=W%N,其中,N为总线程数,W为目的端口编号。
6.根据权利要求1所述的方法,其特征在于,所述在所述处理线程上采用预设会话表转发所述报文,包括:
将所述报文分流至所述处理线程;
在所述处理线程上提取所述报文中的原始元信息;
在所述处理线程的内存区域中查找与所述原始元信息匹配的预设会话表;
基于所述预设会话表将所述原始元信息转换为目标元信息;
采用所述目标元信息转发所述报文。
7.根据权利要求1所述的方法,其特征在于,在所述处理线程上采用预设会话表转发所述报文之前,所述方法还包括:
在所述报文为初始报文的情况下,提取所述初始报文的六元组信息,其中,所述六元组信息包括以下元信息:用户虚拟网络标识、源IP地址、目的IP地址、源端口、目的端口和通信协议号;
以所述六元组信息为哈希因子计算哈希值,并基于所述哈希值分配处理线程;
在所述处理线程的内存区域中创建初始报文对应的数据流的会话表,以作为所述预设会话表。
8.一种报文的转发装置,其特征在于,包括:
第一接收模块,用于接收待转发的报文;
解析模块,用于解析所述报文的数据流向;
查找模块,用于若所述数据流向为流出方向,通过对所述报文所包含的元信息进行哈希计算,以确定所述报文的处理线程;若所述数据流向为流入方向,根据目的端口和处理线程的映射关系,确定该报文所在数据流在流出方向上对应的处理线程,其中,每个所述处理线程绑定一个处理器核心;
转发模块,用于在所述处理线程上采用预设会话表转发所述报文。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京金山云网络技术有限公司,未经北京金山云网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110351749.0/1.html,转载请声明来源钻瓜专利网。