Patents Assigned to VMware
  • Publication number: 20110099267
    Abstract: A method includes monitoring a resource consumption of one or more virtual machines on a host computer in a computer network, and suspending the one or more virtual machines based on the resource consumption to free one or more resources on the host computer. The method also includes losslessly handling a request intended for the suspended one or more virtual machines to seamlessly resume the suspended one or more virtual machines. The request includes a network traffic intended for the suspended one or more virtual machines and/or a non-network request.
    Type: Application
    Filed: October 27, 2009
    Publication date: April 28, 2011
    Applicant: VMware, Inc.
    Inventors: Salil SURI, Harish CHILKOTI, Anand SHRIVASTAVA
  • Patent number: 7933981
    Abstract: A process to increase the readability of topology diagrams and to simultaneously show multiple relationships for a large number of elements or nodes in a network. Redundant relationships or connections between nodes are systematically hidden but in such a way that the removed relationships or connections can be inferred from the remaining relationships in the diagram. As a result, diagram elements or nodes are positioned closer to respective related elements and overlapping relationship lines, or connections, in the diagram are greatly reduced.
    Type: Grant
    Filed: June 21, 2006
    Date of Patent: April 26, 2011
    Assignee: VMware, Inc.
    Inventors: Thomas C. Cannon, III, Stephanie Dee
  • Patent number: 7934020
    Abstract: A virtual computer system, including one or more virtual machines (VMs), is connected to a computer network by multiple network interface cards (NICs). The VMs are supported by a kernel, which includes a resource manager for allocating system resources among the VMs, including network data bandwidth. A NIC manager is loaded into the kernel as a driver or is integrated into the kernel, for selecting NICs over which outgoing network data is transferred, including providing functions such as failovers and failbacks, as well as load distribution. Implementing the NIC manager in the kernel provides NIC teaming functions to each of the VMs without having to implement a NIC teaming solution in each of the VMs, adding to the simplicity, flexibility and portability of the VMs. In addition, integrating the NIC manager into the kernel improves the kernel's ability to manage the VMs and to implement network resource allocations for the VMs.
    Type: Grant
    Filed: September 19, 2003
    Date of Patent: April 26, 2011
    Assignee: VMware, Inc.
    Inventors: Hao Xu, Daniel J. Scales
  • Patent number: 7934017
    Abstract: Methods and systems for providing transparent access between computing systems connected to separate networks are provided. Example embodiments provide Grid Location Services (“GLS”) which, in one embodiment integrates multicast DNS (mDNS) technologies with DNS technology to achieve transparent configurability of servers. In one example, an Application Workspace System “AWS” provides a GLS module that transparently provides for the reconfiguration of computing systems, when an AWS service is added, removed, or fails, without reconfiguring all the entities that use those services. This abstract is provided to comply with rules requiring an abstract, and it is submitted with the intention that it will not be used to interpret or limit the scope or meaning of the claims.
    Type: Grant
    Filed: October 30, 2007
    Date of Patent: April 26, 2011
    Assignee: VMware, Inc.
    Inventor: Anthony J. Wilkinson
  • Publication number: 20110093585
    Abstract: A method and program product are provided for implementing object state changes in a data network system that includes at least one application having a plurality of objects. Each object is capable of being in of a plurality of different object states. The method comprises utilizing a network monitor to identify potential object state anomaly candidates from among the plurality of objects and utilizing object measurements taken during a predetermined time segment to determine of the current object state of a potential object state anomaly candidate should change from the current object state to an updated object state.
    Type: Application
    Filed: October 21, 2009
    Publication date: April 21, 2011
    Applicant: VMWARE, INC.
    Inventors: Moshe ZADKA, Netta GAVRIELI, Ido BARAV, Nadav WEXLER
  • Publication number: 20110088030
    Abstract: Completion interrupts corresponding to I/O requests issued by a virtual machine guest, which runs on a host platform, are virtualized in such a way that I/O completion interrupts to the requesting guest are delivered no faster than it can stably handle them, but, when possible, faster than the nominal speed of a virtual device to which a virtual machine addresses the I/O request. In general, completion events received from the host platform in response to guest I/O requests are examined with respect to time. If enough time has passed that the virtual device would normally have completed the I/O request, then the completion interrupt is delivered to the guest. If the nominal time has not elapsed, however, the invention enqueues and time-stamps the event and delivers it at the earliest of a) the normal maturity time, or b) at a safepoint.
    Type: Application
    Filed: December 14, 2010
    Publication date: April 14, 2011
    Applicant: VMWARE, INC.
    Inventors: Ole AGESEN, Boris WEISSMAN, Keith ADAMS, Jennifer-Ann M. ANDERSON, Maxime AUSTRUY
  • Publication number: 20110088047
    Abstract: A computer readable storage medium containing a program which, when executed by a processor, performs an operation of emulating static thread local storage of an executable software code at runtime, is disclosed. The operation includes executing the executable software code within a process memory space. During the execution of the executable software code, an occurrence of an event that is associated with a thread create operation is monitored. When the monitored event occurs, a thread data block duplicate is established within the process memory space and associated with a thread created by the thread create operation. The thread data block duplicate is configured to be accessed by executing a thread local storage callback function.
    Type: Application
    Filed: December 20, 2010
    Publication date: April 14, 2011
    Applicant: VMWARE, INC.
    Inventor: Jonathan CLARK
  • Publication number: 20110088027
    Abstract: One embodiment is a method of installing a block-level write tracking driver in a Microsoft Windows™ operating system so that no reboot of the system is need, another embodiment is a method of installing a block-level write tracking driver in a Linux operating system so that no reboot of the system is needed, and still another embodiment is a method of tracking block-level writes to snapshots under newer Microsoft Windows™ operating systems.
    Type: Application
    Filed: March 24, 2010
    Publication date: April 14, 2011
    Applicant: VMWARE, INC.
    Inventors: Alexei JELVIS, Ilia LANGOUEV, Ping LU, Aleksey Vasilyevich PERSHIN, Erik WEATHERS
  • Patent number: 7925850
    Abstract: A system for increasing the efficiency of migrating, at least in part, a virtual machine from a source host to a destination host is described wherein the content of one or more portions of the address space of the virtual machine are each uniquely associated at the source host with a signature that may collide, absent disambiguation, with different content at the destination host. Code in both the source and destination hosts disambiguates the signature(s) so that each disambiguated signature may be uniquely associated with content at the destination host, and so that collisions with different content are avoided at the destination host. Logic is configured to determine whether the content uniquely associated with a disambiguated signature at the destination host is already present in the destination host memory, and, if so, to back one or more portions of the address space of the virtual machine having this content with one or more portions of the destination host memory already holding this content.
    Type: Grant
    Filed: February 16, 2007
    Date of Patent: April 12, 2011
    Assignee: VMware, Inc.
    Inventors: Carl Waldspurger, Osten Kit Colbert, Xiaoxin Chen, Rajesh Venkatasubramanian
  • Publication number: 20110082962
    Abstract: A method for monitoring a data structure maintained by guest software within a virtual machine is disclosed. Changes to the contents of the data structure are determined, such as by placing write traces on the memory pages containing the data structure. Also, the method involves determining when memory pages containing the data structure are swapped into and/or out of guest physical memory by the guest software, such as by placing write traces on the memory pages containing the guest page table and detecting changes to the present bit of page table entries involved in mapping virtual addresses for the data structure. Information about the contents of the data structure is retained while memory pages containing the data structure are swapped out of guest physical memory.
    Type: Application
    Filed: October 1, 2009
    Publication date: April 7, 2011
    Applicant: VMWARE, INC.
    Inventors: Oded HOROVITZ, Ophir RACHMAN, Wei XU, Adrian DRZEWIECKI, Xiaoxin CHEN
  • Patent number: 7921197
    Abstract: A computer implemented method for configuring virtual internal networks for testing is provided. The method includes deploying a virtual firewall and deploying a public switch enabling access to an external local area network through a first interface of the virtual firewall. A private switch enabling access to a plurality of virtual machines through a second interface of the virtual firewall is provided. The plurality of virtual machines define a private network behind the firewall. A network address is assigned to the virtual firewall and a private address is assigned to each of the virtual machines. The plurality of virtual machines are then tested through a test launcher in communication with the public switch.
    Type: Grant
    Filed: November 19, 2008
    Date of Patent: April 5, 2011
    Assignee: VMware, Inc.
    Inventor: Govindarajan Soundararajan
  • Publication number: 20110078361
    Abstract: In a computer system supporting execution of virtualization software and at least one instance of virtual system hardware, an interface is provided into the virtualization software to allow a program to directly define the access characteristics of its program data stored in physical memory. The technique includes providing data identifying memory pages and their access characteristics to the virtualization software which then derives the memory access characteristics from the specified data. Optionally, the program may also specify a pre-defined function to be performed upon the occurrence of a fault associated with access to an identified memory page. In this manner, programs operating both internal and external to the virtualization software can protect his memory pages, without intermediation by the operating system software.
    Type: Application
    Filed: September 30, 2009
    Publication date: March 31, 2011
    Applicant: VMWARE, INC.
    Inventors: Xiaoxin CHEN, Pratap SUBRAHMANYAM
  • Publication number: 20110075664
    Abstract: Methods and systems for implementing private allocated networks in a virtual infrastructure are presented. One method operation creates virtual switches in one or more hosts in the virtual infrastructure. Each port in the virtual switches is associated with a private allocated network (PAN) from a group of possible PANs. In one embodiment, one or more PANs share the same physical media for data transmission. The intranet traffic within each PAN is not visible to nodes that are not connected to the each PAN. In another operation, the method defines addressing mode tables for the intranet traffic within each PAN. The entries in the addressing mode tables define addressing functions for routing the intranet traffic between the virtual switches, and different types of addressing functions are supported by the virtual switches.
    Type: Application
    Filed: September 30, 2009
    Publication date: March 31, 2011
    Applicant: VMWARE, INC.
    Inventors: Walter Andrew LAMBETH, Anupam DALAL, Borislav DEIANOV, Jun XIAO
  • Publication number: 20110072208
    Abstract: Distributed storage resources are managed based on data collected from online monitoring of workloads on the storage resources and performance characteristics of the storage resources. Load metrics are calculated from the collected data and used to identify workloads that are migration candidates and storage units that are migration destinations, so that load balancing across the distributed storage resources can be achieved.
    Type: Application
    Filed: September 24, 2009
    Publication date: March 24, 2011
    Applicant: VMWARE, INC.
    Inventors: Ajay GULATI, Irfan AHMAD, Chethan KUMAR
  • Publication number: 20110072426
    Abstract: A computer system having a plurality of processor cores utilizes a device driver running in a driver virtual machine to handle I/O with the corresponding device for other virtual machines. A hypervisor in the computer system receives an interrupt from the corresponding device and identifies a virtual machine that best correlates to the received interrupt prior to forwarding the interrupt for handling by the driver virtual machine. The hypervisor then speculatively transmits a notification to the identified virtual machine to wake up and poll a memory shared between the identified virtual machine and the driver virtual machine. Once the driver virtual machine completes handling of the forwarded interrupt, it copies data made available by the corresponding device to the shared memory for access by the polling identified virtual machine.
    Type: Application
    Filed: September 18, 2009
    Publication date: March 24, 2011
    Applicant: VMWARE, INC.
    Inventors: Wei HUANG, Xiaoxin CHEN, Michal OSTROWSKI, Qicheng Christopher LI
  • Patent number: 7912951
    Abstract: A method and system for providing quality of service to a plurality of hosts accessing a common resource is described. According to one embodiment, a plurality of IO requests is received from clients executing as software entities on one of the hosts. An IO request queue for each client is separately managed, and an issue queue is populated based on contents of the IO request queues. When a host issue queue is not full, a new IO request is entered into the host issue queue and is issued to the common resource. A current average latency observed at the host is calculated, and an adjusted window size is calculated at least in part based on the current average latency. The window size of the issue queue is adjusted according to the calculated window size.
    Type: Grant
    Filed: October 28, 2008
    Date of Patent: March 22, 2011
    Assignee: VMware, Inc.
    Inventors: Ajay Gulati, Irfan Ahmad, Carl A. Waldspurger
  • Publication number: 20110066819
    Abstract: Techniques for migrating persistent data of virtual machines between and across data stores are optimized using special tracking data structures and monitoring methods. Special tracking data structures include an incremental change block tracking bitmap that indicate what blocks have been modified during a copy operation. The determination of whether any one block has been modified during the copy operation is based on whether or not the copy operation has progressed past that block. Another special tracking data structure is a Bloom filter, which provides a space-efficient data structure for keeping track of dirtied blocks. In addition, heat-based optimization techniques are applied so that blocks that are frequently updated are filtered and not transferred to the destination data store until the last iteration of the migration process.
    Type: Application
    Filed: September 14, 2010
    Publication date: March 17, 2011
    Applicant: VMWARE, INC.
    Inventors: Ali MASHTIZADEH, Min CAI, Emre CELEBI
  • Publication number: 20110066597
    Abstract: Persistent data of virtual machines are migrated between and across data stores using a method that provides for a bounded disk size, low performance overhead, arbitrarily low downtimes, atomic switch-over, and ability to build optimizations based around block level heuristics. The method includes the steps of copying the persistent data at the source data store to the destination data store, updating a bitmap data structure during the copying step to indicate which blocks of the persistent data have been modified during the copying step, identifying the blocks that have been modified during the copying step using the bitmap data structure, and copying the identified blocks to the destination data store. The method may further include the step of determining that the number of the identified blocks is below a predetermined threshold and suspending the virtual machine prior to the second copying step.
    Type: Application
    Filed: September 14, 2010
    Publication date: March 17, 2011
    Applicant: VMWARE, INC.
    Inventors: Ali MASHTIZADEH, Osten Kit COLBERT
  • Publication number: 20110066786
    Abstract: A virtual machine is suspended and quickly restarted while maintaining the VM's state. The method is quick enough so that network connections are maintained across the restart and the guest operating system and guest applications running in the VM are not aware of the restart. As a result, users and clients connected to the VM do not notice any downtime or disruption to the VM. After suspension and before the restart, VM configuration changes that would not be possible or be very difficult through code changes alone while the VM was running can be made.
    Type: Application
    Filed: September 14, 2009
    Publication date: March 17, 2011
    Applicant: VMWARE, INC.
    Inventor: Osten Kit COLBERT
  • Patent number: 7908646
    Abstract: In a virtual computer system, the invention virtualizes a primary protection mechanism, which restricts memory accesses based on the type of access attempted and a current hardware privilege level, using a secondary protection mechanism, which is independent of the hardware privilege level. The invention may be used to virtualize the protection mechanisms of the Intel IA-64 architecture. In this embodiment, virtual access rights settings in a virtual TLB are translated into shadow access rights settings in a hardware TLB, while virtual protection key settings in a virtual PKR cache are translated into shadow protection key settings in a hardware PKR cache, based in part on the virtual access rights settings. The shadow protection key settings are dependent on the guest privilege level, but the shadow access rights settings are not.
    Type: Grant
    Filed: October 1, 2007
    Date of Patent: March 15, 2011
    Assignee: VMware, Inc.
    Inventors: Xiaoxin Chen, Alberto J. Munoz, Jeffrey W. Sheldon