CN116366292B - 报文处理方法、系统、存储介质及电子设备 - Google Patents
报文处理方法、系统、存储介质及电子设备 Download PDFInfo
- Publication number
- CN116366292B CN116366292B CN202310166330.7A CN202310166330A CN116366292B CN 116366292 B CN116366292 B CN 116366292B CN 202310166330 A CN202310166330 A CN 202310166330A CN 116366292 B CN116366292 B CN 116366292B
- Authority
- CN
- China
- Prior art keywords
- access control
- control list
- matching
- matching result
- message
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 27
- 238000012545 processing Methods 0.000 claims abstract description 42
- 230000006870 function Effects 0.000 claims abstract description 32
- 238000000034 method Methods 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 11
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000004891 communication Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/08—Access security
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种报文处理方法、系统、存储介质及电子设备。所述报文处理方法包括:接收报文并获取所述报文的查找密钥;利用哈希函数对所述查找密钥进行处理以获取哈希索引;根据所述查找密钥和所述哈希索引对第一访问控制列表、第二访问控制列表和第三访问控制列表进行匹配以获取目标操作,其中,所述第一访问控制列表和所述第二访问控制列表为哈希表,所述第三访问控制列表为三态内容寻址存储器表;对所述报文执行所述目标操作。所述报文处理方法有利于减小硬件开销。
Description
技术领域
本申请属于网络传输技术领域,涉及一种报文处理方法,特别是涉及一种报文处理方法、系统、存储介质及电子设备。
背景技术
访问控制列表(Access Control List,ACL)是一种用于控制计算机系统中用户或进程对资源访问权限的机制。ACL通常包括系统管理员定义的一组规则,这些规则指定了哪些用户可以访问该资源以及有访问权限的用户可以执行哪些操作。ACL可以应用于文件、文件夹、网络共享、数据库等各种资源。在操作系统和网络安全领域中,ACL是一种常见的安全机制,可以有效地控制用户对系统资源的访问权限,从而保护系统免受恶意攻击。就网络安全领域而言,ACL可以用于控制网络设备、服务器、路由器、防火墙等各种网络资源的访问权限,从而保护网络系统的安全性和稳定性。
发明内容
本申请的目的之一在于提供一种报文处理方法、系统、存储介质及电子设备。
第一方面,本申请实施例提供一种报文处理方法,所述报文处理方法包括:接收报文并获取所述报文的查找密钥;利用哈希函数对所述查找密钥进行处理以获取哈希索引;根据所述查找密钥和所述哈希索引对第一访问控制列表、第二访问控制列表和第三访问控制列表进行匹配以获取目标操作,其中,所述第一访问控制列表和所述第二访问控制列表为哈希表,所述第三访问控制列表为三态内容寻址存储器表;对所述报文执行所述目标操作。
在第一方面的一种实现方式中,利用哈希函数对所述查找密钥进行处理以获取哈希索引包括:利用第一哈希函数对所述查找密钥进行处理以获取第一哈希索引,利用第二哈希函数对所述查找密钥进行处理以获取第二哈希索引。
在第一方面的一种实现方式中,根据所述查找密钥和所述哈希索引对第一访问控制列表、第二访问控制列表和第三访问控制列表进行匹配以获取目标操作包括:根据第一匹配结果、第二匹配结果和/或第三匹配结果获取所述目标操作,其中:所述第一匹配结果是根据所述第一哈希索引和所述查找密钥对所述第一访问控制列表进行匹配得到;所述第二匹配结果是根据所述第二哈希索引和所述查找密钥对所述第二访问控制列表进行匹配得到;所述第三匹配结果是根据所述查找密钥对所述第三访问控制列表进行匹配得到。
在第一方面的一种实现方式中,在所述第一访问控制列表中,每个索引均对应于多个存储桶,各所述存储桶均对应于至少一种操作,根据所述第一哈希索引和所述查找密钥对所述第一访问控制列表进行匹配以获取所述第一匹配结果包括:从所述第一访问控制列表中获取对应于所述第一哈希索引的多个存储桶作为第一备选存储桶;利用所述第一备选存储桶的比较数据和所述查找密钥进行匹配以选取一所述第一备选存储桶作为所述第一匹配结果。
在第一方面的一种实现方式中,利用所述第一备选存储桶的比较数据和所述查找密钥进行匹配以选取一所述第一备选存储桶作为所述第一匹配结果包括:若存在至少两个所述第一备选存储桶与所述查找密钥相匹配,则从中选取编号最高的一个所述第一备选存储桶作为所述第一匹配结果。
在第一方面的一种实现方式中,根据所述查找密钥对所述第三访问控制列表进行匹配以获取所述第三匹配结果包括:若所述第三访问控制列表中存在多个条目与所述查找密钥相匹配,则从中选取编号最低的条目作为所述第三匹配结果。
在第一方面的一种实现方式中,获取所述报文的查找密钥包括:根据接收到的指令从所述报文中选取相对应的字段作为所述查找密钥。
第二方面,本申请实施例提供一种报文处理系统,所述报文处理系统包括:报文接收处理模块,被配置为接收报文并获取所述报文的查找密钥;哈希索引获取模块,被配置为利用哈希函数对所述查找密钥进行处理以获取哈希索引;列表匹配模块,被配置为根据所述查找密钥和所述哈希索引对第一访问控制列表、第二访问控制列表和第三访问控制列表进行匹配以获取目标操作,其中,所述第一访问控制列表和所述第二访问控制列表为哈希表,所述第三访问控制列表为三态内容寻址存储器表;操作执行模块,被配置为对所述报文执行所述目标操作。
第三方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本申请第一方面中任一实现方式所述的报文处理方法。
第四方面,本申请实施例提供一种电子设备,其特征在于,所述电子设备包括:存储器,存储有一计算机程序;处理器,与所述存储器通信相连,调用所述计算机程序时执行本申请第一方面中任一实现方式所述的报文处理方法法。
本申请实施例提供的报文处理方法引入了第一访问控制列表和第二访问控制列表,该第一访问控制列表和第二访问控制列表均为哈希表,因而可以使用较少的硬件资源来完成快速的精确匹配,从而满足日益增长的网络报文的分类查找需求。
附图说明
图1显示为本申请一实施例中报文处理方法的应用场景示例图。
图2显示为本申请一实施例中报文处理方法的流程图。
图3A显示为本申请一实施例中获取目标操作的流程图。
图3B显示为本申请一实施例中获取第一匹配结果的流程图。
图4显示为本申请一实施例中报文处理系统的结构示意图。
图5显示为本申请一实施例中电子设备的结构示意图。
元件标号说明
4 报文处理系统
41 报文接收处理模块
42 哈希索引获取模块
43 列表匹配模块
44 操作执行模块
500 电子设备
510 存储器
520 处理器
530 显示器
S11~S14 步骤
S21~S24 步骤
S211~S212 步骤
具体实施方式
以下通过特定的具体实例说明本申请的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本申请的其他优点与功效。本申请还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本申请的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本申请的基本构想,遂图式中仅显示与本申请中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
本申请以下实施例提供了一种报文处理方法。图1显示为该报文处理方法的一种应用场景示例图。如图1所示,本申请实施例提供的报文处理方法用于对网络中的报文进行处理,该网络可以包含多个电子设备,各电子设备之间可进行通信,其通信方式不限于有线或无线的方式。
本申请实施例所述的电子设备可以包括手机、平板电脑、可穿戴设备、车载设备、增强现实(Augmented Reality,AR)/虚拟现实(Virtual Reality,VR)设备、笔记本电脑、超级移动个人计算机(Ultra-Mobile Personal Computer,UMPC)、上网本、个人数字助理(Personal Digital Assistant,PDA)等终端设备上,还可以应用于数据库、服务器以及基于终端人工智能的服务响应系统,本申请实施例对电子设备的具体类型不作任何限制。
此外,本申请实施例所述的电子设备为网络中的设备。例如,所述电子设备可以是WLAN中的站点(STAION,ST),可以是蜂窝电话、无绳电话、会话启动协议(SessionInitiationProtocol,SIP)电话、无线本地环路(WirelessLocal Loop,WLL)站、个人数字处理(Personal Digital Assistant,PDA)设备、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、电脑、膝上型计算机、手持式通信设备、手持式计算设备、和/或用于在无线系统上进行通信的其它设备以及下一代通信系统,例如,5G网络中的移动终端、未来演进的公共陆地移动网络(PublicLand Mobile Network,PLMN)中的移动终端或者未来演进的非地面网络(Non-terrestrial Network,NTN)中的移动终端等。
以下将结合附图详细阐述本实施例提供的报文处理方法的原理及实施方式,使本领域技术人员不需要创造性劳动即可理解该报文处理方法。图2显示为本申请实施例中报文处理方法的流程图。如图2所示,本申请实施例提供的报文处理方法包括以下步骤S11至步骤S14。
S11,接收报文并获取报文的查找密钥。报文是指在网络中传输的数据单元,包含了发送方和接收方之间交换的信息。在一些实施例中,报文可以包括报头、数据和报尾三部分组成。其中,报头包含了一些元数据,如发送方和接收方的IP地址、协议版本、传输层协议类型等,用于标识和管理数据包。数据部分包含了要传输的信息,可以是文本、图像、视频或其他数据类型。报尾通常包含一些校验和和错误检测码,用于确保数据的完整性和正确性。报文在传输过程中会被不同的网络设备(如路由器、交换机、网关等)转发、处理和解析,从而实现数据的传输和交换。查找密钥是指报文中的若干字段,网络设备根据查找密钥获取报文对应的访问控制列表规则。
S12,利用哈希函数对查找密钥进行处理以获取哈希索引。其中,哈希函数是一种将任意大小的数据映射到固定大小的数据的函数。于步骤S12中可以将查找密钥作为键值(key),利用哈希函数将查找密钥映射为相对应的哈希索引。
S13,根据查找密钥和哈希索引对第一访问控制列表、第二访问控制列表和第三访问控制列表进行匹配以获取目标操作。其中,第一访问控制列表和第二访问控制列表为哈希表,用于快速存储和查找部分ACL规则。第三访问控制列表为三态内容寻址存储器(Ternary Content Addressable Memory,TCAM)表,用于存储和查找另外的部分ACL规则。于步骤S13中可以根据查找密钥和哈希索引从第一访问控制列表、第二访问控制列表和/或第三访问控制列表中获取相匹配的表项作为目标规则,该目标规则对应的操作即为目标操作。该目标操作例如可以为以下操作中的任意一种或多种的组合:丢弃,修改优先级,送往中央处理器,送往指定端口,修改报文颜色,更新计数器,放弃学习操作,更新报文类型等。
在一些实施例中,第一访问控制列表、第二访问控制列表和第三访问控制列表的尺寸依次减小,也即,第一访问控制列表为大ACL表,第二访问控制列表为小ACL表。优选地,第一访问控制列表的尺寸大于第二访问控制列表,第二访问控制列表的尺寸远大于第三访问控制列表。
在一些实施例中,第一访问控制列表、第二访问控制列表和第三访问控制列表的配置方法为:将目标ACL表中第一数量的ACL规则存入第一访问控制列表中,将目标ACL表中第二数量的ACL规则存入第二访问控制列表中,将目标ACL中的其余ACL规则存入第三访问控制列表。
S14,对步骤S11中获取的报文执行目标操作。
于本申请的一实施例中,利用哈希函数对查找密钥进行处理以获取哈希索引包括:利用第一哈希函数对查找密钥进行处理以获取第一哈希索引,利用第二哈希函数对查找密钥进行处理以获取第二哈希索引。
在一些实现方式中,第一哈希函数和第二哈希函数可以为XOR哈希函数。XOR哈希函数用于将查找密钥拆分为多个部分,每个部分都具有哈希值的宽度。
在一些实现方式中,利用第一哈希函数对查找密钥(key)进行处理以获取第一哈希索引(hashval1)的方法如下:
hashval1=key&6’b111111;
hashval1=hashval1^(key>>6);
hashval1=hashval1^(key>>12);
…
hashval1=hashval1^(key>>6*n);
…
hashval1=hashval1^(key>>216);
return hashval1。
在一些实现方式中,利用第二哈希函数对查找密钥(key)进行处理获取第二哈希索引(hashval2)的方法如下:
hashval2=key&3’b111;
hashval2=hashval2^(key>>3);
hashval2=hashval2^(key>>6);
…
hashval2=hashval2^(key>>3*n);
…
hashval2=hashval2^(key>>219);
return hashval2。
请参阅图3A,于本申请的一实施例中,根据查找密钥和哈希索引对第一访问控制列表、第二访问控制列表和第三访问控制列表进行匹配以获取目标操作包括以下步骤S21至S24。
S21,根据第一哈希索引和查找密钥对第一访问控制列表进行匹配得到第一匹配结果。
在一些可能的实现方式中,第一访问控制列表包含多个存储桶(bucket),各存储桶均对应于至少一种操作。此外,各存储桶均配置有对应的比较数据(compareData),该比较数据可以根据实际需求人为配置。图3B显示为本申请实施例中获取第一匹配结果的流程图。如图3B所示,获取第一匹配结果的流程图包括以下步骤S211和S212。
S211,从第一访问控制列表中获取对应于第一哈希索引的多个存储桶作为第一备选存储桶。
S212,利用第一备选存储桶的比较数据和查找密钥进行匹配以选取一第一备选存储桶作为第一匹配结果。具体地,于步骤S212中可以并行读取所有第一备选存储桶,将查找密钥与各第一备选存储桶的比较数据进行比较。在比较过程中,如果存在与查找密钥相匹配的第一备选存储桶,则发生命中。第一匹配结果为命中的第一备选存储桶中的一个。可选地,在比较完成后,若命中的第一备选存储桶的数量为1,则命中的第一备选存储桶为第一匹配结果。若命中的第一备选存储桶的数量大于1,则可以从所有命中的第一备选存储桶中选择一个作为第一匹配结果。例如,在一些实施例中可以从所有命中的第一备选存储桶中选取编号最高的一个作为第一匹配结果。
S22,根据第二哈希索引和查找密钥对第二访问控制列表进行匹配得到第二匹配结果。
在一些可能的实现方式中,第二访问控制列表包含多个存储桶,各存储桶均对应于至少一种操作。此外,各存储桶均配置有对应的比较数据,该比较数据可以根据实际需求人为配置。根据第二哈希索引和查找密钥对第二访问控制列表进行匹配以获取第二匹配结果的方法与图3B所示获取第一匹配结果的方法类似,此处不做过多赘述。
S23,根据查找密钥对第三访问控制列表进行匹配得到第三匹配结果。具体地,第三访问控制列表为TCAM表,于步骤S23中可以根据查找密钥从第三访问控制列表中进行比较来得到第三匹配结果。可选地,第三访问控制列表可以包含多个存储桶。
可选地,若第三访问控制列表中存在多个条目与查找密钥相匹配,则从中选取编号最低的条目作为第三匹配结果。
S24,根据第一匹配结果、第二匹配结果和/或第三匹配结果获取目标操作。
在一些实现方式中,于步骤S24中可以根据接收到的指令来选择第一匹配结果、第二匹配结果或第三匹配结果作为最终匹配结果,该最终匹配结果对应的操作即为目标操作。
于本申请的一实施例中,获取报文的查找密钥包括:根据接收到的指令从报文中选取相对应的字段作为查找密钥。具体地,用户可以通过选择ACL搜索中应使用的字段来设置目标规则。在一些实施例中,每个规则都有一个固定的数字的字段。如果未使用字段,则需要将fieldselect设置为无字段,且未使用的字段的索引高于使用的字段。
于本申请的一实施例中,第一访问控制列表和第二访问控制列表都配置有单独的掩码,通过掩码能够屏蔽掉一些位。此外,第三访问控制列表中的每个条目都配置有一个掩码。
本申请实施例所述报文处理方法的保护范围不限于本实施例列举的步骤执行顺序,凡是根据本申请的原理所做的现有技术的步骤增减、步骤替换所实现的方案都包括在本申请的保护范围内。
本申请实施例还提供一种报文处理系统,所述报文处理系统可以实现本申请所述的报文处理方法,但本申请所述的报文处理方法的实现装置包括但不限于本实施例列举的报文处理系统的结构,凡是根据本申请的原理所做的现有技术的结构变形和替换,都包括在本申请的保护范围内。
图4显示为本申请实施例中报文处理系统4的结构示意图。如图4所示,报文处理系统4包括报文接收处理模块41、哈希索引获取模块42、列表匹配模块43和操作执行模块44。其中,接收处理模块41被配置为接收报文并获取报文的查找密钥。哈希索引获取模块42被配置为利用哈希函数对查找密钥进行处理以获取哈希索引。列表匹配模块43被配置为根据查找密钥和哈希索引对第一访问控制列表、第二访问控制列表和第三访问控制列表进行匹配以获取目标操作,其中,第一访问控制列表和第二访问控制列表为哈希表,第三访问控制列表为三态内容寻址存储器表。操作执行模块44被配置为对报文执行目标操作。
需要说明的是,报文处理系统4中的各模块与图2所示报文处理方法中步骤S11至S14一一对应,此处不作过多赘述。
于本申请的一实施例中,哈希索引获取模块42被配置为利用第一哈希函数对查找密钥进行处理以获取第一哈希索引,利用第二哈希函数对查找密钥进行处理以获取第二哈希索引。
于本申请的一实施例中,列表匹配模块43被配置为根据第一匹配结果、第二匹配结果和/或第三匹配结果获取目标操作。其中,第一匹配结果是根据第一哈希索引和查找密钥对第一访问控制列表进行匹配得到;第二匹配结果是根据第二哈希索引和查找密钥对第二访问控制列表进行匹配得到;第三匹配结果是根据查找密钥对第三访问控制列表进行匹配得到。
于本申请的一实施例中,在第一访问控制列表中,每个索引均对应于多个存储桶,各存储桶均对应于至少一种操作。列表匹配模块43进一步被配置为:从第一访问控制列表中获取对应于第一哈希索引的多个存储桶作为第一备选存储桶;利用第一备选存储桶的比较数据和查找密钥进行匹配以选取一第一备选存储桶作为第一匹配结果。
于本申请的一实施例中,列表匹配模块43进一步被配置为:若存在至少两个第一备选存储桶与查找密钥相匹配,则从中选取编号最高的一个第一备选存储桶作为第一匹配结果。
于本申请的一实施例中,列表匹配模块43进一步被配置为:若第三访问控制列表中存在多个条目与查找密钥相匹配,则从中选取编号最低的条目作为第三匹配结果。
于本申请的一实施例中,报文接收处理模块41被配置为根据接收到的指令从报文中选取相对应的字段作为查找密钥。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置或方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅是示意性的,例如,模块/单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或单元可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块/单元可以是或者也可以不是物理上分开的,作为模块/单元显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块/单元来实现本申请实施例的目的。例如,在本申请各个实施例中的各功能模块/单元可以集成在一个处理模块中,也可以是各个模块/单元单独物理存在,也可以两个或两个以上模块/单元集成在一个模块/单元中。
本领域普通技术人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序。所述计算机程序被处理器执行时实现本申请任一实施例所述的报文处理方法。
本领域普通技术人员可以理解实现上述实施例的方法中的全部或部分步骤是可以通过程序来指令处理器完成,所述的程序可以存储于计算机可读存储介质中,所述存储介质是非短暂性介质,例如随机存取存储器,只读存储器,快闪存储器,硬盘,固态硬盘,磁带(magnetic tape),软盘(floppy disk),光盘(optical disc)及其任意组合。上述存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(Digital Video Disc,DVD))、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。
上述各个附图对应的流程或结构的描述各有侧重,某个流程或结构中没有详述的部分,可以参见其他流程或结构的相关描述。
本申请实施例还提供一种电子设备。图5显示为本申请一实施例中电子设备500的结构示意图。如图5所示,本实施例中电子设备500包括存储器510和处理器520。
存储器510用于存储计算机程序;优选地,存储器510包括:ROM、RAM、磁碟、U盘、存储卡或者光盘等各种可以存储程序代码的介质。
具体地,存储器510可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)和/或高速缓存存储器。电子设备500可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。存储器510可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
处理器520与存储器510相连,用于执行存储器510存储的计算机程序,以使电子设备500执行报文处理方法。
可选地,处理器520可以是通用处理器,包括中央处理器(Central ProcessingUnit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
可选地,本实施例中电子设备500还可以包括显示器530。显示器530与存储器510和处理器520通信相连,用于显示报文处理方法的相关GUI交互界面。
综上所述,本申请实施例提供的报文处理方法,通过哈希算法来实现访问控制列表,有利于减小硬件开销,从而实现较小的成本来大规模部署访问控制列表。因此,本申请有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本申请的原理及其功效,而非用于限制本申请。任何熟悉此技术的人士皆可在不违背本申请的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本申请所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本申请的权利要求所涵盖。
Claims (7)
1.一种报文处理方法,其特征在于,所述报文处理方法包括:
接收报文并获取所述报文的查找密钥;
利用哈希函数对所述查找密钥进行处理以获取哈希索引,包括:利用第一哈希函数对所述查找密钥进行处理以获取第一哈希索引,利用第二哈希函数对所述查找密钥进行处理以获取第二哈希索引;
根据所述查找密钥和所述哈希索引对第一访问控制列表、第二访问控制列表和第三访问控制列表进行匹配以获取目标操作,包括:根据所述第一哈希索引和所述查找密钥对所述第一访问控制列表进行匹配得到第一匹配结果;根据所述第二哈希索引和所述查找密钥对所述第二访问控制列表进行匹配得到第二匹配结果;根据所述查找密钥对所述第三访问控制列表进行匹配得到第三匹配结果;根据接收到的指令选择所述第一匹配结果、所述第二匹配结果或所述第三匹配结果作为最终匹配结果,并根据所述最终匹配结果获取所述目标操作;其中,所述第一访问控制列表和所述第二访问控制列表为哈希表,所述第三访问控制列表为三态内容寻址存储器表;所述第一访问控制列表、所述第二访问控制列表和所述第三访问控制列表的尺寸依次减小,所述第一访问控制列表、所述第二访问控制列表和所述第三访问控制列表的配置方法为:将目标ACL表中第一数量的ACL规则存入所述第一访问控制列表中,将所述目标ACL表中第二数量的ACL规则存入所述第二访问控制列表中,将所述目标ACL表中的其余ACL规则存入所述第三访问控制列表;
对所述报文执行所述目标操作;
在所述第一访问控制列表中,每个索引均对应于多个存储桶,各所述存储桶均对应于至少一种操作,根据所述第一哈希索引和所述查找密钥对所述第一访问控制列表进行匹配以获取所述第一匹配结果包括:从所述第一访问控制列表中获取对应于所述第一哈希索引的多个存储桶作为第一备选存储桶;利用所述第一备选存储桶的比较数据和所述查找密钥进行匹配以选取一所述第一备选存储桶作为所述第一匹配结果。
2.根据权利要求1所述的报文处理方法,其特征在于,利用所述第一备选存储桶的比较数据和所述查找密钥进行匹配以选取一所述第一备选存储桶作为所述第一匹配结果包括:
若存在至少两个所述第一备选存储桶与所述查找密钥相匹配,则从中选取编号最高的一个所述第一备选存储桶作为所述第一匹配结果。
3.根据权利要求1所述的报文处理方法,其特征在于,根据所述查找密钥对所述第三访问控制列表进行匹配以获取所述第三匹配结果包括:
若所述第三访问控制列表中存在多个条目与所述查找密钥相匹配,则从中选取编号最低的条目作为所述第三匹配结果。
4.根据权利要求1所述的报文处理方法,其特征在于,获取所述报文的查找密钥包括:根据接收到的指令从所述报文中选取相对应的字段作为所述查找密钥。
5.一种报文处理系统,其特征在于,所述报文处理系统包括:
报文接收处理模块,被配置为接收报文并获取所述报文的查找密钥;
哈希索引获取模块,被配置为利用哈希函数对所述查找密钥进行处理以获取哈希索引,利用哈希函数对所述查找密钥进行处理以获取哈希索引包括:利用第一哈希函数对所述查找密钥进行处理以获取第一哈希索引,利用第二哈希函数对所述查找密钥进行处理以获取第二哈希索引;
列表匹配模块,被配置为根据所述查找密钥和所述哈希索引对第一访问控制列表、第二访问控制列表和第三访问控制列表进行匹配以获取目标操作,根据所述查找密钥和所述哈希索引对第一访问控制列表、第二访问控制列表和第三访问控制列表进行匹配以获取目标操作包括:根据所述第一哈希索引和所述查找密钥对所述第一访问控制列表进行匹配得到第一匹配结果;根据所述第二哈希索引和所述查找密钥对所述第二访问控制列表进行匹配得到第二匹配结果;根据所述查找密钥对所述第三访问控制列表进行匹配得到第三匹配结果;根据接收到的指令选择所述第一匹配结果、所述第二匹配结果或所述第三匹配结果作为最终匹配结果,并根据所述最终匹配结果获取所述目标操作;其中,所述第一访问控制列表和所述第二访问控制列表为哈希表,所述第三访问控制列表为三态内容寻址存储器表;所述第一访问控制列表、所述第二访问控制列表和所述第三访问控制列表的尺寸依次减小,所述第一访问控制列表、所述第二访问控制列表和所述第三访问控制列表的配置方法为:将目标ACL表中第一数量的ACL规则存入所述第一访问控制列表中,将所述目标ACL表中第二数量的ACL规则存入所述第二访问控制列表中,将所述目标ACL表中的其余ACL规则存入所述第三访问控制列表;
操作执行模块,被配置为对所述报文执行所述目标操作;
在所述第一访问控制列表中,每个索引均对应于多个存储桶,各所述存储桶均对应于至少一种操作,根据所述第一哈希索引和所述查找密钥对所述第一访问控制列表进行匹配以获取所述第一匹配结果包括:从所述第一访问控制列表中获取对应于所述第一哈希索引的多个存储桶作为第一备选存储桶;利用所述第一备选存储桶的比较数据和所述查找密钥进行匹配以选取一所述第一备选存储桶作为所述第一匹配结果。
6.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的报文处理方法。
7.一种电子设备,其特征在于,所述电子设备包括:
存储器,存储有一计算机程序;
处理器,与所述存储器通信相连,调用所述计算机程序时执行权利要求1至4中任一项所述的报文处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310166330.7A CN116366292B (zh) | 2023-02-24 | 2023-02-24 | 报文处理方法、系统、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310166330.7A CN116366292B (zh) | 2023-02-24 | 2023-02-24 | 报文处理方法、系统、存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116366292A CN116366292A (zh) | 2023-06-30 |
CN116366292B true CN116366292B (zh) | 2024-03-29 |
Family
ID=86910877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310166330.7A Active CN116366292B (zh) | 2023-02-24 | 2023-02-24 | 报文处理方法、系统、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116366292B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111950000A (zh) * | 2020-07-30 | 2020-11-17 | 新华三技术有限公司 | 一种接入访问控制方法及设备 |
CN112685612A (zh) * | 2020-12-31 | 2021-04-20 | 武汉思普崚技术有限公司 | 一种特征码查找和匹配方法、设备及存储介质 |
WO2022268138A1 (zh) * | 2021-06-23 | 2022-12-29 | 深圳市中兴微电子技术有限公司 | 一种报文匹配方法、装置、存储介质及电子装置 |
CN115580579A (zh) * | 2022-09-28 | 2023-01-06 | 杭州迪普科技股份有限公司 | 报文转发方法、装置、电子设备及存储介质 |
CN115695014A (zh) * | 2022-11-02 | 2023-02-03 | 北京百度网讯科技有限公司 | 访问控制列表构建和数据报文处理方法、装置、系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060248095A1 (en) * | 2005-04-29 | 2006-11-02 | Cisco Technology, Inc. (A California Corporation) | Efficient RAM lookups by means of compressed keys |
-
2023
- 2023-02-24 CN CN202310166330.7A patent/CN116366292B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111950000A (zh) * | 2020-07-30 | 2020-11-17 | 新华三技术有限公司 | 一种接入访问控制方法及设备 |
CN112685612A (zh) * | 2020-12-31 | 2021-04-20 | 武汉思普崚技术有限公司 | 一种特征码查找和匹配方法、设备及存储介质 |
WO2022268138A1 (zh) * | 2021-06-23 | 2022-12-29 | 深圳市中兴微电子技术有限公司 | 一种报文匹配方法、装置、存储介质及电子装置 |
CN115580579A (zh) * | 2022-09-28 | 2023-01-06 | 杭州迪普科技股份有限公司 | 报文转发方法、装置、电子设备及存储介质 |
CN115695014A (zh) * | 2022-11-02 | 2023-02-03 | 北京百度网讯科技有限公司 | 访问控制列表构建和数据报文处理方法、装置、系统 |
Also Published As
Publication number | Publication date |
---|---|
CN116366292A (zh) | 2023-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8738906B1 (en) | Traffic classification and control on a network node | |
EP1832037B1 (en) | Template access control lists | |
US8854972B1 (en) | Security device implementing flow lookup scheme for improved performance | |
CN110855629B (zh) | Ip地址的匹配方法、匹配表的生成方法及相关装置 | |
US11005760B2 (en) | Ensuring data locality for secure transmission of data | |
CN113315742B (zh) | 攻击行为检测方法、装置及攻击检测设备 | |
CN101345694A (zh) | 一种快速查找定位和匹配访问控制列表的方法 | |
US11310158B2 (en) | Packet classification using fingerprint hash table | |
US9009782B2 (en) | Steering traffic among multiple network services using a centralized dispatcher | |
WO2021135491A1 (zh) | 流表的匹配方法及装置 | |
US20170171147A1 (en) | Method and electronic device for implementing domain name system | |
US20120078832A1 (en) | Exploitation of transition rule sharing based on short state tags to improve the storage efficiency | |
CN110351397B (zh) | 一种匹配ip网段的方法及装置 | |
CN114745327B (zh) | 业务数据转发方法、装置、设备及存储介质 | |
CN116366292B (zh) | 报文处理方法、系统、存储介质及电子设备 | |
CN1921489A (zh) | 根据send机制来保证用于处理数据分组的通信设备的安全 | |
CN112532610B (zh) | 一种基于tcp分段的入侵防御检测方法及装置 | |
CN112187743B (zh) | 一种基于ip地址最长前缀的网络策略匹配方法及系统 | |
US11973773B2 (en) | Detecting and mitigating zero-day attacks | |
CN112817967A (zh) | 流量数据存储方法、装置、电子设备及存储介质 | |
CN116600031B (zh) | 报文处理方法、装置、设备及存储介质 | |
US8069315B2 (en) | System and method for parallel scanning | |
US11271898B2 (en) | Hash collision prevention system | |
CN114143083B (zh) | 黑名单策略匹配方法、装置、电子设备及存储介质 | |
US11924102B2 (en) | Minimizing deviation from average latency of table lookups |
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 |