CN114124541B - 一种规则id的数据处理方法、装置、设备及存储介质 - Google Patents

一种规则id的数据处理方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN114124541B
CN114124541B CN202111413232.6A CN202111413232A CN114124541B CN 114124541 B CN114124541 B CN 114124541B CN 202111413232 A CN202111413232 A CN 202111413232A CN 114124541 B CN114124541 B CN 114124541B
Authority
CN
China
Prior art keywords
rule
bit
tuple
traversal
ids
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
CN202111413232.6A
Other languages
English (en)
Other versions
CN114124541A (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 CN202111413232.6A priority Critical patent/CN114124541B/zh
Publication of CN114124541A publication Critical patent/CN114124541A/zh
Application granted granted Critical
Publication of CN114124541B publication Critical patent/CN114124541B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0263Rule management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种规则ID的数据处理方法、装置、设备及存储介质。通过获取规则ID分配请求;从预设存储区域中获取至少两个ID元组所对应的比特位合值;根据比特位合值确定存在未分配规则ID的ID元组,作为当前目标ID元组;在当前目标ID元组中,遍历对应的比特位值,并确定未分配的规则ID作为当前分配ID;将当前分配ID,响应规则ID分配请求,并将当前分配ID对应的比特位值变更为已分配状态。解决了现有技术中分配规则ID所需时间长且效率低的问题,达到在庞大数量的规则中也可以快速查找到一个最小可用的ID分配给规则,实现尽量满足越来越高的规则配置性能要求的效果。

Description

一种规则ID的数据处理方法、装置、设备及存储介质
技术领域
本发明实施例涉及计算机网络安全技术,尤其涉及一种规则ID的数据处理方法、装置、设备及存储介质。
背景技术
汇聚分流设备上配置规则时,为了方便对规则进行管理,需要给每条规则分配一个规则ID。
规则ID的分配方式一般分为两种:一种是用户自己指定规则ID,并确保规则ID可用,当指定的规则ID已被使用时,会导致规则配置失败;另一种是用户不指定规则ID,由系统自动分配一个可用的ID给规则。由于使用简便,实际使用场景中,多采用第二种自动分配的方式配置规则。
一种常见的规则ID自动分配方法:每次分配规则ID时,从头遍历规则列表,查找最小的、可用ID分配给规则,具体实现方式如图1所示。此种方法的好处是,逻辑简单,实现容易。不过,缺点也很明显,处理效率低下,且随着规则的增多,效率会越来越慢。
一种典型的规则配置场景:批量下发多条规则,由系统自动分配规则ID。在此使用场景下,规则连续存放,规则ID连续,每配置一条规则,规则ID实际上只用逐条加1就可以。但是使用上述方法,每次分配规则ID均需要从头开始遍历,直至最后一条规则,才可以找到一个可用的规则ID。其时间复杂度为O(n),随着规则数量的增多,分配一个规则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所对应所有比特位数值的聚合值;
合值确定模块,用于根据所述比特位合值确定存在未分配规则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分配给规则,实现尽量满足越来越高的规则配置性能要求的效果。
附图说明
图1是本发明实施例一提供的一种规则ID的数据处理方法;
图2是本发明实施例二提供的一种规则ID的数据处理方法;
图3是本发明实施例二提供的一种规则ID的数据处理方法;
图4是本发明实施例四提供的一种规则ID的数据处理装置;
图5是本发明实施例五提供的一种汇聚分流设备的结构图。
图6是本发明实施例适用的第一次遍历示意图。
图7为本发明实施例适用第二次遍历示意图。
图8为本发明实施例适用的从起始ID开始遍历示意图。
图9为本发明实施例适用的规则ID分配方法示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
汇聚分流设备作为一种旁路部署的分流设备,将复制来的报文按制定规则进行过滤分流等处理,送往后端业务系统。因此,汇聚分流设备里可以对规则进行配置,并为规则分配规则ID。在对报文进行汇聚分流时,汇聚分流设备划分了若干个业务,规则ID可以下发至不同的业务之中,不同的业务可配置不同的动作。在现有技术中,每次分配规则ID时,采取的方法为从头开始遍历,直至最后一条规则,才可以找到一个可用的规则ID。其时间复杂度为O(n),而且随着规则数量的增多,分配一个规则ID所需的时间会随之逐步增长,效率极其低下。所以现有技术中的规则ID配置方法存在效率低和可行性差的技术问题。有鉴于此,本发明实施例提供了一种规则ID配置方法,用以解决上文中所提出的技术问题。
实施例一
图1为本发明实施例一提供的一种规则ID的数据处理的流程图,本实施例可适用于分配规则ID的场景,该方法可以由一种分配规则ID的数据处理装置来执行,该装置可以由软件和/或硬件的形式来实现,可配置在汇聚分流设备中。该方法具体包括如下步骤:
S110、获取规则ID分配请求;
本实施例中,由于汇聚分流设备划分了若干个业务,规则ID可以下发至不同的业务之中,不同的业务可以配置不同的规则ID。其中,规则可以是用于描述和约束业务的语句,用来刻画业务的结构或控制和影响业务的行为。为了方便对规则进行管理和约束,因此,要为规则分配规则ID首先需要获取规则ID的分配请求,服务器接收到规则ID分配请求时才可以为规则分配规则ID。
S120、从预设存储区域中获取至少两个ID元组所对应的比特位合值,其中,每个ID元组包括多条规则ID,每条规则ID与一个比特位存在映射关系,所述比特位的数值用于标识对应的规则ID的分配状态,所述比特位合值为每个ID元组的规则ID所对应所有比特位数值的聚合值;
其中,存储区域可以用于在服务器与存储资源之间传输数据,存储区域可以存储整型数据,例如字节型数据等。位(bit)表示二进制位,比特位可以是计算机内部数据储存的最小单位;字节(byte)可以是计算机中数据处理的基本单位。计算机中以字节为单位存储和解释信息,规定一个字节由八个二进制位构成,即1个字节等于8个比特(1Byte=8bit)。八位二进制数最小为00000000,最大为11111111。
本实施例中,通过从预先选取的存储区域中获取至少两个元组对应的比特位合值,其中,元组可以是一种有序元素的数据类型,通常可以用来存储相关的信息。其中,每个ID元组可以包含多条规则ID,每条规则ID可以与一个比特位存在映射关系,比特位的数值可以用于标识对应的规则ID的分配状态,比特位合值可以为每个ID元组的规则ID所对应所有比特位数值的聚合值。
本实施例中ID元组以字节为例,即,以4字节为单位,获取其对应的比特位数值的聚合值为32bit。其中,每一个比特位可以表示一个规则ID,这是以bitmap的形式建立内存中每一位比特位与规则ID的映射关系,比特位的数值可以表示规则ID的分配状态,例如,0表示未分配,1表示已分配,并通过判断每个4字节的整型值是否为0XFFFFFFFF的方式来确定该段比特位表示的32个规则ID的分配状态。
本实施例中可以设置多个ID元组,可以设置额外的内存空间,用于存储ID元组的映射比特位。
S130、根据所述比特位合值确定存在未分配规则ID的ID元组,作为当前目标ID元组;
本实施例中可以根据比特位聚合值的分配状态确定处于未分配状态的规则ID的ID元组,将未分配规则ID的ID元组作为当前的目标ID元组。
具体的,从起始规则ID开始进行第一次遍历,如图6所示,以4字节(32bit)为单位进行,找到第一个值不为0xFFFFFFFF的4字节,当整型值不为0xFFFFFFFF时,表示该段32个规则ID中有处于未分配状态的规则ID,也就表示找到未分配状态的规则ID所在的范围,将该段范围作为当前的目标ID元组。
S140、在所述当前目标ID元组中,遍历对应的比特位值,并确定未分配的规则ID作为当前分配ID;
本实施例中可以在当前目标ID元组中所对应的所有比特位值中,从设定遍历起始ID的位置开始,进行以比特位为单位进行的第二次遍历,如图7所示;根据遍历结果确定未分配的规则ID。即,从第一个比特位开始遍历找到的4个字节,找到第一个值为0的比特位,根据一个比特位可以表示一个规则ID的映射关系,即可确定未分配的规则ID作为当前分配ID。
具体的,在ID元组的规则ID均未分配的初始状态,设置ID元组所对应的比特位中,按照遍历顺序设置起始位置,作为设定遍历起始ID。
本实施例中,当系统中处于未分配的初始状态时,即,系统中没有一条规则时,起始ID设置为1。
另一个实施例中,当所有规则被清除之后,系统中无规则,则再次将遍历起始ID设置为1。
S150、将所述当前分配ID,响应所述规则ID分配请求,并将所述当前分配ID对应的比特位值变更为已分配状态。
本实施例中可以在当获取到规则ID分配请求时,响应规则ID请求,为当前规则分配规则ID,并将当前分配的ID对应的比特位值变更为已分配状态,进一步地,可以将当前分配ID作为设定遍历起始ID,该遍历起始规则ID可以表示其之前的所有规则ID均已被使用,无需遍历,每次遍历从该ID开始往后查找,如图8所示。因此,在每次添加规则、删除规则、清除所有规则等涉及规则数量变化的操作成功后都需要同步修改该起始ID。这样可以便于缩小遍历范围,再次减少遍历次数,进而提高处理性能。本实施例的技术方案,通过获取规则ID分配请求;从预设存储区域中获取至少两个ID元组所对应的比特位合值,其中,每个ID元组包括多条规则ID,每条规则ID与一个比特位存在映射关系,所述比特位的数值用于标识对应的规则ID的分配状态,所述比特位合值为每个ID元组的规则ID所对应所有比特位数值的聚合值;根据所述比特位合值确定存在未分配规则ID的ID元组,作为当前目标ID元组;在所述当前目标ID元组中,遍历对应的比特位值,并确定未分配的规则ID作为当前分配ID;将所述当前分配ID,响应所述规则ID分配请求,并将所述当前分配ID对应的比特位值变更为已分配状态。解决了现有技术中分配规则ID所需时间长且效率低的问题,达到在庞大数量的规则中也可以快速查找到一个最小可用的ID分配给规则,实现尽量满足越来越高的规则配置性能要求的效果。
实施例二
图二为本发明实施例二所提供的一种规则ID的数据处理方法的流程图,在上述实施例的基础上进行优化,具体的,该方法包括如下步骤:
S210、获取规则ID删除请求;
本实施例中,由于汇聚分流设备划分了若干个业务,规则ID可以下发至不同的业务之中,不同的业务可以配置不同的规则ID。其中,规则可以是用于描述和约束业务的语句,用来刻画业务的结构或控制和影响业务的行为。为了方便对规则进行管理和约束,因此,在进行规则ID删除时需要获取规则ID的删除请求。
S220、根据所述规则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的效果。
实施例三
图3为本发明实施例三所提供的一种规则ID的数据处理方法的流程图,本实施例中可以采用指定规则分配ID的情况,具体的,该方法包括如下步骤:
S310、获取规则ID分配请求;
S320、如果所述规则ID分配请求为指定规则ID的分配请求,则在所述ID元组中确定指定规则ID;
S330、如果所述指定规则ID为设定遍历起始ID,则将所述设定遍历起始ID响应所述规则ID分配请求;
S340、将所述设定遍历起始ID的比特位值变更为已分配状态,且将下一个规则ID变更为设定遍历起始ID。
S350、如果按照遍历顺序,所述指定规则ID位置在设定遍历起始ID的位置之后,则将所述指定规则ID响应所述规则ID分配请求,维持所述设定遍历起始ID的位置不变。
S360、如果按照遍历顺序,所述指定规则ID位置在设定遍历起始ID的位置之前,则响应所述规则ID分配请求为失败,且维持所述设定遍历起始ID的位置不变。
本实施例中,如果指定的规则ID等于遍历起始ID,那么表示起始ID可用,且此次已使用,则起始ID加1,以后从下一个规则ID开始遍历;
如果指定的规则ID大于遍历起始ID,不能确定该ID之前的规则ID是否均已被使用,所以遍历起始ID不变,下一次还从该起始ID开始遍历;
如果指定的规则ID小于遍历起始ID,对应的规则ID已被其它规则使用,添加操作会失败,因此遍历起始ID不需要变化。
本实施例的技术方案通过采用指定规则分配ID添加规则。维护一个遍历起始ID,用于缩小遍历范围,再次减少遍历次数。与其他方法相比,大大提高了规则ID分配的效率,也显著的提高了查找性能,使规则配置性能满足各集采测试要求成为可能。实现了高效管理规则ID的效果。
实施例四
图4为本发明实施例四所提供的一种规则ID的数据处理装置的结构图,该装置可执行本发明任意实施例所提供的一种规则ID的数据处理方法,具体的,该装置包括:
获取分配情况模块410,用于获取规则ID分配请求;
合值获取模块420,用于从预设存储区域中获取至少两个ID元组所对应的比特位合值,其中,每个ID元组包括多条规则ID,每条规则ID与一个比特位存在映射关系,所述比特位的数值用于标识对应的规则ID的分配状态,所述比特位合值为每个ID元组的规则ID所对应所有比特位数值的聚合值;
合值确定模块430,用于根据所述比特位合值确定存在未分配规则ID的ID元组,作为当前目标ID元组;
ID确定模块440,用于在所述当前目标ID元组中,遍历对应的比特位值,并确定未分配的规则ID作为当前分配ID;
进一步地,在所述当前目标ID元组中,遍历对应的比特位值,并确定未分配的规则ID包括:
在所述当前目标ID元组中所对应的所有比特位值中,从设定遍历起始ID的位置开始,进行比特位值的遍历;
根据遍历结果确定未分配的规则ID。
进一步地,在ID元组的规则ID均未分配的初始状态,设置所述ID元组所对应的比特位中,按照遍历顺序设置起始位置,作为设定遍历起始ID;
相应的,将所述当前分配ID对应的比特位值变更为已分配状态之后,还包括:
在所述比特位中,将所述当前分配ID更新所述设定遍历起始ID。
ID分配模块450,用于将所述当前分配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变更为设定遍历起始ID;
如果按照遍历顺序,所述待删除规则ID位置在设定遍历起始ID的位置之后或相同,则维持所述设定遍历起始ID的位置不变。
在上述实施例的基础上,还包括:
指定规则模块,用于如果所述规则ID分配请求为指定规则ID的分配请求,则在所述ID元组中确定指定规则ID;
进一步地,如果按照遍历顺序,所述指定规则ID位置在设定遍历起始ID的位置之后,则将所述指定规则I响应所述规则ID分配请求,维持所述设定遍历起始ID的位置不变。
如果按照遍历顺序,所述指定规则ID位置在设定遍历起始ID的位置之前,则响应所述规则ID分配请求为失败,且维持所述设定遍历起始ID的位置不变。
设定遍历起始ID模块,用于如果所述指定规则ID为设定遍历起始ID,则将所述设定遍历起始ID响应所述规则ID分配请求;
更改分配状态模块,用于将所述设定遍历起始ID的比特位值变更为已分配状态,且将下一个规则ID变更为设定遍历起始ID。
本发明实施例提供的一种规则ID的数据处理装置与上述实施例提供的内一种规则ID的数据处理方法属于同一发明构思,未在本实施例中详尽描述的技术细节可参见上述实施例,并且本实施例具备执行一种规则ID的数据处理方法相同的有益效果。
实施例五
图5为本发明实施例五提供的一种汇聚分流设备的结构示意图,如图5所示,该设备包括处理器510、存储器520、输入装置530和输出装置540;设备中处理器510的数量可以是一个或多个,图5中以一个处理器510为例;设备中的处理器510、存储器520、输入装置530和输出装置540可以通过总线或其他方式连接,图5中以通过总线连接为例。
存储器520作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的一种规则ID的数据处理对应的程序指令/模块(例如,获取分配情况模块401、合值获取模块402、合值确定模块403、ID确定模块404、ID分配模块405)。处理器510通过运行存储在存储器520中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的一种规则ID的数据处理。
存储器520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器520可进一步包括相对于处理器510远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置530可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。输出装置530可包括显示屏等显示设备。
实施例六
本发明实施例六还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种规则ID的数据处理方法。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的一种规则ID的数据处理方法中的相关操作.
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (9)

1.一种规则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。
2.根据权利要求1所述的方法,其特征在于,还包括:
获取规则ID删除请求;
根据所述规则ID删除请求中的待删除规则ID,将ID元组对应的比特位值进行变更,以标识未分配状态。
3.根据权利要求1所述的方法,其特征在于,获取规则ID分配请求之后,还包括:
如果所述规则ID分配请求为指定规则ID的分配请求,则在所述ID元组中确定指定规则ID;
如果所述指定规则ID为设定遍历起始ID,则将所述设定遍历起始ID响应所述规则ID分配请求;
将所述设定遍历起始ID的比特位值变更为已分配状态,且将下一个规则ID变更为设定遍历起始ID。
4.根据权利要求1所述的方法,其特征在于,获取规则ID分配请求之后,还包括:
如果所述规则ID分配请求为指定规则ID的分配请求,则在所述ID元组中确定指定规则ID;
如果按照遍历顺序,所述指定规则ID位置在设定遍历起始ID的位置之后,则将所述指定规则ID响应所述规则ID分配请求,维持所述设定遍历起始ID的位置不变。
5.根据权利要求1所述的方法,其特征在于,获取规则ID分配请求之后,还包括:
如果所述规则ID分配请求为指定规则ID的分配请求,则在所述ID元组中确定指定规则ID;
如果按照遍历顺序,所述指定规则ID位置在设定遍历起始ID的位置之前,则响应所述规则ID分配请求为失败,且维持所述设定遍历起始ID的位置不变。
6.根据权利要求2所述的方法,其特征在于,根据所述规则ID删除请求中的待删除规则ID,将ID元组对应的比特位值进行变更,以标识未分配状态之后,还包括:
如果按照遍历顺序,所述待删除规则ID位置在设定遍历起始ID的位置之前,则将所述待删除规则ID变更为设定遍历起始ID;
如果按照遍历顺序,所述待删除规则ID位置在设定遍历起始ID的位置之后或相同,则维持所述设定遍历起始ID的位置不变。
7.一种规则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。
8.一种汇聚分流设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-6中任一所述的一种规则ID的数据处理方法。
9.一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-6中任一所述的一种规则ID的数据处理方法。
CN202111413232.6A 2021-11-25 2021-11-25 一种规则id的数据处理方法、装置、设备及存储介质 Active CN114124541B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111413232.6A CN114124541B (zh) 2021-11-25 2021-11-25 一种规则id的数据处理方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111413232.6A CN114124541B (zh) 2021-11-25 2021-11-25 一种规则id的数据处理方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN114124541A CN114124541A (zh) 2022-03-01
CN114124541B true CN114124541B (zh) 2024-02-09

Family

ID=80375542

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111413232.6A Active CN114124541B (zh) 2021-11-25 2021-11-25 一种规则id的数据处理方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN114124541B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7139837B1 (en) * 2002-10-04 2006-11-21 Ipolicy Networks, Inc. Rule engine
CN111026615A (zh) * 2019-12-20 2020-04-17 浪潮电子信息产业股份有限公司 一种逻辑卷列表获取方法、装置及电子设备和存储介质
CN112035460A (zh) * 2019-06-04 2020-12-04 北京京东尚科信息技术有限公司 一种标识分配方法、装置、设备和存储介质
CN113076303A (zh) * 2021-04-16 2021-07-06 北京京东拓先科技有限公司 分布式系统中业务标识的生成方法和装置
CN113157249A (zh) * 2021-04-22 2021-07-23 北京奇艺世纪科技有限公司 标识号生成方法、装置、电子设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7139837B1 (en) * 2002-10-04 2006-11-21 Ipolicy Networks, Inc. Rule engine
CN112035460A (zh) * 2019-06-04 2020-12-04 北京京东尚科信息技术有限公司 一种标识分配方法、装置、设备和存储介质
CN111026615A (zh) * 2019-12-20 2020-04-17 浪潮电子信息产业股份有限公司 一种逻辑卷列表获取方法、装置及电子设备和存储介质
CN113076303A (zh) * 2021-04-16 2021-07-06 北京京东拓先科技有限公司 分布式系统中业务标识的生成方法和装置
CN113157249A (zh) * 2021-04-22 2021-07-23 北京奇艺世纪科技有限公司 标识号生成方法、装置、电子设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一种基于比特数组的整型ID生成器算法;刘炳元;福建电脑(第10期);第110-111页 *

Also Published As

Publication number Publication date
CN114124541A (zh) 2022-03-01

Similar Documents

Publication Publication Date Title
US20170195282A1 (en) Address Processing Method, Related Device, and System
US20020144073A1 (en) Method for memory heap and buddy system management for service aware networks
CN104954468A (zh) 资源的分配方法及装置
JP2018518733A (ja) ファイル操作方法及び装置
CN111092930B (zh) 业务开通方法及装置
CN114070822B (zh) 一种Kubernetes Overlay IP地址管理方法
CN110244901B (zh) 任务分配方法及装置、分布式存储系统
CN103716383A (zh) 一种访问共享资源的方法及装置
CN110955704A (zh) 一种数据管理方法、装置、设备及存储介质
CN104506654A (zh) 云计算系统及动态主机配置协议服务器备份方法
CN110290228B (zh) 一种互联网协议ip地址分配方法及装置
CN104506669A (zh) 一种面向分布式网络仿真平台的ip地址分配系统及方法
CN113805816B (zh) 一种磁盘空间管理方法、装置、设备及存储介质
CN112650692A (zh) 堆内存分配方法、装置及存储介质
CN114124541B (zh) 一种规则id的数据处理方法、装置、设备及存储介质
CN109005071B (zh) 一种决策部署方法和调度设备
CN112486664A (zh) 一种节点扩容方法、系统、终端及存储介质
CN113596746B (zh) 集群消息的处理方法、装置、电子设备和介质
CN111769992B (zh) 一种网络数据的管理方法、云平台及存储介质
CN113055448B (zh) 一种元数据管理方法及装置
CN111988446B (zh) 一种报文处理方法、装置、电子设备及存储介质
CN114640678A (zh) 基于SR-IOV的Pod管理方法、设备及介质
CN112600915A (zh) 一种网络资源的申请方法、装置、设备及存储介质
CN106230751B (zh) 自适应调整资源占用比例的方法和装置
US20060168108A1 (en) Methods and systems for defragmenting subnet space within an adaptive infrastructure

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