一种对报文进行流量监管的系统及方法

文档序号:7714076阅读:130来源:国知局
专利名称:一种对报文进行流量监管的系统及方法
技术领域
本发明涉及数据通信技术,更具体的说,是一种对报文进行流 量监管的系统和方法。
背景技术
由于网络资源的有限性,因此网络服务提供商需要对网络中的 流量进行监管和控制。流量监管就是这样一种技术,其典型应用是 监督进入网络的某一流量的规格,把它限制在一个合理的范围之内, 并对超出的部分流量进行"惩罚",从而保护网络资源和运营商的利益。
流量监管是在报文分类的基础上进行的,主要包括测量,标记, 监管动作等步骤。
测量和标记通常是基于令牌桶实现,如RFC2697建议的srTCM (A Single Rate Three Color Marker,单速三色标记)算法或RFC2698 建i义的trTCM ( A Two Rate Three Color Marker,双速三色才示^己)算 法。
监管动作分为三种通过、丢弃、和重新标记后通过。选择何 种监管动作依赖于对报文测量和标记的结果,以及配置的监管策略。 才艮文重豸斤才示i己涉及到乂于才艮文的DSCP (Differentiated Services CodePoint,区分服务编码点)等字段进行修改。重新标记后的报文才艮据 SLS ( Service Level Specification,月良务等级定义)受到相应的只于4寺。
目前的网络设备上,流量监管主要由两个部件来完成包处理 器和流量管理器。才艮据由哪个部件来完成,流量监管主要有两种实 现方式 一种是由包处理器完成纟艮文分类后,流量监管在流量管理 器上实现;另一种是由包处理器软件实现流量监管。
对于实现方式一存在的主要问题是流量管理器进行流量监管 是在报文分类的基础上进行,报文分类是由包处理器来完成的,因 而流量管理器位于包处理器的下游。但是流量管理器不具备解析报 文和^f奮改才艮文的能力,这就意p木着,在这种方式中,不能实3见:流量 监管的才艮文重新标记动作。
对于实现方式二存在的主要问题是流量监管直接在包处理器 上进行,而在进行报文重新标记之前,还需要完成才艮文的测量和标 记。报文的测量和标记多是采用srTCM、 trTCM或其改进的算法实 现的,这些算法都是以令牌桶作为测量工具,这就意味着需要在包 处理器的软件中实现和维护大量的令牌桶。对于包处理器,实现和 维护令牌桶带来了额外的开销,而且其性能和效率也得不到保i正。

发明内容
针对目前等问题而提出本发明,为此,本发明的主要目的在于 提供一种的方法,以解决上述问题。
本发明提出了一种对报文进行流量监管的系统,包括独立于 包处理器的分类策略信息库,根据分类策略信息以及才艮文的头部获 取与才艮文对应的流标识;独立于包处理器的测量引擎,才艮据流标识 和才艮文的长度来对纟艮文进4于测量和标记;独立于包处理器的监管策 略信息库,向包处理器提供监管策略;包处理器,#4居监管策略信息以及对报文的测量和标记,获取与报文对应的监管动作类型,并 执行与监管动作类型相对应的监管动作。
其中,分类策略信息库和监管策略信息库位于存储器件上。
其中,包处理器包括执行模块,当与监管动作类型相对应的 监管动作是通过时,执行模块发送报文,当与监管动作类型相对应 的监管动作是放弃时,执行模块丢弃报文,当与监管动作类型相对 应的监管动作是重新标记时,包处理器根据监管策略信息库中的重 新标记才艮文策略重新标记才艮文,并且执行才莫块在测量引擎重新才示i己 才艮文后发送^艮文。
其中,测量引擎包括令牌桶信息库,保存所服务的数据流的 令牌信息;令牌查询模块,利用报文的流标识从令牌桶信息库中获 取与报文所属的数据流相关联的多个桶的当前可用令牌数;测量才莫 块,将与报文所属的数据流相关联的多个桶的当前可用令牌数与报 文长度分别比较;标记模块,根据比较结果将报文标记成不同的颜 色;令牌维护模块,根据标记结果对令牌桶信息库进行更新。
其中,多个桶为两个桶,标记模块将两个桶的当前可用令牌数 均大于报文长度的报文标记成第 一颜色,将一个桶的当前可用令牌 数大于报文长度且另 一个桶的当前可用令牌数小于报文长度的报文 标记成第二颜色,将两个桶的当前可用令牌数均小于报文长度的报 文标i己成第三颜色,并且在才艮文^皮标记成第一颜色时,与监管动作 类型相对应的监管动作是通过,在报文被标记成第二颜色时,与监 管动作类型相对应的监管动作是重新标记,在才艮文祐:标记成第三颜 色时,与监管动作类型相对应的监管动作是;^文弃。
本发明还提出了一种对报文进行流量监管的方法,其包括包 处理器将报文的头部发送给独立于包处理器的分类策略信息库;分类策略信息库根据分类策略信息以及报文的头部,获取与报文对应
的流标识;独立于包处理器的测量引擎才艮据流标识和才艮文的长度来对报文进行测量和标记;包处理器根据监管策略信息库中的监管策略信息以及对报文的测量和标记,获取与报文对应的监管动作类型;包处理器执行与监管动作类型相对应的监管动作。
其中,分类策略信息库和监管策略信息库位于存储器件上。
其中,在包处理器执行与监管动作类型相对应的监管动作的步骤中,具体包括当与监管动作类型相对应的监管动作是通过时,发送报文,当与监管动作类型相对应的监管动作是放弃时,丢弃报文,当与监管动作类型相对应的监管动作是重新标记时,包处理器冲艮据监管策略信息库中的重新标i己才艮文策略重新标i己才艮文,并且包处理器在测量引擎重新标记报文后发送报文。
其中,在测量引擎根据所获取的流标识和报文的长度来对才艮文进行测量和标记的步骤中,具体包括以下步骤测量引擎利用才艮文的流标识从保存令牌信息的令牌桶信息库中获取与报文所属的数据流相关联的多个桶的当前可用令牌数;将与才艮文所属的数据流相关联的多个桶的当前可用令牌数与报文长度分别比较;根据比较结果将报文标记成不同的颜色;根据标记结果对令牌桶信息库进行更新。
其中,多个桶为两个桶,将两个桶的当前可用令牌数均大于报文长度的报文标记成第 一颜色,将一个桶的当前可用令牌数大于报文长度且另 一个桶的当前可用令牌数小于报文长度的报文标记成第二颜色,将两个桶的当前可用令牌数均小于报文长度的报文标记成第三颜色,并且在才艮文4皮标记成第一颜色时,与监管动作类型相对应的监管动作是通过,在报文被标记成第二颜色时,与监管动作类型相对应的监管动作是重新标i己,在才艮文^皮才示i己成第三颜色时,与监管动作类型相对应的监管动作是放弃。与现有技术相比较,本发明引入了测量引擎,用以辅助包处理器完成才艮文的测量和标记工作,测量和标记后,包处理器还可以对才艮文进4于解一斤和^修改。
与包处理器使用软件完成流量监管相比,本发明 一方面减少了
包处理器实现报文测量和标记的开销;另一方面,通过测量引擎,提升了流量监管的性能。
与使用流量管理器完成流量监管相比,本发明能够实现流量管理器中所不能实现的重新标"fe的监管动作。


此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其i兌明用于解释本发明,并不构成对本发明的不当限定。在附图中
图l是本发明对报文进行流量监管的系统的结构示意图2是本发明的包处理器的结构示意图3是本发明的测量引擎的结构示意图4是本发明的测量引擎的令牌维护的示意图5是本发明对才艮文进行流量监管的方法的流程图。
具体实施例方式
本发明对报文进行流量监管的系统包括包处理器,用以接收、发送报文;完成报文的分类,解析,修 改,封装,以及访问各种信息库,获取所需信息;
测量引擎,用以完成才艮文的测量和标i己;
分类策略信息库,用以向包处理器提供才艮文分类的策略,位于 存储器件上;
监管策略信息库,用以向包处理器提供监管的策略,位于存储 器件上;
其中,所述包处理器与分类策略信息库、监管策略信息库和测 量引擎相连。
利用本发明报文重新标记的方法包括以下步骤
步骤A.包处理器从上游器件接收数据包;
步骤B.包处理器利用纟艮文的相关字^殳查询分类策略信息库获 取流标识;
步骤C.包处理器将流标识和4艮文长度等才艮文描述信息送往测 量引擎,测量引擎完成才艮文的测量和标记,并将结果返回给包处理 器;
步骤D.包处理器才艮据测量和标记的结果,以及流标识查询监 管策略信息库,获取对应的监管动作类型;
步骤E.包处理器一艮据监管动作类型扭^于对应的监管动作;
步骤F.将转发和重新标记后的数据包送到下游器件。下面结合附图和具体实施方式
对本发明作进一步的^c明。
如图l所示,本发明的对报文进行流量监管的系统包括
包处理器101,用来完成才艮文分类,选择并执行监管动作,准 备各信息库和测量引擎的查询键值,并处理返回结果。
测量引擎102,用来完成报文的测量和标记,将测量和标记的 结果返回给包处理器,内部维护有用于测量的令牌桶4言息,查询4建 <直为净艮文的流^示识和才艮文长度。
分类策略信息库103,用来为包处理器提供分类所对应的流标 识,查询4定值为才艮文相关字,殳。
监管策略信息库104,用以为包处理器提供用户所预定义的监 管动作类型,查询4定值为流标识和测量引擎所标记的才艮文的颜色。
如图2所示,包处理器101主要包4舌以下几个部分
报文分类模块201,用以完成报文的分类,从分类策略信息库 103中获取相应的流标识。
分类策略信息库接口 202,用以作为包处理器101和分类策略 信息库103的接口。
测量预处理才莫块203,用以完成才艮文测量的准备工作。
测量引擎4妄口 204,用以作为包处理器101和测量引擎102的 接o 。
监管动作判定模块205,用以选择监管动作类型。监管策略信息库接口 206,用以作为包处理器101和监管策略信息库104的4妄口。
通过207,用以扭^于类型为通过的监管动作。
重新标记208,用以4丸行类型为重新标记的监管动作。
丢弃209,用以4丸行类型为丟弃的监管动作。
流量接口 210,用以作为包处理器从上游接收报文的接口 ,具有緩存数据包的能力。
流量4妄口 211,用以作为包处理器向下游发送才艮文的4妄口。
如图3所示,测量引擎102主要包4舌以下几个部分
令牌桶信息库301,用以保存所服务的数据流的令牌信息。
令牌查询模块302,用以从令牌桶信息库301中获取报文所属流的令牌信息。
测量模块303 ,用以根据令牌信息完成报文的测量。
标记模块304,用以根据测量结果完成报文的标记。
令牌维护模块305,用以维护令牌桶信息库301中的令牌。
如图4所示,令牌桶信息库301中令牌的维护过程如下
C桶401:令"皁维护才莫块305以CIR403 ( Committed InformationRate,承诺信息速率)往C桶401添加令牌;C桶401能够方文置的最大令牌凄丈为CBS402 ( C Bucket Size, C桶深度);C桶401当前可用令牌数为Tc顿(Token of C Bucket )。
P桶405:令牌维护才莫块305以PIR407 ( Peak Information Rate,峰值信息速率)往P桶402添加令牌;P桶405能够力文置的最大令牌数为PBS406 ( P Bucket Size, P桶深度);P桶405当前可用令牌数为Tp德(Token of P Bucket )。
如图5所示,本发明对报文进行流量监管的方法如下
步骤1:接收并緩存数据包501。包处理器101的流量接口 210从上游接收并緩存数据包,并将报文头部和才艮文长度等描述信息送往报文分类模块。
步骤2:获耳又纟艮文所属流标识502。 ^艮文分类纟莫块201 /人纟艮文头部中提取出源MAC、目的MAC、 VLAN、 IPP、 DSCP、源IPi也址、目的IP地址、源端口号、目的端口号、协i义类型组成分类策略〗言息库103的查询4建值,并将查询键值通过分类策略信息库接口 202送到分类策略信息库103,分类策略信息库103将匹配该键Z直的流标识通过分类策略信息库4妾口 202返回给才艮文分类才莫块201,净艮文分类模块201将流标识和报文长度送往测量预处理一莫块203。
步骤3:获取4艮文所属流的令牌信息503。测量预处理模块203将报文分类模块201的报文长度和流标识组成测量引擎查询键值通过测量引擎接口 204送往测量引擎102的令牌查询才莫块302,令牌查询模块302利用流标识从令牌桶信息库301中获取C桶401的当前令片牟凄t Tc404以及P ^甬402的当前令片皁凄大Tp408,并^]夸Tp408、Tc404、才艮文长度测量才莫块303。步骤4:比较令牌与报文长度并标记报文504,标记报文。测量 模块303判定报文长度与Tp408和Tc404的关系,标记模块根据测 量结果进行标记报文长度大于Tp408,则将才艮文标记为红色;才艮 文长度大于Tc404, 4旦小于Tp408,则将4艮文标记为黄色;才艮文长 度小于Tc404,则将才艮文标记为绿色。测量和标记完成后,将才艮文 颜色、报文长度、Tp408、 Tc404送到令牌桶维护模块305,并将报 文颜色通过测量引擎接口 204返回给测量预处理才莫块203,测量预 处理才莫块203将才艮文颜色和流标识送到监管动作判定才莫块205。
步骤5:更新令牌桶505。在令牌桶维护才莫块中,根据报文颜色 更新令牌桶中的令牌对于绿色冲艮文,将Tp408和Tc404都减去才艮 文长度;对与黄色报文,将Tp408减去报文长度;对于红色报文, 不#^文Tp408禾口 Tc404。 i奮 文TP408, Tc404完成后,^^务 文后的4直 更新到令牌桶信息库301中。
步骤6:监管动作判定506。监管动作判定模块205根据收到到 报文颜色和流标识,组成监管策略信息库104的查询键值,通过监 管策略信息库接口 206访问监管策略信息库104,监管策略信息库 104根据该键值返回匹配的监管动作类型,包括通过、重新标记 后通过、丟弃。监管动作判定模块根据得到的监管动作类型选择步 骤7,步骤8,步骤9。如需重新标记,还返回有重新标记的策略。
步骤7:通过508。不对报文做任何修改,跳到步骤IO。
步骤8:重新标记507。才艮据步骤6中返回的重新标记才艮文策略, 修改报文的对应字段,修改完成后跳到步骤7。
步骤9:丢弃509。将报文丢弃,流程结束。步骤10:发送数据包510。将报文从流量接口 211发往下游,流程结束。
领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网全备上,可选;也,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路^^莫块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的冲支术人员来iJt,本发明可以有各种更改和变^匕。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种对报文进行流量监管的系统,其特征在于,包括独立于包处理器的分类策略信息库,根据分类策略信息以及报文的头部获取与所述报文对应的流标识;独立于所述包处理器的测量引擎,根据所述流标识和所述报文的长度来对所述报文进行测量和标记;独立于所述包处理器的监管策略信息库,向所述包处理器提供监管策略;所述包处理器,根据所述监管策略信息以及对所述报文的测量和标记,获取与所述报文对应的监管动作类型,并执行与所述监管动作类型相对应的监管动作。
2. 根据权利要求1所述的系统,其特征在于,所述分类策略信息 库和所述监管策略信息库位于存储器件上。
3. 根据权利要求1所述的系统,其特征在于,所述包处理器包括 执行模块,当与所述监管动作类型相对应的监管动作是通过时,所述 执行模块发送所述报文,当与所述监管动作类型相对应的监管动作是放弃时,所述 执行模块丟弃所述报文,当与所述监管动作类型相对应的监管动作是重新标记时, 所述包处理器根据所述监管策略信息库中的重新标记报文策 略重新标记所述报文,并且所述执行才莫块在所述测量引擎重新 标记所述才艮文后发送所述才艮文。
4. 根据权利要求1所述的系统,其特征在于,所述测量引擎包括令牌桶信息库,保存所服务的数据流的令牌信息;令牌查询才莫块,利用所述才艮文的流标识,人所述令牌桶信息 库中获取与所述4艮文所属的数据流相关联的多个桶的当前可 用令牌数;测量模块,将与所述报文所属的数据流相关联的多个桶的 当前可用令牌数与所述报文长度分别比较;标记模块,根据比较结果将所述报文标记成不同的颜色;令牌维护模块,根据标记结果对所述令牌桶信息库进行更新。
5. 根据权利要求1所述的系统,其特征在于,所述多个桶为两个 桶,所述标记才莫块将两个桶的当前可用令牌数均大于所述冲艮文 长度的所述才艮文标i己成第一颜色,将一个桶的当前可用令片皁凄t 大于所述报文长度且另 一个桶的当前可用令牌数小于所述才艮 文长度的所述才艮文标记成第二颜色,将两个桶的当前可用令力皁 凄t均小于所述才艮文长度的所述才艮文标记成第三颜色,并且在所 述氺艮文4皮标i己成所述第一颜色时,与所述监管动作类型相对应 的监管动作是通过,在所述才艮文^皮标记成所述第二颜色时,与 所述监管动作类型相对应的监管动作是重新标记,在所述报文 被标记成所述第三颜色时,与所述监管动作类型相对应的监管 动作是放弃。
6. —种对报文进行流量监管的方法,其特征在于,所述方法包括包处理器将报文的头部发送给独立于所述包处理器的分 类策略信息库;所述分类策略信息库根椐分类策略信息以及所述报文的 头部,获耳又与所述才艮文对应的流标识;独立于所述包处理器的测量引擎冲艮据所述流标识和所述才艮文的长度来对所述^艮文进行测量和标记;所述包处理器根据监管策略信息库中的监管策略信息以 及对所述才艮文的测量和标记,获取与所述才艮文对应的监管动作 类型;所述包处理器执行与所述监管动作类型相对应的监管动作。
7. 根据权利要求6所述的方法,其特征在于,所述分类策略信息 库和所述监管策略信息库位于存储器件上。
8. 根据权利要求6所述的方法,其特征在于,在所述包处理器执 行与所述监管动作类型相对应的监管动作的步骤中,具体包 括当与所述监管动作类型相对应的监管动作是通过时,发送 所述报文,当与所述监管动作类型相对应的监管动作是放弃时,丢弃 所述纟良文,当与所述监管动作类型相对应的监管动作是重新标记时, 所述包处理器根据所述监管策略信息库中的重新标记报文策 略重新标记所述才艮文,并且所述包处理器在所述测量引擎重新 标记所述报文后发送所述报文。
9. 根据权利要求6所述的方法,其特征在于,在所述测量引擎才艮 据所获取的流标识和所述净艮文的长度来对所述才艮文进4于测量 和标记的步骤中,具体包括以下步骤所述测量引擎利用所述报文的流标识从保存令牌信息的 令牌桶信息库中获取与所述报文所属的数据流相关联的多个桶的当前可用令力皁凄t;将与所述才艮文所属的^t据流相关联的多个桶的当前可用 令牌数与所述报文长度分别比较;根据比较结果将所述报文标记成不同的颜色;根据标记结果对所述令牌桶信息库进行更新。
10. 根据权利要求6所述的方法,其特征在于,所述多个桶为两个 桶,将两个桶的当前可用令牌数均大于所述才艮文长度的所述才艮 文标记成第 一颜色,将一个桶的当前可用令;f皁凄t大于所述才艮文 长度且另 一个桶的当前可用令牌数小于所述才艮文长度的所述 报文标记成第二颜色,将两个桶的当前可用令牌数均小于所述 报文长度的所述报文标记成第三颜色,并且在所述4艮文牙皮标记 成所述第一颜色时,与所述监管动作类型相对应的监管动作是 通过,在所述才艮文^皮标i己成所述第二颜色时,与所述监管动作 类型相对应的监管动作是重新标记,在所述纟艮文^皮标记成所述 第三颜色时,与所述监管动作类型相对应的监管动作是;^文弃。
全文摘要
本发明提供了一种对报文进行流量监管的系统,包括独立于包处理器的分类策略信息库,根据分类策略信息以及报文的头部获取与报文对应的流标识;独立于包处理器的测量引擎,根据流标识和报文的长度来对报文进行测量和标记;独立于包处理器的监管策略信息库,向包处理器提供监管策略;包处理器,根据监管策略信息以及对报文的测量和标记,获取与报文对应的监管动作类型,并执行于监管动作类型相对应的监管动作,与现有技术相比较,本发明引入了测量引擎,用以辅助包处理器完成报文的测量和标记工作,测量和标记后,包处理器还可以对报文进行解析和修改。
文档编号H04L12/26GK101667940SQ200910178239
公开日2010年3月10日 申请日期2009年9月25日 优先权日2009年9月25日
发明者刘奇峰, 保 唐, 然 王, 肖海涛 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1