[发明专利]一种网络数据包协议识别方法及系统有效
申请号: | 201210567370.4 | 申请日: | 2012-12-24 |
公开(公告)号: | CN103023909A | 公开(公告)日: | 2013-04-03 |
发明(设计)人: | 罗鹰;伍宏宁 | 申请(专利权)人: | 成都科来软件有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L12/70 |
代理公司: | 四川力久律师事务所 51221 | 代理人: | 熊晓果;林辉轮 |
地址: | 610000 四川省成都市高新*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 网络 数据包 协议 识别 方法 系统 | ||
1.一种网络数据包协议识别方法,包括协议配置步骤和数据包协议识别步骤,其特征在于,其中,
所述协议配置步骤包括:
A.输入协议的协议特征信息,并存储;
B.根据协议特征信息建立协议树;
C.根据协议特征信息建立特征值表和判断逻辑;
所述数据包协议识别步骤包括:
a.获取待识别的数据包;
b.根据获取数据包的物理介质,选取用于识别数据包协议的协议树;
c.从数据包中读取用于识别数据包协议的关键字的数值,并将读取到的关键字的数值与特征值表和判断逻辑进行比对,识别出数据包协议。
2.根据权利要求1所述的网络数据包协议识别方法,其特征在于,步骤A中所述协议特征信息包括:所述协议的名称、所述协议的下级协议名称、所述协议的关键字、特征值、关键字定义和比较方式,所述比较方式包括大于、等于、小于。
3.根据权利要求2所述的网络数据包协议识别方法,其特征在于,所述步骤B中建立协议树的方法是:根据协议特征信息,将一个协议作为一个协议节点,所有具有相同下级协议的协议组成一个节点层,再按照协议的上、下级关系,连接所有协议节点组成协议树,组成同一个节点层的协议节点位于协议树的同一个节点层,所述协议树的入口为物理介质。
4.根据权利要求3所述的网络数据包协议识别方法,其特征在于,步骤C中所述建立特征值表的方法是:遍历存储的所有协议的协议特征信息,选取所有比较方式为等于的协议,一个关键字建立一张特征值表,特征值表中记录该关键字的所有特征值及各特征值对应的协议名称;所述判断逻辑由所有比较方式为大于或小于的协议的名称及该协议的判断条件构成。
5.根据权利要求4所述的网络数据包协议识别方法,其特征在于,所述步骤c从数据包中读取用于识别数据包协议的关键字的数值,并将读取到的关键字的数值与特征值表和判断逻辑进行比对,识别数据包协议包括:
c1.进入协议树的根节点;
c2.从数据包中读取当前节点层中所有的协议节点的关键字在数据包中的数值;
c3.查询当前节点层中所有的协议节点的关键字的特征值表,如果从数据包中读取到的关键字的数值与特征值表中的某个特征值相同,则得出当前协议节点的协议为特征值表中该特征值对应的协议,并进入步骤c5,如果与特征值表中的所有特征值均不同则进入步骤c4;
c4.执行判断逻辑,如果读取的关键字的数值满足判断逻辑中的某判断条件,则得出当前节点协议为该判断条件对应的协议,并进入步骤b5,如果不满足判断逻辑中的任何判断条件,则输出识别结果;
c5. 进入协议树中当前节点层的下一个节点层,循环步骤c2~c4。
6.一种网络数据包协议识别系统,其特征在于,包括协议配置装置和数据包协议识别装置,其中,
所述协议配置装置包括:
协议特征存储单元,用于存储协议的协议特征信息;
协议树生成单元,用于根据协议特征信息生成协议树;
特征值表和判断逻辑生成单元,用于根据协议特征信息,生成识别数据包协议的特征值表和判断逻辑;
所述数据包协议识别装置包括:
数据包采集单元,用于采集待识别的数据包;
协议树选择单元,用于根据获取数据包的物理介质,选取识别数据包协议的协议树;
数据包协议识别单元,用于从待识别数据包中读取关键字的数值,并将读取到的关键字的数值与特征值表和判断逻辑进行比对,识别数据包协议。
7.根据权利要求6所述的网络数据包协议识别系统,其特征在于,所述协议特征信息包括:所述协议的名称、所述协议的下级协议名称、所述协议的关键字、特征值、关键字定义和比较方式,所述比较方式包括大于、等于、小于。
8.根据权利要求7所述的网络数据包协议识别系统,其特征在于,所述协议树生成单元将将一个协议作为一个协议节点,所有具有相同下级协议的协议组成一个节点层,再按照协议的上、下级关系,连接所有协议节点组成协议树,组成同一个节点层的协议节点位于协议树的同一个节点层,所述协议树的入口为物理介质。
9.根据权利要求8所述的网络数据包协议识别系统,其特征在于,所述特征值表由比较方式为等于的协议的名称和该协议的特征值构成;所述判断逻辑由比较方式为大于或小于的协议的名称及该协议的判断条件构成。
10.根据权利要求9所述的网络数据包协议识别系统,其特征在于,所述数据包协议识别单元包括:
关键字采集模块,用于从数据包中读取协议树中各协议节点的关键字在数据包中的数值;
协议识别模块,用于通过查询特征值表和执行判断逻辑,识别数据包协议:查询特征值表,如果从数据包中读取的关键字的数值与特征值表中某个特征值相同,则得出协议节点的协议为特征值表中该特征值对应的协议,如果读取的关键字的数值与特征值表中任何特征值都不同则执行判断逻辑,如果从数据包中读取的关键字的数值满足判断逻辑中的某个判断条件,则得出协议节点的协议为该判断条件对应的协议,如果不满足判断逻辑中的任何判断条件,则输出识别结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都科来软件有限公司,未经成都科来软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210567370.4/1.html,转载请声明来源钻瓜专利网。