(19)中华 人民共和国 国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202111423542.6
(22)申请日 2021.11.26
(71)申请人 长扬科技 (北京) 有限公司
地址 100195 北京市海淀区闵庄路3号玉泉
慧谷二期3号楼 2层
(72)发明人 孙俊虎 闫印强 赵威
(74)专利代理 机构 厦门福贝知识产权代理事务
所(普通合伙) 35235
代理人 陈远洋
(51)Int.Cl.
G06F 9/54(2006.01)
G06F 9/451(2018.01)
G06N 20/00(2019.01)
H04L 9/40(2022.01)
H04L 67/1095(2022.01)
(54)发明名称
一种基于网络流量元数据的复杂事件处理
方法与系统
(57)摘要
本发明给出了一种基于网络流量元数据的
复杂事件处理方法与系统, 包括采集交换机镜像
端口的网络流量元数据保存为pcap包, 调用解析
指令解析pcap包的详细信息获得解析结果; 通过
具有可视化/图形化的界面的规则设计器, 并基
于算子模型预先设计复杂事件的处理规则, 使用
AI模型进行测试输 出规则文本; 利用rete树结构
来储存规则文本得到rete规则树, 再根据权限将
rete规则树 保存到规则数据库当中; 从rete规则
树的根节点开始将每个类型节点对应的模式与
元数据生成的事实/业务数据进行匹配, 把符合
类型节点对应的模式的结果输出到外部进行存
储。 实现了人工预定义业务规则, 集成了机器学
习和人工智能模 型, 可从多 方位多角度实现已知
安全威胁 检测及未知网络威胁感知。
权利要求书3页 说明书12页 附图8页
CN 114265710 A
2022.04.01
CN 114265710 A
1.一种基于网络流 量元数据的复杂事 件处理方法, 其特 征在于, 包括以下步骤:
S1: 采集交换机镜像端口的网络流量元数据保存为pcap包, 调用解析指令解析所述
pcap包的详细信息获得解析 结果, 再将所述 解析结果保存到Kafka消息队列中作为数据源;
S2: 通过具有可视化/图形化的界面的规则设计器, 并基于算子模型预先设计复杂 事件
的处理规则, 其中, 复杂事件的所述处理规则和相应的处理资源按照权限进行分配, 同时使
用AI模型对所述分配的结果进行测试, 将所述测试的结果保存为 规则文本;
S3: 将所述规则文本中的复杂事件的所述处理规则分解为若干个最小的规则匹配项,
将一个最小的规则匹配项作为一个模式, 再将一个所述模式作为一个类型节点来构建rete
树结构, 从而以rete树结构来储存所述规则文本得到rete规则树, 再根据权限将所述rete
规则树保存到规则数据库当中;
S4: 从所述Kafka消息队列中获取所述数据源并在内存中将所述数据源存储为事实/业
务数据, 从所述rete规则树的根节点开始将每个所述类型节点对应的模式与所述事实/业
务数据进行匹配, 若所述匹配的结果为相同, 则把符合所述类型节点对应的模式的结果输
出到外部进行存 储。
2.根据权利要求1所述的方法, 其特征在于, 所述采集交换机镜像端口的数据保存为
pcap包的步骤 包括:
启动主服务监听端口配置, 再从数据库中查询镜像端口的配置, 在各个镜像端口配置
抓包程序参数并采集数据。
3.根据权利要求1所述的方法, 其特征在于, 所述调用解析指令解析所述pcap包的详细
信息获得解析结果, 再将所述解析结果保存到Kafka消息队列中作为数据源, 具体步骤包
括:
监听所述Kafka消息队列, 判断是否有所述pcap包生成;
若是, 则获取所述所述pcap包 的文件名, 再调用解析指令解析所述pcap包中的所述网
络流量元数据并将解析 结果写入Kafka元 数据Topic;
若否, 则继续 监听所述Kafka消息队列。
4.根据权利要求1所述的方法, 其特征在于, 所述算子模型具体包括: 内置算子和自定
义算子。
5.根据权利要求1所述的方法, 其特征在于, 所述具有可视化/ 图形化的界面的规则设
计器包括:
用于通过鼠标点击来对所述处 理规则进行定义的可视化/图形化的界面;
用于对所述处理规则进行多条件组合并以图形方式进行展示的可视化/图形化的界
面。
6.根据权利要求1所述的方法, 其特征在于, 所述测试包括: 快速测试、 仿真测试以及
Rest服务测试。
7.根据权利要求1所述的方法, 其特征在于, 所述处理规则包括: 向导式规则和脚本式
规则。
8.根据权利要求1所述的方法, 其特征在于, 所述将一个所述模式作为一个类型节点来
构建rete树结构, 从而以rete树结构来储 存所述规则文本得到rete规则树, 具体步骤 包括:
步骤一: 创建一个rete树结构的根节点;权 利 要 求 书 1/3 页
2
CN 114265710 A
2步骤二: 取出所述处理规则中的一个模式记为模式i, 其中i为所述模式的序号且i=
{1,2,3…}, 检查所述模式i中的参数类型, 若所述参数类型是新的fact类型, 则在rete树结
构中加入一个 类型节点;
步骤三: 将所述模式i对应的Alpha节点记为节点Alpha(i), 检查所述节点Alpha(i)是
否已存在, 若存在则记录所述节 点Alpha(i)的位置, 若不存在则将所述模式i作为一个新的
Alpha节点加入到所述rete树结构中, 再根据所述模 式i建立对应的节点Alpha(i)的Alpha
内存表;
步骤四: 重复所述步骤二至所述步骤三并且每次重复后i加一, 直到所有的模式被处理
完毕;
步骤五: 组合所述rete树结构的Beta节点, 具体包括以下步骤:
根据所述模式i, 将所述模式i的Beta节点记为节点Beta(i);
当i=2时, 使节点Beta(2)的左输入节点为节点Alpha(1)且右输入节点为节点Alpha
(2);
当i>2时, 使节点Beta(i)的左输入节点为节点Beta(i ‑1)且右输入节点为节点Alpha
(i), 并将所述节点Beta(i)的两个父节点的内存表内联成为所述节点Beta(i)的内存表;
步骤六: 重复所述 步骤五直到所有的Beta节点都被处 理完毕;
步骤七: 将动作封装成叶节点作为所述节点Beta(i)的输出节点;
步骤八: 将最终得到的所述rete树结构作为rete规则树。
9.根据权利要求8所述的方法, 其特征在于, 所述S4中, 若所述匹配的结果不相同, 执行
以下步骤:
步骤a: 将所述事实/业务数据传递到Alpha节点, 检测所述事实/业务数据是否与当前
的Alpha节点对应的模式相匹配, 若是, 则把符合当前的Alpha节点对应的模式的结果输出
到外部进行存 储;
若否, 则将所述事实/业务数据传递到下一个Alpha节点并重复本步骤, 若均无匹配, 则
执行步骤b和步骤c;
步骤b: 将所述事实/业务数据传递到Beta节点左 端, 再将所述事实/业务数据封装成仅
包含一个事实/业 务数据的列表, 并将所述列表作为To ken;
步骤c: 将所述事实/业务数据传递到Beta节点的右端以及left存储区中的Token进行
匹配;
若匹配成功, 则把符合当前的Beta节点对应的模式的结果输出到 外部进行存 储;
若匹配不成功, 则将所述事实/业务数据加入到Token中, 再将Token传递到下一个节点
并重复执 行本步骤;
步骤d: 当所述Token被传递到最终的节点上, 则把符合所述最终的节点对应的模式的
结果输出到 外部进行存 储。
10.根据权利要求1所述的方法, 其特征在于, 所述相应的处理资源包括所有请求的
URL。
11.一种计算机可读存储介质, 其上存储有计算机程序, 其特征在于, 该计算机程序被
计算机处 理器执行时实施权利要求1至10中任一项所述的方法。
12.一种基于网络流 量元数据的复杂事 件处理系统, 其特 征在于, 包括:权 利 要 求 书 2/3 页
3
CN 114265710 A
3
专利 一种基于网络流量元数据的复杂事件处理方法与系统
文档预览
中文文档
24 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共24页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-19 01:19:52上传分享