CN1564547A - 保持连接特性的高速过滤分流方法 - Google Patents

保持连接特性的高速过滤分流方法 Download PDF

Info

Publication number
CN1564547A
CN1564547A CNA2004100171891A CN200410017189A CN1564547A CN 1564547 A CN1564547 A CN 1564547A CN A2004100171891 A CNA2004100171891 A CN A2004100171891A CN 200410017189 A CN200410017189 A CN 200410017189A CN 1564547 A CN1564547 A CN 1564547A
Authority
CN
China
Prior art keywords
packet
rule
address
filtration
port
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2004100171891A
Other languages
English (en)
Other versions
CN1287570C (zh
Inventor
张世永
严明
郭巍
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
FUDAN GUANGHUA INFORMATION SCIENCE AND TECHNOLOGY Co Ltd SHANGHAI
Original Assignee
FUDAN GUANGHUA INFORMATION SCIENCE AND TECHNOLOGY Co Ltd SHANGHAI
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by FUDAN GUANGHUA INFORMATION SCIENCE AND TECHNOLOGY Co Ltd SHANGHAI filed Critical FUDAN GUANGHUA INFORMATION SCIENCE AND TECHNOLOGY Co Ltd SHANGHAI
Priority to CNB2004100171891A priority Critical patent/CN1287570C/zh
Publication of CN1564547A publication Critical patent/CN1564547A/zh
Application granted granted Critical
Publication of CN1287570C publication Critical patent/CN1287570C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种保持连接特性的高速过滤分流方法,用于网络信息技术领域。本发明首先设置输出端口分组规则和过滤分流规则,再进行数据过滤分流处理,先通过协议分析,从网络上接收到的原始数据包中提取出IP数据包,根据设置好的过滤分流规则将与后续处理相关数据划分到各个输出端口分组中;然后将划分到每个组中的数据包的地址和端口信息进行Hash运算,Hash值再与该分组所包含的端口总数取模,得到的结果就是该数据包在所属的分组中对应的输出端口序号。采用本发明可以有效地解决在高速骨干网环境下,构建入侵检测、流量统计、内容审计、网络监测、负载均衡以及其它应用系统时,对海量数据流进行高速转发和集群处理的需求。

Description

保持连接特性的高速过滤分流方法    
技术领域
本发明涉及的是一种宽带网高流量数据处理方法,特别是一种适用于宽带网数据的保持连接特性的高速过滤分流方法,用于网络信息技术领域。
背景技术
近两年,我国骨干网与城域网的建设已达到相当的规模,骨干网的带宽通常在2.5G以上。现阶段的网络安全产品如防火墙、入侵检测系统、网络安全审计等对网络数据包的处理性能是保证系统能否对网络中发生的安全事件做出正确有效分析与判断的首要前提。现有安全产品对于2.5G、10G以上宽带网络的海量数据处理需求存在很大的局限性:
1、基于单计算机方式的IDS、审计系统等产品依靠CPU实现网络数据的处理,但内存、CPU等部件存在数量和速度上的限制,不可能无限制地支持大数据量的处理需求。因此,此类安全产品无法直接用于2.5G以上的高速网络。
2、基于七层交换技术的负载均衡设备与各类IDS、审计系统的结合是目前针对高流量网络数据处理的理想方式。但目前的负载均衡处理机制是以连接表的形式保存TCP连接的地址信息,随着网络规模的扩大及复杂化,连接表将随网络规模的扩大呈指数增长。此外,在网络上还存在大量无用的虚假连接,连接表数据规模的不断膨胀还会加大在查表过程中的资源消耗,即使采用高性能的NPU也很难适应超大连接数据的处理需求。
3、连接表快速查找问题限制了数据处理能力的提高。采用软件实现,数据检索速度较慢;基于硬件如内容关联存储器(CAM)的实现方案,存储成本过高,不可能满足无限庞大的连接表的存储和快速查找。
以色列Radware公司的安全应用交换机FireProof,可对多台防火墙FireWall、VPN、IDS做流量的负载均衡。FireProof中使用了多种传统的负载均衡算法,如轮循算法、加权最少用户法、加权最少字节法、加权最少数据包法。为了保证能够对属于同一连接的双向数据包经负载均衡算法数据结果处理一致,在FireProof中需要跟踪并记录每个连接双向的数据信息,通过检测这些信息来保证后续通信数据能得到相同的负载均衡处理。对于高数据流量的网络,FireProof采用传统的Hash表方法,为每个连接在Hash表中建立一条记录,当这个连接的下一个报文到达时,从Hash表中可以得到对该连接分配的输出地址和端口,将报文传给原选定的防火墙。当连接终止或超时,FireProof将这个连接的信息从Hash表中删除。该产品不足之处在于:为了保证对属于同一连接的双向数据包处理的一致性,必须在该产品中为每条连接记录与处理相关的信息,随着网络规模的不断扩大,日益庞大的连接信息的存储及查找问题无法满足高速宽带网络的数据处理需求。
互联网的宽带化发展使得网络流量迅速增长,面对核心网、骨干网上的海量数据,仅能满足百兆网络、千兆网络的数据处理能力的网络安全产品,由于无法对高流量的数据进行有效报文采集和处理,造成数据采集缺失而出现漏报,已经成为这些安全产品在电信骨干网络领域应用的一个主要瓶颈。
发明内容
本发明的目的主要是针对防火墙、入侵检测、安全审计等产品在高速骨干网络应用中海量数据处理机制的这些缺陷,提出一种保持连接特性的高速过滤分流方法。使其依据用户自定义的过滤分流规则结合基于Hash处理的分流算法,将从网络上接收到的原始数据包中对业务处理有意义的数据实时有效、并保持连接地转发到相应的后端集群处理系统进行进一步的业务处理,有效地解决在高速骨干网环境下,构建入侵检测、流量统计、内容审计、网络监测、负载均衡以及其它应用系统时,对海量数据流进行高速转发和集群处理的需求。
本发明是通过以下技术方案实现的,首先是设置输出端口分组规则和过滤分流规则。输出端口分组规则的配置是首先将各输出端口按照对应的后端应用系统的业务处理类型进行分组,然后再根据组内各端口对应的后端系统的处理能力决定每个端口在该组中数据包处理流量的分配比例。过滤分流规则的配置是根据IP地址信息或特殊字段将不同的数据包划分到各个分组当中。数据过滤分流的处理过程是首先通过协议分析,从网络上接收到的原始数据包中提取出IP数据包,根据设置好的过滤分流规则从大量的原始数据中滤掉与后续处理无关的部分,将相关数据划分到不同的输出端口分组中。然后将划分到每个组中的数据包的地址和端口信息进行Hash运算,Hash值再与该分组所包含的端口总数取模,得到的结果就是该数据包在所属的分组中对应的输出端口序号。
以下对本发明作进一步的说明,具体内容如下:
1.规则设置:对原始数据进行过滤分流处理之前首先要设置规则。规则分为两部分,一部分是输出端口分组配置规则,另一个部分是过滤分流规则。
■输出端口分组配置规则
将输出端口进行分组处理的优点是为了配合过滤规则,将对应业务处理需求相近的输出端口以分组的方式集中统一处理,与每个端口分开独立处理的方式相比,分组方式的处理过程更为简单高效。输出端口的分组主要遵循以下几点原则:
(1)输出端口的分组首先依据后端处理系统的业务需求,按照不同的业务处理类型进行分组。但是由于一个系统可能与多个系统分别在过滤规则属性中互相有重叠,因此同一个输出端口可以出现在不同的分组中。
(2)在每个分组内部,考虑到各个系统处理能力存在不均衡的情况,为了保证数据处理任务能够实现均衡分配,同一个输出端口可以多次出现在同一个组中,即在分组内按照每个端口对应的后端系统的数据处理能力决定每个端口在该组中数据包流量的分配比例。
(3)组内各输出端口的分配在保证负载均衡的同时,还必须保证同一条TCP连接(双向)的所有数据包必须转发到同一个输出端口上,以便于后端对所接收到的数据的汇总和还原。
■过滤分流规则
过滤分流规则的设置包括两种方式:一种是将数据包的IP地址和端口信息,如源IP地址、源IP掩码、源端口、目的IP地址、目的IP掩码、目的端口作为直接监控对象,基于这些IP地址信息将规则设置在基于地址信息的过滤分流规则表中。另一种是基于特殊字段信息的规则设置方式,即用户只需设置特殊字段、该字段的偏移量、该字段的长度、该字段的匹配内容以及相应的过滤分流行为。
基于数据包的IP地址和端口信息的过滤分流规则表的格式如下:
规则号 源IP地址 源IP掩码 源端口 目的IP地址 目的IP掩码 目的端口 过滤分流行为
基于特殊字段信息的过滤分流规则表的格式如下:
规则号 字段偏移量 字段长度 匹配内容 过滤分流行为
其中:
规则号:每个规则的唯一标识序号
源/目的IP地址:数据包传输的源端和目的端的IP地址值
源/目的IP掩码:数据包传输的源端和目的端IP字段的子网掩码
源/目的端口:数据包传输的源端和目的端的端口号
字段偏移量:从IP数据包内容开始计算的需要匹配的特殊字段的偏移量
字段长度:需要匹配的特殊字段的长度
匹配内容:特殊字段的匹配值,这些特殊字段可以包括如URL地址、Email信件中的收信人和发信人地址字段。
过滤分流行为:“0”表示将该数据包丢弃;“1”表示将该数据包转发到组1;“2”表示将该数据包转发到组2;……“N”表示将该数据报转发到组N;“-1”表示该条规则无效,适用于某条规则不便于立即删除但当前又不可以使用的情况。如果过滤分流规则表中除过滤分流行为字段外的所有字段都为0,则表示该条规则适用于所有数据包。
过滤分流规则的设定将作为此后的过滤分流处理的依据。当从网络上接收到的数据包和一条基于数据包的IP地址和端口信息的过滤分流规则匹配时,数据包将根据该规则设定的过滤分流行为转发到相应的分组;如果从网络上接收到的数据包中包含与预先设置的特殊字段值相同的数据时,将提取出该数据包的IP地址信息,连同预先设置的相应的过滤分流行为,形成一条基于IP地址和端口信息的动态过滤分流规则,写入基于数据包的IP地址和端口信息的过滤分流规则表中。该数据包以及该数据包所属的TCP/UDP连接的所有后续包都将根据此规则设定的过滤分流行为转发到相应的分组。基于特征字段匹配形成的过滤分流规则具有时效特性,当这条连接结束后,基于数据包的IP地址和端口信息的过滤分流规则表中对应的这条规则也将被删除,对于新接收到的数据包,同样要按照上述特殊字段匹配的过程重新生成新的基于IP地址和端口信息的动态过滤分流规则。
2.数据过滤分流处理:规则设置好后,就可以开始对网络上的原始数据包进行过滤分流处理。这一数据处理过程包括以下几个环节:
(1)初始化:将过滤分流规则导入内存,如果采用CAM技术实现,则将规则设置到CAM系统中。系统会根据用户在“基于数据包的IP地址和端口信息的过滤分流规则表”和“基于特殊字段信息的过滤分流规则表”中设定的内容,生成基于数据包的IP地址和端口信息的过滤分流规则表和基于特殊字段信息的过滤分流规则表两张表。其中,基于数据包的IP地址和端口信息的过滤分流规则表包含静态设置的规则和动态设定的规则两部分,静态设置的规则是用户设定的内容,动态设定的规则是系统在进行基于特殊字段信息的过滤分流规则匹配时动态生成的规则内容,详见下文关于过滤处理的过程。由于动态设定的规则具有时效性,因此导入到内存的基于数据包的IP地址和端口信息的过滤分流规则表增加“动态/静态”和“超时计数”两个字段,格式为:
规则号 源IP地址 源IP掩码 源端口 目的IP地址 目的IP掩码 目的端口 过滤分流行为 动态/静态 超时计数
(2)截取原始数据包:截取网络上的数据包,进行协议分析,根据网络协议数据包格式提取出IP数据包。
(3)过滤处理:
首先,系统将获取的IP数据包按照预先设置的基于数据包的IP地址和端口信息的过滤分流规则表进行匹配,如果匹配成功,则按照规则表中设置的“过滤分流行为”,将数据包划分到不同的输出端口分组中。如果匹配到的规则属于动态设定规则,并且数据包属于连接结束包,则清除该条动态设定规则,否则,将该条规则的超时计数清0。对于超过计数值仍未处理完成的情况,该条动态设定的规则也将被删除。
此后,对于没能与基于数据包的IP地址和端口信息的过滤分流规则表中规则匹配成功的数据包,再与基于特殊字段信息的过滤分流规则表中设置的规则进行匹配,如果匹配成功,根据该条特殊字段信息的过滤分流规则中设定的过滤分流行为将数据包划分到不同的输出端口分组中,并根据该数据包的源IP、目的IP地址和此规则的过滤分流行为生成一条基于数据包的IP地址和端口信息的动态过滤分流规则加入到基于数据包的IP地址和端口信息的过滤分流规则表中,通过与这条新形成的动态规则进行匹配,将会提取出该数据包所属连接的后续数据包。如果数据包未能与基于特殊字段信息的过滤分流规则相匹配,则丢弃该数据包。
由于动态生成的基于数据包的IP地址和端口信息的过滤分流规则是针对匹配到特殊字段内容的连接,因此不会产生巨大的动态规则数量,也不会受到类似SYNFlooding(同步泛滥)攻击的超大连接数影响,通常的CAM技术能够满足需求。
(4)分流处理:分流算法是将划分到每个分组中的每个数据包的源IP地址和目的IP地址进行高低位按位异或运算,如果是TCP/UDP数据包,则再将TCP/UDP端口号与运算结果再次进行异或,最终得到一个运算结果HASH值。再将此运算结果HASH值与该分组中所包含的输出端口总数取模,得到的结果就是该数据包在所属分组中对应的输出端口序号。
采用这种分流算法的原理是:以IP地址可以从网络上的所有数据包中确定出属于某一个源主机和目的主机之间进行数据交换的数据包,而异或运算的特点是运算结果与输入数据的顺序无关,因此可以保证同一个连接上的双向数据包的IP地址和端口号运算得到的值相同,同时按位异或运算具有一定的离散特性,基本能够保证不同的连接经异或处理后得到不同的结果值,因此再通过与分组中的输出端口总数取模后,就可以保证既能够将不同的数据包均衡地分配到不同的输出端口上,又可以将属于同一连接的数据包从相同的端口输出,从而实现不依赖连接表又能够保持连接情况下的负载均衡的分流处理。
本发明具有实质性特点和显著进步:(1)利用过滤分流规则对原始数据包进行粗粒度过滤的预处理方法,可以大大减少后端的数据处理负担;此外,还能对数据包内容进行匹配,能够对匹配特殊内容的数据包所属连接的后续数据包进行分流处理。(2)既能根据数据包类型进行分流,又能对同一类型数据包根据流量比例进行分流。(3)利用Hash算法取模实现的分流处理,不需要依赖连接表同样可以保持连接,解决了传统的负载均衡算法存在的连接表太大难于维护和存储的不足,并且只需要根据取模后的结果即可以直接确定输出端口,避免了传统算法需要对连接表中的数据进行逐条检索造成的查找效率低等问题,保证了更高的检索效率,从而能够满足高速骨干网上海量数据流无上限并发处理的需求。(3)本方法适合采用现场可编程门阵列(FPGA)和内容可寻址存储器(CAM)芯片等专用硬件技术实现,能够达到较高的性价比,保证在高速骨干网络的线速处理需求。如果限定一组内输出端口数量为2的幂次方,则可采用按位“与”的方式实现,更适合硬件实现,进一步提高效率降低成本。
附图说明
图1本发明实施的系统示意图
具体实施方式
如图1所示,在核心骨干网络环境中,接入多台入侵检测设备、审计设备和网络监测设备对网络系统的运营状况进行安全监控。这些安全设备需要从核心骨干网里的海量数据中提取出自身处理所需的信息作为后端分析与判别的依据。采用本发明中提出的技术方案,可以满足大容量数据转发处理器无法满足数据的分类转发处理的需求。下面阐述本发明技术方案的具体实施例。
(1)设置输出端口分组配置规则:假设高速网过滤分流接入平台具有8个输出端口,端口标识号分别为:0、1、2、3、4、5、6、7,这些端口分别对应后端的各个安全监测设备。根据每个安全监测设备的业务类型处理需求和各自的数据处理能力,将各个端口划分成四个分组:
分组号   输出端口标识号
1   3;2;0;2
2   1;4
3   5;7;5;6;7
4   0;4
划分到同一个分组中的端口说明它们将处理相同类型的数据包,其中端口2在分组1中出现两次,说明端口2对应的后端处理设备将接收并处理该输出端口中二四分之一的数据量;端口4被划分到2和4两个分组当中,说明端口4将负责转发来自这两个分组的数据。
(2)设置过滤分流规则:过滤分流规则的设置是为了实现粗粒度的数据过滤分流,将对后端处理无用的数据滤除掉,将后端每个处理设备所需的数据划分到指定的端口分组中。过滤分流规则设置的示例如下所示:
基于数据包的IP地址和端口信息的过滤分流规则表:
  规则号   源IP地址   源IP掩码   目的IP地址   目的IP掩码   源端口号   目的端口号   过滤分流行为   动态/静态     超时计数
  0   0.0.0.0   0.0.0.0   0.0.0.0   0.0.0.0   0   21   1   静态     /
  1   0.0.0.0   0.0.0.0.   0.0.0.0   0.0.0.0   5050   0   0   静态     /
  2   61.125.2.1   255.255.255.255   0.0.0.0   0.0.0.0   0   0   2   静态     /
  3   0.0.0.0   0.0.0.0   61.125.2.1   255.255.255.255   0   0   3   静态     /
  4   61.125.34.3   255.255.255.255   0.0.0.0   0.0.0.0   0   0   2   静态     /
  5   0.0.0.0   0.0.0.0   0.0.0.0   0.0.0.0   80   0   1   静态     /
  6   61.125.3.8   255.255.255.0   0.0.0.0   0.0.0.0   90   0   4   静态     /
基于特殊字段信息的过滤分流规则表:
规则号 字段偏移量 字段长度 匹配内容 过滤分流行为
301 42 15 xy@yahoo.com.cn 3
(3)对从核心骨干网络上截取到的数据包进行协议分析,将IP数据包提取出来。假定截获到以下两个数据包:
数据包a由源地址61.125.3.8,源IP掩码255.255.255.0,源端口90,发向目的地址10.10.25.30,目的IP掩码255.255.255.0,目的端口为1290。
数据包b是基于SMTP协议发送邮件时截取到的数据包,源地址为10.10.19.131,源IP掩码255.255.255.0,源端口为1664,目的地址为216.136.173.18,目的IP掩码255.255.255.0,目的端口为25,发信人的邮件地址为xy@yahoo.com.cn。
(4)将每个IP数据包分别与过滤分流规则表中的各个规则进行匹配,如果匹配到过滤分流行为是0的规则,将该数据包丢弃,对其余保留下来的数据包用分组号进行标记,标明各个数据包的分组结果。如果某一个数据包不能与任何一条规则匹配,则将该数据包丢弃。
从上述定义的规则可以得出,划分到组1的数据是:目的端口号为21的数据包、源端口号为80的数据包;划分到组2的数据是:从IP地址为61.125.2.1、IP掩码为255.255.255.255发出的数据包和从IP地址为61.125.34.3、IP掩码为255.255.255.255发出的数据包;划分到组3的数据是:发向IP地址为61.125.2.1,IP掩码为255.255.255.255的数据包,以及在数据包IP包头后的第0X42字节开始的15个字节中包含xy@yahoo.com.cn内容的所属连接的所有数据包;划分到组4的数据是:从IP地址为261.125.3.8、IP掩码为255.255.255.0、端口号为90发出的数据包。此外,如果规则匹配完成后,用分组号来标识每个数据包。
根据(3)中假定的情况对数据包a的处理过程:将数据包a的IP地址信息与基于数据包的IP地址和端口信息的过滤分流规则表中设置的规则逐一进行匹配,匹配结果发现该数据包的IP地址信息满足规则6,因此数据包a按照规则6中设置的过滤分流行为被划分到分组4处理。
根据(3)中假定的情况对数据包b的处理过程:将数据包b中的地址信息与基于数据包的IP地址和端口信息的过滤分流规则表中设置的规则逐一进行匹配,匹配结果发现没有与任何一条规则匹配成功,再将该数据包中字段偏移量为0X42字节之后的15个字节的值“xy@yahoo.com.cn”提取出来与基于特殊字段信息的过滤分流规则表中的规则进行逐一匹配,匹配结果满足规则301。按照规则301中设置的过滤分流行为,将数据包b划分到分组3,并提取出该数据包中的IP地址信息,连同规则301中设置的过滤分流行为,生成一条新的动态过滤分流规则加入到基于数据包的IP地址和端口信息的过滤分流规则表中,即:
规则号  源IP地址 源IP掩码 目的IP地址 目的IP掩码 源端口号 目的端口号 过滤分流行为 动态/静态 超时计数
7  10.10.19.131 255.255.255.0 216.136.173.18 255.255.255.0 1664 25 3 动态 200
(5)对划分到每个分组的数据,按照本发明中提出的分流算法进行分流处理。数据包a的源IP地址61.125.3.8和目的IP地址10.10.25.30高低位按位异或,得到的结果值再与源端口号90和目的端口号1290的异或结果进行按位异或,最终得到的结果与分组4中的端口总数取模,即:
{(0X3D7D_0X0A0A)_(0X0308_0X191E)_(0X005A_0X050A)}mod2={0X3777_0X1A16_0X0550}mod 2=1
运算结果为1,表明该数据包a应从分组4中的第2个端口输出,即端口4输出。
数据包b的源IP地址10.10.19.131和目的IP地址216.136.173.18高低字节按位异或,得到的结果值再与源端口号1664和目的端口号25的异或结果进行按位异或,最终得到的结果与分组3中的端口总数取模,即:
{(0X0A0A_0XD888)_(0X1383_0XAD12)_(0X0680_0X0019)}mod5={0XD282_0XBE91_0X0699}=4
运算结果为4,表明该数据包b应从分组3中的第5个端口输出,即端口7输出。
(6)假定收到数据包a、b所属连接的后续包,由于所属同一连接数据包的IP地址和端口相同,因此经上述运算过程得到的结果也相同,所以保证了相同连接的所有后续包仍然从相同的端口输出。
(7)收到数据包b所属连接的结束包,则清除动态设置的规则7。
本发明提出的不依赖连接表的高速过滤分流方法如果采用CAM技术实现,对于12路2.5G POS接入,具备30G的数据接入能力,满足高速骨干网络的线速数据接入需求。

Claims (6)

1、一种保持连接特性的高速过滤分流方法,其特征在于,首先设置输出端口分组规则和过滤分流规则,输出端口分组规则的配置是首先将各输出端口按照对应的后端应用系统的业务处理类型进行分组,然后再根据组内各端口对应的后端系统的处理能力决定每个端口在该组中数据包处理流量的分配比例,过滤分流规则的配置是根据IP地址信息或特殊字段将数据包划分到各个分组当中;再进行数据过滤分流处理,先通过协议分析,从网络上接收到的原始数据包中提取出IP数据包,根据设置好的过滤分流规则将与后续处理相关数据划分到各个输出端口分组中;然后将划分到每个组中的数据包的地址和端口信息进行Hash运算,Hash值再与该分组所包含的端口总数取模,得到的结果就是该数据包在所属的分组中对应的输出端口序号。
2、根据权利要求1所述的保持连接特性的高速过滤分流方法,其特征是,所述的输出端口分组的配置遵循以下原则:
(1)输出端口的分组首先依据后端处理系统的业务需求,按照业务处理类型进行分组,当一个系统与多个系统分别在过滤规则属性中互相有重叠时,同一个输出端口会出现在两个以上的分组中;
(2)在每个分组内部,为了保证数据处理任务实现均衡分配,同一个输出端口可多次出现在同一个组中,即在分组内按照每个端口对应的后端系统的数据处理能力决定每个端口在该组中数据包流量的分配比例;
(3)组内各输出端口的分配在保证负载均衡的同时,保证同一条TCP连接双向的所有数据包必须转发到同一个输出端口上,便于后端对所接收到的数据的汇总和还原。
3、根据权利要求1所述的保持连接特性的高速过滤分流方法,其特征是,所述的过滤分流规则的设置包括两种方式:
一种是将数据包的IP地址和端口信息,如源IP地址、源IP掩码、源端口、目的IP地址、目的IP掩码、目的端口作为直接监控对象,基于这些IP地址信息将规则设置在基于地址信息的过滤分流规则表中;
另一种是基于特殊字段信息的规则设置方式,即用户只需设置特殊字段、该字段的偏移量、该字段的长度、该字段的匹配内容以及相应的过滤分流行为;
基于数据包的IP地址和端口信息的过滤分流规则表的格式如下: 规则号 源IP地址 源IP掩码 源端口 目的IP地址 目的IP掩码 目的端口 过滤分流行为
基于特殊字段信息的过滤分流规则表的格式如下: 规则号 字段偏移量 字段长度 匹配内容 过滤分流行为
其中:
规则号:每个规则的唯一标识序号
源/目的IP地址:数据包传输的源端和目的端的IP地址值
源/目的IP掩码:数据包传输的源端和目的端IP字段的子网掩码
源/目的端口:数据包传输的源端和目的端的端口号
字段偏移量:从IP数据包内容开始计算的需要匹配的特殊字段的偏移量
字段长度:需要匹配的特殊字段的长度
匹配内容:特殊字段的匹配值,这些特殊字段包括如URL地址、Email信件中的收信人和发信人地址字段;
过滤分流行为:“0”表示将该数据包丢弃,“1”表示将该数据包转发到组1,“2”表示将该数据包转发到组2,……“N”表示将该数据报转发到组N,“-1”表示暂停使用该条规则,如果过滤分流规则表中除过滤分流行为字段外的所有字段都为0,则表示该条规则适用于所有数据包。
4、根据权利要求1或3所述的保持连接特性的高速过滤分流方法,其特征是,过滤分流规则的设定将作为此后的过滤分流处理的依据,当从网络上接收到的数据包和一条基于数据包的IP地址和端口信息的过滤分流规则匹配时,数据包将根据该规则设定的过滤分流行为转发到相应的分组;如果从网络上接收到的数据包中包含与预先设置的特殊字段值相同的数据时,将提取出该数据包的IP地址信息,连同预先设置的相应的过滤分流行为,形成一条基于IP地址和端口信息的动态过滤分流规则,写入基于数据包的IP地址和端口信息的过滤分流规则表中,该数据包以及该数据包所属的TCP/UDP连接的所有后续包都将根据此规则设定的过滤分流行为转发到相应的分组,基于特征字段匹配形成的过滤分流规则具有时效特性,当这条连接结束后,基于数据包的IP地址和端口信息的过滤分流规则表中对应的这条规则也将被删除,对于新接收到的数据包,同样要按照上述特殊字段匹配的过程重新生成新的基于IP地址和端口信息的动态过滤分流规则。
5、根据权利要求1所述的保持连接特性的高速过滤分流方法,其特征是,所述的数据过滤分流处理,包括以下几个环节:
(1)初始化:将过滤分流规则导入内存,如果采用CAM技术实现,则将规则设置到CAM系统中,系统会根据用户在“基于数据包的IP地址和端口信息的过滤分流规则表”和“基于特殊字段信息的过滤分流规则表”中设定的内容,生成基于数据包的IP地址和端口信息的过滤分流规则表和基于特殊字段信息的过滤分流规则表两张表,其中,基于数据包的IP地址和端口信息的过滤分流规则表包含静态设置的规则和动态设定的规则两部分,静态设置的规则是用户设定的内容,动态设定的规则是系统在进行基于特殊字段信息的过滤分流规则匹配时动态生成的规则内容;
(2)截取原始数据包:截取网络上的数据包,进行协议分析,根据网络协议数据包格式提取出IP数据包;
(3)过滤处理:
首先,系统将获取的IP数据包按照预先设置的基于数据包的IP地址和端口信息的过滤分流规则表进行匹配,如果匹配成功,则按照规则表中设置的“过滤分流行为”,将数据包划分到各输出端口分组中,如果匹配到的规则属于动态设定规则,并且数据包属于连接结束包,则清除该条动态设定规则,否则,将该条规则的超时计数清0,对于超过计数值还在处理的情况,该条动态设定的规则也将被删除;
对于与基于数据包的IP地址和端口信息的过滤分流规则表中规则匹配失败的数据包,再与基于特殊字段信息的过滤分流规则表中设置的规则进行匹配,如果匹配成功,根据该条特殊字段信息的过滤分流规则中设定的过滤分流行为将数据包划分到相应的输出端口分组中,并根据该数据包的源IP、目的IP地址和此规则的过滤分流行为生成一条基于数据包的IP地址和端口信息的动态过滤分流规则加入到基于数据包的IP地址和端口信息的过滤分流规则表中,通过与这条新形成的动态规则进行匹配,将会提取出该数据包所属连接的后续数据包,如果数据包与基于特殊字段信息的过滤分流规则匹配失败,则丢弃该数据包;
(4)分流处理:采用分流算法将划分到每个分组中的每个数据包的源IP地址和目的IP地址进行高低位按位异或运算,如果是TCP/UDP数据包,则再将TCP/UDP端口号与运算结果再次进行异或,最终得到一个运算结果HASH值,再将此运算结果HASH值与该分组中所包含的输出端口总数取模,得到的结果就是该数据包在所属分组中对应的输出端口序号。
6、根据权利要求5所述的保持连接特性的高速过滤分流方法,其特征是,由于动态设定的规则具有时效性,因此导入到内存的基于数据包的IP地址和端口信息的过滤分流规则表增加“动态/静态”和“超时计数”两个字段,格式为: 规则号 源IP地址 源IP掩码 源端口 目的IP地址 目的IP掩码 目的端口 过滤分流行为 动态/静态 超时计数
CNB2004100171891A 2004-03-25 2004-03-25 保持连接特性的高速过滤分流方法 Expired - Fee Related CN1287570C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2004100171891A CN1287570C (zh) 2004-03-25 2004-03-25 保持连接特性的高速过滤分流方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2004100171891A CN1287570C (zh) 2004-03-25 2004-03-25 保持连接特性的高速过滤分流方法

Publications (2)

Publication Number Publication Date
CN1564547A true CN1564547A (zh) 2005-01-12
CN1287570C CN1287570C (zh) 2006-11-29

Family

ID=34478825

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100171891A Expired - Fee Related CN1287570C (zh) 2004-03-25 2004-03-25 保持连接特性的高速过滤分流方法

Country Status (1)

Country Link
CN (1) CN1287570C (zh)

Cited By (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007147310A1 (fr) * 2006-06-15 2007-12-27 Huawei Technologies Co., Ltd. Procédé et appareil pour réaliser le partage d'une charge de trafic de réseau
CN100426773C (zh) * 2005-11-30 2008-10-15 中兴通讯股份有限公司 一种多mac端口互联时均衡端口流量的方法
CN100459524C (zh) * 2006-04-25 2009-02-04 中国移动通信集团公司 媒体流分流系统及分流方法
CN101896011A (zh) * 2009-05-18 2010-11-24 大唐移动通信设备有限公司 一种信息过滤设备及方法
CN101896010A (zh) * 2009-05-18 2010-11-24 大唐移动通信设备有限公司 一种信息过滤设备及方法
CN101909003A (zh) * 2010-07-07 2010-12-08 南京烽火星空通信发展有限公司 线速分流设备及方法
CN101217455B (zh) * 2007-01-05 2011-07-27 上海复旦光华信息科技股份有限公司 基于有用连接数据完整的安全内容过滤分流器
CN102143082A (zh) * 2010-07-07 2011-08-03 南京烽火星空通信发展有限公司 不均匀处理能力下的线速分流装置及方法
CN101141670B (zh) * 2006-09-05 2011-08-24 中兴通讯股份有限公司 消息分发系统及方法
CN102209019A (zh) * 2010-03-30 2011-10-05 杭州华三通信技术有限公司 一种基于报文净荷的负载均衡方法和负载均衡设备
CN102217248A (zh) * 2008-09-12 2011-10-12 惠普公司 分布式分组流检查和处理
CN101699802B (zh) * 2009-10-23 2012-02-29 北京锐安科技有限公司 一种海量数据分流方法
CN102387160A (zh) * 2011-12-13 2012-03-21 曙光信息产业(北京)有限公司 一种基于ip报文五元组过滤策略的系统和方法
CN101789884B (zh) * 2009-01-23 2012-03-28 英业达股份有限公司 网络入侵检测的负载均衡方法
CN101764741B (zh) * 2009-11-27 2012-06-06 上海恒为信息科技有限公司 支持多业务功能的过滤分流装置及其方法
CN102497385A (zh) * 2011-12-31 2012-06-13 曙光信息产业股份有限公司 一种网络流量审计方法及审计系统
CN102495764A (zh) * 2011-12-06 2012-06-13 曙光信息产业股份有限公司 数据分流的实现方法和装置
CN102523163A (zh) * 2011-12-19 2012-06-27 曙光信息产业(北京)有限公司 一种支持多种分流模式的流量管理设备和方法
CN102780771A (zh) * 2012-07-12 2012-11-14 深圳市同洲电子股份有限公司 一种业务传输方法、装置和设备
CN102868628A (zh) * 2011-07-06 2013-01-09 阿里巴巴集团控股有限公司 流量切分方法、装置和系统
CN102932270A (zh) * 2012-11-27 2013-02-13 无锡城市云计算中心有限公司 支持网络安全业务的负载均衡方法和设备
CN103181131A (zh) * 2010-10-29 2013-06-26 瑞典爱立信有限公司 最短路径桥接网络中的负载平衡
CN103281246A (zh) * 2013-05-20 2013-09-04 华为技术有限公司 报文处理方法及网络设备
CN103414611A (zh) * 2013-08-21 2013-11-27 宁波成电泰克电子信息技术发展有限公司 一种高速负载网络均衡系统的流量统计方法
CN103491069A (zh) * 2013-09-05 2014-01-01 北京科能腾达信息技术股份有限公司 网络数据包的过滤方法
CN103685224A (zh) * 2013-09-05 2014-03-26 北京安博达通科技有限责任公司 网络入侵检测方法
CN103685222A (zh) * 2013-09-05 2014-03-26 北京科能腾达信息技术股份有限公司 基于确定性有穷状态自动机的数据匹配检测方法
CN103685221A (zh) * 2013-09-05 2014-03-26 北京科能腾达信息技术股份有限公司 网络入侵检测方法
CN103780601A (zh) * 2012-10-17 2014-05-07 北京力控华康科技有限公司 一种自动建立以太网通信安全规则的方法
CN103841096A (zh) * 2013-09-05 2014-06-04 北京科能腾达信息技术股份有限公司 自动调整匹配算法的入侵检测方法
US8782787B2 (en) 2009-10-28 2014-07-15 Hewlett-Packard Development Company, L.P. Distributed packet flow inspection and processing
CN104012052A (zh) * 2011-11-10 2014-08-27 博科通讯系统有限公司 用于软件定义网络中的流管理的系统和方法
CN104539549A (zh) * 2014-12-30 2015-04-22 天津市锦标科技有限公司 一种基于高密度网络流量的数据报文处理方法
CN105681317A (zh) * 2016-02-03 2016-06-15 国网智能电网研究院 一种新型的业务和数据库审计引擎
CN105704059A (zh) * 2016-03-31 2016-06-22 北京百卓网络技术有限公司 一种负载均衡方法和系统
CN106302236A (zh) * 2015-05-27 2017-01-04 国家计算机网络与信息安全管理中心 一种数据分流的方法及接入设备
CN103701783B (zh) * 2013-12-17 2017-01-11 沈阳觉醒软件有限公司 一种预处理单元、由其构成的数据处理系统以及处理方法
CN107196837A (zh) * 2017-06-16 2017-09-22 四川省农业科学院服务中心 一种基于vlan划分运用的多数据业务综合组网的方法
CN108322405A (zh) * 2018-03-21 2018-07-24 山东超越数控电子股份有限公司 一种基于数据的流量均衡方法与装置
CN108809730A (zh) * 2018-06-25 2018-11-13 阿里巴巴集团控股有限公司 一种机房控制切流的方法和装置
CN109639592A (zh) * 2018-12-11 2019-04-16 武汉奥浦信息技术有限公司 一种基于万兆流量的快速数据解析方法及装置
CN110708211A (zh) * 2019-08-30 2020-01-17 上海唯链信息科技有限公司 网络流量测试方法及系统
CN111030998A (zh) * 2019-11-15 2020-04-17 中国人民解放军战略支援部队信息工程大学 一种可配置的协议解析方法及系统
CN111478822A (zh) * 2019-02-21 2020-07-31 上海统维信息技术有限公司 一种集群应用网络流量的高效过滤方法
CN114374622A (zh) * 2021-12-31 2022-04-19 恒安嘉新(北京)科技股份公司 一种基于融合分流设备的分流方法及融合分流设备

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6172546B2 (ja) 2012-12-28 2017-08-02 ▲ホア▼▲ウェイ▼技術有限公司Huawei Technologies Co.,Ltd. トラフィックステアリング方法、デバイス、及びシステム

Cited By (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100426773C (zh) * 2005-11-30 2008-10-15 中兴通讯股份有限公司 一种多mac端口互联时均衡端口流量的方法
CN100459524C (zh) * 2006-04-25 2009-02-04 中国移动通信集团公司 媒体流分流系统及分流方法
WO2007147310A1 (fr) * 2006-06-15 2007-12-27 Huawei Technologies Co., Ltd. Procédé et appareil pour réaliser le partage d'une charge de trafic de réseau
CN101141670B (zh) * 2006-09-05 2011-08-24 中兴通讯股份有限公司 消息分发系统及方法
CN101217455B (zh) * 2007-01-05 2011-07-27 上海复旦光华信息科技股份有限公司 基于有用连接数据完整的安全内容过滤分流器
CN102217248B (zh) * 2008-09-12 2015-12-02 惠普公司 分布式分组流检查和处理
CN102217248A (zh) * 2008-09-12 2011-10-12 惠普公司 分布式分组流检查和处理
CN101789884B (zh) * 2009-01-23 2012-03-28 英业达股份有限公司 网络入侵检测的负载均衡方法
CN101896011A (zh) * 2009-05-18 2010-11-24 大唐移动通信设备有限公司 一种信息过滤设备及方法
CN101896010A (zh) * 2009-05-18 2010-11-24 大唐移动通信设备有限公司 一种信息过滤设备及方法
CN101699802B (zh) * 2009-10-23 2012-02-29 北京锐安科技有限公司 一种海量数据分流方法
US8782787B2 (en) 2009-10-28 2014-07-15 Hewlett-Packard Development Company, L.P. Distributed packet flow inspection and processing
CN101764741B (zh) * 2009-11-27 2012-06-06 上海恒为信息科技有限公司 支持多业务功能的过滤分流装置及其方法
CN102209019A (zh) * 2010-03-30 2011-10-05 杭州华三通信技术有限公司 一种基于报文净荷的负载均衡方法和负载均衡设备
CN102143082A (zh) * 2010-07-07 2011-08-03 南京烽火星空通信发展有限公司 不均匀处理能力下的线速分流装置及方法
CN101909003A (zh) * 2010-07-07 2010-12-08 南京烽火星空通信发展有限公司 线速分流设备及方法
US9197558B2 (en) 2010-10-29 2015-11-24 Telefonaktiebolaget L M Ericsson (Publ) Load balancing in shortest-path-bridging networks
CN103181131A (zh) * 2010-10-29 2013-06-26 瑞典爱立信有限公司 最短路径桥接网络中的负载平衡
CN103181131B (zh) * 2010-10-29 2016-12-21 瑞典爱立信有限公司 最短路径桥接网络中的负载平衡
CN102868628A (zh) * 2011-07-06 2013-01-09 阿里巴巴集团控股有限公司 流量切分方法、装置和系统
CN104012052B (zh) * 2011-11-10 2018-01-30 博科通讯系统有限公司 用于软件定义网络中的流管理的系统和方法
CN104012052A (zh) * 2011-11-10 2014-08-27 博科通讯系统有限公司 用于软件定义网络中的流管理的系统和方法
CN102495764A (zh) * 2011-12-06 2012-06-13 曙光信息产业股份有限公司 数据分流的实现方法和装置
CN102387160A (zh) * 2011-12-13 2012-03-21 曙光信息产业(北京)有限公司 一种基于ip报文五元组过滤策略的系统和方法
CN102387160B (zh) * 2011-12-13 2014-10-22 曙光信息产业(北京)有限公司 一种基于ip报文五元组过滤策略的系统和方法
CN102523163A (zh) * 2011-12-19 2012-06-27 曙光信息产业(北京)有限公司 一种支持多种分流模式的流量管理设备和方法
CN102497385B (zh) * 2011-12-31 2015-09-16 曙光信息产业股份有限公司 一种网络流量审计方法及审计系统
CN102497385A (zh) * 2011-12-31 2012-06-13 曙光信息产业股份有限公司 一种网络流量审计方法及审计系统
CN102780771A (zh) * 2012-07-12 2012-11-14 深圳市同洲电子股份有限公司 一种业务传输方法、装置和设备
CN103780601A (zh) * 2012-10-17 2014-05-07 北京力控华康科技有限公司 一种自动建立以太网通信安全规则的方法
CN102932270A (zh) * 2012-11-27 2013-02-13 无锡城市云计算中心有限公司 支持网络安全业务的负载均衡方法和设备
CN103281246A (zh) * 2013-05-20 2013-09-04 华为技术有限公司 报文处理方法及网络设备
CN103414611B (zh) * 2013-08-21 2016-04-20 宁波成电泰克电子信息技术发展有限公司 一种高速负载网络均衡系统的流量统计方法
CN103414611A (zh) * 2013-08-21 2013-11-27 宁波成电泰克电子信息技术发展有限公司 一种高速负载网络均衡系统的流量统计方法
CN103685221A (zh) * 2013-09-05 2014-03-26 北京科能腾达信息技术股份有限公司 网络入侵检测方法
CN103491069A (zh) * 2013-09-05 2014-01-01 北京科能腾达信息技术股份有限公司 网络数据包的过滤方法
CN103841096A (zh) * 2013-09-05 2014-06-04 北京科能腾达信息技术股份有限公司 自动调整匹配算法的入侵检测方法
CN103685222A (zh) * 2013-09-05 2014-03-26 北京科能腾达信息技术股份有限公司 基于确定性有穷状态自动机的数据匹配检测方法
CN103685224A (zh) * 2013-09-05 2014-03-26 北京安博达通科技有限责任公司 网络入侵检测方法
CN103701783B (zh) * 2013-12-17 2017-01-11 沈阳觉醒软件有限公司 一种预处理单元、由其构成的数据处理系统以及处理方法
CN104539549A (zh) * 2014-12-30 2015-04-22 天津市锦标科技有限公司 一种基于高密度网络流量的数据报文处理方法
CN104539549B (zh) * 2014-12-30 2018-01-02 天津市锦标科技有限公司 一种基于高密度网络流量的数据报文处理方法
CN106302236A (zh) * 2015-05-27 2017-01-04 国家计算机网络与信息安全管理中心 一种数据分流的方法及接入设备
CN105681317A (zh) * 2016-02-03 2016-06-15 国网智能电网研究院 一种新型的业务和数据库审计引擎
CN105704059A (zh) * 2016-03-31 2016-06-22 北京百卓网络技术有限公司 一种负载均衡方法和系统
CN107196837B (zh) * 2017-06-16 2020-06-16 四川省农业科学院服务中心 一种基于vlan划分运用的多数据业务综合组网的方法
CN107196837A (zh) * 2017-06-16 2017-09-22 四川省农业科学院服务中心 一种基于vlan划分运用的多数据业务综合组网的方法
CN108322405A (zh) * 2018-03-21 2018-07-24 山东超越数控电子股份有限公司 一种基于数据的流量均衡方法与装置
CN108809730A (zh) * 2018-06-25 2018-11-13 阿里巴巴集团控股有限公司 一种机房控制切流的方法和装置
CN109639592A (zh) * 2018-12-11 2019-04-16 武汉奥浦信息技术有限公司 一种基于万兆流量的快速数据解析方法及装置
CN111478822A (zh) * 2019-02-21 2020-07-31 上海统维信息技术有限公司 一种集群应用网络流量的高效过滤方法
CN111478822B (zh) * 2019-02-21 2022-11-04 上海多算科技股份有限公司 一种集群应用网络流量的高效过滤方法
CN110708211A (zh) * 2019-08-30 2020-01-17 上海唯链信息科技有限公司 网络流量测试方法及系统
CN111030998A (zh) * 2019-11-15 2020-04-17 中国人民解放军战略支援部队信息工程大学 一种可配置的协议解析方法及系统
CN114374622A (zh) * 2021-12-31 2022-04-19 恒安嘉新(北京)科技股份公司 一种基于融合分流设备的分流方法及融合分流设备
CN114374622B (zh) * 2021-12-31 2023-12-19 恒安嘉新(北京)科技股份公司 一种基于融合分流设备的分流方法及融合分流设备

Also Published As

Publication number Publication date
CN1287570C (zh) 2006-11-29

Similar Documents

Publication Publication Date Title
CN1287570C (zh) 保持连接特性的高速过滤分流方法
US7436830B2 (en) Method and apparatus for wire-speed application layer classification of upstream and downstream data packets
US6874026B2 (en) Method and apparatus for filtering packets using a dedicated processor
US6424650B1 (en) Network address filter device
CN103491069A (zh) 网络数据包的过滤方法
US20030033435A1 (en) System and method for multidimensional data compression
CN103685224A (zh) 网络入侵检测方法
CN103841096A (zh) 自动调整匹配算法的入侵检测方法
CN1759574A (zh) 在异构网络中分类和重定向数据分组的方法和设备
CN101068229A (zh) 一种基于网络过滤器的内容过滤网关实现方法
CN1433190A (zh) 用于交换节点的分类和标记规则
CN1941716A (zh) 应用流量统计方法及装置和应用流量统计系统
CN1416239A (zh) 光纤同轴混合接入网中的虚拟局域网接入方法
JP2001500680A (ja) 分類キーを利用したフレーム分類
WO1999021339A1 (en) A method and apparatus for updating address lists for a packet filter processor
CN103685221A (zh) 网络入侵检测方法
CN1545254A (zh) 一种快速数据包过滤方法
CN106972985A (zh) 加速dpi设备数据处理与转发的方法和dpi设备
CN103685222A (zh) 基于确定性有穷状态自动机的数据匹配检测方法
US7366910B2 (en) System and method for string filtering
CN101764741A (zh) 支持多业务功能的过滤分流装置及其方法
CN1741504A (zh) 基于应用的流量控制方法及进行应用流量控制的网络设备
CN1736076A (zh) 数据包分类的装置及方法
CN103457824A (zh) 报文处理方法及装置
CN1992595A (zh) 在计算机网络中检测不良企图的数据的终端机与相关方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20061129

Termination date: 20130325