CN102025623B - 智能化网络流控方法 - Google Patents
智能化网络流控方法 Download PDFInfo
- Publication number
- CN102025623B CN102025623B CN2010105767295A CN201010576729A CN102025623B CN 102025623 B CN102025623 B CN 102025623B CN 2010105767295 A CN2010105767295 A CN 2010105767295A CN 201010576729 A CN201010576729 A CN 201010576729A CN 102025623 B CN102025623 B CN 102025623B
- Authority
- CN
- China
- Prior art keywords
- bandwidth
- packet
- network
- data packets
- control
- 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.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种智能化网络流控方法,通过AOS设备的DPI深层包检测引擎以及防火墙(Firewall)引擎,对每个进入和流出的数据包进行识别和标识,以确定其所属的内网用户以及应用类型等,这些应用类型可以为P2P、HTTP、迅雷、BT等,然后将这些数据包归类,分别放入不同应用类型下各用户专属的缓存区中暂时缓存,最后按照一定的带宽控制策略将这些数据包逐步发送出去。本发明是一种有别于传统流控方式、全新的、立体的、交叉的流控方法,为客户提供带宽管理、分析和优化的一体化解决方案,能够有效的检测和防止不正常应用对网络带宽资源的非正常消耗,保证关键应用带宽,限制非业务应用带宽,改善和保障了整体网络应用的服务质量。
Description
技术领域
本发明涉及一种对网络数据流量进行智能化控制的新方法,尤其涉及一种对有限的带宽资源进行多层次、立体交叉控制和分配的方法。
背景技术
随着互联网的高速发展,IP网络承载的数据流量越来越大,尤其是近年来迅速崛起的各种P2P的下载软件和在线视频,给网络系统的正常运行带来了一系列的问题,其中最突出的是由网络流量过大引发的网络拥塞。与此同时,互联网提供的服务日益多样化和复杂化,对网络流量进行智能化的控制显得日益重要。如果流量超过网络的负载能力,将会导致网络性能严重下降。网络流量的调度问题,也会直接影响网络性能,网络局部的突发流量很容易导致网络整体性能的下降,而网络中不同业务流对资源的占用不同,也会导致少数应用流耗用大部分网络带宽的情况,严重影响网络资源的利用率。因此,合理的流量控制策略显得尤为重要,我们要解决的问题不仅仅是发生拥塞如何去及时响应,更重要的是要制定合理的控制策略,避免拥塞的发生,并最大限度的利用资源。有效的管理和控制特定的业务流将对网络性能提高有着非常直接的意义。根据业务特性对网络流量的合理调度还能够降低单位带宽的投资成本,同时,对流量的合理控制也是满足QoS要求的前提。
发明内容
本发明的目的在于解决上述的技术问题,提供一种智能化网络流控方法。
本发明的目的通过以下技术方案来实现:
一种智能化网络流控方法,其中该方法包括如下步骤,
步骤一:由AOS设备的DPI深层包检测引擎以及防火墙(Firewall)引擎,记录每个数据包所属的链路号以及流动方向;
步骤二:识别出每个流出数据包来自的内网用户或者内网IP地址,以及每个流出数据包发往的目的内网用户或者内网IP地址,并为每个连接建立一个连接状态追踪信息,并根据包的分类有区别的选择丢弃和入队;
步骤三:采用DPI深层包检测引擎以及DFI深度流检测技术,标识出每个数据包所属的应用类型;
步骤四:基于以上步骤标识的信息,对每个数据包进行分类,并按照分类将每个数据包放入各个缓存区中,等待发送;
步骤五:由调度器结合控制策略负责将这些缓存的网络数据包,按照用户事先配置的带宽和优先级控制策略发送出去。
进一步地,以上所述的智能化网络流控方法,其中所述步骤五中控制策略包括CAR令牌算法、RED随机尾部丢弃、DRR亏空轮询、优先级排序策略,所述策略为能实现4级交叉立体的带宽控制策略。
本发明提供了一种有别于传统流控方式、全新的、立体的、交叉的流控方法,可以为网络链路划分多个虚拟带宽通道,能够实现最大带宽限制、保证带宽、带宽租借、应用优先级、Per-IP带宽控制、Per-Net带宽控制、随机公平队列等一系列带宽管理功能,为客户提供带宽管理、分析和优化的一体化解决方案,能够有效的检测和防止不正常应用对网络带宽资源的非正常消耗,保证关键应用带宽,限制非业务应用带宽,改善和保障了整体网络应用的服务质量。
附图说明
下面结合附图对本发明技术方案作进一步说明:
图1:智能化网络流控系统的应用模型。
图2:本发明的具体实施方式中,对于Per-IP/Per-User模式的流控模型逻辑划分说明。
图3:本发明的具体实施方式中,对于Normal模式的流控模型逻辑划分说明。
具体实施方式
本发明是通过AOS设备的DPI深层包检测引擎以及防火墙(Firewall)引擎,对每个进入和流出的数据包进行识别和标识,以确定其所属的内网用户以及应用类型等,这些应用类型可以为P2P、HTTP、迅雷、BT等,然后将这些数据包归类,分别放入不同应用类型下各用户专属的缓存区中暂时缓存,最后按照一定的带宽控制策略将这些数据包逐步发送出去。
本发明涉及的关键技术有DPI、DFI、CAR(Committed access rate)、Deficit round robin(DRR)、Random early detection(RED)等流控技术。
本发明揭示了一种智能化网络流控方法,其具体过程包括:
首先,本发明需要阐明如下相关概念:
Virtual Channel简称VC
一条虚拟链路(确定的Line ID,在非对称流量的情况下,可能多条物理链路是一条虚拟链路)可以拥有独立的VC配置。VC和网络数据包的应用类型密切相关,一种或者几种类似的网络应用类型可以划分为一个VC,VC是系统中最底层的节点类型。
VC拥有的属性包括:VC的类别(NONE/PER-HOST/PER-USER)、保证带宽、最大带宽、Shared带宽。
Pipe
Pipe是定义在VC之上的一个一定数量VC的集合。是为了体现立体的流量控制而引入的概念,以满足用户希望对某几种业务类型同时加以控制和约束的需求。一个VC只能属于一个确定的Pipe。
Pipe拥有的属性包括:Pipe的类别(NONE/PER-HOST/PER-USER)、保证带宽、最大带宽、Shared带宽
Shared VC
Shared VC是定义在Pipe之下、VC之上的一个一定数量VC的集合。是为了体现交叉的流量控制而引入的概念,以满足用户希望某几种业务类型之间进行带宽资源的竞争使用的需求。一个Shared VC也只能属于一个确定的Pipe。
Shared VC拥有的属性包括:Shared的类别(NONE/PER-HOST/PER-USER)、最大带宽
Shared Pipe
Shared Pipe是定义在Pipe之上的一定数量的Pipe的集合。是为了体现更高层次的立体、交叉流控特性而引入的概念。Shared Pipe是最顶级的控制节点,可以跨越物理的链路、网络应用而存在。
Shared Pipe拥有的属性包括:Shared的类别(NONE/PER-HOST/PER-USER)、最大带宽
Per-Flow Queue-PFQ
Per-Flow Queue简称PFQ,用户的每条连接(State)对应一个独立的PFQ,一个PFQ中包含两个Queue-Inbound PFQ和Outbound PFQ。Flow中的Inbound报文,进入Inbound PFQ中,Flow中的Outbound报文,进入Outbound PFQ中。
PFQ的队列长度可以定义,每个Virtual Channel(简称VC)可以单独定义这个VC中的PFQ的队列长度,队列长度可以分为Inbound队列长度和Outbound队列长度,可以分别控制。
当PFQ的队列长度达到一定的限制时,会根据配置情况有选择性的使用Random Early Detection(简称RED)算法来进行随机尾部或者头部丢弃报文。PFQ的RED可以自定义,每个VC可以定义是否启用VC中的PFQ的RED,RED可以分Inbound和Outbound分别控制。RED算法采用标准RED算法。
本发明中,在每个链路和每个输入输出方向上,都有单独的配置,用户可以根据需要,在每个链路和每个输入输出方向上做如上最多4层的交叉带宽控制策略,让用户对网络的控制更加的精细化。
首先,对于每个进入系统的网络数据包,依据其来自的物理端口,打上链路ID号和输入输出方向标签,为网络数据包的分类做好第一步准备。
基于DPI深层包检测引擎以及DFI深度流检测技术,识别出每个数据包所属的应用类型(比如P2P、HTTP、迅雷、BT等),然后为每个网络数据包打上VC的ID号。
根据链路ID号、输入输出方向、VC号,找到该网络数据包所属的虚拟通道-VC,并根据状态跟踪模块的信息,找到其对应的PFQ队列号,将该网络数据包放入相应的PFQ队列等待发送。如果VC是Normal属性的,即:不区分各个用户统一控制总体带宽,则将该报文放入VC下属的PFQ队列中;如果VC是Per-Host或者Per-User属性的,即:按照每个用户或者IP地址放入VC下相应的动态通道的PFQ队列中。
由于任何PFQ队列能够容纳的网络数据包的个数是有限的,因此,当PFQ队列中网络数据包的个数达到一定的数量阀值时,就需要对新进入的网络数据包进行限制,丢弃一部分网络数据包。本发明采用了Random earlydetection(RED)算法,即:随机尾部丢弃策略。与传统的尾部丢弃策略相比,RED算法可以有效的避免TCP连接的全局同步问题,使得网络数据流更加的平滑。
入包完成之后,接下来由调度器将PFQ中缓存的网络数据包发送出去。
调度器的主要任务是通过各种控制策略,从缓存区中选取一个最优先发送的网络数据包发送出去,其所涉及的主要技术和控制策略如下所述:
对于Normal属性的VC节点,所有属于该VC的网络数据包,无论其来源于或者发往哪个内网用户,都采用统一的带宽控制策略。而对于Per属性的VC节点,是由VC下属的每个内网用户专属的各动态通道配置的带宽控制策略来进行控制的。VC节点或者动态通道的带宽采用前述的CAR(发送令牌)的方式来控制,本发明的方法同时支持单速三色CAR计算方式和双速三色CAR计算方式。
每个节点或者动态通道,每次发送出一个网络数据包之后,都要通过CAR计算来确定其颜色:Green(绿色)代表其目前的带宽消耗尚在保证带宽之内;Yellow(黄色)代表其目前的带宽消耗已经超出了其配置的保证带宽,但尚在其最大带宽之内;Red(红色)代表其目前的带宽消耗已经超出了其最大带宽的限制。绿色的通道是被安排优先发送的,而黄色的通道只有在绿色的通道都发送完毕之后,才被允许发送;而红色的通道是不能够发送数据包的。
每个通道发送完一个网络数据包之后,除了要计算本身的CAR之外,为了体现立体交叉的多层次的带宽控制,还需要依次计算其各个父通道的CAR。例如,一个Normal属性的VC节点发送出一个网络数据包之后,有可能还要依次计算其Normal属性的Shared VC、Pipe、Shared Pipe各父节点的CAR,以确定其各个父节点的颜色。任何一个父节点颜色的变迁都将影响到处于最底层的通道的网络数据包的发送。因为调度器是从最上层的父节点开始寻找最优先发送的通道,如果父节点的颜色级别降低,则调度器有可能选不中其父节点,进而不会选择到其下属的子通道。
一个Pipe节点下,会有多个VC通道,很有可能在同一时间,有多个VC通道处于绿色,即这些VC通道的带宽消耗都没有达到其保证带宽,都应该被允许发送数据包。为了能够选出最应该优先发送的VC,每个VC都配置有优先级参数,优先级最高的VC,将被优先安排发送。同时,为了保证同优先级之间的VC可以得到公平的发送机会,以及为了防止高优先级的VC一直抢占低优先级VC的发送机会,从而导致低优先级的VC一直得到不到发送机会而处于“饥饿”状态,本发明引入了Deficit roundrobin(DRR)亏空轮循机制,即:每个VC通道都配置有每次可以连续发送的最大字节数(配额),一旦达到了其配额,将会切换到下一个VC,并且重新填满该VC的发送配额。
为了达到带宽控制的目的,该发明每次发送完一个网络数据包,都会对各个通道进行CAR发送令牌的填充,为了提供系统运行的效率,令牌的填充被限制在一定的时间间隔内,只有达到了这个时间间隔,才进行令牌的计算和填充,以避免不必要的令牌填充,消耗系统的CPU资源。因此,本发明引入了CAR Refill链表概念,只有符合条件的通道才被放入该链表,并且该链表采用FIFO的策略,对链表中的各个通道按照令牌填充时间进行排序,最需要填充的通道排在链表的最前端。
如图1示意了该发明在用户现场实际应用时的示意图。整套系统以DPI和DFI技术为核心,结合带宽自动分配算法、令牌桶算法、随机公平队列等技术,能够全面识别和控制包括P2P、VoIP、视频/流媒体、HTTP、网络游戏、炒股软件、数据库等在内的多种应用,提供虚拟带宽通道划分、最大带宽限制、保证带宽、带宽租借、应用优先级、Per-IP带宽控制、Per-Net带宽控制、随机公平队列等一系列带宽管理功能。
如图2示意了该发明对于四级Per属性限速控制的内部实现逻辑,体现了立体交叉的流控技术。
如图3示意了该发明对于四级Normal属性限速控制的内部实现逻辑,体现了立体交叉的流控技术。
本发明将在一定网络环境下,为用户提供主动式的、智能化的、可视化的带宽管理服务,达到可视、可测、可控、可优化的管理目标,为带宽优化与管控、网络规划提供科学的依据。
本发明尚有多种具体的实施方式,凡采用等同替换或者等效变换而形成的所有技术方案,均落在本发明要求保护的范围之内。
Claims (2)
1.一种智能化网络流控方法,其特征在于:该方法包括如下步骤,
步骤一:由应用优化系统设备的深层包检测引擎以及防火墙引擎,记录每个数据包所属的链路号以及流动方向;
步骤二:识别出每个流出数据包来自的内网用户或者内网IP地址,以及每个流出数据包发往的目的内网用户或者内网IP地址,并为每个连接建立一个连接状态追踪信息,并根据包的分类有区别的选择丢弃和入队;
步骤三:采用深层包检测引擎以及深度流检测技术,标识出每个数据包所属的应用类型;
步骤四:基于以上步骤标识的信息,对每个数据包进行分类,并按照分类将每个数据包放入各个缓存区中,等待发送;
步骤五:由调度器结合控制策略负责将这些缓存的网络数据包,按照用户事先配置的带宽和优先级控制策略发送出去;
对于Normal属性的虚拟链路节点,所有属于该虚拟链路的网络数据包,无论其来源于或者发往哪个内网用户,都采用统一的带宽控制策略;
而对于Per属性的虚拟链路节点,是由虚拟链路下属的每个内网用户专属的各动态通道配置的带宽控制策略来进行控制的;
虚拟链路节点或者动态通道的带宽采用发送令牌的方式来控制。
2.根据权利要求1所述的智能化网络流控方法,其特征在于:所述步骤五中控制策略包括令牌算法或随机尾部丢弃或亏空轮询或优先级排序策略,所述控制策略为能实现4级交叉立体的带宽控制策略。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105767295A CN102025623B (zh) | 2010-12-07 | 2010-12-07 | 智能化网络流控方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105767295A CN102025623B (zh) | 2010-12-07 | 2010-12-07 | 智能化网络流控方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102025623A CN102025623A (zh) | 2011-04-20 |
CN102025623B true CN102025623B (zh) | 2013-03-20 |
Family
ID=43866496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010105767295A Active CN102025623B (zh) | 2010-12-07 | 2010-12-07 | 智能化网络流控方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102025623B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102916908B (zh) | 2011-08-02 | 2014-03-19 | 腾讯科技(深圳)有限公司 | 网络应用中的带宽优化方法及系统 |
CN102355422B (zh) * | 2011-10-17 | 2014-07-23 | 苏州迈科网络安全技术股份有限公司 | 多核并行无锁的qos流量控制方法 |
CN103152277A (zh) * | 2011-12-07 | 2013-06-12 | 北京网康科技有限公司 | 一种提高网络流量控制性能的方法及其设备 |
CN102868638A (zh) * | 2012-08-16 | 2013-01-09 | 苏州迈科网络安全技术股份有限公司 | 动态调整带宽方法及系统 |
CN104243332A (zh) * | 2013-06-20 | 2014-12-24 | 上海博达数据通信有限公司 | 基于dpi识别的分通道应用流量控制方法 |
CN103346976B (zh) * | 2013-07-10 | 2016-08-17 | 深圳市磊科实业有限公司 | 一种基于分层令牌桶的带宽公平控制方法 |
CN103441947B (zh) * | 2013-08-23 | 2017-02-22 | 深信服网络科技(深圳)有限公司 | 基于桌面虚拟化的流量控制方法及装置 |
CN103957470A (zh) * | 2014-05-14 | 2014-07-30 | 浙江水利水电学院 | 面向视频的流量控制和优化方法及系统 |
US20160283859A1 (en) * | 2015-03-25 | 2016-09-29 | Cisco Technology, Inc. | Network traffic classification |
CN108206788B (zh) * | 2016-12-16 | 2021-07-06 | 中国移动通信有限公司研究院 | 一种流量的业务识别方法及相关设备 |
CN107689928A (zh) * | 2017-08-15 | 2018-02-13 | 中国联合网络通信集团有限公司 | 数据业务处理方法及装置 |
CN109428774B (zh) * | 2017-08-22 | 2020-12-22 | 网宿科技股份有限公司 | 一种dpi设备的数据处理方法及相关的dpi设备 |
WO2019061150A1 (en) * | 2017-09-28 | 2019-04-04 | Qualcomm Incorporated | LOCAL CACHE STORAGE ASSISTED BY USER EQUIPMENT (UE) |
CN114679421A (zh) * | 2022-04-19 | 2022-06-28 | 深圳市吉祥腾达科技有限公司 | 一种基于用户数据流优先级的队列调度方法与系统 |
CN116521963A (zh) * | 2023-07-04 | 2023-08-01 | 北京智麟科技有限公司 | 一种基于组件化的计算引擎数据处理方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009089701A1 (fr) * | 2008-01-16 | 2009-07-23 | Huawei Technologies Co., Ltd. | Procédé et système d'inspection de paquet |
CN101605067A (zh) * | 2009-04-22 | 2009-12-16 | 网经科技(苏州)有限公司 | 网络行为主动分析诊断方法 |
CN101645806A (zh) * | 2009-09-04 | 2010-02-10 | 东南大学 | Dpi和dfi相结合的网络流量分类系统及分类方法 |
CN101741744A (zh) * | 2009-12-17 | 2010-06-16 | 东南大学 | 一种网络流量识别方法 |
-
2010
- 2010-12-07 CN CN2010105767295A patent/CN102025623B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009089701A1 (fr) * | 2008-01-16 | 2009-07-23 | Huawei Technologies Co., Ltd. | Procédé et système d'inspection de paquet |
CN101605067A (zh) * | 2009-04-22 | 2009-12-16 | 网经科技(苏州)有限公司 | 网络行为主动分析诊断方法 |
CN101645806A (zh) * | 2009-09-04 | 2010-02-10 | 东南大学 | Dpi和dfi相结合的网络流量分类系统及分类方法 |
CN101741744A (zh) * | 2009-12-17 | 2010-06-16 | 东南大学 | 一种网络流量识别方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102025623A (zh) | 2011-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102025623B (zh) | 智能化网络流控方法 | |
CN109743340B (zh) | 报文处理的方法和网络装置 | |
CN101616097B (zh) | 一种网络处理器输出端口队列的管理方法及系统 | |
CN104158753B (zh) | 基于软件定义网络的动态流调度方法及系统 | |
EP2695334B1 (en) | Packet scheduling method and apparatus | |
CN102368741A (zh) | 支持层次化队列调度和流量整形的方法及装置 | |
CN101692648B (zh) | 一种队列调度方法及系统 | |
CN103346922A (zh) | 基于sdn的确定网络状态的控制器及其确定方法 | |
CN107454015B (zh) | 一种基于OF-DiffServ模型的QoS控制方法及系统 | |
CN104579962A (zh) | 一种区分不同报文的QoS策略的方法及装置 | |
CN1781287A (zh) | 用于柔性带宽分配的方法和设备 | |
CN101984608A (zh) | 报文拥塞避免方法及系统 | |
CN102868638A (zh) | 动态调整带宽方法及系统 | |
CN104184679B (zh) | 一种智能变电站中报文的调度方法和装置 | |
CN104980359A (zh) | 以太网光纤通道的流量控制方法、装置及系统 | |
CN101714947A (zh) | 一种可扩展的全流优先级调度方法 | |
CN103634223A (zh) | 一种基于网络业务流的动态控制传输方法和装置 | |
CN101616098B (zh) | Tcp数据流的调度方法和设备 | |
CN101820385A (zh) | 一种ip数据流流量的监管方法 | |
CN102355422B (zh) | 多核并行无锁的qos流量控制方法 | |
CN104301254A (zh) | 一种用于数据中心网络的数据包调度方法 | |
CN108243506A (zh) | Lte系统中的业务调度方法及装置 | |
Li et al. | Packet rank-aware active queue management for programmable flow scheduling | |
CN1518296A (zh) | 一种支持多业务的综合队列调度的实现方法 | |
CN102546423A (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 | ||
CP02 | Change in the address of a patent holder |
Address after: Room 301-302, 3rd Floor, Tiancheng Information Building, No. 88 South Tiancheng Road, High Speed Rail New City, Xiangcheng District, Suzhou City, Jiangsu Province, 215133 Patentee after: SUZHOU MAXNET NETWORK SAFETY TECHNOLOGY Co.,Ltd. Address before: 215021 International Science and Technology Park Phase III 8B, No. 1355 Jinjihu Avenue, Industrial Park, Suzhou City, Jiangsu Province Patentee before: SUZHOU MAXNET NETWORK SAFETY TECHNOLOGY Co.,Ltd. |
|
CP02 | Change in the address of a patent holder |