一种基于命名空间的带宽控制方法、装置和存储介质制造方法及图纸

技术编号:19856797 阅读:58 留言:0更新日期:2018-12-22 11:33
本发明专利技术实施例公开了一种基于命名空间的带宽控制方法、装置和计算机可读存储介质,依据读写命令中携带的命名空间识别码,将接收到的读写命令存储于相应的等待队列中;判断目标等待队列中当前读写命令占用的读写带宽值是否小于或等于预先设定的目标带宽值;若是,则执行当前读写命令,并将与当前读写命令相邻的下一个读写命令作为新的当前读写命令,重新返回上述判断步骤;若否,则可以将目标等待队列相邻的下一个等待队列作为新的目标等待队列,返回上述判断步骤。在该技术方案中,可以将固态硬盘划分成多个命名空间,通过对每个命名空间进行带宽的限制,可以达到防止带宽抢占的目的,降低了带宽剧烈抖动情况的发生,提升了固态硬盘的服务质量。

【技术实现步骤摘要】
一种基于命名空间的带宽控制方法、装置和存储介质
本专利技术涉及固态硬盘
,特别是涉及一种基于命名空间的带宽控制方法、装置和计算机可读存储介质。
技术介绍
在实际应用中,往往将SSD划分成不同的命名空间(NameSpace,NS),不同的NS一般会被主机分配给不同的用户使用,这就可能出现主机对不同NS读写压力有差异的情况。对于固态硬盘(SolidStateDisk,SSD)而言,服务质量(QualityofService,QOS)主要包括读写带宽以及带宽的抖动情况等。SSD的读写带宽是有限的,多用户同时大压力访问SSD的时候,会出现争抢读写带宽的情况。例如,当SSD中的某个目标NS被频繁访问时,该目标NS会占用较多的带宽值,当其它NS被访问时,由于目标NS对带宽的占用,可能会导致其它NS访问的延迟。并且由于带宽的抢占,会导致带宽分布不均匀,从而造成带宽的剧烈抖动。可见,如何提升固态硬盘的服务质量,是本领域技术人员亟待解决的问题。
技术实现思路
本专利技术实施例的目的是提供一种基于命名空间的带宽控制方法、装置和计算机可读存储介质,可以提升固态硬盘的服务质量。为解决上述技术问题,本专利技术实施例提供一种基于命名空间的带宽控制方法,包括:S11:依据读写命令中携带的命名空间识别码,将接收到的所述读写命令存储于相应的等待队列中;S12:判断目标等待队列中当前读写命令占用的读写带宽值是否小于或等于预先设定的目标带宽值;若是,则执行S13;若否,则执行S14;S13:执行所述当前读写命令,并将与所述当前读写命令相邻的下一个读写命令作为新的当前读写命令,返回所述S12;S14:将与所述目标等待队列相邻的下一个等待队列作为新的目标等待队列,并返回所述S12。可选的,所述目标带宽值的设定过程包括:获取参数配置命令;其中,所述参数配置命令中携带有命名空间识别码及其对应的初始带宽值;判断所述初始带宽值是否满足预设条件;若是,则将所述初始带宽值作为所述命名空间识别码的目标带宽值;若否,则将限定值作为所述命名空间识别码的目标带宽值。可选的,在轮询完所有等待队列之后还包括:依据各命名空间对应的带宽值,判断固态硬盘当前的读写状态;其中,所述读写状态包括过载状态和空闲状态;当固态硬盘当前的读写状态为过载状态时,则等比例下调各命名空间对应的目标带宽值;当固态硬盘当前的读写状态为空闲状态时,则等比例上调各命名空间对应的目标带宽值。可选的,各命名空间对应的带宽值包括写带宽值和读带宽值;相应的,所述依据各命名空间对应的带宽值,判断固态硬盘当前的读写状态包括:计算所有命名空间对应的写带宽总值和读带宽总值;根据如下公式,判断固态硬盘当前的读写状态,当下述公式成立时,则判定固态硬盘当前的读写状态为过载状态;当下述公式不成立时,则判定固态硬盘当前的读写状态为空闲状态;WBW+RBW*8-75﹥3500;其中,WBW表示所有命名空间的写带宽总值;RBW表示所有命名空间的读带宽总值。可选的,在执行完所述当前读写命令之后还包括:将所述当前读写命令从目标等待队列中删除。本专利技术实施例还提供了一种基于命名空间的带宽控制装置,包括存储单元、判断单元、执行单元和轮询单元;所述存储单元,用于依据读写命令中携带的命名空间识别码,将接收到的所述读写命令存储于相应的等待队列中;所述判断单元,用于判断目标等待队列中当前读写命令占用的读写带宽值是否小于或等于预先设定的目标带宽值;若是,则触发所述执行单元;若否,则触发所述轮询单元;所述执行单元,用于执行所述当前读写命令,并将与所述当前读写命令相邻的下一个读写命令作为新的当前读写命令,返回所述判断单元;所述轮询单元,用于将与所述目标等待队列相邻的下一个等待队列作为新的目标等待队列,并返回所述判断单元。可选的,针对于所述目标带宽值的设定过程,所述装置还包括获取单元、第一判断单元、第一设定单元和第二设定单元;所述获取单元,用于获取参数配置命令;其中,所述参数配置命令中携带有命名空间识别码及其对应的初始带宽值;所述第一判断单元,用于判断所述初始带宽值是否满足预设条件;若是,则触发所述第一设定单元;若否,则触发所述第二设定单元;所述第一设定单元,用于将所述初始带宽值作为所述命名空间识别码的目标带宽值;所述第二设定单元,用于将限定值作为所述命名空间识别码的目标带宽值。可选的,还包括第二判断单元、下调单元和上调单元;所述第二判断单元,用于在轮询单元轮询完所有等待队列之后,依据各命名空间对应的带宽值,判断固态硬盘当前的读写状态;其中,所述读写状态包括过载状态和空闲状态;所述下调单元,用于当固态硬盘当前的读写状态为过载状态时,则等比例下调各命名空间对应的目标带宽值;所述上调单元,用于当固态硬盘当前的读写状态为空闲状态时,则等比例上调各命名空间对应的目标带宽值。可选的,各命名空间对应的带宽值包括写带宽值和读带宽值;相应的,所述第二判断单元具体用于计算所有命名空间对应的写带宽总值和读带宽总值;根据如下公式,判断固态硬盘当前的读写状态,当下述公式成立时,则判定固态硬盘当前的读写状态为过载状态;当下述公式不成立时,则判定固态硬盘当前的读写状态为空闲状态;WBW+RBW*8-75﹥3500;其中,WBW表示所有命名空间的写带宽总值;RBW表示所有命名空间的读带宽总值。可选的,还包括删除单元;所述删除单元,用于在执行单元执行完所述当前读写命令之后,将所述当前读写命令从目标等待队列中删除。本专利技术实施例还提供了一种基于命名空间的带宽控制装置,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序以实现如上述基于命名空间的带宽控制方法的步骤。本专利技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述基于命名空间的带宽控制方法的步骤。由上述技术方案可以看出,依据读写命令中携带的命名空间识别码,将接收到的读写命令存储于相应的等待队列中;判断目标等待队列中当前读写命令占用的读写带宽值是否小于或等于预先设定的目标带宽值;目标等待队列中当前读写命令占用的读写带宽值小于或等于预先设定的目标带宽值,则可以执行当前读写命令,并将与该当前读写命令相邻的下一个读写命令作为新的当前读写命令,重新返回上述判断步骤;目标等待队列中当前读写命令占用的读写带宽值大于预先设定的目标带宽值时,则说明目标等待队列所对应的命名空间占用的带宽值较高,为了降低该命名空间对带宽的抢占,此时可以将目标等待队列相邻的下一个等待队列作为新的目标等待队列,返回上述判断步骤。在该技术方案中,可以将固态硬盘划分成多个命名空间,通过对每个命名空间进行带宽的限制,可以达到防止带宽抢占的目的,降低了带宽剧烈抖动情况的发生,提升了固态硬盘的服务质量。附图说明为了更清楚地说明本专利技术实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种基于命名空间的带宽控制方法的流程图;图2为本专利技术实施例提供的一种基于命名空间的带宽控制装置的结构示意图;图3为本专利技术实施例提供的一种基于命名空间的带宽本文档来自技高网...

【技术保护点】
1.一种基于命名空间的带宽控制方法,其特征在于,包括:S11:依据读写命令中携带的命名空间识别码,将接收到的所述读写命令存储于相应的等待队列中;S12:判断目标等待队列中当前读写命令占用的读写带宽值是否小于或等于预先设定的目标带宽值;若是,则执行S13;若否,则执行S14;S13:执行所述当前读写命令,并将与所述当前读写命令相邻的下一个读写命令作为新的当前读写命令,返回所述S12;S14:将与所述目标等待队列相邻的下一个等待队列作为新的目标等待队列,并返回所述S12。

【技术特征摘要】
1.一种基于命名空间的带宽控制方法,其特征在于,包括:S11:依据读写命令中携带的命名空间识别码,将接收到的所述读写命令存储于相应的等待队列中;S12:判断目标等待队列中当前读写命令占用的读写带宽值是否小于或等于预先设定的目标带宽值;若是,则执行S13;若否,则执行S14;S13:执行所述当前读写命令,并将与所述当前读写命令相邻的下一个读写命令作为新的当前读写命令,返回所述S12;S14:将与所述目标等待队列相邻的下一个等待队列作为新的目标等待队列,并返回所述S12。2.根据权利要求1所述的方法,其特征在于,所述目标带宽值的设定过程包括:获取参数配置命令;其中,所述参数配置命令中携带有命名空间识别码及其对应的初始带宽值;判断所述初始带宽值是否满足预设条件;若是,则将所述初始带宽值作为所述命名空间识别码的目标带宽值;若否,则将限定值作为所述命名空间识别码的目标带宽值。3.根据权利要求1所述的方法,其特征在于,在轮询完所有等待队列之后还包括:依据各命名空间对应的带宽值,判断固态硬盘当前的读写状态;其中,所述读写状态包括过载状态和空闲状态;当固态硬盘当前的读写状态为过载状态时,则等比例下调各命名空间对应的目标带宽值;当固态硬盘当前的读写状态为空闲状态时,则等比例上调各命名空间对应的目标带宽值。4.根据权利要求3所述的方法,其特征在于,各命名空间对应的带宽值包括写带宽值和读带宽值;相应的,所述依据各命名空间对应的带宽值,判断固态硬盘当前的读写状态包括:计算所有命名空间对应的写带宽总值和读带宽总值;根据如下公式,判断固态硬盘当前的读写状态,当下述公式成立时,则判定固态硬盘当前的读写状态为过载状态;当下述公式不成立时,则判定固态硬盘当前的读写状态为空闲状态;WBW+RBW*8-75﹥3500;其中,WBW表示所有命名空间的写带宽总值;RBW表示所有命名空间的读带宽总值。5.根据权利要求1-4任意一项所述的方法,其特征在于,在执行完所述当前读写命令之后还包括:将所述当前读写命令从目标等待队列中删除。6.一种基于命名空间的带宽控制装置,其特征在于,包括存储单元、判断单...

【专利技术属性】
技术研发人员:刘筱君王洋
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1