CN110659114A - 用于端到端服务质量期限感知的i/o调度的技术 - Google Patents

用于端到端服务质量期限感知的i/o调度的技术 Download PDF

Info

Publication number
CN110659114A
CN110659114A CN201910451966.XA CN201910451966A CN110659114A CN 110659114 A CN110659114 A CN 110659114A CN 201910451966 A CN201910451966 A CN 201910451966A CN 110659114 A CN110659114 A CN 110659114A
Authority
CN
China
Prior art keywords
qos
deadline
path
request packet
metadata
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.)
Pending
Application number
CN201910451966.XA
Other languages
English (en)
Inventor
P·维索茨基
M·A·科普罗夫斯基
G·热雷切克
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN110659114A publication Critical patent/CN110659114A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5009Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
    • 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • H04L41/5022Ensuring fulfilment of SLA by giving priorities, e.g. assigning classes of service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/20Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
    • 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/62Establishing a time schedule for servicing the requests
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/48Indexing scheme relating to G06F9/48
    • G06F2209/484Precedence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

用于针对I/O操作的端到端服务质量的技术包括I/O路径中的计算设备。计算设备从I/O路径中的另一个计算设备接收I/O请求分组。I/O请求分组包括一个或多个QoS期限元数据。QoS期限元数据指示相对于指定的QoS的与当前执行的工作负载相关的延迟信息。计算设备评估QoS期限元数据,并根据评估的元数据向I/O请求分组分配优先级。

Description

用于端到端服务质量期限感知的I/O调度的技术
背景技术
服务质量(QoS)通常涉及针对服务的整体性能的测量。提供商(例如,云服务提供商)与用户之间的服务等级协议(SLA)可以指定在代表用户执行服务时由提供商支持的QoS要求。例如,SLA可以指定性能度量,例如I/O延迟、网络带宽和要支持的可用性,作为QoS的一部分。
I/O延迟是越来越重要的QoS度量。例如,给定分布式存储方案,用户可能希望根据SLA以相对低的延迟处理存储I/O读取请求,例如,低于500μs。然而,许多贡献者考虑对I/O请求的总体延迟,例如请求计算设备的软件层的延迟、中间网络设备的延迟、网络电缆引起的延迟、分布式存储设备中的软件层的延迟、存储驱动器的延迟等。在用于确保I/O延迟满足QoS要求的当前方法中,使用I/O请求的静态优先级。然而,这种方法效率低下,因为某些请求在某些情况下可能过于优先,因此不必要地对基础设施造成挑战。
附图说明
在此描述的概念在附图中以示例而非限制的方式示出。为了说明的简单和清楚起见,图中所示的元件不一定按比例绘制。在认为合适的地方,附图标记已在图中重复以指示相对应或类似的元件。
图1是示例计算环境的简化框图,其中使用服务质量(QoS)期限感知调度器对I/O请求进行优先级排序;
图2是示出了从端到端的对I/O请求的延迟的贡献者的简化框图;
图3是相对于图1描述的示例计算设备的至少一个实施例的简化框图;
图4是可以由图3的计算设备建立的环境的至少一个实施例的简化框图;
图5是可以嵌入在图3的计算设备上的I/O请求分组中的QoS元数据的至少一个实施例的简化框图;
图6和图7是用于处理受QoS要求的I/O请求分组的方法的简化流程图;以及
图8是描绘用于示例I/O请求的I/O路径的每一级处的延迟的简化流程图。
具体实施方式
虽然本公开的概念易于进行各种修改和替代形式,但是其具体实施例已经在附图中通过示例的方式示出,并且将在本文中进行详细描述。然而,应当理解,不意图将本公开的概念限制为所公开的特定形式,而是相反,意图是覆盖与本公开和所附权利要求一致的所有修改方案、等同方案和替代方案。
说明书中对“一个实施例”、“实施例”、“示例性实施例”等的提及表示所描述的实施例可以包括特定的特征、结构或特性,但是每个实施例可以必然或可以不必包括该特定的特征、结构或特性。此外,这样的短语不一定指代相同的实施例。此外,当结合实施例描述特定特征、结构或特性时,认为结合其他实施例来实现这样的特征、结构或特性在本领域技术人员的知识内,无论是否明确描述。此外,应当意识到,列表中以“A、B和C中的至少一个”的形式包括的项目可以意味着(A);(B);(C):(A和B);(A和C);(B和C);或(A、B和C)。类似地,以“A、B或C中的至少一个”的形式列出的项目可以是(A);(B);(C):(A和B);(A和C);(B和C);或(A、B和C)。
在一些情况下,所公开的实施例可以以硬件、固件、软件或其任何组合来实现。所公开的实施例还可以被实现为由暂时性或非暂时性机器可读(例如,计算机可读)存储介质承载或存储在其上的指令,所述指令可由一个或多个处理器读取和执行。机器可读存储介质可以被实现为用于以机器可读的形式存储或发送信息的任何存储设备、机构或其他物理结构(例如,易失性或非易失性存储器、介质盘或其他介质设备)。
在附图中,可以以具体的布置和/或顺序示出一些结构或方法特征。然而,应当意识到,可能不要求这种具体的布置和/或排序。相反,在一些实施例中,这些特征可以以与说明性图中所示的不同的方式和/或顺序布置。另外,在特定附图中包括结构或方法特征并不意味着在所有实施例中都需要这样的特征,并且在一些实施例中可以不包括这些特征或者可以将其与其它特征组合。
现在参照图1,示出了其中可以适配服务质量(QoS)期限感知I/O调度器的计算环境100。在一些实施例中,计算环境100体现为连接到网络116(例如,因特网)的云提供商网络102。云提供商网络102可以包括计算设备104、一个或多个网络设备108和存储设备110。计算设备104和存储设备110中的每一个可以体现为物理计算系统(例如,台式计算机、工作站等)或虚拟计算实例(例如,在云上执行)。网络设备108可以体现为任何物理联网设备(例如,路由器或交换机)或虚拟计算实例。
存储设备110可以执行分布式存储服务111,其向计算设备104提供对一个或多个存储驱动器114(例如,固态驱动器(SSD)、硬盘驱动器(HDD)等等)的远程存储I/O存取。特别地,计算设备104可以代表用户执行一个或多个工作负载,例如应用105。在执行期间,应用105可以向存储服务111发送用于执行存储I/O操作(例如,存储I/O读取或写入操作)的I/O请求。继而,存储服务111执行存储驱动器114中的一个处的所请求的操作并向应用程序105返回确认。此外,网络设备108将计算设备104与存储设备110互连。结果,计算设备104和存储设备110之间的业务(例如,I/O请求和确认)可以遍历网络设备108中的一个或多个。
在示例计算环境100中,工作负载可能受到关于I/O延迟的QoS要求的影响。例如,服务等级协议(SLA)可能要求I/O延迟保持在给定量内,例如每个请求低于500μs。通常,I/O操作的最终延迟受到许多贡献者的影响。例如,现在参考图2,示出了框图,所述框图示出对云提供商网络102中的I/O操作中的延迟的这种贡献者。说明性地,图2描绘了具有与计算设备104、网络设备1081-3和存储设备110相关联的处理阶段的I/O路径。在该示例中,I/O请求源自应用105,在计算设备的存储软件堆栈/操作系统(OS)驱动器202处处理,遍历每个网络设备,并到达存储服务110。然后,存储服务110执行存储驱动器114上的I/O操作并向应用105返回确认。如图所示,在路径的每个处理阶段,I/O请求产生一定量的延迟。例如,I/O请求在存储堆栈/OS驱动器202处引起10μs的延迟,并且当在计算设备104和网络设备1081之间行进时I/O请求引起5μs。根据该示例,完美读取I/O路径将在340μs内完成。
如本文进一步描述的,实施例公开了配置有云提供商网络102的每个组件(例如,计算设备104、网络设备108、存储设备110,以及存储驱动器114)的端到端QoS期限感知I/O调度器。返回图1,计算设备104、网络设备108和存储设备110中的每一个分别包括I/O调度器106、109和112。尽管未在图1中示出,但是在一些实施例中,存储驱动器114还包括I/O调度器。I/O调度器被配置为包括与I/O请求中的QoS要求(例如,I/O延迟)有关的信息,例如在请求的分组报头中。在已知I/O路径的每个处理阶段,组件经由相应的I/O调度器评估QoS信息以确定定时特性,例如满足QoS要求的剩余实际时间,用于给定理想条件处理I/O请求的每个路径上的剩余时间,以及进度指示器(例如,I/O路径中的哪些阶段已完成处理请求)。这样做允许I/O调度器基于分组中包括的这种QoS信息来动态地对I/O请求进行优先级排序。因此,将QoS信息包含到I/O请求分组中,移除了针对将I/O类分配给给定的优先级等级的需求,从而确保I/O路径中的每个组件都得到有效使用,无论是一个工作负载还是多个工作负载同时发出I/O请求。
注意,以下涉及执行远程存储I/O操作的计算环境,作为QoS期限感知I/O调度器的参考示例。然而,本领域技术人员将认识到,本文描述的实施例可以适用于各种I/O操作,例如网络I/O操作。
现在参考图3,计算设备300可以体现为能够执行本文描述的功能的任何类型的设备,包括从I/O路径中的计算设备(或其他I/O路径组件)接收I/O请求,评估I/O请求分组中的一个或多个QoS期限元数据,并根据评估的QoS元数据为I/O请求分组分配优先级。注意,计算设备300可以代表相对于图1和图2描述的计算设备104、网络设备108和存储设备110中的任何一个。
如图所示,说明性计算设备300包括计算引擎302、输入/输出(I/O)子系统308、通信电路310,以及一个或多个数据存储设备314。当然,在其他实施例中,计算设备300可以包括其他或附加组件,诸如通常在计算机中找到的组件(例如,显示器、外围设备等),诸如外围设备。另外,在一些实施例中,说明性组件中的一个或多个可以并入另一组件中,或者以其他方式形成另一组件的一部分。
计算引擎302可以体现为能够执行下面描述的各种计算功能的任何类型的设备或设备集合。在一些实施例中,计算引擎302可以体现为单个设备,诸如集成电路、嵌入式系统、现场可编程门阵列(FPGA)、片上系统(SOC)或其他集成系统或设备。另外,在一些实施例中,计算引擎302包括或体现为处理器304和存储器306。处理器304可以体现为一个或多个处理器,每个处理器是能够执行本文描述的功能的类型。例如,处理器304可以体现为单核或多核处理器、微控制器或其他处理器或处理/控制电路。在一些实施例中,处理器304可以体现为、包括或耦合到FPGA、ASIC、可重配置的硬件或硬件电路或便于实施本文描述的功能的执行的其他专用硬件。
主存储器306可以体现为能够执行本文描述的功能的任何类型的易失性(例如,动态随机存取存储器(DRAM)等)或非易失性存储器或数据存储装置。易失性存储器可以是需要电力以维持由介质存储的数据的状态的存储介质。易失性存储器的非限制性示例可以包括各种类型的随机存取存储器(RAM),诸如DRAM或静态随机存取存储器(SRAM)。可以在存储器模块中使用的一种特定类型的DRAM是同步动态随机存取存储器(SDRAM)。在特定实施例中,存储器组件的DRAM可以符合由JEDEC颁布的标准,如对用于DDR SDRAM的JESD79F、用于DDR2SDRAM的JESD79-2F、用于DDR3SDRAM的JESD79-3F、用于DDR4SDRAM的JESD79-4A、用于低功耗DDR(LPDDR)的JESD209、用于LPDDR2的JESD209-2、用于LPDDR3的JESD209-3和用于LPDDR4的JESD209-。这些标准(和类似标准)可以被称为基于DDR的标准,并且实现这种标准的存储设备的通信接口可以被称为基于DDR的接口。
在一个实施例中,存储器设备是块可寻址存储器设备,诸如基于NAND或NOR技术的那些。存储器设备还可以包括三维交叉点存储器设备(例如,Intel 3D XPointTM存储器),或其他字节可寻址的就地写入非易失性存储器设备。在一个实施例中,存储器设备可以是或可以包括使用硫属化物玻璃的存储器设备、多阈值级NAND闪存、NOR闪存、单级或多级相变存储器(PCM)、电阻存储器、纳米线存储器、铁电晶体管随机存取存储器(FeTRAM)、反铁电存储器、采用忆阻器技术的磁阻随机存取存储器(MRAM)存储器、包括金属氧化物基极、氧空位基极的电阻存储器和导电桥随机存取存储器(CB-RAM)、或自旋移矩(STT)-MRAM、基于自旋电子磁结存储器的器件、基于磁隧道结(MTJ)的器件、基于DW(畴壁)和SOT(自旋轨道转移)的器件、基于晶闸管的存储器设备,或任何上述设备的组合,或其他存储器。存储器设备可以指管芯本身和/或封装的存储器产品。
在一些实施例中,3D交叉点存储器(例如,Intel 3D XPointTM存储器)可以包括无晶体管的可堆叠交叉点架构,其中存储器单元位于字线和位线的交叉处并且可单独寻址并且其中位存储基于体电阻的变化。在一些实施例中,主存储器306的全部或一部分可以集成到处理器304中。
计算引擎302经由I/O子系统308通信地耦合到计算环境100的其他组件,I/O子系统308可以体现为用于促进与计算引擎302(例如,与处理器304和/或存储器306)以及计算设备300的其它组件的输入/输出操作的电路和/或组件。例如,I/O子系统308可以体现为或以其他方式包括存储器控制器集线器、输入/输出控制集线器、集成传感器集线器、固件设备、通信链路(例如,点对点链路、总线链路、电线、电缆、光导、印刷电路板迹线等),和/或便于输入/输出操作的其他组件和子系统。在一些实施例中,I/O子系统308可以形成片上系统(SoC)的一部分,并且与处理器304、主存储器306和计算设备300的其他组件中的一个或多个一起并入计算引擎302。
通信电路310可以体现为能够实现在计算设备300与另一计算设备(例如,给定I/O路径中的计算设备(例如,计算设备104、网络设备108、存储设备110等))之间通过网络1212的通信的任何通信电路、设备或其集合。通信电路310可以被配置为使用任何一种或多种通信技术(例如,有线或无线通信)和相关联的协议(例如,以太网、
Figure BDA0002075420520000061
WiMAX等)来实现这种通信。
说明性通信电路310包括网络接口控制器(NIC)312,其也可以称为主机结构接口(HFI)。NIC 312可以体现为一个或多个内置板、子卡、控制器芯片、芯片组或可以由计算设备300用来与远程设备的网络通信的其他设备。例如,NIC 312可以体现为通过扩展总线(例如,快速PCI)耦合到I/O子系统308的扩展卡。
一个或多个说明性数据存储设备314可以体现为被配置用于对数据进行短期或长期存储的任何类型的设备,例如存储器设备和电路、存储卡、硬盘驱动器(HDD)、固态驱动器或其他数据存储设备。每个数据存储设备314可以包括存储数据存储设备314的数据和固件代码的系统分区。每个数据存储设备314还可以包括存储用于操作系统的数据文件和可执行文件的操作系统分区。
附加地或替代地,计算设备300可以包括一个或多个外围设备。这样的外围设备可以包括通常见于计算设备中的任何类型的外围设备,诸如显示器、扬声器、鼠标、键盘和/或其他输入/输出设备、接口设备和/或其他外围设备。
如上所述,云提供商服务102说明性地经由网络116进行通信,网络116可以体现为任何类型的有线或无线通信网络,包括全球网络(例如,因特网)、局域网(LAN)或广域网(WAN)、蜂窝网络(例如,全球移动通信系统(GSM)、3G、长期演进(LTE)、全球微波接入互操作性(WiMAX)等)、数字用户线(DSL)网络、有线网络(例如,同轴网络,光纤网络等)或其任何组合。
现在参考图4,计算设备300可以在操作期间建立环境400。说明性环境400包括网络通信器420、时钟组件430和I/O调度器440。环境400的每个组件可以体现为硬件、固件、软件或其组合。此外,在一些实施例中,环境400的一个或多个组件可以体现为电路或电子设备的集合(例如,网络通信器电路420、时钟组件电路430和I/O调度器电路440等)。应当意识到的,在这样的实施例中,网络通信器电路420、时钟组件电路430、I/O调度器电路440中的一个或多个可以形成NIC 312、计算引擎302、通信电路310、I/O子系统308和/或计算设备300的其他组件中的一个或多个的一部分。
在说明性实施例中,环境400包括I/O路径数据402,其可以体现为指示I/O组件的已知I/O路径的任何数据(例如,计算设备104、在计算设备104中执行的软件、网络设备108、存储设备110、存储服务111、存储驱动器114等)。I/O路径数据402描述针对给定工作负载的给定I/O请求遍历的一个或多个跳到跳路径。I/O路径数据402还包括针对每个路径的理想路径延迟。在一些实施例中,可以通过生成和收集通过路径的一个或多个训练I/O请求的时间戳来确定理想路径延迟。此外,环境400还包括优先级阈值数据404,其可以体现为指示对应于针对I/O请求的优先级等级的紧急因子阈值的任何数据。如本文进一步描述的,I/O路径组件使用紧急因子来确定如何基于QoS期限信息对给定I/O请求进行优先级排序。紧急因子基于优先级阈值数据404中的哪个阈值被超过而被映射到的优先级等级中的一个。
如上所述,可以体现为硬件、固件、软件、虚拟化硬件、仿真架构和/或其组合的网络通信器420被配置为促进来自和去往其他I/O路径组件的入站和出站网络通信(例如,网络业务、网络分组、网络流等)。为此,网络通信器420被配置为接收和处理来自系统或计算设备(例如,计算设备104、网络设备108、存储设备110、存储服务111、存储驱动器114等)的数据分组并且准备数据分组并将数据分组发送到另一个计算设备或系统。因此,在一些实施例中,网络通信器420的功能的至少一部分可以由通信电路310执行,并且在说明性实施例中,由NIC 312执行。
可以体现为硬件、固件、软件、虚拟化硬件、仿真架构和/或其组合的时钟组件430是为I/O请求分组提供时间数据。例如,时钟组件430与系统时钟通信,并使用标准同步技术将时间与其他I/O路径组件同步。
可以体现为硬件、固件、软件、虚拟化硬件、仿真架构和/或其组合的I/O调度器440用于接收I/O请求分组,评估包括在I/O请求分组中的QoS期限元数据,并动态地向I/O请求分组分配优先级,I/O请求分组可以由I/O路径的组件强制实施,以确保以有效的方式根据QoS要求处理I/O请求。为此,I/O调度器440包括评估组件442、优先级组件444、强制实施组件446和更新组件448。
说明性评估组件442用于分析在计算设备300处(例如,由网络通信器420)接收的I/O分组。在一些实施例中,I/O分组包括在每个分组中提供以在每个分量处进行分析的QoS期限元数据。在一些实施例中,QoS期限元数据可以包括在I/O请求分组中,例如,在分组的报头中。评估组件442可以评估指定的报头偏移以识别QoS期限元数据。QoS期限元数据包括与计算针对给定请求的实时和预期延迟信息有关的信息,使得可以应用优先级化以满足针对QoS的延迟要求。
例如,现在参考图5,示出了示例QoS期限元数据500的图。如图所示,期限元数据500可以包括期限信息502、阶段延迟信息504和完成的阶段信息506。期限信息502可以体现为指示必须完成I/O请求以符合给定的QoS要求的期限的任何数据。例如,期限信息502可以用针对整个端到端I/O流的绝对时间表示(例如,年/月/日/小时/分/秒/毫秒等)。阶段延迟信息504可以体现为指示I/O路径(例如,给定理想的I/O路径)中的阶段序列的描述的任何数据以及在理想条件下每个阶段的对应的预期延迟贡献。完成的阶段信息506可以体现为指示I/O路径中的哪些阶段完成的任何数据。例如,完成的阶段信息506可以体现为位图,其中完成的阶段被分配给了给定的位并且不完成的阶段被分配了另一个位。
参考图4,评估组件442可以根据QoS期限元数据(例如,根据期限信息502)确定当由计算设备300实时接收到请求时针对I/O请求的期限测量的实际时间。到期限的实际时间是相对于I/O路径中每个设备的同步时钟的。评估组件442还基于与I/O路径的不完成阶段相关联的延迟(例如,给定理想情况)来(例如,根据阶段延迟信息504和完成阶段信息506)确定I/O路径上的剩余时间。
在一些实施例中,评估组件442可以根据到期限的所确定的实际时间和I/O路径测量上的剩余时间来生成紧急因子。例如,紧急因子可以计算为:urgency_factor=(time_to_deadline–ideal_path_TODO_left)/time_to_deadline(1)
其中time_to_deadline是到期限的实际时间,ideal_path_TODO_left是I/O路径测量上的剩余时间。
说明性优先级排序组件444用于评估关于优先级阈值数据404的所生成的紧急因子。如所述,优先级阈值数据404可以基于紧急因子超过的阈值来指示优先级等级。一旦被评估,优先化组件444可以向I/O请求分配优先级等级。说明性强制实施组件446用于评估分配给I/O请求的优先级等级,并将I/O请求放置于要处理或转发的I/O请求的队列中。队列中I/O请求的位置是基于关于要服务的其他请求的优先级等级的I/O请求的优先级等级的。这样做确保了如果给定的I/O请求具有更高的优先级,则计算设备300服务该请求以满足QoS要求。
说明性更新组件448用于在将I/O请求分组转发到I/O路径中的下一级之前修改I/O请求分组中的QoS期限元数据。例如,更新组件448可以修改完成的阶段信息506以指示计算设备300处的当前处理阶段完成。更新组件448可以指示网络通信器420将更新的I/O请求分组转发到I/O路径中的下一组件。
应当意识到,网络通信器420、时钟组件430和I/O调度器440中的每一个可以单独地体现为硬件、固件、软件、虚拟化硬件、仿真架构和/或其组合。例如,网络通信器420和时钟组件430可以体现为硬件组件,而I/O调度器440体现为虚拟化硬件组件或硬件、固件、软件、虚拟化硬件、仿真架构和其他组合中的一些其他组合。
现在参考图6和7,计算设备300在操作中执行用于处理受QoS要求影响的I/O请求分组的方法600。方法600可以由从应用工作负载到I/O服务(例如计算设备300)的I/O路径中的任何组件来执行。
如图所示,方法600开始于框602,其中计算设备300接收I/O请求分组。例如,I/O请求分组可以表示工作负载对分布式存储服务的用于执行存储I/O读取操作的请求。读取操作本身可能受到一些QoS延迟要求的影响。在框604中,计算设备300确定QoS期限元数据是否存在于I/O请求分组中。如果不是,则在框606中,计算设备300返回错误。
否则,计算设备300评估针对QoS期限元数据的I/O请求分组,如框608所示。例如,为此,在框610中,计算设备300评估针对期限元数据的I/O请求分组报头,期限元数据包括期限信息、路径阶段延迟信息和完成的阶段信息。在框612中,计算设备300根据期限信息确定到期限的实际时间。为此,计算设备300从QoS期限元数据取回绝对时间期限,并根据指示计算设备300何时接收I/O分组的时间戳来计算到期限的时间。在块614中,计算设备300根据路径阶段延迟信息和完成的阶段信息来确定I/O路径上的剩余时间。特别地,计算设备300可以基于QoS元数据识别不完成的处理阶段,并且基于那些阶段的预期延迟(如QoS元数据中指定的)计算用于完成可以满足QoS要求的I/O请求的剩余时间。
转到图7,在框616中,计算设备300基于QoS期限元数据确定紧急因子。更具体地,在框618中,计算设备300根据到期限的实际时间以及路径上的剩余时间来确定紧急因子。如上所述,紧急因素用于确定I/O请求应如何关于到达计算设备300的其他现有I/O请求来进行优先级排序。在框620中,计算设备300根据确定的紧急因子来分配针对为I/O请求的调度优先级。例如,为此,计算设备300可以针对映射到相对应的优先级等级的一个或多个阈值来评估紧急因子。在一些实施例中,计算设备330可以基于紧急程度超过哪个阈值来将I/O请求分配给给定的优先级等级。
在框622中,计算设备300将I/O请求分组转发到I/O路径中的下一个设备。I/O请求分组包括指示计算设备300处的处理阶段完成的更新的元数据。为此,在框624中,计算设备300更新I/O请求分组中的QoS元数据。例如,计算设备300可以修改表示完成的阶段的位图的位。
现在参考图8,描绘了可以由I/O路径组件(例如,计算设备300)识别的I/O路径进展的示例300的图。如图所示,每个阶段都根据相关联的延迟来描述。每个阶段中的路径和相关联的延迟可以在QoS元数据中表示,例如,作为阶段延迟信息504。说明性地,阶段802指示I/O路径中的是完成的处理阶段。这样的信息可以在QoS元数据中指示,例如,作为完成的阶段信息506。此外,阶段804指示在I/O请求分组到达当前I/O路径分组时未完成的阶段。
计算设备300可以基于由QoS元数据提供的信息来得到到期限的实际时间以及路径上的剩余时间。例如,评估期限信息和时钟数据,计算设备300可以确定到期限的实际时间是250μs。此外,通过评估与阶段804相关联的预期延迟信息,计算设备300可以确定路径上的剩余时间是240μs。这样做允许计算设备300导出紧急因子0.04,然后可以将紧急因子用于确定针对I/O请求的优先级等级。
示例
以下提供本文公开的技术的说明性示例。这些技术的实施例可以包括下面描述的示例中的任何一个或多个,以及任何组合。
示例1包括一种计算设备,其包括通信电路;以及计算引擎,用于由通信电路并且从I/O路径中的多个计算设备中的一个接收I/O请求分组,其中I/O请求分组包括一个或多个服务质量(QoS)期限元数据,其中QoS期限元数据指示与关于指定QoS的工作负载有关的延迟信息;评估一个或多个QoS期限元数据;并根据评估的QoS元数据向I/O请求分组分配优先级。
示例2包括示例1的主题,并且其中,为了评估一个或多个QoS期限元数据,包括:针对QoS期限元数据评估I/O请求分组中的报头。
示例3包括示例1和2中任一项的主题,并且其中评估一个或多个QoS期限元数据包括评估QoS期限、针对I/O路径中的多个阶段中的每个阶段的延迟信息,以及指示I/O路径中的多个阶段中的哪个阶段是完成的信息。
示例4包括示例1-3中任一项的主题,并且其中,为了评估一个或多个QoS期限元数据,还包括:根据QoS期限确定到期限的实际时间;并且根据到期限的实际时间、延迟信息以及指示I/O路径中的多个阶段中的哪个阶段是完成的信息来确定I/O路径上的剩余时间。
示例5包括示例1-4中任一项的主题,并且其中计算引擎还用于根据到期限的实际时间以及I/O路径上的剩余时间确定紧急因子。
示例6包括示例1-5中任一项的主题,并且其中,向I/O请求分组分配优先级包括相对于一个或多个阈值来评估紧急因子,每个阈值对应于一优先级等级。
示例7包括如权利要求6所述的计算设备,其中,计算引擎还用于更新指示I/O路径中的多个阶段中的哪个阶段是完成的信息,并将I/O请求分组转发给I/O路径中的计算设备中的下一个;
示例8包括示例1-7中任一项的主题,并且其中接收I/O请求分组包括接收存储I/O请求分组或网络I/O请求分组中的一个。
示例9包括示例1-8中任一项的主题,并且其中计算引擎还用于强制实施I/O请求分组的分配的优先级。
示例10包括一个或多个存储多个指令的机器可读存储介质,所述指令当在计算设备上执行时,使得计算设备从I/O路径中的多个计算设备中的一个接收I/O请求分组,其中I/O请求分组包括一个或多个服务质量(QoS)期限元数据,其中QoS期限元数据指示相对于指定的QoS的与工作负载有关的延迟信息;评估一个或多个QoS期限元数据;并根据评估的QoS元数据向I/O请求分组分配优先级。
示例11包括示例10的主题,并且其中,评估一个或多个QoS期限元数据包括:针对QoS期限元数据评估I/O请求分组中的报头。
示例12包括示例10和11中任一项的主题,并且其中评估一个或多个QoS期限元数据包括评估QoS期限、针对I/O路径中的多个阶段中的每个阶段的延迟信息,以及指示I/O路径中的多个阶段中的哪个阶段是完成的信息。
示例13包括示例10-12中任一项的主题,并且其中,为了评估一个或多个QoS期限元数据,还包括:根据QoS期限确定到期限的实际时间;并且根据到期限的实际时间、延迟信息以及指示I/O路径中的多个阶段中的哪个阶段是完成的信息来确定I/O路径上的剩余时间。
示例14包括示例10-13中任一项的主题,并且其中多个指令还使得计算设备根据到期限的实际时间和I/O路径上的剩余时间来确定紧急因子。
示例15包括示例10-14中任一示例的主题,并且其中,向I/O请求分组分配优先级包括:关于一个或多个阈值来评估紧急因子,每个阈值与一优先级等级相对应。
示例16包括如权利要求15所述的一个或多个机器可读存储介质,其中,所述多个指令还使得所述计算设备更新指示所述I/O路径中的所述多个阶段中的哪个阶段是完成的信息,并将I/O请求分组转发给I/O路径中的计算设备中的下一个;
示例17包括示例10-16中任一示例的主题,并且其中,接收I/O请求分组用于接收存储I/O请求分组或网络I/O请求分组中的一个。
示例18包括示例10-17中任一项的主题,并且其中,所述多个指令还使计算设备强制实施I/O请求分组的所分配的优先级。
示例19包括一种方法,包括从I/O路径中的多个计算设备中的一个接收I/O请求分组,其中I/O请求分组包括一个或多个服务质量(QoS)期限元数据,其中QoS期限元数据指示相对于指定的QoS的与当前执行的工作负载相关的延迟信息;评估一个或多个QoS期限元数据;并根据评估的QoS元数据向I/O请求分组分配优先级。
示例20包括示例19的主题,并且其中评估一个或多个QoS期限元数据包括针对QoS期限元数据评估I/O请求分组中的报头。
示例21包括示例19和20中任一项的主题,并且其中评估一个或多个QoS期限元数据包括评估QoS期限、针对I/O路径中的多个阶段中的每个阶段的延迟信息,以及指示I/O路径中的多个阶段中的哪个阶段是完成的信息。
示例22包括示例19-21中任一项的主题,并且其中评估一个或多个QoS期限元数据还包括根据QoS期限确定到期限的实际时间;并且根据到期限的实际时间、延迟信息以及指示I/O路径中的多个阶段中的哪个阶段是完成的信息来确定I/O路径上的剩余时间。
示例23包括示例19-22中任一项的主题,并且还包括根据到期限的实际时间和I/O路径上的剩余时间来确定紧急因子。
示例24包括一种计算设备,包括用于从I/O路径中的多个计算设备中的一个接收I/O请求分组的电路,其中I/O请求分组包括一个或多个质量服务(QoS)期限元数据,其中QoS期限元数据指示相对于指定的QoS的与工作负载有关的延迟信息;用于评估一个或多个QoS期限元数据的单元;以及用于根据评估的QoS元数据向I/O请求分组分配优先级的单元。
示例25包括示例24的主题,并且其中用于评估一个或多个QoS期限元数据的单元包括用于针对QoS期限元数据评估I/O请求分组中的报头的单元;以及用于在单元中评估QoS期限、针对I/O路径中的多个阶段中的每个阶段的延迟信息,以及指示I/O路径中的多个阶段中的哪个阶段是完成的信息的单元。

Claims (25)

1.一种系统,包括:
通信电路;以及
计算引擎,其用于:
由所述通信电路并且从I/O路径中的多个设备中的一个设备接收I/O请求分组,其中,所述I/O请求分组包括一个或多个服务质量(QoS)期限元数据,其中,所述QoS期限元数据指示相对于指定的QoS的与工作负载相关的延迟信息;
评估所述一个或多个QoS期限元数据;以及
根据评估的QoS元数据向所述I/O请求分组分配优先级。
2.如权利要求1所述的系统,其中,评估所述一个或多个QoS期限元数据包括:
评估针对所述QoS期限元数据的所述I/O请求分组中的报头。
3.如权利要求1所述的系统,其中,评估所述一个或多个QoS期限元数据包括:
评估QoS期限、针对所述I/O路径中的多个阶段中的每个阶段的延迟信息以及指示所述I/O路径中的多个阶段中的哪个阶段是完成的的信息。
4.如权利要求2所述的系统,其中,评估所述一个或多个QoS期限元数据还包括:
根据所述QoS期限来确定到期限的实际时间;以及
根据所述到期限的实际时间、所述延迟信息以及指示所述I/O路径中的多个阶段中的哪个阶段是完成的的所述信息来确定所述I/O路径上的剩余时间。
5.如权利要求4所述的系统,其中,所述计算引擎还用于根据所述到期限的实际时间以及所述I/O路径上的剩余时间来确定紧急因子。
6.如权利要求5所述的系统,其中,向所述I/O请求分组分配所述优先级包括关于一个或多个阈值来评估所述紧急因子,每个阈值与一优先级等级相对应。
7.如权利要求6所述的系统,其中,所述计算引擎还用于:
更新指示所述I/O路径中的多个阶段中的哪个阶段是完成的的所述信息;以及
将所述I/O请求分组转发到所述I/O路径中的计算设备中的下一个计算设备。
8.如权利要求1所述的系统,其中,接收所述I/O请求分组包括接收存储I/O请求分组或网络I/O请求分组中的一个。
9.如权利要求1所述的系统,其中,所述计算引擎还用于:
强制实施所述I/O请求分组的指定的优先级。
10.如权利要求1所述的系统,其中,所述系统与所述I/O路径中的多个设备的一部分连接并且作为所述I/O路径中的多个设备的一部分。
11.一种系统,包括:
用于从I/O路径中的多个设备中的一个设备接收I/O请求分组的电路,其中,所述I/O请求分组包括一个或多个服务质量(QoS)期限元数据,其中,所述QoS期限元数据指示相对于指定的QoS的与工作负载相关的延迟信息;
用于评估所述一个或多个QoS期限元数据的单元;以及
用于根据评估的QoS元数据向所述I/O请求分组分配优先级的单元。
12.如权利要求11所述的系统,其中,用于评估所述一个或多个QoS期限元数据的所述单元包括用于评估针对所述QoS期限元数据的所述I/O 请求分组中的报头的单元。
13.如权利要求11所述的系统,其中,用于评估所述一个或多个QoS期限元数据的所述单元包括:
用于评估QoS期限、针对所述I/O路径中的多个阶段中的每个阶段的延迟信息以及指示所述I/O路径中的多个阶段中的哪个阶段是完成的的信息的单元。
14.如权利要求12所述的系统,其中,用于评估所述一个或多个QoS期限元数据的所述单元还包括:
用于根据所述QoS期限来确定到期限的实际时间的单元;以及
用于根据所述到期限的实际时间、所述延迟信息以及指示所述I/O路径中的多个阶段中的哪个阶段是完成的的所述信息来确定所述I/O路径上的剩余时间的单元。
15.如权利要求14所述的系统,还包括用于根据所述到期限的实际时间和所述I/O路径上的剩余时间来确定紧急因子的单元。
16.如权利要求15所述的系统,其中,用于向所述I/O请求分组分配所述优先级的所述单元包括用于关于一个或多个阈值来评估所述紧急因子的单元,每个阈值与一优先级等级相对应。
17.如权利要求16所述的系统,还包括:
用于更新指示所述I/O路径中的多个阶段中的哪个阶段是完成的的所述信息的单元;以及
用于将所述I/O请求分组转发给所述I/O路径中的计算设备中的下一个计算设备的电路。
18.如权利要求11所述的系统,其中,用于接收所述I/O请求分组的所述电路包括用于接收存储I/O请求分组或网络I/O请求分组中的一个的电路。
19.如权利要求11所述的系统,还包括用于强制实施所述I/O请求分组的分配的优先级的单元。
20.如权利要求11所述的系统,其中,所述系统与所述I/O路径中的多个设备的一部分连接并且作为所述I/O路径中的多个设备的一部分。
21.一种方法,包括:
从I/O路径中的多个设备中的一个设备接收I/O请求分组,其中,所述I/O请求分组包括一个或多个服务质量(QoS)期限元数据,其中,所述QoS期限元数据指示相对于指定的QoS的与工作负载相关的延迟信息;
评估所述一个或多个QoS期限元数据;以及
根据评估的QoS元数据向所述I/O请求分组分配优先级。
22.如权利要求21所述的方法,其中,评估所述一个或多个QoS期限元数据包括评估针对所述QoS期限元数据的所述I/O请求分组中的报头。
23.如权利要求21所述的方法,其中,评估所述一个或多个QoS期限元数据包括评估QoS期限、针对所述I/O路径中的多个阶段中的每个阶段的延迟信息以及指示所述I/O路径中的多个阶段中的哪个阶段是完成的的信息。
24.如权利要求22所述的方法,其中,评估所述一个或多个QoS期限元数据还包括:
根据所述QoS期限确定到期限的实际时间;以及
根据所述到期限的实际时间、所述延迟信息以及指示所述I/O路径中的多个阶段中的哪个阶段是完成的的所述信息来确定所述I/O路径上的剩余时间。
25.如权利要求24所述的方法,还包括根据所述到期限的实际时间和所述I/O路径上的剩余时间来确定紧急因子,其中,向所述I/O请求分组分配所述优先级包括用于关于一个或多个阈值来评估所述紧急因子的单元,每个阈值与一优先级等级相对应。
CN201910451966.XA 2018-06-28 2019-05-28 用于端到端服务质量期限感知的i/o调度的技术 Pending CN110659114A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/021,827 2018-06-28
US16/021,827 US11025745B2 (en) 2018-06-28 2018-06-28 Technologies for end-to-end quality of service deadline-aware I/O scheduling

Publications (1)

Publication Number Publication Date
CN110659114A true CN110659114A (zh) 2020-01-07

Family

ID=65231238

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910451966.XA Pending CN110659114A (zh) 2018-06-28 2019-05-28 用于端到端服务质量期限感知的i/o调度的技术

Country Status (3)

Country Link
US (1) US11025745B2 (zh)
CN (1) CN110659114A (zh)
DE (1) DE102019112772A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111046007B (zh) * 2018-10-12 2023-08-18 伊姆西Ip控股有限责任公司 管理存储系统的方法、装置和计算机程序产品
US11609775B2 (en) * 2019-04-30 2023-03-21 Rubrik, Inc. Systems and methods for continuous data protection comprising storage of completed I/O requests intercepted from an I/O stream using touch points
US11500664B2 (en) 2019-04-30 2022-11-15 Rubrik, Inc. Systems and method for continuous data protection and recovery by implementing a set of algorithms based on the length of I/O data streams
US11663092B2 (en) 2019-04-30 2023-05-30 Rubrik, Inc. Systems and methods for continuous data protection
US11663089B2 (en) 2019-04-30 2023-05-30 Rubrik, Inc. Systems and methods for continuous data protection
US20220345945A1 (en) * 2019-09-19 2022-10-27 Sony Group Corporation Wireless terminal apparatus, communication control method, communication control program, and base station
US11656782B2 (en) * 2019-10-30 2023-05-23 Dell Products L.P. Global deadline driven local synchronous replication I/O handling and recover
US20210397526A1 (en) * 2020-06-18 2021-12-23 General Electric Company Systems and methods of providing an abstraction layer between an application layer and hardware components of a computing device
US11146485B1 (en) * 2021-02-22 2021-10-12 Rad Data Communications Ltd. Time sensitive network programming

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060248182A1 (en) * 2005-05-02 2006-11-02 Polycentric Networks Corporation Formatted and/or tunable QoS data publication, subscription, and/or distribution including dynamic network formation
US8489722B2 (en) * 2009-11-24 2013-07-16 International Business Machines Corporation System and method for providing quality of service in wide area messaging fabric
US8707316B1 (en) * 2012-01-05 2014-04-22 The Boeing Company Methods and systems for mission-driven quality of service management
US20140185628A1 (en) * 2012-12-28 2014-07-03 Broadcom Corporation Deadline aware queue management
US10237889B2 (en) * 2015-12-09 2019-03-19 Qualcomm Incorporated Conditional uplink grant
US10805222B2 (en) * 2017-05-01 2020-10-13 General Electric Company Resilient network configuration for time sensitive traffic
WO2017219148A1 (en) * 2016-06-24 2017-12-28 The University Of Western Ontario System, method, and apparatus for end-to-end synchronization, adaptive link resource reservation and data tunnelling
US10560383B2 (en) * 2016-11-10 2020-02-11 Futurewei Technologies, Inc. Network latency scheduling
CN109725829B (zh) * 2017-10-27 2021-11-05 伊姆西Ip控股有限责任公司 用于数据存储系统的端到端QoS解决方案的系统和方法

Also Published As

Publication number Publication date
US11025745B2 (en) 2021-06-01
DE102019112772A1 (de) 2020-01-02
US20190045028A1 (en) 2019-02-07

Similar Documents

Publication Publication Date Title
US11025745B2 (en) Technologies for end-to-end quality of service deadline-aware I/O scheduling
US11922227B2 (en) Technologies for providing efficient migration of services at a cloud edge
US11880714B2 (en) Technologies for providing dynamic selection of edge and local accelerator resources
US11494212B2 (en) Technologies for adaptive platform resource assignment
US11695628B2 (en) Technologies for autonomous edge compute instance optimization and auto-healing using local hardware platform QoS services
US10652108B2 (en) Techniques to establish service level agreements or quality of service for remotely accessible storage devices
US10444722B2 (en) Techniques to direct access requests to storage devices
US20170075838A1 (en) Quality of service in interconnects with multi-stage arbitration
US11265235B2 (en) Technologies for capturing processing resource metrics as a function of time
EP3629189A2 (en) Technologies for using a hardware queue manager as a virtual guest to host networking interface
US20210377150A1 (en) Memory pooled time sensitive networking based architectures
CN114661457A (zh) 管理服务质量强制实施和存储器间的迁移的存储器控制器
US20220197563A1 (en) Qos traffic class latency model for just-in-time (jit) schedulers
US20190042133A1 (en) Technologies for providing adaptive data access request routing in a distributed storage system
CN104486442A (zh) 分布式存储系统的数据传输方法、装置
US11431648B2 (en) Technologies for providing adaptive utilization of different interconnects for workloads
US10178041B2 (en) Technologies for aggregation-based message synchronization
US11210195B2 (en) Dynamic device-determined storage performance
CN116301667A (zh) 一种数据库系统,数据访问方法、装置、设备及存储介质
EP3771164B1 (en) Technologies for providing adaptive polling of packet queues
EP3758296A1 (en) Technologies for transmit scheduler dynamic configurations
US11868287B2 (en) Just-in-time (JIT) scheduler for memory subsystems
US20220129329A1 (en) Technologies for managing data wait barrier operations
CN107870733B (zh) 一种为命名空间提供服务质量的方法
US20190042308A1 (en) Technologies for providing efficient scheduling of functions

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