The present invention discloses a message forwarding method and device under the NUMA architecture. The method includes: the first network card in the first NUMA receives the message; sends it to the first CPU processing within the corresponding first NUMA; the first CPU queries the global session hash table to determine whether the session hash table item corresponding to the hash key value of the message exists. If the hash table item exists, it is queried whether the first NUMA first CPU is recorded in the range of the session hash table item, and if no record is recorded, a second CPU of second NUMA, which has established the session policy table item, is found from the range of the session hash table, to copy the session from the session policy table address of the second CPU. The policy information creates a session policy table item in the first CPU according to the session policy information; the first CPU of the first NUMA is recorded in the range of the session hash table item, and the message is forwarded to the message according to the session policy table item established in the first CPU of the first NUMA. The invention can guarantee the load balance of the flow processing.
【技术实现步骤摘要】
numa架构下的报文转发方法、装置、存储介质及电子设备
本专利技术涉及数据处理领域,更具体地,涉及一种numa架构下的报文转发方法、装置、存储介质及电子设备。
技术介绍
随着科技的发展,网卡的性能无法随着cpu迅猛的发展速度同步提高,这导致了导致明明转发系统的能力很高,网卡硬件有时却无法实现高流量的转发,成为整个转发系统的瓶颈。目前,基于numa(Non-UniformMemoryAccess,非统一内存访问)技术的转发系统被广泛使用;numa技术把一台计算机分成多个节点,每个节点内部包含多个CPU,各节点同时处理以获得更大的处理流量,个节点内部使用共享内存控制器,节点之间通过互联模块进行连接和交互;但CPU在多个numa间进行跨节点的访问时因需要通过互联模块进行连接和交互,其跨节点访问的内存速度要远慢于CPU访问其本地内存的速度,这使得整个转发系统执行不稳定;同时,在进行转发处理时,系统需先根据报文信息在内核态匹配策略才能进一步进行转发处理,整个处理周期较长,使得系统的效率较低。
技术实现思路
有鉴于此,本专利技术实施例提供一种numa架构下的报文转发方法、装置、存储介质及电子设备,主要解决目前的转发系统存在的系统运行较慢、处理效率低等问题。根据本专利技术的一个方面,提供一种numa架构下的报文转发方法,所述方法包括:第一numa内的第一网卡接收报文;将所述报文发给与所述报文对应的第一numa内的第一CPU处理;所述第一CPU查询全局会话哈希表,判断所述报文的哈希键值对应的会话哈希表项是否存在;若所述报文的哈希键值对应的会话哈希表项存在,则查询所述会话哈希表 ...
【技术保护点】
1.一种numa架构下的报文转发方法,其特征在于,所述方法包括:第一numa内的第一网卡接收报文;将所述报文发给与所述报文对应的第一numa内的第一CPU处理;所述第一CPU查询全局会话哈希表,判断所述报文的哈希键值对应的会话哈希表项是否存在;若所述报文的哈希键值对应的会话哈希表项存在,则查询所述会话哈希表项的值域中是否记录有所述第一numa的第一CPU;如果没有记录,则从所述会话哈希表项的值域中查找已经建立会话策略表项的第二numa的第二CPU,从所述第二CPU的会话策略表项地址拷贝会话策略信息,根据所述会话策略信息在所述第一CPU中创建会话策略表项;将所述第一numa的第一CPU记录在所述会话哈希表项的值域中;根据所述第一numa的第一CPU中已建立的会话策略表项对所述报文进行转发。
【技术特征摘要】
1.一种numa架构下的报文转发方法,其特征在于,所述方法包括:第一numa内的第一网卡接收报文;将所述报文发给与所述报文对应的第一numa内的第一CPU处理;所述第一CPU查询全局会话哈希表,判断所述报文的哈希键值对应的会话哈希表项是否存在;若所述报文的哈希键值对应的会话哈希表项存在,则查询所述会话哈希表项的值域中是否记录有所述第一numa的第一CPU;如果没有记录,则从所述会话哈希表项的值域中查找已经建立会话策略表项的第二numa的第二CPU,从所述第二CPU的会话策略表项地址拷贝会话策略信息,根据所述会话策略信息在所述第一CPU中创建会话策略表项;将所述第一numa的第一CPU记录在所述会话哈希表项的值域中;根据所述第一numa的第一CPU中已建立的会话策略表项对所述报文进行转发。2.如权利要求1所述的方法,其特征在于,若所述报文的哈希键值对应的会话哈希表项不存在,所述方法还包括:将所述报文送入内核态中匹配策略;所述内核态将匹配的会话策略信息返回给用户态;根据返回的会话策略信息在所述第一CPU上创建会话策略表项;将所述第一numa的第一CPU记录在所述会话哈希表项的值域;根据所述第一numa的第一CPU中已建立的会话策略表项对所述报文进行转发。3.如权利要求1所述的方法,其特征在于,所述第一numa内的第一网卡接收报文,包括:多网卡绑定形成一个bond虚拟逻辑网口,所述bond虚拟逻辑网口包括所述第一numa的第一网卡,还包括至少一个不属于所述第一numa的第二网卡;所述报文通过所述bond虚拟逻辑网口被所述第一网卡接收。4.如权利要求1所述的方法,其特征在于:所述会话哈希表项的键值包括所述报文的五元组;所述会话哈希表项的值域包括numa编号、CPU编号和各CPU建立的会话策略表项的存储地址。5.如权利要求1或2所述的方法,其特征在于,所述在第一CPU中创建会话策略表项之前,所述方法还包括:在所述第一CPU的本地内存的内存池中申请一块区域用于存储会话策略表项。6.如权利要求1所述的方法,其特征在于,所述方法还包括:当所述第一CPU中已建立的会话策略表项的内容发生更改时,所述第一CPU获取所述会话策略表项对应的会话哈希表项的值域;判断是否在其他CPU上已经建立了会话策略表项的副本;如果是,所述第一CPU逐个修改其他CPU上已经建立的会话策略表项副本的内容。7.如权利要求1所述的方法,其特征在于,所述方法还包括:检测到系统的报文转发负载超过高负载阈值,则进入负载均衡模式;将所述系统的网卡配置过滤策略,将所有s...
【专利技术属性】
技术研发人员:刘健男,党丽娜,
申请(专利权)人:东软集团股份有限公司,
类型:发明
国别省市:辽宁,21
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。