CN110768994A - 一种基于dpdk技术的提高sip网关性能的方法 - Google Patents
一种基于dpdk技术的提高sip网关性能的方法 Download PDFInfo
- Publication number
- CN110768994A CN110768994A CN201911045203.1A CN201911045203A CN110768994A CN 110768994 A CN110768994 A CN 110768994A CN 201911045203 A CN201911045203 A CN 201911045203A CN 110768994 A CN110768994 A CN 110768994A
- Authority
- CN
- China
- Prior art keywords
- dpdk
- protocol stack
- message
- data packet
- nginx
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/102—Gateways
- H04L65/1033—Signalling gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/741—Routing in networks with a plurality of addressing schemes, e.g. with both IPv4 and IPv6
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
- H04L61/103—Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
- H04L65/1104—Session initiation protocol [SIP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/622—Layer-2 addresses, e.g. medium access control [MAC] addresses
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种基于DPDK技术的提高SIP网关性能的方法,遵循DPDK编程模式实现DPDK协议栈,采用轮询模式没有中断。每一个遍历的实体和及其消息能够很快处理。协议栈和NGINX启动时和每个CPU内核进行绑定,充分利用DPDK和CPU内核的优化,减少线程的调度的开销。本发明的协议栈和NGINX两进程间通信使用DPDK提供的无锁队列,通信及时性高。本发明基于DPDK技术,绕过LINUX系统,直接从网卡抓包到应用层,并将数据包转发给NGINX的DPDK协议栈,减低SIP网关的CPU负载和降低的丢包率,适用于有大话务量,要求通信及时性,低丢包率网关类的场景。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种基于DPDK技术的提高SIP网关性能的方法。
背景技术
传统的Linux对称多处理器(SMP)环境下,多个CPU运行操作系统的单一复本,并且,各CPU之间共享内存子系统以及总线架构。随着CPU的数量增多,CPU间共享资源或I/0的同步问题愈发明显,带来的高额系统开销,导致数据包的处理性能不能随着处理器核数的增加而线性增长。
DPDK是一个开源的快速包处理开发工具集,实现了一套完整的基于LinuxOS但又不同于Linux OS的旁路实时运行环境,不是一个网络协议栈。应用DPDK技术进行网络数据包的高效处理,需应用程序自行实现IP网络的网络协议栈及各类型网络服务功能。
目前监控产品的接入层使用了NGINX 作为前置的SIP 网关,起着负载均衡作用,但在实际使用中,运行中发现NGINX的服务器CPU 负载也高,加上SIP是基于UDP 协议的,丢包情况也常见。
发明内容
本发明的目的在于提供一种基于DPDK技术的提高SIP网关性能的方法。
本发明采用的技术方案是:
一种基于DPDK技术的提高SIP网关性能的方法,其包括以下步骤:
步骤1,初始化DPDK平台并基于DPDK技术实现DPDK 协议栈;
步骤2,配置NGINX的DPDK代理模块以提供API的调用,加载DPDK代理模块并创建共享内存,共享内存用于存储消息队列;
步骤3,将NGINX 的socket 的API调用重定向链接到DPDK 代理模块;
步骤4,DPDK协议栈进程和NGINX进程间通过共享内存池采用DPDK 提供的高效无锁队列进行通信;
步骤5,NGINX进程直接从网卡抓取数据包,并通过DPDK代理模块将数据包转发给DPDK协议栈;
步骤6,DPDK 协议栈根据网络数据包调度策略进行网络数据包的数据接收和数据发送的调度。
进一步地,DPDK协议栈和NGINX两进程运行在同一台多核的基于Intel CPU 芯片的Linux物理机上。
进一步地,消息队列包括控制消息和数据消息。由于DPDK协议栈和NGINX 的两个独立应用程序。使用共享内存来记录两边的socket的资源管理。使用HASH 表管理socket资源(udp client和TCP client)。HASH的键值为socket的bind操作时的所绑定的端口。当NGINX需要绑定端口时,则填写好请求包通过控制消息队列发送给DPDK协议栈。并等待应答。DPDK协议栈收到请求后,处理更新共享内存,发送应答。NGINX 侧收到应答。
进一步地,步骤6中基于网络数据包调度策略的数据接收的具体步骤如下:
步骤6.1,DPDK 协议栈收到报文时,检查报文类型判断是否为IPV4;是则,执行步骤6.4;否则,执行步骤6.2;
步骤6.2,判断报文类型是否为ARP广播报文,是则,执行步骤6.3;否则,丢弃数据包并等待下个数据包执行步骤6.1;
步骤6.3,DPDK 协议栈查询ARP 缓存表获取MAC地址并进行路由选择,进而通过PORT端口完成ARP广播报文发送后执行步骤6.1;
步骤6.4,针对IPV4 报文则检查目标地址是本地地址;当目标地址不是本地地址时,则进行IP 转发;当目标地址是本地地址时,则进行有消息检查并检查checksum识别TCP或UDP,进而调用对应的模块进行合法性检查;
步骤6.5,将合法的数据包放入对应接收队列。
进一步地,步骤6中数据发送的具体方法为:通过UDP 实体线程不断轮询每一个UDP client查看是否有数据包要发送;有数据包要发送,则计算checksum后进行发送。
进一步地,步骤6.3中DPDK 协议栈采用LPM库进行路由选择。
进一步地,步骤6.3中当ARP 缓存表没有MAC地址,则发送ARP Request 广播报文,等待Response,并根据收到Response更新ARP 缓存表,同时填写MAC 到报文中。
进一步地,步骤6.3中使用定时器进行ARP广播报文的发送,当发送次数达到最大连续发送次数后仍未收到反馈则ARP广播报文发送失败,丢弃发送的TCP/UDP数据包。
进一步地,最大连续发送次数为4次。
进一步地,步骤6.4中检查checksum识别为UDP 报文时,从UDP client 表中查找UDP client 结构以检查UDP 合法性。
当UDP client 表中没有对应UDP client时,则丢弃数据包并发送ICMP 目的地址不可到达报文;
当UDP client 表中存在对应UDP client时,则将数据包放入对应接收队列中。
本发明采用以上技术方案,遵循DPDK编程模式实现DPDK协议栈,采用轮询模式没有中断。每一个遍历的实体和及其消息能够很快处理。协议栈和NGINX 启动时和每个CPU内核进行绑定,充分利用DPDK 和CPU内核的优化,减少线程的调度的开销。本发明的协议栈和NGINX两进程间通信使用DPDK 提供的无锁队列,通信及时性高。本发明基于DPDK技术,绕过LINUX 系统,直接从网卡抓包到应用层,并将数据包转发给NGINX的DPDK 协议栈,减低SIP 网关的CPU 负载和降低的丢包率,适用于有大话务量,要求通信及时性,低丢包率网关类的场景。
附图说明
以下结合附图和具体实施方式对本发明做进一步详细说明;
图1为本发明一种基于DPDK技术的提高SIP网关性能的方法的架构示意图;
图2为DPDK 协议栈功能框图。
具体实施方式
下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
DPDK(数据平面开发工具包:Data Plane DevelopmentKit)是一个开源的数据平面开发工具集,是Intel为了解决Linux SMP环境下数据包处理性能问题而提供的一个用户空间下的高效数据包处理函数库和驱动集。DPDK通过环境抽象层的旁路OS运行环境、轮询模式的数据无中断收发、优化内存/缓冲区/队列管理、大页内存等多项技术,实现了SMP环境下的高性能数据包处理能力,用户可以在Linux用户空间中开发各类高速数据包处理应用,也适合于集成到各类商业化的数据平面加速解决方案中。
现有监控平台产品的作为前置的SIP 网关NGINX的负载较高,常有丢包的问题。如图1或2所示,本发明公开了一种基于DPDK技术的提高SIP网关性能的方法,其包括以下步骤:
步骤1,初始化DPDK平台并基于DPDK技术实现DPDK 协议栈;
步骤2,配置NGINX的DPDK代理模块以提供API的调用,加载DPDK代理模块并创建共享内存,共享内存用于存储消息队列;
步骤3,将NGINX 的socket 的API调用重定向链接到DPDK 代理模块;
步骤4,DPDK协议栈进程和NGINX进程间通过共享内存池采用DPDK 提供的高效无锁队列进行通信;
步骤5,NGINX进程直接从网卡抓取数据包,并通过DPDK代理模块将数据包转发给DPDK协议栈;
步骤6,DPDK 协议栈根据网络数据包调度策略进行网络数据包的数据接收和数据发送的调度。
进一步地,DPDK协议栈和NGINX两进程运行在同一台多核的基于Intel CPU 芯片的Linux物理机上。
进一步地,消息队列包括控制消息和数据消息,如图2所示,消息控制是处理socket API函数。DPDK协议栈和NGINX进程运行在同一台多核的基于Intel CPU 芯片的Linux物理机上,DPDK协议栈和NGINX 进程为两个独立应用程序,使用共享内存来记录两边的socket的资源管理;使用HASH 表管理socket资源(udp client和TCP client),HASH的键值为socket的bind操作时的所绑定的端口;当NGINX需要绑定端口时,则填写好请求包通过控制消息队列发送给DPDK协议栈并等待应答;DPDK协议栈收到请求后处理更新共享内存并发送应答;NGINX 侧收到应答。
进一步地,步骤6中基于网络数据包调度策略的数据接收的具体步骤如下:
步骤6.1,DPDK 协议栈收到报文时,检查报文类型判断是否为IPV4;是则,执行步骤6.4;否则,执行步骤6.2;
步骤6.2,判断报文类型是否为ARP广播报文,是则,执行步骤6.3;否则,丢弃数据包并等待下个数据包执行步骤6.1;
步骤6.3,DPDK 协议栈查询ARP 缓存表获取MAC地址并进行路由选择,进而通过PORT端口完成ARP广播报文发送后执行步骤6.1;
步骤6.4,针对IPV4 报文则检查目标地址是本地地址;当目标地址不是本地地址时,则进行IP 转发;当目标地址是本地地址时,则进行有消息检查并检查checksum识别TCP或UDP,进而调用对应的模块进行合法性检查;
步骤6.5,将合法的数据包放入对应接收队列。
进一步地,步骤6中数据发送的具体方法为:通过UDP 实体线程不断轮询每一个UDP client查看是否有数据包要发送;有数据包要发送,则计算checksum后进行发送。
进一步地,步骤6.3中DPDK 协议栈采用LPM库进行路由选择。
进一步地,步骤6.3中当ARP 缓存表没有MAC地址,则发送ARP Request 广播报文,等待Response,并根据收到Response更新ARP 缓存表,同时填写MAC 到报文中。
进一步地,步骤6.3中使用定时器进行ARP广播报文的发送,当发送次数达到最大连续发送次数后仍未收到反馈则ARP广播报文发送失败,丢弃发送的TCP/UDP数据包。
进一步地,最大连续发送次数为4次。
进一步地,步骤6.4中检查checksum识别为UDP 报文时,从UDP client 表中查找UDP client 结构以检查UDP 合法性。
当UDP client 表中没有对应UDP client时,则丢弃数据包并发送ICMP 目的地址不可到达报文;
当UDP client 表中存在对应UDP client时,则将数据包放入对应接收队列中。
下面就本发明的相关原理做展开说明:
如图2所示,DPDK 协议栈其实是就是DPDK 的L2 层的应用程序。和NGINX 运行在同一层次上,提供的相关的API 调用,而NGINX设计个DPDK proxy 模块(设计为静态库)提供的API的调用。两个应用程序通过DPDK 提供的无锁队列RING 来实现。有两种消息:控制消息:如socket ,bind 操作;数据消息:每一个UDP 和TCP 客户端有一对收发队列。
本发明的系统初始化需要初始化如下内容:A.初始化DPDK环境,解析命令参数,读取配置文件,并设置相关数据到全局变量中。B. 初始化mempool,port 和ring创建控制消息和数据消息的内存池。C. 初始化TCP,UDP 的控制块结构。D. 开启DPDK 协议栈主循环线程。
本发明的数据接收的原理为:(1)DPDK 协议栈收到报文时:检查报文类型,是否是IPV4,如果不是是否是ARP 广播报文,是则进行处理。如果两者都不是则丢弃。(2)是IPV4报文,则检查目标地址是本地地址,如果不是则,进行IP 转发;如果是则进行有消息检查,检查checksum,检查是否是TCP或UDP,进一步调用相关模块处理。(3)针对checksum,检查是UDP 报文的情形,进一步检查UDP 合法性。从UDP client 表中查找UDP client 结构,如果没有对应UDP client,丢弃,并发送ICMP 目的地址不可到达报文;如果存在,则放入对应接收队列中。
本发明的数据发送的原理为:(1)UDP 实体线程不断轮询每一个UDP client,查看是否有数据要发送,有则计算checksum,进行发送,参见3.3 的ARP 处理过程。(2)ARP 处理过程:A. TCP/UDP 报文发送时必须进行路由选择和MAC查询。DPDK 提供了LPM(最长掩码)库。B. 当发送数据包是,ARP 缓存表没有MAC地址,则发送ARP Request 广播报文,等待Response.收到Response更新ARP 缓存表,填写MAC 到报文中。然后从入Port 端口发送出去。C. 广播报文使用定时器,且最大发送4次,连续4次未收到则意味ARP 失败,丢弃发送的TCP/UDP数据包。
NGINX的DPDK代理模块目前提供了下列相关的socket API 函数:
A. socket 创建套接字、执行时,创建消息和数据发送内存池。并查找到消息队列;
B. bind 绑定端口,需要发消息给DPDK 协议栈;
C. recvfrom和sendto 是UDP 协议的发送接收函数;
D. shutdown 是TCP/UDP 关闭函数,需要发消息给DPDK 协议栈;
E. close 是TCP/UDP 关闭函数并且释放资源,需要发消息给DPDK 协议栈。
本发明基于DPDK技术绕过LINUX 系统,直接从网卡抓包到应用层,并将数据包转发给NGINX的DPDK 协议栈。DPDK 本身没有协议功能,因此基于DPDK技术实现轻量级的TCP/IP 协议栈,实现LINUX 原生TCP/IP 协议栈的基本功能,给上层应用(NGINX)提供socket的API调用,结合SIP 网关使用UDP情况进行相应的处理。DPDK协议栈采用DPDK的编程模式,采用遍历轮询方式,做到全程无锁,减少资源调度开销。使用DPDK 的大页的内存模式,代码中分配资源采用DPDK 提供API。DPDK协议栈进程和NGINX 进程间通信采用DPDK 提供的高效无锁队列。对NGINX 的socket 的API调用进行重定向,链接到DPDK proxy 模块。
Claims (10)
1.一种基于DPDK技术的提高SIP网关性能的方法,其特征在于:其包括以下步骤:
步骤1,初始化DPDK平台并基于DPDK技术实现DPDK 协议栈;
步骤2,配置NGINX的DPDK代理模块以提供API的调用,加载DPDK代理模块并创建共享内存,共享内存用于存储消息队列;
步骤3,将NGINX 的socket 的API调用重定向链接到DPDK 代理模块,
步骤4,DPDK协议栈进程和NGINX进程间通过共享内存池采用DPDK 提供的高效无锁队列进行通信;
步骤5,NGINX进程直接从网卡抓取数据包,并通过DPDK代理模块将数据包转发给DPDK协议栈
步骤6,DPDK协议栈根据网络数据包调度策略进行网络数据包的数据接收和数据发送的调度。
2.根据权利要求1所述的一种基于DPDK技术的提高SIP网关性能的方法,其特征在于:消息队列包括控制消息和数据消息,消息控制是处理socket API函数。
3.根据权利要求1所述的一种基于DPDK技术的提高SIP网关性能的方法,其特征在于:DPDK协议栈和NGINX进程运行在同一台多核的基于Intel CPU 芯片的Linux物理机上,DPDK协议栈和NGINX 进程为两个独立应用程序,使用共享内存来记录两边的socket的资源管理;使用HASH 表管理socket资源,HASH的键值为socket的bind操作时的所绑定的端口;当NGINX需要绑定端口时,则填写好请求包通过控制消息队列发送给DPDK协议栈并等待应答;DPDK协议栈收到请求后处理更新共享内存并发送应答;NGINX 侧收到应答。
4.根据权利要求1所述的一种基于DPDK技术的提高SIP网关性能的方法,其特征在于:步骤6中基于网络数据包调度策略的数据接收的具体步骤如下:
步骤6.1,DPDK 协议栈收到报文时,检查报文类型判断是否为IPV4;是则,执行步骤6.4;否则,执行步骤6.2;
步骤6.2,判断报文类型是否为ARP广播报文,是则,执行步骤6.3;否则,丢弃数据包并等待下个数据包执行步骤6.1;
步骤6.3,DPDK 协议栈查询ARP 缓存表获取MAC地址并进行路由选择,进而通过PORT端口完成ARP广播报文发送后执行步骤6.1;
步骤6.4,针对IPV4 报文则检查目标地址是本地地址;当目标地址不是本地地址时,则进行IP 转发;当目标地址是本地地址时,则进行有消息检查并检查checksum识别TCP或UDP,进而调用对应的模块进行合法性检查;
步骤6.5,将合法的数据包放入对应接收队列。
5.根据权利要求4所述的一种基于DPDK技术的提高SIP网关性能的方法,其特征在于:步骤6.3中DPDK 协议栈采用LPM库进行路由选择。
6.根据权利要求4所述的一种基于DPDK技术的提高SIP网关性能的方法,其特征在于:步骤6.3中当ARP 缓存表没有MAC地址,则发送ARP Request 广播报文,等待Response,并根据收到Response更新ARP 缓存表,同时填写MAC 到报文中。
7.根据权利要求4所述的一种基于DPDK技术的提高SIP网关性能的方法,其特征在于:步骤6.3中使用定时器进行ARP广播报文的发送,当发送次数达到最大连续发送次数后仍未收到反馈则ARP广播报文发送失败,丢弃发送的TCP/UDP数据包。
8.根据权利要求7所述的一种基于DPDK技术的提高SIP网关性能的方法,其特征在于:最大连续发送次数为4次。
9.根据权利要求3所述的一种基于DPDK技术的提高SIP网关性能的方法,其特征在于:步骤6.4中检查checksum识别为UDP 报文时,从UDP client 表中查找UDP client 结构以检查UDP 合法性;
当UDP client 表中没有对应UDP client时,则丢弃数据包并发送ICMP 目的地址不可到达报文;
当UDP client 表中存在对应UDP client时,则将数据包放入对应接收队列中。
10.根据权利要求1所述的一种基于DPDK技术的提高SIP网关性能的方法,其特征在于:步骤6中数据发送的具体方法为:通过UDP 实体线程不断轮询每一个UDP client查看是否有数据包要发送;有数据包要发送,则计算checksum后进行发送。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911045203.1A CN110768994B (zh) | 2019-10-30 | 2019-10-30 | 一种基于dpdk技术的提高sip网关性能的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911045203.1A CN110768994B (zh) | 2019-10-30 | 2019-10-30 | 一种基于dpdk技术的提高sip网关性能的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110768994A true CN110768994A (zh) | 2020-02-07 |
CN110768994B CN110768994B (zh) | 2022-01-11 |
Family
ID=69334795
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911045203.1A Active CN110768994B (zh) | 2019-10-30 | 2019-10-30 | 一种基于dpdk技术的提高sip网关性能的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110768994B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111371779A (zh) * | 2020-02-29 | 2020-07-03 | 苏州浪潮智能科技有限公司 | 一种基于dpdk虚拟化管理系统的防火墙及其实现方法 |
CN112737966A (zh) * | 2020-12-23 | 2021-04-30 | 北京浪潮数据技术有限公司 | 一种负载均衡方法及相关装置 |
CN112769638A (zh) * | 2020-12-21 | 2021-05-07 | 中电福富信息科技有限公司 | 一种基于dpdk技术的提高jain sip服务器性能的方法 |
CN113157467A (zh) * | 2021-05-07 | 2021-07-23 | 瑞斯康达科技发展股份有限公司 | 一种多进程数据输出方法 |
CN113535433A (zh) * | 2021-07-21 | 2021-10-22 | 广州市品高软件股份有限公司 | 基于Linux系统的控制转发分离方法、装置、设备和存储介质 |
CN115834665A (zh) * | 2023-02-08 | 2023-03-21 | 天翼云科技有限公司 | 一种网络通信方法和装置 |
CN116527410A (zh) * | 2023-07-05 | 2023-08-01 | 北京亿赛通科技发展有限责任公司 | 一种反向代理模式下的防火墙多进程处理方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107135278A (zh) * | 2017-07-06 | 2017-09-05 | 深圳市视维科技股份有限公司 | 一种高效的负载均衡器及负载均衡系统 |
CN108345502A (zh) * | 2018-01-15 | 2018-07-31 | 中兴飞流信息科技有限公司 | 基于dpdk的资源调度方法、装置、终端设备及可读存储介质 |
CN108366018A (zh) * | 2017-01-26 | 2018-08-03 | 普天信息技术有限公司 | 一种基于dpdk的网络数据包处理方法 |
CN110224929A (zh) * | 2019-04-17 | 2019-09-10 | 西安交大捷普网络科技有限公司 | 基于dpdk的链路聚合接口的数据包转发方法 |
-
2019
- 2019-10-30 CN CN201911045203.1A patent/CN110768994B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108366018A (zh) * | 2017-01-26 | 2018-08-03 | 普天信息技术有限公司 | 一种基于dpdk的网络数据包处理方法 |
CN107135278A (zh) * | 2017-07-06 | 2017-09-05 | 深圳市视维科技股份有限公司 | 一种高效的负载均衡器及负载均衡系统 |
CN108345502A (zh) * | 2018-01-15 | 2018-07-31 | 中兴飞流信息科技有限公司 | 基于dpdk的资源调度方法、装置、终端设备及可读存储介质 |
CN110224929A (zh) * | 2019-04-17 | 2019-09-10 | 西安交大捷普网络科技有限公司 | 基于dpdk的链路聚合接口的数据包转发方法 |
Non-Patent Citations (1)
Title |
---|
F-STACK 腾讯高级工程师: "全用户态网络开发套件 F-Stack 架构分析", 《云+社区-腾讯云》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111371779A (zh) * | 2020-02-29 | 2020-07-03 | 苏州浪潮智能科技有限公司 | 一种基于dpdk虚拟化管理系统的防火墙及其实现方法 |
CN111371779B (zh) * | 2020-02-29 | 2022-05-10 | 苏州浪潮智能科技有限公司 | 一种基于dpdk虚拟化管理系统的防火墙及其实现方法 |
CN112769638A (zh) * | 2020-12-21 | 2021-05-07 | 中电福富信息科技有限公司 | 一种基于dpdk技术的提高jain sip服务器性能的方法 |
CN112737966A (zh) * | 2020-12-23 | 2021-04-30 | 北京浪潮数据技术有限公司 | 一种负载均衡方法及相关装置 |
CN113157467A (zh) * | 2021-05-07 | 2021-07-23 | 瑞斯康达科技发展股份有限公司 | 一种多进程数据输出方法 |
CN113157467B (zh) * | 2021-05-07 | 2023-07-04 | 瑞斯康达科技发展股份有限公司 | 一种多进程数据输出方法 |
CN113535433A (zh) * | 2021-07-21 | 2021-10-22 | 广州市品高软件股份有限公司 | 基于Linux系统的控制转发分离方法、装置、设备和存储介质 |
CN113535433B (zh) * | 2021-07-21 | 2023-08-11 | 广州市品高软件股份有限公司 | 基于Linux系统的控制转发分离方法、装置、设备和存储介质 |
CN115834665A (zh) * | 2023-02-08 | 2023-03-21 | 天翼云科技有限公司 | 一种网络通信方法和装置 |
CN115834665B (zh) * | 2023-02-08 | 2023-06-23 | 天翼云科技有限公司 | 一种网络通信方法和装置 |
CN116527410A (zh) * | 2023-07-05 | 2023-08-01 | 北京亿赛通科技发展有限责任公司 | 一种反向代理模式下的防火墙多进程处理方法和装置 |
CN116527410B (zh) * | 2023-07-05 | 2023-09-26 | 北京亿赛通科技发展有限责任公司 | 一种反向代理模式下的防火墙多进程处理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110768994B (zh) | 2022-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110768994B (zh) | 一种基于dpdk技术的提高sip网关性能的方法 | |
US10917351B2 (en) | Reliable load-balancer using segment routing and real-time application monitoring | |
CN101217493B (zh) | 一种tcp数据包的传输方法 | |
CN107079060B (zh) | 用于运营商级nat优化的系统和方法 | |
US7996569B2 (en) | Method and system for zero copy in a virtualized network environment | |
US7606929B2 (en) | Network load balancing with connection manipulation | |
WO2020151030A1 (zh) | 一种处理数据报文的方法和装置 | |
US11489945B2 (en) | TCP packet processing method, toe component, and network device | |
KR20140143155A (ko) | 네트워킹 장치 가상화를 위한 패킷 처리 오프로딩 기법 | |
AU2004202389A1 (en) | Network load balancing with host status information | |
CN101217464A (zh) | 一种udp数据包的传输方法 | |
CN113490927A (zh) | 具有硬件集成和乱序放置的rdma输送 | |
CN111107081A (zh) | 基于dpdk的多进程dns服务方法和系统 | |
US20240069977A1 (en) | Data transmission method and data transmission server | |
CN110932890B (zh) | 一种数据传输方法、服务器及计算机可读存储介质 | |
CN111371920A (zh) | Dns前端解析方法及系统 | |
CN115733782A (zh) | 用于数据包处理操作的双用户空间-内核空间数据路径 | |
US9015438B2 (en) | System and method for achieving enhanced performance with multiple networking central processing unit (CPU) cores | |
CN117240935A (zh) | 基于dpu的数据平面转发方法、装置、设备及介质 | |
US20080056263A1 (en) | Efficient transport layer processing of incoming packets | |
CN116195239A (zh) | 通过分布式弹性中间盒提供模块化网络服务 | |
Hassani et al. | Optimization of communication in mpi-based clusters | |
Yang et al. | HEELS: A Host-Enabled eBPF-Based Load Balancing Scheme | |
CN112737966A (zh) | 一种负载均衡方法及相关装置 | |
CN111901689A (zh) | 流媒体数据的传输方法、装置、终端设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230310 Address after: 350000 12, 89 Avenue, Wufeng street, Gulou District, Fuzhou, Fujian. Patentee after: CHINATELECOM FUFU INFORMATION TECHNOLOGY Co.,Ltd. Patentee after: Tianyiyun Technology Co.,Ltd. Address before: 350000 12, 89 Avenue, Wufeng street, Gulou District, Fuzhou, Fujian. Patentee before: CHINATELECOM FUFU INFORMATION TECHNOLOGY Co.,Ltd. |