[发明专利]控制CPU流量的装置和方法无效
申请号: | 201110117082.4 | 申请日: | 2011-05-06 |
公开(公告)号: | CN102209028A | 公开(公告)日: | 2011-10-05 |
发明(设计)人: | 裴文辉;范成龙 | 申请(专利权)人: | 北京傲天动联技术有限公司 |
主分类号: | H04L12/56 | 分类号: | H04L12/56 |
代理公司: | 北京铭硕知识产权代理有限公司 11286 | 代理人: | 韩明星;刘灿强 |
地址: | 100085 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 控制 cpu 流量 装置 方法 | ||
技术领域
本发明涉及计算机通信领域,更具体地讲,涉及一种在网络系统中控制CPU流量的装置的方法。
背景技术
随着网络应用的日益广泛和一些新的网络技术的出现,网络流量控制和带宽管理成了一个亟待解决的问题,人们开始寻求一些解决带宽分配和管理的方法。
Linux操作系统中一般采用TC(Traffic Control)来进行流量控制,TC主要是通过在输出端口处建立一个队列来实现流量控制。Linux的流量控制的基本原理如图1所示。
图1是示出根据现有技术的网络流量控制装置10(例如,网卡)的示意性的框图。根据现有技术的网络流量控制装置10包括输入接口11、流量限制(Ingress Policing)模块12、输入多路分配器(input De-Multiplexing)13、转发模块14、输出排队模块15和输出接口16。
输入接口11接收包括多个数据包的流量并将该流量传送给流量限制模块12。流量限制模块12丢弃不符合规定的数据包并将剩余的数据包传送给输入多路分配器13。输入多路分配器13对剩余的数据包进行判断,如果数据包的目的地是本主机则将该数据包传送给上层20(TCP、UDP等)以进行处理;如果不是则将数据包传送给转发模块14。转发模块14通过查看路由表来确定数据包的下一跳转。此外,转发模块14也可以从本主机上层20接收产生的包。输出排队模块15对数据包进行排列以将数据包传送到输出接口16。输出接口16输出流量。
在现有技术的Linux流量控制中,一般只能限制网卡发送的数据包,不能限制网卡接收的数据包。
此外,在现有技术中,不能控制由输入接口进入系统交由CPU处理的流量,由于进入CPU处理的流量不能得到智能控制,所以容易造成CPU持续过忙。
发明内容
为了解决现有技术中存在的上述问题,本发明提供了一种能够对CPU的流量转发处理进行弹性控制的装置和方法。
根据本发明的实施例,提供了一种控制CPU流量的装置。所述装置包括:输入接口,接收包括多个数据包的流量;监控管理模块,监控CPU的利用率,并基于CPU的利用率来确定需要转发的数据包的类型和需要丢弃的数据包的类型;流量控制模块,判断所述多个数据包中的每个数据包的类型,并基于监控管理模块的确定结果丢弃属于需要丢弃的数据包的类型的数据包;转发模块,通过查看路由表确定剩余的数据包的下一跳转。
另外,监控管理模块确定与每个数据包的类型对应的优先级以及与所述CPU的利用率对应的优先级,流量控制模块丢弃优先级低于与所述CPU利用率对应的优先级的数据包。
另外,流量控制模块根据监控管理模块确定的优先级对剩余的数据包进行排队。
另外,流量控制模块根据QoS的映射关系判断每个数据包的类型。
另外,监控管理模块根据流量的大小来确定需要丢弃的数据包的类型。
根据本发明的另一实施例,提供了一种控制CPU流量的方法。所述方法包括步骤:接收包括多个数据包的流量;监控CPU的利用率,并基于CPU的利用率来确定需要转发的数据包的类型和需要丢弃的数据包的类型;判断所述多个数据包中的每个数据包的类型,并基于确定结果丢弃属于需要丢弃的数据包的类型的数据包;通过查看路由表确定剩余的数据包的下一跳转。
另外,所述方法还包括步骤:确定与每个数据包的类型对应的优先级以及与所述CPU的利用率对应的优先级;丢弃优先级低于与所述CPU利用率对应的优先级的数据包。
另外,所述方法还包括步骤:根据监控管理模块确定的优先级,对剩余的数据包进行排队。
另外,根据QoS的映射关系判断每个数据包的类型。
另外,根据流量的大小来确定需要丢弃的数据包的类型。
根据本发明的实施例,对CPU的流量转发进行了弹性控制,从而避免了流量过大或CPU利用率较高时CPU长期处于高负荷运行,最大限度提高了CPU的处理能力。
附图说明
图1是根据现有技术的网络流量控制装置的框图;
图2是根据本发明的网络流量控制装置的框图;
图3是根据本发明的网络流量控制方法的流程图。
具体实施方式
现在对本发明实施例进行详细的描述,其示例表示在附图中,其中,相同的标号始终表示相同部件。下面通过参照附图对实施例进行描述以解释本发明。
在网络设备(例如,网卡、路由器等)中,每个功能模块的处理都是由CPU通过软件或硬件的方式来实现的。由于网络设备主要进行流量处理(例如,流量转发),所以CPU主要消耗在转发处理上。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京傲天动联技术有限公司,未经北京傲天动联技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110117082.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:灌溉剅管系统
- 下一篇:伺服双面加热真空封装机