CN116208554A - 一种基于fpga的流表处理方法、装置、设备以及存储介质 - Google Patents
一种基于fpga的流表处理方法、装置、设备以及存储介质 Download PDFInfo
- Publication number
- CN116208554A CN116208554A CN202310211774.8A CN202310211774A CN116208554A CN 116208554 A CN116208554 A CN 116208554A CN 202310211774 A CN202310211774 A CN 202310211774A CN 116208554 A CN116208554 A CN 116208554A
- Authority
- CN
- China
- Prior art keywords
- flow table
- data packet
- fpga
- hash
- hash 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims description 19
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 76
- 238000000034 method Methods 0.000 claims abstract description 44
- 238000012545 processing Methods 0.000 claims abstract description 41
- 238000004364 calculation method Methods 0.000 claims description 40
- 238000004590 computer program Methods 0.000 claims description 16
- 230000032683 aging Effects 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 12
- 238000004891 communication Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 6
- 230000004044 response Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- 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
- H04L45/7453—Address table lookup; Address filtering using hashing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于FPGA的流表处理方法、装置、设备以及存储介质。由现场可编程门阵列FPGA器件执行,该方法包括:响应于通过外部接口输入的以太网报文,确定以太网报文中的查找数据包和新建数据包;基于预设的哈希算法,根据查找数据包和新建数据包中的五元组信息,在FPGA存储空间中进行流表更新操作和流表新建操作;在检测到所述以太网报文中的查找数据包和新建数据包均处理完毕后,对所述以太网报文进行整合输出。本发明的技术方案,可以基于FPGA器件,实现更全面有效的流表管理,提高以太网报文的处理效率。
Description
技术领域
本发明涉及通信领域,尤其涉及一种基于FPGA的流表处理方法、装置、设备以及存储介质。
背景技术
以太网报文是以数据包为单位进行传输的,对网络报文中的数据包进行流表管理可以有效地提高网络数据包的传输效率。
随着通信技术的不断发展,如何对基于FPGA器件进行全面有效的流表管理,提高以太网报文中数据包的处理效率,是目前亟待解决的问题。
发明内容
本发明提供了一种基于FPGA的流表处理方法、装置、设备以及存储介质,以实现更全面有效的流表管理,提高以太网报文的处理效率。
根据本发明的一方面,提供了一种基于FPGA的流表处理方法,由现场可编程门阵列FPGA器件执行,所述方法包括:
响应于通过外部接口输入的以太网报文,确定所述以太网报文中的查找数据包和新建数据包;
基于预设的哈希算法,根据查找数据包和新建数据包中的五元组信息,在FPGA的存储空间中进行流表更新操作和流表新建操作;
在检测到所述以太网报文中的查找数据包和新建数据包均处理完毕后,对所述以太网报文进行整合输出。
可选的,基于预设的哈希算法,根据查找数据包的五元组信息,在FPGA的存储空间中进行流表更新操作,包括:
基于预设的哈希算法,对查找数据包的五元组信息进行哈希计算,并根据计算结果和预存哈希表,确定FPGA的存储空间中是否存在所述查找数据包;
若否,则确定所述查找数据包的流表ID,并对FPGA的存储空间中的流表进行更新操作。
上述技术方案通过对查找数据包的五元组信息进行哈希计算,从而根据哈希计算结果和预存哈希表来确定查找数据包是否已存在于FPGA的存储空间中,可以快速准确地确定出查找数据包是否已存储,通过在确定其不存在的情况下,基于流表ID进行更新操作,可以进行流表的及时更新,实现流表的实时管理。
可选的,基于预设的哈希算法,对查找数据包的五元组信息进行哈希计算,并根据计算结果和预存哈希表,确定FPGA的存储空间中是否存在所述查找数据包,包括:
基于预设的第一哈希算法和第二哈希算法,分别对查找数据包的五元组信息进行哈希计算,确定第一哈希值和第二哈希值;
根据第一哈希值,在预存哈希表中进行查找,确定对应的预存哈希值,并确定预存的哈希值与第二哈希值是否一致;
若否,则确定FPGA的存储空间中不存在所述查找数据包。
上述技术方案通过两种哈希算法,分别对查找数据包的五元组信息进行哈希计算,从而根据第一哈希值和第二哈希值的关系,确定查找数据包是否已存在于FPGA的存储空间中,给出了利用哈希算法确认查找数据包是否已存储的一种可实施方式,有助于提高后续流表管理操作的效率。
可选的,确定预存的哈希值与第二哈希值是否一致之后,还包括:
若预存的哈希值与第二哈希值一致,则根据第一哈希值,在预存哈希表中进行查找,确定第一流表ID,并以第一流表ID为地址,在FPGA的存储空间中进行查找,确定对应的预存五元组信息;
确定所述预存五元组信息与查找数据包的五元组信息是否一致,若否,则确定FPGA的存储空间中不存在所述查找数据包。
上述技术方案通过在确定预存哈希值和第二哈希值一致的情况下,进一步确定查找数据包的第一流表ID,确定出预存的五元组信息,可以准确确定出查找数据包指定的流表ID处已预存的五元组信息,通过判断预存五元组信息和查找数据包的五元组信息的一致性,可以进一步细致的确定出查找数据包是否已存在于FPGA的存储空间中,保证报文处理的准确性。
可选的,基于预设的哈希算法,根据新建数据包的五元组信息,在FPGA的存储空间中进行流表新建操作,包括:
向ID管理模块申请并确定第二流表ID;
基于预设的第一哈希算法和第二哈希算法,对新建数据包对应的五元组信息进行哈希计算,确定第三哈希值和第四哈希值;
根据第三哈希值、第四哈希值以及第二流表ID,对预存哈希表进行更新,并在FPGA的存储空间中新建流表ID为第二流表ID的流表。
上述技术方案通过向ID管理模块申请并确定第二流表ID,进一步基于两种哈希算法,确定新建数据包五元组信息的第三哈希值和第四哈希值,从而可以对预存哈希表进行及时的更新,并在新申请的第二流表ID处新建流表,完成流表新建操作,实现流表的实时管理。
可选的,根据第三哈希值、第四哈希值以及第二流表ID,对预存哈希表进行更新,包括:
确定预存哈希表中第三哈希值对应的目标位置;
将第二流表ID和第四哈希值存储至所述目标位置,实现对预存哈希表的更新。
上述技术方案通过将第三哈希值作为存储地址,然后将第二流表ID和第四哈希值存储在该存储地址对应的位置,实现预存哈希表的更新,进一步细化了对预存哈希表的更新过程,可以及时有效的更新预存哈希表,有助于后续FPGA器件对查找数据包进行查找时,利用该预存哈希表快速判断数据包是否已存储。
可选的,在进行流表更新操作和流表新建操作的过程中,记录各流表的流表建立时间和流表更新时间;
若检测到目标流表的流表建立时间和流表更新时间的时间间隔大于预设的老化时间,则在FPGA的存储空间中删除所述目标流表,并向ID管理模块反馈,用于指示ID管理模块回收目标流表对应的流表ID。
上述技术方案通过记录FPGA的存储空间中各流表的建立时间和更新时间,可以在检测到时间间隔较长时,及时进行老化操作,并将老化流表的流表ID进行回收,给出了流表管理中的老化流表管理的一种可实施方式,提高了基于FPGA进行流表管理的全面性。
根据本发明的另一方面,提供了一种基于FPGA的流表处理装置,所述装置配置于现场可编程门阵列FPGA器件中,包括:
确定模块,用于响应于通过外部接口输入的以太网报文,确定所述以太网报文中的查找数据包和新建数据包;
管理模块,用于基于预设的哈希算法,根据查找数据包和新建数据包中的五元组信息,在FPGA的存储空间中进行流表更新操作和流表新建操作;
输出模块,用于在检测到所述以太网报文中的查找数据包和新建数据包均处理完毕后,对所述以太网报文进行整合输出。
根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的基于FPGA的流表处理方法。
根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的基于FPGA的流表处理方法。
本发明实施例的技术方案,响应于通过外部接口输入的以太网报文,确定以太网报文中的查找数据包和新建数据包;基于预设的哈希算法,根据查找数据包和新建数据包中的五元组信息,在FPGA存储空间中进行流表更新操作和流表新建操作;在检测到所述以太网报文中的查找数据包和新建数据包均处理完毕后,对所述以太网报文进行整合输出。通过仅基于FPGA器件进行报文处理和流表管理,可以有效避免CPU的资源消耗,提高了计算机整体的工作效率;通过基于哈希算法进行流表更新操作和流表新建操作,可以有效利用预存哈希表,实现快速有效的流表更新操作和流表新建操作,进行更全面有效的流表管理,提高以太网报文的处理效率。
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例一提供的一种基于FPGA的流表处理方法的流程图;
图2是根据本发明实施例二提供的一种基于FPGA的流表处理方法的流程图;
图3是根据本发明实施例三提供的一种基于FPGA的流表处理方法的流程图;
图4是根据本发明实施例四提供的一种基于FPGA的流表处理装置的结构示意图;
图5是实现本发明实施例的基于FPGA的流表处理方法的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“目标”、“候选”、“备选”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例一
图1是根据本发明实施例一提供的一种基于FPGA的流表处理方法的流程图,本实施例可适用于基于FPGA对以太网报文中的数据包进行流表管理并输出报文的情况,该方法可以由基于FPGA的流表处理装置来执行,该基于FPGA的流表处理装置可以采用硬件和/或软件的形式实现,该基于FPGA的流表处理装置可配置于电子设备中,由现场可编程门阵列FPGA器件执行,FPGA器件可以是采用FPGA实现的流表管理部件。如图1所示,该基于FPGA的流表处理方法包括:
S101、响应于通过外部接口输入的以太网报文,确定以太网报文中的查找数据包和新建数据包。
其中,外部接口可以是预先配置于FPGA(Field Programmable Gate Array,现场可编程门阵列)器件外部的物理接口。以太网报文是以数据包为单位进行传输的。以太网报文中可以包含查找数据包和新建数据包。查找数据包是指目标进行查找操作,以确定FPGA的存储空间中是否已存在的数据包。新建数据包是指目标将其新建于FPGA存储空间流表中的数据包。
可选的,FPGA器件可以通过外部的物理接口实时获取输入的以太网报文,若通过外部接口,检测到有以太网报文传入,则确定检测到通过外部接口输入的以太网报文。
可选的,在检测到通过外部接口输入的以太网报文之后,可以响应于该通过外部接口输入的以太网报文,对以太网报文进行解析,并根据解析结果,将以太网报文中的数据包分为查找数据包和新建数据包;也可以直接将以太网报文输入预先训练好的模型,得到以太网报文中查找数据包和新建数据包的分类结果,从而从以太网报文中的数据包中确定出查找数据包和新建数据包。
需要说明的是,原始获取的以太网报文中查找数据包和新建数据包混杂在一起,且新建数据包的处理性能低,从而限制查找数据包的处理性能,故先将数据包进行区分,查找数据包和新建数据包独立处理,从而可以有效提高数据包的处理效率。
S102、基于预设的哈希算法,根据查找数据包和新建数据包中的五元组信息,在FPGA的存储空间中进行流表更新操作和流表新建操作。
其中,哈希(Hash)算法是指可以把任意长度的输入通过散列算法映射成固定长度的输出的一种散列算法。哈希算法例如可以是除法哈希算法、乘法哈希算法以及斐波那契(Fibonacci)哈希法等。五元组信息是指数据包的源IP地址(source IP,SIP)、目的IP地址(destination IP,DIP)、源端口(source port,S-port)、目的端口(destination port,D-port)以及协议号(protocol)。FPGA的存储空间是指FPGA内部RAM(Random Access Memory,随机存取读取器)的空间,即内存空间。流表更新操作是指将FPGA的存储空间中已存在的流表进行更新的操作。流表新建操作是指在FPGA的存储空间中建立新的流表的操作。
可选的,可以基于预设的以太网报文格式,对以太网报文进行解析,并根据解析结果,确定出各数据包的五元组信息。
可选的,可以基于预设的哈希算法,对查找数据包的五元组信息进行处理,并根据处理结果,在FPGA的存储空间中进行流表更新操作;并基于预设的哈希算法,对新建数据包的五元组信息进行处理,并根据处理结果,在FPGA的存储空间中进行流表新建操作。
可选的,若查找数据包的数量为至少两个,则可以基于FPGA可并行多路查找的特性,对至少两个查找数据包进行并发查找,具体的,针对每个查找数据包,都进行查找操作,确定FPGA的存储空间中是否已存在该查找数据包,若否,则进行流表新建操作,即执行流表更新操作。
可选的,若新建数据包的数量为至少两个,则基于预设的排序规则,确定候选新建数据包的新建顺序,并根据新建顺序,确定目标新建数据包;在执行目标新建数据包新建操作的过程中,进行加锁操作,即不执行除目标新建包之外其他候选数据包的新建操作;在检测到目标新建流表新建完成时,根据新建顺序,确定新的目标新建流表并对新的目标新建流表进行新建操作。其中,候选数据包是指以太网报文中的所有数据包。
可选的,基于预设的哈希算法,根据新建数据包的五元组信息,在FPGA的存储空间中进行流表新建操作,包括:向ID管理模块申请并确定第二流表ID;基于预设的第一哈希算法和第二哈希算法,对新建数据包对应的五元组信息进行哈希计算,确定第三哈希值和第四哈希值;根据第三哈希值、第四哈希值以及第二流表ID,对预存哈希表进行更新,并在FPGA的存储空间中新建流表ID为第二流表ID的流表。
其中,ID(Identity document,唯一编码)管理模块是指预设的用于进行流表ID的消耗和回收等操作的流表ID管理模块。第二流表ID是指向ID管理模块申请的新的流表ID。第一哈希算法和第二哈希算法是预设的不同的哈希算法。
可选的,FPGA器件可以根据新建数据包的相关属性信息,向ID管理模块发送流表ID申请请求,ID管理模块可以将预存的未存储信息的流表ID作为第二流表ID,向FPGA器件发送,使得FPGA器件确定申请成功的第二流表ID。
可选的,可以基于预设的第一哈希算法对新建数据包对应的五元组信息进行哈希计算,确定第三哈希值,并基于预设的第二哈希算法,对新建数据包对应的五元组信息进行哈希计算,确定第四哈希值。
可选的,可以基于预设的规则,在预存哈希表中第三哈希值对应的位置存储第四哈希值和第二流表ID,实现对预存哈希表的更新,并在FPGA的存储空间中新建流表ID为第二流表ID的流表,将新建数据包的五元组信息存储到该第二流表ID对应的流表。
上述技术方案通过向ID管理模块申请并确定第二流表ID,进一步基于两种哈希算法,确定新建数据包五元组信息的第三哈希值和第四哈希值,从而可以对预存哈希表进行及时的更新,并在新申请的第二流表ID处新建流表,完成流表新建操作,实现流表的实时管理。
可选的,根据第三哈希值、第四哈希值以及第二流表ID,对预存哈希表进行更新,包括:确定预存哈希表中第三哈希值对应的目标位置;将第二流表ID和第四哈希值存储至目标位置,实现对预存哈希表的更新。
其中,目标位置是指预存哈希表中以第三哈希值为键值时对应的哈希表位置。
示例性的,可以使用第三哈希值读取预存哈希表,将第三哈希值在预存哈希表中的位置作为目标位置,也就是预存哈希表中的存储地址,然后将第二流表ID和第四哈希值存储至该存储地址对应的目标位置,实现对预存哈希表的更新。
上述技术方案通过将第三哈希值作为存储地址,然后将第二流表ID和第四哈希值存储在该存储地址对应的位置,实现预存哈希表的更新,进一步细化了对预存哈希表的更新过程,可以及时有效的更新预存哈希表,有助于后续FPGA器件对查找数据包进行查找时,利用该预存哈希表快速判断数据包是否已存储。
S103、在检测到以太网报文中的查找数据包和新建数据包均处理完毕后,对以太网报文进行整合输出。
可选的,FPGA器件可以在进行流表更新操作和流表新建操作的过程中,对产生的通联信息进行记录,最后将以太网报文和产生的通联信息进行整合,基于预设的输出方式进行输出。其中,通联信息可以包括:流表的正反向字节、数据包报数统计以及入端口信息等。
本发明实施例的技术方案,响应于通过外部接口输入的以太网报文,确定以太网报文中的查找数据包和新建数据包;基于预设的哈希算法,根据查找数据包和新建数据包中的五元组信息,在FPGA存储空间中进行流表更新操作和流表新建操作;在检测到所述以太网报文中的查找数据包和新建数据包均处理完毕后,对所述以太网报文进行整合输出。通过仅基于FPGA器件进行报文处理和流表管理,可以有效避免CPU的资源消耗,提高了计算机整体的工作效率;通过基于哈希算法进行流表更新操作和流表新建操作,可以有效利用预存哈希表,实现快速有效的流表更新操作和流表新建操作,进行更全面有效的流表管理,提高以太网报文的处理效率。
可选的,FPGA器件还可以根据通联信息,实时地对存储空间中的流表进行老化管理,具体的,可以在进行流表更新操作和流表新建操作的过程中,记录各流表的流表建立时间和流表更新时间;若检测到目标流表的流表建立时间和流表更新时间的时间间隔大于预设的老化时间,则在FPGA的存储空间中删除目标流表,并向ID管理模块反馈,用于指示ID管理模块回收目标流表对应的流表ID。
其中,流表建立时间是指通过执行流表新建操作完成流表新建的时间。流表更新时间是指通过执行流表更新操作完成流表更新的时间。老化时间是指预设的表征流表已老化需要删除的时间。目标流表是指FPGA存储空间的流表中,满足流表建立时间和流表更新时间的时间间隔大于预设的老化时间的流表。一个流表ID对应一个流表。
可选的,可以基于以太网报文所属的端口或者协议,配置老化时间,例如,当以太网报文属于TCP报文时,老化时间可以设置为60s,当以太网报文属于UDP报文时,老化时间可以设置为80s。
上述技术方案通过记录FPGA的存储空间中各流表的建立时间和更新时间,可以在检测到时间间隔较长时,及时进行老化操作,并将老化流表的流表ID进行回收,给出了流表管理中的老化流表管理的一种可实施方式,提高了基于FPGA进行流表管理的全面性。
实施例二
图2是根据本发明实施例二提供的一种基于FPGA的流表处理方法的流程图,本实施例在上述各技术方案的基础上,进行了优化改进。
进一步的,将“基于预设的哈希算法,根据查找数据包的五元组信息,在FPGA的存储空间中进行流表更新操作”细化为“基于预设的哈希算法,对查找数据包的五元组信息进行哈希计算,并根据计算结果和预存哈希表,确定FPGA的存储空间中是否存在所述查找数据包;若否,则确定所述查找数据包的第一流表ID,并对存储空间中的所述流表ID对应的流表进行更新操作”,以完善在FPGA的存储空间中进行流表更新操作的方式。
进一步的,将“基于预设的哈希算法,对查找数据包的五元组信息进行哈希计算,并根据计算结果和预存哈希表,确定FPGA的存储空间中是否存在所述查找数据包”细化为“基于预设的第一哈希算法和第二哈希算法,分别对查找数据包的五元组信息进行哈希计算,确定第一哈希值和第二哈希值;根据第一哈希值,在预存哈希表中进行查找,确定对应的预存哈希值,并确定预存的哈希值与第二哈希值是否一致;若否,则确定FPGA的存储空间中不存在查找数据包”以完善确定FPGA的存储空间中是否存在查找数据包的具体实施方式。
进一步的,将“确定预存的哈希值与第二哈希值是否一致”之后的步骤细化为“若预存的哈希值与第二哈希值一致,则根据第一哈希值,在预存哈希表中进行查找,确定第一流表ID,并以第一流表ID为地址,在FPGA的存储空间中进行查找,确定对应的预存五元组信息;确定预存五元组信息与查找数据包的五元组信息是否一致,若否,则确定FPGA的存储空间中不存在查找数据包。”以完善在预存哈希值和第二哈希值相同的情况下,确定FPGA的存储空间中是否存在查找数据包的具体实施方式。
如图2所示,该方法包括以下具体步骤:
S201、响应于通过外部接口输入的以太网报文,确定以太网报文中的查找数据包和新建数据包。
S202、基于预设的哈希算法,对查找数据包的五元组信息进行哈希计算,并根据计算结果和预存哈希表,确定FPGA的存储空间中是否存在查找数据包。
其中,计算结果可以包括通过哈希算法对查找数据包的五元组信息进行哈希计算得到的哈希值。预存哈希表是指预存的以通过第一哈希算法确定的哈希值为键值(key),以第二哈希算法确定的哈希值和第二流表ID为取值(value)的哈希表。
可选的,基于预设的哈希算法,对查找数据包的五元组信息进行哈希计算,并根据计算结果和预存哈希表,确定FPGA的存储空间中是否存在查找数据包,包括:基于预设的第一哈希算法和第二哈希算法,分别对查找数据包的五元组信息进行哈希计算,确定第一哈希值和第二哈希值;根据第一哈希值,在预存哈希表中进行查找,确定对应的预存哈希值,并确定预存的哈希值与第二哈希值是否一致;若否,则确定FPGA的存储空间中不存在查找数据包。
需要说明的是,若预存的哈希值与第二哈希值不一致,则可以直接确定FPGA的存储空间中不存在该查找数据包,此时不用进一步确定查找数据包对应的五元组信息是否一样,避免了资源浪费。
上述技术方案通过两种哈希算法,分别对查找数据包的五元组信息进行哈希计算,从而根据第一哈希值和第二哈希值的关系,确定查找数据包是否已存在于FPGA的存储空间中,给出了利用哈希算法确认查找数据包是否已存储的一种可实施方式,有助于提高后续流表管理操作的效率。
可选的,确定预存的哈希值与第二哈希值是否一致之后,还包括:若预存的哈希值与第二哈希值一致,则根据第一哈希值,在预存哈希表中进行查找,确定第一流表ID,并以第一流表ID为地址,在FPGA的存储空间中进行查找,确定对应的预存五元组信息;确定预存五元组信息与查找数据包的五元组信息是否一致,若否,则确定FPGA的存储空间中不存在查找数据包。
示例性的,若预存的哈希值与第二哈希值一致,则可以初步认为第一流表ID与当前查找的数据流可能为相同流,为了保证准确性,可以进一步以第一流表ID为地址,获取FPGA内部的RAM在新建过程中存储的一些五元组信息,即确定对应的预存五元组信息。
可选的,若预存五元组信息与查找数据包的五元组信息是一致的,则可以认为查找数据包是同一条流,也就是FPGA的存储空间中已存在该查找数据包,此时可以进行统计累加操作,便于后续通联信息的生成。
可选的,若预存五元组信息与查找数据包的五元组信息不一致,则可以确定FPGA的存储空间中不存在该查找数据包。
需要说明的是,本发明实施例中的流表更新操作和流表新建操作,可以基于FPGA可并行多路处理的特性,并发地同时进行,从而提高FPGA器件的数据包处理效率。
上述技术方案通过在确定预存哈希值和第二哈希值一致的情况下,进一步确定查找数据包的第一流表ID,确定出预存的五元组信息,可以准确确定出查找数据包指定的流表ID处已预存的五元组信息,通过判断预存五元组信息和查找数据包的五元组信息的一致性,可以进一步细致的确定出查找数据包是否已存在于FPGA的存储空间中,保证报文处理的准确性。
S203、若否,则确定查找数据包对应的流表ID,并对FPGA的存储空间中的流表进行更新操作。
需要说明的是,查找数据包对应的流表ID可能是已存储有旧查找数据包相关信息的第一流表ID,也可能是在未存储有旧查找数据包的情况下向ID管理模块申请的第二流表ID。
可选的,若FPGA的存储空间中不存在所述查找数据包,则可以基于第一哈希算法,对查找数据包的五元组信息进行哈希计算,并根据确定的第一哈希值,在预存哈希表中进行查找,确定哈希表中是否存储有第一流表ID,若是,则确定该第一流表ID为查找数据包对应的流表ID,根据第二哈希算法,确定查找数据包五元组信息对应的第二哈希值,并将确定的第二哈希值与第一流表ID更新至FPGA的存储空间中第一流表ID对应的位置,即对第一流表ID对应存储位置存储的第二哈希值进行了更新;若哈希表中未存储有第一流表ID,则说明该第一流表ID下未存储有旧查找数据包的相关信息,此时可以将以太网报文确定的新查找数据包作为新建数据包,申请第二流表ID,作为查找数据包对应的流表ID,执行流表新建操作,实现对FPGA的存储空间中流表的更新操作。
S204、基于预设的哈希算法,根据新建数据包的五元组信息,在FPGA的存储空间中进行流表新建操作。
S205、在检测到以太网报文中的查找数据包和新建数据包均处理完毕后,对以太网报文进行整合输出。
本发明的技术方案,通过对查找数据包的五元组信息进行哈希计算,从而根据哈希计算结果和预存哈希表来确定查找数据包是否已存在于FPGA的存储空间中,可以快速准确地确定出查找数据包是否已存储,通过在确定其不存在的情况下,基于流表ID进行更新操作,可以进行流表的及时更新,实现流表的实时管理。
实施例三
图3是根据本发明实施例三提供的一种基于FPGA的流表处理方法的流程图。本实施例在上述实施例的基础上,提供了一种优选实例。
如图3所示,该方法包括以下具体步骤:
S301、响应于通过外部接口输入的以太网报文,确定以太网报文中的查找数据包和新建数据包。
S302、基于预设的第一哈希算法和第二哈希算法,分别对查找数据包的五元组信息进行哈希计算,确定第一哈希值和第二哈希值。
S303、根据第一哈希值,在预存哈希表中进行查找,确定对应的预存哈希值,并确定预存的哈希值与第二哈希值是否一致。
可选的,若预存的哈希值与第二哈希值一致,则根据第一哈希值,在预存哈希表中进行查找,确定第一流表ID,并以第一流表ID为地址,在FPGA的存储空间中进行查找,确定对应的预存五元组信息。确定预存五元组信息与查找数据包的五元组信息是否一致,若否,则确定FPGA的存储空间中不存在查找数据包。
S304、若预存的哈希值与第二哈希值不一致,则确定FPGA的存储空间中不存在查找数据包。
S305、若FPGA的存储空间中不存在查找数据包,则确定查找数据包对应的流表ID,并对FPGA的存储空间中的流表进行更新操作。
S306、向ID管理模块申请并确定第二流表ID。
S307、基于预设的第一哈希算法和第二哈希算法,对新建数据包对应的五元组信息进行哈希计算,确定第三哈希值和第四哈希值。
S308、根据第三哈希值、第四哈希值以及第二流表ID,对预存哈希表进行更新,并在FPGA的存储空间中新建流表ID为第二流表ID的流表。
可选的,根据第三哈希值、第四哈希值以及第二流表ID,对预存哈希表进行更新,包括:确定预存哈希表中第三哈希值对应的目标位置;将第二流表ID和第四哈希值存储至目标位置,实现对预存哈希表的更新。
S309、在进行流表更新操作和流表新建操作的过程中,记录各流表的流表建立时间和流表更新时间。
S310、若检测到目标流表的流表建立时间和流表更新时间的时间间隔大于预设的老化时间,则在FPGA的存储空间中删除目标流表,并向ID管理模块反馈,用于指示ID管理模块回收目标流表对应的流表ID。
S311、在检测到以太网报文中的查找数据包和新建数据包均处理完毕后,对以太网报文进行整合输出。
实施例四
图4是根据本发明实施例四提供的一种基于FPGA的流表处理装置的结构示意图。本发明实施例所提供的一种基于FPGA的流表处理装置可适用于基于FPGA对以太网报文中的数据包进行流表管理并输出报文的情况,该基于FPGA的流表处理装置可以采用硬件和/或软件的形式实现,该基于FPGA的流表处理装置可配置于电子设备中,由现场可编程门阵列FPGA器件执行,FPGA器件可以是采用FPGA实现的流表管理部件,如图4所示,该装置具体包括:确定模块401、管理模块402以及输出模块403。
其中,
确定模块401,用于响应于通过外部接口输入的以太网报文,确定所述以太网报文中的查找数据包和新建数据包;
管理模块402,用于基于预设的哈希算法,根据查找数据包和新建数据包中的五元组信息,在FPGA的存储空间中进行流表更新操作和流表新建操作;
输出模块403,用于在检测到所述以太网报文中的查找数据包和新建数据包均处理完毕后,对所述以太网报文进行整合输出。
本发明实施例的技术方案,响应于通过外部接口输入的以太网报文,确定以太网报文中的查找数据包和新建数据包;基于预设的哈希算法,根据查找数据包和新建数据包中的五元组信息,在FPGA存储空间中进行流表更新操作和流表新建操作;在检测到所述以太网报文中的查找数据包和新建数据包均处理完毕后,对所述以太网报文进行整合输出。通过仅基于FPGA器件进行报文处理和流表管理,可以有效避免CPU的资源消耗,提高了计算机整体的工作效率;通过基于哈希算法进行流表更新操作和流表新建操作,可以有效利用预存哈希表,实现快速有效的流表更新操作和流表新建操作,进行更全面有效的流表管理,提高以太网报文的处理效率。
进一步的,管理模块402可以包括:
数据包判断单元,用于基于预设的哈希算法,对查找数据包的五元组信息进行哈希计算,并根据计算结果和预存哈希表,确定FPGA的存储空间中是否存在所述查找数据包;
流表更新单元,用于若否,则确定所述查找数据包对应的流表ID,并对FPGA的存储空间中的流表进行更新操作。
进一步的,数据包判断单元具体用于:
基于预设的第一哈希算法和第二哈希算法,分别对查找数据包的五元组信息进行哈希计算,确定第一哈希值和第二哈希值;
根据第一哈希值,在预存哈希表中进行查找,确定对应的预存哈希值,并确定预存的哈希值与第二哈希值是否一致;
若否,则确定FPGA的存储空间中不存在所述查找数据包。
进一步的,数据包判断单元还用于:
若预存的哈希值与第二哈希值一致,则根据第一哈希值,在预存哈希表中进行查找,确定第一流表ID,并以第一流表ID为地址,在FPGA的存储空间中进行查找,确定对应的预存五元组信息;
确定所述预存五元组信息与查找数据包的五元组信息是否一致,若否,则确定FPGA的存储空间中不存在所述查找数据包。
进一步的,管理模块402还包括:
申请单元,用于向ID管理模块申请并确定第二流表ID;
哈希值确定单元,用于基于预设的第一哈希算法和第二哈希算法,对新建数据包对应的五元组信息进行哈希计算,确定第三哈希值和第四哈希值;
流表新建单元,用于根据第三哈希值、第四哈希值以及第二流表ID,对预存哈希表进行更新,并在FPGA的存储空间中新建流表ID为第二流表ID的流表。
进一步的,流表新建单元具体用于:
确定预存哈希表中第三哈希值对应的目标位置;
将第二流表ID和第四哈希值存储至所述目标位置,实现对预存哈希表的更新。
进一步的,上述装置还用于:
在进行流表更新操作和流表新建操作的过程中,记录各流表的流表建立时间和流表更新时间;
若检测到目标流表的流表建立时间和流表更新时间的时间间隔大于预设的老化时间,则在FPGA的存储空间中删除所述目标流表,并向ID管理模块反馈,用于指示ID管理模块回收目标流表对应的流表ID。
实施例五
图5是实现本发明实施例的基于FPGA的流表处理方法的电子设备的结构示意图。图5示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图5所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。
电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如基于FPGA的流表处理方法。
在一些实施例中,基于FPGA的流表处理方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM 13并由处理器11执行时,可以执行上文描述的基于FPGA的流表处理方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行基于FPGA的流表处理方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (10)
1.一种基于FPGA的流表处理方法,其特征在于,由现场可编程门阵列FPGA器件执行,所述方法包括:
响应于通过外部接口输入的以太网报文,确定所述以太网报文中的查找数据包和新建数据包;
基于预设的哈希算法,根据所述查找数据包和所述新建数据包中的五元组信息,在FPGA的存储空间中进行流表更新操作和流表新建操作;
在检测到所述以太网报文中的所述查找数据包和所述新建数据包均处理完毕后,对所述以太网报文进行整合输出。
2.根据权利要求1所述的方法,其特征在于,基于预设的哈希算法,根据查找数据包的五元组信息,在FPGA的存储空间中进行流表更新操作,包括:
基于预设的哈希算法,对所述查找数据包的五元组信息进行哈希计算,并根据计算结果和预存哈希表,确定所述FPGA的存储空间中是否存在所述查找数据包;
若否,则确定所述查找数据包对应的流表ID,并对所述FPGA的存储空间中的流表进行更新操作。
3.根据权利要求2所述的方法,其特征在于,所述基于预设的哈希算法,对所述查找数据包的五元组信息进行哈希计算,并根据计算结果和预存哈希表,确定所述FPGA的存储空间中是否存在所述查找数据包,包括:
基于预设的第一哈希算法和第二哈希算法,分别对所述查找数据包的五元组信息进行哈希计算,确定第一哈希值和第二哈希值;
根据所述第一哈希值,在预存哈希表中进行查找,确定对应的预存哈希值,并确定所述预存的哈希值与所述第二哈希值是否一致;
若否,则确定所述FPGA的存储空间中不存在所述查找数据包。
4.根据权利要求3所述的方法,其特征在于,所述确定预存的哈希值与第二哈希值是否一致之后,还包括:
若所述预存的哈希值与所述第二哈希值一致,则根据所述第一哈希值,在预存哈希表中进行查找,确定第一流表ID,并以第一流表ID为地址,在FPGA的存储空间中进行查找,确定对应的预存五元组信息;
确定所述预存五元组信息与查找数据包的五元组信息是否一致,若否,则确定FPGA的存储空间中不存在所述查找数据包。
5.根据权利要求1所述的方法,其特征在于,基于预设的哈希算法,根据新建数据包的五元组信息,在FPGA的存储空间中进行流表新建操作,包括:
向ID管理模块申请并确定第二流表ID;
基于预设的第一哈希算法和第二哈希算法,对新建数据包对应的五元组信息进行哈希计算,确定第三哈希值和第四哈希值;
根据第三哈希值、第四哈希值以及第二流表ID,对预存哈希表进行更新,并在FPGA的存储空间中新建流表ID为第二流表ID的流表。
6.根据权利要求5所述的方法,其特征在于,根据第三哈希值、第四哈希值以及第二流表ID,对预存哈希表进行更新,包括:
确定预存哈希表中第三哈希值对应的目标位置;
将第二流表ID和第四哈希值存储至所述目标位置,实现对预存哈希表的更新。
7.根据权利要求1所述的方法,其特征在于,还包括:
在进行流表更新操作和流表新建操作的过程中,记录各流表的流表建立时间和流表更新时间;
若检测到目标流表的流表建立时间和流表更新时间的时间间隔大于预设的老化时间,则在FPGA的存储空间中删除所述目标流表,并向ID管理模块反馈,用于指示ID管理模块回收目标流表对应的流表ID。
8.一种基于FPGA的流表处理装置,其特征在于,所述装置配置于现场可编程门阵列FPGA器件中,包括:
确定模块,用于响应于通过外部接口输入的以太网报文,确定所述以太网报文中的查找数据包和新建数据包;
管理模块,用于基于预设的哈希算法,根据查找数据包和新建数据包中的五元组信息,在FPGA的存储空间中进行流表更新操作和流表新建操作;
输出模块,用于在检测到所述以太网报文中的查找数据包和新建数据包均处理完毕后,对所述以太网报文进行整合输出。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的基于FPGA的流表处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的基于FPGA的流表处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310211774.8A CN116208554A (zh) | 2023-02-28 | 2023-02-28 | 一种基于fpga的流表处理方法、装置、设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310211774.8A CN116208554A (zh) | 2023-02-28 | 2023-02-28 | 一种基于fpga的流表处理方法、装置、设备以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116208554A true CN116208554A (zh) | 2023-06-02 |
Family
ID=86509314
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310211774.8A Pending CN116208554A (zh) | 2023-02-28 | 2023-02-28 | 一种基于fpga的流表处理方法、装置、设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116208554A (zh) |
-
2023
- 2023-02-28 CN CN202310211774.8A patent/CN116208554A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN117149894A (zh) | 一种调用链路的展示方法、装置、电子设备及存储介质 | |
CN113204695B (zh) | 网站识别方法和装置 | |
CN117201228A (zh) | 数据回灌方法、装置、电子设备和存储介质 | |
CN115687406B (zh) | 一种调用链数据的采样方法、装置、设备及存储介质 | |
CN116418689A (zh) | 一种请求报文响应方法、装置、电子设备和存储介质 | |
CN116208554A (zh) | 一种基于fpga的流表处理方法、装置、设备以及存储介质 | |
CN114500105A (zh) | 一种网络包的拦截方法、装置、设备及存储介质 | |
CN113965514A (zh) | 链路构建及展示的方法、装置及电子设备 | |
CN117424850B (zh) | 一种异常链路聚合方法、查询方法、装置、设备及介质 | |
CN113713378B (zh) | 内容生成方法和装置 | |
CN113836291B (zh) | 数据处理方法、装置、设备和存储介质 | |
CN116629810B (zh) | 基于建筑办公系统的操作推荐方法、装置、设备和介质 | |
CN116599838A (zh) | 变电站设备信息配置管理方法、装置、设备及存储介质 | |
CN116225568A (zh) | 一种应用系统接口的管理方法、装置、设备及存储介质 | |
CN118646814A (zh) | 数据处理方法、装置、电子设备及可读存储介质 | |
CN116708362A (zh) | 通信地址的处理方法、装置、设备及存储介质 | |
CN117389594A (zh) | 固件升级方法、装置、电子设备及存储介质 | |
CN112783507A (zh) | 数据引流回放方法、装置、电子设备及可读存储介质 | |
CN117395211A (zh) | 一种数据转发方法、装置、交换机及介质 | |
CN115883217A (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN117539719A (zh) | 应用运行监测方法、装置、设备及介质 | |
CN117596304A (zh) | 一种信息提取方法、装置、电子设备及存储介质 | |
CN117729005A (zh) | 一种网络资产测绘方法 | |
CN118377677A (zh) | 多服务器的进程监控方法、装置、电子设备及存储介质 | |
CN116881368A (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 |