CN102652305A - 虚拟存储目标卸载技术 - Google Patents
虚拟存储目标卸载技术 Download PDFInfo
- Publication number
- CN102652305A CN102652305A CN2010800577574A CN201080057757A CN102652305A CN 102652305 A CN102652305 A CN 102652305A CN 2010800577574 A CN2010800577574 A CN 2010800577574A CN 201080057757 A CN201080057757 A CN 201080057757A CN 102652305 A CN102652305 A CN 102652305A
- Authority
- CN
- China
- Prior art keywords
- stores service
- network
- virtual
- virtual machine
- child partition
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45537—Provision of facilities of other operating environments, e.g. WINE
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/17—Interprocessor communication using an input/output type connection, e.g. channel, I/O port
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0665—Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45579—I/O management, e.g. providing access to device drivers or storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols 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)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Multi Processors (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Stored Programmes (AREA)
Abstract
一种虚拟机存储服务可以使用唯一的网络标识符,以及一种SR-IOV兼容设备可以用于在虚拟机与虚拟机存储服务之间传输I/O。虚拟机存储服务可以被卸载到子分区或与所述唯一网络标识符一起被迁移到另一个物理机器。
Description
背景技术
虚拟机技术可以用于打包工作负载并在数据中心中移动它。这种将工作负载从一个物理主机移动到另一个物理主机的能力对用户有极大的益处,因为它允许动态机器合并,这导致低得多的硬件和管理成本。虚拟机典型地通过处理位于管理程序、管理分区或其组合内的存储虚拟化的模块来访问存储。在该模型中,虚拟机典型地经由诸如内部分区通信总线(如在题为“Partition
Bus”的美国申请No.11/128,647中描述的示例分区总线,该申请的内容通过引用被整体合并于此)之类的软件通信路径向所述模块发送存储I/O请求。虚拟机与管理程序(或管理分区)之间的通信由于运行通信路径和在传输消息时可能发生的任何上下文切换而引发(incur)CPU循环成本(cycle cost)。因此,用于通过减少CPU成本来增加处理I/O请求的效率的技术是所期望的。
发明内容
本公开的一个示例实施例描述了一种方法。在该示例中,该方法包括但不限于:实现(effectuate)可迁移存储服务,其中该可迁移存储服务被配置成管理针对子分区的虚拟硬盘输入/输出请求,其中该可迁移存储服务被分配用于网络的唯一网络标识符;以及将该可迁移存储服务配置为网络中的存储目标。除前述之外,在形成本公开的一部分的权利要求、附图和文本中描述了其他方面。
本公开的一个示例实施例描述了一种方法。在该示例中,该方法包括但不限于:将用于网络适配器的第一唯一网络标识符附加(attach)到被配置成管理针对子分区的虚拟硬盘输入/输出请求的存储服务;以及将由网络适配器实现的虚拟功能(function)附加到子分区,其中该虚拟功能包括第二唯一网络标识符。除了前述之外,在形成本公开的一部分的权利要求、附图和文本中描述了其他方面。
本公开的一个示例实施例描述了一种方法。在该示例中,该方法包括但不限于:在子分区中执行存储服务,其中该存储服务被配置成管理针对第二子分区的虚拟硬盘驱动器输入/输出请求,其中该存储服务在网络中被分配唯一网络标识符。除了前述之外,在形成本公开的一部分的权利要求、附图和文本中描述了其他方面。
本领域技术人员可以领会本公开的一个或多个不同的方面可以包括但不限于:用于实现本文所引用的本公开的各方面的电路和/或编程;所述电路和编程事实上可以是被配置成依据系统设计者的设计选择实现本文所引用的各方面的硬件、软件和/或固件的任意组合。
前述是概要,并且因此必然包含细节的简化、概括和省略。本领域技术人员将领会该概要仅是说明性的,而并未打算以任何方式进行限制。
附图说明
图1描绘了示例计算机系统,其中可以实现本公开的各方面。
图2描绘了用于实践本公开的各方面的操作环境。
图3描绘了用于实践本公开的各方面的操作环境。
图4图示了包括SR-IOV兼容网络设备的计算机系统。
图5图示了虚拟化环境中存储器间的关系。
图6描绘了本公开的一个实施例。
图7描绘了用于图示本公开的各方面的操作环境。
图8描绘了用于实践本公开的各方面的操作过程。
图9描绘了图8的操作过程的可替代实施例。
图10描绘了用于实践本公开的各方面的操作过程。
图11描绘了图10的操作过程的可替代实施例。
图12描绘了用于实践本公开的各方面的操作过程。
图13描绘了图12的操作过程的可替代实施例。
具体实施方式
诸实施例可以在一个或多个计算机系统上执行。图1和下面的讨论旨在提供对本公开可以在其中实现的适当计算环境的简短的概述。
贯穿本公开使用的术语电路可以包括硬件组件(比如硬件中断控制器、硬盘驱动器、网络适配器、图形处理器、基于硬件的视频/音频编解码器)和用于操作这种硬件的固件。术语电路还可以包括微处理器、专用集成电路和/或一个或多个逻辑处理器,例如由固件和/或软件配置的多内核(core)通用处理单元中的一个或多个内核。(多个)逻辑处理器可以由体现可操作逻辑的指令配置来执行从存储器(例如RAM、ROM、固件和/或大容量存储)加载的(多个)功能。在一个示例实施例中,其中电路包括硬件和软件的组合,实现者可以写体现逻辑的源代码,其随后被编译成可以被逻辑处理器执行的机器可读代码。由于本领域技术人员可以领会目前的技术水平已经发展到在硬件实现的功能或软件实现的功能之间几乎不存在差异的阶段,因此对实现本文所述的功能的软件和硬件的选择仅仅是设计选择。换言之,由于本领域技术人员可以领会软件过程可以被转换成等价的硬件结构,并且硬件结构本身可以被转换成等价的软件过程,对硬件实现方式和软件实现方式的选择留给实现者。
现在参照图1,描绘了示例性计算系统100。计算机系统100可以包括逻辑处理器102,例如执行内核的超线程。尽管图示了一个逻辑处理器102,但是在其他实施例中计算机系统100可以具有多个逻辑处理器,例如每个处理器衬底具有的多个执行内核和/或其中每一个处理器衬底可以具有多个执行内核的多个处理器衬底。如图所示,各种计算机可读存储介质110可以通过将各种系统组件耦合到逻辑处理器102的一条或多条系统总线互连。系统总线可以是若干类型的总线结构的任一种,所述若干类型的总线结构包括存储器总线或存储器控制器、外围总线和使用多种总线架构的任一种的局部总线。在示例实施例中,计算机可读存储介质110可以包括例如随机存取存储器(RAM)104、存储设备106(例如机电硬盘驱动器、固态硬盘驱动器等)、固件108(例如FLASH RAM或ROM)和可移动存储设备118(比如CD-ROM、软盘、DVD、FLASH驱动器、外部存储设备等)。本领域技术人员应当领会可以使用其他类型的计算机可读介质,比如盒式磁带、闪存卡、数字视频盘、伯努利(Bernoulli)盒。
计算机可读存储介质110可以提供用于计算机100的处理器可执行指令122、数据结构、程序模块和其他数据的非易失性和易失性存储。包含在启动期间有助于在计算机系统100内的元件之间传递信息的基本例行程序的基本输入/输出系统(BIOS)120可以存储在固件108中。多个程序可以存储在固件108、存储设备106、RAM 104和/或可移动存储设备118中并且可以由包括操作系统和/或应用程序的逻辑处理器102执行。
计算机100可以通过输入设备116接收命令和信息,输入设备116可以包括但不限于键盘和指点设备。其他输入设备可以包括话筒、操纵杆、游戏手柄(pad)、扫描仪等等。这些和其他输入设备可以通过耦合到系统总线的串行端口接口而被连接到逻辑处理器102,并且经常通过诸如通用串行总线端口(USB)之类的其他接口而被连接。显示器或其他类型的显示设备也可以经由诸如视频适配器(可以是图形处理器112的一部分或被连接到图形处理器112)之类的接口而被连接到系统总线。除了显示器之外,计算机典型地包括其他外围输出设备(未示出),比如扬声器和打印机。图1的示例性系统还可以包括主机适配器、小型计算机系统接口(SCSI)总线和连接到SCSI总线的外部存储设备。
计算机系统100可以在使用到远程计算机的逻辑连接的联网环境中操作。该远程计算机可以是另一个计算机、服务器、路由器、网络PC、对等设备或其他普通的网络节点,并且典型地可以包括上文相对于计算机系统100描述的许多或所有元件。
当在LAN或WAN联网环境中使用时,计算机系统100可以通过网络接口卡114连接到LAN或WAN。NIC 114(其可以是内部或外部的)可以连接到逻辑处理器。在联网环境中,相对于计算机系统100描绘的程序模块或其部分可以存储在远程存储器存储设备中。应当领会,这里描述的网络连接是示例性的,并且可以使用在计算机之间建立通信链接的其他手段。而且,尽管设想了本公开的多个实施例特别良好地适合于计算机化的系统,但是在该文档中内容并不打算将本公开限制于这样的实施例。
现在参照图2和3,它们描绘了被配置成实现虚拟机的计算机系统200和300的高级框图。在本公开的示例实施例中,计算机系统200和300可以包括图1中所描述的元素和可操作以实现虚拟机的组件。转到图2,一个这样的组件是管理程序(hypervisor)202,其在本领域中也可以被称为虚拟机监视器。所描绘的实施例中的管理程序202可以被配置成控制和仲裁对计算机系统100的硬件的访问。广义上说,管理程序202可以生成被称为分区(例如,虚拟机)的执行环境。在实施例中,子分区可以被认为是由管理程序202支持的隔离(isolation)的基本单元。即,每个子分区(246和248)可以被映射到在管理程序202控制下的一组硬件资源,例如存储器、设备、逻辑处理器循环等等,并且/或者父分区和管理程序202可以隔离一个分区中的进程(process)以免访问另一个分区的资源,例如可以将一个分区中的客户操作系统与另一个分区中的存储器隔离。在实施例中,管理程序202可以是孤立的软件产品、操作系统的一部分、嵌入在主板的固件中、专用集成电路或其组合。
在所描绘的示例中,计算机系统100包括父分区204,其也可以被看作类似于开源社区中的域0。父社区204可以被配置成通过使用典型地在开源社区中被称为后端驱动器的虚拟化服务提供器(VSP)向在子分区中执行的客户操作系统提供资源。在该示例架构中,父分区204可以控制(gate)对底层硬件的访问。广义上说,VSP 228可以用于通过虚拟化服务客户端(VSC)(在开源社区中典型地被称为前端驱动器)将接口复用到硬件资源。每个子分区可以包括一个或多个虚拟处理器,比如虚拟处理器230到232,客户操作系统220到222可以管理并调度线程以在其上执行。一般地,虚拟处理器230到232是可执行指令和相关联的状态信息,其提供具有特定架构的物理处理器的表示。例如,一个子分区可以具有含Intel
x86处理器的特性的虚拟处理器,而另一个虚拟处理器可以具有PowerPC处理器的特性。该示例中的虚拟处理器可以被映射到计算机系统的逻辑处理器,使得指令的虚拟处理器执行由逻辑处理器支持。因此,在这些示例实施例中,多个虚拟处理器可以同时执行,而例如另一个逻辑处理器执行管理程序指令。分区中虚拟处理器、各种VSC和存储器的组合可以被认为是虚拟机。
客户操作系统220至222可以包括任何操作系统,比如来自Microsoft®、Apple®、开源社区等的操作系统。客户操作系统可以使用用户/内核操作模式,并且可以具有可以包括调度器、存储器管理器等的内核。每个客户操作系统220至222可以具有相关联的文件系统以及客户操作系统自身,相关联的文件系统可以具有存储在其上的应用,比如终端服务器、电子商务服务器、电子邮件服务器等。客户操作系统220-222可以调度线程以在虚拟处理器230-232上执行,并且这样的应用的实例可以被实现。
现在参照图3,它图示了上文图2中所述的架构的可替代架构。图3描绘了与图2相似的组件;然而,在该示例实施例中,管理程序202可以包括虚拟化服务提供器228和设备驱动器224,并且父分区204可以包含配置工具236。在该架构中,管理程序202可以执行与图2的管理程序202相同或相似的功能。图3的管理程序202可以是孤立的软件产品、操作系统的一部分、嵌入在主板的固件中,或者管理程序202的一部分可以通过专用集成电路实现。在该示例中,父分区204可以具有可以用于配置管理程序202的指令,然而硬件访问请求可以由管理程序202处理,而不被传送到父分区204。
在本公开的实施例中,符合清楚地通过整体引用合并于此的“Single Root Input/Output Virtualization
specification(单根输入/输出虚拟化规范)”修正版1.0的网络适配器可以安装在诸如附图中所描述的计算机系统中。示例适配器可以是来自Intel®的“Gigabit ET Dual Port Server Adapter(千兆位ET双端口服务器适配器)”。有SR-IOV能力的网络设备是可以通过虚拟化接口为物理功能而在例如虚拟机或任何其他进程之间共享I/O适配器的硬件设备。每个虚拟化接口(也被称为虚拟功能(VF))大致表现为在计算机系统的高速PCI总线上的单独的网络接口卡。例如,每个虚拟功能可以具有仿真的PCI配置空间和唯一网络标识符,例如介质访问控制地址(MAC地址)、全球名称等。因此,每个虚拟功能可以支持用于访问物理功能的唯一地寻址且强分区的单独路径。
转到图4,它图示了计算机系统400,其包括SR-IOV兼容适配器402(“适配器”)。类似于上文所述,计算机系统400可以包括类似于上文关于图1-3的组件的组件。适配器402可以包括物理功能410,该物理功能可以对应于可以连接到网络和内部路由器412的端口。内部路由器412可以被配置成向和从诸如分配给虚拟功能404或406的、适配器402的网络标识符420-424路由数据,所述适配器例如是均具有虚拟端口的虚拟适配器。
在示例实施例中,网络适配器402可以是以太网适配器,并且虚拟功能可以是虚拟以太网适配器。在该示例中,虚拟功能的唯一标识符将是以太网MAC地址。在光纤信道示例中,适配器402可以是光纤信道主机总线适配器,并且虚拟功能可以是具有全球名称的虚拟光纤信道主机总线适配器,全球名称包括全球节点名称和全球端口名称。在无限带宽示例中,虚拟功能可以是具有全局标识符的虚拟无限带宽端点。
网络标识符424以虚线示出,其指示诸如光纤信道主机总线适配器或以太网适配器之类的网络适配器可以允许多个唯一标识符共享单个物理端口。在光纤信道中,该能力被称为N_端口ID虚拟化或NPIV,并且在以太网中适配器可以以被称为混杂模式的模式操作,包括嵌入式虚拟交换机,或过滤和路由针对特定MAC地址寻址的数据以分隔存储器缓冲器。
每个网络标识符可能与软件协议栈(414-418)相关联,软件协议栈被配置成格式化信息以使得此信息可以通过网络被发送。在特定的TCP/IP示例中,进程可以通过应用层端口绑定到TCP/IP栈的应用层的实例。最后,由协议栈的不同功能处理的信息可以由存在于被称为介质控制层的层中的一组功能来处理,该介质访问控制层负责装配可以通过织物发送的数据的帧(frame)。协议栈的该层将用于虚拟功能的介质访问控制地址添加到在网络上发送出的帧。协议栈然后将装配的帧传递到物理层,物理层被配置成将帧中的信息转换为电信号并将所述帧发送到网络。
输入/输出存储器管理单元426(I/O-MMU)可以用于将可以执行直接存储器访问操作的I/O互连(比如高速PCI互连)耦合到RAM。在本公开的实施例中,I/O-MMU 426可以包括来自管理程序202的页表,其将来自分区的客户物理地址转换成系统物理地址。I/O-MMU 426以虚线示出,其指示他可以存在于计算机系统400中的多个位置中。例如,I/O-MMU可以是主板上的芯片或逻辑处理器的组件。
图5图示了在本公开的一个实施例中客户物理地址与系统物理地址之间的关系。客户存储器是由管理程序202控制的存储器视图(view)。客户存储器可以被分配给客户操作系统并且由它们的存储器管理器控制。客户物理地址可以由系统物理地址(SPA)支持(back),例如由管理程序202管理的物理计算机系统的存储器。如图所示,在实施例中,GPA和SPA可以被安排为存储器块,例如存储器的一个或多个页面。GPA与SPA之间的关系可以由影子页表保持,这些页表诸如题为“Enhanced Shadow Page Table Algorithms(增强影子页表算法)”的共同受让的美国专利申请No11/128,665中所述的页表,该文献的内容通过整体引用合并于此。在操作中,当客户操作系统在GPA块1中存储数据时,该数据实际上可以存储在不同的SPA中,比如系统上的块6。在本公开的实施例中,I/O-MMU 426可以在I/O操作期间执行转换以将存储数据直接从一个GPA空间移动到另一个GPA空间。在该实施例中,由于不需要在管理程序指令中运行来实现这些转换,从而可以节省逻辑处理器循环。
图6图示了用于描述虚拟存储目标卸载技术的高级操作环境。图6示出经由SR-IOV网络适配器402及其虚拟功能406而与存储虚拟化客户端604通信的虚拟机存储服务602。如图所示,在本公开的该实施例中,SR-IOV网络适配器402可以用于通过绕过(bypassing)软件通信路径而在虚拟机与虚拟机存储服务之间传输I/O。这反过来减少了用于执行用于虚拟机的I/O的CPU循环的量,增加了迁移存储服务602的能力,以及潜在地减少了在父分区中执行的主机操作系统上的负担和/或管理程序202上的负担。
虚拟机存储服务602可以被配置成与物理存储设备通信,这些物理存储设备例如是由代表子分区的SAN提供的逻辑单元编号(LUN),所述编号例如可能是已经用其他存储虚拟化技术虚拟化的短剑(dirk)。在一个实例中,这可以包括配置虚拟机存储服务602以从虚拟机接收I/O请求并将它们路由到LUN。在另一个实例中,其中LUN是次分配的,虚拟机存储服务602可以配置成:生成虚拟硬盘驱动器;将它们暴露于虚拟机;以及将它们作为虚拟机硬盘驱动器(VHD)文件存储在LUN上或物理驱动器上。VHD文件表示可以被封装在单个文件内的虚拟机硬盘。虚拟机存储服务602可以解析该文件并将可以被暴露于客户操作系统220的盘实现为好像它是物理存储。由虚拟机存储服务602生成的虚拟硬盘可以被表示给总线,该总线能够以这些虚拟硬盘看起来好像在本地的方式访问客户操作系统。
在本公开的一个实施例中,可以通过将唯一网络标识符附加到虚拟机存储服务602并且例如将用于广告虚拟机存储服务602的存储目标参数配置为数据中心的存储目标,而将虚拟机存储服务602配置成为网络中的存储目标,比如光纤信道目标或互联网小型计算机系统接口(iSCSI)目标。在iSCSI示例环境中,虚拟机存储服务602可以通过实现可通过因特网协议访问子分区的LUN来实施iSCSI目标。虚拟机存储客户端604或客户操作系统可以获得虚拟机存储服务602的地址,并且可以设置仿真到SCSI硬盘的连接的连接。虚拟机存储客户端604可以与处理SCSI或硬盘驱动器相同的方式处理虚拟机存储服务602,并且虚拟机存储服务602可以将虚拟硬盘驱动器提供(serve up)给子分区。在该示例中,虚拟机存储客户端604可以在直接由虚拟机存储服务602提供的虚拟盘上创建并管理的文件系统,而不必加载(mount)远程目录,如在联网文件系统环境中要做的那样。根据客户OS
220的观点,它具有耦合到网络的网络适配器,该网络耦合到以类似于硬盘驱动器的方式运作的一个或多个逻辑单元。
图7图示了用于实践本公开的各方面的示例操作环境。类似于图6,一个或多个SR-IOV网络适配器可以用于在虚拟机与虚拟机存储服务之间传输I/O,从而消除使用软件通信路径发送I/O的需要。这减少了用于执行针对虚拟机的I/O的CPU循环的量,增加了迁移存储服务602的能力,以及潜在地减少主机操作系统上的负担和/或管理程序202上的负担。
在该示例环境中,包括两个计算机系统700和702的数据中心被图示为连接到交换机704(尽管示出了两个计算机系统,但是本领域技术人员可以领会数据中心可以具有更多的计算机系统)。计算机系统700和702可以具有类似于图1-4中所述的组件,并且交换机704可以是互连的交换机和路由器的整个基础设施。而且,计算机系统700和702被图示为包括某些特征以更清楚地解释本文所公开的技术,并且本公开不限于在所描绘的拓扑结构中实现。
计算机系统700可以包括管理器250,其被配置成根据本文所述的技术迁移存储服务602,从而虚拟机存储服务602以虚线图示以指示它可以从一个分区迁移到相同或不同计算机系统中的另一个分区。虚拟功能706和708以虚线示出以指示:在某些实施例中虚拟机存储服务602可以直接与SR-IOV适配器402联系,而无须经由虚拟功能访问它。在该示例实施例中,父分区204和712可以控制物理硬件,并且将不需要虚拟功能。
继续该图的概述,在本公开的实施例中,虚拟机存储服务602可以通过提取分配给它的唯一标识符并将该标识符连同任何必需的状态信息一起移动到不同的分区来迁移。在一个实例中,该过程可以包括:由逻辑处理器运行管理器250提取唯一标识符;由逻辑处理器运行管理器250命令适配器(402或718)将该唯一标识符附加到不同分区中的虚拟功能;以及由逻辑处理器运行管理器250命令虚拟机存储服务602的实例将它自己附加到虚拟功能。在另一个实例中,该过程可以包括:由逻辑处理器运行管理器250提取唯一标识符;由逻辑处理器运行管理器250命令适配器(402或718)将该唯一标识符附加到适配器(402或718);以及由逻辑处理器运行管理器250命令在不同分区中实例化的虚拟机存储服务602的实例使用该唯一标识符在织物上通信。
下文是一系列描绘操作过程的流程图。为了易于理解,这些流程图被组织成使得初始的流程图经由全局“大图”视点呈现实现方式,而后续的流程图提供进一步的附加物和/或细节。而且,本领域技术人员可以领会,用虚线所描绘的操作被认为是可选的。
现在参照图8,它图示了用于实践本公开的各方面的操作过程。如图所示,操作800开始操作过程并且操作802示出了实现可迁移存储服务,其中该可迁移存储服务被配置成管理用于子分区的虚拟硬盘输入/输出请求,其中该可迁移存储服务被分配用于网络的唯一标识符。例如,且转到图6,诸如虚拟机存储服务602之类的可迁移存储服务可以由计算机系统实现。即,指示虚拟机存储服务602的指令可以由逻辑处理器来执行。虚拟机存储服务602被认为是可迁移的,因为它被附属于唯一网络标识符并且可以独自从一个分区移动到另一个分区,即不移动其他管理模块。
在一个示例实施例中,虚拟机存储服务602可以在网络上专有地使用唯一标识符,例如它可以是使用唯一网络地址在数据中心中通信的唯一进程。在该示例中,虚拟机存储服务602可以被配置成序列化它自己的状态,使得状态信息可以被发送到不同的分区并且被用于配置虚拟机存储服务602的另一个实例。在另一个示例实施例中,虚拟机存储服务602可以在附属于虚拟功能的虚拟机中运行。在该示例中,虚拟机存储服务602还可以使用唯一标识符在网络中专有地通信。迁移虚拟机存储服务602可以包括序列化包括虚拟机存储服务602的虚拟机的状态并将其发送到另一个分区。
在特定示例中,且转到图7,虚拟机存储服务602可以从父分区204迁移到子分区246。在该特定示例中,逻辑处理器可以运行管理器250,即逻辑处理器可以运行指示管理器250的指令,并且提取由虚拟机存储服务602用来在数据中心中通信的唯一标识符。然后,该唯一标识符可以被发送到子分区246并且虚拟机存储服务602的实例可被启动。适配器402中的路由表可以被更新并且I/O请求可以被适配器402路由到子分区246而非父分区204。在该示例中,子分区246可被配置成使用除了已经使用的任何其他唯一标识符之外的唯一标识符。
继续图8的描述,操作804示出将可迁移存储服务配置为网络中的存储目标。例如,在本公开的一个示例中,虚拟机存储服务602可被配置成数据中心中的存储目标。类似于上文的描述,虚拟机存储服务602可以附属于网络中的唯一标识符并且被客户OS
220检测为存储目标。可以在客户OS 220与虚拟机存储服务602之间开启通信会话,并且客户OS 220可以检测由虚拟机存储服务602暴露的虚拟硬盘驱动器以及使用该虚拟盘,好像它们是本地硬盘驱动器。在特定示例中,虚拟机存储服务602可以仿真如上所述的iSCSI目标。在该示例中,虚拟机存储服务602可以暴露虚拟盘而非物理盘并且通过读取或写入LUN或物理盘来处理来自虚拟机的I/O。
转到图9,它图示了图8的操作过程的可替代实施例。操作906示出将可迁移存储服务迁移到远程计算机系统。例如,且转到图6,在一个实施例中,可迁移存储服务(例如虚拟机存储服务602)可以被迁移到数据中心中的远程计算机系统。例如,在一个实施例中,远程计算机系统可以具有比当前托管(host)虚拟机存储服务602的计算机系统更多可用的I/O带宽,并且可以做出移动存储服务602的决定。在该示例中,逻辑处理器可以运行管理器250并且提取分配给存储服务602的唯一标识符且将其发送到远程计算机。随后,远程计算机的管理器250可以将唯一标识符附加到存储服务602的实例。
在特定示例中,且转到图7,虚拟机存储服务602可以从子分区246迁移到父分区712。在该特定示例中,计算机系统700的管理器250可以提取附加到虚拟机存储服务602的唯一标识符并将其发送到计算机系统702。计算机系统702的管理器250可以在逻辑处理器上运行并且将唯一标识符附加到在父分区712中运行的虚拟机存储服务602的实例。在该示例中,虚拟存储服务602在通过使用或不使用虚拟功能708从由子分区246中的虚拟机存储服务602服务的客户发送/接收I/O时,可以使用唯一标识符。
在该特定示例中,虚拟机存储服务602的状态信息和协议栈可被发送到计算机系统702,使得I/O服务可是不间断的。例如,可以向计算机系统702发送足够的信息,以允许计算机系统702的管理器250配置协议栈以至少反映计算机系统700的协议栈的功能等效状态。状态信息可以包括要被发送的下一个分组的号、被使用的套接字号、最大缓冲区大小、服务器端口号、客户端端口号等等。状态信息还可以包括诸如更高级别协议信息之类的信息。其他示例可以是涉及所使用的加密协议的信息。
在该示例实施例中,针对客户端的服务将不间断地操作,因为根据客户端的观点,连接被暂停而非掉线。例如,当虚拟机存储服务602被迁移时,协议栈可以总结(wrap-up)当前它正在执行的操作(例如通过完成或取消这些操作),并且可选地向绑定到请求协议在短时间段内保持不发送信息的虚拟机存储客户端604的协议发送退后(back off)消息。当计算机系统702上的协议栈被实例化时,它可以具有与计算机系统700上的协议栈等效的状态,并且可以在网络上与先前与计算机系统700相关联的唯一标识符通信。计算机系统702上的新配置的协议栈可以被配置成可选地发送重新开始(resume)消息,并且服务虚拟机存储客户端604的协议可以重新开始发送I/O。交换机704可以解决路由,使得协议消息被发送到计算机系统702上的虚拟机存储服务602。
继续图9的描述,操作908示出配置输入/输出存储器管理单元以将与用于子分区的输入/输出请求相关联的客户物理地址转换成系统物理地址。例如,且参照图7,在本公开的一个实施例中,计算机系统700的输入/输出存储器管理单元426可以用于将客户物理地址转换成系统物理地址。例如,当客户操作系统220发起I/O操作(例如读或写)时,客户操作系统220生成涉及可能需要被转换成系统物理地址的客户物理地址的命令。在一个示例实施例中,这些转换可以在I/O-MMU
426而非MMU中发生。通过将存储器转换卸载到I/O-MMU
426,减少了管理程序202和/或父分区204上的负担。例如,客户OS 220可以发布(issue)读操作,其包括读取客户存储器地址的盘偏移量的请求。在该示例中,输入/输出存储器管理单元426可以使用表,该表将子分区248的客户存储器地址映射到系统地址并且将客户存储器地址转换成在物理上支持(back)客户想要读取的客户存储器地址的系统地址。虚拟机存储服务602可以接收请求并获得客户端正在请求的信息并提供包括先前请求的数据的响应信息。该响应可以在如 客户存储器地址指定的缓冲区中提供,在此情况下适配器402和I/O-MMU
426可以将所提供的客户存储器地址转换成系统物理地址,并且适配器402然后可以将响应数据从响应缓冲区拷贝到请求缓冲区中以满足客户端的请求。
当客户端在与虚拟机存储服务602相同的物理计算机上时,该技术类似于由外围设备执行的存储器到存储器的直接存储器存取(DMA)操作。在该示例实施例中,I/O操作可以类似于存储器到存储器的DMA操作,因为网络适配器402从系统物理地址的一个块中检索信息并且代表虚拟机存储客户端604或虚拟机存储服务602将其移动到系统物理地址的另一个块。一个特定示例可以包括由虚拟机存储客户端604发布的读操作。在该示例中,虚拟机存储客户端604可以发布指定它想要读到它控制的存储页面中的存储数据的页面的读操作。在该示例中,数据的页面被拷贝到虚拟机存储服务602所使用的页面以满足请求并且然后将该数据拷贝到虚拟机存储客户端604指定的存储器页面中。
继续图9的描述,操作910示出从子分区接收输入/输出工作请求,其中子分区被附加到包括用于网络的第二唯一网络标识符的虚拟功能。例如,如图6所示,在一个实施例中,子分区248可以包括虚拟功能406。在该示例中,子分区248可以专有地经由虚拟功能406与SR-IOV适配器402联系并且可以发送I/O请求。适配器402可以确定命令被寻址到与虚拟机存储服务602相关联的唯一标识符,并且可以向它发送该命令。在此情况下,来自子分区248的I/O命令可以被发送到虚拟机存储服务602,而不需要通过管理程序202或通过子分区到子分区通信接口来发送请求。而且,适配器402可以使用客户端604和虚拟机存储服务602的唯一标识符来确定哪些存储器页面要用作缓冲区且因此确定在哪些地址空间之间拷贝数据。
在特定示例中,I/O请求可以是指定数据的位置(在客户物理地址中)和数据应当被写入的虚拟硬盘驱动器上的位置的写操作。在该示例中,存储虚拟化客户端604可以将请求置于寻址到虚拟机存储服务602的唯一标识符的一个或多个信息分组中。在该示例中,适配器402可以接收请求并将其发送到虚拟机存储服务602。适配器402另外可以将数据从子分区客户物理地址移动到分配给虚拟机存储服务602的系统物理地址。即,适配器和I/O-MMU
426可以被配置成将发送和接收缓冲区二者从客户物理地址转换成系统物理地址,并且适配器402然后可以在内部依照系统物理地址将数据从内部发送缓冲区拷贝到接收缓冲区。虚拟机存储服务602然后可以将数据存储在与其虚拟硬盘驱动器的实现方式一致的适当的位置。如本领域技术人员可以领会的,这可能涉及使用虚拟硬盘驱动器文件,它可能涉及将数据存储在LUN上,或者它可能多余地涉及用于存储数据的其他技术和位置。
继续图9的描述,操作912示出在第一分区中执行可迁移存储服务,在第二分区中执行被配置成管理虚拟机的管理服务,并且其中子分区是第三分区。例如,在一个实施例中,虚拟机存储服务602可以在第一分区(比如子分区246)中执行,父分区204可以运行管理服务,且虚拟机存储客户端604可以在分区248中运行。在该示例实施例中,虚拟机存储服务602在与管理进程分开的分区中。在该配置中,子分区246可以有效地如专用存储分区那样运作,像SAN目标那样。该配置可以减少管理程序202和父分区上的负担。例如,通过分离存储服务与父分区,可以减少操作系统内的锁定。而且,通过以此方式配置计算机系统,可以通过减少需要在分区间发送的消息的数量来减少管理程序调度器上的负担。
继续图9的描述,操作914示出将可迁移存储服务与包括唯一网络标识符的网络适配器的虚拟功能相关联,并且将子分区附加到网络适配器的第二虚拟功能。例如,且转到图7,在一个实施例中,虚拟机存储服务602可以与诸如虚拟功能404之类的虚拟功能相关联。在虚拟机存储服务602在子分区246中运行的实例中,虚拟功能404可以被使用,因此它以受控方式访问适配器402,即以确保子分区246中的任何进程不访问其分区之外的数据的方式访问适配器402。此外,虚拟机快照操作可以用于迁移虚拟机存储服务602。
继续图9的描述,操作916示出响应于从子分区接收输入/输出工作请求向逻辑处理器发送通知并且确定逻辑处理器正在执行可迁移存储服务。例如,在一个实施例中,当I/O工作需要软件处理时,管理程序202可以接收中断并运行。管理程序202可以识别正在运行的或被调度运行虚拟机存储服务602的逻辑处理器,并且可以通知该逻辑处理器,即通过发送中断或轻量级通知。如果虚拟机存储服务602位于子分区中,则该中断可以被发送到逻辑处理器,而无须唤醒管理分区以服务消息。如果虚拟机存储服务602当前正执行,则到虚拟机存储服务602的上下文切换将不必发生,中断也不必发生,因为可以改为使用轻量级通知。
继续图9的描述,操作918示出确定当输入/输出流量(traffic)在唯一网络标识符与至少一个其他唯一网络标识符之间经由网络适配器传输时,该输入/输出流量符合(compliant)安全策略。例如,在一个实施例中,适配器402可以包括用于网络流量的安全策略。在该示例实施例中,适配器402可以被配置成确定在虚拟机存储服务602与另一个唯一标识符(例如附加到虚拟机的一个标识符)之间发送的输入/输出流量符合该安全策略。在特定示例中,安全策略可能需要加密所有输入/输出流量。在该示例中,适配器402可以被配置成确定到虚拟硬盘驱动器的写入是明文形式还是被加密的。在另一个示例中,安全策略可能需要虚拟局域网保持完全独立,其中在不同虚拟局域网中的各端点之间不允许有数据流量。
现在转到图10,它图示了用于实践本公开的各方面的操作过程,其包括操作1000、1002和1004。操作1000开始该操作过程,且操作1002示出将用于网络适配器的第一唯一网络标识符附加到存储服务,该存储服务被配置成管理虚拟硬盘驱动器磁盘针对子分区的输入/输出请求。例如,且转到图6,在本公开的一个实施例中,SR-IOV适配器402可以实现多个网络标识符并将它们中的一个分配给虚拟机存储服务602。在光纤信道示例中,光纤信道主机总线适配器可以使用N_PortID虚拟化或(NPIV)以允许在同一端口上使用多个唯一标识符。在该光纤信道示例中,虚拟机存储服务602可以专有地使用所分配的NPIV地址在织物上通信。
继续图10的描述,操作1004示出将由网络适配器实现的虚拟功能附加到子分区,其中该虚拟功能包括第二唯一网络标识符。例如,且再次参照图6,SR-IOV适配器402可以实例化包括唯一网络标识符的虚拟功能406,并将其附加到虚拟机。在该示例实施例中,适配器402被配置成起交换机的作用,其将I/O请求通过适配器路由到存储服务602,绕过管理程序202或单独的分区到分区通信机制。这反过来减少了在逻辑处理器上执行指令以通知和切换分区所用的时间。
现在转到图11,它图示了图10的操作过程的可替代实施例,其包括附加操作1106、1108、1110、1112和1114。操作1106示出发送请求以配置第二虚拟功能以包括到包括第二网络适配器的远程计算机系统的第一唯一网络标识符。例如,在一个实施例中,逻辑处理器可以在管理器250中执行指令并且可以生成在远程计算机系统中配置虚拟功能的请求,所述远程计算机系统具有另一个适配器以包括附加到虚拟机存储服务602的唯一网络标识符。转到图7,在特定示例中,计算机系统700上的管理器250可以将所生成的请求发送到具有适配器718的计算机系统702。在该示例中的请求可以被计算机系统702中的管理器250用来命令它,以实例化虚拟功能710,并使其包括与虚拟机存储服务602的实例相关联的唯一标识符。
继续图11的描述,操作1108示出将存储服务迁移到子分区并且配置分配给该子分区的第二虚拟功能以使用第一唯一网络标识符。例如,且转到图7,逻辑处理器可以运行管理器250并且将虚拟机存储服务602从例如父分区204迁移到子分区246。在该示例中,逻辑处理器可以运行管理器250并提取与虚拟机存储服务602相关联的唯一标识符并且将其发送给适配器402。适配器402可以实例化虚拟功能404并将唯一标识符附加到它。随后,管理器250可以将唯一标识符附加到虚拟机存储服务602的实例。在该示例实施例中,虚拟机存储服务602处于与管理进程分开的分区中并且已经有效地变成像iSCSI目标那样运作的专用存储分区。
现在转到操作1110,它示出由输入/输出存储器管理单元将与来自子分区的输入/输出请求相关联的客户物理地址转换成系统物理地址。例如,且参照图7,在本公开的一个实施例中,计算机系统700的输入/输出存储器管理单元426可以用于将客户物理地址转换成系统物理地址。例如,当客户操作系统220发起I/O操作(例如读或写)时,客户操作系统220生成涉及客户物理地址的命令。在该示例中,输入/输出存储器管理单元426可以使用将子分区246的客户存储器地址映射到由父分区204使用的系统地址的表。适配器402和IO-MMU 426可以被配置成将发送和接收缓冲区二者从客户物理地址转换成系统物理地址,并且适配器402然后可以将数据从内部发送缓冲区拷贝到内部接收缓冲区,或反之亦然。
现在转到操作1112,它示出配置网络适配器以监控当输入/输出流量在唯一网络标识符与第二唯一网络标识符之间传输时该输入/输出流量的安全策略合规性(compliance)。例如,在一个实施例中,适配器402可以包括针对网络流量的安全策略。在该示例实施例中,适配器402可以被配置成确定在虚拟机存储服务602与另一个唯一标识符(例如附加到虚拟机的一个标识符)之间发送的输入/输出流量符合该安全策略。一个特定示例可以包括需要某些虚拟机使用某个唯一标识符在网络中发送I/O的安全策略。在该示例中的适配器402可以监控来自虚拟机的信息的分组并确定它们是否符合安全策略。
现在转到操作1114,它示出向远程计算机系统发送请求以实例化存储服务并响应于确定已经从远程计算机系统接收了超过预定阈值的输入/输出请求量而向该存储服务分配第一唯一网络标识符。例如,在本公开的一个实施例中,逻辑处理器可以运行指示管理器250的指令并且发送指引远程计算机系统(比如计算机系统702)实例化虚拟机存储服务602的实例的请求并将其附加到唯一标识符。在监控与到来的I/O请求相关联的唯一标识符并确定已经从计算机系统702接收了超过阈值的多个请求之后,逻辑处理器可以生成该请求。在特定示例中,管理器250可以确定在过去的30分钟已经从当前与计算机系统702相关联的唯一标识符接收60%的I/O请求。在该实例中,管理器250可以确定:如果虚拟机存储服务602正在计算机系统702上本地执行并迁移它,则数据中心的性能可以得到提高。
现在转到图12,它图示了包括操作1200和1202的操作过程。操作1200开始该操作过程并且操作1202示出在子分区中执行存储服务,其中该存储设备被配置成管理针对第二子分区的虚拟硬盘驱动盘输入/输出请求,其中该存储服务在网络中被分配唯一网络标识符。例如,在一个实施例中,虚拟机存储服务602可以在子分区(例如子分区246)中被实现并且在网络中被分配唯一标识符(例如全球名称)。在该示例中,子分区246可以由管理程序202和/或父分区204控制。在该配置中,子分区246可以有效地变成像iSCSI目标那样运作的专用存储分区。
现在转到图13,它图示了图12的操作过程的可替代实施例,其包括操作1304、1306、1308、1310和1312。转到操作1304,它示出向远程计算机系统发送请求以实例化存储服务并响应于确定已经从远程计算机系统接收的超过预定阈值的输入/输出请求量而为该存储服务分配第一唯一网络标识符。例如,在本公开的一个实施例中,逻辑处理器可以运行指示管理器250的指令并且发送指引远程计算机系统(比如计算机系统702)实例化虚拟机存储服务602的实例的请求,并将其附加到唯一标识符。在监控与到来的I/O请求相关联的唯一标识符以及确定已经从计算机系统702接收了超过阈值的多个请求之后,逻辑处理器可以生成该请求。在特定示例中,管理器250可能已经确定在过去的30分钟从当前与计算机系统702相关联的唯一标识符已经接收了60%的I/O请求。在该实例中,管理器250可以确定:如果虚拟机存储服务602正在计算机系统702上本地执行并迁移它,则数据中心的性能可以得到提高。
继续图13的描述,操作1306示出将存储服务迁移到管理程序。例如,且转到图7,在一个实施例中,虚拟机存储服务602可以被迁移到管理程序202。在该示例实施例中,计算机系统702可以具有类似于图3中所描绘的架构,并且可以作出将存储服务602从子分区246移动到管理程序202的决定。在该示例中,逻辑处理器可以运行管理器250并提取与虚拟机存储服务602相关联的唯一标识符,并且管理程序202可以将该标识符附加到虚拟机存储服务602的实例。在一个示例实施例中,由于管理程序202控制硬件,因此它可以被配置成访问适配器402的物理功能。在光纤信道示例的实现方式中,光纤信道主机总线控制器可以使用NPIV以使用唯一标识符经由适配器402发送/接收I/O命令。
继续图13的描述,操作1308示出将存储服务迁移到父分区。例如,且转到图7,在一个实施例中,虚拟机存储服务602可以从子分区246迁移到父分区204或712。在该示例中,逻辑处理器可以运行管理器250并提取与虚拟机存储服务602相关联的唯一标识符,以及将其发送到远程计算机或本地计算机系统上的父分区204。随后,该唯一标识符可以被附加到存储服务602的实例。
继续图13的描述,操作1310示出将存储服务分配给管理程序 。在该示例实施例中,虚拟功能406可以被附加到子分区248并且它可以在网络上具有第二唯一网络标识符。如图所示,在该示例实施例中,子分区246和248二者可以被附加到相同的SR-IOV适配器402。因此,在该示例实施例中,可以通过SR-IOV适配器402而非经由管理程序202或经由分区到分区通信机制且无须通过交换机704发送I/O来传递I/O请求。
继续图13的描述,操作1312示出配置输入/输出存储器管理单元以将与针对子分区的输入/输出请求相关联的客户物理地址转换成系统物理地址。例如,且参照图7,在本公开的一个实施例中,计算机系统700的输入/输出存储器管理单元426可以被用于将客户物理地址转换成系统物理地址。例如,当客户操作系统220发起I/O操作(例如读或写)时,客户操作系统220生成涉及客户物理地址的命令。在该示例中,输入/输出存储器管理单元426可以使用将子分区248的客户存储器地址映射到由父分区使用的系统地址的表。适配器402和IO
MMU 426可以被配置成将发送和接收缓冲区二者从客户物理地址转换成系统物理地址,并且适配器402然后可以将数据从内部发送缓冲区拷贝到内部接收缓冲区,或反之亦然。
前述具体实施方式已经经由示例和/或操作图阐述了系统和/或过程的各种实施例。迄今为止,由于这样的框图和/或示例包含一个或多个功能和/或操作,本领域技术人员将会理解这样的框图或示例内的每个功能和/或操作可以通过广泛的硬件、软件、固件或其几乎任何组合单独地和/或共同地实现。
尽管本文所描述的本主题的特定方面已被示出和描述,但是本领域技术人员基于本文的教导将会清楚可以在不脱离本文所描述的主题和其更宽泛的方面的情况下作出改变和修改,并且因此所附权利要求将把所有这样的改变和修改包含在它们的范围内,因为所有这样的改变和修改在本文所述主题的真实精神和范围内。
Claims (15)
1.一种系统,包括:
用于实现可迁移存储服务的电路,其中该可迁移存储服务被配置成管理针对子分区的虚拟硬盘输入/输出请求,其中该可迁移存储服务被分配用于网络的唯一网络标识符;以及
用于将该可迁移存储服务配置为网络中的存储目标的电路。
2.权利要求1的系统,进一步包括:
用于将可迁移存储服务迁移到远程计算机系统的电路。
3.权利要求1的系统,进一步包括:
用于配置输入/输出存储器管理单元以将与针对子分区的输入/输出请求相关联的客户物理地址转换成系统物理地址的电路。
4.权利要求1的系统,进一步包括:
用于从子分区接收输入/输出工作请求的电路,其中该子分区被附加到包括用于网络的第二唯一网络标识符的虚拟功能。
5.权利要求1的系统,进一步包括:
用于在第一分区中执行所述可迁移存储服务、在第二分区中执行配置成管理虚拟机的管理服务的电路,并且其中该子分区是第三分区。
6.权利要求1的系统,进一步包括:
用于将可迁移存储服务与包括唯一网络标识符的网络适配器的虚拟功能相关联并且将所述子分区附加到该网络适配器的第二虚拟功能的电路。
7.权利要求1的系统,进一步包括:
用于响应于从子分区接收输入/输出工作请求而向逻辑处理器发送通知并确定逻辑处理器正在执行所述可迁移存储服务的电路。
8.权利要求1的系统,进一步包括:
用于确定当输入/输出流量在所述唯一网络标识符与至少一个其他唯一网络标识符之间经由网络适配器传输时该输入/输出流量符合安全策略的电路。
9.一种计算机方法,包括:
将用于网络适配器的第一唯一网络标识符附加到被配置成管理针对子分区的虚拟硬盘驱动盘输入/输出请求的存储服务;以及
将由网络适配器实现的虚拟功能附加到所述子分区,其中该虚拟功能包括第二唯一网络标识符。
10.权利要求9的计算机方法,进一步包括:
发送配置第二虚拟功能以包括第一网络标识符的请求到包括第二网络适配器的远程计算机系统。
11.权利要求9的计算机方法,进一步包括:
将存储服务迁移到子分区并且配置分配给该子分区的第二虚拟功能以使用第一唯一网络标识符。
12.权利要求9的计算机方法,进一步包括:
由输入/输出存储器管理单元将与来自子分区的输入/输出请求相关联的客户物理地址转换成系统物理地址。
13.权利要求9的计算机方法,进一步包括:
配置网络适配器以当输入/输出流量在所述唯一网络标识符与第二唯一网络标识符之间传输时监控该输入/输出流量的安全策略合规性。
14.权利要求9的计算机方法,进一步包括:向远程计算机系统发送实例化存储服务并响应于确定已经从远程计算机系统接收了超过预定阈值的输入/输出请求量而向该存储服务分配第一唯一网络标识符的请求。
15.权利要求9的计算机方法,进一步包括:
迁移分配存储服务到管理程序并配置第二虚拟功能以使用第一唯一网络标识符。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/640,272 | 2009-12-17 | ||
US12/640,272 US9389895B2 (en) | 2009-12-17 | 2009-12-17 | Virtual storage target offload techniques |
US12/640272 | 2009-12-17 | ||
PCT/US2010/057871 WO2011084257A2 (en) | 2009-12-17 | 2010-11-23 | Virtual storage target offload techniques |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102652305A true CN102652305A (zh) | 2012-08-29 |
CN102652305B CN102652305B (zh) | 2015-10-07 |
Family
ID=44152997
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201080057757.4A Active CN102652305B (zh) | 2009-12-17 | 2010-11-23 | 虚拟存储目标卸载技术 |
Country Status (7)
Country | Link |
---|---|
US (2) | US9389895B2 (zh) |
EP (1) | EP2513784A4 (zh) |
JP (1) | JP6055310B2 (zh) |
KR (1) | KR101782342B1 (zh) |
CN (1) | CN102652305B (zh) |
RU (1) | RU2562436C2 (zh) |
WO (1) | WO2011084257A2 (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104301297A (zh) * | 2013-06-03 | 2015-01-21 | 英特尔公司 | 生成指示命令的分组和/或发出该命令的部分执行结果 |
CN104461958A (zh) * | 2014-10-31 | 2015-03-25 | 杭州华为数字技术有限公司 | 支持sr-iov的存储资源访问方法、存储控制器及存储设备 |
CN106502721A (zh) * | 2016-09-26 | 2017-03-15 | 华为技术有限公司 | 一种命令卸载方法、装置及物理机 |
CN107818054A (zh) * | 2016-09-12 | 2018-03-20 | 联发科技股份有限公司 | 分配连续物理内存空间到设备的方法及系统 |
CN110084039A (zh) * | 2013-04-19 | 2019-08-02 | Nicira股份有限公司 | 用于端点安全与网络安全服务之间的协调的框架 |
CN110704163A (zh) * | 2019-09-29 | 2020-01-17 | 浪潮商用机器有限公司 | 一种服务器及其虚拟化存储方法和装置 |
CN111247508A (zh) * | 2017-09-05 | 2020-06-05 | 亚马逊科技公司 | 网络存储架构 |
CN114070755A (zh) * | 2020-07-29 | 2022-02-18 | 中移(苏州)软件技术有限公司 | 虚拟机网络流量确定方法、装置、电子设备和存储介质 |
Families Citing this family (189)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1738258A4 (en) | 2004-03-13 | 2009-10-28 | Cluster Resources Inc | SYSTEM AND METHOD IMPLEMENTING OBJECT TRIGGERS |
US8782654B2 (en) | 2004-03-13 | 2014-07-15 | Adaptive Computing Enterprises, Inc. | Co-allocating a reservation spanning different compute resources types |
US20070266388A1 (en) | 2004-06-18 | 2007-11-15 | Cluster Resources, Inc. | System and method for providing advanced reservations in a compute environment |
US9264384B1 (en) | 2004-07-22 | 2016-02-16 | Oracle International Corporation | Resource virtualization mechanism including virtual host bus adapters |
US8176490B1 (en) | 2004-08-20 | 2012-05-08 | Adaptive Computing Enterprises, Inc. | System and method of interfacing a workload manager and scheduler with an identity manager |
CA2586763C (en) | 2004-11-08 | 2013-12-17 | Cluster Resources, Inc. | System and method of providing system jobs within a compute environment |
US8863143B2 (en) | 2006-03-16 | 2014-10-14 | Adaptive Computing Enterprises, Inc. | System and method for managing a hybrid compute environment |
US9231886B2 (en) | 2005-03-16 | 2016-01-05 | Adaptive Computing Enterprises, Inc. | Simple integration of an on-demand compute environment |
EP3203374B1 (en) | 2005-04-07 | 2021-11-24 | III Holdings 12, LLC | On-demand access to compute resources |
US9813283B2 (en) | 2005-08-09 | 2017-11-07 | Oracle International Corporation | Efficient data transfer between servers and remote peripherals |
US7991910B2 (en) | 2008-11-17 | 2011-08-02 | Amazon Technologies, Inc. | Updating routing information based on client location |
US8028090B2 (en) | 2008-11-17 | 2011-09-27 | Amazon Technologies, Inc. | Request routing utilizing client location information |
US8041773B2 (en) | 2007-09-24 | 2011-10-18 | The Research Foundation Of State University Of New York | Automatic clustering for self-organizing grids |
US8447831B1 (en) | 2008-03-31 | 2013-05-21 | Amazon Technologies, Inc. | Incentive driven content delivery |
US8156243B2 (en) | 2008-03-31 | 2012-04-10 | Amazon Technologies, Inc. | Request routing |
US8533293B1 (en) | 2008-03-31 | 2013-09-10 | Amazon Technologies, Inc. | Client side cache management |
US7962597B2 (en) | 2008-03-31 | 2011-06-14 | Amazon Technologies, Inc. | Request routing based on class |
US8601090B1 (en) | 2008-03-31 | 2013-12-03 | Amazon Technologies, Inc. | Network resource identification |
US8321568B2 (en) | 2008-03-31 | 2012-11-27 | Amazon Technologies, Inc. | Content management |
US7970820B1 (en) | 2008-03-31 | 2011-06-28 | Amazon Technologies, Inc. | Locality based content distribution |
US8606996B2 (en) | 2008-03-31 | 2013-12-10 | Amazon Technologies, Inc. | Cache optimization |
US7925782B2 (en) | 2008-06-30 | 2011-04-12 | Amazon Technologies, Inc. | Request routing using network computing components |
US9912740B2 (en) | 2008-06-30 | 2018-03-06 | Amazon Technologies, Inc. | Latency measurement in resource requests |
US9407681B1 (en) | 2010-09-28 | 2016-08-02 | Amazon Technologies, Inc. | Latency measurement in resource requests |
US8521880B1 (en) | 2008-11-17 | 2013-08-27 | Amazon Technologies, Inc. | Managing content delivery network service providers |
US8060616B1 (en) | 2008-11-17 | 2011-11-15 | Amazon Technologies, Inc. | Managing CDN registration by a storage provider |
US8065417B1 (en) | 2008-11-17 | 2011-11-22 | Amazon Technologies, Inc. | Service provider registration by a content broker |
US8122098B1 (en) | 2008-11-17 | 2012-02-21 | Amazon Technologies, Inc. | Managing content delivery network service providers by a content broker |
US8732309B1 (en) | 2008-11-17 | 2014-05-20 | Amazon Technologies, Inc. | Request routing utilizing cost information |
US8073940B1 (en) | 2008-11-17 | 2011-12-06 | Amazon Technologies, Inc. | Managing content delivery network service providers |
US8412823B1 (en) | 2009-03-27 | 2013-04-02 | Amazon Technologies, Inc. | Managing tracking information entries in resource cache components |
US8688837B1 (en) | 2009-03-27 | 2014-04-01 | Amazon Technologies, Inc. | Dynamically translating resource identifiers for request routing using popularity information |
US8521851B1 (en) | 2009-03-27 | 2013-08-27 | Amazon Technologies, Inc. | DNS query processing using resource identifiers specifying an application broker |
US8756341B1 (en) | 2009-03-27 | 2014-06-17 | Amazon Technologies, Inc. | Request routing utilizing popularity information |
US8782236B1 (en) | 2009-06-16 | 2014-07-15 | Amazon Technologies, Inc. | Managing resources using resource expiration data |
US9973446B2 (en) | 2009-08-20 | 2018-05-15 | Oracle International Corporation | Remote shared server peripherals over an Ethernet network for resource virtualization |
US8397073B1 (en) | 2009-09-04 | 2013-03-12 | Amazon Technologies, Inc. | Managing secure content in a content delivery network |
US8433771B1 (en) | 2009-10-02 | 2013-04-30 | Amazon Technologies, Inc. | Distribution network with forward resource propagation |
US10877695B2 (en) | 2009-10-30 | 2020-12-29 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
US11720290B2 (en) | 2009-10-30 | 2023-08-08 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
US9389895B2 (en) * | 2009-12-17 | 2016-07-12 | Microsoft Technology Licensing, Llc | Virtual storage target offload techniques |
US20110153715A1 (en) * | 2009-12-17 | 2011-06-23 | Microsoft Corporation | Lightweight service migration |
US9495338B1 (en) | 2010-01-28 | 2016-11-15 | Amazon Technologies, Inc. | Content distribution network |
US8566640B2 (en) * | 2010-07-19 | 2013-10-22 | Veeam Software Ag | Systems, methods, and computer program products for instant recovery of image level backups |
US9331963B2 (en) * | 2010-09-24 | 2016-05-03 | Oracle International Corporation | Wireless host I/O using virtualized I/O controllers |
US8819283B2 (en) | 2010-09-28 | 2014-08-26 | Amazon Technologies, Inc. | Request routing in a networked environment |
US9712484B1 (en) | 2010-09-28 | 2017-07-18 | Amazon Technologies, Inc. | Managing request routing information utilizing client identifiers |
US8577992B1 (en) | 2010-09-28 | 2013-11-05 | Amazon Technologies, Inc. | Request routing management based on network components |
US8930513B1 (en) | 2010-09-28 | 2015-01-06 | Amazon Technologies, Inc. | Latency measurement in resource requests |
US10958501B1 (en) | 2010-09-28 | 2021-03-23 | Amazon Technologies, Inc. | Request routing information based on client IP groupings |
US8468247B1 (en) | 2010-09-28 | 2013-06-18 | Amazon Technologies, Inc. | Point of presence management in request routing |
US10097398B1 (en) | 2010-09-28 | 2018-10-09 | Amazon Technologies, Inc. | Point of presence management in request routing |
US9003035B1 (en) | 2010-09-28 | 2015-04-07 | Amazon Technologies, Inc. | Point of presence management in request routing |
US8452874B2 (en) | 2010-11-22 | 2013-05-28 | Amazon Technologies, Inc. | Request routing processing |
US9391949B1 (en) | 2010-12-03 | 2016-07-12 | Amazon Technologies, Inc. | Request routing processing |
EP2466486A1 (en) * | 2010-12-16 | 2012-06-20 | STMicroelectronics (Grenoble 2) SAS | An arrangement |
US8447891B2 (en) * | 2011-01-11 | 2013-05-21 | International Business Machines Corporation | Dynamically assigning virtual functions to client applications |
US9043562B2 (en) * | 2011-04-20 | 2015-05-26 | Microsoft Technology Licensing, Llc | Virtual machine trigger |
US10467042B1 (en) | 2011-04-27 | 2019-11-05 | Amazon Technologies, Inc. | Optimized deployment based upon customer locality |
WO2012151392A1 (en) * | 2011-05-04 | 2012-11-08 | Citrix Systems, Inc. | Systems and methods for sr-iov pass-thru via an intermediary device |
FR2977116A1 (fr) * | 2011-06-27 | 2012-12-28 | France Telecom | Procede de fourniture de service d'execution de logiciel a la demande |
US8769533B2 (en) | 2011-07-18 | 2014-07-01 | International Business Machines Corporation | Check-point based high availability: network packet buffering in hardware |
US8850130B1 (en) | 2011-08-10 | 2014-09-30 | Nutanix, Inc. | Metadata for managing I/O and storage for a virtualization |
US9652265B1 (en) | 2011-08-10 | 2017-05-16 | Nutanix, Inc. | Architecture for managing I/O and storage for a virtualization environment with multiple hypervisor types |
US9747287B1 (en) | 2011-08-10 | 2017-08-29 | Nutanix, Inc. | Method and system for managing metadata for a virtualization environment |
US8863124B1 (en) | 2011-08-10 | 2014-10-14 | Nutanix, Inc. | Architecture for managing I/O and storage for a virtualization environment |
US9009106B1 (en) | 2011-08-10 | 2015-04-14 | Nutanix, Inc. | Method and system for implementing writable snapshots in a virtualized storage environment |
US8601473B1 (en) | 2011-08-10 | 2013-12-03 | Nutanix, Inc. | Architecture for managing I/O and storage for a virtualization environment |
US8549518B1 (en) | 2011-08-10 | 2013-10-01 | Nutanix, Inc. | Method and system for implementing a maintenanece service for managing I/O and storage for virtualization environment |
US8756601B2 (en) * | 2011-09-23 | 2014-06-17 | Qualcomm Incorporated | Memory coherency acceleration via virtual machine migration |
US9400722B2 (en) * | 2011-11-15 | 2016-07-26 | Ge Aviation Systems Llc | Method of providing high integrity processing |
US9092274B2 (en) * | 2011-12-07 | 2015-07-28 | International Business Machines Corporation | Acceleration for virtual bridged hosts |
US8904009B1 (en) | 2012-02-10 | 2014-12-02 | Amazon Technologies, Inc. | Dynamic content delivery |
US10021179B1 (en) | 2012-02-21 | 2018-07-10 | Amazon Technologies, Inc. | Local resource delivery network |
US9397954B2 (en) | 2012-03-26 | 2016-07-19 | Oracle International Corporation | System and method for supporting live migration of virtual machines in an infiniband network |
JP5891900B2 (ja) * | 2012-03-29 | 2016-03-23 | 富士通株式会社 | アクセス制御方法、サーバ装置およびストレージ装置 |
CN102650976B (zh) * | 2012-04-01 | 2014-07-09 | 中国科学院计算技术研究所 | 一种支持单根io虚拟化用户级接口控制装置及其方法 |
US10623408B1 (en) | 2012-04-02 | 2020-04-14 | Amazon Technologies, Inc. | Context sensitive object management |
US9086929B2 (en) | 2012-04-06 | 2015-07-21 | International Business Machines Corporation | Dynamic allocation of a workload across a plurality of clouds |
US9071613B2 (en) | 2012-04-06 | 2015-06-30 | International Business Machines Corporation | Dynamic allocation of workload deployment units across a plurality of clouds |
US20140165196A1 (en) | 2012-05-22 | 2014-06-12 | Xockets IP, LLC | Efficient packet handling, redirection, and inspection using offload processors |
WO2013177310A2 (en) | 2012-05-22 | 2013-11-28 | Xockets IP, LLC | Offloading of computation for rack level servers and corresponding methods and systems |
US9154551B1 (en) | 2012-06-11 | 2015-10-06 | Amazon Technologies, Inc. | Processing DNS queries to identify pre-processing information |
US9772866B1 (en) | 2012-07-17 | 2017-09-26 | Nutanix, Inc. | Architecture for implementing a virtualization environment and appliance |
US9525659B1 (en) | 2012-09-04 | 2016-12-20 | Amazon Technologies, Inc. | Request routing utilizing point of presence load information |
US9323577B2 (en) | 2012-09-20 | 2016-04-26 | Amazon Technologies, Inc. | Automated profiling of resource usage |
US9083550B2 (en) | 2012-10-29 | 2015-07-14 | Oracle International Corporation | Network virtualization over infiniband |
WO2014100273A1 (en) * | 2012-12-18 | 2014-06-26 | Dynavisor, Inc. | Dynamic device virtualization |
US10205698B1 (en) | 2012-12-19 | 2019-02-12 | Amazon Technologies, Inc. | Source-dependent address resolution |
US9407601B1 (en) | 2012-12-21 | 2016-08-02 | Emc Corporation | Reliable client transport over fibre channel using a block device access model |
US9473589B1 (en) * | 2012-12-21 | 2016-10-18 | Emc Corporation | Server communication over fibre channel using a block device access model |
US9514151B1 (en) | 2012-12-21 | 2016-12-06 | Emc Corporation | System and method for simultaneous shared access to data buffers by two threads, in a connection-oriented data proxy service |
US9591099B1 (en) | 2012-12-21 | 2017-03-07 | EMC IP Holding Company LLC | Server connection establishment over fibre channel using a block device access model |
US9270786B1 (en) | 2012-12-21 | 2016-02-23 | Emc Corporation | System and method for proxying TCP connections over a SCSI-based transport |
US9647905B1 (en) | 2012-12-21 | 2017-05-09 | EMC IP Holding Company LLC | System and method for optimized management of statistics counters, supporting lock-free updates, and queries for any to-the-present time interval |
US9232000B1 (en) | 2012-12-21 | 2016-01-05 | Emc Corporation | Method and system for balancing load across target endpoints on a server and initiator endpoints accessing the server |
US9473591B1 (en) * | 2012-12-21 | 2016-10-18 | Emc Corporation | Reliable server transport over fibre channel using a block device access model |
US9473590B1 (en) * | 2012-12-21 | 2016-10-18 | Emc Corporation | Client connection establishment over fibre channel using a block device access model |
US9712427B1 (en) | 2012-12-21 | 2017-07-18 | EMC IP Holding Company LLC | Dynamic server-driven path management for a connection-oriented transport using the SCSI block device model |
US9237057B1 (en) | 2012-12-21 | 2016-01-12 | Emc Corporation | Reassignment of a virtual connection from a busiest virtual connection or locality domain to a least busy virtual connection or locality domain |
US9563423B1 (en) | 2012-12-21 | 2017-02-07 | EMC IP Holding Company LLC | System and method for simultaneous shared access to data buffers by two threads, in a connection-oriented data proxy service |
US9531765B1 (en) | 2012-12-21 | 2016-12-27 | Emc Corporation | System and method for maximizing system data cache efficiency in a connection-oriented data proxy service |
US9509797B1 (en) * | 2012-12-21 | 2016-11-29 | Emc Corporation | Client communication over fibre channel using a block device access model |
US11132277B2 (en) | 2012-12-28 | 2021-09-28 | Iii Holdings 2, Llc | System and method for continuous low-overhead monitoring of distributed applications running on a cluster of data processing nodes |
US9378161B1 (en) | 2013-01-17 | 2016-06-28 | Xockets, Inc. | Full bandwidth packet handling with server systems including offload processors |
US9250954B2 (en) | 2013-01-17 | 2016-02-02 | Xockets, Inc. | Offload processor modules for connection to system memory, and corresponding methods and systems |
KR101628436B1 (ko) * | 2013-02-01 | 2016-06-09 | 단국대학교 산학협력단 | 가상 머신의 데이터 처리 방법 |
US9569223B2 (en) * | 2013-02-13 | 2017-02-14 | Red Hat Israel, Ltd. | Mixed shared/non-shared memory transport for virtual machines |
US9448830B2 (en) * | 2013-03-14 | 2016-09-20 | Google Inc. | Service bridges |
US9720717B2 (en) * | 2013-03-14 | 2017-08-01 | Sandisk Technologies Llc | Virtualization support for storage devices |
US9990221B2 (en) | 2013-03-15 | 2018-06-05 | Oracle International Corporation | System and method for providing an infiniband SR-IOV vSwitch architecture for a high performance cloud computing environment |
US10230794B2 (en) | 2013-03-15 | 2019-03-12 | Oracle International Corporation | System and method for efficient virtualization in lossless interconnection networks |
US9294391B1 (en) * | 2013-06-04 | 2016-03-22 | Amazon Technologies, Inc. | Managing network computing components utilizing request routing |
US9548888B1 (en) * | 2013-06-24 | 2017-01-17 | EMC IP Holding Company LLC | Technique for setting WWNN scope for multi-port fibre channel SCSI target deduplication appliances |
US10216754B1 (en) | 2013-09-26 | 2019-02-26 | EMC IP Holding Company LLC | System and method for balancing compression and read performance in a storage system |
US10838990B1 (en) | 2013-09-26 | 2020-11-17 | EMC IP Holding Company LLC | System and method for improving data compression of a storage system using coarse and fine grained similarity |
US9305009B1 (en) * | 2013-09-30 | 2016-04-05 | Emc Corporation | Synchronous replication of virtualized storage processors |
US9104637B2 (en) * | 2013-12-04 | 2015-08-11 | Oracle International Corporation | System and method for managing host bus adaptor (HBA) over infiniband (IB) using a single external memory interface |
US9311044B2 (en) | 2013-12-04 | 2016-04-12 | Oracle International Corporation | System and method for supporting efficient buffer usage with a single external memory interface |
KR102209525B1 (ko) * | 2014-01-06 | 2021-01-29 | 삼성전자주식회사 | 마이크로 서버, mac 주소 할당 방법 및 컴퓨터 판독가능 기록매체 |
US9424059B1 (en) * | 2014-03-12 | 2016-08-23 | Nutanix, Inc. | System and methods for implementing quality of service in a networked virtualization environment for storage management |
US9858058B2 (en) * | 2014-03-31 | 2018-01-02 | International Business Machines Corporation | Partition mobility for partitions with extended code |
US9483290B1 (en) * | 2014-04-29 | 2016-11-01 | Qlogic, Corporation | Method and system for virtual machine communication |
US20150319250A1 (en) * | 2014-04-30 | 2015-11-05 | Anil Vasudevan | Technologies for accelerating network virtualization |
CN105302641B (zh) * | 2014-06-04 | 2019-03-22 | 杭州海康威视数字技术股份有限公司 | 虚拟化集群中进行节点调度的方法及装置 |
US9959203B2 (en) | 2014-06-23 | 2018-05-01 | Google Llc | Managing storage devices |
US9851998B2 (en) * | 2014-07-30 | 2017-12-26 | Microsoft Technology Licensing, Llc | Hypervisor-hosted virtual machine forensics |
KR102308782B1 (ko) | 2014-08-19 | 2021-10-05 | 삼성전자주식회사 | 메모리 컨트롤러, 스토리지 디바이스, 서버 가상화 시스템 및 서버 가상화 시스템에서의 스토리지 디바이스 인식 방법 |
US9389901B2 (en) | 2014-09-09 | 2016-07-12 | Vmware, Inc. | Load balancing of cloned virtual machines |
WO2016041173A1 (en) | 2014-09-18 | 2016-03-24 | Intel Corporation | Supporting multiple operating system environments in computing device without contents conversion |
FR3029311B1 (fr) * | 2014-11-27 | 2017-01-06 | Thales Sa | Procede de gestion d'une architecture et architecture associee |
US10097448B1 (en) | 2014-12-18 | 2018-10-09 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US10091096B1 (en) | 2014-12-18 | 2018-10-02 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US10033627B1 (en) | 2014-12-18 | 2018-07-24 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US10225326B1 (en) | 2015-03-23 | 2019-03-05 | Amazon Technologies, Inc. | Point of presence based data uploading |
US10129081B1 (en) * | 2015-03-30 | 2018-11-13 | EMC IP Holding Company LLC | Dynamic configuration of NPIV virtual ports in a fibre channel network |
US9887932B1 (en) | 2015-03-30 | 2018-02-06 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
US9819567B1 (en) | 2015-03-30 | 2017-11-14 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
US9887931B1 (en) | 2015-03-30 | 2018-02-06 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
US11036533B2 (en) | 2015-04-17 | 2021-06-15 | Samsung Electronics Co., Ltd. | Mechanism to dynamically allocate physical storage device resources in virtualized environments |
US10838852B2 (en) | 2015-04-17 | 2020-11-17 | Samsung Electronics Co., Ltd. | System and method to extend NVME queues to user space |
US9727359B2 (en) * | 2015-04-27 | 2017-08-08 | Red Hat Israel, Ltd. | Virtual machine function based sub-page base address register access for peripheral component interconnect device assignment |
US9832141B1 (en) | 2015-05-13 | 2017-11-28 | Amazon Technologies, Inc. | Routing based request correlation |
CN106302322B (zh) * | 2015-05-19 | 2020-05-26 | 腾讯科技(深圳)有限公司 | 一种虚拟机数据流管理方法和系统 |
US9378043B1 (en) * | 2015-05-28 | 2016-06-28 | Altera Corporation | Multilayer quality of service (QOS) for network functions virtualization platforms |
US10616179B1 (en) | 2015-06-25 | 2020-04-07 | Amazon Technologies, Inc. | Selective routing of domain name system (DNS) requests |
KR102371916B1 (ko) | 2015-07-22 | 2022-03-07 | 삼성전자주식회사 | 가상 머신을 지원하는 스토리지 장치, 그것을 포함하는 스토리지 시스템 및 그것의 동작 방법 |
US20170031838A1 (en) * | 2015-07-28 | 2017-02-02 | Qualcomm Incorporated | Method and apparatus for using context information to protect virtual machine security |
US10097566B1 (en) | 2015-07-31 | 2018-10-09 | Amazon Technologies, Inc. | Identifying targets of network attacks |
US10852954B1 (en) * | 2015-09-23 | 2020-12-01 | EMC IP Holding Company LLC | Running an enterprise storage subsystem as a virtual machine |
US9794281B1 (en) | 2015-09-24 | 2017-10-17 | Amazon Technologies, Inc. | Identifying sources of network attacks |
US9742795B1 (en) | 2015-09-24 | 2017-08-22 | Amazon Technologies, Inc. | Mitigating network attacks |
US9774619B1 (en) | 2015-09-24 | 2017-09-26 | Amazon Technologies, Inc. | Mitigating network attacks |
CN107209681B (zh) | 2015-10-21 | 2020-07-07 | 华为技术有限公司 | 一种存储设备访问方法、装置和系统 |
US10270878B1 (en) | 2015-11-10 | 2019-04-23 | Amazon Technologies, Inc. | Routing for origin-facing points of presence |
US10049051B1 (en) | 2015-12-11 | 2018-08-14 | Amazon Technologies, Inc. | Reserved cache space in content delivery networks |
US10257307B1 (en) | 2015-12-11 | 2019-04-09 | Amazon Technologies, Inc. | Reserved cache space in content delivery networks |
US10348639B2 (en) | 2015-12-18 | 2019-07-09 | Amazon Technologies, Inc. | Use of virtual endpoints to improve data transmission rates |
US11163597B2 (en) * | 2016-01-20 | 2021-11-02 | Unisys Corporation | Persistent guest and software-defined storage in computing fabric |
CN105808167B (zh) * | 2016-03-10 | 2018-12-21 | 深圳市杉岩数据技术有限公司 | 一种基于sr-iov的链接克隆的方法、存储设备及系统 |
US10467103B1 (en) | 2016-03-25 | 2019-11-05 | Nutanix, Inc. | Efficient change block training |
US10075551B1 (en) | 2016-06-06 | 2018-09-11 | Amazon Technologies, Inc. | Request management for hierarchical cache |
US10110694B1 (en) | 2016-06-29 | 2018-10-23 | Amazon Technologies, Inc. | Adaptive transfer rate for retrieving content from a server |
US9992086B1 (en) | 2016-08-23 | 2018-06-05 | Amazon Technologies, Inc. | External health checking of virtual private cloud network environments |
US10033691B1 (en) | 2016-08-24 | 2018-07-24 | Amazon Technologies, Inc. | Adaptive resolution of domain name requests in virtual private cloud network environments |
US10469513B2 (en) | 2016-10-05 | 2019-11-05 | Amazon Technologies, Inc. | Encrypted network addresses |
US10558250B2 (en) * | 2016-12-23 | 2020-02-11 | Oracle International Corporation | System and method for coordinated link up handling following switch reset in a high performance computing network |
US10831549B1 (en) | 2016-12-27 | 2020-11-10 | Amazon Technologies, Inc. | Multi-region request-driven code execution system |
US10372499B1 (en) | 2016-12-27 | 2019-08-06 | Amazon Technologies, Inc. | Efficient region selection system for executing request-driven code |
US10938884B1 (en) | 2017-01-30 | 2021-03-02 | Amazon Technologies, Inc. | Origin server cloaking using virtual private cloud network environments |
CN106909443A (zh) * | 2017-02-28 | 2017-06-30 | 郑州云海信息技术有限公司 | 一种虚拟机的配置方法及装置 |
US10942758B2 (en) * | 2017-04-17 | 2021-03-09 | Hewlett Packard Enterprise Development Lp | Migrating virtual host bus adaptors between sets of host bus adaptors of a target device in order to reallocate bandwidth to enable virtual machine migration |
US10503613B1 (en) | 2017-04-21 | 2019-12-10 | Amazon Technologies, Inc. | Efficient serving of resources during server unavailability |
US11075987B1 (en) | 2017-06-12 | 2021-07-27 | Amazon Technologies, Inc. | Load estimating content delivery network |
US10447648B2 (en) | 2017-06-19 | 2019-10-15 | Amazon Technologies, Inc. | Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP |
US10742593B1 (en) | 2017-09-25 | 2020-08-11 | Amazon Technologies, Inc. | Hybrid content request routing system |
US11693792B2 (en) * | 2018-01-04 | 2023-07-04 | Google Llc | Infernal storage in cloud disk to support encrypted hard drive and other stateful features |
US10592578B1 (en) | 2018-03-07 | 2020-03-17 | Amazon Technologies, Inc. | Predictive content push-enabled content delivery network |
US10802983B2 (en) * | 2018-05-31 | 2020-10-13 | Vmware, Inc. | Programmable block storage addressing using embedded virtual machines |
US10841291B2 (en) * | 2018-05-31 | 2020-11-17 | Vmware, Inc. | Method for block authentication using embedded virtual machines |
US11372580B2 (en) | 2018-08-07 | 2022-06-28 | Marvell Asia Pte, Ltd. | Enabling virtual functions on storage media |
US11656775B2 (en) | 2018-08-07 | 2023-05-23 | Marvell Asia Pte, Ltd. | Virtualizing isolation areas of solid-state storage media |
TWI811461B (zh) * | 2018-09-27 | 2023-08-11 | 日商水道機工股份有限公司 | 陰離子性凝集劑、陰離子性凝集劑之製造方法、及處理方法 |
US11010314B2 (en) | 2018-10-30 | 2021-05-18 | Marvell Asia Pte. Ltd. | Artificial intelligence-enabled management of storage media access |
US10862852B1 (en) | 2018-11-16 | 2020-12-08 | Amazon Technologies, Inc. | Resolution of domain name requests in heterogeneous network environments |
US11025747B1 (en) | 2018-12-12 | 2021-06-01 | Amazon Technologies, Inc. | Content request pattern-based routing system |
US11481118B2 (en) | 2019-01-11 | 2022-10-25 | Marvell Asia Pte, Ltd. | Storage media programming with adaptive write buffer release |
CN113490924A (zh) * | 2019-02-22 | 2021-10-08 | 英特尔公司 | 用于运行时处理器验证的ept和影子页表之间的动态切换 |
US11106481B2 (en) * | 2019-04-19 | 2021-08-31 | Red Hat, Inc. | Safe hyper-threading for virtual machines |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060112247A1 (en) * | 2004-11-19 | 2006-05-25 | Swaminathan Ramany | System and method for real-time balancing of user workload across multiple storage systems with shared back end storage |
US20070050764A1 (en) * | 2005-08-30 | 2007-03-01 | Microsoft Corporation | Hierarchical virtualization with a multi-level virtualization mechanism |
US20080098392A1 (en) * | 2006-10-19 | 2008-04-24 | Wipfel Robert A | Verifiable virtualized storage port assignments for virtual machines |
US20090025007A1 (en) * | 2007-07-18 | 2009-01-22 | Junichi Hara | Method and apparatus for managing virtual ports on storage systems |
CN101385009A (zh) * | 2006-02-09 | 2009-03-11 | 国际商业机器公司 | 从源物理适配器向目的物理适配器迁移虚拟适配器的方法、装置和计算机可用程序代码 |
CN101398770A (zh) * | 2007-09-30 | 2009-04-01 | 赛门铁克公司 | 迁移一个或多个虚拟机的系统和方法 |
Family Cites Families (100)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5239647A (en) * | 1990-09-07 | 1993-08-24 | International Business Machines Corporation | Data storage hierarchy with shared storage level |
EP1032886B1 (en) | 1997-11-14 | 2009-03-18 | Microsoft Corporation | Server operating system for supporting multiple client-server sessions and dynamic reconnection of users to previous sessions |
US6360281B1 (en) | 1998-05-29 | 2002-03-19 | 3Com Corporation | System and method for communicating with a serial communications device using multiple virtual ports |
US7756986B2 (en) * | 1998-06-30 | 2010-07-13 | Emc Corporation | Method and apparatus for providing data management for a storage system coupled to a network |
US6845395B1 (en) * | 1999-06-30 | 2005-01-18 | Emc Corporation | Method and apparatus for identifying network devices on a storage network |
US7010607B1 (en) * | 1999-09-15 | 2006-03-07 | Hewlett-Packard Development Company, L.P. | Method for training a communication link between ports to correct for errors |
US6922724B1 (en) | 2000-05-08 | 2005-07-26 | Citrix Systems, Inc. | Method and apparatus for managing server load |
WO2002065309A1 (en) * | 2001-02-13 | 2002-08-22 | Candera, Inc. | System and method for policy based storage provisioning and management |
IL145104A (en) | 2001-08-23 | 2007-02-11 | Gregory Bondar | A method and system for balancing the load on a computer resource between computers |
US6990604B2 (en) | 2001-12-28 | 2006-01-24 | Storage Technology Corporation | Virtual storage status coalescing with a plurality of physical storage devices |
US20030187853A1 (en) * | 2002-01-24 | 2003-10-02 | Hensley Roy Austin | Distributed data storage system and method |
US7403996B2 (en) * | 2002-02-21 | 2008-07-22 | Bea Systems, Inc. | Systems and methods for migratable services |
US7093038B2 (en) * | 2002-05-06 | 2006-08-15 | Ivivity, Inc. | Application program interface-access to hardware services for storage management applications |
JP4100968B2 (ja) | 2002-06-06 | 2008-06-11 | 株式会社日立製作所 | データマッピング管理装置 |
US7124320B1 (en) * | 2002-08-06 | 2006-10-17 | Novell, Inc. | Cluster failover via distributed configuration repository |
US7379990B2 (en) | 2002-08-12 | 2008-05-27 | Tsao Sheng Ted Tai | Distributed virtual SAN |
US7080225B1 (en) | 2002-12-10 | 2006-07-18 | Emc Corporation | Method and apparatus for managing migration of data in a computer system |
US7606239B2 (en) * | 2003-01-31 | 2009-10-20 | Brocade Communications Systems, Inc. | Method and apparatus for providing virtual ports with attached virtual devices in a storage area network |
JP4256693B2 (ja) * | 2003-02-18 | 2009-04-22 | 株式会社日立製作所 | 計算機システム、i/oデバイス及びi/oデバイスの仮想共有方法 |
JP4716838B2 (ja) | 2005-10-06 | 2011-07-06 | 株式会社日立製作所 | 計算機システム、管理計算機及び管理計算機のボリューム割当変更方法 |
US7085867B2 (en) * | 2003-08-06 | 2006-08-01 | Lsi Logic Corporation | Methods and structure for SCSI2 to SCSI3 reservation protocol mapping |
US20050080982A1 (en) | 2003-08-20 | 2005-04-14 | Vasilevsky Alexander D. | Virtual host bus adapter and method |
US7437730B2 (en) | 2003-11-14 | 2008-10-14 | International Business Machines Corporation | System and method for providing a scalable on demand hosting system |
US20050198303A1 (en) | 2004-01-02 | 2005-09-08 | Robert Knauerhase | Dynamic virtual machine service provider allocation |
JP4555036B2 (ja) * | 2004-09-16 | 2010-09-29 | 株式会社日立製作所 | ストレージ装置及びストレージ装置のデバイス切替制御方法 |
US20060085530A1 (en) * | 2004-10-15 | 2006-04-20 | Emc Corporation | Method and apparatus for configuring, monitoring and/or managing resource groups using web services |
US20060085668A1 (en) * | 2004-10-15 | 2006-04-20 | Emc Corporation | Method and apparatus for configuring, monitoring and/or managing resource groups |
US7308551B2 (en) | 2005-02-25 | 2007-12-11 | International Business Machines Corporation | System and method for managing metrics table per virtual port in a logically partitioned data processing system |
US7334076B2 (en) | 2005-03-08 | 2008-02-19 | Microsoft Corporation | Method and system for a guest physical address virtualization in a virtual machine environment |
US7870317B2 (en) * | 2005-04-29 | 2011-01-11 | Network Appliance, Inc. | Storage processor for handling disparate requests to transmit in a storage appliance |
US7689800B2 (en) | 2005-05-12 | 2010-03-30 | Microsoft Corporation | Partition bus |
US7299337B2 (en) | 2005-05-12 | 2007-11-20 | Traut Eric P | Enhanced shadow page table algorithms |
US8549513B2 (en) | 2005-06-29 | 2013-10-01 | Microsoft Corporation | Model-based virtual system provisioning |
US7525957B2 (en) | 2005-09-01 | 2009-04-28 | Emulex Design & Manufacturing Corporation | Input/output router for storage networks |
JP4852298B2 (ja) | 2005-10-28 | 2012-01-11 | 株式会社日立製作所 | 仮想ボリュームを識別する情報を引き継ぐ方法及びその方法を用いたストレージシステム |
US8549098B2 (en) * | 2006-01-12 | 2013-10-01 | Broadcom Israel Research, Ltd. | Method and system for protocol offload and direct I/O with I/O sharing in a virtualized network environment |
US20070168525A1 (en) | 2006-01-18 | 2007-07-19 | Deleon Baltazar Iii | Method for improved virtual adapter performance using multiple virtual interrupts |
US8230153B2 (en) * | 2006-01-20 | 2012-07-24 | Broadcom Corporation | Method and system for HBA assisted storage virtualization |
US9032164B2 (en) * | 2006-02-17 | 2015-05-12 | Emulex Corporation | Apparatus for performing storage virtualization |
US20070260702A1 (en) | 2006-05-03 | 2007-11-08 | University Of Washington | Web browser architecture for virtual machine access |
US8171466B2 (en) * | 2006-05-16 | 2012-05-01 | Oracle International Corporation | Hitless application upgrade for SIP server architecture |
JP2007328611A (ja) | 2006-06-08 | 2007-12-20 | Hitachi Ltd | ストレージ仮想化システム及び方法 |
US8473566B1 (en) * | 2006-06-30 | 2013-06-25 | Emc Corporation | Methods systems, and computer program products for managing quality-of-service associated with storage shared by computing grids and clusters with a plurality of nodes |
US7877760B2 (en) * | 2006-09-29 | 2011-01-25 | Microsoft Corporation | Distributed hardware state management in virtual machines |
JP4724640B2 (ja) | 2006-10-30 | 2011-07-13 | 富士通株式会社 | ストレージ仮想化スイッチ |
US7761612B2 (en) * | 2006-12-07 | 2010-07-20 | International Business Machines Corporation | Migrating domains from one physical data processing system to another |
US7844851B2 (en) * | 2006-12-13 | 2010-11-30 | Oracle International Corporation | System and method for protecting against failure through geo-redundancy in a SIP server |
US7624262B2 (en) * | 2006-12-20 | 2009-11-24 | International Business Machines Corporation | Apparatus, system, and method for booting using an external disk through a virtual SCSI connection |
US7689862B1 (en) * | 2007-01-23 | 2010-03-30 | Emc Corporation | Application failover in a cluster environment |
US20080186990A1 (en) | 2007-02-02 | 2008-08-07 | International Business Machines Corporation | Translation module, method and computer program product for providing multiple infiniband address support for vm migration using infiniband address translation |
US20080201455A1 (en) | 2007-02-15 | 2008-08-21 | Husain Syed M Amir | Moving Execution of a Virtual Machine Across Different Virtualization Platforms |
EP1962192A1 (en) * | 2007-02-21 | 2008-08-27 | Deutsche Telekom AG | Method and system for the transparent migration of virtual machine storage |
US8458430B2 (en) * | 2007-03-26 | 2013-06-04 | Archion, Inc. | Configurable and scalable storage system |
JP5117748B2 (ja) * | 2007-03-29 | 2013-01-16 | 株式会社日立製作所 | 暗号化機能を備えたストレージ仮想化装置 |
CN101290583B (zh) * | 2007-04-19 | 2011-03-16 | 国际商业机器公司 | 为虚拟机供应图像的方法和系统 |
US20090006537A1 (en) | 2007-06-29 | 2009-01-01 | Microsoft Corporation | Virtual Desktop Integration with Terminal Services |
JP5446076B2 (ja) | 2007-07-17 | 2014-03-19 | 株式会社ニコン | デジタルカメラ |
US8239646B2 (en) * | 2007-07-31 | 2012-08-07 | Vmware, Inc. | Online virtual machine disk migration |
US8645974B2 (en) | 2007-08-02 | 2014-02-04 | International Business Machines Corporation | Multiple partition adjunct instances interfacing multiple logical partitions to a self-virtualizing input/output device |
US8683110B2 (en) | 2007-08-23 | 2014-03-25 | Nec Corporation | I/O system and I/O control method |
US8161243B1 (en) | 2007-09-28 | 2012-04-17 | Intel Corporation | Address translation caching and I/O cache performance improvement in virtualized environments |
US20090089498A1 (en) | 2007-10-02 | 2009-04-02 | Michael Cameron Hay | Transparently migrating ongoing I/O to virtualized storage |
US8949585B2 (en) * | 2007-10-09 | 2015-02-03 | Vmware, Inc. | In-place conversion of virtual machine state |
US8141092B2 (en) | 2007-11-15 | 2012-03-20 | International Business Machines Corporation | Management of an IOV adapter through a virtual intermediary in a hypervisor with functional management in an IOV management partition |
JP2009146106A (ja) | 2007-12-13 | 2009-07-02 | Hitachi Ltd | 物理的な通信ポートに付加される仮想的な通信ポートを移行する機能を有したストレージシステム |
US7890504B2 (en) * | 2007-12-19 | 2011-02-15 | Netapp, Inc. | Using the LUN type for storage allocation |
US8560593B2 (en) | 2008-03-27 | 2013-10-15 | Dell Software Inc. | System for provisioning, allocating, and managing virtual and physical desktop computers in a network computing environment |
US8392482B1 (en) * | 2008-03-31 | 2013-03-05 | Amazon Technologies, Inc. | Versioning of database partition maps |
US8386540B1 (en) * | 2008-03-31 | 2013-02-26 | Amazon Technologies, Inc. | Scalable relational database service |
JP2009259108A (ja) | 2008-04-18 | 2009-11-05 | Toshiba Corp | 情報処理装置および情報処理装置の制御方法 |
US8127086B2 (en) * | 2008-06-06 | 2012-02-28 | International Business Machines Corporation | Transparent hypervisor pinning of critical memory areas in a shared memory partition data processing system |
US8037280B2 (en) | 2008-06-11 | 2011-10-11 | Vmware, Inc. | System and method for improving memory locality of virtual machines |
JP4934642B2 (ja) * | 2008-06-11 | 2012-05-16 | 株式会社日立製作所 | 計算機システム |
US8151032B2 (en) * | 2008-06-26 | 2012-04-03 | Microsoft Corporation | Direct memory access filter for virtualized operating systems |
US8230155B2 (en) * | 2008-06-26 | 2012-07-24 | Microsoft Corporation | Direct memory access filter for virtualized operating systems |
JP2010009396A (ja) | 2008-06-27 | 2010-01-14 | Toshiba Corp | 計算機システム、および計算機システムのデバイス制御方法 |
US20100011368A1 (en) * | 2008-07-09 | 2010-01-14 | Hiroshi Arakawa | Methods, systems and programs for partitioned storage resources and services in dynamically reorganized storage platforms |
US8122225B2 (en) * | 2008-08-12 | 2012-02-21 | International Business Machines Corporation | LUN masking/mapping in a SR-IOV enabled SAS adapter |
US8924961B2 (en) * | 2008-10-29 | 2014-12-30 | Dell Products L.P. | Virtual machine scheduling methods and systems |
US8117487B1 (en) * | 2008-12-29 | 2012-02-14 | Symantec Corporation | Method and apparatus for proactively monitoring application health data to achieve workload management and high availability |
US9740517B2 (en) * | 2008-12-29 | 2017-08-22 | Microsoft Technology Licensing, Llc | Dynamic virtual machine memory management |
US8489721B1 (en) * | 2008-12-30 | 2013-07-16 | Symantec Corporation | Method and apparatus for providing high availabilty to service groups within a datacenter |
US8331362B2 (en) * | 2008-12-30 | 2012-12-11 | Juniper Networks, Inc. | Methods and apparatus for distributed dynamic network provisioning |
US8990800B2 (en) * | 2009-01-14 | 2015-03-24 | Dell Products L.P. | System and method for increased system availability to network storage in virtualized environments |
US9529636B2 (en) * | 2009-03-26 | 2016-12-27 | Microsoft Technology Licensing, Llc | System and method for adjusting guest memory allocation based on memory pressure in virtual NUMA nodes of a virtual machine |
US8443156B2 (en) * | 2009-03-27 | 2013-05-14 | Vmware, Inc. | Virtualization system using hardware assistance for shadow page table coherence |
US8122213B2 (en) * | 2009-05-05 | 2012-02-21 | Dell Products L.P. | System and method for migration of data |
US8054763B2 (en) * | 2009-05-15 | 2011-11-08 | Hewlett-Packard Development Company, L.P. | Migration of switch in a storage area network |
US20100318782A1 (en) * | 2009-06-12 | 2010-12-16 | Microsoft Corporation | Secure and private backup storage and processing for trusted computing and data services |
US9130903B2 (en) | 2009-07-01 | 2015-09-08 | Citrix Systems, Inc. | Unified out of band management system for desktop and server sessions |
US8873375B2 (en) * | 2009-07-22 | 2014-10-28 | Broadcom Corporation | Method and system for fault tolerance and resilience for virtualized machines in a network |
US8613085B2 (en) * | 2009-07-22 | 2013-12-17 | Broadcom Corporation | Method and system for traffic management via virtual machine migration |
US8402461B2 (en) * | 2009-11-15 | 2013-03-19 | Hewlett-Packard Development Company, L. P. | Switching between direct mode and indirect mode for virtual machine I/O requests |
US8468345B2 (en) * | 2009-11-16 | 2013-06-18 | Microsoft Corporation | Containerless data for trustworthy computing and data services |
US20110126197A1 (en) * | 2009-11-25 | 2011-05-26 | Novell, Inc. | System and method for controlling cloud and virtualized data centers in an intelligent workload management system |
US8812799B2 (en) * | 2009-12-11 | 2014-08-19 | International Business Machines Corporation | Cluster families for cluster selection and cooperative replication |
US8850426B2 (en) * | 2009-12-13 | 2014-09-30 | International Business Machines Corporation | Managing remote deployment of a virtual machine and service request to be processed by the virtual machines based on network bandwith and storage connectivity |
US9389895B2 (en) * | 2009-12-17 | 2016-07-12 | Microsoft Technology Licensing, Llc | Virtual storage target offload techniques |
US20110153715A1 (en) * | 2009-12-17 | 2011-06-23 | Microsoft Corporation | Lightweight service migration |
US10146566B2 (en) | 2009-12-21 | 2018-12-04 | Microsoft Technology Licensing, Llc | Enabling virtual desktop connections to remote clients |
-
2009
- 2009-12-17 US US12/640,272 patent/US9389895B2/en active Active
-
2010
- 2010-11-23 CN CN201080057757.4A patent/CN102652305B/zh active Active
- 2010-11-23 WO PCT/US2010/057871 patent/WO2011084257A2/en active Application Filing
- 2010-11-23 EP EP10842429.2A patent/EP2513784A4/en not_active Ceased
- 2010-11-23 RU RU2012130056/08A patent/RU2562436C2/ru active
- 2010-11-23 JP JP2012544559A patent/JP6055310B2/ja active Active
- 2010-11-23 KR KR1020127018504A patent/KR101782342B1/ko active IP Right Grant
-
2016
- 2016-06-08 US US15/177,142 patent/US10248334B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060112247A1 (en) * | 2004-11-19 | 2006-05-25 | Swaminathan Ramany | System and method for real-time balancing of user workload across multiple storage systems with shared back end storage |
US20070050764A1 (en) * | 2005-08-30 | 2007-03-01 | Microsoft Corporation | Hierarchical virtualization with a multi-level virtualization mechanism |
CN101385009A (zh) * | 2006-02-09 | 2009-03-11 | 国际商业机器公司 | 从源物理适配器向目的物理适配器迁移虚拟适配器的方法、装置和计算机可用程序代码 |
US20080098392A1 (en) * | 2006-10-19 | 2008-04-24 | Wipfel Robert A | Verifiable virtualized storage port assignments for virtual machines |
US20090025007A1 (en) * | 2007-07-18 | 2009-01-22 | Junichi Hara | Method and apparatus for managing virtual ports on storage systems |
CN101398770A (zh) * | 2007-09-30 | 2009-04-01 | 赛门铁克公司 | 迁移一个或多个虚拟机的系统和方法 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11736530B2 (en) | 2013-04-19 | 2023-08-22 | Nicira, Inc. | Framework for coordination between endpoint security and network security services |
CN110084039A (zh) * | 2013-04-19 | 2019-08-02 | Nicira股份有限公司 | 用于端点安全与网络安全服务之间的协调的框架 |
CN104301297A (zh) * | 2013-06-03 | 2015-01-21 | 英特尔公司 | 生成指示命令的分组和/或发出该命令的部分执行结果 |
CN104301297B (zh) * | 2013-06-03 | 2018-05-25 | 英特尔公司 | 生成指示命令的分组和发出命令的执行结果的方法和装置 |
US10534552B2 (en) | 2014-10-31 | 2020-01-14 | Huawei Technologies Co., Ltd. | SR-IOV-supported storage resource access method and storage controller and storage device |
CN104461958A (zh) * | 2014-10-31 | 2015-03-25 | 杭州华为数字技术有限公司 | 支持sr-iov的存储资源访问方法、存储控制器及存储设备 |
CN104461958B (zh) * | 2014-10-31 | 2018-08-21 | 华为技术有限公司 | 支持sr-iov的存储资源访问方法、存储控制器及存储设备 |
CN107818054A (zh) * | 2016-09-12 | 2018-03-20 | 联发科技股份有限公司 | 分配连续物理内存空间到设备的方法及系统 |
CN106502721A (zh) * | 2016-09-26 | 2017-03-15 | 华为技术有限公司 | 一种命令卸载方法、装置及物理机 |
CN111247508A (zh) * | 2017-09-05 | 2020-06-05 | 亚马逊科技公司 | 网络存储架构 |
CN111247508B (zh) * | 2017-09-05 | 2024-01-09 | 亚马逊科技公司 | 网络存储架构 |
CN110704163A (zh) * | 2019-09-29 | 2020-01-17 | 浪潮商用机器有限公司 | 一种服务器及其虚拟化存储方法和装置 |
CN114070755A (zh) * | 2020-07-29 | 2022-02-18 | 中移(苏州)软件技术有限公司 | 虚拟机网络流量确定方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
RU2562436C2 (ru) | 2015-09-10 |
EP2513784A4 (en) | 2014-03-12 |
US20170017422A1 (en) | 2017-01-19 |
WO2011084257A3 (en) | 2011-11-17 |
US10248334B2 (en) | 2019-04-02 |
KR20120115519A (ko) | 2012-10-18 |
JP6055310B2 (ja) | 2016-12-27 |
US20110154318A1 (en) | 2011-06-23 |
WO2011084257A2 (en) | 2011-07-14 |
EP2513784A2 (en) | 2012-10-24 |
CN102652305B (zh) | 2015-10-07 |
US9389895B2 (en) | 2016-07-12 |
RU2012130056A (ru) | 2014-01-27 |
KR101782342B1 (ko) | 2017-09-27 |
JP2013514588A (ja) | 2013-04-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102652305B (zh) | 虚拟存储目标卸载技术 | |
US10700979B2 (en) | Load balancing for a virtual networking system | |
US8873375B2 (en) | Method and system for fault tolerance and resilience for virtualized machines in a network | |
EP2831732B1 (en) | System and method for supporting live migration of virtual machines in an infiniband network | |
US7530071B2 (en) | Facilitating access to input/output resources via an I/O partition shared by multiple consumer partitions | |
US20110153715A1 (en) | Lightweight service migration | |
US20080189432A1 (en) | Method and system for vm migration in an infiniband network | |
US20070061441A1 (en) | Para-virtualized computer system with I/0 server partitions that map physical host hardware for access by guest partitions | |
US20070028244A1 (en) | Computer system para-virtualization using a hypervisor that is implemented in a partition of the host system | |
US20130254368A1 (en) | System and method for supporting live migration of virtual machines in an infiniband network | |
CN103733574A (zh) | 虚拟化与非虚拟化网络之间的虚拟化网关 | |
US11550616B2 (en) | Virtual IP support for bare metal cloud infrastructures | |
US11429411B2 (en) | Fast ARP cache rewrites in a cloud-based virtualization environment | |
US11438280B2 (en) | Handling IP network addresses in a virtualization system | |
Guay et al. | Early experiences with live migration of SR-IOV enabled InfiniBand | |
WO2022186997A1 (en) | Job target aliasing in disaggregated computing systems | |
CN115904608A (zh) | 控制平面配置 | |
US20190332413A1 (en) | Migration of services of infrastructure management virtual machines to containers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150611 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20150611 Address after: Washington State Applicant after: Micro soft technique license Co., Ltd Address before: Washington State Applicant before: Microsoft Corp. |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |