一种网络报文处理策略生成方法、系统及介质转让专利

申请号 : CN202010379773.0

文献号 : CN111277612A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 尤子威曾进徐亚东朱磊伍楠王克非李振斌

申请人 : 常州楠菲微电子有限公司

摘要 :

本发明公开了一种网络报文处理策略生成方法,包括以下步骤:S1)获取网络报文,提取报文头字段、用户自定义字段,配置初始报文属性特征值;S2)将用户自定义字段和初始报文属性特征值依次在预设的第一内容寻址存储器和解析策略表进行匹配得到解析策略和对应的报文属性特征值,根据解析策略解析报文头字段的内容,用对应的报文属性特征值替换初始报文属性特征值;S3)将解析后的报文头字段和替换后的报文属性特征值依次在预设的第二内容寻址存储器和处理策略表进行匹配得到处理策略,根据处理策略生成对应的处理动作。本发明解决了对于不支持或未知的协议报文处理效率低并且升级不方便的问题。

权利要求 :

1.一种网络报文处理策略生成方法,其特征在于,包括以下步骤:

S1)获取网络报文,提取报文头字段、用户自定义字段,配置初始报文属性特征值,所述用户自定义字段为网络报文第一预设位置的字段;

S2)将用户自定义字段和初始报文属性特征值依次在预设的第一内容寻址存储器和解析策略表进行匹配得到解析策略和对应的报文属性特征值,根据解析策略解析报文头字段的内容,用对应的报文属性特征值替换初始报文属性特征值;

S3)将解析后的报文头字段和替换后的报文属性特征值依次在预设的第二内容寻址存储器和处理策略表进行匹配得到处理策略,根据处理策略生成对应的处理动作。

2.根据权利要求1所述的网络报文处理策略生成方法,其特征在于,步骤S2)包括以下步骤:S2.1)将用户自定义字段和初始报文属性特征值作为内容识别对象,通过预设的第一内容寻址存储器查找匹配获取对应的解析策略索引;

S2.2)将所获取的解析策略索引在预设的解析策略表中匹配得到解析策略和对应的报文属性特征值;

S2.3)根据所得到的解析策略解析报文头字段的内容,用对应的报文属性特征值替换初始报文属性特征值。

3.根据权利要求1所述的网络报文处理策略生成方法,其特征在于,步骤S3)包括以下步骤:S3.1)将解析后的报文头字段和替换后的报文属性特征值作为内容识别对象,通过预设的第二内容寻址存储器查找匹配获取对应的报文处理策略索引;

S3.2)将所获取的报文处理策略索引在预设的处理策略表中匹配得到对应的处理策略;

S3.3)根据处理策略生成对应的处理动作。

4.一种网络报文处理策略生成系统,其特征在于,包括:

内容提取模块,用于获取网络报文,提取报文头字段、用户自定义字段,配置初始报文属性特征值,所述用户自定义字段为网络报文第一预设位置的字段;

报文解析模块,用于将用户自定义字段和初始报文属性特征值依次在预设的第一内容寻址存储器和解析策略表进行匹配得到解析策略和对应的报文属性特征值,根据解析策略解析报文头字段的内容,用对应的报文属性特征值替换初始报文属性特征值;

策略生成模块,用于将解析后的报文头字段和替换后的报文属性特征值依次在预设的第二内容寻址存储器和处理策略表进行匹配得到处理策略,根据处理策略生成对应的处理动作。

5.根据权利要求4所述的网络报文处理策略生成系统,其特征在于,所述报文解析模块包括至少一个报文解析单元,所述第一内容寻址存储器和解析策略表分别设置于报文解析单元中,所述报文解析单元、第一内容寻址存储器和解析策略表一一对应,所述报文解析单元还包括:用户自定义字段编辑器,用于获取解析策略,根据解析策略解析报文头字段的内容;

报文属性特征值编辑器,用于获取解析策略对应的报文属性特征值,将对应的报文属性特征值替换初始报文属性特征值。

6.根据权利要求4所述的网络报文处理策略生成系统,其特征在于,所述策略生成模块包括至少一个策略生成单元,所述第二内容寻址存储器和处理策略表分别设置于策略生成单元,所述策略生成单元、第二内容寻址存储器和处理策略表分别一一对应,所述策略生成单元还包括:决策执行器,用于获取处理策略并针对对应的报文头字段和报文属性特征值生成处理动作。

7.根据权利要求5所述的网络报文处理策略生成系统,其特征在于,所述报文解析单元之间的连接方式为串行级联、并行同步、阵列中的一种。

8.根据权利要求6所述的网络报文处理策略生成系统,其特征在于,所述策略生成单元之间的连接方式为串行级联、并行同步、阵列中的一种。

9.一种网络报文处理策略生成系统,其特征在于,所述网络报文处理策略生成系统被编程或配置以执行权利要求1-3任一所述的网络报文处理策略生成方法。

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有被编程或配置以执行权利要求1-3任一所述的网络报文处理策略生成方法的计算机程序。

说明书 :

一种网络报文处理策略生成方法、系统及介质

技术领域

[0001] 本发明涉及一种网络报文处理方法,尤其涉及一种网络报文处理策略生成方法、系统及介质。

背景技术

[0002] 目前,传统的网络交换芯片只能解析和处理芯片规格内支持的已知格式的协议报文。对于不支持或未知的协议报文,传统网络交换芯片只能丢弃或者上送处理器交由软件处理。如需要增加支持的协议规格,需要在传统网络交换芯片协议流水线中做增量增加,有时甚至需要修改协议处理流程和架构,耗费大量开发时间与硬件逻辑资源,往往也只能增加特定的一或两种协议。综上,传统网络交换芯片存在局限性和技术升级不便的缺点。

发明内容

[0003] 本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种网络报文处理策略生成方法,能够由上层软件配置需要支持的协议规格,对于各种格式的协议报文均能较好支持。
[0004] 为解决上述技术问题,本发明提出的技术方案为:一种网络报文处理策略生成方法,其特征在于,包括以下步骤:
S1)获取网络报文,提取报文头字段、用户自定义字段,配置初始报文属性特征值,所述用户自定义字段为网络报文第一预设位置的字段;
S2)将用户自定义字段和初始报文属性特征值依次在预设的第一内容寻址存储器和解析策略表进行匹配得到解析策略和对应的报文属性特征值,根据解析策略解析报文头字段的内容,用对应的报文属性特征值替换初始报文属性特征值;
S3)将解析后的报文头字段和替换后的报文属性特征值依次在预设的第二内容寻址存储器和处理策略表进行匹配得到处理策略,根据处理策略生成对应的处理动作。
[0005] 优选的,步骤S2)包括以下步骤:S2.1)将用户自定义字段和初始报文属性特征值作为内容识别对象,通过预设的第一内容寻址存储器查找匹配获取对应的解析策略索引;
S2.2)将所获取的解析策略索引在预设的解析策略表中匹配得到解析策略和对应的报文属性特征值;
S2.3)根据所得到的解析策略解析报文头字段的内容,用对应的报文属性特征值替换初始报文属性特征值。
[0006] 优选的,步骤S3)包括以下步骤:S3.1)将解析后的报文头字段和替换后的报文属性特征值作为内容识别对象,通过预设的第二内容寻址存储器查找匹配获取对应的报文处理策略索引;
S3.2)将所获取的报文处理策略索引在预设的处理策略表中匹配得到对应的处理策略;
S3.3)根据处理策略生成对应的处理动作。
[0007] 本发明还提供一种网络报文处理策略生成系统,包括:内容提取模块,用于获取网络报文,提取报文头字段、用户自定义字段,配置初始报文属性特征值,所述用户自定义字段为网络报文第一预设位置的字段;
报文解析模块,用于将用户自定义字段和初始报文属性特征值依次在预设的第一内容寻址存储器和解析策略表进行匹配得到解析策略和对应的报文属性特征值,根据解析策略解析报文头字段的内容,用对应的报文属性特征值替换初始报文属性特征值;
策略生成模块,用于将解析后的报文头字段和替换后的报文属性特征值依次在预设的第二内容寻址存储器和处理策略表进行匹配得到处理策略,根据处理策略生成对应的处理动作。
[0008] 优选的,所述报文解析模块包括至少一个报文解析单元,所述第一内容寻址存储器和解析策略表分别设置于报文解析单元中,所述报文解析单元、第一内容寻址存储器和解析策略表一一对应,所述报文解析单元还包括:用户自定义字段编辑器,用于获取解析策略,根据解析策略解析报文头字段的内容;
报文属性特征值编辑器,用于获取解析策略对应的报文属性特征值,将对应的报文属性特征值替换初始报文属性特征值。
[0009] 优选的,所述策略生成模块包括至少一个策略生成单元,所述第二内容寻址存储器和处理策略表分别设置于策略生成单元,所述策略生成单元、第二内容寻址存储器和处理策略表分别一一对应,所述策略生成单元还包括:决策执行器,用于获取处理策略并针对对应的报文头字段和报文属性特征值生成处理动作。
[0010] 优选的,所述报文解析单元之间的连接方式为串行级联、并行同步、阵列中的一种。
[0011] 优选的,所述策略生成单元之间的连接方式为串行级联、并行同步、阵列中的一种。
[0012] 本发明还提供一种网络报文处理策略生成系统,所述网络报文处理策略生成系统被编程或配置以执行上述的网络报文处理策略生成方法。
[0013] 本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有被编程或配置以执行上述的网络报文处理策略生成方法的计算机程序。
[0014] 与现有技术相比,本发明的优点在于:本发明针对网络报文提取报文头字段和用户自定义字段,并通过用户自定义字段匹配对应的解析策略解析报文头字段,并进而通过解析后的报文头字段匹配对应的处理策略,使得本发明的方法可以在上层软件进行配置的基础上支持目前所有已知协议,且不受芯片协议规格限制,灵活可配置,有效提高网络芯片在不同应用场景下的兼容性;通过上层软件配置,可支持未来新增或未知协议,缩短开发及升级周期,有效控制成本,协议规格升级更便利。还可支持特殊领域的专用协议,且开发周期短,成本低。并有效降低设计失效的风险。

附图说明

[0015] 图1为本发明实施例的方法的步骤示意图。
[0016] 图2为本发明实施例的系统总体结构示意图。
[0017] 图3为本发明实施例的内容提取模块结构示意图。
[0018] 图4为本发明实施例的报文解析模块结构示意图。
[0019] 图5为本发明实施例的策略生成模块结构示意图。

具体实施方式

[0020] 以下结合说明书附图和具体优选的实施例对本发明作进一步描述,但并不因此而限制本发明的保护范围。
[0021] 如图1所示,本发明的支持上层软件配置的报文处理方法,包括以下步骤:S1)获取网络报文,提取报文头字段、用户自定义字段,配置初始报文属性特征值,用户自定义字段为网络报文第一预设位置的字段,本实施例中,用户自定义字段包括常用的MAC地址,IP地址等信息,也可以是难以处理的信息,如网络协议中的可选字段的内容;
S2)将用户自定义字段和初始报文属性特征值依次在预设的第一内容寻址存储器和解析策略表进行匹配得到解析策略和对应的报文属性特征值,根据解析策略解析报文头字段的内容,用对应的报文属性特征值替换初始报文属性特征值;
S3)将解析后的报文头字段和替换后的报文属性特征值依次在预设的第二内容寻址存储器和处理策略表进行匹配得到处理策略,根据处理策略生成对应的处理动作。
[0022] 本实施例中,步骤S1)中提取报文头字段、用户自定义字段,配置初始报文属性特征值包括以下步骤:S1.1)根据网络报文内容在预设的内容寻址存储器查找匹配对应策略表索引,若存在匹配结果,获取对应的策略表索引,若不存在匹配结果,将预设的默认策略表索引作为匹配结果;
S1.2)将对应的策略表索引或默认策略表索引在预设的报文提取策略表中匹配得到报文提取策略码以及初始报文属性特征值;
S1.3)根据报文提取策略码从网络报文中选择第一预设位置的字段作为用户自定义字段,提取用户自定义字段和报文头字段。
[0023] 本实施例中,内容寻址寄存器、报文提取策略表、第一内容寻址存储器、解析策略表、第二内容寻址存储器和处理策略表中的内容均通过上层软件预先进行配置,当出现新的协议时,通过上层软件更新内容寻址寄存器、报文提取策略表、第一内容寻址存储器、解析策略表、第二内容寻址存储器和处理策略表中的内容即可支持新的协议的报文。
[0024] 本实施例中,步骤S2)包括以下步骤:S2.1)将用户自定义字段和初始报文属性特征值作为内容识别对象,通过预设的第一内容寻址存储器查找匹配获取对应的解析策略索引;
S2.2)将所获取的解析策略索引在预设的解析策略表中匹配得到解析策略和对应的报文属性特征值;
本实施例中,解析策略为新增协议或用户自定义协议定义的报文字段含义等内容,解析策略表中不同索引与解析策略的映射关系为用户预定义,需与第一内容寻址存储器配合,即:以解析字段为特征字段查询第一内容寻址存储器(存储器内容为用户预配置),获取匹配数据(含策略表索引),以该索引查询解析策略表,获取解析策略,解析策略即当前报文按何种协议解析,可以是用户私有协议或新协议;
S2.3)根据所得到的解析策略解析报文头字段的内容,用对应的报文属性特征值替换初始报文属性特征值,即根据解析策略对应的协议解析出报文头字段的具体含义。
[0025] 本实施例中,步骤S3)包括以下步骤:S3.1)将解析后的报文头字段和替换后的报文属性特征值作为内容识别对象,通过预设的第二内容寻址存储器查找匹配获取对应的报文处理策略索引;
S3.2)将所获取的报文处理策略索引在预设的处理策略表中匹配得到对应的处理策略,本实施例中处理策略包括但不限于报文镜像使能、更改报文优先级、报文过滤等;
S3.3)根据处理策略生成对应的处理动作,本实施例中处理动作包括但不限于修改原始报文属性,修改报文输出端口,对报文进行拦截过滤,重定向本地处理器由软件处理等如图2所示,本发明还提供一种网络报文处理策略生成系统,包括:
内容提取模块,用于获取网络报文,提取报文头字段、用户自定义字段,配置初始报文属性特征值,用户自定义字段为网络报文第一预设位置的字段;
报文解析模块,用于将用户自定义字段和初始报文属性特征值依次在预设的第一内容寻址存储器和解析策略表进行匹配得到解析策略和对应的报文属性特征值,根据解析策略解析报文头字段的内容,用对应的报文属性特征值替换初始报文属性特征值;
策略生成模块,用于将解析后的报文头字段和替换后的报文属性特征值依次在预设的第二内容寻址存储器和处理策略表进行匹配得到处理策略,根据处理策略生成对应的处理动作。
[0026] 第一内容寻址存储器、第二内容寻址存储器采用CAM存储器或TCAM存储器,本实施例中优选TCAM存储器,TCAM是Ternary Content Addressable Memory的缩写,即“三态内容寻址存储器”的意思,它是从CAM存储器的基础上发展而来的。一般的CAM存储器中每个bit位的状态只有两个,“0”或“1”,而TCAM存储器中每个bit位有三种状态,除掉“0”和“1”外,还有一个“don’t care”状态,所以称为“三态”,它是通过掩码来实现的,正是TCAM存储器的这个第三种状态特征使其既能进行精确匹配查找,又能进行模糊匹配查找,而CAM存储器没有第三种状态,所以只能进行精确匹配查找。通常存储器以数据存储位置(即地址)为索引,获取某个具体数据,需要提供该数据存储的准确地址,而TCAM存储器不需要用户提供该数据的准确存储地址,只需要提供该数据中某些特征字段,TCAM存储器会在所有数据中匹配特征字段,若匹配成功,则表示命中,返回匹配的完整数据及数据地址,否则反馈未命中。
[0027] 如图3所示,本实施例中,内容提取模块包括一个内容寻址存储器,一个报文提取策略表,一个报文提取选择器。内容寻址存储器采用CAM存储器或TCAM存储器,本实施例中优选TCAM存储器,内容寻址存储器匹配网络报文内容后得到对应的策略表索引,并将策略表索引发送给报文提取策略表,内容寻址存储器匹配网络报文内容后没有匹配结果时将预设的默认策略表索引发送给报文提取策略表;报文提取策略表根据策略表索引或默认策略表索引查找匹配得到报文提取策略码以及初始报文属性特征值;报文提取选择器根据报文提取策略码,从网络报文中选择第一预设位置的字段作为用户自定义字段,提取用户自定义字段和报文头字段。
[0028] 如图4所示,本实施例中,报文解析模块包括至少一个报文解析单元,第一内容寻址存储器和解析策略表分别设置于报文解析单元中,报文解析单元、第一内容寻址存储器和解析策略表一一对应,报文解析单元还包括:用户自定义字段编辑器,用于获取解析策略,根据解析策略解析报文头字段的内容;
报文属性特征值编辑器,用于获取解析策略对应的报文属性特征值,将对应的报文属性特征值替换初始报文属性特征值。
[0029] 多个报文解析单元可以构成流水线,报文头字段被分割为与报文解析单元一一对应的字段,第i个(i为大于1的整数)报文解析单元的工作流程可以描述如下:选取报文头字段的第i段,将第i-1个报文解析单元更新的报文属性特征值与用户自定义字段一起作为解析使用键值K0。使用第一内容寻址存储器对键值K0通过内容匹配得到对应的解析策略索引。通过解析策略索引查询解析策略表得到解析策略和对应的报文属性特征值,用解析策略对应的协议对报文头字段第i段进行解析,并将对应的报文属性特征值替换旧的报文属性特征值。
[0030] 如图5所示,本实施例中,策略生成模块包括至少一个策略生成单元,第二内容寻址存储器和处理策略表分别设置于策略生成单元,策略生成单元、第二内容寻址存储器和处理策略表分别一一对应,策略生成单元还包括:决策执行器,用于获取处理策略并针对对应的报文头字段和报文属性特征值生成处理动作。
[0031] 本实施例中,报文解析单元、策略生成单元之间的连接方式为串行级联、并行同步、阵列中的一种,以应对不同的应用场景。串行级联方式实现多级流水处理,可节省硬件资源及芯片实现难度(如芯片布线资源及布线难度);并行同步方式实现较长报文字段同步解析处理,提高芯片性能(如减少芯片时延,提高芯片吞吐率);阵列方式,兼具前述两种方式特性。
[0032] 本发明还提供一种网络报文处理策略生成系统,网络报文处理策略生成系统被编程或配置以执行上述的网络报文处理策略生成方法。
[0033] 本发明还提供一种计算机可读存储介质,计算机可读存储介质存储有被编程或配置以执行上述的网络报文处理策略生成方法的计算机程序。
[0034] 上述只是本发明的较佳实施例,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。因此,凡是未脱离本发明技术方案的内容,依据本发明技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均应落在本发明技术方案保护的范围内。