【技术实现步骤摘要】
一种基于时间标签的I/O调度QoS方法
本专利技术属于分布式大数据的云存储领域,具体涉及一种基于时间标签的I/O调度QoS方法。
技术介绍
伴随着云计算、虚拟化技术的逐渐兴起,集群中I/O资源分配的问题日益严重。比如,生产环境中可能出现由于个别结点侵占了整个集群的绝大部分I/O资源,导致其他结点操作时延较大、用户体验不友好等问题。QoS最早起源于网络通信,是指一个通信网络能够利用各种基础技术,为特定应用提供更好的服务能力。对一个系统而言,QoS旨在更加合理地统筹系统有限的I/O资源,从而实现资源按需分配,对外提供更好的服务。传统系统通常采用基于令牌桶的优先级队列(prio)进行I/O调度,但是令牌桶中的令牌是一个变化量,需要对令牌桶中的令牌不断进行刷新,导致刷新同一队列对应令牌桶中令牌的时间间隔太长。此外,如果采用基于权重的优先级队列(wpq)进行I/O调度,该算法的权重值是固定分配的,不能根据网络的负载状况实现动态的带宽资源分配。所述的I/0调度算法缺点明显,无法真正地发挥QoS的特性。
技术实现思路
本专利技术针对现有技术中的不足,提供一种基于时间标签的I/O调度 ...
【技术保护点】
1.一种基于时间标签的I/O调度QoS方法,其特征在于,采用一个两级映射队列实现,第一级为客户端的client队列,第二级为真实的请求队列,每个请求包含三个时间标签
【技术特征摘要】
1.一种基于时间标签的I/O调度QoS方法,其特征在于,采用一个两级映射队列实现,第一级为客户端的client队列,第二级为真实的请求队列,每个请求包含三个时间标签<Ri,Wi,Li>,其中R表示预留时间标签,W表示权重时间标签,L表示上限时间标签,i表示其归属的client编号;三个时间标签<Ri,Wi,Li>采用完全二叉树来组织管理动态数据处理,完全二叉树结点为每个client对应的请求队列,结点在二叉树中的位置根据其队首元素的三个时间标签值确定,总体原则是父结点的时间标签小于子结点。2.如权利要求1所述的一种基于时间标签的I/O调度QoS方法,其特征在于:每个请求的时间标签计算公式如下:Rir=max{Rir-1+ρi/ri,currenttime}Wir=max{Wir-1+σi/wi,currenttime}Lir=max{Lir-1+σi/li,currenttime}其中,ρ和σ分别表示客户端在向目标服务器和非目标服务器下发请求时,携带距上次下发请求以来,收到完成的请求个数的增量值;r、w和l分别表示I/O预留值、权重和I/O上限值;currenttime表示当前时间。3.如权利要求1所述的一种基于时间标签的I/O调度QoS方法,其特征在于:在入队时,对于已存在的client,将请求直接挂入请求队列的尾部;对于新增client,除了新创建一个对应的请求队列,将请求入队之外,还需要将队列作为一个新结点加入时间标签二叉树,根据完全二叉树的特点,采用顺序的变长数组结构存储,新结点先加入二叉树的尾部,再调整至合适的位置。4.如权利要求3所述的一种基...
【专利技术属性】
技术研发人员:刘鹏,张真,王义飞,杜何飞,章亮,吴修文,王小聪,
申请(专利权)人:南京云创大数据科技股份有限公司,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。