[发明专利]基于硬件多级表的输出流量控制方法无效

专利信息
申请号: 201110003670.5 申请日: 2011-01-10
公开(公告)号: CN102075423A 公开(公告)日: 2011-05-25
发明(设计)人: 唐勇;陈曙晖;李韬;苏金树;王勇军;赵国鸿;宣蕾;陆华彪;陆华彪 申请(专利权)人: 中国人民解放军国防科学技术大学
主分类号: H04L12/56 分类号: H04L12/56
代理公司: 国防科技大学专利服务中心 43202 代理人: 郭敏
地址: 410073 湖*** 国省代码: 湖南;43
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种基于硬件多级表的输出流量控制方法,要解决的技术问题是在保证流的完整性的前提下进行流量控制。技术方案是先构建由输入卡、输出卡、控制主机、后端分析系统组成的高速网络内容监控系统,输入卡中增加优先级模块,输出卡增加流量控制模块,控制主机上运行流量控制软件;优先级模块在优先级表中查找优先级号,将带有优先级号的报文送给输出卡;流量控制模块查找报文的优先级号对应优先级的流控表,决定对报文发送或丢弃;流量控制软件统计流量,设置丢弃标志位,控制流量控制模块进行流量控制。采用本发明能在保证流的完整性的前提下进行流量控制,且硬件逻辑简单,处理报文速度快,网络抖动小。
搜索关键词: 基于 硬件 多级 输出 流量 控制 方法
【主权项】:
1.一种基于硬件多级表的输出流量控制方法,其特征在于包括以下步骤:第一步,构建高速网络内容监控系统,高速网络内容监控系统由输入卡、输出卡、控制主机、后端分析系统组成;输入卡中增加优先级模块,优先级模块与硬件DPI模块和输入卡的输出端口相连,它从硬件DPI接收经深度报文检测处理的报文,确定报文的优先级,然后将确定了优先级的报文传送给输出卡;输出卡与输入卡、控制主机、后端分析系统相连,一个输出卡有一个输入端口和若干输出端口,在输出卡各输出端口增加流量控制模块,各输出端口的流量控制模块与输出卡的输入端口、控制主机、后端分析系统相连,流量控制模块决定对报文发送或丢弃;控制主机与输出卡相连,其上运行流量控制软件,流量控制软件统计流量,设置丢弃标志位,控制流量控制模块进行流量控制;优先级模块由控制逻辑和优先级表组成,控制逻辑分为报文取头逻辑和加报文头逻辑,报文取头逻辑接收硬件DPI模块输出的头部带有规则ID号的报文,将其头部的规则ID号取出,并查找优先级表,获得规则ID与优先级号的对应关系,找出该规则ID对应的优先级号,再由加报文头逻辑将优先级号加在报文头部;优先级表的每个表项包括规则ID值和优先级号两个域,规则ID值是此报文匹配的规则号,优先级号是此规则ID值对应的优先级,一个规则ID值对应一个优先级号,优先级号越小表示优先级越高,这两个域的项数均为P个,P为正整数;输出卡的每一个输出端口对应一个流量控制模块,每一个流量控制模块由流量控制逻辑和P个流控表组成,即每一个优先级对应一个流控表;流控表的每一项由序号ID、字节数bytes和丢弃标志位discard三个域构成;序号ID由源IP的最后n位和目的IP的最后k位共n+k位来确定,n、k均为大于等于1小于等于32的正整数;字节数表示某一个表项在规定时间内的流量大小,丢弃标志表示此表项是丢弃还是转发,0为转发,1为丢弃;每个输出端口的流量控制模块的流量控制逻辑与输出卡的输入端口、P个流控表、后端分析系统相连,它从输出卡的输入端口接收输入的报文并根据该报文的优先级确定该报文对应的优先级的流控表,然后根据该报文的源IP地址和目的IP地址查找此流控表的表项,读取丢弃标志位discard以决定对报文转发还是丢弃,并对转发出去的报文更新其所在表项的字节数bytes; 第二步,硬件DPI根据流入输入卡的报文的五元组进行规则匹配,每条规则都有自己的规则ID号,当一个报文匹配上某条规则时,就将此规则的ID加在报文头部,转发给优先级模块,优先级模块根据报文头部的ID值在优先级表中查找相应的优先级号,并加在报文头部,将带有优先级号的报文送给输出卡;第三步,输出卡的流量控制模块根据每个报文头部携带的优先级号确定该报文对应的优先级的流控表,然后根据报文源IP地址的最后n位和目的IP地址的最后k位共n+k位,查找此流控表的第2(n+k) 个表项,然后查看这个表项的丢弃标志位,若丢弃标志位为0,则转发该报文;若丢弃标志位为1,则丢弃该报文;用表示输出端口Ai的优先级为j的流控表,1≤i≤Z,1≤j≤M,表示输出端口Ai的优先级为j的流控表的第m项的字节数的值,表示输出端口Ai的优先级为j的流控表的第m项的丢弃标志位的值,用表示流控表中丢弃标志位为0的表项的集合,流量控制模块的流量控制逻辑按以下步骤对流量进行控制:3.1根据输入报文的优先级号确定该报文所属优先级的流控表;3.2按输入报文的源IP地址的最后n位与目的IP地址的最后k位共n+k位查找3.1所述流控表的第2(n+k)项;3.3判断3.2所述流控表的第2(n+k)项的是否为1,如果为1,则丢弃报文;否则,将报文发送出去;3.4将发送出去的报文的大小加在该报文对应的表项的字节数一项上,进行统计;第四步,流量控制软件定时读取输出卡各输出端口的流量控制模块的所有流控表,对所有丢弃标志位为0的表项的字节数域求和,计算当前输出流量,如果当前输出流量超过设定的端口流量限制,则以优先级从低到高的顺序将流控表中的若干表项的丢弃标志位置1,增加硬件丢弃的流量;如果当前流量小于端口流量限制,则以优先级从高到低的顺序将流控表中的若干表项的丢弃标志位置0,减少硬件丢弃的流量:对于有A1、A2、……Az Z个报文输出端口的输出卡,A1、A2、……Az的限定流量分别为B1、B2、……Bz,A1、A2、……Az分别维护P个不同优先级的流控表,流量控制软件的流程是: 4.1经过时间间隔T,T小于等于60秒 ,流量控制软件从输出端口Ai的P个优先级的流控表中读取丢弃标志位为0的各表项中字节数的值并求和,即,1≤i≤Z,Si是当前输出端口Ai实际输出总流量,若Si>Bi,则转步骤4.2,否则转步骤4.3;4.2此时输出端口Ai的总输出流量超过了其负载限制,采取快丢弃的策略,执行步骤如下:4.2.1 将优先级j置为1;4.2.2设超过部分的流量为=Si-Bi,采用多项式时间的近似算法APPROX_SUBSET_SUM(G,t)在流控表中选择若干表项的丢弃位置1,使得这些表项的字节数之和为,从而恰好将超过部分的流量丢弃;算法输入为(G,t),G为流控表表项的集合,t是超负载流量,输出为G的一个子集,使得G中表项的字节数之和尽可能大但不超过t;如果APPROX_SUBSET_SUM(,)返回空集,则转4.2.2.1;如果APPROX_SUBSET_SUM(,)返回,即全部丢弃也不能满足要求,则转4.2.2.3;否则转4.2.2.2;4.2.2.1 不需要再丢弃流量,转4.2.3;4.2.2.2判定当前优先级的流控表是否能够完成流控要求,即对所有丢弃标志位为0的表项的字节数一项求和,设这个和为Q,再将Q和超负载的流量作比较,若Q≥,将APPROX_SUBSET_SUM(,)返回的集合中所有表项的丢弃标志位置1;转4.2.3;否则,执行4.2.2.3;4.2.2.3当前优先级的流控表不能完成流量丢弃要求,首先将当前优先级流控表的所有表项的丢弃标志置1,从而丢弃掉此表中的全部流量;剩余的待丢弃流量需要在更高级流控表中进行丢弃,令-Q,Q为当前优先级的流控表中丢弃标志位为0的所有表项的字节数之和,j=j+1,转4.2.2;4.2.3 完成本次流控,转4.4;4.3此时输出端口Ai的总输出流量小于其负载能力,采取慢恢复的策略,设此时输出端口Ai有丢弃标志位被置1的所有流控表中优先级最高的为H,并设这个优先级为H的流控表中有F1、F2、……FL个表项丢弃标志位被置1,1≤L≤2(n+k),则选取这些表项中字节数最少的一项,即min{,,……},设为,1≤Y≤L,令此项的丢弃标志位为0,即=0;转4.4;4.4清空所有流控表表项的字节数,重新开始统计,转4.1。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201110003670.5/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top