Provide QoS method and device. The realization of QoS in processing IO command. Including the method of processing IO command: in response to the IO command to fill the first submission queue to reduce first namespace quotas, wherein the first IO command corresponding to the first namespace; in response to acquire second IO instructions from command completion messages in the queue, adding second for the namespace quota, wherein the second IO a command corresponding to the second namespace, and the second IO command to carry a mark indicating the quota.
【技术实现步骤摘要】
本专利技术涉及用于处理NVMe命令的生成与处理,特别地,涉及在多个NMVe空间上提供服务质量(QoS,QualityofService)。
技术介绍
设备之间通过队列交换命令或消息是常用的。命令发送方将命令插入提交队列尾部,命令接收方从队列尾部取出命令并处理,将处理结果插入到完成队列尾部,命令发送方从完成队列头部取出命令处理结果。通过队列交换命令,能够在发送方与接收方直接维护多个并发的命令,并且命令之间的处理速度不必一致。NVMe协议(参见“NVMExpressRevision1.2”,2014年11月3日,通过引用将其全文合并于本说明书)定义了主机(Host)与设备(Device)之间交换数据的命令与数据结构(如图1所示)。主机中维护多个队列,每个队列中可填充多个命令。主机与设备基于队列交换数据。主机将命令C填入提交队列,设备从提交队列中取得命令C,并按命令C的内容进行处理,将处理结果填入完成队列。主机从完成队列获取命令C的处理结果以知晓命令C的处理完成。依据NVMe协议,在设备端维护多个队列的队首与队尾指针。主机与设备都会更新队首与队尾指针。主机向设备发送命 ...
【技术保护点】
一种处理IO命令的方法,包括:响应于将第一IO命令填充到提交队列,减少用于第一命名空间的配额,其中所述第一IO命令对应第一命名空间;响应于从完成队列中获取指示第二IO命令完成的消息,增加用于第二命名空间的配额,其中所述第二IO命令对应于第二命名空间,以及所述第二IO命令携带了指示配额的标记。
【技术特征摘要】
2016.05.05 CN 20161029285741.一种处理IO命令的方法,包括:响应于将第一IO命令填充到提交队列,减少用于第一命名空间的配额,其中所述第一IO命令对应第一命名空间;响应于从完成队列中获取指示第二IO命令完成的消息,增加用于第二命名空间的配额,其中所述第二IO命令对应于第二命名空间,以及所述第二IO命令携带了指示配额的标记。2.根据权利要求1所述的方法,还包括:若用于第一命名空间的配额不足,将对应于第一命名空间的IO命令插入第一等待队列,而不填充到提交队列。3.根据权利要求1-2之一所述的方法,还包括:响应于从完成队列获取指示第三IO命令完成的消息,使用于第二空间的配额保持不变,其中所述第三IO命令对应于第二命名空间,以及所述第三IO命令未携带指示配额的标记或所述第三IO命令携带了指示配额为零的标记。4.根据权利要求1-3之一所述的方法,还包括:响应于从完成队列获取空消息,增加用于第二命名空间的配额,其中所述空消息指示了第二命名空间,且所述空消息不指示任何IO命令的完成。5.根据权利要求1-4之一所述的方法,还包括:若用于所述第一命名空间的配额充足,从第一等待队列中取出第四IO命令;将第四IO命令填充到提交队列,并减少用于第一命名空间的配额。6.一种处理IO命令的方法,包括:获取第一I...
【专利技术属性】
技术研发人员:路向峰,
申请(专利权)人:北京忆恒创源科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。