CN112887210A - 一种流表管理方法及装置 - Google Patents

一种流表管理方法及装置 Download PDF

Info

Publication number
CN112887210A
CN112887210A CN202110011034.0A CN202110011034A CN112887210A CN 112887210 A CN112887210 A CN 112887210A CN 202110011034 A CN202110011034 A CN 202110011034A CN 112887210 A CN112887210 A CN 112887210A
Authority
CN
China
Prior art keywords
connection
flow table
data packet
network data
set value
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
Application number
CN202110011034.0A
Other languages
English (en)
Other versions
CN112887210B (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.)
New H3C Big Data Technologies Co Ltd
Original Assignee
New H3C Big Data 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 New H3C Big Data Technologies Co Ltd filed Critical New H3C Big Data Technologies Co Ltd
Priority to CN202110011034.0A priority Critical patent/CN112887210B/zh
Publication of CN112887210A publication Critical patent/CN112887210A/zh
Application granted granted Critical
Publication of CN112887210B publication Critical patent/CN112887210B/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service

Abstract

本申请涉及网络通信技术领域,特别涉及一种流表管理方法及装置。该方法应用于智能网卡,该方法包括:接收网络数据包;判断本地是否存在与所述网络数据包相匹配的目标流表项;若判定本地不存在与所述网络数据包相匹配的所述目标流表项,则将所述网络数据包上送至内核态进行转发,并触发所述内核态的所述目标流表项的下发操作;接收所述内核态下发的所述目标流表项;基于所述网络数据包的协议属性和连接状态属性,配置所述目标流表项的老化时间。

Description

一种流表管理方法及装置
技术领域
本申请涉及网络通信技术领域,特别涉及一种流表管理方法及装置。
背景技术
传统的openvswitch提供了灵活的虚拟化环境虚拟机接入和网络管理控制能力,但是由于其datapath(以太桥)在内核态,性能也越来越不能满足虚拟化环境需求。网络设备厂商开始推出智能网卡,这是一种可以将ovs的数据面datapath甚至是控制面ovs-vswitchd、ovs-dbserver都卸载到智能网卡的网络卸载方案,当数据面卸载到智能网卡后,ovs的功能由硬件E-switch来实现,同时用户态的流表也能进行offload,下发给E-switch从而提升数据转发的效率。
在初始化智能网卡时,统一设置offloaded流表的timeout老化时间,每条流表如果有包命中,老化计时会复位;如果计时到老化时间了,仍没有包命中,该条流表将会被删除。
目前,大多数支持硬件卸载的智能网卡,其offloaded的流表都是设置统一的老化时间,一旦老化时间到,就会删除流表。这样,各流表的老化时间被设置为固定值,设置方式不够灵活,若老化时间设置过长,不能及时老化,导致流表命中率低的问题;若老化时间设置过短,导致频繁老化,不断触发首包上送流程,增加了走慢速通道的次数,从而降低了智能网卡的转发性能。
发明内容
本申请提供了一种流表管理方法及装置,用以解决现有技术中存在的由于无法高效管理流表而导致流表命中率低、智能网卡转发性能低的问题。
第一方面,本申请提供了一种流表管理方法,应用于智能网卡,所述方法包括:
接收网络数据包,并判断本地是否存在与所述网络数据包相匹配的目标流表项;
若判定本地不存在与所述网络数据包相匹配的所述目标流表项,则将所述网络数据包上送至内核态进行转发,并触发所述内核态的所述目标流表项的下发操作;
接收所述内核态下发的所述目标流表项,并基于所述网络数据包的协议属性和连接状态属性,配置所述目标流表项的老化时间。
可选地,若所述协议属性为TCP连接,则所述连接状态属性至少包括:连接建立过程对应的半开连接状态,连接建立成功对应的连接成功状态,连接断开过程对应的半闭连接状态和连接断开成功对应的连接关闭状态。
可选地,若所述网络数据包的协议属性为TCP连接,则基于所述网络数据包的协议属性和连接状态属性,配置所述目标流表项的老化时间的步骤包括:
若所述网络数据包的连接状态属性为半开连接状态,则将所述目标流表项的老化时间配置为第一设定值;
若所述网络数据包的连接状态属性为连接成功状态,则将所述目标流表项的老化时间配置为第二设定值,其中,所述第一设定值小于所述第二设定值;
若所述网络数据包的连接状态属性为半闭连接状态,则将所述目标流表项的老化时间配置为第三设定值,其中,所述第三设定值小于所述第二设定值;
若所述网络数据包的连接状态属性为连接关闭状态,则将所述目标流表项的老化时间配置为第四设定值,其中,所述第四设定值小于所述第一设定值和所述第三设定值。
可选地,若所述协议属性为UDP连接,则所述连接状态属性至少包括:接收到一个UDP连接的第一个网络数据包时对应的连接初始状态和接收到该一个UDP连接的除所述第一个网络数据包之外的其它网络数据包时对应的连接成功状态。
可选地,若所述网络数据包的协议属性为UDP连接,则基于所述网络数据包的协议属性和连接状态属性,配置所述目标流表项的老化时间的步骤包括:
若所述网络数据包的连接状态属性为连接初始状态,则将所述目标流表项的老化时间配置为第五设定值;
若所述网络数据包的连接状态属性为连接成功状态,则将所述目标流表项的老化时间配置为第六设定值,其中,所述第六设定值大于所述第五设定值。
第二方面,本申请提供了一种流表管理装置,应用于智能网卡,所述装置包括:
第一接收单元,用于接收网络数据包;
判断单元,用于判断本地是否存在与所述网络数据包相匹配的目标流表项;
上送单元,若所述判断单元判定本地不存在与所述网络数据包相匹配的所述目标流表项,则所述上送单元将所述网络数据包上送至内核态进行转发,并触发所述内核态的所述目标流表项的下发操作;
第二接收单元,用于接收所述内核态下发的所述目标流表项;
配置单元,用于基于所述网络数据包的协议属性和连接状态属性,配置所述目标流表项的老化时间。
可选地,若所述协议属性为TCP连接,则所述连接状态属性至少包括:连接建立过程对应的半开连接状态,连接建立成功对应的连接成功状态,连接断开过程对应的半闭连接状态和连接断开成功对应的连接关闭状态。
可选地,若所述网络数据包的协议属性为TCP连接,则基于所述网络数据包的协议属性和连接状态属性,配置所述目标流表项的老化时间时,所述配置单元具体用于:
若所述网络数据包的连接状态属性为半开连接状态,则将所述目标流表项的老化时间配置为第一设定值;
若所述网络数据包的连接状态属性为连接成功状态,则将所述目标流表项的老化时间配置为第二设定值,其中,所述第一设定值小于所述第二设定值;
若所述网络数据包的连接状态属性为半闭连接状态,则将所述目标流表项的老化时间配置为第三设定值,其中,所述第三设定值小于所述第二设定值;
若所述网络数据包的连接状态属性为连接关闭状态,则将所述目标流表项的老化时间配置为第四设定值,其中,所述第四设定值小于所述第一设定值和所述第三设定值。
可选地,若所述协议属性为UDP连接,则所述连接状态属性至少包括:接收到一个UDP连接的第一个网络数据包时对应的连接初始状态和接收到该一个UDP连接的除所述第一个网络数据包之外的其它网络数据包时对应的连接成功状态。
可选地,若所述网络数据包的协议属性为UDP连接,则基于所述网络数据包的协议属性和连接状态属性,配置所述目标流表项的老化时间时,所述配置单元具体用于:
若所述网络数据包的连接状态属性为连接初始状态,则将所述目标流表项的老化时间配置为第五设定值;
若所述网络数据包的连接状态属性为连接成功状态,则将所述目标流表项的老化时间配置为第六设定值,其中,所述第六设定值大于所述第五设定值。
第三方面,本申请实施例提供了一种智能网卡,该智能网卡包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序指令执行如上述第一方面中任一项所述的方法的步骤。
第四方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行如上述第一方面中任一项所述方法的步骤。
综上可知,本申请实施例提供的流表管理方法,应用于智能网卡,该方法包括:接收网络数据包;判断本地是否存在与所述网络数据包相匹配的目标流表项;若判定本地不存在与所述网络数据包相匹配的所述目标流表项,则将所述网络数据包上送至内核态进行转发,并触发所述内核态的所述目标流表项的下发操作;接收所述内核态下发的所述目标流表项;基于所述网络数据包的协议属性和连接状态属性,配置所述目标流表项的老化时间。
采用本申请实施例提供的流表管理方法,智能网卡在硬件卸载流表是时,不再对各流表项进行固定的老化时间的设置,而是根据网络数据包的协议属性和链接状态属性,对其对应的流表项的老化时间进行动态地设置,避免了某些属性流量对应的流表项的老化时间设置过长而导致不能及时老化,而某些属性流量对应的流表项的老化时间过短而导致频繁老化,进而不断触发首包上送流程,降低智能网卡转发性能。进一步地,针对某些特殊属性流量,配置较短的老化时间以避免出现半连接状态的Ddos攻击。
附图说明
为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其他的附图。
图1为本申请实施例提供的一种流表管理方法的详细流程图;
图2为本申请实施例提供的一种流表管理装置的结构示意图;
图3为本申请实施例提供的一种智能网卡的结构示意图。
具体实施方式
在本申请实施例使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
示例性的,参阅图1所示,为本申请实施例提供的一种路标管理方法的详细流程图,该方法应用于智能网卡,该方法包括以下步骤:
步骤100:接收网络数据包。
本申请实施例中,智能网卡支持openvswitch的硬件offload卸载,即ovs(Openvswitch,开源的虚拟交换机)的数据面datapath能够卸载到智能网卡上的E-switch上进行硬件加速实现ovs功能。
进一步地,本申请实施例中,智能网卡支持ovs用户态流表的hardware-offload,当有数据包到达E-switch后,如果匹配不了offloaded流表,将走首包流程上送到用户态ovs-vswitchd进行用户态流表转发,并触发流表offload操作,生成offloaded格式的流表下发给E-switch,该连接的后续非首包将直接由硬件E-switch转发,提升转发效率。
可选地,本申请实施例中,智能网卡还可以支持Linux内核的conntrack模块,并且用户态流表的CT相关标识也能够生成相关的offloaded流表下发到E-switch。
步骤110:判断本地是否存在与上述网络数据包相匹配的目标流表项。
由上可知,本申请实施例中,智能网卡在接收到客户端发送的一个网络数据包后,根据本地维护的流表进行流表项匹配操作,以判断本地是否存在用于转发该一个网卡数据包的目标流表项,若存在,直接根据该目标流表项对该一个网络数据包进行转发操作,并复位该目标流表项的老化时间。
步骤120:若判定本地不存在与上述网络数据包相匹配的上述目标流表项,则将上述网络数据包上送至内核态进行转发,并触发上述内核态的上述目标流表项的下发操作。
本申请实施例中,若智能网卡判定本地不存在用于转发该一个网络数据包的目标流表项,则将该一个网络数据包上送至内核态,基于内核态中的用户态流表进行转发,同时,触发内核态流表offload操作,生成offloaded格式的目标流表项下发给E-switch。
步骤130:接收上述内核态下发的上述目标流表项。
具体地,E-switch接收内核态发送的offloaded格式的目标流表项,并维护在本地。
步骤140:基于上述网络数据包的协议属性和连接状态属性,配置上述目标流表项的老化时间。
实际应用中,由于大部分网络业务数据都是由TCP或者UDP来承载的,那么,本申请实施例中,网络数据包的协议属性可以包括TCP连接和UDP连接,对于ICMP等其他协议,由于网络数据量不大,或者网络流量规律性不强,可以设置一个默认的TTL(老化时间),这里设置为30S。
需要说明的是,本申请实施例中定义的各TTL只是一个示例值,在真实的网络环境中,可以根据网络环境协议分布和流量特性和/或用户需求进行适应性调整,本申请实施例中,在此不做具体限定。
本申请实施例中,一种较佳的实现方式为,若上述协议属性为TCP连接,则上述连接状态属性至少包括:连接建立过程对应的半开连接状态,连接建立成功对应的连接成功状态,连接断开过程对应的半闭连接状态和连接断开成功对应的连接关闭状态。
若上述网络数据包的协议属性为TCP连接,则基于上述网络数据包的协议属性和连接状态属性,配置上述目标流表项的老化时间时,可以包括以下几种情况:
第一种情况为:若上述网络数据包的连接状态属性为半开连接状态,则将上述目标流表项的老化时间配置为第一设定值。
示例性的,参阅表1所示,对于TCP连接,在执行三次握手流程时,当连接状态属性为SYN或者SYN+ACK时,属于半开连接状态,这时连接并未真正建立起来,还处于握手阶段。故这里将TTL设置为10S,如果连接在TTL内还未建立,就让它尽快老化,这样可以从一定程度上预防网络上发起的半连接flooding的DDOS攻击。
第二种情况为:若上述网络数据包的连接状态属性为连接成功状态,则将上述目标流表项的老化时间配置为第二设定值,其中,上述第一设定值小于上述第二设定值。
示例性的,参阅表1所示,在三次握手阶段,当最后一个ACK收到后,三次握手完成,连接建立,正常情况下随后会发起数据交互,这时将TTL设置大一点,如60S,可以有效提高offloaded流表的命中率,提升业务网络转发效率。
第三种情况为:若上述网络数据包的连接状态属性为半闭连接状态,则将上述目标流表项的老化时间配置为第三设定值,其中,上述第三设定值小于上述第二设定值。
当然,本申请实施例中,第三设定值和第一设定值可以被设置为同一值,也可以设置为不同值。
示例性的,参阅表1所示,对于TCP连接,在执行三次挥手流程时,当连接状态属性为FIN和FIN+ACK时,属于半闭连接状态,也可以将TTL设置为10S,这样,若在断开连接时出现异常,则可以让它尽快老化。
第四种情况为:若上述网络数据包的连接状态属性为连接关闭状态,则将上述目标流表项的老化时间配置为第四设定值,其中,上述第四设定值小于上述第一设定值和上述第三设定值。
示例性的,参阅表1所示,在三次挥手阶段,当最后一个ACK收到后,三次挥手完成,连接关闭,将TTL设置为2S,让流表项尽快老化掉,以及时释放资源。
Figure BDA0002885057150000081
表1
本申请实施例中,一种较佳的实现方式为,若上述协议属性为UDP连接,则上述连接状态属性至少包括:接收到一个UDP连接的第一个网络数据包时对应的连接初始状态和接收到该一个UDP连接的除上述第一个网络数据包之外的其它网络数据包时对应的连接成功状态。
若上述网络数据包的协议属性为TCP连接,则基于上述网络数据包的协议属性和连接状态属性,配置上述目标流表项的老化时间时,可以包括以下几种情况:
第一种情况为:若上述网络数据包的连接状态属性为连接初始状态,则将上述目标流表项的老化时间配置为第五设定值。
第二种情况为:若上述网络数据包的连接状态属性为连接成功状态,则将上述目标流表项的老化时间配置为第六设定值,其中,上述第六设定值大于上述第五设定值。
示例性的,参阅表1所示,对于UDP连接,UDP本身是无状态连接,它没有连接建立和断开的过程,也没有序列号。两个UDP包是无法确定它们之间的先后顺序。client发出的第一个包,认为connection是NEW状态,server返回第一个合法的包,认为connection是ESTABLISHED。这里可以设置一个经验值,当状态为NEW时,TTL=10;当状态为ESTABLISHED时,TTL=60,认为连接建立起来后,随后将会进行数据交互,增大老化时间,有利于数据包的快速转发,提升网络效率。
基于与上述发明实施例同样的发明构思,示例性的,参阅图2所示,为本申请实施例提供的一种流表管理装置的结构示意图,该装置应用于智能网卡,该装置包括:
第一接收单元20,用于接收网络数据包;
判断单元21,用于判断本地是否存在与所述网络数据包相匹配的目标流表项;
上送单元22,若所述判断单元判定本地不存在与所述网络数据包相匹配的所述目标流表项,则所述上送单元将所述网络数据包上送至内核态进行转发,并触发所述内核态的所述目标流表项的下发操作;
第二接收单元23,用于接收所述内核态下发的所述目标流表项;
配置单元24,用于基于所述网络数据包的协议属性和连接状态属性,配置所述目标流表项的老化时间。
可选地,若所述协议属性为TCP连接,则所述连接状态属性至少包括:连接建立过程对应的半开连接状态,连接建立成功对应的连接成功状态,连接断开过程对应的半闭连接状态和连接断开成功对应的连接关闭状态。
可选地,若所述网络数据包的协议属性为TCP连接,则基于所述网络数据包的协议属性和连接状态属性,配置所述目标流表项的老化时间时,所述配置单元24具体用于:
若所述网络数据包的连接状态属性为半开连接状态,则将所述目标流表项的老化时间配置为第一设定值;
若所述网络数据包的连接状态属性为连接成功状态,则将所述目标流表项的老化时间配置为第二设定值,其中,所述第一设定值小于所述第二设定值;
若所述网络数据包的连接状态属性为半闭连接状态,则将所述目标流表项的老化时间配置为第三设定值,其中,所述第三设定值小于所述第二设定值;
若所述网络数据包的连接状态属性为连接关闭状态,则将所述目标流表项的老化时间配置为第四设定值,其中,所述第四设定值小于所述第一设定值和所述第三设定值。
可选地,若所述协议属性为UDP连接,则所述连接状态属性至少包括:接收到一个UDP连接的第一个网络数据包时对应的连接初始状态和接收到该一个UDP连接的除所述第一个网络数据包之外的其它网络数据包时对应的连接成功状态。
可选地,若所述网络数据包的协议属性为UDP连接,则基于所述网络数据包的协议属性和连接状态属性,配置所述目标流表项的老化时间时,所述配置单元24具体用于:
若所述网络数据包的连接状态属性为连接初始状态,则将所述目标流表项的老化时间配置为第五设定值;
若所述网络数据包的连接状态属性为连接成功状态,则将所述目标流表项的老化时间配置为第六设定值,其中,所述第六设定值大于所述第五设定值。
以上这些单元可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(digital singnal processor,简称DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个单元通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(CentralProcessing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些单元可以集成在一起,以片上系统(system-on-a-chip,简称SOC)的形式实现。
进一步地,本申请实施例提供的智能网卡,从硬件层面而言,所述智能网卡的硬件架构示意图可以参见图3所示,所述服务治理参数更新装置可以包括:存储器30和处理器31,
存储器30用于存储程序指令;处理器31调用存储器340中存储的程序指令,按照获得的程序指令执行上述方法实施例。具体实现方式和技术效果类似,这里不再赘述。
可选地,本申请还提供一种智能网卡,包括用于执行上述方法实施例的至少一个处理元件(或芯片)。
可选地,本申请还提供一种程序产品,例如计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令用于使该计算机执行上述方法实施例。
这里,机器可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(RadomAccess Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (10)

1.一种流表管理方法,其特征在于,应用于智能网卡,所述方法包括:
接收网络数据包;
判断本地是否存在与所述网络数据包相匹配的目标流表项;
若判定本地不存在与所述网络数据包相匹配的所述目标流表项,则将所述网络数据包上送至内核态进行转发,并触发所述内核态的所述目标流表项的下发操作;
接收所述内核态下发的所述目标流表项;
基于所述网络数据包的协议属性和连接状态属性,配置所述目标流表项的老化时间。
2.如权利要求1所述的方法,其特征在于,若所述协议属性为TCP连接,则所述连接状态属性至少包括:连接建立过程对应的半开连接状态,连接建立成功对应的连接成功状态,连接断开过程对应的半闭连接状态和连接断开成功对应的连接关闭状态。
3.如权利要求2所述的方法,其特征在于,若所述网络数据包的协议属性为TCP连接,则基于所述网络数据包的协议属性和连接状态属性,配置所述目标流表项的老化时间的步骤包括:
若所述网络数据包的连接状态属性为半开连接状态,则将所述目标流表项的老化时间配置为第一设定值;
若所述网络数据包的连接状态属性为连接成功状态,则将所述目标流表项的老化时间配置为第二设定值,其中,所述第一设定值小于所述第二设定值;
若所述网络数据包的连接状态属性为半闭连接状态,则将所述目标流表项的老化时间配置为第三设定值,其中,所述第三设定值小于所述第二设定值;
若所述网络数据包的连接状态属性为连接关闭状态,则将所述目标流表项的老化时间配置为第四设定值,其中,所述第四设定值小于所述第一设定值和所述第三设定值。
4.如权利要求1所述的方法,其特征在于,若所述协议属性为UDP连接,则所述连接状态属性至少包括:接收到一个UDP连接的第一个网络数据包时对应的连接初始状态和接收到该一个UDP连接的除所述第一个网络数据包之外的其它网络数据包时对应的连接成功状态。
5.如权利要求4所述的方法,其特征在于,若所述网络数据包的协议属性为UDP连接,则基于所述网络数据包的协议属性和连接状态属性,配置所述目标流表项的老化时间的步骤包括:
若所述网络数据包的连接状态属性为连接初始状态,则将所述目标流表项的老化时间配置为第五设定值;
若所述网络数据包的连接状态属性为连接成功状态,则将所述目标流表项的老化时间配置为第六设定值,其中,所述第六设定值大于所述第五设定值。
6.一种流表管理装置,其特征在于,应用于智能网卡,所述装置包括:
第一接收单元,用于接收网络数据包;
判断单元,用于判断本地是否存在与所述网络数据包相匹配的目标流表项;
上送单元,若所述判断单元判定本地不存在与所述网络数据包相匹配的所述目标流表项,则所述上送单元将所述网络数据包上送至内核态进行转发,并触发所述内核态的所述目标流表项的下发操作;
第二接收单元,用于接收所述内核态下发的所述目标流表项;
配置单元,用于基于所述网络数据包的协议属性和连接状态属性,配置所述目标流表项的老化时间。
7.如权利要求6所述的装置,其特征在于,若所述协议属性为TCP连接,则所述连接状态属性至少包括:连接建立过程对应的半开连接状态,连接建立成功对应的连接成功状态,连接断开过程对应的半闭连接状态和连接断开成功对应的连接关闭状态。
8.如权利要求7所述的装置,其特征在于,若所述网络数据包的协议属性为TCP连接,则基于所述网络数据包的协议属性和连接状态属性,配置所述目标流表项的老化时间时,所述配置单元具体用于:
若所述网络数据包的连接状态属性为半开连接状态,则将所述目标流表项的老化时间配置为第一设定值;
若所述网络数据包的连接状态属性为连接成功状态,则将所述目标流表项的老化时间配置为第二设定值,其中,所述第一设定值小于所述第二设定值;
若所述网络数据包的连接状态属性为半闭连接状态,则将所述目标流表项的老化时间配置为第三设定值,其中,所述第三设定值小于所述第二设定值;
若所述网络数据包的连接状态属性为连接关闭状态,则将所述目标流表项的老化时间配置为第四设定值,其中,所述第四设定值小于所述第一设定值和所述第三设定值。
9.如权利要求6所述的装置,其特征在于,若所述协议属性为UDP连接,则所述连接状态属性至少包括:接收到一个UDP连接的第一个网络数据包时对应的连接初始状态和接收到该一个UDP连接的除所述第一个网络数据包之外的其它网络数据包时对应的连接成功状态。
10.如权利要求9所述的装置,其特征在于,若所述网络数据包的协议属性为UDP连接,则基于所述网络数据包的协议属性和连接状态属性,配置所述目标流表项的老化时间时,所述配置单元具体用于:
若所述网络数据包的连接状态属性为连接初始状态,则将所述目标流表项的老化时间配置为第五设定值;
若所述网络数据包的连接状态属性为连接成功状态,则将所述目标流表项的老化时间配置为第六设定值,其中,所述第六设定值大于所述第五设定值。
CN202110011034.0A 2021-01-06 2021-01-06 一种流表管理方法及装置 Active CN112887210B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110011034.0A CN112887210B (zh) 2021-01-06 2021-01-06 一种流表管理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110011034.0A CN112887210B (zh) 2021-01-06 2021-01-06 一种流表管理方法及装置

Publications (2)

Publication Number Publication Date
CN112887210A true CN112887210A (zh) 2021-06-01
CN112887210B CN112887210B (zh) 2022-04-01

Family

ID=76046851

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110011034.0A Active CN112887210B (zh) 2021-01-06 2021-01-06 一种流表管理方法及装置

Country Status (1)

Country Link
CN (1) CN112887210B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114553762A (zh) * 2022-01-30 2022-05-27 阿里巴巴(中国)有限公司 一种对流表中的流表项处理的方法及装置
CN115002028A (zh) * 2022-04-30 2022-09-02 济南浪潮数据技术有限公司 一种报文处理方法、装置及介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104333611A (zh) * 2014-10-29 2015-02-04 中国联合网络通信集团有限公司 一种老化时间的调整方法及装置
CN104468624A (zh) * 2014-12-22 2015-03-25 上海斐讯数据通信技术有限公司 Sdn控制器、路由/交换设备及网络防御方法
CN104486453A (zh) * 2014-11-19 2015-04-01 中国联合网络通信集团有限公司 一种老化时间的调整方法及装置
US20160234068A1 (en) * 2015-02-10 2016-08-11 Alcatel-Lucent Usa Inc. Method and system for identifying an incoming interface using openflow protocol
CN107222412A (zh) * 2017-06-08 2017-09-29 全球能源互联网研究院 一种基于网络拓扑判定的sdn混合模式流表下发方法及装置
CN111970388A (zh) * 2020-08-19 2020-11-20 苏州浪潮智能科技有限公司 一种交换机动态调整arp表项老化时间的方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104333611A (zh) * 2014-10-29 2015-02-04 中国联合网络通信集团有限公司 一种老化时间的调整方法及装置
CN104486453A (zh) * 2014-11-19 2015-04-01 中国联合网络通信集团有限公司 一种老化时间的调整方法及装置
CN104468624A (zh) * 2014-12-22 2015-03-25 上海斐讯数据通信技术有限公司 Sdn控制器、路由/交换设备及网络防御方法
US20160234068A1 (en) * 2015-02-10 2016-08-11 Alcatel-Lucent Usa Inc. Method and system for identifying an incoming interface using openflow protocol
CN107222412A (zh) * 2017-06-08 2017-09-29 全球能源互联网研究院 一种基于网络拓扑判定的sdn混合模式流表下发方法及装置
CN111970388A (zh) * 2020-08-19 2020-11-20 苏州浪潮智能科技有限公司 一种交换机动态调整arp表项老化时间的方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114553762A (zh) * 2022-01-30 2022-05-27 阿里巴巴(中国)有限公司 一种对流表中的流表项处理的方法及装置
CN114553762B (zh) * 2022-01-30 2023-12-26 阿里巴巴(中国)有限公司 一种对流表中的流表项处理的方法及装置
CN115002028A (zh) * 2022-04-30 2022-09-02 济南浪潮数据技术有限公司 一种报文处理方法、装置及介质
CN115002028B (zh) * 2022-04-30 2024-02-13 济南浪潮数据技术有限公司 一种报文处理方法、装置及介质

Also Published As

Publication number Publication date
CN112887210B (zh) 2022-04-01

Similar Documents

Publication Publication Date Title
CN112887210B (zh) 一种流表管理方法及装置
EP3275140B1 (en) Technique for achieving low latency in data center network environments
US10127091B1 (en) Intercepting socket metadata
US9639403B2 (en) Receive-side scaling in a computer system using sub-queues assigned to processing cores
CN113328944B (zh) 一种流表管理方法及装置
CN112910802B (zh) 一种报文处理方法及装置
US8665870B2 (en) Method and apparatus for handling push messages
CN115134315B (zh) 报文转发方法及相关装置
CN108566344B (zh) 一种报文处理方法和装置
CN114915587B (zh) 流表老化管理方法及相关设备
WO2021012506A1 (zh) 语音识别系统中的负载均衡实现方法、装置以及计算机设备
CA3153030A1 (en) Flexible datapath offload chaining
US20090296728A1 (en) Method and Apparatus for Prioritizing Source MAC Address Miss Processing
CN114189477B (zh) 一种报文拥塞控制方法及装置
CN112152872B (zh) 一种网络亚健康检测方法及装置
CN109547318B (zh) Vpn数据报文的处理方法、装置、电子设备
CN111490944A (zh) 一种信息处理方法、装置、设备及机器可读存储介质
CN114070798B (zh) 一种报文传输方法、装置及设备
CN107046503B (zh) 一种报文传输方法、系统及其装置
CN112367267B (zh) 一种虚拟机管理方法及装置
JP6480082B2 (ja) 加入者識別モジュール(sim)アクセスプロファイル(sap)の改善
CN112596825B (zh) 一种云桌面启动方法及装置
CN111107142B (zh) 业务访问方法和装置
CN113542055A (zh) 一种报文处理方法、装置、设备及机器可读存储介质
CN111988154A (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