[发明专利]基于字典树的未知协议帧结构识别方法及装置在审
申请号: | 202210375755.4 | 申请日: | 2022-04-11 |
公开(公告)号: | CN114938402A | 公开(公告)日: | 2022-08-23 |
发明(设计)人: | 谷源涛;罗春砜 | 申请(专利权)人: | 清华大学 |
主分类号: | H04L69/22 | 分类号: | H04L69/22;H04L69/06;G06K9/62 |
代理公司: | 北京林达刘知识产权代理事务所(普通合伙) 11277 | 代理人: | 刘新宇 |
地址: | 100084*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 字典 未知 协议 结构 识别 方法 装置 | ||
1.一种基于字典树的未知协议帧结构识别方法,其特征在于,所述方法包括:
从待解析的网络数据流中,截取出多个第一序列;
根据所述多个第一序列,建立第一字典树,并确定所述第一字典树中的各个结点的置信度及熵;
根据所述第一字典树及所述各个结点的置信度及熵,确定目标序列;
根据所述目标序列在所述网络数据流中的位置信息,确定所述网络数据流的协议帧结构。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一字典树及所述各个结点的置信度及熵,确定目标序列,包括:
根据预设的第一置信度阈值、熵阈值、所述各个结点的置信度及熵,对所述第一字典树进行剪枝操作,得到第二字典树;
对所述第二字典树进行长序列合并操作,得到第三字典树;
对所述第三字典树进行相似序列合并操作,得到第四字典树;
根据所述第四字典树中的各个叶子结点所表示的第二序列在所述网络数据流中的位置信息,对所述第四字典树进行剪枝操作,得到第五字典树;
将所述第五字典树中的各个叶子结点所表示的第三序列,确定为目标序列。
3.根据权利要求2所述的方法,其特征在于,所述根据预设的第一置信度阈值、熵阈值、所述各个结点的置信度及熵,对所述第一字典树进行剪枝操作,得到第二字典树,包括:
对于所述第一字典树中的任一结点,在所述结点的置信度小于所述第一置信度阈值的情况下,或者,在所述结点的熵大于或等于预设的熵阈值的情况下,删除所述结点,得到第二字典树。
4.根据权利要求2所述的方法,其特征在于,所述对所述第二字典树进行长序列合并操作,得到第三字典树,包括:
确定所述第二字典树中的各个叶子结点所表示的第四序列;
对于任一第四序列,判断所述第四序列与第五序列是否存在公共子序列,所述第五序列为除所述任一第四序列之外的其他任一第四序列;
在存在所述公共子序列、所述公共子序列为所述第四序列的后缀且所述公共子序列为所述第五序列的前缀的情况下,确定所述第五序列基于所述公共子序列的置信度;
在所述第五序列基于所述公共子序列的置信度大于或等于预设的第二置信度阈值的情况下,将所述第二字典树中的所述第四序列与所述第五序列进行合并,得到第三字典树。
5.根据权利要求2所述的方法,其特征在于,所述对所述第三字典树进行相似序列合并操作,得到第四字典树,包括:
确定所述第三字典树中的各个叶子结点所表示的第六序列;
确定任意两个第六序列之间的序列距离;
根据所述序列距离,对所述第三字典树中的各个叶子结点所表示的第六序列进行聚类,得到至少一个簇;
根据预设的通配符,将所述第三字典树中属于同一簇的第六序列合并,得到第四字典树。
6.根据权利要求2所述的方法,其特征在于,所述根据所述第四字典树中的各个叶子结点所表示的第二序列在所述网络数据流中的位置信息,对所述第四字典树进行剪枝操作,得到第五字典树,包括:
对于任一第二序列,根据所述第二序列在所述网络数据流中的位置信息,确定所述第二序列在所述网络数据流中的相邻位置间距;
在所述相邻位置间距小于预设的帧长阈值的情况下,从所述第四字典树中,删除与所述第二序列对应的结点,得到第五字典树。
7.根据权利要求1-6中任意一项所述的方法,其特征在于,所述根据所述目标序列在所述网络数据流中的位置信息,确定所述网络数据流的协议帧结构,包括:
根据所述目标序列在所述网络数据流中的位置信息,确定所述目标序列的状态转移图;
根据所述状态转移图,确定所述网络数据流的协议帧结构。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210375755.4/1.html,转载请声明来源钻瓜专利网。