CN107682267B - Linux设备的网络数据转发方法及系统 - Google Patents

Linux设备的网络数据转发方法及系统 Download PDF

Info

Publication number
CN107682267B
CN107682267B CN201710860767.5A CN201710860767A CN107682267B CN 107682267 B CN107682267 B CN 107682267B CN 201710860767 A CN201710860767 A CN 201710860767A CN 107682267 B CN107682267 B CN 107682267B
Authority
CN
China
Prior art keywords
data packet
forwarding
hash table
hash
linux
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
CN201710860767.5A
Other languages
English (en)
Other versions
CN107682267A (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.)
Fiberhome Telecommunication Technologies Co Ltd
Original Assignee
Fiberhome Telecommunication Technologies 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 Fiberhome Telecommunication Technologies Co Ltd filed Critical Fiberhome Telecommunication Technologies Co Ltd
Priority to CN201710860767.5A priority Critical patent/CN107682267B/zh
Publication of CN107682267A publication Critical patent/CN107682267A/zh
Application granted granted Critical
Publication of CN107682267B publication Critical patent/CN107682267B/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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • H04L45/7453Address table lookup; Address filtering using hashing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/14Routing performance; Theoretical aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种Linux设备的网络数据转发方法及系统,涉及Linux网络数据转发技术领域。该方法的步骤为:判断哈希链表中是否存在与接收数据包对应的哈希表项,若是,将接收数据包进行转发否则Linux设备在哈希链表中,根据接收数据包形成哈希表项;接收数据包经CPU处理形成发送数据包;若哈希链表中存在与数据包信息对应的哈希表项,将发送数据包的头部信息,与哈希表项中的数据包的头部信息进行比对,得到差异头部信息,将差异头部信息添加至哈希表项后,将发送数据包通过Linux的标准网络协议栈进行转发。本发明能够在不依赖硬件网络加速器转发数据包的基础上,降低数据包丢包的几率,缩短数据包的转发时间,提高数据包的转发效率。

Description

Linux设备的网络数据转发方法及系统
技术领域
本发明涉及Linux网络数据转发技术领域,具体涉及一种Linux设备的网络数据转发方法及系统。
背景技术
Linux系统是一种多任务,多线程及多CPU的开源操作系统,自1990年问世以来,衍生出多种版本,并广泛被用于各类硬件设备(即Linux设备)上,例如家庭网关、平板电脑、手机以及各种服务器等。
以家庭网关为例,运行Linux系统的家庭网关作为一款能够提供用户上网、视频及语音服务的终端产品,应用越来越广泛,客户的需求也越来越丰富,其中用户对于上网带宽提升需求尤为强烈,需求从以前的几兆上升到目前的几十兆甚至上百兆。第一代家庭网关采用linux系统自带的数据转发逻辑,依靠运行于CPU的软件对网络数据进行转发,第二代的家庭网关集成了硬件网络加速器,依靠硬件网络加速器将一些特定网络数据报文绕开linux系统进行快速转发。
第一代家庭网关(即依靠运行于CPU的软件对网络数据进行转发)的网络数据转发方法为:每个网络数据包都有可能会被处理,一旦被处理,数据包会完整的通过Linux的标准网络协议栈进行转发,Linux的标准网络协议栈由CPU控制。
第一代家庭网关的缺陷为:当数据包的数量过多、或者数据包的转发流量(所需的CPU载荷)较大时,会导致CPU的载荷过高,CPU载荷过高会使得数据包有可能被丢弃,进而降低网络速率,影响家庭网关的网络带宽;与此同时,通过Linux的标准网络协议栈进行转发数据包时,需要进行多层判断处理,进而延长了数据包转发时间,降低了数据包转发效率。
第二代家庭网关(即依靠硬件网络加速器转发网络数据报文)的网络数据转发方法为:将特定的网络数据报文通过硬件网络加速器转发,进而绕开CPU了,这样就不会影响CPU的载荷。
第二代家庭网关的缺陷为:
(1)硬件网络加速器只能转发特定类型的网络数据报文,而且硬件网络加速器需要依赖特定的CPU硬件;因此硬件网络加速器转发的报文类型和使用需求具有一定的限制,适用范围比较单一,通用性较差。
(2)CPU无法控制硬件网络加速器转发的网络数据报文,进而无法得知网络数据报文信息(例如网络数据报文的限速、网页内容限制等),网络数据报文的安全存在一定的隐患。
发明内容
针对现有技术中存在的缺陷,本发明解决的技术问题为:如何在不依赖硬件网络加速器转发数据包的基础上,降低数据包丢包的几率,缩短数据包的转发时间,提高数据包的转发效率。
为达到以上目的,本发明提供的Linux设备的网络数据转发方法,包括以下步骤:
步骤A:Linux设备获取接收数据包的数据包信息和数据包头部信息后,判断哈希链表中是否存在与接收数据包对应的哈希表项,若是,转到步骤E,否则转到步骤B;
步骤A中存在与接收数据包对应的哈希表项的标准为:哈希表项中存在与接收数据包相同的数据包信息、且存在接收数据包头部信息中的部分信息;
步骤B:Linux设备在哈希链表中,根据接收数据包的内容与数据包信息,形成哈希表项,转到步骤C;
步骤C:接收数据包经CPU处理形成发送数据包;Linux设备获取发送数据包的数据包信息后,判断哈希链表中是否存在与数据包信息对应的哈希表项,若不是,直接转到步骤D;若是,将发送数据包的头部信息,与哈希表项中的数据包的头部信息进行比对,得到差异头部信息,将差异头部信息添加至哈希表项,转到步骤D;
步骤D:Linux设备将发送数据包通过Linux的标准网络协议栈进行转发,结束;
步骤E:Linux设备将接收数据包进行转发,结束;
步骤A之前还包括以下步骤:Linux设备收到接收数据包时,判断转发接收数据包所需的转发流量,是否大于预先设置的阈值,若是,直接将数据包进行转发,结束;否则转到步骤A。
在上述技术方案的基础上,步骤B中所述形成哈希表项之后,还包括以下步骤:为该哈希表项添加数据包转发计数器并置0,步骤E中所述Linux设备将接收数据包进行转发之后,还包括以下步骤:Linux设备将接收数据包对应的哈希表项的数据包转发计数器+1;
在此基础上,所述Linux设备的网络数据转发方法还包括以下步骤:Linux设备周期性对数据包转发计时器进行监测,当监测到存在数据包转发计时器的值在指定阈值以下的哈希表项时,删除该哈希表项。
本发明提供的Linux设备的网络数据转发系统,包括设置于Linux设备上的接收数据包比对模块、哈希表项创建模块、发送数据包比对模块、发送数据包转发模块和接收数据包转发模块;
接收数据包比对模块用于:获取接收数据包的数据包信息和数据包头部信息后,判断哈希链表中是否存在与接收数据包对应的哈希表项,若是,向接收数据包转发模块发送接收数据包转发信号,否则向哈希表项创建模块发送哈希表项创建信号;
接收数据包比对模块中存在与接收数据包对应的哈希表项的标准为:哈希表项中存在与接收数据包相同的数据包信息、且存在接收数据包头部信息中的部分信息;
哈希表项创建模块用于:收到哈希表项创建信号后,在哈希链表中,根据接收数据包的内容与数据包信息,形成哈希表项,向发送数据包比对模块发送数据包比对信号;
发送数据包比对模块用于:收到数据包比对信号后,获取经CPU处理后的发送数据包的数据包信息,判断哈希链表中是否存在与数据包信息对应的哈希表项,若不是,直接向发送数据包转发模块发送数据包转发信号;若是,将发送数据包的头部信息,与哈希表项中的数据包的头部信息进行比对,得到差异头部信息,将差异头部信息添加至哈希表项,向发送数据包转发模块发送数据包转发信号;
发送数据包转发模块用于:收到数据包转发信号后,将发送数据包通过Linux的标准网络协议栈进行转发;
接收数据包转发模块用于:收到接收数据包转发信号后,将接收数据包进行转发;
该系统还包括接收数据包转发流量监测模块,其用于:在接收数据包比对模块工作之前,判断转发接收数据包所需的转发流量,是否大于预先设置的阈值,若是,直接将数据包进行转发,否则进行接收数据包比对模块的工作流程。
在上述技术方案的基础上,所述哈希表项创建模块形成哈希表项之后,还用于:为该哈希表项添加数据包转发计数器并置0;所述接收数据包转发模块将接收数据包进行转发之后,还用于:将接收数据包对应的哈希表项的数据包转发计数器+1;
在此基础上,该系统还包括数据包转发计时器监测模块,其用于:周期性对数据包转发计时器进行监测,当监测到存在数据包转发计时器的值在指定阈值以下的哈希表项时,删除该哈希表项。
与现有技术相比,本发明的优点在于:
(1)参见本发明的步骤A至步骤E可知,本发明将接收和发送的网络数据包进行比对,根据比对信息在哈希链表中建立并生效数据加速规则(即哈希表项)。在此基础上,本发明收到数据包时,若哈希链表中存在与该数据包相应的加速规则(即哈希链表中存在与该数据包对应的哈希表项,该哈希表项根据之前的数据包生成),则绕开Linux的标准网络协议栈直接进行转发,进而不仅显著降低了CPU的载荷,大幅度减小了数据包丢包的几率,而且能够显著缩短数据包的转发时间,大幅度提高数据包的转发效率。
与此同时,参见本发明的步骤A可知,本发明在直接转发数据包之前,也获取了数据包信息,以此实现对数据包进行统计和控制。
(2)本发明在收到数据包后,会先监测数据包的转发流量,进而将转发时会占用CPU较多的载荷的数据包,绕开Linux的标准网络协议栈直接进行转发,进而进一步降低了CPU转发数据包的载荷,随之,也进一步减小了数据包丢包的几率。
(3)本发明若在一个周期内发现某哈希表项的数据包转发计时器在指定阈值以下,则说明当前哈希表项没有数据包命中或命中次数较少,当前哈希表项用处不大,此时删除该哈希表项,以释放哈希链表内存,进而提高了工作效率。
附图说明
图1为本发明实施例中Linux设备的网络数据转发方法的流程图。
具体实施方式
以下结合附图及实施例对本发明作进一步详细说明。
本发明实施例的Linux设备为内核版本为Linux2.6.30、CPU为MIPS架构的家庭网关设备;在此基础上,参见图1所示,本发明实施例中的Linux设备的网络数据转发方法,包括以下步骤:
S1:初始Linux设备的化哈希链表(的表头)和用于哈希链表写入的全局自旋锁,哈希链表包括上行哈希链表(的表头)和下行哈希链表(的表头),哈希链表遍历时均以哈希表头为起始节点进行,转到S2。
S2:初始化Linux设备的网络数据包传输通道的钩子函数,Linux设备的数据包传输通道包括与上行哈希链表对应的上行数据包传输通道、以及与下行哈希链表对应的下行数据包传输通道,转到S3。
S2中的上行数据包传输通道的钩子函数,包括挂载于用户侧网络接口收取数据包处的上行网络入口钩子函数、以及挂载于网络侧发送数据包处的上行网络出口钩子函数。下行数据包传输通道的钩子函数,包括挂载于网络侧网络接口收取数据包处的下行网络入口钩子函数、以及挂载于用户侧发送数据包处的下行网络出口钩子函数。
在此基础上,后续步骤中的发送/接收数据包为上行数据包或下行数据包:
发送/接收数据包为上行数据包时,后续步骤中的数据包传输通道的入口处为用户侧网络接口收取数据包处;数据包传输通道的出口处为网络侧发送数据包处,哈希链表为上行哈希链表。
发送/接收数据包为下行数据包时,后续步骤中的数据包传输通道的入口处为网络侧网络接口收取数据包处;数据包传输通道的出口处为用户侧发送数据包处,哈希链表为下行哈希链表。
S3:Linux设备的数据包传输通道的入口处收到接收数据包时,判断转发接收数据包所需的转发流量(CPU载荷)是否大于预先设置的阈值,若是(即该数据包转发时会占用CPU较多的载荷),直接将数据包进行转发,结束;否则转到S4。
通过S3可知,本发明实施例在收到数据包后,会监测数据包的转发流量,进而将转发时会占用CPU较多的载荷的数据包,绕开CPU直接转发,以此实现降低CPU转发数据包的载荷,减小数据包丢包的几率。
S4:Linux设备获取接收数据包的数据包信息和数据包头部信息,判断哈希链表中是否存在与接收数据包对应的哈希表项、且状态为ready,若是,转到S9,否则转到S5。
S4中与接收数据包对应的哈希表项的标准为:哈希表项中存在与接收数据包相同的数据包信息、存在接收数据包头部信息中的部分信息。
S4中的数据包信息包括数据包的源MAC,目的MAC、源IP、目的IP、传输层(具体指L4)协议类型、传输层源端口、以及传输层目的端口。
S5:Linux设备在哈希链表中,根据接收数据包的内容与数据包信息形成哈希表项,为该表项添加数据包转发计数器并置0,置该表项状态为INIT(内核自行启动),转到S6。
S6:Linux设备在传输通道的出口处,获取经CPU处理后的发送数据包的数据包信息(即接收数据包经CPU处理形成发送数据包),判断哈希链表中是否存在与发送数据包信息对应(相同)的哈希表项,若是,转到S7,否则转到S8
S7:Linux设备将发送数据包的头部信息,与哈希表项中的数据包的头部信息进行比对,得到差异头部信息,将差异头部信息添加至哈希表项,转到S8。
S8:Linux设备将发送数据包通过Linux的标准网络协议栈进行转发,结束。
S9:Linux设备在传输通道的入口处,直接将接收数据包进行转发,即此时不经过CPU处理直接转发数据包,转到S10。
通过S4至S9可知,本发明实施例收到数据包时,若哈希链表中存在与该数据包相应的加速规则(即哈希链表中存在与该数据包对应的哈希表项,该哈希表项根据之前的数据包生成),则绕开CPU直接进行转发,进而显著降低了CPU的载荷,大幅度减小数据包丢包的几率。与此同时,参见S4可知,本发明实施例在直接转发数据包之前,也获取了数据包信息,以此实现对数据包进行统计和控制。
S10:Linux设备将接收数据包对应的哈希表项的数据包转发计数器+1。
S2之后(即在执行S3至S10的过程中)还包括以下步骤:
S11:Linux设备周期性对数据包转发计时器进行监测,当监测到存在数据包转发计时器的值在指定阈值以下的哈希表项时,则说明当前哈希表项没有数据包命中或命中次数较少,当前哈希表项用处不大,此时删除该哈希表项,以释放内存。
本发明实施例提供的Linux设备的网络数据转发系统,包括设置于Linux设备上的接收数据包转发流量监测模块、接收数据包比对模块、哈希表项创建模块、发送数据包比对模块、发送数据包转发模块和接收数据包转发模块和数据包转发计时器监测模块。
接收数据包转发流量监测模块用于:Linux设备获取接收数据包后,判断转发接收数据包所需的转发流量,是否大于预先设置的阈值,若是,直接将数据包进行转发,否则向接收数据包比对模块发送接收数据包比对信号。
接收数据包比对模块用于:收到接收数据包比对信号后,获取接收数据包的数据包信息和数据包头部信息后,判断哈希链表中是否存在与接收数据包对应的哈希表项,若是,向接收数据包转发模块发送接收数据包转发信号,否则向哈希表项创建模块发送哈希表项创建信号。
接收数据包比对模块中存在与接收数据包对应的哈希表项的标准为:哈希表项中存在与接收数据包相同的数据包信息、且存在接收数据包头部信息中的部分信息;数据包信息包括数据包的源MAC,目的MAC、源IP、目的IP、传输层协议类型、传输层源端口、以及传输层目的端口。
哈希表项创建模块用于:收到哈希表项创建信号后,在哈希链表中,根据接收数据包的内容与数据包信息,形成哈希表项,为该哈希表项添加数据包转发计数器并置0,向发送数据包比对模块发送数据包比对信号。
发送数据包比对模块用于:收到数据包比对信号后,获取经CPU处理后的发送数据包的数据包信息,判断哈希链表中是否存在与数据包信息对应的哈希表项,若不是,直接向发送数据包转发模块发送数据包转发信号;若是,将发送数据包的头部信息,与哈希表项中的数据包的头部信息进行比对,得到差异头部信息,将差异头部信息添加至哈希表项,向发送数据包转发模块发送数据包转发信号。
发送数据包转发模块用于:收到数据包转发信号后,将发送数据包通过Linux的标准网络协议栈进行转发。
接收数据包转发模块用于:收到接收数据包转发信号后,将接收数据包进行转发,将接收数据包对应的哈希表项的数据包转发计数器+1。
数据包转发计时器监测模块用于:周期性对数据包转发计时器进行监测,当监测到存在数据包转发计时器的值在指定阈值以下的哈希表项时,删除该哈希表项。
该系统中提到的发送数据包和接收数据包,均为上行数据包或者下行数据包:当发送数据包和接收数据包均为上行数据包时,所述哈希链表为上行哈希链表;当发送数据包和接收数据包均为下行数据包时,所述哈希链表为下行哈希链表。
需要说明的是:本发明实施例提供的系统在进行模块间通信时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将系统的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
进一步,本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

Claims (8)

1.一种Linux设备的网络数据转发方法,其特征在于,该方法包括以下步骤:
步骤A:Linux设备获取接收数据包的数据包信息和数据包头部信息后,判断哈希链表中是否存在与接收数据包对应的哈希表项,若是,转到步骤E,否则转到步骤B;
步骤A中存在与接收数据包对应的哈希表项的标准为:哈希表项中存在与接收数据包相同的数据包信息、且存在接收数据包头部信息中的部分信息;
步骤B:Linux设备在哈希链表中,根据接收数据包的内容与数据包信息,形成哈希表项,转到步骤C;
步骤C:接收数据包经CPU处理形成发送数据包;Linux设备获取发送数据包的数据包信息后,判断哈希链表中是否存在与数据包信息对应的哈希表项,若不是,直接转到步骤D;若是,将发送数据包的头部信息,与哈希表项中的数据包的头部信息进行比对,得到差异头部信息,将差异头部信息添加至哈希表项,转到步骤D;
步骤D:Linux设备将发送数据包通过Linux的标准网络协议栈进行转发,结束;
步骤E:Linux设备将接收数据包进行转发,结束;
步骤A之前还包括以下步骤:Linux设备收到接收数据包时,判断转发接收数据包所需的转发流量,是否大于预先设置的阈值,若是,直接将数据包进行转发,结束;否则转到步骤A。
2.如权利要求1所述的Linux设备的网络数据转发方法,其特征在于:步骤B中所述形成哈希表项之后,还包括以下步骤:为该哈希表项添加数据包转发计数器并置0,步骤E中所述Linux设备将接收数据包进行转发之后,还包括以下步骤:Linux设备将接收数据包对应的哈希表项的数据包转发计数器+1;
在此基础上,所述Linux设备的网络数据转发方法还包括以下步骤:Linux设备周期性对数据包转发计时器进行监测,当监测到存在数据包转发计时器的值在指定阈值以下的哈希表项时,删除该哈希表项。
3.如权利要求1至2任一项所述的Linux设备的网络数据转发方法,其特征在于:步骤A中所述数据包信息包括数据包的源MAC,目的MAC、源IP、目的IP、传输层协议类型、传输层源端口、以及传输层目的端口。
4.如权利要求1至2任一项所述的Linux设备的网络数据转发方法,其特征在于:所述发送数据包和接收数据包,均为上行数据包或者下行数据包:当发送数据包和接收数据包均为上行数据包时,所述哈希链表为上行哈希链表;当发送数据包和接收数据包均为下行数据包时,所述哈希链表为下行哈希链表。
5.一种Linux设备的网络数据转发系统,其特征在于,该系统包括设置于Linux设备上的接收数据包比对模块、哈希表项创建模块、发送数据包比对模块、发送数据包转发模块和接收数据包转发模块;
接收数据包比对模块用于:获取接收数据包的数据包信息和数据包头部信息后,判断哈希链表中是否存在与接收数据包对应的哈希表项,若是,向接收数据包转发模块发送接收数据包转发信号,否则向哈希表项创建模块发送哈希表项创建信号;
接收数据包比对模块中存在与接收数据包对应的哈希表项的标准为:哈希表项中存在与接收数据包相同的数据包信息、且存在接收数据包头部信息中的部分信息;
哈希表项创建模块用于:收到哈希表项创建信号后,在哈希链表中,根据接收数据包的内容与数据包信息,形成哈希表项,向发送数据包比对模块发送数据包比对信号;
发送数据包比对模块用于:收到数据包比对信号后,获取经CPU处理后的发送数据包的数据包信息,判断哈希链表中是否存在与数据包信息对应的哈希表项,若不是,直接向发送数据包转发模块发送数据包转发信号;若是,将发送数据包的头部信息,与哈希表项中的数据包的头部信息进行比对,得到差异头部信息,将差异头部信息添加至哈希表项,向发送数据包转发模块发送数据包转发信号;
发送数据包转发模块用于:收到数据包转发信号后,将发送数据包通过Linux的标准网络协议栈进行转发;
接收数据包转发模块用于:收到接收数据包转发信号后,将接收数据包进行转发;
该系统还包括接收数据包转发流量监测模块,其用于:在接收数据包比对模块工作之前,判断转发接收数据包所需的转发流量,是否大于预先设置的阈值,若是,直接将数据包进行转发,否则进行接收数据包比对模块的工作流程。
6.如权利要求5所述的Linux设备的网络数据转发系统,其特征在于:所述哈希表项创建模块形成哈希表项之后,还用于:为该哈希表项添加数据包转发计数器并置0;所述接收数据包转发模块将接收数据包进行转发之后,还用于:将接收数据包对应的哈希表项的数据包转发计数器+1;
在此基础上,该系统还包括数据包转发计时器监测模块,其用于:周期性对数据包转发计时器进行监测,当监测到存在数据包转发计时器的值在指定阈值以下的哈希表项时,删除该哈希表项。
7.如权利要求5至6任一项所述的Linux设备的网络数据转发系统,其特征在于:所述接收数据包比对模块的数据包信息包括数据包的源MAC,目的MAC、源IP、目的IP、传输层协议类型、传输层源端口、以及传输层目的端口。
8.如权利要求5至6任一项所述的Linux设备的网络数据转发系统,其特征在于:所述发送数据包和接收数据包,均为上行数据包或者下行数据包:当发送数据包和接收数据包均为上行数据包时,所述哈希链表为上行哈希链表;当发送数据包和接收数据包均为下行数据包时,所述哈希链表为下行哈希链表。
CN201710860767.5A 2017-09-21 2017-09-21 Linux设备的网络数据转发方法及系统 Active CN107682267B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710860767.5A CN107682267B (zh) 2017-09-21 2017-09-21 Linux设备的网络数据转发方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710860767.5A CN107682267B (zh) 2017-09-21 2017-09-21 Linux设备的网络数据转发方法及系统

Publications (2)

Publication Number Publication Date
CN107682267A CN107682267A (zh) 2018-02-09
CN107682267B true CN107682267B (zh) 2020-04-28

Family

ID=61137695

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710860767.5A Active CN107682267B (zh) 2017-09-21 2017-09-21 Linux设备的网络数据转发方法及系统

Country Status (1)

Country Link
CN (1) CN107682267B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111355662B (zh) * 2018-12-24 2022-09-13 中移(杭州)信息技术有限公司 一种数据加速方法、装置、网关设备及可读存储介质
CN111651288B (zh) * 2020-06-02 2023-03-14 中电科航空电子有限公司 一种arinc628离散量实时传输方法及其应用
CN113453276B (zh) * 2021-05-18 2024-01-16 翱捷科技股份有限公司 一种提高lte终端上下行内存利用率的方法及装置
CN114338529B (zh) * 2021-12-29 2024-03-08 杭州迪普信息技术有限公司 五元组规则匹配方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102158419A (zh) * 2011-05-23 2011-08-17 深圳市共进电子有限公司 在家庭网关中实现数据包加速转发的方法
CN102624628A (zh) * 2012-03-22 2012-08-01 深圳市共进电子股份有限公司 一种家庭网关及其实现数据包快速转发的方法
CN103347014A (zh) * 2013-06-25 2013-10-09 深圳市共进电子股份有限公司 网络快速转发模块及网络快速转发实现方法
CN103647716A (zh) * 2013-11-22 2014-03-19 上海斐讯数据通信技术有限公司 一种数据包快速转发方法及装置
CN105227493A (zh) * 2015-10-15 2016-01-06 上海斐讯数据通信技术有限公司 多核平台下提高数据报文转发性能的方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102158419A (zh) * 2011-05-23 2011-08-17 深圳市共进电子有限公司 在家庭网关中实现数据包加速转发的方法
CN102624628A (zh) * 2012-03-22 2012-08-01 深圳市共进电子股份有限公司 一种家庭网关及其实现数据包快速转发的方法
CN103347014A (zh) * 2013-06-25 2013-10-09 深圳市共进电子股份有限公司 网络快速转发模块及网络快速转发实现方法
CN103647716A (zh) * 2013-11-22 2014-03-19 上海斐讯数据通信技术有限公司 一种数据包快速转发方法及装置
CN105227493A (zh) * 2015-10-15 2016-01-06 上海斐讯数据通信技术有限公司 多核平台下提高数据报文转发性能的方法

Also Published As

Publication number Publication date
CN107682267A (zh) 2018-02-09

Similar Documents

Publication Publication Date Title
CN107682267B (zh) Linux设备的网络数据转发方法及系统
EP3229407B1 (en) Application signature generation and distribution
US10771501B2 (en) DDoS attack defense method, system, and related device
US11089049B2 (en) System, device, and method of detecting cryptocurrency mining activity
US20210250771A1 (en) Method For Determining Class Information And Apparatus
AU2020204346B2 (en) Multi-access distributed edge security in mobile networks
EP3188440B1 (en) Network session data sharing
EP2773073B1 (en) Entry generation method, message receiving method, and corresponding device and system
US20100095351A1 (en) Method, device for identifying service flows and method, system for protecting against deny of service attack
US20130198845A1 (en) Monitoring a wireless network for a distributed denial of service attack
CN112468518B (zh) 访问数据处理方法、装置、存储介质及计算机设备
US10498618B2 (en) Attributing network address translation device processed traffic to individual hosts
US9843514B2 (en) Packet processing method and background server
CN106685827B (zh) 一种下行报文的转发方法及ap设备
CN106656648B (zh) 基于家庭网关的应用流量动态保护方法、系统及家庭网关
EP3832960A1 (en) Establishment of fast forwarding table
US20230006937A1 (en) Packet flow identification with reduced decode operations
WO2024060408A1 (zh) 网络攻击检测方法和装置、设备及存储介质
WO2014127517A1 (zh) 报文处理方法、转发器、报文处理设备、报文处理系统
EP3753203B1 (en) Methods, system, ue, pgw-u and mme for managing traffic differentiation
US10268532B2 (en) Application message processing system, method, and application device
CN107547680B (zh) 一种数据处理方法及装置
CN112533210A (zh) 一种基于移动边缘计算的安全防护系统
CN108712398B (zh) 认证服务器的端口认证方法、服务器、交换机和存储介质
EP3407553B1 (en) Pppoe message transmission method and pppoe server

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