[发明专利]一种数据流控方法和装置有效
申请号: | 201810792969.5 | 申请日: | 2018-07-18 |
公开(公告)号: | CN110740099B | 公开(公告)日: | 2023-03-31 |
发明(设计)人: | 廖武钧 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | H04L47/10 | 分类号: | H04L47/10;H04L67/10 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 李红爽;栗若木 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据流 方法 装置 | ||
本申请提出一种数据流控方法和装置,所述方法包括:从当前批次的IO请求中抽取预设数量的IO请求或预设大小的IO数据量对应的IO请求作为流控请求;对所述流控请求进行流控计算确定每个流控请求是否允许立刻下发。本申请基于抽样原则,将一定比例的IO请求,经过判断跳过流控过程的检查和处理工作,减少进行流控处理的IO请求数量,降低整体系统的资源消耗,可较大降低IO转发系统中流控相关的CPU消耗。
技术领域
背景技术
目前随着云计算技术和云服务器的发展,用户能以远程登陆的方式进行操作管理的服务器。用户在使用建立在分布式存储系统之上的云磁盘时,最基本的操作就是读取磁盘的数据,往磁盘写入数据。用户的每一个读、写请求,需要从使用云磁盘的云服务器,到后端真正存储数据的存储系统,其间往往要走过多台物理服务器,一级级往后传输。每台服务器上有专门的模块,接收上一级下来的IO(Input/Output,输入/输出)请求,然后再转发给下一级。对于IO转发系统和负责数据接收或输出的系统,其控制传输量的功能行为,称之为数据流控。数据流控是IO转发系统和负责数据收发的系统中很重要的功能。譬如家用宽带都会通过运营商的流控装置限制速度上限(10MB/s、100MB/s)。
如图1所示,现有的IO转发系统,其数据流控的功能实现,过程如下:
1.IO转发系统中的流控模块,其中会记录IO转发系统的限速数值,以及当前已下发的数据量。一般记录数据包含两个维度:IO请求数量,字节数量。
2.IO转发系统把新收到的IO请求先交付给流控模块。
3.流控模块获取当前的时间点,并结合系统设定的限速值及内部记录的已下发数据量,计算当前时间点能够下发的数据量,其中,设定的限速值包括:IOPS(Input/OutputOperations Per Second,每秒允许处理的IO请求个数)上限、BPS(Bits Per Second,每秒允许处理的IO中数据量)上限。
4.对比计算出来的当前时间点能够下发的数据量,确定当前IO是否允许下发。
5.如果允许,则直接下发并订正已下发数据量;否则,让该IO请求等待到可下发的时间点(同样通过计算得出),然后再下发并订正已下发数据量。
但是,现有方案存在如下缺点:
每一个IO请求,都需要走一遍流控模块,经过上述的一套计算和判断逻辑。这些计算和判断都是需要消耗一定的CPU(Central Processing Unit,中央处理器)的能力。
在高性能的IO转发系统中,每个IO走过一遍流控,其消耗的计算能力,占整体的比重不容忽视。
发明内容
本申请提供一种IO数据流控方法和装置,减少进入流控模块的IO数量,降低整体系统的资源消耗。
采取的技术方案如下:
第一方面,本发明提供一种数据流控方法,包括:
从当前批次的IO请求中抽取预设数量的IO请求或预设大小的IO数据量对应的IO请求作为流控请求;
对所述流控请求进行流控计算确定每个流控请求是否允许立刻下发。
优选地,所述方法应用于云计算块存储领域。
优选地,所述的方法还包括:对当前批次中除了流控请求外的其他IO请求转发至IO流程的下一个处理单元。
优选地,从当前批次的IO请求中抽取预设数量的IO请求包括:
按照预设的抽样比例k,从当前批次的M1个IO请求中抽取M1×k个IO请求作为流控请求;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810792969.5/2.html,转载请声明来源钻瓜专利网。