CN116016258A - 一种网卡检测方法、装置及电子设备和存储介质 - Google Patents

一种网卡检测方法、装置及电子设备和存储介质 Download PDF

Info

Publication number
CN116016258A
CN116016258A CN202310318128.1A CN202310318128A CN116016258A CN 116016258 A CN116016258 A CN 116016258A CN 202310318128 A CN202310318128 A CN 202310318128A CN 116016258 A CN116016258 A CN 116016258A
Authority
CN
China
Prior art keywords
network card
target data
flow
flow table
time period
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.)
Pending
Application number
CN202310318128.1A
Other languages
English (en)
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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202310318128.1A priority Critical patent/CN116016258A/zh
Publication of CN116016258A publication Critical patent/CN116016258A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请公开了一种网卡检测方法、装置及电子设备和存储介质,该方法包括:获取目标数据;其中,所述目标数据包括多个数据位,每个数据位用于表征网卡中对应的流表项在预设时间周期内是否存在流量匹配;根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。由此可见,本申请提供的网卡检测方法,传递依次目标数据可以实现同时检测多个流表项的匹配情况,提高了流表项匹配情况的检测效率,在不影响网卡性能的前提下实现对其中流表项的老化检测。

Description

一种网卡检测方法、装置及电子设备和存储介质
技术领域
本申请涉及计算机技术领域,更具体地说,涉及一种网卡检测方法、装置及电子设备和存储介质。
背景技术
OVS(Open VSwitch)是一个虚拟交换机,用于组成虚拟网络。所谓虚拟交换,就是利用软件实现交换功能,也称为软件交换机。跟传统的物理交换机相比,虚拟交换机成本低廉,配置灵活,一台物理设备上可以配置数百台虚拟交换机。
OVS由三大部分组成:
(1)ovsdb-sever:OVS的数据库服务器,用来存储虚拟交换机的配置信息。
(2)ovs-vswitchd:OVS的核心部件,与上层controller(控制器)通信遵从openflow协议,与ovsdb-server通信使用OVSDB(Open vSwitch Database ManagementProtocol,开放虚拟交换机数据库管理协议)协议,内核模块通过netlink通信。
(3)ovs kernel module:OVS的内核模块,处理报文转发,缓存流表项,如果找到转发规则则转发,否则将报文转发至用户空间处理。
OVS转发报文的流程为:kernel datapath从网卡收到包,如果是第一次收到包,datapath查找不到对应的转发规则,于是将其转发给 ovs-vswitchd,ovs-vswitchd生成相应的转发规则下发给kernel datapath,同时将报文转发回datapath。Kernel datapath根据ovs-vswitchd下发的规则对报文进行转发,同时缓存相关转发规则,以后收到相同流的报文可以直接按照转发规则进行转发。
OVS是一种软件交换机,会占用一定的CPU(中央处理器,Central ProcessingUnit)和内存资源。特别是当吞吐量增大时,为保证转发质量,通常需要绑定多个CPU核,加大了企业的运行成本和能源消耗。而且,软件转发不可避免会面临性能上的瓶颈,难以满足越来越高的性能要求。在此前提下,以智能网卡(Smart NIC)为代表的硬件卸载加速技术(Hardware Offload)应运而生。
硬件卸载技术将OVS流表下发至智能网卡上,智能网卡上也相当于创建了一个虚拟交换机,其报文转发原理类似于kernel datapath。 OVS初始化的时候,会向智能网卡下发一条默认将报文送CPU处理的规则。智能网卡收到第一个报文,如果网络包匹配不了任何其他规则,则会匹配默认规则将报文上送Linux kernel的datapath。后续的报文处理就类似于上文所述的kernel datapath收到报文,所不同的是ovs-vswitchd生成相应的转发规则除了下发给kernel datapath外,还会下发至智能网卡硬件中,以后收到相同流的报文可以在智能网卡中直接按照转发规则进行转发。
在目前的实现中,智能网卡会对匹配转发规则(流表项)的报文进行计数,但不会在硬件中对流表项进行是否老化的判断。为节约资源,某个流表项如果在一定时间内没有被报文命中则需要老化掉。流表项是否老化是由OVS的ovs-vswitchd判断的,这就意味着ovs-vswitchd必须周期性地到智能网卡中读取流表项的命中计数,以决定流表项是否需要老化。OVS默认流表项老化时间为10秒,为了确保流表项不被老化,OVS需要在10秒时间内多次遍历系统中所有流表项(一般至少3次),按每条流表项到智能网卡中读取流表项相应的计数值。在大型数据中心,下发的流表项可能多达上百万条,意味着在3秒时间内必须把上百万条流表项都遍历一遍,周而复始地进行遍历,对于上层主机CPU、下层智能网卡都会带来巨大的负担。OVS频繁地访问智能网卡,并且要求智能网卡及时给予反馈,会严重影响智能网卡的性能。如果有100万条流表项,按照当前通用的实现,全部遍历一次需要与智能网卡交互100万次。
因此,如何在不影响网卡性能的前提下实现对其中流表项的老化检测是本领域技术人员需要解决的技术问题。
发明内容
本申请的目的在于提供一种网卡检测方法、装置及一种电子设备和一种计算机可读存储介质,在不影响网卡性能的前提下实现对其中流表项的老化检测。
为实现上述目的,本申请提供了一种网卡检测方法,应用于主机端,所述方法包括:
获取目标数据;其中,所述目标数据包括多个数据位,每个数据位用于表征网卡中对应的流表项在预设时间周期内是否存在流量匹配;
根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
其中,所述获取目标数据,包括:
向所述网卡发送检测命令,以便所述网卡根据各流表项在预设时间周期内是否存在流量匹配生成目标数据;
接收所述网卡响应的所述目标数据。
其中,所述网卡根据各流表项在预设时间周期内是否存在流量匹配生成目标数据,包括:
所述网卡依次判断各流表项在预设时间周期内是否存在流量匹配,若是,则将FPGA中对应的标志位设置为第一预设值,若否,则将FPGA(Field Programmable GateArray,现场可编程逻辑门阵列)中对应的标志位设置为第二预设值,并根据FPGA中各流表项对应的标志位的数值生成目标数据。
其中,向所述网卡发送检测命令,以便所述网卡根据各流表项在预设时间周期内是否存在流量匹配生成目标数据,包括:
以预设时间周期向所述网卡发送检测命令,并接收所述网卡返回的目标数据;其中,所述网卡预先将FPGA中所有流表项对应的标志位均初始化为第二预设值,当流量匹配到目标流表项时,所述网卡将FPGA中所述目标流表项对应的标志位设置为第一预设值,当所述网卡接收到所述检测命令时,根据FPGA中各流表项对应的标志位的数值生成目标数据,并将FPGA中所有流表项对应的标志位重新初始化为所述第二预设值。
其中,所述根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果,包括:
将所述目标数据中数值为所述第二预设值的数据位对应的流表项标记为老化流表项。
其中,将所述目标数据中数值为所述第二预设值的数据位对应的流表项标记为老化流表项之后,还包括:
将所述目标数据中数值为所述第一预设值的数据位对应的流表项标记为非老化流表项。
其中,所述第一预设值为0,所述第二预设值为1。
其中,所述根据所述目标数据对所述网卡中的多个所述流表项进行老化检测,包括:
判断所述目标数据的数值是否为0;
若否,则将所述目标数据中数值为1的数据位对应的流表项标记为老化流表项。
其中,所述判断所述目标数据的数值是否为0之后,还包括:
若所述目标数据的数值为0,则将所述目标数据中所有数据位对应的流表项均标记为非老化流表项。
其中,向所述网卡发送检测命令,以便所述网卡根据各流表项在预设时间周期内是否存在流量匹配生成目标数据,包括:
向所述网卡发送检测命令,以便所述网卡根据各流表项在预设时间周期内是否存在流量匹配生成多个目标数据;
相应的,接收所述网卡响应的所述目标数据,包括:
接收所述网卡响应的多个所述目标数据,并将多个所述目标数据存储至目标数组中。
其中,所述根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果,包括:
遍历所述目标数组中的多个所述目标数据,并根据遍历到的每个所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
其中,所述根据遍历到的每个所述目标数据确定所述网卡中的多个所述流表项的老化检测结果之后,还包括:
判断所述网卡中的所有流表项是否均完成老化检测;
若否,则重新进入向所述网卡发送检测命令的步骤。
为实现上述目的,本申请提供了一种网卡检测方法,应用于网卡,所述方法包括:
接收主机端的检测命令,根据各流表项在预设时间周期内是否存在流量匹配生成目标数据;其中,所述目标数据包括多个数据位,每个数据位用于表征网卡中对应的流表项在预设时间周期内是否存在流量匹配;
将所述目标数据发送至所述主机端,以便所述主机端根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
其中,所述根据各流表项在预设时间周期内是否存在流量匹配生成目标数据,包括:
依次判断各流表项在预设时间周期内是否存在流量匹配,若是,则将FPGA中对应的标志位设置为第一预设值,若否,则将FPGA中对应的标志位设置为第二预设值,并根据FPGA中各流表项对应的标志位的数值生成目标数据。
其中,所述接收主机端的检测命令,根据各流表项在预设时间周期内是否存在流量匹配生成目标数据,包括:
预先将FPGA中所有流表项对应的标志位均初始化为第二预设值,当流量匹配到目标流表项时,将FPGA中所述目标流表项对应的标志位设置为第一预设值;
接收到所述主机端以预设时间周期发送的检测命令时,根据FPGA中各流表项对应的标志位的数值生成目标数据,并将FPGA中所有流表项对应的标志位重新初始化为所述第二预设值。
其中,所述根据各流表项在预设时间周期内是否存在流量匹配生成目标数据,包括:
根据各流表项在预设时间周期内是否存在流量匹配生成多个目标数据;
相应的,将所述目标数据发送至所述主机端,以便所述主机端根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果,包括:
将多个所述目标数据发送至所述主机端,以便所述主机端将多个所述目标数据存储至目标数组中,遍历所述目标数组中的多个所述目标数据,并根据遍历到的每个所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
为实现上述目的,本申请提供了一种网卡检测装置,应用于主机端,所述装置包括:
获取模块,用于获取目标数据;其中,所述目标数据包括多个数据位,每个数据位用于表征网卡中对应的流表项在预设时间周期内是否存在流量匹配;
确定模块,用于根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
为实现上述目的,本申请提供了一种网卡检测装置,应用于网卡,所述装置包括:
生成模块,用于接收主机端的检测命令,根据各流表项在预设时间周期内是否存在流量匹配生成目标数据;其中,所述目标数据包括多个数据位,每个数据位用于表征网卡中对应的流表项在预设时间周期内是否存在流量匹配;
发送模块,用于将所述目标数据发送至所述主机端,以便所述主机端根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
为实现上述目的,本申请提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述网卡检测方法的步骤。
为实现上述目的,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述网卡检测方法的步骤。
通过以上方案可知,本申请提供的一种网卡检测方法,包括:获取目标数据;其中,所述目标数据包括多个数据位,每个数据位用于表征网卡中对应的流表项在预设时间周期内是否存在流量匹配;根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
本申请提供的网卡检测方法,在主机与网卡之间传递目标数据,目标数据中的每个数据位表征网卡中对应的流表项在预设时间周期内是否存在流量匹配,传递依次目标数据可以实现同时检测多个流表项的匹配情况,提高了流表项匹配情况的检测效率。当流表项数量非常多时,可以极大地减少主机与网卡之间通信的次数,减少网卡的资源消耗,提升了网卡的性能和稳定性。由此可见,本申请提供的网卡检测方法,在不影响网卡性能的前提下实现对其中流表项的老化检测。本申请还公开了一种网卡检测装置及一种电子设备和一种计算机可读存储介质,同样能实现上述技术效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1为根据一示例性实施例示出的一种网卡检测方法的流程图;
图2为根据一示例性实施例示出的另一种网卡检测方法的流程图;
图3为根据一示例性实施例示出的又一种网卡检测方法的流程图;
图4为在原实现中ovs-vswitchd与智能网卡硬件交互的示意图;
图5为在改进实现中ovs-vswitchd与智能网卡硬件交互的示意图;
图6为根据一示例性实施例示出的一种网卡检测装置的结构图;
图7为根据一示例性实施例示出的另一种网卡检测装置的结构图;
图8为根据一示例性实施例示出的一种电子设备的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。另外,在本申请实施例中,“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例公开了一种网卡检测方法,在不影响网卡性能的前提下实现对其中流表项的老化检测。
参见图1,根据一示例性实施例示出的一种网卡检测方法的流程图,如图1所示,包括:
S101:获取目标数据;其中,所述目标数据包括多个数据位,每个数据位用于表征网卡中对应的流表项在预设时间周期内是否存在流量匹配;
本实施例的执行主体为主机端,目的为检测网卡中的流表项是否老化。在本步骤中,主机与网卡之间传递目标数据,目标数据中的每个数据位表征网卡中对应的流表项在预设时间周期内是否存在流量匹配。
在具体实施中,向所述网卡发送检测命令,以便所述网卡根据各流表项在预设时间周期内是否存在流量匹配生成目标数据;接收所述网卡响应的所述目标数据。
作为一种可行的实施方式,所述网卡依次判断各流表项在预设时间周期内是否存在流量匹配,若是,则将FPGA中对应的标志位设置为第一预设值,若否,则将FPGA中对应的标志位设置为第二预设值,并根据FPGA中各流表项对应的标志位的数值生成目标数据。在具体实施中,智能网卡硬件FPGA实现中针对每个流表项新增一个标志位(hit flag),以记录在预设时间周期内是否有流量匹配。当主机询问网卡获取流表项的匹配情况时,网卡根据主机询问的流表项在FPGA中对应的标志位的数值生成目标数据,并返回主机。
作为另一种可行的实施方式,主机以预设时间周期向所述网卡发送检测命令,并接收所述网卡返回的目标数据;其中,所述网卡预先将FPGA中所有流表项对应的标志位均初始化为第二预设值,当流量匹配到目标流表项时,所述网卡将FPGA中所述目标流表项对应的标志位设置为第一预设值,当所述网卡接收到所述检测命令时,根据FPGA中各流表项对应的标志位的数值生成目标数据,并将FPGA中所有流表项对应的标志位重新初始化为所述第二预设值。
在具体实施中,智能网卡硬件FPGA实现中针对每个流表项新增一个标志位(hitflag),以记录在预设时间周期内是否有流量匹配。在流表项第一次下发硬件时,将FPGA中对应的标志位初始化为第二预设值,当有流量匹配上某一流表项时,将FPGA中该流表项对应的标志位设置为第一预设值。主机以预设时间周期询问网卡获取流表项的匹配情况,网卡一方面根据主机询问的流表项在FPGA中对应的标志位的数值生成目标数据返回主机,另一方面将FPGA中所有流表项对应的标志位重新初始化为第二预设值。
优选的,所述第一预设值为0,所述第二预设值为1。
S102:根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
在具体实施中,将所述目标数据中数值为所述第二预设值的数据位对应的流表项标记为老化流表项,将所述目标数据中数值为所述第一预设值的数据位对应的流表项标记为非老化流表项。
在第一预设值为0、第二预设值为1的情况下,判断所述目标数据的数值是否为0;若否,则将所述目标数据中数值为1的数据位对应的流表项标记为老化流表项,若所述目标数据的数值为0,则将所述目标数据中所有数据位对应的流表项均标记为非老化流表项。
本申请实施例提供的网卡检测方法,在主机与网卡之间传递目标数据,目标数据中的每个数据位表征网卡中对应的流表项在预设时间周期内是否存在流量匹配,传递依次目标数据可以实现同时检测多个流表项的匹配情况,提高了流表项匹配情况的检测效率。当流表项数量非常多时,可以极大地减少主机与网卡之间通信的次数,减少网卡的资源消耗,提升了网卡的性能和稳定性。由此可见,本申请实施例提供的网卡检测方法,在不影响网卡性能的前提下实现对其中流表项的老化检测。
本申请实施例公开了一种网卡检测方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:
参见图2,根据一示例性实施例示出的另一种网卡检测方法的流程图,如图2所示,包括:
S201:向所述网卡发送检测命令,以便所述网卡根据各流表项在预设时间周期内是否存在流量匹配生成多个目标数据;
本实施例的执行主体为主机,目的为检测网卡中的流表项是否老化。在本步骤中,主机与网卡之间传递目标数据,目标数据中的每个数据位表征网卡中对应的流表项在预设时间周期内是否存在流量匹配。
在具体实施中,向所述网卡发送检测命令,以便所述网卡根据各流表项在预设时间周期内是否存在流量匹配生成目标数据;接收所述网卡响应的所述目标数据。
作为一种可行的实施方式,所述网卡依次判断各流表项在预设时间周期内是否存在流量匹配,若是,则将FPGA中对应的标志位设置为第一预设值,若否,则将FPGA中对应的标志位设置为第二预设值,并根据FPGA中各流表项对应的标志位的数值生成目标数据。在具体实施中,智能网卡硬件FPGA实现中针对每个流表项新增一个标志位(hit flag),以记录在预设时间周期内是否有流量匹配。当主机询问网卡获取流表项的匹配情况时,网卡根据主机询问的流表项在FPGA中对应的标志位的数值生成目标数据,并返回主机。
作为另一种可行的实施方式,主机以预设时间周期向所述网卡发送检测命令,并接收所述网卡返回的目标数据;其中,所述网卡预先将FPGA中所有流表项对应的标志位均初始化为第二预设值,当流量匹配到目标流表项时,所述网卡将FPGA中所述目标流表项对应的标志位设置为第一预设值,当所述网卡接收到所述检测命令时,根据FPGA中各流表项对应的标志位的数值生成目标数据,并将FPGA中所有流表项对应的标志位重新初始化为所述第二预设值。
在具体实施中,智能网卡硬件FPGA实现中针对每个流表项新增一个标志位(hitflag),以记录在预设时间周期内是否有流量匹配。在流表项第一次下发硬件时,将FPGA中对应的标志位初始化为第二预设值,当有流量匹配上某一流表项时,将FPGA中该流表项对应的标志位设置为第一预设值。主机以预设时间周期询问网卡获取流表项的匹配情况,网卡一方面根据主机询问的流表项在FPGA中对应的标志位的数值生成目标数据返回主机,另一方面将FPGA中所有流表项对应的标志位重新初始化为第二预设值。
优选的,所述第一预设值为0,所述第二预设值为1。
S202:接收所述网卡响应的多个所述目标数据,并将多个所述目标数据存储至目标数组中。
S203:遍历所述目标数组中的多个所述目标数据,并根据遍历到的每个所述目标数据确定所述网卡中的多个所述流表项的老化检测结果;
S204:判断所述网卡中的所有流表项是否均完成老化检测;若是,则结束流程;若否,则重新进入步骤S201。
可以理解的是,主机与网卡之间的交互的目标数据包含的数据位存在一定的限制,主机与网卡之间的一次交互传递的目标数据的数量也存在一定的限制。例如,目标数据包含32个数据位,主机与网卡之间的一次交互可以传递128个目标数据。若网卡中包含的流表项的数量较多,则主机需要与网卡进行多次交互,多次传递目标数据,实现网卡中所有流表项的老化检测。
在本实施例中,主机将一次交互接收到的多个目标数据存储至目标数组中,遍历目标数组中的多个目标数据,并根据遍历到的每个目标数据确定多个流表项的老化检测结果。在具体实施中,将所述目标数据中数值为所述第二预设值的数据位对应的流表项标记为老化流表项,将所述目标数据中数值为所述第一预设值的数据位对应的流表项标记为非老化流表项。在第一预设值为0、第二预设值为1的情况下,判断所述目标数据的数值是否为0;若否,则将所述目标数据中数值为1的数据位对应的流表项标记为老化流表项,若所述目标数据的数值为0,则将所述目标数据中所有数据位对应的流表项均标记为非老化流表项。
然后再进行下一次交互,继续进行后续多个流表项的老化检测,直至得到网卡中所有流表项的老化检测结果。
本申请实施例提供的网卡检测方法,在主机与网卡之间传递目标数据,目标数据中的每个数据位表征网卡中对应的流表项在预设时间周期内是否存在流量匹配,传递依次目标数据可以实现同时检测多个流表项的匹配情况,提高了流表项匹配情况的检测效率。当流表项数量非常多时,可以极大地减少主机与网卡之间通信的次数,减少网卡的资源消耗,提升了网卡的性能和稳定性。由此可见,本申请实施例提供的网卡检测方法,在不影响网卡性能的前提下实现对其中流表项的老化检测。
本申请实施例公开了一种网卡检测方法,在不影响网卡性能的前提下实现对其中流表项的老化检测。
参见图3,根据一示例性实施例示出的又一种网卡检测方法的流程图,如图3所示,包括:
S301:接收主机端的检测命令,根据各流表项在预设时间周期内是否存在流量匹配生成目标数据;其中,所述目标数据包括多个数据位,每个数据位用于表征网卡中对应的流表项在预设时间周期内是否存在流量匹配;
S302:将所述目标数据发送至所述主机端,以便所述主机端根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
本实施例的执行主体为网卡,当接收到主机端的检测命令时,根据各流表项在预设时间周期内是否存在流量匹配生成目标数据,其中的每个数据位用于表征网卡中对应的流表项在预设时间周期内是否存在流量匹配。
作为一种可行的实施方式,所述根据各流表项在预设时间周期内是否存在流量匹配生成目标数据,包括:依次判断各流表项在预设时间周期内是否存在流量匹配,若是,则将FPGA中对应的标志位设置为第一预设值,若否,则将FPGA中对应的标志位设置为第二预设值,并根据FPGA中各流表项对应的标志位的数值生成目标数据。在具体实施中,智能网卡硬件FPGA实现中针对每个流表项新增一个标志位(hit flag),以记录在预设时间周期内是否有流量匹配。当主机询问网卡获取流表项的匹配情况时,网卡根据主机询问的流表项在FPGA中对应的标志位的数值生成目标数据,并返回主机。
作为另一种可行的实施方式,所述接收主机端的检测命令,根据各流表项在预设时间周期内是否存在流量匹配生成目标数据,包括:预先将FPGA中所有流表项对应的标志位均初始化为第二预设值,当流量匹配到目标流表项时,将FPGA中所述目标流表项对应的标志位设置为第一预设值;接收到所述主机端以预设时间周期发送的检测命令时,根据FPGA中各流表项对应的标志位的数值生成目标数据,并将FPGA中所有流表项对应的标志位重新初始化为所述第二预设值。
在具体实施中,智能网卡硬件FPGA实现中针对每个流表项新增一个标志位(hitflag),以记录在预设时间周期内是否有流量匹配。在流表项第一次下发硬件时,将FPGA中对应的标志位初始化为第二预设值,当有流量匹配上某一流表项时,将FPGA中该流表项对应的标志位设置为第一预设值。主机以预设时间周期询问网卡获取流表项的匹配情况,网卡一方面根据主机询问的流表项在FPGA中对应的标志位的数值生成目标数据返回主机,另一方面将FPGA中所有流表项对应的标志位重新初始化为第二预设值。
优选的,所述第一预设值为0,所述第二预设值为1。
在上述实施例的基础上,作为一种优选实施方式,所述根据各流表项在预设时间周期内是否存在流量匹配生成目标数据,包括:根据各流表项在预设时间周期内是否存在流量匹配生成多个目标数据;相应的,将所述目标数据发送至所述主机端,以便所述主机端根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果,包括:将多个所述目标数据发送至所述主机端,以便所述主机端将多个所述目标数据存储至目标数组中,遍历所述目标数组中的多个所述目标数据,并根据遍历到的每个所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
在具体实施中,若网卡中包含的流表项的数量较多,则主机需要与网卡进行多次交互,多次传递目标数据,实现网卡中所有流表项的老化检测。主机将一次交互接收到的多个目标数据存储至目标数组中,遍历目标数组中的多个目标数据,并根据遍历到的每个目标数据确定多个流表项的老化检测结果。
本申请实施例提供的网卡检测方法,在主机与网卡之间传递目标数据,目标数据中的每个数据位表征网卡中对应的流表项在预设时间周期内是否存在流量匹配,传递依次目标数据可以实现同时检测多个流表项的匹配情况,提高了流表项匹配情况的检测效率。当流表项数量非常多时,可以极大地减少主机与网卡之间通信的次数,减少网卡的资源消耗,提升了网卡的性能和稳定性。由此可见,本申请实施例提供的网卡检测方法,在不影响网卡性能的前提下实现对其中流表项的老化检测。
下面介绍本申请提供的一种应用实施例,ovs-vswitchd(虚拟交换机)与智能网卡硬件进行交互,在原实现中,如图4所示,智能网卡针对每个流表会记录其所匹配流量的字节数(byte count)、报文数(packet count)。OVS周期性询问硬件获取某流表的统计值(getcount),硬件返回当前流表的字节数(byte count)、报文数(packet count),OVS将当前结果与上次获取的结果进行比较,如果没有变化,则认为此周期内没有流量hit上此流表项,则需要针对此流表项进行老化计算;如果结果有变化,则认为此周期内有流量hit上此流表项,则不需要针对此流表项进行老化计算。
在改进实现中,如图5所示,智能网卡仍然可以兼容原来的获取流表所匹配流量的字节数(byte count)、报文数(packet count),以适配OVS显示流表项对应流量统计值的需求。智能网卡硬件FPGA实现中针对每个流表项需要新增一个hit flag(匹配标志),以记录在本周期内是否有流量匹配本流表项。在流表项第一次下发硬件时,该hit flag初始化为0,当有流量匹配上此流表项时,将hit flag置1。当OVS周期性询问硬件获取某流表的匹配情况时(hit check),硬件FPGA实现一方面将当前hit flag返给OVS,同时将hit flag置0。FPGA返给OVS的是128个U32数据(共4096个bit),FPGA需要根据流表id设置其对应的128个数据中特定U32数据的特定bit位。OVS检查FPGA返回的hit flag值,如为0,则认为此周期内没有流量hit上此流表项,需要针对此流表项进行老化计算;如果为1,则认为此周期内有流量hit上此流表项,不需要针对此流表项进行老化计算。可见,在改进实现中,一次交互可以查询4K个流表项,这样可以有效减少主机与智能网卡之间交互的次数。在ovs-vswitchd判断流表项是否老化时,并不需要关心流表项匹配的精确报文数量,而只需要知道本时间段内是否有流量匹配,即智能网卡只需要返回0(匹配)或者1(未匹配)即可。
使用bitmap来标记流表项是否有报文匹配上。一个U32的数字有32个bit,每个bit可以代表一个流表项,智能网卡一次可以返回128个U32数字,即一次返回4096(128*32)个流表项匹配结果。ovs-vswitchd与智能网卡交互256次,就可以查询1048576(256*4096)个流表项,即原来100万次查询,现在只需256次即可。
新的ovs-vswitchd与智能网卡交互方式步骤如下:
步骤1:开始循环A(循环次数256);
步骤2:在循环A中,向智能网卡发送请求,请求从base位置起4K个flag(128*32)(base位置从0开始,每循环一次base位置后移4K)。接收智能网卡的回应, 结果保存在一个类型为U32、长度为128的数组C中;
步骤3:开始循环B(循环次数128,依次对数组C中的128个成员进行遍历);
步骤4:在循环B中,当前数值为0,说明32个bit都为0,无需处理;如果当前数值不为0,判断32个bit中哪些不为0,对于不为0的bit位,计算出当前bit对应的流表项序号并且设置该流表项的老化标记;
步骤5:循环B结束。
步骤6:base位置后移4K;
步骤7:循环A结束。
由此可见,使用bitmap来标识流表项是否被报文hit上,可以极大地减少主机与智能网卡之间通信的次数(从100万次减少到256次),从而减少了智能网卡的资源消耗,大大提升智能网卡的性能和稳定性,能给用户带来更好的使用体验。
下面对本申请实施例提供的一种网卡检测装置进行介绍,本实施例的执行主体为主机,下文描述的一种网卡检测装置与上文描述的一种网卡检测方法可以相互参照。
参见图6,根据一示例性实施例示出的一种网卡检测装置的结构图,如图6所示,包括:
获取模块601,用于获取目标数据;其中,所述目标数据包括多个数据位,每个数据位用于表征网卡中对应的流表项在预设时间周期内是否存在流量匹配;
确定模块602,用于根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
本申请实施例提供的网卡检测装置,在主机与网卡之间传递目标数据,目标数据中的每个数据位表征网卡中对应的流表项在预设时间周期内是否存在流量匹配,传递依次目标数据可以实现同时检测多个流表项的匹配情况,提高了流表项匹配情况的检测效率。当流表项数量非常多时,可以极大地减少主机与网卡之间通信的次数,减少网卡的资源消耗,提升了网卡的性能和稳定性。由此可见,本申请实施例提供的网卡检测装置,在不影响网卡性能的前提下实现对其中流表项的老化检测。
在上述实施例的基础上,作为一种优选实施方式,所述获取模块601具体用于:向所述网卡发送检测命令,以便所述网卡根据各流表项在预设时间周期内是否存在流量匹配生成目标数据;接收所述网卡响应的所述目标数据。
在上述实施例的基础上,作为一种优选实施方式,所述获取模块601具体用于:向所述网卡发送检测命令,以便所述网卡依次判断各流表项在预设时间周期内是否存在流量匹配,若是,则将FPGA中对应的标志位设置为第一预设值,若否,则将FPGA中对应的标志位设置为第二预设值,并根据FPGA中各流表项对应的标志位的数值生成目标数据。
在上述实施例的基础上,作为一种优选实施方式,所述获取模块601具体用于:以预设时间周期向所述网卡发送检测命令,并接收所述网卡返回的目标数据;其中,所述网卡预先将FPGA中所有流表项对应的标志位均初始化为第二预设值,当流量匹配到目标流表项时,所述网卡将FPGA中所述目标流表项对应的标志位设置为第一预设值,当所述网卡接收到所述检测命令时,根据FPGA中各流表项对应的标志位的数值生成目标数据,并将FPGA中所有流表项对应的标志位重新初始化为所述第二预设值。
在上述实施例的基础上,作为一种优选实施方式,所述确定模块602具体用于:将所述目标数据中数值为所述第二预设值的数据位对应的流表项标记为老化流表项。
在上述实施例的基础上,作为一种优选实施方式,所述确定模块602还用于:将所述目标数据中数值为所述第一预设值的数据位对应的流表项标记为非老化流表项。
在上述实施例的基础上,作为一种优选实施方式,所述第一预设值为0,所述第二预设值为1。
在上述实施例的基础上,作为一种优选实施方式,所述确定模块602具体用于:判断所述目标数据的数值是否为0;若否,则将所述目标数据中数值为1的数据位对应的流表项标记为老化流表项。
在上述实施例的基础上,作为一种优选实施方式,所述确定模块602还用于:若所述目标数据的数值为0,则将所述目标数据中所有数据位对应的流表项均标记为非老化流表项。
在上述实施例的基础上,作为一种优选实施方式,所述获取模块601具体用于:向所述网卡发送检测命令,以便所述网卡根据各流表项在预设时间周期内是否存在流量匹配生成多个目标数据;接收所述网卡响应的多个所述目标数据,并将多个所述目标数据存储至目标数组中。
在上述实施例的基础上,作为一种优选实施方式,所述确定模块602具体用于:遍历所述目标数组中的多个所述目标数据,并根据遍历到的每个所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
在上述实施例的基础上,作为一种优选实施方式,所述确定模块602还用于:判断所述网卡中的所有流表项是否均完成老化检测;若否,则重新启动所述获取模块601的工作流程。
下面对本申请实施例提供的一种网卡检测装置进行介绍,本实施例的执行主体为网卡,下文描述的一种网卡检测装置与上文描述的一种网卡检测方法可以相互参照。
参见图7,根据一示例性实施例示出的另一种网卡检测装置的结构图,如图7所示,包括:
生成模块701,用于接收主机端的检测命令,根据各流表项在预设时间周期内是否存在流量匹配生成目标数据;其中,所述目标数据包括多个数据位,每个数据位用于表征网卡中对应的流表项在预设时间周期内是否存在流量匹配;
发送模块702,用于将所述目标数据发送至所述主机端,以便所述主机端根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
本申请实施例提供的网卡检测装置,在主机与网卡之间传递目标数据,目标数据中的每个数据位表征网卡中对应的流表项在预设时间周期内是否存在流量匹配,传递依次目标数据可以实现同时检测多个流表项的匹配情况,提高了流表项匹配情况的检测效率。当流表项数量非常多时,可以极大地减少主机与网卡之间通信的次数,减少网卡的资源消耗,提升了网卡的性能和稳定性。由此可见,本申请实施例提供的网卡检测装置,在不影响网卡性能的前提下实现对其中流表项的老化检测。
在上述实施例的基础上,作为一种优选实施方式,所述生成模块701具体用于:接收主机端的检测命令,依次判断各流表项在预设时间周期内是否存在流量匹配,若是,则将FPGA中对应的标志位设置为第一预设值,若否,则将FPGA中对应的标志位设置为第二预设值,并根据FPGA中各流表项对应的标志位的数值生成目标数据。
在上述实施例的基础上,作为一种优选实施方式,所述生成模块701具体用于:预先将FPGA中所有流表项对应的标志位均初始化为第二预设值,当流量匹配到目标流表项时,将FPGA中所述目标流表项对应的标志位设置为第一预设值;接收到所述主机端以预设时间周期发送的检测命令时,根据FPGA中各流表项对应的标志位的数值生成目标数据,并将FPGA中所有流表项对应的标志位重新初始化为所述第二预设值。
在上述实施例的基础上,作为一种优选实施方式,所述生成模块701具体用于:接收主机端的检测命令,根据各流表项在预设时间周期内是否存在流量匹配生成多个目标数据;
相应的,所述发送模块702具体用于:将多个所述目标数据发送至所述主机端,以便所述主机端将多个所述目标数据存储至目标数组中,遍历所述目标数组中的多个所述目标数据,并根据遍历到的每个所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
基于上述程序模块的硬件实现,且为了实现本申请实施例的方法,本申请实施例还提供了一种电子设备,图8为根据一示例性实施例示出的一种电子设备的结构图,如图8所示,电子设备包括:
通信接口1,能够与其它设备比如网络设备等进行信息交互;
处理器2,与通信接口1连接,以实现与其它设备进行信息交互,用于运行计算机程序时,执行上述一个或多个技术方案提供的网卡检测方法。而所述计算机程序存储在存储器3上。
当然,实际应用时,电子设备中的各个组件通过总线系统4耦合在一起。可理解,总线系统4用于实现这些组件之间的连接通信。总线系统4除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图8中将各种总线都标为总线系统4。
本申请实施例中的存储器3用于存储各种类型的数据以支持电子设备的操作。这些数据的示例包括:用于在电子设备上操作的任何计算机程序。
可以理解,存储器3可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,ferromagnetic random access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random AccessMemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,SynchronousDynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本申请实施例描述的存储器3旨在包括但不限于这些和任意其它适合类型的存储器。
上述本申请实施例揭示的方法可以应用于处理器2中,或者由处理器2实现。处理器2可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器2中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器2可以是通用处理器、DSP,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器2可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器3,处理器2读取存储器3中的程序,结合其硬件完成前述方法的步骤。
处理器2执行所述程序时实现本申请实施例的各个方法中的相应流程,为了简洁,在此不再赘述。
在示例性实施例中,本申请实施例还提供了一种存储介质,即计算机存储介质,具体为计算机可读存储介质,例如包括存储计算机程序的存储器3,上述计算机程序可由处理器2执行,以完成前述方法所述步骤。计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、Flash Memory、磁表面存储器、光盘、或CD-ROM等存储器。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (20)

1.一种网卡检测方法,其特征在于,应用于主机端,所述方法包括:
获取目标数据;其中,所述目标数据包括多个数据位,每个数据位用于表征网卡中对应的流表项在预设时间周期内是否存在流量匹配;
根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
2.根据权利要求1所述网卡检测方法,其特征在于,所述获取目标数据,包括:
向所述网卡发送检测命令,以便所述网卡根据各流表项在预设时间周期内是否存在流量匹配生成目标数据;
接收所述网卡响应的所述目标数据。
3.根据权利要求2所述网卡检测方法,其特征在于,所述网卡根据各流表项在预设时间周期内是否存在流量匹配生成目标数据,包括:
所述网卡依次判断各流表项在预设时间周期内是否存在流量匹配,若是,则将FPGA中对应的标志位设置为第一预设值,若否,则将FPGA中对应的标志位设置为第二预设值,并根据FPGA中各流表项对应的标志位的数值生成目标数据。
4.根据权利要求2所述网卡检测方法,其特征在于,向所述网卡发送检测命令,以便所述网卡根据各流表项在预设时间周期内是否存在流量匹配生成目标数据,包括:
以预设时间周期向所述网卡发送检测命令,并接收所述网卡返回的目标数据;其中,所述网卡预先将FPGA中所有流表项对应的标志位均初始化为第二预设值,当流量匹配到目标流表项时,所述网卡将FPGA中所述目标流表项对应的标志位设置为第一预设值,当所述网卡接收到所述检测命令时,根据FPGA中各流表项对应的标志位的数值生成目标数据,并将FPGA中所有流表项对应的标志位重新初始化为所述第二预设值。
5.根据权利要求3或4所述网卡检测方法,其特征在于,所述根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果,包括:
将所述目标数据中数值为所述第二预设值的数据位对应的流表项标记为老化流表项。
6.根据权利要求5所述网卡检测方法,其特征在于,将所述目标数据中数值为所述第二预设值的数据位对应的流表项标记为老化流表项之后,还包括:
将所述目标数据中数值为所述第一预设值的数据位对应的流表项标记为非老化流表项。
7.根据权利要求3或4所述网卡检测方法,其特征在于,所述第一预设值为0,所述第二预设值为1。
8.根据权利要求7所述网卡检测方法,其特征在于,所述根据所述目标数据对所述网卡中的多个所述流表项进行老化检测,包括:
判断所述目标数据的数值是否为0;
若否,则将所述目标数据中数值为1的数据位对应的流表项标记为老化流表项。
9.根据权利要求8所述网卡检测方法,其特征在于,所述判断所述目标数据的数值是否为0之后,还包括:
若所述目标数据的数值为0,则将所述目标数据中所有数据位对应的流表项均标记为非老化流表项。
10.根据权利要求2所述网卡检测方法,其特征在于,向所述网卡发送检测命令,以便所述网卡根据各流表项在预设时间周期内是否存在流量匹配生成目标数据,包括:
向所述网卡发送检测命令,以便所述网卡根据各流表项在预设时间周期内是否存在流量匹配生成多个目标数据;
相应的,接收所述网卡响应的所述目标数据,包括:
接收所述网卡响应的多个所述目标数据,并将多个所述目标数据存储至目标数组中。
11.根据权利要求10所述网卡检测方法,其特征在于,所述根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果,包括:
遍历所述目标数组中的多个所述目标数据,并根据遍历到的每个所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
12.根据权利要求11所述网卡检测方法,其特征在于,所述根据遍历到的每个所述目标数据确定所述网卡中的多个所述流表项的老化检测结果之后,还包括:
判断所述网卡中的所有流表项是否均完成老化检测;
若否,则重新进入向所述网卡发送检测命令的步骤。
13.一种网卡检测方法,其特征在于,应用于网卡,所述方法包括:
接收主机端的检测命令,根据各流表项在预设时间周期内是否存在流量匹配生成目标数据;其中,所述目标数据包括多个数据位,每个数据位用于表征网卡中对应的流表项在预设时间周期内是否存在流量匹配;
将所述目标数据发送至所述主机端,以便所述主机端根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
14.根据权利要求13所述网卡检测方法,其特征在于,所述根据各流表项在预设时间周期内是否存在流量匹配生成目标数据,包括:
依次判断各流表项在预设时间周期内是否存在流量匹配,若是,则将FPGA中对应的标志位设置为第一预设值,若否,则将FPGA中对应的标志位设置为第二预设值,并根据FPGA中各流表项对应的标志位的数值生成目标数据。
15.根据权利要求13所述网卡检测方法,其特征在于,所述接收主机端的检测命令,根据各流表项在预设时间周期内是否存在流量匹配生成目标数据,包括:
预先将FPGA中所有流表项对应的标志位均初始化为第二预设值,当流量匹配到目标流表项时,将FPGA中所述目标流表项对应的标志位设置为第一预设值;
接收到所述主机端以预设时间周期发送的检测命令时,根据FPGA中各流表项对应的标志位的数值生成目标数据,并将FPGA中所有流表项对应的标志位重新初始化为所述第二预设值。
16.根据权利要求13所述网卡检测方法,其特征在于,所述根据各流表项在预设时间周期内是否存在流量匹配生成目标数据,包括:
根据各流表项在预设时间周期内是否存在流量匹配生成多个目标数据;
相应的,将所述目标数据发送至所述主机端,以便所述主机端根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果,包括:
将多个所述目标数据发送至所述主机端,以便所述主机端将多个所述目标数据存储至目标数组中,遍历所述目标数组中的多个所述目标数据,并根据遍历到的每个所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
17.一种网卡检测装置,其特征在于,应用于主机端,所述装置包括:
获取模块,用于获取目标数据;其中,所述目标数据包括多个数据位,每个数据位用于表征网卡中对应的流表项在预设时间周期内是否存在流量匹配;
确定模块,用于根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
18.一种网卡检测装置,其特征在于,应用于网卡,所述装置包括:
生成模块,用于接收主机端的检测命令,根据各流表项在预设时间周期内是否存在流量匹配生成目标数据;其中,所述目标数据包括多个数据位,每个数据位用于表征网卡中对应的流表项在预设时间周期内是否存在流量匹配;
发送模块,用于将所述目标数据发送至所述主机端,以便所述主机端根据所述目标数据确定所述网卡中的多个所述流表项的老化检测结果。
19.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至16任一项所述网卡检测方法的步骤。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至16任一项所述网卡检测方法的步骤。
CN202310318128.1A 2023-03-29 2023-03-29 一种网卡检测方法、装置及电子设备和存储介质 Pending CN116016258A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310318128.1A CN116016258A (zh) 2023-03-29 2023-03-29 一种网卡检测方法、装置及电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310318128.1A CN116016258A (zh) 2023-03-29 2023-03-29 一种网卡检测方法、装置及电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN116016258A true CN116016258A (zh) 2023-04-25

Family

ID=86028382

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310318128.1A Pending CN116016258A (zh) 2023-03-29 2023-03-29 一种网卡检测方法、装置及电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN116016258A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101241513A (zh) * 2008-03-19 2008-08-13 杭州华三通信技术有限公司 一种维护表项的方法和装置
US20200314011A1 (en) * 2020-06-16 2020-10-01 Manasi Deval Flexible scheme for adding rules to a nic pipeline
CN113949658A (zh) * 2021-10-25 2022-01-18 迈普通信技术股份有限公司 表项处理方法、系统、装置、电子设备及存储介质
CN114915587A (zh) * 2022-05-10 2022-08-16 深圳星云智联科技有限公司 流表老化管理方法及相关设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101241513A (zh) * 2008-03-19 2008-08-13 杭州华三通信技术有限公司 一种维护表项的方法和装置
US20200314011A1 (en) * 2020-06-16 2020-10-01 Manasi Deval Flexible scheme for adding rules to a nic pipeline
CN113949658A (zh) * 2021-10-25 2022-01-18 迈普通信技术股份有限公司 表项处理方法、系统、装置、电子设备及存储介质
CN114915587A (zh) * 2022-05-10 2022-08-16 深圳星云智联科技有限公司 流表老化管理方法及相关设备

Similar Documents

Publication Publication Date Title
KR101662685B1 (ko) 심층 패킷 검사 방법 및 기기, 그리고 코프로세서
US7702796B2 (en) Recovering a pool of connections
US20130238792A1 (en) Apparatus and method for analyzing a network
US8312128B2 (en) Identification of management information base object identifiers supported by a managed device
CN113746749A (zh) 网络连接设备
CN112118167B (zh) 一种跨网隧道数据快速传输方法
US10289384B2 (en) Methods, systems, and computer readable media for processing data containing type-length-value (TLV) elements
US7653070B2 (en) Method and system for supporting efficient and cache-friendly TCP session lookup operations based on canonicalization tags
CN1953418A (zh) 处理信息分组的方法和使用该方法的电信设备
CN116016258A (zh) 一种网卡检测方法、装置及电子设备和存储介质
CN114422437B (zh) 一种异构报文的转发方法及装置
CN114979028B (zh) 一种数据包处理方法、装置以及存储介质
CN111404705B (zh) 一种sdn的优化方法、装置及计算机可读存储介质
CN114071448B (zh) 一种数据传输方法、相关网络节点和存储介质
CN113132273B (zh) 一种数据转发方法及装置
US7159019B2 (en) Information collection apparatus and method
CN111865794B (zh) 一种逻辑端口的关联方法、系统、设备及数据传输系统
CN112181670B (zh) 进程间通讯方法及装置和Linux设备
CN117955907B (zh) 报文处理方法、虚拟交换机、装置和存储介质
CN115996203B (zh) 网络流量分域方法、装置、设备和存储介质
US10067816B2 (en) Model checking apparatus and method, and storage medium having program stored therein
CN114979236B (zh) 数据传输方法、装置、存储介质以及电子设备
CN113132233B (zh) 数据处理方法、软件定义网络控制器和数据处理系统
CN105791125B (zh) 一种三态内容寻址存储器中写数据的方法和装置
CN118034579A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20230425