CN101350765B - 一种网络流量控制方法 - Google Patents
一种网络流量控制方法 Download PDFInfo
- Publication number
- CN101350765B CN101350765B CN2007101193410A CN200710119341A CN101350765B CN 101350765 B CN101350765 B CN 101350765B CN 2007101193410 A CN2007101193410 A CN 2007101193410A CN 200710119341 A CN200710119341 A CN 200710119341A CN 101350765 B CN101350765 B CN 101350765B
- Authority
- CN
- China
- Prior art keywords
- agreement
- packet
- blocking
- flow control
- flow
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种网络流量检测方法,包括如下步骤:a)流量控制系统根据该数据包所属协议的历史信息与该数据包本身携带的信息计算出协议平均速率;b)根据步骤a)计算出的协议平均速率来判断是否需要对该协议的数据包进行控制;c)对符合控制条件的数据包采取控制措施。本发明与现有技术相比,其优点包括:采用基于历史时间窗口的速率估计算法,能对当前协议流量的速率进行准确的计算;配置灵活方便,可以任选组合多个协议同时控制;提高了系统效率,只对需要控制的协议采取措施,其他协议放行;采用旁路方式接入,方便且不会形成网络瓶颈;体系结构简单,易于实现;可以实现精确的流量控制。
Description
技术领域
本发明属于网络技术领域,具体地说,本发明涉及一种流量控制方法。
背景技术
随着因特网业务的高速发展,网络流量急剧增加,网络应用不断涌现,其应用形式也由传统业务如FTP、Web向P2P、Web2.0等形式转移。同时这种趋势也导致了一些问题,例如最近几年出现的P2P应用极大的消耗了有限的网络资源。
P2P是一种分布式网络,打破了传统的Client/Server(C/S)模式,在网络中的每个结点的地位都是对等的。每个结点既充当服务器,为其他结点提供服务,同时也享用其他结点提供的服务。但是P2P应用占用了大量带宽,统计分析表明,P2P应用约占宽带流量的50%~60%(白天)到90%(晚上),一些重要应用(如Web、E-Mail)的服务质量受到严重影响,也给运营商的网络管理带来很大麻烦并增加了其运营成本(OPEX)。如果不能对网络的应用层流量进行有效的控制,将严重影响因特网的健康发展。因此,对某些网络应用流量的有效管理和控制已经成为网络管理中亟待解决的问题。
流量检测技术是网络控制技术的基础,目前计算数据包的平均速率的方法较为简单(即某段时间内收到的字节/某段时间),没有参考协议的历史信息。由于流量计算只考虑到当前达到数据包中提供的信息,不能很好地反映出一段时间内的平均流量。因此,现有的TCP流量检测还存在较大的改进空间。
目前网络应用层流量控制技术主要分为串联接入和旁路接入两种方式。串联接入目前主要是根据一些数据包丢弃算法或TCP速率控制、流量整形等技术,通过在网络中串联接入流量控制设备来实现。串联接入可以有效、灵敏的对网络流量进行控制,但是流量控制设备一旦崩溃或者出现故障,其可能会成为网络瓶颈,妨碍整个网络数据流的传输。旁路接入控 制技术是通过监听网络流量发送阻断报文,这种接入方式下,控制系统的性能状态不会对网络正常通讯产生影响。
目前的旁路接入控制技术还没有较成熟的技术,除流量检测上存在不足外,现有方法中只要流量超过了预设阈值,就直接阻断,这样极有可能导致一下子阻断了大部分的连接,连续这样下去,势必造成流量上下大幅度的波动,对于有效的带宽也是种浪费。再者,现有的流量控制策略的配置也还不够灵活和全面。因此,现有的TCP流量控制还存在较大的改进空间。
发明内容
因此,本发明的任务是克服现有技术的不足,提出了一种能够准确反映出一段时间内的平均流量的网络流量检测方法,同时还提出了利用该方法的基于旁路接入的网络流量控制方法,该控制方法根据协议流量控制需求进行动态配置的策略,实现灵活、准确的网络应用层协议流量控制。
本发明提出的一种网络流量检测方法,包括:
a)捕获网络中流经的数据包,并对该数据包进行协议分析,然后根据该数据包所属协议的历史信息与该数据包本身携带的信息计算出协议平均速率。
上述技术方案中,所述步骤a)中,所述协议平均速率的计算方法如下:
a1)对各协议,分别设定具有一定时长的历史时间窗口;
a2)计算当前数据包所属协议当前到达的字节数同历史时间窗口内的字节数之和B;
a3)计算当前到达包和上一到达包的时间间隔,再加上历史时间窗口的时长,得到一时间值T;
a4)计算得到协议平均速率V=B/T。
上述技术方案中,基于所述流量检测方法的控制方法,还包括如下步骤:
b)根据步骤a)计算出的协议平均速率来判断是否需要对该协议的数据包进行控制;
c)对符合控制条件的数据包采取控制措施。
上述技术方案中,所述步骤b)中的判断是否需要对该协议的数据包进行控制的方法如下:
b1)对各协议,分别设定速率阈值,在阈值之上,同时设定一个协议速率允许出现的峰值以及全局阻断概率P;
b2)当所述步骤a)中计算出的平均协议速率超出所述峰值时,则对该数据包所属的连接直接加以阻断标记;
b3)当所述步骤a)计算出的平均协议速率在所述阈值和峰值之间时,根据全局阻断概率P给连接加以阻断标记。
上述技术方案中,所述步骤b3)中,所述全局阻断概率P动态配置,如果当前的连接在步骤b3)中被加了阻断标记,则阻断概率P降低;如果当前连接没有在步骤b3)中被加阻断标记,阻断概率P增加。
上述技术方案中,所述流量控制系统采用串联接入方式。
上述技术方案中,所述流量控制系统采用旁路接入方式。
上述技术方案中,所述流量控制系统连接在内网和外网的接口处。
上述技术方案中,所述步骤c)中,对数据包采取的控制措施是:对被加阻断标记的连接,根据捕获包的流向,构造同向或反向阻断包,再将阻断包发送出去将连接阻断。
本发明能够达到的技术效果包括:
第一,采用基于历史时间窗口的速率估计算法,能对当前协议流量的速率进行准确的计算;
第二,采用一种结合全局概率的连接阻断方法能有效的避免流量的突变,使流量更加均衡,带宽得到了更有效的利用;
第三,根据数据包的上下行流量方向来分别构造TCP阻断包,能有效的阻断TCP连接,控制应用层协议流量;
本发明的有益结果在于:
第一,配置灵活方便,可以任选组合多个协议同时控制;允许网络管理员根据网络管理的需要,对应用协议进行动态带宽分配,调整某种协议的预设阈值。
第二,提高了系统效率,只对需要控制的协议采取措施,其他协议放行;
第三,旁路方式接入方便,且不会形成网络瓶颈;
第四,体系结构简单,易于实现,所需的网络基建代价与运营成本较小。
第五,可以实现精确的流量控制,满足多层次的控制要求。可以对使某些应用层业务流(PPLive、BT等)的实际流量保持在预设阈值附近,实现精确流量控制。
附图说明
以下,结合附图来详细说明本发明的实施例,其中:
图1是本发明优选实施例的网络接入拓扑图
图2是本发明优选实施例的流量控制流程架构示意图
图3是本发明优选实施例的流量控制的详细流程图
图4是本发明优选实施例中的阻断包构造流程图
图5是同向阻断包构造图示意图
图6是反向阻断包构造图示意图
具体实施方式
实施例1
在进行流量控制前,用户首先确定需要进行流量控制的协议,其控制策略可以区分不同的协议/应用,并可设置各协议流量的预设阈值,用户还可以在不同的时间段设置不同的预设阈值,以便更有效的利用带宽。协议分析是本发明的前提,但不属于本发明的范畴。在协议已识别后,运用本发明可以有效、精确的对多连接特征的协议流量进行控制。
本实施例的流量控制方法采用旁路接入模式,其网络拓扑如图1所示,在旁路接入模型中,使用本实施例的网络监控设备(即图1中的流量控制系统)处于内/外网络中间,但是却独立于两者。内/外网络通讯的所有数据都被网络监视器接收到,然后就可以进行分析、判断、统计等必要的操作。该模型最大的优点是不会对网络正常通讯产生任何影响,所有的数据传输就如同没有该监视系统一样正常进行,所以它的网络性能优于串联接入。而在串联接入的情况下,网络所有的流量都会通过阻断服务器传输。尽管串联接入的可靠性较高,但是阻断服务器可能会成为故障点或网络瓶颈,将会妨碍整个网络数据流的传输。本实施例采用的旁路式接入就不会 出现此问题。
本实施的流量控制方法,包括如下步骤(如附图2所示):
a)根据接收到的数据包(即分组)信息,并与历史信息相结合来估计到达数据包的平均速率。(该步骤即为网络流量检测方法)
本步骤中,流量控制系统首先接收数据包并对其进行协议分析,根据所属协议的不同,对各数据包进行分类,记录下对应每一协议的流量历史信息。对于当前接收到的数据包,按照以下方法计算其所属协议的平均速率:计算当前数据包所属协议当前到达的字节数同历史时间窗口内的字节数之和,记为B;计算当前到达的包和上一个到达包的时间间隔(同一应用层协议的两个数据包之间的时间差),再加上历史时间窗口得到一时间值,记为T。然后得到协议平均速率V=B/T。其中,历史时间窗口需根据网络实际流量调整至一合适值。
b)根据步骤a)计算出的协议平均速率来判断是否需要对协议速度进行控制;
c)对符合控制条件的数据包采取控制措施。
d)收到新的数据包,重复步骤a)-c)直至系统运行结束。
进一步地,本实施例的详细流程如附图3所示:
1)首先判断该数据包(即分组)是否能够被识别,如判断为是,则进入步骤2)。
2)判断该数据包所属协议是否需要限速,如判断为是,则进入步骤3)。
3)判断该数据包所属协议的连接是否已被打上阻断标记,如判断为是,则直接进入步骤7),如判断为否,则进入步骤4)。
4)利用系统中的速率估计器计算当前数据包所属协议的平均速率,其计算方法在上文中已经给出,这里不再赘述。
5)根据协议平均速率判断是否满足标记条件,如判断为是,则进入步骤6)。本步骤的详细过程在下文中描述。
6)把当前数据包所属协议的连接打上阻断标记。
7)构造阻断数据包并发送出去。
在所述步骤5)中,判断是否需要对连接打标记,采用以下方法:
根据该数据包所属协议的速率,判断速率是否超过要限制的速率上限(即协议的预设阈值,可动态设置)。
在协议的预设阈值之上,同时设定一个协议速率允许出现的峰值。当数据包经过速率估计器后得到的协议平均速率超出峰值,则对该数据包所属的连接直接加以阻断标记;当速率在预设阈值和峰值之间时,根据全局阻断概率给连接加以阻断标记;否则放行该连接。具体步骤如下:
51)根据协议的预设阈值,计算协议速率允许出现的峰值,计算方法为:峰值=预设阈值+预设阈值*a,其中a的取值范围为(0,n],n可根据不同的需求自行设定,但建议不超过1。
设定一个全局概率值P,(如初始化P=1.0);
52)如果协议平均速率超过协议峰值,则将当前的TCP连接加阻断标记,如果没有超过峰值,却超过了协议预设阈值,那么根据全局概率P的值的大小(具体实现上,可与系统随机产生的一个0.0至1.0间数Random作比较,如P>Random),对当前TCP连接加阻断标记;
53)如果当前的TCP连接已被加了阻断标记,以后的阻断概率P会以指数等形式快速降低(如P=P/2),从而降低大量连接被同时阻断的概率,而当平均速率在预设阈值与峰值之间,但当前TCP连接没有被阻断标记时,阻断概率P缓慢增长(如P=P*1.2),增加以后的连接被阻断的概率。
对于不同的阻断需求,上述算法步骤可进行重新组合。
图3中的构造阻断数据包流程,即所述步骤7)的具体实现方法如下:
将所捕获的数据包进行解析、计算,得到数据包的原始信息:数据报长度、序列号、确认号和应用层标签等;解析该数据包,检查数据包的有效性,识别其网络层、传输层和应用层协议,并标识各层数据在原始数据包中的偏移和长度、数据包的源地址(MAC和IP)和目的地址(MAC和IP)及对应的TCP连接信息;
如果该数据包所在的TCP连接已被加阻断标记,则根据该数据包的流向(上下行)及上述信息构造同向或反向的TCP阻断数据包(如构造TCPRST报文或TCP FIN报文)来中断应用连接,从而成功的控制应用层协议流量。其中构造TCP RST报文或FIN报文的方法如下:
①确定源和目的端口号;
②计算序列号和确认码;
③确定控制标记(TH_RST标记:RST报文,TH_FIN标记:FIN报文);
④确定窗口大小和校验码;
⑤紧急指针的设定,TCP报文的大小设定,负载及其大小的设定等。
然后将构造的TCP报文进行网络层头部封装(长度,服务质量,标识,偏移,生存时间,上层协议类型,校验和,源IP地址,目的IP地址,负载,负载大小),进行以太网层头部封装(以太网目的地址,以太网源地址,上层协议类型,负载,负载大小),最后发送至网络上,基本流程如附图4所示。本实施例在发送阻断包时,采用向内网机器发包的策略,这就需要根据捕获包的流向,构造同向或反向阻断包。
其中,同向阻断包的构造是:
当监听到的数据包的流向如附图5时,则构造一个同向阻断包。构造方法如下:以太网源地址,目的地址,源IP,目的IP,源端口,目的端口==原始包;序列号=原始包序列号+原始包的TCP负载长度;Ack=原始包ack;
反向阻断包的构造是:
当监听到的数据包源IP为内网地址时,即流向如附图6时,则构造一个反向阻断包。阻断包构造方法如下:以太网源地址,目的地址,源IP,目的IP,源端口,目的端口==和原始包相反;序列号=原始包的ack;Ack=原始包的序列号+1。
随着因特网业务的高速发展,网络流量急剧增加,网络应用不断涌现,比如最近几年出现的大量的P2P应用。同时这种趋势也导致了一些问题,例如P2P应用极大的消耗了有限的网络资源。因此,对某些网络应用流量的有效管理和控制已经成为网络管理中亟待解决的问题。本发明提出的一种基于旁路阻断的流量控制技术,可以较好的实现灵活、精确的网络应用层协议流量控制,对运营商的QOS控制,对网络管理人员均有着重要的意义。
另外,本实施例中协议平均速率计算方法、协议阻断标记思想及构造TCP RST报文技术也可方便地应用于串联式流量控制设备。本发明之所以用旁路接入为例,是因为旁路接入对网络环境本身的安全性与稳定性影响是最小的,串联接入设备对网络本身造成了压力,带来了诸多的不稳定性和安全隐患。但本不是说本发明技术不可应用于串联接入方式的流量控制设备。
本实施例中的流量检测方法虽然用于网络流量控制中,但本领域技术人员容易理解,本实施例中的流量检测方法并不限于网络流量控制领域。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (7)
1.一种网络流量控制方法,包括:
a)捕获网络中流经的数据包,并对该数据包进行协议分析,然后根据该数据包所属协议的历史信息与该数据包本身携带的信息计算出协议平均速率,所述协议平均速率的计算方法包括步骤a1)至a4):
a 1)对各协议,分别设定具有一定时长的历史时间窗口;
a 2)计算当前数据包所属协议当前到达的字节数同历史时间窗口内的字节数之和B;
a 3)计算当前到达包和上一到达包的时间间隔,再加上历史时间窗口的时长,得到一时间值T;
a 4)计算得到协议平均速率V=B/T;
b)根据步骤a)计算出的协议平均速率来判断是否需要对该协议的数据包进行控制;
c)对符合控制条件的数据包采取控制措施。
2.根据权利要求1所述的流量控制方法,其特征在于,所述步骤b)包括如下子步骤:
b 1)对各协议,分别设定速率阈值,在阈值之上,同时设定一个协议速率允许出现的峰值以及全局阻断概率P;
b 2)当所述步骤a)中计算出的平均协议速率超出所述峰值时,则对该数据包所属的连接直接加以阻断标记;
b 3)当所述步骤a)计算出的平均协议速率在所述阈值和峰值之间时,根据全局阻断概率P给连接加以阻断标记。
3.根据权利要求2所述的流量控制方法,其特征在于,所述步骤b3)中,所述全局阻断概率P动态配置,如果当前的连接在步骤b3)中被加了阻断标记,则阻断概率P降低;如果当前连接没有在步骤b3)中被加阻断标记,阻断概率P增加。
4.根据权利要求3所述的流量控制方法,其特征在于,所述流量控制系统采用串联接入方式。
5.根据权利要求3所述的流量控制方法,其特征在于,所述流量控制系统采用旁路接入方式。
6.根据权利要求5所述的流量控制方法,其特征在于,所述流量控制系统连接在内网和外网的接口处。
7.根据权利要求6所述的流量控制方法,其特征在于,所述步骤c)中,对数据包采取的控制措施是:对被加阻断标记的连接,根据捕获包的流向,构造同向或反向阻断包,再将阻断包发送出去将连接阻断。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101193410A CN101350765B (zh) | 2007-07-20 | 2007-07-20 | 一种网络流量控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101193410A CN101350765B (zh) | 2007-07-20 | 2007-07-20 | 一种网络流量控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101350765A CN101350765A (zh) | 2009-01-21 |
CN101350765B true CN101350765B (zh) | 2012-07-04 |
Family
ID=40269355
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101193410A Expired - Fee Related CN101350765B (zh) | 2007-07-20 | 2007-07-20 | 一种网络流量控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101350765B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101350764B (zh) * | 2007-07-20 | 2011-03-16 | 中国科学院声学研究所 | 一种网络流量控制方法 |
CN101645892B (zh) * | 2009-08-26 | 2012-09-05 | 成都市华为赛门铁克科技有限公司 | 流量检测方法和设备 |
CN102164077B (zh) * | 2011-03-22 | 2014-04-02 | 深圳市吉祥腾达科技有限公司 | 一种带宽控制方法、装置及路由器 |
CN102724222A (zh) * | 2011-03-29 | 2012-10-10 | 北京东方通科技股份有限公司 | 基于esb的流量控制方法 |
CN103312740B (zh) * | 2012-03-09 | 2018-04-17 | 腾讯科技(深圳)有限公司 | 一种p2p网络策略的生成方法和装置 |
CN103023819B (zh) * | 2012-12-14 | 2015-09-30 | 西安电子科技大学 | 一种粗粒度动态带宽分配方法 |
CN104980408A (zh) * | 2014-04-11 | 2015-10-14 | 中国移动通信集团陕西有限公司 | 恶意网站的封堵方法、装置以及系统 |
CN111541791A (zh) * | 2020-03-16 | 2020-08-14 | 武汉猎鹰网安科技有限公司 | 网络安全中平台的流量压力测试系统 |
CN111427336B (zh) * | 2020-05-08 | 2021-02-09 | 杭州安恒信息技术股份有限公司 | 一种工业控制系统的漏洞扫描方法、装置及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1549508A (zh) * | 2003-05-09 | 2004-11-24 | ��Ϊ��������˾ | 一种系统流量控制方法 |
CN1567828A (zh) * | 2003-06-18 | 2005-01-19 | 中兴通讯股份有限公司 | 一种网络处理器对数据流量进行限速的方法 |
CN1722674A (zh) * | 2004-07-15 | 2006-01-18 | 联想网御科技(北京)有限公司 | 一种防火墙及其访问限制方法 |
CN1863154A (zh) * | 2005-10-18 | 2006-11-15 | 华为技术有限公司 | 对点对点应用进行限流的方法 |
-
2007
- 2007-07-20 CN CN2007101193410A patent/CN101350765B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1549508A (zh) * | 2003-05-09 | 2004-11-24 | ��Ϊ��������˾ | 一种系统流量控制方法 |
CN1567828A (zh) * | 2003-06-18 | 2005-01-19 | 中兴通讯股份有限公司 | 一种网络处理器对数据流量进行限速的方法 |
CN1722674A (zh) * | 2004-07-15 | 2006-01-18 | 联想网御科技(北京)有限公司 | 一种防火墙及其访问限制方法 |
CN1863154A (zh) * | 2005-10-18 | 2006-11-15 | 华为技术有限公司 | 对点对点应用进行限流的方法 |
Non-Patent Citations (1)
Title |
---|
JP特开平7-283821A 1995.10.27 |
Also Published As
Publication number | Publication date |
---|---|
CN101350765A (zh) | 2009-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101350765B (zh) | 一种网络流量控制方法 | |
CN101350764B (zh) | 一种网络流量控制方法 | |
US20220217090A1 (en) | System and method for facilitating data-driven intelligent network with endpoint congestion detection and control | |
JP7375068B2 (ja) | データパケット検出方法、デバイス、及びシステム | |
US10819654B2 (en) | Method and apparatus for software programmable intelligent network | |
US20180375744A1 (en) | Method and system of providing quality of experience visibility in an sd-wan | |
US8115617B2 (en) | Alarm reordering to handle alarm storms in large networks | |
CN102098301B (zh) | 多链路自适应的数据传输方法与系统 | |
CN100382517C (zh) | 网络服务质量测试方法及系统 | |
US7107344B2 (en) | Connection allocation technology | |
WO2021109610A1 (zh) | 传输质量检测方法及装置、系统、存储介质 | |
CN103326884A (zh) | Sdn网络中结合流检测和包检测的业务流感知系统及方法 | |
EP2107735A1 (en) | Admission control in a packet network | |
Feroz et al. | A TCP-friendly traffic marker for IP differentiated services | |
CN107342947A (zh) | 流量整形方法、控制器、网络设备和流量整形系统 | |
JP4726978B2 (ja) | 輻輳制御装置及び輻輳制御方法 | |
El-Gendy et al. | Equation-based packet marking for assured forwarding services | |
WO2008011778A1 (fr) | Procédé et système de garantie de qualité de bout en bout | |
WO2017132987A1 (zh) | 识别可靠传输协议的数据传输中的丢包类型的方法及系统 | |
Theoleyre et al. | Operations, Administration and Maintenance (OAM) features for RAW | |
EP2192731B1 (en) | A method for performing data traffic control for a tree network | |
JP2008166881A (ja) | リンクアグリゲーション回路及びそれに用いるリンクアグリゲーション振り分け論理最適化法 | |
Marbach et al. | Active queue management and scheduling for wireless networks: The single-cell case | |
CN102082735B (zh) | N次弃头的被动队列管理的方法 | |
JP4305383B2 (ja) | エンドツーエンド品質推定装置及び方法 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120704 Termination date: 20150720 |
|
EXPY | Termination of patent right or utility model |