CN108111571B - 一种基于iSCSI协议的存储QoS方法 - Google Patents

一种基于iSCSI协议的存储QoS方法 Download PDF

Info

Publication number
CN108111571B
CN108111571B CN201711126435.0A CN201711126435A CN108111571B CN 108111571 B CN108111571 B CN 108111571B CN 201711126435 A CN201711126435 A CN 201711126435A CN 108111571 B CN108111571 B CN 108111571B
Authority
CN
China
Prior art keywords
virtual machine
qos
task
storage
iscsi
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201711126435.0A
Other languages
English (en)
Other versions
CN108111571A (zh
Inventor
麦剑
闵宇
叶梅霞
李坤祥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Eflycloud Computing Co Ltd
Original Assignee
Guangdong Eflycloud Computing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangdong Eflycloud Computing Co Ltd filed Critical Guangdong Eflycloud Computing Co Ltd
Priority to CN201711126435.0A priority Critical patent/CN108111571B/zh
Publication of CN108111571A publication Critical patent/CN108111571A/zh
Application granted granted Critical
Publication of CN108111571B publication Critical patent/CN108111571B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Abstract

一种基于iSCSI协议的存储QoS方法,包括了区分来自不同虚拟机的任务Task的过程:步骤A:QoS模块从任务Task上提取出Initiator Task Tag字段;步骤B:QoS模块再将Initiator Task Tag字段划分成虚拟机标识(VM ID)和虚拟机请求任务ID(VM Task Tag)两个部分;步骤C:虚拟机标识(VM ID)标记虚拟机,根据虚拟机标识(VM ID)区分出任务Task所属的虚拟机,虚拟机请求任务ID(VM Task Tag)标记虚拟机的请求回话任务;步骤D:根据虚拟机请求任务ID(VM Task Tag)统计出不同虚拟机的QoS数并对iSCSI数据包进行存储。本发明利用iSCSI协议,在TCP存储连接里区分出来自不同虚拟机的存储服务请求,然后通过网络QoS的手段为不同的虚拟机提供存储的QoS服务。

Description

一种基于iSCSI协议的存储QoS方法
技术领域
本发明涉及通讯存储技术领域,尤其涉及一种基于iSCSI协议的存储QoS方法。
背景技术
目前流行的存储设备都支持并推荐使用iSCSI作为存储对外的服务接口,iSCSI是一种可以在IP协议上运行的SCSI指令集协议,使存储服务可以在普通的TCP/IP协议上运行,主要功能是在TCP/IP网络上的主机和存储设备之间进行数据的封装和可靠传输。在云计算IaaS服务架构中,存储作为虚拟机的存储载体,为虚拟机提供的是虚拟磁盘的服务,虚拟机的实力载体物理机通过iSCSI协议跟存储设备进行对接传输。
QoS服务在IaaS服务里面尤其重要,因为云提供商需要为不同的虚拟机做合理的资源调度,以保证有限的资源被合理地分配到不同的虚拟机实例上,iSCSI协议本身没有专门针对QoS的实现,往往是一个TCP存储连接里面包含了多个虚拟机的存储请求任务Task,因此目前iSCSI协议并不能很好的区分一个TCP链接里面来自不同虚拟机的请求,更加不能针对不同的虚拟机做QoS服务。
发明内容
本发明的目的在于提出一种基于iSCSI协议的存储QoS方法,利用iSCSI协议,在TCP存储连接里区分出来自不同虚拟机的存储服务请求,然后通过网络QoS的手段为不同的虚拟机提供存储的QoS服务。
为达此目的,本发明采用以下技术方案:
一种基于iSCSI协议的存储QoS方法,所述iSCSI数据包使用TCP协议作为传输数据,所述TCP协议携带有iSCSI数据报文PDU,所述PDU上传输有多个虚拟机的存储请求,即任务Task,所述任务Task上有一个长度为4字节的Initiator Task Tag字段,所述InitiatorTask Tag字段用来区分不同的所述任务Task,包括了区分来自不同虚拟机的任务Task的过程:
步骤A:QoS模块从所述任务Task上提取出所述Initiator Task Tag字段;
步骤B:所述QoS模块再将所述Initiator Task Tag字段划分成虚拟机标识(VMID)和虚拟机请求任务ID(VM Task Tag)两个部分,;
步骤C:所述虚拟机标识(VM ID)标记虚拟机,根据所述虚拟机标识(VM ID)区分出所述任务Task所属的虚拟机,所述虚拟机请求任务ID(VM Task Tag)标记虚拟机的请求回话任务;
步骤D:根据所述虚拟机请求任务ID(VM Task Tag)统计出不同虚拟机的QoS数并对所述iSCSI数据包进行存储。
优选的,虚拟机设定有阈值,所述阈值为虚拟机的存储请求数和存储传输量,对QoS数超出所述阈值的虚拟机实施请求数和传输量限制。
通过设定阈值,对虚拟机的任务Task数量进行限制,对于超出阈值的部分进行处理,更好的利用资源,方便资源的调度。
优选的,虚拟机对超出所述阈值的QoS数进行丢弃或者缓存处理。
优选的,包括统计不同虚拟机QoS数的过程:
步骤C1:每台虚拟机限制在统一周期内接受一定数量的QoS数;
步骤C2:在统一周期内,所述QoS模块统计不同的虚拟机的QoS数,并与限制的QoS数进行比较,若统计的QoS数超出限制的QoS数,则对超出的QoS数进行丢弃处理或者缓存处理,然后对下一个统一周期内的QoS进行统计。
优选的,所述虚拟机标识(VM ID)和虚拟机请求任务ID(VM Task Tag)的总长度为4个字节。
附图说明
图1是本发明的来自不同虚拟机的任务Task的流程图;
图2是本发明的举例说明解释图。
其中:QoS模组1、任务Task2、Initiator Task Tag字段3、虚拟机标识(VM ID)4、虚拟机请求任务ID(VM Task Tag)5、iSCSI数据包6、。
具体实施方式
下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。
本实施例的一种基于iSCSI协议的存储QoS方法,iSCSI数据包6使用TCP协议作为传输数据,所述TCP协议携带有iSCSI数据报文PDU,所述PDU上传输有多个虚拟机的存储请求,即任务Task2,所述任务Task2上有一个长度为4字节的Initiator Task Tag字段3,所述Initiator Task Tag字段3用来区分不同的所述任务Task2,如图1所示,包括了区分来自不同虚拟机的任务Task2的过程:
步骤A:QoS模块1从所述任务Task2上提取出所述Initiator Task Tag字段3;
步骤B:所述QoS模块1再将所述Initiator Task Tag字段3划分成虚拟机标识(VMID)4和虚拟机请求任务ID(VM Task Tag)5两个部分,;
步骤C:所述虚拟机标识(VM ID)4标记虚拟机,根据所述虚拟机标识(VM ID)4区分出所述任务Task2所属的虚拟机,所述虚拟机请求任务ID(VM Task Tag)5标记虚拟机的请求回话任务;
步骤D:根据所述虚拟机请求任务ID(VM Task Tag)5统计出不同虚拟机的QoS数并对所述iSCSI数据包6进行存储。
iSCSI传输使用的是TCP连接,在实际应用中,因为考虑到性能的要求,所以往往是一个TCP连接上传输了许多虚拟机的存储请求,也就是所述任务Task2(也可称为回话),不同的任务Task2是根据任务Task2的Tag来区分的,也就是所述Initiator Task Tag字段3,所述Initiator Task Tag字段3是由iSCSI请求端负责生成的一个唯一的标识,用来区分不同的所述任务Task2,通过复用这个Initiator Task Tag字段3,将它分成两个部分,即所述虚拟机标识(VM ID)4和虚拟机请求任务ID(VM Task Tag)5,第一部分用来标记虚拟机,第二部分用来标记虚拟机的请求回话任务Task2,这样就可以从本质上区分出不同虚拟机所对应的任务Task2,而区分清楚虚拟机和所对应的任务Task2后,就可以根据虚拟机来进行存储服务的QoS,通过在iSCSI网络传输层进行网络数据包的过滤,统计出不同的虚拟机在指定时间内的的存储请求数和存储传输量,并对请求数和传输量进行限制。举例说明,如图2所示,一共有3台虚拟机没分别是虚拟机-1、虚拟机-2和虚拟机-3,在传输iSCSI协议报文里面,传输经过一个QoS模块1时,该模块线提取所述Initiator Task Tag字段3,然后将所述Initiator Task Tag字段3分为两个部分,分别是虚拟机的标识(VM ID)和虚拟机的请求任务ID(VM Task Tag),VMID-1、VMID-2和VMID-3分别对应虚拟机-1、虚拟机-2和虚拟机-3,这样虚拟机就被区分出来,可以看到虚拟机-1上有3个任务请求,分别是VM Task Tag-x1、VM Task Tag-x2和VM Task Tag-x3,虚拟机-2和-3同上,若限制每台虚拟机在制定时间内只能有2个任务请求,这样虚拟机-1就超过了,对超过的任务请求进行丢弃或者缓存处理。
在不改动现有iSCSI协议的基础上,可以区分去不同虚拟机所对应的存储请求,并可以对指定的虚拟机的任务Task2数量进行限制,从而帮助云提供商更好的调度存储服务资源。
优选的,虚拟机设定有阈值,所述阈值为虚拟机的存储请求数和存储传输量,对QoS数超出所述阈值的虚拟机实施请求数和传输量限制。
通过设定阈值,对虚拟机的任务Task2数量进行限制,对于超出阈值的部分进行处理,更好的利用资源,方便资源的调度。
优选的,虚拟机对超出所述阈值的QoS数进行丢弃或者缓存处理。
缓存即先保存起来不发送,等下一个时间再发送,减缓频率。
优选的,包括统计不同虚拟机QoS数的过程:
步骤C1:每台虚拟机限制在统一周期内接受一定数量的QoS数;
步骤C2:在统一周期内,所述QoS模块1统计不同的虚拟机的QoS数,并与限制的QoS数进行比较,若统计的QoS数超出限制的QoS数,则对超出的QoS数进行丢弃处理或者缓存处理,然后对下一个统一周期内的QoS进行统计。
举例说明,比如限制每台虚拟机1秒钟只能有10个请求,这样QoS模块1就以1秒钟为统计周期,统计1秒钟内不同虚拟机的请求数,如果发现超过了,进行丢弃或者缓存处理,下一个1秒钟周期又重新计算,如此类推。
优选的,所述虚拟机标识(VM ID)4和虚拟机的请求任务ID(VM Task Tag)的总长度为4个字节。
虚拟机标识(VM ID)4和虚拟机的请求任务ID(VM Task Tag)总长度不便,即不会改变原有iSCSI协议,同时也能保证Initiator Task Tag的唯一性,不影响iSCSI服务。
以上结合具体实施例描述了本发明的技术原理。这些描述只是为了解释本发明的原理,而不能以任何方式解释为对本发明保护范围的限制。基于此处的解释,本领域的技术人员不需要付出创造性的劳动即可联想到本发明的其它具体实施方式,这些方式都将落入本发明的保护范围之内。

Claims (4)

1.一种基于iSCSI协议的存储QoS方法,其特征在于:所述iSCSI数据包使用TCP协议作为传输数据,所述TCP协议携带有iSCSI数据报文PDU,所述PDU上传输有多个虚拟机的存储请求,即任务Task,所述任务Task上有一个长度为4字节的Initiator Task Tag字段,所述Initiator Task Tag字段用来区分不同的所述任务Task,包括了区分来自不同虚拟机的任务Task的过程:
步骤A:QoS模块从所述任务Task上提取出所述Initiator Task Tag字段;
步骤B:所述QoS模块再将所述Initiator Task Tag字段划分成虚拟机标识(VM ID)和虚拟机请求任务ID(VM Task Tag)两个部分;
步骤C:所述虚拟机标识(VM ID)标记虚拟机,根据所述虚拟机标识(VM ID)区分出所述任务Task所属的虚拟机,所述虚拟机请求任务ID(VM Task Tag)标记虚拟机的请求回话任务;
步骤D:根据所述虚拟机请求任务ID(VM Task Tag)统计出不同虚拟机的QoS数并对所述iSCSI数据包进行存储;
虚拟机设定有阈值,所述阈值为虚拟机的存储请求数和存储传输量,对QoS数超出所述阈值的虚拟机实施请求数和传输量限制。
2.根据权利要求1所述一种基于iSCSI协议的存储QoS方法,其特征在于:虚拟机对超出所述阈值的QoS数进行丢弃或者缓存处理。
3.根据权利要求1所述一种基于iSCSI协议的存储QoS方法,其特征在于:包括统计不同虚拟机QoS数的过程:
步骤C1:每台虚拟机限制在统一周期内接受一定数量的QoS数;
步骤C2:在统一周期内,所述QoS模块统计不同的虚拟机的QoS数,并与限制的QoS数进行比较,若统计的QoS数超出限制的QoS数,则对超出的QoS数进行丢弃处理或者缓存处理,然后对下一个统一周期内的QoS进行统计。
4.根据权利要求1所述一种基于iSCSI协议的存储QoS方法,其特征在于:所述虚拟机标识(VM ID)和虚拟机请求任务ID(VM Task Tag)的总长度为4个字节。
CN201711126435.0A 2017-11-15 2017-11-15 一种基于iSCSI协议的存储QoS方法 Active CN108111571B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711126435.0A CN108111571B (zh) 2017-11-15 2017-11-15 一种基于iSCSI协议的存储QoS方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711126435.0A CN108111571B (zh) 2017-11-15 2017-11-15 一种基于iSCSI协议的存储QoS方法

Publications (2)

Publication Number Publication Date
CN108111571A CN108111571A (zh) 2018-06-01
CN108111571B true CN108111571B (zh) 2021-05-04

Family

ID=62206422

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711126435.0A Active CN108111571B (zh) 2017-11-15 2017-11-15 一种基于iSCSI协议的存储QoS方法

Country Status (1)

Country Link
CN (1) CN108111571B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1732664A (zh) * 2002-12-31 2006-02-08 国际商业机器公司 iSCSI的服务质量
CN101202741A (zh) * 2006-12-14 2008-06-18 英业达股份有限公司 动态调整任务请求数的方法
CN103365803A (zh) * 2012-03-29 2013-10-23 富士通株式会社 访问控制方法、服务器装置和存储装置
CN105407059A (zh) * 2015-10-21 2016-03-16 浪潮(北京)电子信息产业有限公司 一种应用于SCSI目标器的QoS调度器及调度方法
CN105511798A (zh) * 2014-09-24 2016-04-20 中国电信股份有限公司 虚拟机缓存资源管理方法和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8719069B2 (en) * 2009-07-23 2014-05-06 Brocade Communications Systems, Inc. Method and apparatus for providing virtual machine information to a network interface

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1732664A (zh) * 2002-12-31 2006-02-08 国际商业机器公司 iSCSI的服务质量
CN101202741A (zh) * 2006-12-14 2008-06-18 英业达股份有限公司 动态调整任务请求数的方法
CN103365803A (zh) * 2012-03-29 2013-10-23 富士通株式会社 访问控制方法、服务器装置和存储装置
CN105511798A (zh) * 2014-09-24 2016-04-20 中国电信股份有限公司 虚拟机缓存资源管理方法和系统
CN105407059A (zh) * 2015-10-21 2016-03-16 浪潮(北京)电子信息产业有限公司 一种应用于SCSI目标器的QoS调度器及调度方法

Also Published As

Publication number Publication date
CN108111571A (zh) 2018-06-01

Similar Documents

Publication Publication Date Title
CN108536543B (zh) 具有基于跨步的数据分散的接收队列
US20220255884A1 (en) System and method for facilitating efficient utilization of an output buffer in a network interface controller (nic)
US7142540B2 (en) Method and apparatus for zero-copy receive buffer management
US9860176B2 (en) Data packet processing
CN103391256B (zh) 一种基于Linux系统的基站用户面数据处理优化方法
US20080049617A1 (en) System for fine grained flow-control concurrency to prevent excessive packet loss
US7751404B2 (en) Method, system, and computer program product for high performance bonding resequencing
CN109783250B (zh) 一种报文转发方法及网络设备
TW201338470A (zh) 用於在客戶端裝置上利用封包服務分類執行封包佇列的系統及方法
CN105391647B (zh) 一种流量控制的方法及系统
KR20220006606A (ko) 메시지 처리 방법 및 관련 장치
CN115174490B (zh) 一种数据传输方法及网络应用终端
WO2017045501A1 (zh) 一种报文调度方法和装置、存储介质
EP2709320B1 (en) Method and apparatus for sending packet
US11528187B1 (en) Dynamically configurable networking device interfaces for directional capacity modifications
CN113765812A (zh) 一种标记报文的方法和装置
US20200348989A1 (en) Methods and apparatus for multiplexing data flows via a single data structure
CN108111571B (zh) 一种基于iSCSI协议的存储QoS方法
CN104753813A (zh) Dma传送报文的方法
CN115514709B (zh) 拥塞控制事件队列调度方法、装置、设备和存储介质
WO2019015487A1 (zh) 一种数据重传处理方法、rlc实体和mac实体
CN115567457A (zh) Tsn网络数据传输方法及装置
US11218394B1 (en) Dynamic modifications to directional capacity of networking device interfaces
US9621487B2 (en) Method and apparatus for protection switching based on memory control in packet transport system
CN112583831B (zh) Autbus总线与ethernet总线的协议转换装置及方法、设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant