CN109617833B - 多线程用户态网络协议栈系统的nat数据审计方法和系统 - Google Patents

多线程用户态网络协议栈系统的nat数据审计方法和系统 Download PDF

Info

Publication number
CN109617833B
CN109617833B CN201811596976.4A CN201811596976A CN109617833B CN 109617833 B CN109617833 B CN 109617833B CN 201811596976 A CN201811596976 A CN 201811596976A CN 109617833 B CN109617833 B CN 109617833B
Authority
CN
China
Prior art keywords
data
thread
queue
auditing
protocol stack
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.)
Active
Application number
CN201811596976.4A
Other languages
English (en)
Other versions
CN109617833A (zh
Inventor
吕恩泳
程海龙
刘永强
沈智杰
景晓军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Surfilter Network Technology Co ltd
Shenzhen Surfilter Technology Development Co ltd
Original Assignee
Surfilter Network Technology Co ltd
Shenzhen Surfilter Technology Development Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Surfilter Network Technology Co ltd, Shenzhen Surfilter Technology Development Co ltd filed Critical Surfilter Network Technology Co ltd
Priority to CN201811596976.4A priority Critical patent/CN109617833B/zh
Publication of CN109617833A publication Critical patent/CN109617833A/zh
Application granted granted Critical
Publication of CN109617833B publication Critical patent/CN109617833B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/6245Modifications to standard FIFO or LIFO
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2521Translation architectures other than single NAT servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种用于多线程用户态网络协议栈系统的NAT数据审计方法,包括:分别在M个线程中添加M个队列,其中,M为多线程用户态网络协议栈系统流处理的线程个数;将数据流的上行数据包加入该数据流的上行数据所在线程中标号为P的队列中,将下行数据包加入该数据流的下行数据所在线程中标号为P的队列中;将各个线程的N号队列的数据进行出队列操作后送入线程N;将各个线程的数据送入审计模块进行审计。由此,解决了多线程网络协议栈对于NAT数据流分布在不同线程与审计需要数据流分布在同一个线程中的冲突,同时利用队列实现了无锁的方式将处于不同线程中的数据流上下行数据包归到同一个线程中,且零拷贝的方式入队列不影响系统性能。

Description

多线程用户态网络协议栈系统的NAT数据审计方法和系统
技术领域
本发明涉及网络通信技术领域,特别地,涉及一种用于多线程用户态网络协议栈系统的NAT数据审计方法和系统。
背景技术
随着网络流量不断的加大,传统的内核网络协议栈被替换成多线程的用户态网络协议栈。在多线程用户态的网络协议栈中,用户态网卡驱动根据网络数据包的源IP和目的IP(或者源IP、源端口、目的IP、目的端口及协议)进行同源同宿,将数据包分到不同的线程中,这样就可以利用多线程多CPU进行数据转发,提高网络吞吐量。
在NAT(Network Address Translation,网络地址转换)环境下,在多线程用户态协议栈系统(网关服务器)的不同网口上接收用户同一条数据流的上下行数据包,由于网口接收的源IP、目的IP不一样,故网卡的同源同宿(RSS)技术的hash值不同,将数据包分发到不同的线程中。即,将NAT数据的一条数据流的上下行数据包分布在系统的不同线程中。
审计模块用于对网络数据内容进行还原,因此,需要一条数据流的上下行数据包在同一个线程中,这样才能保证不跨越线程地高效地审计数据。由于需要NAT(网络地址转换)的数据流的上下行数据包根据同源同宿无法被分配的同一个线程中,这样,审计模块就无法高效甚至不能审计到应用数据。
发明内容
本发明的目的在于提供一种用于多线程用户态网络协议栈系统的NAT数据审计方法和系统。
本发明解决其技术问题采用的技术方案是:提供一种用于多线程用户态网络协议栈系统的NAT数据审计方法,包括以下步骤:
S1、分别在M个线程中添加M个队列,其中,M为所述多线程用户态网络协议栈系统流处理的线程个数;
S2、将数据流的上行数据包加入该数据流的上行数据所在线程中标号为P的队列中,将下行数据包加入该数据流的下行数据所在线程中标号为P的队列中,其中,P为大于等于0且小于等于M-1的自然数;
S3、将各个线程的N号队列的数据进行出队列操作后送入线程N;
S4、将各个线程的数据送入审计模块进行审计。
在本发明提供的用于多线程用户态网络协议栈系统的NAT数据审计方法中,在步骤S1中,在对上行数据进行源地址转换前,在上行数据所在线程中添加所述M个队列;在对下行数据进行目的地址转换后,在下行数据所在线程中添加所述M个队列。
在本发明提供的多线程用户态网络协议栈系统的NAT数据审计方法中,所述步骤S2包括:
利用同源同宿算法计算所述数据流的关键值;
将所述关键值除以M后取余的值分别作为所述数据流在上行数据所在线程和下行数据所在线程的哈希值;
将所述上行数据包和所述下行数据包的内存地址分别写入该数据流的上行数据所在线程和下行数据所在线程中标号为所述哈希值的队列中。
相应地,本发明还提供一种用于多线程用户态网络协议栈系统的NAT数据审计系统,包括:
队列添加模块,用于分别在M个线程中添加M个队列,其中,M为所述多线程用户态网络协议栈系统流处理的线程个数;
第一数据处理模块,用于将数据流的上行数据包加入该数据流的上行数据所在线程中标号为P的队列中,将下行数据包加入该数据流的下行数据所在线程中标号为P的队列中,其中,P为大于等于0且小于等于M-1的自然数;
第二数据处理模块,用于将各个线程的N号队列的数据进行出队列操作后送入线程N;
审计模块,用于对各个线程的数据进行审计。
在本发明提供的用于多线程用户态网络协议栈系统的NAT数据审计系统中,所述队列添加模块包括第一添加单元和第二添加单元,所述第一添加单元用于在对上行数据进行源地址转换前,在上行数据所在线程中添加所述M个队列;所述第二添加单元用于在对下行数据进行目的地址转换后,在下行数据所在线程中添加所述M个队列。
在本发明提供的用于多线程用户态网络协议栈系统的NAT数据审计系统中,所述第一数据处理模块包括:
关键值计算单元,用于利用同源同宿算法计算所述数据流的关键值;
哈希值计算单元,用于将所述关键值除以M后取余的值分别作为所述数据流在上行数据所在线程的和下行数据所在线程的哈希值;
数据写入单元,用于将所述上行数据包和所述下行数据包的内存地址分别写入该数据流的上行数据所在线程和下行数据所在线程中标号为所述哈希值的队列中。
本发明的用于多线程用户态网络协议栈系统的NAT数据审计方法和系统具有以下有益效果:本发明提供的用于多线程用户态网络协议栈系统的NAT数据审计方法,通过在每个线程中增加队列,将数据流的上行数据包和下行数据包分别加入上行数据所在线程和下行数据所在线程中标号相同的队列中;然后将各个线程的N号队列的数据进行出队列操作后送入线程N后送入模块进行审计。由此,将数据的上下行就过度到同一个线程中,解决了多线程网络协议栈对于NAT数据流分布在不同线程与审计需要数据流分布在同一个线程中的冲突,同时利用队列,实现了无锁的方式将处于不同线程中的数据流上下行数据包归到同一个线程中,且零拷贝的方式入队列,不影响系统性能。
附图说明
图1为本发明一实施例提供的用于多线程用户态网络协议栈系统的NAT数据审计方法的流程示意图;
图2为图1所示的步骤S2的流程示意图;
图3所示为现有技术中进行NAT数据审计时数据的流向图。
图4所示为利用本发明提供的用于多线程用户态网络协议栈系统的NAT数据审计方法的数据流向图。
图5为本发明一实施例提供的用于多线程用户态网络协议栈系统的NAT数据审计系统的原理图。
具体实施方式
为了使本技术领域的技术人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
以下结合附图和实施例对本发明做进一步的解释说明。
图1为本发明一实施例提供的用于多线程用户态网络协议栈系统的NAT数据审计方法的流程图;如图1所示,本发明提供的用于多线程用户态网络协议栈系统的NAT数据审计方法包括以下步骤:
S1、分别在M个线程中添加M个队列,其中,M为所述多线程用户态网络协议栈系统流处理的线程个数;
S2、将数据流的上行数据包加入该数据流的上行数据所在线程中标号为P的队列中,将下行数据包加入该数据流的下行数据所在线程中标号为P的队列中,其中,P为大于等于0且小于等于M-1的自然数;
S3、将各个线程的N号队列的数据进行出队列操作后送入线程N;
S4、将各个线程的数据送入审计模块进行审计。
在步骤S1中,在每一个线程(包括上行数据所在线程和下行数据所在线程)中添加与该系统流处理线程数一致的队列个数。即系统流处理线程数为M,则为每一个线程添加M个队列,总共添加M乘以M个队列。进一步地,由于线程分为上行数据所在线程和下行数据所在线程,所以,在步骤S1中,在对上行数据进行源地址转换前,在上行数据所在线程中添加所述M个队列;在对下行数据进行目的地址转换后,在下行数据所在线程中添加所述M个队列。
在步骤S2中,由于同源同宿算法可以保证数据流的上下行数据包计算的hash值是一样的,因此,将数据流的上下行数据包将都进入各自线程中标号相同的队列。具体地,如图2所示,步骤S2包括以下子步骤:
步骤S21、利用同源同宿算法计算所述数据流的关键值;
步骤S22、将所述关键值除以M后取余的值分别作为所述数据流在上行数据所在线程和下行数据所在线程的哈希值;
步骤S23、将所述上行数据包和所述下行数据包的内存地址分别写入该数据流的上行数据所在线程和下行数据所在线程中标号为所述哈希值的队列中。
在步骤S3中,对各个线程的N号队列的数据进行出队列操作后送入线程N。例如,有两个线程(0号线程和1号线程),则每个线程有2个队列,0号线程将2个线程的0号队列数据出队列操作,1号线程将2个线程的1号队列出队列操作,这样应用数据的上下行就过度到同一个线程中了,然后进入审计模块。这样就保证了审计模块中的数据上下行在同一个线程中了。
本发明提供的用于多线程用户态网络协议栈系统的NAT数据审计方法,通过在每个线程中增加队列,将数据流的上行数据包和下行数据包分别加入上行数据所在线程和下行数据所在线程中标号相同的队列中;然后将各个线程的N号队列的数据进行出队列操作后送入线程N后送入模块进行审计。由此,将数据的上下行就过度到同一个线程中,解决了多线程网络协议栈对于NAT数据流分布在不同线程与审计需要数据流分布在同一个线程中的冲突,同时利用队列,实现了无锁的方式将处于不同线程中的数据流上下行数据包归到同一个线程中,且零拷贝的方式入队列,不影响系统性能。
下面结合以上描述以系统包含2个线程为例详细阐述本申请的方法。
图3所示为现有技术中进行NAT数据审计时数据的流向图。如图3所示,多线程用户态网络协议栈系统的网关服务器的WAN口的IP是102.224.10.X,LAN口IP是192.168.1.1,所有192.168.1.0/24网段的数据需要通过该服务器为其代理上网。
Figure BDA0001919601580000071
表示PC用户192.168.1.2请求访问114.114.114.114的网络数据,服务器LAN口收到该数据包,网卡根据192.168.1.2→114.114.114.114将该数据包同源同宿到线程1中,
Figure BDA0001919601580000072
表示该数据需要做SNAT(源地址转换)修改为102.224.10.X→114.114.114.114,然后经WAN口发出,见标识
Figure BDA0001919601580000074
,这样就表示为102.224.10.X向114.114.114.114发出请求。该包为上行数据,分布在线程1中。
Figure BDA0001919601580000073
表示服务端114.114.114.114响应客户端的数据,该数据是114.114.114.114→102.224.10.X WAN口接收到该数据后,根据该ip地址进行同源同宿,分配到线程0上,然后在进行DNAT(目的地址转换),该数据变为114.114.114.114→192.168.1.2,最近经LAN口发给用户192.168.1.2,见
Figure BDA0001919601580000075
。该包为下行数据,分布在线程0中。综上分析,需要NAT的数据流上下行数据接收的网口分别为LAN口和WAN口,且接收时的IP地址不一样,导致网卡在同源同宿时,将上下行数据分布到不同的线程中。
图4所示为利用本发明提供的用于多线程用户态网络协议栈系统的NAT数据审计方法的数据流向图。如图4所示,由于192.168.1.2与114.114.114.114之间通信的数据的上下行分布在不同的线程上,如上图,114.114.114.114→192.168.1.2在线程0上,192.168.1.2→114.114.114.114在线程1上。线程0上,利用软件同源同宿算法,将该数据入队列1中(线程0的1号队列),线程1上,也同样利用同源同宿算法将该数据入队列3中(线程1的1号队列)。然后线程1中在依次从队列1和队列3中,将数据包出队列。这样192.168.1.2与114.114.114.114之间的通信数据都进程线程1中,然后送入审计模块。由于软件同源同宿算法保证数据流的上下行数据包计算的hash值是一样的,同一应用数据流的上下行数据包将都进入同样的ID的队列号(该ID指的是相对于该线程所拥有的入队列号),然后0号线程将2个线程的0号队列数据出队列操作,1号线程将2个线程的1号队列出队列操作,这样应用数据的上下行就过度到同一个线程中了,然后进入审计模块。这样就保证了审计模块中的数据上下行在同一个线程中了。
图5为本发明一实施例提供的用于多线程用户态网络协议栈系统的NAT数据审计系统的原理图。如图5所示,本发明提供的用于多线程用户态网络协议栈系统的NAT数据审计系统包括:
队列添加模块510,用于分别在M个线程中添加M个队列,其中,M为所述多线程用户态网络协议栈系统流处理的线程个数;
第一数据处理模块520,用于将数据流的上行数据包加入该数据流的上行数据所在线程中标号为P的队列中,将下行数据包加入该数据流的下行数据所在线程中标号为P的队列中,其中,P为大于等于0且小于等于M-1的自然数;
第二数据处理模块530,用于将各个线程的N号队列的数据进行出队列操作后送入线程N;
审计模块540,用于对各个线程的数据进行审计。
在本发明提供的用于多线程用户态网络协议栈系统的NAT数据审计系统中,所述队列添加模块包括第一添加单元和第二添加单元,所述第一添加单元用于在对上行数据进行源地址转换前,在上行数据所在线程中添加所述M个队列;所述第二添加单元用于在对下行数据进行目的地址转换后,在下行数据所在线程中添加所述M个队列。
在本发明提供的用于多线程用户态网络协议栈系统的NAT数据审计系统中,所述第一数据处理模块包括:
关键值计算单元,用于利用同源同宿算法计算所述数据流的关键值;
哈希值计算单元,用于将所述关键值除以M后取余的值分别作为所述数据流在上行数据所在线程和下行数据所在线程的哈希值;
数据写入单元,用于将所述上行数据包和所述下行数据包的内存地址分别写入该数据流的上行数据所在线程和下行数据所在线程中标号为所述哈希值的队列中。
关于上述实施例中的系统,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
需要说明的是:上述实施例提供系统在实现方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的系统和方法实施例属于同一构思,其具体实现过程详见方法实施例的描述,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中。上面所提到的控制或者实现的切换功能都是通过控制器实现,控制器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。上面所提到的存储器可以是终端内置的存储设备,例如硬盘或内存。本发明系统还包括了存储器,存储器也可以是系统的外部存储设备,插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。存储器还可以既包括系统的内部存储单元,也包括外部存储设备,用于存储计算机程序以及所需的其他程序和信息。存储器还可以用于暂时地存储已经输出或者将要输出的信息。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种用于多线程用户态网络协议栈系统的NAT数据审计方法,其特征在于,包括以下步骤:
S1、分别在M个线程中添加M个队列,其中,M为所述多线程用户态网络协议栈系统流处理的线程个数;
S2、将数据流的上行数据包加入该数据流的上行数据所在线程中标号为P的队列中,将下行数据包加入该数据流的下行数据所在线程中标号为P的队列中,其中,P为大于等于0且小于等于M-1的自然数;
S3、将各个线程的N号队列的数据进行出队列操作后送入线程N;
S4、将各个线程的数据送入审计模块进行审计。
2.根据权利要求1所述的用于多线程用户态网络协议栈系统的NAT数据审计方法,其特征在于,在步骤S1中,在对上行数据进行源地址转换前,在该数据流的上行数据所在线程中添加所述M个队列;在对下行数据进行目的地址转换后,在该数据流的下行数据所在线程中添加所述M个队列。
3.根据权利要求1所述的用于多线程用户态网络协议栈系统的NAT数据审计方法,其特征在于,所述步骤S2包括:
利用同源同宿算法计算所述数据流的关键值;
将所述关键值除以M后取余的值分别作为所述数据流在上行数据所在线程和下行数据所在线程的哈希值;
将所述上行数据包和所述下行数据包的内存地址分别写入该数据流的上行数据所在线程和下行数据所在线程中标号为所述哈希值的队列中。
4.一种用于多线程用户态网络协议栈系统的NAT数据审计系统,其特征在于,包括:
队列添加模块,用于分别在M个线程中添加M个队列,其中,M为所述多线程用户态网络协议栈系统流处理的线程个数;
第一数据处理模块,用于将数据流的上行数据包加入该数据流的上行数据所在线程中标号为P的队列中,将下行数据包加入该数据流的下行数据所在线程中标号为P的队列中,其中,P为大于等于0且小于等于M-1的自然数;
第二数据处理模块,用于将各个线程的N号队列的数据进行出队列操作后送入线程N;
审计模块,用于对各个线程的数据进行审计。
5.根据权利要求4所述的用于多线程用户态网络协议栈系统的NAT数据审计系统,其特征在于,所述队列添加模块包括第一添加单元和第二添加单元,所述第一添加单元用于在对上行数据进行源地址转换前,在该数据流的上行数据所在线程中添加所述M个队列;所述第二添加单元用于在对下行数据进行目的地址转换后,在该数据流的下行数据所在线程中添加所述M个队列。
6.根据权利要求4所述的用于多线程用户态网络协议栈系统的NAT数据审计系统,其特征在于,所述第一数据处理模块包括:
关键值计算单元,用于利用同源同宿算法计算所述数据流的关键值;
哈希值计算单元,用于将所述关键值除以M后取余的值分别作为所述数据流在上行数据所在线程和下行数据所在线程的哈希值;
数据写入单元,用于将所述上行数据包和所述下行数据包的内存地址分别写入该数据流的上行数据所在线程中和下行数据所在线程中标号为所述哈希值的队列中。
CN201811596976.4A 2018-12-25 2018-12-25 多线程用户态网络协议栈系统的nat数据审计方法和系统 Active CN109617833B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811596976.4A CN109617833B (zh) 2018-12-25 2018-12-25 多线程用户态网络协议栈系统的nat数据审计方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811596976.4A CN109617833B (zh) 2018-12-25 2018-12-25 多线程用户态网络协议栈系统的nat数据审计方法和系统

Publications (2)

Publication Number Publication Date
CN109617833A CN109617833A (zh) 2019-04-12
CN109617833B true CN109617833B (zh) 2021-12-31

Family

ID=66012336

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811596976.4A Active CN109617833B (zh) 2018-12-25 2018-12-25 多线程用户态网络协议栈系统的nat数据审计方法和系统

Country Status (1)

Country Link
CN (1) CN109617833B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110231983B (zh) * 2019-05-13 2022-01-28 北京百度网讯科技有限公司 数据并发处理方法、装置及系统、计算机设备及可读介质
CN115766044A (zh) * 2021-08-31 2023-03-07 华为技术有限公司 一种基于用户态协议栈的通信方法及相应装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101068242A (zh) * 2007-05-31 2007-11-07 武汉虹旭信息技术有限责任公司 一种安全审计系统中获取内外网地址映射关系的方法
CN102752198A (zh) * 2012-06-21 2012-10-24 北京星网锐捷网络技术有限公司 多核报文转发方法、多核处理器及网络设备
CN104639578A (zh) * 2013-11-08 2015-05-20 华为技术有限公司 多协议栈负载均衡方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7333492B2 (en) * 2004-08-31 2008-02-19 Innomedia Pte Ltd Firewall proxy system and method
US7634584B2 (en) * 2005-04-27 2009-12-15 Solarflare Communications, Inc. Packet validation in virtual network interface architecture

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101068242A (zh) * 2007-05-31 2007-11-07 武汉虹旭信息技术有限责任公司 一种安全审计系统中获取内外网地址映射关系的方法
CN102752198A (zh) * 2012-06-21 2012-10-24 北京星网锐捷网络技术有限公司 多核报文转发方法、多核处理器及网络设备
CN104639578A (zh) * 2013-11-08 2015-05-20 华为技术有限公司 多协议栈负载均衡方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
一种联动防火墙的网络入侵检测系统;王丽辉等;《计算机应用研究》;20060310(第03期);全文 *
基于网络处理器的NAT-PT转换网关的性能研究;陈沫等;《系统仿真学报》;20070620(第06期);全文 *

Also Published As

Publication number Publication date
CN109617833A (zh) 2019-04-12

Similar Documents

Publication Publication Date Title
US11546189B2 (en) Access node for data centers
US11038993B2 (en) Flexible processing of network packets
US10241830B2 (en) Data processing method and a computer using distribution service module
US11489791B2 (en) Virtual switch scaling for networking applications
US8681819B2 (en) Programmable multifield parser packet
CN115516832A (zh) 网络和边缘加速瓦片(next)体系结构
US11494212B2 (en) Technologies for adaptive platform resource assignment
US11025564B2 (en) RDMA transport with hardware integration and out of order placement
US11068412B2 (en) RDMA transport with hardware integration
CN115917520A (zh) 用于通过分布式算法为可编程数据平面提供lpm实现的系统
CN109617833B (zh) 多线程用户态网络协议栈系统的nat数据审计方法和系统
Rizzo Revisiting Network I/O APIs: The netmap Framework: It is possible to achieve huge performance improvements in the way packet processing is done on modern operating systems.
US9268621B2 (en) Reducing latency in multicast traffic reception
US10616116B1 (en) Network traffic load balancing using rotating hash
US20220166718A1 (en) Systems and methods to prevent packet reordering when establishing a flow entry
US20220217085A1 (en) Server fabric adapter for i/o scaling of heterogeneous and accelerated compute systems
Hong et al. Kafe: Can os kernels forward packets fast enough for software routers?
Pasetto et al. Ultra low latency market data feed on IBM PowerENTM
US7590056B2 (en) Processor configured for efficient processing of single-cell protocol data units
US7720925B1 (en) Multiple message receive routine for network packets
JP5359357B2 (ja) パケット処理装置、該処理装置に用いられるパケット処理順序制御方法及びパケット処理順序制御プログラム
CN114968471A (zh) 一种流的卸载方法及设备
CN116208573A (zh) 数据处理方法、装置、电子设备和存储介质
CN117560433A (zh) Dpu中报文转发保序方法、装置、电子设备和存储介质
CN118057792A (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