CN112291212B - 静态规则的管理方法、装置、电子设备和存储介质 - Google Patents

静态规则的管理方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN112291212B
CN112291212B CN202011110922.XA CN202011110922A CN112291212B CN 112291212 B CN112291212 B CN 112291212B CN 202011110922 A CN202011110922 A CN 202011110922A CN 112291212 B CN112291212 B CN 112291212B
Authority
CN
China
Prior art keywords
rule
static
static rule
operation command
command
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
CN202011110922.XA
Other languages
English (en)
Other versions
CN112291212A (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.)
Beijing Ruian Technology Co Ltd
Original Assignee
Beijing Ruian 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 Beijing Ruian Technology Co Ltd filed Critical Beijing Ruian Technology Co Ltd
Priority to CN202011110922.XA priority Critical patent/CN112291212B/zh
Publication of CN112291212A publication Critical patent/CN112291212A/zh
Priority to PCT/CN2021/108832 priority patent/WO2022078001A1/zh
Application granted granted Critical
Publication of CN112291212B publication Critical patent/CN112291212B/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
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • 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/03Protocol definition or specification 

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种静态规则的管理方法、装置、电子设备和存储介质。所述方法包括:接收待管理的批量静态规则的操作命令;对所述操作命令进行解析,确定所述操作命令的命令类型;基于所述命令类型,以及与所述命令类型对应的预设管理规则,对内存中的与所述操作命令对应的静态规则进行对应管理。以实现高效对静态规则进行管理的效果。

Description

静态规则的管理方法、装置、电子设备和存储介质
技术领域
本发明实施例涉及数字通信技术,尤其涉及一种静态规则的管理方法、装置、电子设备和存储介质。
背景技术
静态规则指的是五元组规则,网络数据包中的源ip地址、目的ip地址、源端口号、目的端口号和协议类型称为五元组,分别使用sip、dip、sp、dp、protocol表示。规则是指网络数据包的处理方式,依据不同的用户需求,静态规则要区分优先级,不同的静态规则对应不同的用户和策略,从而实现现网数据的转发。
现有技术中,对静态规则的管理,例如,实现静态规则的写入、读出及擦除功能,都是逐条规则去取处理,但是这样的方式对于少量的静态规则可以使用,在实际应用时,静态规则的数量在百万以上,对如此大量的静态规则进行内存管理,则管理效率低下,降低系统的灵活性。
发明内容
本发明实施例提供一种静态规则的管理方法、装置、电子设备和存储介质,以实现高效对静态规则进行管理的效果。
第一方面,本发明实施例提供了一种静态规则的管理方法,该方法应用于数字集成电路芯片,该方法包括:
接收待管理的批量静态规则的操作命令;
对所述操作命令进行解析,确定所述操作命令的命令类型;
基于所述命令类型,以及与所述命令类型对应的预设管理规则,对内存中的与所述操作命令对应的静态规则进行对应管理。
第二方面,本发明实施例还提供了一种静态规则的管理装置,该装置设置于数字集成电路芯片中,包括:
操作命令接收模块,用于接收待管理的批量静态规则的操作命令;
操作命令解析模块,用于对所述操作命令进行解析,确定所述操作命令的命令类型;
管理模块,用于基于所述命令类型,以及与所述命令类型对应的预设管理规则,对内存中的与所述操作命令对应的静态规则进行对应管理。
第三方面,本发明实施例还提供了一种电子设备,该电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例中任一所述的静态规则的管理方法。
第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行本发明实施例中任一所述的静态规则的管理方法。
本发明实施例的技术方案,通过接收待管理的批量静态规则的操作命令,对操作命令进行解析,确定操作命令的命令类型,基于命令类型,以及与命令类型对应的预设管理规则,对内存中的与操作命令对应的静态规则进行对应管理,这样可对主控发送的操作命令得到批量处理,提高了静态规则的管理操作的效率,实现了对现网大规模规则策略需求的内存管理的效果。
附图说明
图1是本发明实施例一中的静态规则的管理方法的流程图;
图2是本发明实施例一中的本发明的静态规则的管理方法的执行示意图;
图3是本发明实施例一中的现有技术中的静态规则的管理方法;
图4是本发明实施例二中的静态规则的管理方法的流程图;
图5是本发明实施例三中的静态规则的管理方法的执行流程图;
图6是本发明实施例四中的静态规则的管理装置的结构示意图;
图7是本发明实施例四中的一种电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
在介绍本发明实施例的技术方案之前,首先介绍一下五元组,五元组是通信术语,通常指源IP地址,源端口,目的IP地址,目的端口和传输层协议。例如:192.168.1.110000TCP 121.14.88.76 80,就构成了一个五元组。其意义是,一个IP地址为192.168.1.1的终端通过端口10000,利用TCP协议,和IP地址为121.14.88.76,端口为80的终端进行连接。
实施例一
图1为本发明实施例一提供的静态规则的管理方法的流程图,本实施例可适用于对批量的静态规则进行管理的情况,该方法应用于数字集成电路芯片(FieldProgrammable Gate Array,FPGA)上,可以由静态规则的管理装置来执行,该静态规则的管理装置可以由软件和/或硬件来实现,该静态规则的管理装置可以配置在电子计算设备上,具体包括如下步骤:
S110、接收待管理的批量静态规则的操作命令。
示例性的,操作命令可以是对待管理的批量静态规则进行管理的命令。
需要说明的是,这里的操作命令可以是由主机发送的。具体的可以是由主机中的Host_fc模块来发送的。
S120、对操作命令进行解析,确定操作命令的命令类型。
示例性的,操作命令的命令类型可以是对批量静态规则进行管理的类型,例如,可以是从内存中读取静态规则、将静态规则写入内存或擦除内存中的静态规则。
接收到批量的操作命令后,对批量的操作命令进行解析,可得到操作命令的类型,具体的可以是通过Fc_rule_op_prep_nz模块对操作命令进行解析。
需要说明的是,在对操作命令进行解析时,还可以对操作命令所对应的静态规则的内容进行预处理,具体的可以是将静态规则的内容的格式转换为FPGA可处理的数据格式。还可以根据操作命令的命令类型计算其对应的哈希地址,具体的根据命令类型计算哈希地址属于现有技术,这里不再赘述。
可选的,在操作命令中包括:静态规则的规则类型。
对应的,所述对操作命令进行解析,确定操作命令的命令类型,具体可以是:对操作命令进行解析,基于解析出的操作命令中的静态规则的规则类型,确定操作命令的命令类型。
示例性的,静态规则的规则类型可以是静态规则的类型,例如,可以是写入、读取或擦除。
根据对操作命令的解析,可得到静态规则的规则类型,根据各静态规则的规则类型,即可确定操作命令的命令类型。
S130、基于命令类型,以及与命令类型对应的预设管理规则,对内存中的与操作命令对应的静态规则进行对应管理。
示例性的,预设管理规则可以是预先设置的管理规则,具体的可以是根据不同的命令类型,用户自行设定的管理规则。
在内存中具有两张表,一张是规则ID表,一张是规则哈希表,规则ID表用于软件管理使用,规则哈希表用于业务查找使用。其中,规则哈希表是根据五元组进行哈希地址的计算得到的,因此,针对同一命令类型,可能两个不同的静态规则会有相同的哈希地址。需要说明的是,一张规则ID表对于一条静态规则,一张规则哈希表中的内容可能针对多个规则ID表,即在该张规则哈希表中的哈希地址对应多个不同的静态规则,这多个不同的静态规则经哈希地址计算后,得到的哈希地址是一致的,因此,存储在一张规则哈希表上。
需要说明的是,每个规则ID表中均有一个标志位,具体的可以是一个表示该规则ID表是否有效的标识,例如,可以是若某一规则ID表的标志位上的数值为“1”,则表示该张规则ID表有效,该张规则ID表有效则表示在内存中具有与该规则ID表对应的静态规则;若该张规则ID表的标志位上的数值为“0”,则表示该张规则ID表无效,该张规则ID表无效则表示在内存中不具有与该规则ID表对应的静态规则。
同样的,每个规则哈希表中也均有一个标志位,若该规则哈希表中存储有多个用户规则(即该规则哈希表对应多个静态规则),则若其中一个用户规则有效则该规则哈希表的标志位为有效,该规则哈希表中的所有用户规则均无效则该规则哈希表的标志位无效。
根据确定的命令类型,以及与该命令类型对应的预设管理规则,可对内存中的与操作命令对应的静态规则进行对应管理。例如,命令类型为读取内存中的一个静态规则,则根据该命令类型,以及与该命令类型对应的预设管理规则,从内存中将该静态规则进行读取。
本发明实施例的技术方案,参考图2所述的本发明的静态规则的管理方法的执行示意图,可通过接收批量的待管理的静态规则的操作命令,来批量对内存中对应的静态规则进行管理,即接收到批量的静态规则的操作命令后,采用先将操作命令存入FPGA内部RAM,然后统一写入内存的方式,以及先将内存中规则读出到内部FIFO再由主控读取的方式。具体每次支持操作命令的规则数目多少,由可编程逻辑器件资源情况评估而定。这样相比图3所述的现有技术中的静态规则的管理方法的执行示意图中每次操作命令都要独立的访问内存,本发明实施例的技术方案,可对主控发送的操作命令得到批量处理,提高了静态规则的管理操作的效率,实现了对现网大规模规则策略需求的内存管理。
需要说明的是,在接收到批量的静态规则的操作命令后,将其先存储到FPGA的内部RAM中,当需对RAM中的操作命令进行修改时,可采用不同的获取方式。具体的可以是,若要对写入RAM中的一条静态规则进行更改,则从RAM中获取到该静态规则,并对该静态规则进行擦除,然后重新写入更改后的静态规则;若要读取一条静态规则,则访问的是FIFO中的静态规则,这是由于在RAM中可对其内部的内容进行修改,而在FIFO中不可对其进行修改。
本发明实施例的技术方案,通过接收待管理的批量静态规则的操作命令,对操作命令进行解析,确定操作命令的命令类型,基于命令类型,以及与命令类型对应的预设管理规则,对内存中的与操作命令对应的静态规则进行对应管理,这样可对主控发送的操作命令得到批量处理,提高了静态规则的管理操作的效率,实现了对现网大规模规则策略需求的内存管理的效果。
实施例二
图4为本发明实施例二提供的静态规则的管理方法的流程图,本发明实施例与上述实施例中各个可选方案可以结合。在本发明实施例中,可选的,所述操作命令包括:静态规则的规则ID和静态规则中的五元组;在对操作命令进行解析,确定操作命令的命令类型之后,所述方法还包括:基于静态规则的规则ID,确定静态规则的规则ID表;基于静态规则的规则ID和静态规则中的五元组,确定静态规则的规则哈希表。
如图4所示,本发明实施例的方法具体包括如下步骤:
S210、接收待管理的批量静态规则的操作命令。
S220、对操作命令进行解析,确定操作命令的命令类型。
S230、基于静态规则的规则ID,确定静态规则的规则ID表。
示例性的,在各静态规则对应的操作命令中包含该静态规则的规则ID,该规则ID是用于区分各静态规则的标识。具体的该规则ID是用于自行设定的,例如,可以是将各静态规则分别标志为序号1、2、3、……,以此来区分各静态规则。
根据各静态规则的规则ID,可将对各静态规则设置其对应的一张规则ID表,每张规则ID表对应于一个静态规则。
S240、基于静态规则的规则ID和静态规则中的五元组,确定静态规则的规则哈希表。
示例性的,在各静态规则对应的操作命令中还包含该静态规则的五元组信息。根据上述确定的各静态规则的规则ID,以及静态规则的五元组,可计算各静态规则的哈希地址,根据各静态规则的哈希地址构建规则哈希表。具体的根计算静态规则的哈希地址是现有技术,这里不做详细描述。
这样确定各静态规则的规则ID表和规则哈希表,以便后续根据各静态规则的操作命令,来对各静态规则进行对应管理。
S250、基于命令类型,以及与命令类型对应的预设管理规则,对内存中的与操作命令对应的静态规则进行对应管理。
可选的,当所述命令类型为读取内存中的任一当前静态规则时,所述基于命令类型,以及与命令类型对应的预设管理规则,对内存中的与操作命令对应的静态规则进行对应管理,具体可以是:基于对内存中的当前静态规则进行读取的操作,判断内存中当前静态规则对应的规则ID表是否有效;若有效,则返回当前静态规则所对应的规则ID表中的内容;若无效,则返回无效信息,其中,无效信息用于指示当前静态规则所对应的规则ID表无效。
示例性的,当要读取内存中的一个静态规则(当前静态规则)时,首先判断内存中当前静态规则对应的规则ID表是否有效,若有效,则证明在内存中存储有该当前静态规则,则返回当前静态规则所对应的规则ID表中的内容,若内存中当前静态规则对应的规则ID表无效,则说明在内存中没有存储有该当前静态规则,则返回无效消息,这里的无效消息用于指示当前静态规则所对应的规则ID表无效,即在内存中不存在该当前静态规则的内容。
可选的,当所述命令类型为擦除内存中的任一当前静态规则时,所述基于命令类型,以及与命令类型对应的预设管理规则,对内存中的与操作命令对应的静态规则进行对应管理,具体可以是:基于对内存中的当前静态规则进行擦除的操作,判断内存中当前静态规则的规则ID表中是否有效;若当前静态规则的规则ID表有效,则获取当前静态规则对应的规则哈希表中当前静态规则的策略,将当前静态规则对应的规则哈希表中当前静态规则的策略置无效,并将当前静态规则对应的规则ID表置无效;若当前静态规则的规则ID表无效,则返回无效信息,其中,无效信息用于指示当前静态规则的规则ID表中无效。
示例性的,当要擦除内存中的一个静态规则(当前静态规则)时,首先判断内存中当前静态规则对应的规则ID表是否有效,若有效,则获取当前静态规则对应的规则哈希表中当前静态规则的策略,将当前静态规则对应的规则哈希表中当前静态规则的策略置无效(即擦除),并将当前静态规则对应的规则ID表也置无效。若当前静态规则的规则ID表无效,则返回无效信息。
需要说明的是,若当前静态规则的规则ID表有效时,则获取当前静态规则对应的规则哈希表中当前静态规则的策略,将当前静态规则对应的规则哈希表中当前静态规则的策略置无效,具体可以是,若在当前静态规则对应的规则哈希表中具有多个用户的静态规则,则可以判断当前规则哈希表中其他用户的静态规则对应的策略是否有效,若其他用户的静态规则对应的策略有效,则将当前用户的静态规则对应的策略置无效;若其他用户的静态规则对应的策略均无效,则可直接将整个规则哈希表置无效。
可选的,当所述命令类型为写入内存中的任一当前静态规则时,所述基于命令类型,以及与命令类型对应的预设管理规则,对内存中的与操作命令对应的静态规则进行对应管理,具体可以是:基于对内存中的当前所述静态规则进行写入的操作,判断内存中当前静态规则的规则ID表是否有效;若当前静态规则的规则ID表中有效,则将当前静态规则的规则ID表中的原始的当前静态规则的内容进行擦除,并重新将新的当前静态规则写入当前静态规则的规则ID表;若当前静态规则的规则ID表中无效,则获取当前静态规则对应的哈希地址,判断当前静态规则对应的规则哈希表中当前静态规则的策略是否有效,若有效,则获取当前静态规则的规则ID,将当前静态规则的规则ID表中的原始的当前静态规则的内容进行擦除,并重新将新的当前静态规则写入当前静态规则的规则ID表和当前静态规则的规则哈希表中,若无效,则将当前静态规则写入规则哈希表和规则ID表中。
示例性的,当要写入内存中一个静态规则(当前静态规则)时,首先判断内存中当前静态规则对应的规则ID表是否有效,若当前静态规则对应的规则ID表有效,则将当前静态规则的规则ID表中的原始的当前静态规则的内容进行擦除,并重新将新的当前静态规则写入规则ID表中。
若当前静态规则对应的规则ID表无效,则获取当前静态规则对应的哈希地址,判断当前静态规则的规则哈希表中当前静态规则对应的策略是否有效,若当前静态规则的策略有效,则将当前静态规则的策略擦除,同时获取当前静态规则的规则ID,并重新将新的当前静态规则写入当前静态规则的规则ID表和规则哈希表中。若当前静态规则的策略无效,则将当前静态规则直接写入当前静态规则对应的规则哈希表和规则ID表中即可。
这样通过接收批量的待管理的静态规则的操作命令,来批量对内存中对应的静态规则进行管理,即接收到批量的静态规则的操作命令后,采用先将操作命令存入FPGA内部RAM,然后统一写入内存的方式,以及先将内存中规则读出到内部FIFO再由主控读取的方式。这样相比现有技术中的静态规则的管理方法的执行示意图中每次操作命令都要独立的访问内存,本发明实施例的技术方案,可对主控发送的操作命令得到批量处理,提高了静态规则的管理操作的效率,实现了对现网大规模规则策略需求的内存管理的效果。
本发明实施例的技术方案,通过基于静态规则的规则ID,确定静态规则的规则ID表;基于静态规则的规则ID和静态规则中的五元组,确定静态规则的规则哈希表,这样确定各静态规则的规则ID表和规则哈希表,以便后续根据各静态规则的操作命令,来对各静态规则进行对应管理。
实施例三
本发明实施例与上述实施例中各个可选方案可以结合。在本发明实施例中,在擦除操作和写入操作中,依据计算后的哈希地址找到对应的规则哈希表,是指与静态规则中的五元组完全匹配的规则哈希表。由于规则配置存在哈希地址冲突的情况,即多个静态规则中的五元组所计算得到的哈希地址是相同的,这样在获取哈希地址时就会存在冲突,冲突的规则配置会形成哈希链,在形成哈希链时就不知道该节点处的哈希地址对应哪个静态规则。因此,通过如下方式,来避免这种冲突:
可选的,当命令类型是对静态规则进行擦除操作时,当对内存中规则哈希表中当前静态规则的策略置无效后,将规则哈希表中的当前静态规则的哈希地址处的指针移动到当前静态规则的哈希地址的前一个哈希地址处,即将指针由当前节点移动到下一节点处。
示例性的,参考图5所述的静态规则的管理方法的执行流程图,在擦除操作中,当对内存中的规则哈希表中的当前静态规则的策略置无效后,将规则哈希表中的当前静态规则的哈希地址处的指针移动到当前静态规则的哈希地址的前一哈希地址处。这样利用指针的方式,精准找到要管理的静态规则。
需要说明的是,上述指针移动的实现是在当前静态规则对应的整个规则哈希表无效,且当前静态规则所构成的哈希链不是单独的只有一个节点时,指针才会移动,若在哈希链中只有一个节点,这将该节点擦除后,不需移动指针。
可选的,当命令类型是对静态规则进行写入操作时,当将当前静态规则写入内存中的规则ID表和规则哈希表中后,获取新的指针来将下一静态规则进行写入内存。
示例性的,在写入操作中,当将当前静态规则写入内存中的规则ID表和规则哈希表中后,获取一个新的指针来将下一静态规则进行写入。这样利用指针的方式,精准找到要管理的静态规则。
需要说明的是,在图5中node0地址是指当前静态规则所对应的哈希地址;rule-id指当前静态规则的规则ID;id表对应的是规则ID表;指针node0表示当前指针;指针node1表示在当前指针的基础上,新获取的指针。
需要说明的是,上述获取新的指针是在哈希链有冲突的情况下才会实现,即在多个静态规则对应的哈希地址为同一个时,且这几个静态规则中至少两个均在哈希链中出现,即造成哈希链有冲突时才取新的指针。当获取到新的指针后,再写入下一静态规则。
本发明实施例的技术方案,在擦除和写入操作中,通过指针的方式,精准找到要管理的静态规则,避免静态规则管理的混乱的问题。
实施例四
图6为本发明实施例四提供的静态规则的管理装置的结构示意图,如图6所示,该装置包括:操作命令接收模块31、操作命令解析模块32和管理模块33。
其中,操作命令接收模块31,用于接收待管理的批量静态规则的操作命令;
操作命令解析模块32,用于对所述操作命令进行解析,确定所述操作命令的命令类型;
管理模块33,用于基于所述命令类型,以及与所述命令类型对应的预设管理规则,对内存中的与所述操作命令对应的静态规则进行对应管理。
可选的,所述操作命令包括:所述静态规则的规则类型。
在上述实施例的技术方案的基础上,操作命令解析模块32具体用于:
对所述操作命令进行解析,基于解析出的所述操作命令中的所述静态规则的规则类型,确定所述操作命令的命令类型。
可选的,所述操作命令包括:所述静态规则的规则ID和所述静态规则中的五元组。
在上述实施例的技术方案的基础上,该装置还包括:
规则ID表确定模块,用于基于所述静态规则的规则ID,确定所述静态规则的规则ID表;
规则哈希表确定模块,用于基于所述静态规则的规则ID和所述静态规则中的五元组,确定所述静态规则的规则哈希表。
可选的,当所述命令类型为对所述静态规则进行读取的操作时;管理模块33具体用于:
对于任一当前静态规则,基于对内存中的所述当前静态规则进行读取的操作,判断内存中所述当前静态规则对应的规则ID表是否有效;若有效,则返回所述当前静态规则所对应的规则ID表中的内容;若无效,则返回无效信息,其中,所述无效信息用于指示所述当前静态规则所对应的规则ID表无效。
可选的,当所述命令类型为对所述静态规则进行擦除的操作时;管理模块33具体用于:
对于任一当前静态规则,基于对内存中的当前静态规则进行擦除的操作,判断内存中所述当前静态规则的规则ID表中是否有效;若所述当前静态规则的规则ID表有效,则获取所述当前静态规则对应的所述规则哈希表中所述当前静态规则的策略,将所述当前静态规则对应的规则哈希表中所述当前静态规则的策略置无效,并将所述当前静态规则对应的所述规则ID表置无效;若所述当前静态规则的规则ID表无效,则返回无效信息,其中,所述无效信息用于指示所述当前静态规则的规则ID表中无效。
可选的,当所述命令类型为对所述静态规则进行写入的操作时;管理模块33具体用于:
对于任一当前静态规则,基于对内存中的当前所述静态规则进行写入的操作,判断内存中所述当前静态规则的规则ID表是否有效;若所述当前静态规则的规则ID表中有效,则将所述当前静态规则的规则ID表中的原始的当前静态规则的内容进行擦除,并重新将新的当前静态规则写入所述当前静态规则的规则ID表;若所述当前静态规则的规则ID表中无效,则获取所述当前静态规则对应的哈希地址,判断所述当前静态规则对应的所述规则哈希表中所述当前静态规则的策略是否有效,若有效,则获取所述当前静态规则的规则ID,将所述当前静态规则的规则ID表中的原始的当前静态规则的内容进行擦除,并重新将新的当前静态规则写入所述当前静态规则的规则ID表和所述当前静态规则的规则哈希表,若无效,则将所述当前静态规则写入所述规则哈希表和所述规则ID表中。
在上述实施例的技术方案的基础上,该装置还包括:
第一指针移动模块,用于当所述命令类型是对所述静态规则进行擦除的操作时,当对内存中所述规则哈希表中所述当前静态规则的策略置无效后,将所述规则哈希表中的所述当前静态规则的哈希地址处的指针移动到所述当前静态规则的哈希地址的前一个哈希地址处。
第二指针移动模块,用于当所述命令类型是对所述静态规则进行写入的操作时,当将当前静态规则写入内存中的规则ID表和规则哈希表中后,获取新的指针来将下一静态规则进行写入内存。
本发明实施例所提供的静态规则的管理装置可执行本发明任意实施例所提供的静态规则的管理方法,具备执行方法相应的功能模块和有益效果。
实施例五
图7为本发明实施例五提供的一种电子设备的结构示意图,如图7所示,该电子设备包括处理器70、存储器71、输入装置72和输出装置73;电子设备中处理器70的数量可以是一个或多个,图7中以一个处理器70为例;电子设备中的处理器70、存储器71、输入装置72和输出装置73可以通过总线或其他方式连接,图7中以通过总线连接为例。
存储器71作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的静态规则的管理方法对应的程序指令/模块(例如,操作命令接收模块31、操作命令解析模块32和管理模块33)。处理器70通过运行存储在存储器71中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述的静态规则的管理方法。
存储器71可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器71可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器71可进一步包括相对于处理器70远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置72可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。输出装置73可包括显示屏等显示设备。
实施例六
本发明实施例六还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种静态规则的管理方法。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的静态规则的管理方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机电子设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述静态规则的管理装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (8)

1.一种静态规则的管理方法,其特征在于,应用于数字集成电路芯片,包括:
接收待管理的批量静态规则的操作命令;其中,所述操作命令包括:所述静态规则的规则类型;所述静态规则的规则类型是静态规则的类型,包括写入、读取或擦除;
对所述操作命令进行解析,确定所述操作命令的命令类型;
基于所述命令类型,以及与所述命令类型对应的预设管理规则,对内存中的与所述操作命令对应的静态规则进行对应管理;
采用先将所述操作命令存入FPGA内部的RAM,再统一写入所述内存的方式,以及先将所述内存中的与所述操作命令对应的静态规则读出到内部FIFO,再由主控读取的方式;
其中,所述对所述操作命令进行解析,确定所述操作命令的命令类型,包括:
对所述操作命令进行解析,基于解析出的所述操作命令中的所述静态规则的规则类型,确定所述操作命令的命令类型;
对所述操作命令对应的静态规则的内容进行预处理,将所述静态规则的内容的格式转换为所述FPGA处理的数据格式,根据所述操作命令的命令类型计算所述操作命令对应的静态规则的哈希地址;
所述操作命令包括:所述静态规则的规则ID和所述静态规则中的五元组;
在对所述操作命令进行解析,确定所述操作命令的命令类型之后,所述方法还包括:
基于所述静态规则的规则ID,确定所述静态规则的规则ID表;
基于所述静态规则的规则ID和所述静态规则中的五元组,确定所述静态规则的规则哈希表。
2.根据权利要求1所述的方法,其特征在于,所述命令类型包括:对所述静态规则进行读取的操作;
对于任一当前静态规则,所述基于所述命令类型,以及与所述命令类型对应的预设管理规则,对内存中的与所述操作命令对应的静态规则进行对应管理,包括:
基于对内存中的所述当前静态规则进行读取的操作,判断内存中所述当前静态规则对应的规则ID表是否有效;
若有效,则返回所述当前静态规则所对应的规则ID表中的内容;
若无效,则返回无效信息,其中,所述无效信息用于指示所述当前静态规则所对应的规则ID表无效。
3.根据权利要求1所述的方法,其特征在于,所述命令类型包括:对所述静态规则进行擦除的操作;
对于任一当前静态规则,所述基于所述命令类型,以及与所述命令类型对应的预设管理规则,对内存中的与所述操作命令对应的静态规则进行对应管理,包括:
基于对内存中的当前静态规则进行擦除的操作,判断内存中所述当前静态规则的规则ID表中是否有效;
若所述当前静态规则的规则ID表有效,则获取所述当前静态规则对应的所述规则哈希表中所述当前静态规则的策略,将所述当前静态规则对应的规则哈希表中所述当前静态规则的策略置无效,并将所述当前静态规则对应的所述规则ID表置无效;
若所述当前静态规则的规则ID表无效,则返回无效信息,其中,所述无效信息用于指示所述当前静态规则的规则ID表中无效。
4.根据权利要求1所述的方法,其特征在于,所述命令类型包括:对所述静态规则进行写入的操作;
对于任一当前静态规则,所述基于所述命令类型,以及与所述命令类型对应的预设管理规则,对内存中的与所述操作命令对应的静态规则进行对应管理,包括:
基于对内存中的当前所述静态规则进行写入的操作,判断内存中所述当前静态规则的规则ID表是否有效;
若所述当前静态规则的规则ID表中有效,则将所述当前静态规则的规则ID表中的原始的当前静态规则的内容进行擦除,并重新将新的当前静态规则写入所述当前静态规则的规则ID表;
若所述当前静态规则的规则ID表中无效,则获取所述当前静态规则对应的哈希地址,判断所述当前静态规则对应的所述规则哈希表中所述当前静态规则的策略是否有效,若有效,则获取所述当前静态规则的规则ID,将所述当前静态规则的规则ID表中的原始的当前静态规则的内容进行擦除,并重新将新的当前静态规则写入所述当前静态规则的规则ID表和所述当前静态规则的规则哈希表,若无效,则将所述当前静态规则写入所述规则哈希表和所述规则ID表中。
5.根据权利要求3所述的方法,其特征在于,当所述命令类型是对所述静态规则进行擦除的操作时,所述方法还包括:
当对内存中所述规则哈希表中所述当前静态规则的策略置无效后,将所述规则哈希表中的所述当前静态规则的哈希地址处的指针移动到所述当前静态规则的哈希地址的前一个哈希地址处。
6.一种静态规则的管理装置,其特征在于,设置于数字集成电路芯片中,包括:
操作命令接收模块,用于接收待管理的批量静态规则的操作命令;其中,所述操作命令包括:所述静态规则的规则类型;所述静态规则的规则类型是静态规则的类型,包括写入、读取或擦除;
操作命令解析模块,用于对所述操作命令进行解析,确定所述操作命令的命令类型;
管理模块,用于基于所述命令类型,以及与所述命令类型对应的预设管理规则,对内存中的与所述操作命令对应的静态规则进行对应管理;
采用先将所述操作命令存入FPGA内部的RAM,再统一写入所述内存的方式,以及先将所述内存中的与所述操作命令对应的静态规则读出到内部FIFO,再由主控读取的方式;
所述操作命令解析模块,具体用于对所述操作命令进行解析,基于解析出的所述操作命令中的所述静态规则的规则类型,确定所述操作命令的命令类型;对所述操作命令对应的静态规则的内容进行预处理,将所述静态规则的内容的格式转换为所述FPGA处理的数据格式,根据所述操作命令的命令类型计算所述操作命令对应的静态规则的哈希地址;
所述操作命令包括:所述静态规则的规则ID和所述静态规则中的五元组;
规则ID表确定模块,用于基于所述静态规则的规则ID,确定所述静态规则的规则ID表;
规则哈希表确定模块,用于基于所述静态规则的规则ID和所述静态规则中的五元组,确定所述静态规则的规则哈希表。
7.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-5中任一所述的静态规则的管理方法。
8.一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-5中任一所述的静态规则的管理方法。
CN202011110922.XA 2020-10-16 2020-10-16 静态规则的管理方法、装置、电子设备和存储介质 Active CN112291212B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011110922.XA CN112291212B (zh) 2020-10-16 2020-10-16 静态规则的管理方法、装置、电子设备和存储介质
PCT/CN2021/108832 WO2022078001A1 (zh) 2020-10-16 2021-07-28 静态规则的管理方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011110922.XA CN112291212B (zh) 2020-10-16 2020-10-16 静态规则的管理方法、装置、电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN112291212A CN112291212A (zh) 2021-01-29
CN112291212B true CN112291212B (zh) 2023-02-28

Family

ID=74497693

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011110922.XA Active CN112291212B (zh) 2020-10-16 2020-10-16 静态规则的管理方法、装置、电子设备和存储介质

Country Status (2)

Country Link
CN (1) CN112291212B (zh)
WO (1) WO2022078001A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112291212B (zh) * 2020-10-16 2023-02-28 北京锐安科技有限公司 静态规则的管理方法、装置、电子设备和存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101410795A (zh) * 2003-10-24 2009-04-15 微软公司 可伸缩的对监控规则的同步与异步处理
CN101989241A (zh) * 2009-08-07 2011-03-23 无锡江南计算技术研究所 读-修改-写处理系统及方法
WO2012155642A1 (zh) * 2011-07-21 2012-11-22 中兴通讯股份有限公司 一种对使用受限资源的批量操作的调度方法和装置
CN102957551A (zh) * 2011-08-23 2013-03-06 华为终端有限公司 一种批量管理设备的方法和系统
CN106484912A (zh) * 2016-10-26 2017-03-08 乐视控股(北京)有限公司 一种云盘资源的处理方法和装置
CN108768859A (zh) * 2018-05-17 2018-11-06 迈普通信技术股份有限公司 数据处理方法、装置及系统
CN109376004A (zh) * 2018-08-20 2019-02-22 中国平安人寿保险股份有限公司 基于集群计算的数据批处理方法、装置、电子设备及介质
CN110060034A (zh) * 2019-04-28 2019-07-26 北京达佳互联信息技术有限公司 工单处理方法、装置、电子设备及存储介质
CN110895490A (zh) * 2019-11-29 2020-03-20 深圳乐信软件技术有限公司 一种数据批量处理系统、方法、设备和存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101753420A (zh) * 2008-12-22 2010-06-23 华为技术有限公司 一种管理芯片表的方法及设备
US10083200B2 (en) * 2013-03-14 2018-09-25 Cavium, Inc. Batch incremental update
CN105786733B (zh) * 2014-12-26 2020-08-07 南京中兴新软件有限责任公司 一种写入tcam条目的方法及装置
CN106789697B (zh) * 2016-12-01 2019-12-13 北京锐安科技有限公司 一种提高大批量网络流表老化效率的方法及装置
CN112291212B (zh) * 2020-10-16 2023-02-28 北京锐安科技有限公司 静态规则的管理方法、装置、电子设备和存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101410795A (zh) * 2003-10-24 2009-04-15 微软公司 可伸缩的对监控规则的同步与异步处理
CN101989241A (zh) * 2009-08-07 2011-03-23 无锡江南计算技术研究所 读-修改-写处理系统及方法
WO2012155642A1 (zh) * 2011-07-21 2012-11-22 中兴通讯股份有限公司 一种对使用受限资源的批量操作的调度方法和装置
CN102957551A (zh) * 2011-08-23 2013-03-06 华为终端有限公司 一种批量管理设备的方法和系统
CN106484912A (zh) * 2016-10-26 2017-03-08 乐视控股(北京)有限公司 一种云盘资源的处理方法和装置
CN108768859A (zh) * 2018-05-17 2018-11-06 迈普通信技术股份有限公司 数据处理方法、装置及系统
CN109376004A (zh) * 2018-08-20 2019-02-22 中国平安人寿保险股份有限公司 基于集群计算的数据批处理方法、装置、电子设备及介质
CN110060034A (zh) * 2019-04-28 2019-07-26 北京达佳互联信息技术有限公司 工单处理方法、装置、电子设备及存储介质
CN110895490A (zh) * 2019-11-29 2020-03-20 深圳乐信软件技术有限公司 一种数据批量处理系统、方法、设备和存储介质

Also Published As

Publication number Publication date
WO2022078001A1 (zh) 2022-04-21
CN112291212A (zh) 2021-01-29

Similar Documents

Publication Publication Date Title
WO2017107414A1 (zh) 文件操作方法和装置
CN110808857B (zh) 实现Kubernetes集群的网络互通方法、装置、设备以及存储介质
CN112040030A (zh) 报文传输方法、装置、计算机设备及存储介质
WO2023056797A1 (zh) 基于区块链的数据处理方法、装置、设备及存储介质
CN113141405A (zh) 服务访问方法、中间件系统、电子设备和存储介质
CN112860953A (zh) 图数据库的数据导入方法、装置、设备及存储介质
CN111737564A (zh) 一种信息查询方法、装置、设备及介质
CN114465956B (zh) 虚拟机流量限速的方法、装置、电子设备及存储介质
CN112291212B (zh) 静态规则的管理方法、装置、电子设备和存储介质
CN113157198A (zh) 管理缓存的方法、设备和计算机程序产品
CN117608856A (zh) NVMe加速卡内存扩展方法、系统、终端及存储介质
CN110737678B (zh) 一种数据查找方法、装置、设备和存储介质
CN111522626B (zh) 一种虚拟机列表生成方法、装置及电子设备
US9535713B2 (en) Manipulating rules for adding new devices
CN116032614A (zh) 容器网络微隔离方法、装置、设备和介质
CN114338529B (zh) 五元组规则匹配方法及装置
CN113992358B (zh) 网络安全策略的分配方法及装置
CN115580497A (zh) 容器环境下数据传输控制方法、设备及存储介质
CN115495406A (zh) 一种基于PCIe的报文传输方法、装置、设备及存储介质
US8219667B2 (en) Automated identification of computing system resources based on computing resource DNA
CN111669358B (zh) 一种批量处理vrouter网络隔离空间的方法和装置
CN111061744B (zh) 图数据的更新方法、装置、计算机设备及存储介质
CN109068170B (zh) 一种弹幕消息的存储方法、装置、终端和存储介质
CN114071448A (zh) 一种数据传输方法、相关网络节点和存储介质
CN110960858A (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