本发明涉及网络数据筛选领域,尤其是涉及一种基于网络会话的数据筛选方法。
背景技术:
随着网络技术的不断发展,网络安全也显得越来越重要。为了保证网络的正常运行,我们需要对网络中出现的问题进行分析,进而解决网络中存在的问题隐患。现在,市面上也存在不少的网络分析工具,可以对网络进行抓包,然后针对数据包进行分析。对于大批量的数据包,其包含有太多的信息,如何从其中筛选出对分析人员有用的信息是非常关键的一步,只有这步做好了,才能快速的找到问题所在。市面上的网络分析工具也都提供了简单的筛选功能——对数据包进行筛选,但这种筛选功能筛选出来的数据包是一个一个的数据包,这些数据包并没有上下文的关系,也不能体现网络通信传输的整个流程,对我们分析网络问题的作用并不大。
技术实现要素:
本发明的目的在于:针对现有技术存在的问题,提供一种基于网络会话的数据筛选方法,解决现有筛选方法筛选出来的数据包是一个一个的数据包,这些数据包并没有上下文的关系,也不能体现网络通信传输的整个流程,对我们分析网络问题的作用并不大的问题。
本发明的发明目的通过以下技术方案来实现:
一种基于网络会话的数据筛选方法,其特征在于,该方法包括步骤:
(1)设置会话筛选条件,设置所述筛选条件所筛选的会话类型,所述会话筛选条件由规则构成;
(2)将会话筛选条件与会话进行匹配判断,得出筛选条件的匹配结果;
(3)根据筛选条件的匹配结果标记对应会话的匹配结果;
(4)根据会话的匹配结果,将匹配的会话通过界面显示给用户。
作为进一步的技术方案,所述会话筛选条件由一个规则构成,将该规则与会话进行一一匹配判断,得出该规则的匹配结果,该规则的匹配结果即为筛选条件的匹配结果。
作为进一步的技术方案,所述会话筛选条件由多个规则组合而成,将会话筛选条件中的每一个规则与会话进行一一匹配判断,得出每个规则的匹配结果,然后根据规则的组合来得出该筛选条件的匹配结果。
作为进一步的技术方案,所述会话类型为物理会话、IP会话、TCP会话、UDP会话的任意一种或多种。
作为进一步的技术方案,会话筛选条件的规则包括:地址与端口规则、归属地规则、会话协议规则、会话数据包属性规则、会话内容规则或会话属性规则。
作为进一步的技术方案,多个规则之间采用与/或两种方式进行组合,单个规则可以取反。
作为进一步的技术方案,各规则的匹配结果包括匹配、匹配但不确定、不匹配但不确定和不匹配四种匹配状态。
作为进一步的技术方案,当筛选条件的匹配结果为匹配或匹配但不确定时,将匹配的会话通过界面显示给用户。
作为进一步的技术方案,四种匹配状态的优先级为:匹配>匹配但不确定>不匹配但不确定>不匹配,当存储的会话数据超过限制后,首先删除匹配结果标记为不匹配的会话,然后依次为不匹配但不确定、匹配但不确定、匹配。
与现有技术相比,本发明在数据包筛选的基础上,提出了会话筛选的概念,通过会话筛选,使我们可以了解到整个会话的通信过程,数据的上下文关系,分析人员可以快速定位到网络问题所在。
附图说明
图1为会话筛选处理流程图;
图2为地址与端口规则筛选界面图;
图3为归属地规则筛选界面图;
图4为会话协议规则筛选界面图;
图5为会话数据包属性规则筛选界面图;
图6为会话内容规则筛选界面图;
图7为会话属性规则筛选界面图;
图8为规则“与”的逻辑图;
图9为规则“或”逻辑图;
图10为匹配状态图;
图11为匹配但不确定状态;
图12为不匹配但不确定状态;
图13为不匹配状态。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。
实施例
本发明提供一种基于网络会话的数据筛选方法,针对会话进行筛选,比数据包筛选更有意义,能够从筛选结果中取得会话的上下文通信信息,更有效地分析会话数据,该方法的筛选处理流程如图1所示,主要包括四个步骤:
一是设置会话筛选条件,以及该筛选条件筛选的会话类型;筛选条件可以由多个规则组合(与/或)而成;
二是会话筛选的匹配过程,将筛选条件中的每一个规则与会话进行一一匹配判断,得出每一个规则的匹配结果,然后根据规则的组合(与/或)来得出该筛选条件的匹配结果;
三是根据筛选条件的匹配结果来标记该会话的匹配结果;
四是根据会话的匹配结果,将匹配的会话通过界面展示给用户。
其中,会话类型包括:物理会话、IP会话、TCP会话、UDP会话;会话筛选可以针对四种会话类型的任意一种或多种进行筛选。
其中,会话筛选规则为多样化、可配置、可任意组合的会话筛选规则,包括:地址与端口规则、归属地规则、会话协议规则、会话数据包属性规则、会话内容规则、会话属性规则。
图2是地址与端口规则设置,可以设置会话双方或者其中一方的物理地址、IP地址、端口等,可以设置多组IP地址与端口的条件,会话满足其中一组即可;
图3是归属地规则设置,会话双方IP地址满足任意一个即可;
图4是会话协议规则设置,可以设置会话一个或多个协议类型,会话协议满足其中任意一个即可;
图5是会话数据包属性规则设置,可以设置会话中第几个数据包的数据包大小、数据包协议类型,如果该数据包是TCP协议的数据包,还可以设置该数据包的TCP flags;
图6是会话内容规则设置,可以设置会话传输的内容中是否包含特定的信息,其中内容的类型可以为:ASCII码、HEX、UTF-8、UTF-16等四种编码,支持大小写匹配、反向查找等;
图7是会话属性规则设置,可以对会话统计数据进行筛选,包括会话数据包数、字节数,会话发送数据包数、字节数,会话接收数据包数、字节数,会话持续时间,会话的时间范围等。
另外,每种会话筛选规则可以有0个或者多个规则实例,规则可以取反,多个规则之间可以按照任意顺序以与/或两种方式进行组合,形成会话筛选条件。
图8是两个规则与,并且协议规则是取反的,此规则的含义即是满足其中一方端口为80,并且会话协议不是HTTP的会话将被筛选出来。
图9是两个规则或,此规则的含义即是满足会话数据包大于1000个,或者会话协议是HTTP的会话将被筛选出来。
会话筛选规则对会话的匹配结果包含4种状态:匹配,匹配但不确定,不匹配但不确定,不匹配;规则的匹配状态可变化的,会话内容随着会话的交互而不断变化,其匹配结果也是可能随之而变化的,以下是各状态的含义:
匹配:会话满足该规则条件,且后续状态不会改变;如图10;如:需要筛选包含IP地址为192.168.5.5的会话,每一个会话双方的IP地址是确定的,所以判断IP地址是否匹配肯定是确定的,满足则是匹配;反之,不满足则不匹配;
匹配但不确定:会话当前满足该规则条件,但随着会话内容的增加会导致状态发生改变;如图11;如:需要筛选出会话的数据包数<1000的会话,则在会话的数据包个数在小于1000的时候,该会话的匹配结果应为匹配但不确定,因为随着会话数据包个数的增加,在数据包个数等于1000的时候,会话就不满足此条件了,匹配状态应该修改为不匹配;
不匹配但不确定:会话当前不满足该规则条件,但随着会话内容的增加会导致状态发生改变;如图12;如:需要筛选出会话的协议为HTTP的会话,在会话开始三次握手阶段会被识别为TCP协议,此时,该会话的匹配结果应为不匹配但不确定,因为在有HTTP数据包之后,会话会被识别为HTTP协议,此时会话的匹配结果会被标记为匹配但不确定,因为不确定后续协议识别会不会变为,所以不会被标记为匹配;
不匹配:会话不满足该规则条件,且后续状态不会改变;如图13;
规则匹配状态相与的结果(A与B),如下表:
规则匹配状态相或的结果(A或B)如下表:
规则匹配状态取反的结果如下表:
会话筛选过程是根据配置的筛选条件,将会话与筛选条件的每一个规则进行匹配判断,然后根据规则的组合方式(与/或),对规则的匹配结果进行组合(与/或)计算,得到筛选条件对会话的匹配结果。由于规则的匹配状态是可能随着会话内容的增加而发生改变的,因此会话筛选的匹配结果也会随之而发生改变;
最后,根据匹配的结果将筛选出的会话在界面显示,以供分析人员使用筛选出的会话结果进行会话分析。仅当会话的筛选条件匹配结果为匹配或匹配但不确定时,说明该会话才是符合筛选条件,才显示该会话。
会话的管理,由于内存空间有限,都会对会话的条数进行限制,在超过限制之后,删除之前的会话,这样可以让最新的会话数据得到保留;在加入会话筛选之后,之前相对简单的会话管理策略就需要做出对应的改变;加入会话筛选功能,对用户来说,将筛选匹配的会话显示出来,并且不能由于存储空间的限制而不论会话筛选是否匹配都将会话删除,这是不合理的,会话的删除需要根据筛选结果的优先级来进行判断,四种匹配状态的优先级为:
匹配>匹配但不确定>不匹配但不确定>不匹配
因此在需要删除会话时,首先删除匹配结果标记为不匹配的会话,然后依次为不匹配但不确定、匹配但不确定、匹配;
本发明针对会话进行筛选,比数据包筛选更有意义,能够从筛选结果中取得会话的上下文通信信息,更有效地分析会话数据;
多样化、可配置、可任意组合的会话筛选规则,包括6种规则:地址与端口规则、归属地规则、会话协议规则、会话数据包属性规则、会话内容规则、会话属性规则;规则可以取反,任意两个规则可以组合(与/或);
规则的匹配状态可变化的,会话内容随着会话的交互而不断变化,其匹配结果也是可能随之而变化的;
由于存储空间的限制,需要移除部分会话数据,将会话匹配状态标记不同的优先级,优先级:匹配>匹配但不确定>不匹配但不确定>不匹配,会话移除从标记为低优先级的先移除,这样可以让匹配的会话可以一直存在,保证筛选的完整性;
匹配的会话通过界面显示,同时显示筛选出该会话匹配对应的筛选条件的名称,并通过对应的颜色标记,让用户可以直观查看。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,应当指出的是,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。