[发明专利]一种基于DPDK的ALG实现方法和系统有效
申请号: | 202011569477.3 | 申请日: | 2020-12-26 |
公开(公告)号: | CN112787998B | 公开(公告)日: | 2022-04-08 |
发明(设计)人: | 雷宇龙;王兵权;王博珏;李昭熹;王平;王超 | 申请(专利权)人: | 郑州信大捷安信息技术股份有限公司 |
主分类号: | H04L69/163 | 分类号: | H04L69/163;H04L69/22;H04L61/25;H04L65/60;H04L9/40 |
代理公司: | 郑州大通专利商标代理有限公司 41111 | 代理人: | 陈勇 |
地址: | 450000 河南省*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 dpdk alg 实现 方法 系统 | ||
本发明涉及一种基于DPDK的ALG实现方法和系统,方法包括在用户态Nginx程序配置一条控制反向代理,代理到服务端;将所述控制反向代理作为静态控制连接侦听地址,并通过客户端访问静态控制连接侦听地址;用户态Nginx程序与客户端断开连接,与服务端建立连接,用户态Nginx程序用于转发客户端与服务端之间的控制连接数据包;用户态Nginx程序基于DPDK+FreeBSD+Nginx架构,对所述控制连接数据包做协议解析改写以及相关控制动作;服务端推流至用户态Nginx程序动态媒体连接侦听地址,用户态Nginx程序使用本地媒体端口发送流媒体给客户端。本发明能够实现基于DPDK用户态协议栈层面的ALG功能,打通多通道协议的业务,满足ALG高并发大吞吐应用场景。
技术领域
本发明涉及互联网通信技术领域,尤其涉及一种基于DPDK的ALG实现方法和系统。
背景技术
普通NAT实现了对TCP或UDP报文头中的IP地址及端口转换功能,但对应用层数据载荷中的字段无能为力,在许多应用层协议中,比如多SIP、RTSP、FTP等,TCP/UDP载荷中带有地址或者端口信息,这些内容不能被NAT进行有效的转换,就可能导致业务不通。而NATALG技术能对应用层报文中的地址进行转换处理,从而保证应用层通信的正确性。
传统的Linux 内核ALG可以解决SIP、RTSP、FTP等协议经过nat设备时对其控制连接数据包中地址做ALG转换,但由于其基于Linux内核模块实现的,因此用户态程序无法对控制连接数据包做解析,进而做设备认证,访问控制等更丰富的功能。Linux内核中断处理、数据包经过协议栈处理时多次内存拷贝、以及锁的开销限制了设备并发吞吐。
发明内容
本发明为解决现有基于Linux内核ALG在进行处理时访问控制功能单一并且在数据包处理时其吞吐量受限的问题提供了一种基于DPDK的ALG实现方法和系统,运用基于DPDK+FreeBSD用户态协议栈+Nginx程序技术来实现ALG功能,Nginx程序作为反向代理终结连接,对控制连接数据包进行解析,继而实现ALG改写,设备认证,访问控制等功能,打通多通道协议业务,同时DPDK使用无锁技术、大页内存减少,cache-miss多核结合网卡多队列等方面优化,因此结合用户态协议栈可以满足ALG高并发大吞吐应用场景。
一方面,本发明提供了一种基于DPDK的ALG实现方法,所述方法包括以下步骤:
步骤1:用户态Nginx程序配置一条控制反向代理,代理到服务端;
步骤2:将所述控制反向代理作为静态控制连接侦听地址,并通过客户端访问静态控制连接侦听地址;
步骤3:用户态Nginx程序与客户端断开连接,与服务端建立连接,用户态Nginx程序用于转发客户端与服务端之间的控制连接数据包;
步骤4:用户态Nginx程序基于DPDK+FreeBSD+Nginx架构,对所述控制连接数据包做协议解析改写以及相关控制动作;
步骤5:服务端推流至用户态Nginx程序动态媒体连接侦听地址,用户态Nginx程序使用本地媒体端口发送流媒体给客户端。
进一步地,所述方法还包括配置阶段:
用户态Nginx程序接收客户端发送服务端的SETUP指令时,用户态Nginx程序将控制连接数据包中的媒体接收端口改写为动态媒体连接侦听端口,同时用户态Nginx程序下发动态媒体反向代理配置;
用户态Nginx程序收到服务端发给客户端的关于所述SETUP指令的Reply指令时,用户态Nginx程序将控制连接数据包中的媒体发送端口改写为动态媒体连接的本地端口,同时用户态Nginx程序下发动态媒体反向代理配置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州信大捷安信息技术股份有限公司,未经郑州信大捷安信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011569477.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种硬质塑料保温板制作成型方法
- 下一篇:一种耐油隔热油管橡胶套及制备方法