首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种基于单端口的DNS负载均衡性能优化方案 

申请/专利权人:北京泰策科技有限公司

申请日:2022-11-27

公开(公告)日:2024-05-28

公开(公告)号:CN115858152B

主分类号:G06F9/50

分类号:G06F9/50;H04L61/4511;H04L69/165;H04L69/12;H04L69/22

优先权:

专利状态码:有效-授权

法律状态:2024.05.28#授权;2023.04.14#实质审查的生效;2023.03.28#公开

摘要:本发明公开了一种基于单端口的DNS负载均衡性能优化方案,涉及DNS负载均衡性能优化方案领域,本发明包括以下步骤:步骤一、对单一服务端口使用对称RSS技术对网络数据进行分流;步骤二、利用CPU亲和性对多核多线程绑定分离;步骤三、对收到的实时数据按同源同溯机制分流。本发明通过对称RSS技术,对网络数据分发进行优化,平衡CPU多个逻辑核的处理压力,实现负载均衡,提高网络流量采集性能。该技术可以实现多个不同CPU逻辑核中的进程并发访问不同的网卡队列,提高网卡接收数据的效率。

主权项:1.一种基于单端口的DNS负载均衡性能优化方法,其特征在于,包括以下步骤:步骤一、对单一服务端口使用对称RSS技术对网络数据进行分流:将接收的网络数据分发到网卡队列中;步骤二、利用CPU亲和性对多核多线程绑定分离:在网络数据分发到多个网卡接收队列后,利用DPDK的CPU亲和机制进行线程绑定,同时使用DPDK的逻辑核分配技术将CPU逻辑核上运行的线程从指定的网卡接收队列进行网络数据接收;步骤三、对收到的实时数据按同源同溯机制分流:对基于UDP的业务,无需保留会话表,直接计算哈希值进行分流;基于TCP的业务,建立会话表,做相关的映射,进行分流;步骤一中,在数据分流时采用多重hash计算;对数据包的hash进行计算时,首先通过ToeplitzHash算法计算hash值得到相应CPU核心并写入对应核心的key-corehash表,接着通过输入四元组输出hash值得到相应流表中具体tcp会话流并写入key-streamhash表;针对流量包中四元组的hash算法需要实现使得输入数据在完成hash计算后得到的哈希值能够平均散落在某一区域内的算法,该算法输入的值为TCP连接四元组:源IP、即SIP,目的IP、即DIP,源端口、即SPORT,目的端口、即DPORT,该算法的描述如公式所示: _tuple_hash;并采用如下算法来计算四元组hash值:HKEY1=SIP16⊗DIP16⊗SPORT;HKEY2=0x0000FFFFSIP⊗0x0000FFFFDIP⊗DPORT;HRES=HKEY1HKEY2;多重hash算法的具体流程如下:S1.首先将DPDK中RSS所采用的hashkey修改为S-RSS算法所需要的对应值,当数据包到达网络接口层之后,DPDK将会执行ToeplitzHash计算,并根据不同的hash计算结果将网络数据包分配至不同capturecore所对应的rx队列中;S2.在对应的CPUcore中获取到数据后,首先查找当前core中对应数据流重组核中的key-streamhash表,并判断对应的流表中是否已经存在当前数据包对应的网络流,若能够查询到对应的网络流则将该网络流数据添加到流表对应项中;S3.若在相应的流表中没有查询到对应的网络流,则查询key-corehash表中该流数据是否已通过负载均衡方案分配到其他CPU核心处理,若在key-corehash表中能够查询到该网络流,则将流数据交付至对应CPU核心的rte_ring环形队列中,否则表示该流数据针对流量采集模块以及重组模块来说对应的是一条新的tcp连接;S4.在处理新的tcp连接时,需要对CPU的整体负载均衡度进行计算,若CPU的负载均衡度超过阈值,则剔除CPU核心中负载过重的核,并重新计算Toeplitzhash值,在计算完毕后将该数据流以及根据hash结果得到的CPU核心的映射关系添加到key-corehash表中,并将流量数据发送至对应CPU核心的rte_ring,且在对应核心中的key-streamhash表中追加数据流的信息。

全文数据:

权利要求:

百度查询: 北京泰策科技有限公司 一种基于单端口的DNS负载均衡性能优化方案

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。