【技术实现步骤摘要】
一种NAT端口分配在多核下对数据流免锁的实现方法
[0001]本专利技术涉及通信
,具体是指一种NAT端口分配在多核下对数据流免锁的实现方法。
技术介绍
[0002]负载均衡是高可用网络基础架构的关键组件,通常用于将工作负载分布到多个服务器来提高网站、应用、数据库或其他服务的性能和可靠性。
[0003]负载均衡NAT功能是最基本需求,当一个客户端请求发送给负载均衡设备后,负载均衡设备会将IP报文的目的地址目的端口转化为内网的服务器的IP地址和服务端口,会将IP报文的源地址和源端口修改为本地地址和一个端口。
[0004]目前,NAT技术比较成熟,但高性能的需求使设备采用多核处理成为普遍,NAT一个关键技术就是如何将源端口分配和回收,一般做法是将一个地址的65535个端口作为一个资源池,多个CPU核处理数据流过程时,操作同一个地址的端口的申请和释放时,会采用自旋锁锁定资源,该方法实现简单可靠,但是由于使用了自旋锁导致数据流的处理性能下降。
[0005]地址转换技术目前广泛应用于互联网。用于隔离Int ...
【技术保护点】
【技术特征摘要】
1.一种NAT端口分配在多核下对数据流免锁的实现方法,其特征在于:包括以下步骤:步骤1、驱动程序读取IP数据报文的TCP或UDP的源目的端口,将源目的端口的和做hash计算得到值n,值n对应的CPU核记为CPU核n,然后将数据报文发送给CPU核n的报文收发队列;步骤2、CPU核n读取报文,经过服务负载模块处理,将目的地址和目的端口进行修改后,提交给NAT模块,NAT模块读取报文的目的端口p,进行hash计算,获得hash值x,通过二元hash,对应二级hash表找到hash队列y,从队列y获取一个未使用端口q返回给服务负载模块;步骤3、服务负载模块通过NAT模块获取的端口q来修改报文的源端口后,发送报文到网络接口;步骤4、客户端发送给负载均衡设备的报文和服务器...
【专利技术属性】
技术研发人员:靳龙,
申请(专利权)人:上海弘积信息科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。