基于dpi识别的分通道应用流量控制方法

文档序号:8001096阅读:318来源:国知局
基于dpi识别的分通道应用流量控制方法
【专利摘要】本发明公开了基于DPI识别的分通道应用流量控制方法,其首先利用DPI识别出报文流量的应用类别,再根据不同应用类别报文流量使用对应的带宽控制策略,最后根据当前接口带宽的占用情况,依据不同应用类别报文流量对带宽的要求,实时动态调整相应带宽控制策略。应用于宽带路由器中能够对带宽进行管理,一方面使得浏览网页、网络游戏等重要应用能优先得到带宽保证,另一方面在带宽允许的情况下又能够让网络视频等实时性较强的应用享有较高的优先级。
【专利说明】基于DPI识别的分通道应用流量控制方法

【技术领域】
[0001]本发明涉及计算机网络【技术领域】,具体涉及网络数据流程的控制技术。

【背景技术】
[0002]宽带路由器经常部署在企业、网吧等各种网络接入点处,通过对进出网络的报文进行分析,可以确定报文所属的应用类型,从而可以根据分析结果对带宽进行管理。随着PPS、迅雷等p2p网络应用的流行,使得大量的带宽被p2p流量抢占,因此需要一些方法来保证用户在网页访问、网络游戏等实时性要求很高的应用上能流畅地进行。
[0003]目前常用的方法有:
[0004](I)根据ip、端口号以及DFI技术进行限速。设立一个用户黑白名单,对黑名单内用户一律限速,对白名单内用户一律不限速;对某些游戏的端口号进行优先;根据DFI技术来识别报文类型,判断是否是P2p。
[0005](2)对识别出的p2p流量进行手动限速,包括bt、迅雷、pps等,此后不再改变。
[0006]上述两种方法都存在着缺陷:
[0007]方法(I)是基于用户的管理,不够灵活;另外游戏端口号经常改变,根据端口号来识别已经不准确了 ;而使用DFI技术经常误把ftp等下载流量当成p2p流量。故该方法已较少使用。
[0008]方法(2)是静态地确定p2p百分比,这也是不合理的,在当前网络较为宽松的情况下应该适当提高p2p百分比,而在网络拥塞的情况下应该适当降低p2p百分比;而且该方法没有区分p2p网络电视和p2p下载工具如迅雷等,这也是不合理的,因为网络电视的实时性肯定较迅雷等高,不能把它和迅雷等同对待,应该享有较高的优先级;另外一些未识别出来的流量有可能是p2p,对这些流量也要采取一定的限速措施。


【发明内容】

[0009]本发明针对上述现有网络流程控制技术所存在的问题,而提供一种分通道应用流量控制方法。该控制方法基于DPI识别技术,应用于宽带路由器中能够对带宽进行管理,一方面使得浏览网页、网络游戏等重要应用能优先得到带宽保证,另一方面在带宽允许的情况下又能够让网络视频等实时性较强的应用享有较高的优先级。
[0010]为了达到上述目的,本发明采用如下的技术方案:
[0011]基于DPI识别的分通道应用流量控制方法,所述控制方法首先利用DPI识别出报文流量的应用类别,再根据不同应用类别报文流量使用对应的带宽控制策略,最后根据当前接口带宽的占用情况,依据不同应用类别报文流量对带宽的要求,实时动态调整相应带宽控制策略。
[0012]在本发明的优选实例中,在识别报文流量类别时,首先维护一个应用层的特征库,利用DPI识别出报文的流量特征,通过将报文的流量特征与特征库进行比较,准确识别出报文所属的应用,继而得到报文流量的应用类别。
[0013]进一步的,所述报文流量类别包括以下几类:
[0014]A类:实时响应要求最高且占用带宽不大的流量;
[0015]B类:实时响应要求较高,需要给予一定保障,但该类流量占用带宽较大,必须根据当前的带宽使用情况给予一定的带宽限制;
[0016]C类:实时性要求不高,但是占用带宽很大;
[0017]D类:未知流量。
[0018]再进一步的,所述报文流量的控制策略如下:
[0019]对于A类报文流量,享有最高的优先权,只要带宽占用不超过接口当前的总带宽,就不应当丢掉;
[0020]对于B、C类报文流量,统一分配总的带宽,但是允许B类流量抢占C类流量的带宽;并根据当前接口带宽的占用情况实时调整这两类流量占用的总带宽;
[0021]D类流量,采用单机限速的策略,为接口带宽与主机个数的比值再乘以若干倍数。
[0022]进一步的,所述动态调整相应带宽控制策略,即对不同类别的报文根据需求以及当前网络状况使用不同的控制策略:在带宽使用率正常的情况下比如低于40%,那么适当提高B类、C类可允许的使用比例;带宽使用率高于40%时,恢复其正常比例;在带宽紧张、使用率较高比如高于70%系统有可能出现拥塞时,适当降低B/C类流量的比例;在带宽紧张、使用率较高比如高于90%时,大幅降低B、C类流量的可允许比例;从而实现动态调整动态带宽控制策略。
[0023]利用本发明提供的方法,可以更加合理地分配带宽,让网页访问、网络游戏等重要应用享有最高优先级,同时根据网络拥塞情况决定p2p的占用比,让网络电视等实时性较强的应用优先抢占P2p部分的带宽资源,另外也对未知流量做了较为合理的单机限速。

【专利附图】

【附图说明】
[0024]以下结合附图和【具体实施方式】来进一步说明本发明。
[0025]图1为本发明中统计近期接口带宽占用情况的任务流程图;
[0026]图2为本发明中定期为不同的通道分配令牌桶的任务流程图;
[0027]图3为本发明中报文检查任务的流程图。

【具体实施方式】
[0028]为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体图示,进一步阐述本发明。
[0029]本发明提供的基于DPI的分通道应用流量控制方法,其先使用DPI技术准确地识别出报文流量应用类别,然后对不同类别的报文根据需求以及当前网络状况使用不同的控制策略,从而使带宽得到合理分配。
[0030]对于报文流量应用类别的识别,本发明使用DPI进行流量特征的识别,从而识别出报文流量应用类别,具体方案如下:
[0031]该方案维护一个应用层的特征库,通过把报文的内容与特征库所描述的所有流量特征进行比较,可以准确识别出报文所属的应用,继而确定应用类别。另外为了提高报文识别准确度,可以辅助一些其他方法如P2p主动探测、常用应用服务器ip、端口号以及DFI技术等。通过以上方法还不能识别出的归为未知流量。
[0032]在本发明的方案中根据实际情况将报文流量的应用类别分为以下几类:
[0033]A类,实时响应要求最高且占用带宽不大的流量,这类流量与大部分用户最重要的上网体验直接相关,在任何时候都不应该遭受除单机限制以外的拥塞。这类流量有网页访问,网络游戏等。
[0034]B类,实时响应要求较高,需要给予一定保障,但是该类流量占用带宽较大,必须根据当前的带宽使用情况给予一定的带宽限制。这类流量有在线视频,在线音乐,网络电视坐寸ο
[0035]C类,这类流量一般是实时性要求不高,但是占用带宽很大,如bt、迅雷等p2p工具下载流量。对于这类流量需要给予较大的带宽限制,以免影响到A类和B类流量。
[0036]D类,这类流量一般是未知流量。因为无法确定流量的类别,所以不能对其盲目限速,但又不能任其占用带宽,因此采用的办法是对其单机限速。
[0037]针对上述不同类别的流量,使用不同的控制策略,具体如下:
[0038]针对A类流量,这类流量享有最高的优先权,只要带宽占用不超过接口当前的总带宽,就不应当丢掉。
[0039]针对B、C类流量,这两类流量有相似之处,又有不同之处。因此可以为它们统一分配总的带宽,但是由于B类流量的实时性要求较高,因此应当允许B类流量抢占C类流量的带宽。另外由于这两类流量都对带宽的占用比较大,因此应该根据当前接口带宽的占用情况适当地调整这两类流量占用的总带宽,当接口带宽较为宽松的时候可以适当提高比例。
[0040]针对D类流量,由于是未知流量,有可能是重要流量,也有可能是p2p下载等,因此应该对其采用单机限速的策略,一般为接口带宽与主机个数的比值再乘以若干倍数。
[0041]对于上述的分通道应用流量控制,本发明通过如下一具体实例进一步说明。
[0042]该实例,在宽带路由器中应用本发明的方案。整个方案实施包括三个部分:partA:定时器任务1,负责统计近期接口的拥塞情况;partB:定时器任务2,负责为不同通道分配流量桶;partC:报文检查任务。
[0043]其中,Part A:
[0044]定时器任务1,超时时间为2s,主要任务是统计近期接口带宽占用情况。该任务具体工作如下(参加图1):用Iimitlevel表示接口带宽拥塞的次数,每隔2s做一次统计,如果当前接口拥塞就加I,如果接口宽松就减I。Iimitlevel值越大表示最近带宽资源越紧张,如果Iimitlevel的值为O,说明最近带宽占用很少。
[0045]partB:
[0046]定时器任务2,超时时间为200ms,主要是定期为不同的通道分配令牌桶,以字节的形式分配,例如为通道I总共分配2000字节,就代表该通道内只能通过2000字节的流量,如果报文长度超过剩余的流量就丢弃。该任务具体工作如下(参加图2):
[0047]1.将接口上传和下载带宽与流量分配时间间隔(默认200ms)相乘,计算出一次分配的上传和下载的总的字节数up和down。
[0048]2.根据手动配置的智能流控百分比smart_percent (默认70%,高于该比例,可认为接口带宽紧张,有可能拥塞,需降低B、C类流量比例)和当前接口拥塞情况,动态地计算出当前B类和C类流量带宽占用的总的百分比consum_percent:
[0049]如果Iimitlevel的值为O,说明最近带宽占用很少,则consum_percent=smart_percent ;
[0050]如果同时当前接口比较宽松,还可以适当乘以一个比例如乘以1.1倍;
[0051]如果Iimitlevel的值大于O,则依据Iimitlevel的大小适当地给consum_percent打个折扣,比如乘以0.8的系数。
[0052]3.将 consum_percent 中的大部分比例比如其中 60% (即 consum_percent*0.6)预留给B类流量,剩下的留给C类流量,这样得到C类流量的百分比p2p_perCent。同时C类流量只能占用p2p_percent部分的带宽,而B类流量可以占用(consum_percent_p2p_percent)的带宽,而(consum_percent_p2p_percent)要大于 p2p_percent,即 B 类流量允许比例比C类流量的比例要大,由此使得B类流量具有较高的优先级。
[0053]4.将up和down (将接口上传和下载带宽与流量分配时间间隔(默认200ms)相乘,可计算出一次分配的上传和下载的总的字节数up和down)分配给A类流量,即A通道,累加到bytes_up, bytes_down中,这里bytes_up, bytes_down分别为A通道的可允许通过的上传、下载的流量额度;将up和down乘以consum_percent得到的该次分配的B、C流量的上传和下载总字节数分配给B通道,累加到videobytes_up, videobytes_down中,这里videobytes_up, videobytes_down分别为B通道的可允许通过的上传、下载的流量额度。将up和down乘以p2p_percent得到该次分配的C流量的上传和下载字节数,累加到p2pbytpes_up, p2pbytes_down 中,这里 p2pbytpes_up, p2pbytes_down 分别为 C 通道的可允许通过的上传、下载的流量额度。
[0054]partC:
[0055]报文检查任务,该任务具体工作如下(参考图3):
[0056]1.当一个报文进入路由器时,首先通过DPI技术识别出该报文所属的应用类别。
[0057]2.如果是A类流量,则根据上传还是下载更新bytes_up或bytes_down。如果是B类流量,则更新videobytes_up或videobytes_down。如果是C类流量,则更新p2pbytpes_up 或 p2pbytes_down。
[0058]更新的时候,使用当前通道已分配到的总字节数减去当前报文的字节数,如果不够减就将该报文丢掉。这样就限制了 P2p和网络视频类流量的带宽占用比例,同时又让网络视频可以抢占p2p的流量。
[0059]另外如果该报文是D类流量,即未知流量,则走单机限速的通道,当超过单机限制带宽时,就将该报文丢掉。
[0060]由上述实例可知,利用上述应用本发明方案的宽带路由器可以在网吧等场所对带宽进行管理:一方面使得浏览网页、网络游戏等重要应用能优先得到带宽保证,另一方面在带宽允许的情况下又必须让网络视频等实时性较强的应用享有较高的优先级。
[0061]以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
【权利要求】
1.基于DPI识别的分通道应用流量控制方法,其特征在于,所述控制方法首先利用DPI识别出报文流量的应用类别,再根据不同应用类别报文流量使用对应的带宽控制策略,最后根据当前接口带宽的占用情况,依据不同应用类别报文流量对带宽的要求,实时动态调整相应带宽控制策略。
2.根据权利要求1所述的基于DPI识别的分通道应用流量控制方法,其特征在于,在识别报文流量类别时,首先维护一个应用层的特征库,利用DPI识别出报文的流量特征,通过将报文的流量特征与特征库进行比较,准确识别出报文所属的应用,继而得到报文流量的应用类别。
3.根据权利要求1或2所述的基于DPI识别的分通道应用流量控制方法,其特征在于,所述报文流量类别包括以下几类: A类:实时响应要求最高且占用带宽不大的流量; B类:实时响应要求较高,需要给予一定保障,但该类流量占用带宽较大,必须根据当前的带宽使用情况给予一定的带宽限制; C类:实时性要求不高,但是占用带宽很大; D类:未知流量。
4.根据权利要求3所述的基于DPI识别的分通道应用流量控制方法,其特征在于,所述报文流量的控制策略如下: 对于A类报文流量,享有最高的优先权,只要带宽占用不超过接口当前的总带宽,就不应当丢掉; 对于B、C类报文流量,统一分配总的带宽,但是允许B类流量抢占C类流量的带宽;并根据当前接口带宽的占用情况实时调整这两类流量占用的总带宽; D类流量,采用单机限速的策略,为接口带宽与主机个数的比值再乘以若干倍数。
5.根据权利要求1所述的基于DPI识别的分通道应用流量控制方法,其特征在于,所述动态调整相应带宽控制策略,即对不同类别的报文根据需求以及当前网络状况使用不同的控制策略:在带宽使用率正常的情况下低于40%,那么适当提高B类、C类可允许的使用比例;带宽使用率高于40%时,恢复其正常比例;在带宽紧张、使用率较高比如高于70%系统有可能出现拥塞时,适当降低B/C类流量的比例;在带宽紧张、使用率较高比如高于90%时,大幅降低B、C类流量的可允许比例;从而实现动态调整动态带宽控制策略。
【文档编号】H04L12/801GK104243332SQ201310247193
【公开日】2014年12月24日 申请日期:2013年6月20日 优先权日:2013年6月20日
【发明者】汪革, 彭双庭, 龚超, 竺文辉 申请人:上海博达数据通信有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1