[发明专利]采用平衡二叉树算法的网络连接跟踪方法有效
申请号: | 201711096312.7 | 申请日: | 2017-11-09 |
公开(公告)号: | CN107835175B | 公开(公告)日: | 2020-09-22 |
发明(设计)人: | 肖立昕;程雅峰 | 申请(专利权)人: | 深圳市云盾科技有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08;H04L12/851;H04L12/801 |
代理公司: | 深圳市科冠知识产权代理有限公司 44355 | 代理人: | 王海骏 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 采用 平衡 二叉 算法 网络 连接 跟踪 方法 | ||
本发明公开了一种采用平衡二叉树算法的网络连接跟踪方法,所述方法包括如下步骤:获得每个连接的五元组Y,所述Y包括:源IP,目标IP,源端口,目标端口和协议,将所述Y插入平衡二叉树;步骤S102、在平衡二叉树T中查找是否存在所述Y,如存在所述Y,更新当前根节点RX的数据,若不存在所述Y。本发明提供的技术方案具有实现有限内存下的高速连接匹配以及防火墙等应用层设备跟踪网络连接的优点。
技术领域
本发明涉及信息安全领域,尤其涉及一种采用平衡二叉树算法的网络连接跟踪方法。
背景技术
现有技术提供一种netfilter框架下连接跟踪的优化方法,提供了一种netfilter框架下连接跟踪的优化方法,包括:定义并初始化当前连接跟踪数M、最大连接跟踪数Mmax、当前已申请的连接跟踪数N、最大申请的连接跟踪数Nmax,NmaxMmax;在新申请连接跟踪时,N加1,判断MMmax?如果是,则进行老化处理后创建新的连接跟踪;如果否,则判断NNmax?,若是则返回错误,若否则创建新的连接跟踪;在新申请的连接跟踪确认后,M加1,并将其加入已确认连接跟踪链表。本发明实施例保证了有效连接跟踪的数量;优化了异常处理;明确了连接跟踪在alloc初始化与confirm确认两个阶段的责任;保证了正常的上网,下载时速率好的资源也会很好的保留。
现有技术还提供一种基于动态数据包采样的网络流量识别系统和方法,提供一种网络连接跟踪方法及系统,所述方法包括连接跟踪逻辑,其中所述连接跟踪逻辑包括处理未确认连接的表和处理已确认连接的表,所述方法包括以下步骤:对于未确认连接,判断是否满足确认条件;满足确认条件的话,迁移到处理已确认连接的表中;把处理已确认连接的表中的连接依次进行协议栈后继处理。本发明利用两级连接跟踪表结构使无效连接或无意义连接占用有限的网络资源降到最低,同时提前对数据包加以区别以便跟踪其连接状态。
现有技术无法实现有限内存下的高速连接匹配以及防火墙等应用层设备跟踪网络连接的问题。
发明内容
本申请提供一种采用平衡二叉树算法的网络连接跟踪方法。其解决现有技术的技术方案无法实现有限内存下的高速连接匹配以及防火墙等应用层设备跟踪网络连接的问题。
一方面,提供一种采用平衡二叉树算法的网络连接跟踪方法,所述方法包括如下步骤:
步骤S101、获得每个连接的五元组Y,所述Y包括:源IP,目标IP,源端口,目标端口和协议,将所述Y插入平衡二叉树;
步骤S102、在平衡二叉树T中查找是否存在所述Y,如存在所述Y,更新当前根节点RX的数据,若不存在所述Y,步骤103以及后续步骤;
步骤S103、判断平衡二叉树T中节点个数是否有空余,如平衡二叉树T中节点个数无空余,结束操作,如有空余,判断所述RX是否存在数据,如所述RX不存在数据,将数据插入到所述RX,执行步骤105及后续步骤;如RX存在数据,执行步骤S104;
步骤S104、将所述Y与当前根节点五元组XX比较,若YXx,进入所述Rx的左边子节点Rx-1再进行步骤D,若YXx,进入所述Rx的右边子节点Rx+1再进行步骤D,若Y=Xx,更新当前根节点Rx的数据;
步骤S105、根据状态决定二叉树的平衡翻转的顺序为F1或F2;
当前根节点的右子树记为R,当前根节点的左子树记为L;
F1:若R的右子树的节点个数大于L的节点个数,则向左翻转二叉树T,若R的左子树的节点个数大于L的节点个数,则先向右翻转R,更新R的节点信息,再向左翻转二叉树T;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市云盾科技有限公司,未经深圳市云盾科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711096312.7/2.html,转载请声明来源钻瓜专利网。