VMware Patent Grants

Computing a unit rate of power consumed in a data center

Granted: April 25, 2017
Patent Number: 9632553
A power distribution unit having a power supply inputs including mains, secondary, generator, and renewable can be configured to measure how much power is drawn from each of the power supply inputs over a time period and to provide data to a unit rate of power engine indicating the same. A cost information engine can be configured to provide cost information, applicable over the time period, for each of the power supply inputs to the unit rate of power engine. The unit rate of power…

Implicit co-scheduling of CPUs

Granted: April 25, 2017
Patent Number: 9632808
Techniques for implicit coscheduling of CPUs to improve corun performance of scheduled contexts are described. One technique minimizes skew by implementing corun migrations, and another technique minimizes skew by implementing a corun bonus mechanism. Skew between schedulable contexts may be calculated based on guest progress, where guest progress represents time spent executing guest operating system and guest application code. A non-linear skew catch-up algorithm is described that…

High availability for virtual machines in nested hypervisors

Granted: April 25, 2017
Patent Number: 9632813
Techniques for providing high availability to virtual machines executing in a nested hypervisor. A high availability agent executing within a slave computer in a cluster detects when a master server becomes unavailable and restarts virtual machines from the master server in response. The high availability agent detects whether any of the virtual machines were executing a nested hypervisor within the master server and starts a high availability agent within such hypervisors. The high…

Data-agnostic adjustment of hard thresholds based on user feedback

Granted: April 25, 2017
Patent Number: 9632905
This disclosure is directed to data-agnostic computational methods and systems for adjusting hard thresholds based on user feedback. Hard thresholds are used to monitor time-series data generated by a data-generating entity. The time-series data may be metric data that represents usage of the data-generating entity over time. The data is compared with a hard threshold associated with usage of the resource or process and when the data violates the threshold, an alert is typically…

Auto-discovery of pre-configured hyper-converged computing devices on a network

Granted: April 18, 2017
Patent Number: 9626211
In a computer-implemented method for auto-discovery of pre-configured hyper-converged computing devices on a network, upon initial connection to a network, an auto-discovery request is automatically broadcasting over the network, by a first pre-configured hyper-converged computing device for supporting a virtualization infrastructure, to other pre-configured hyper-converged computing devices on the network. A response to the auto-discovery request is received from the other…

Live migration of virtual machines with memory state sharing

Granted: April 18, 2017
Patent Number: 9626212
Embodiments described herein rapidly migrate child virtual machines (VM) by leveraging shared memory resources between parent and child VMs. In a first, proactive phase, parent VMs are migrated to a plurality of potential target hosts. In a second, reactive phase, after a request is received to migrate a child VM to a selected target host, memory blocks that are unique to the child VM are migrated to the selected target host. In some examples, memory blocks are compressed and…

Systems and methods to test programs

Granted: April 18, 2017
Patent Number: 9626284
The embodiments described herein include a host that includes an operating system and a storage simulation module in communication with the host. The storage simulation module includes a pseudo-adapter configured to emulate a storage adapter and a pseudo-storage device coupled to the pseudo-adapter, wherein the pseudo-storage device is configured to emulate a storage device. The storage simulation module is configured to simulate an error event for the pseudo-adapter and/or the…

Single sign on for a remote user session

Granted: April 18, 2017
Patent Number: 9628469
A user accesses a remote session, the connection to which is managed by a connection broker, according to a single sign-on (SSO) process. The SSO process includes the user entering his or her credentials and being authenticated to the connection broker. In addition to user authentication, the SSO process includes connection broker authentication to confirm that the connection broker is trustworthy. When the connection broker is authenticated, the user credentials are transmitted to the…

Method and system for anticipating demand for a computational resource by containers running above guest operating systems within a distributed, virtualized computer system

Granted: April 11, 2017
Patent Number: 9619261
The current document is directed to methods and systems for efficiently executing OSL-virtualization containers within the execution environments provided by virtual machines that execute above traditional virtualization layers within large, virtualized, distributed computing systems. The currently disclosed methods and systems anticipate the need for additional virtual machines in order to meet anticipated demands for one or more computational resources by the containers. In addition,…

Rapid suspend/resume for virtual machines via resource sharing

Granted: April 11, 2017
Patent Number: 9619268
Examples quickly suspend and resume virtual desktops on demand or on schedule. Virtual desktops, or desktops as a service, are provided to users, where the virtual desktop is a forked VM, cloned VM, or otherwise at least a partial duplicate of an existing VM. The virtual desktop points to existing memory maintained by the existing VM, and the virtual desktop only writes to memory the pages that the virtual desktop creates or modifies.

Remote-direct-memory-access-based virtual machine live migration

Granted: April 11, 2017
Patent Number: 9619270
The current document is directed to methods and systems for moving executing virtual machines between host systems in a virtual data center. In described implementations, remote-direct memory access is used for transferring memory contents and, in certain implementations, additional data between the host systems to facilitate live migration of virtual machines. To provide increased efficiency, transfer of the contents of a shared memory page from a source host system to target host…

Large-page optimization in virtual memory paging systems

Granted: April 11, 2017
Patent Number: 9619399
A computer system that is programmed with virtual memory accesses to physical memory employs multi-bit counters associated with its page table entries. When a page walker visits a page table entry, the multi-bit counter associated with that page table entry is incremented by one. The computer operating system uses the counts in the multi-bit counters of different page table entries to determine where large pages can be deployed effectively. In a virtualized computer system having a…

Automated document replication in a distributed computing system

Granted: April 11, 2017
Patent Number: 9619539
In a method of automated document replication in a distributed computing system, a document at a first node of a distributed computing system is analyzed. Based on the analysis, it is determined whether the document has a multi-node affinity. In response to determining that the document has a multi-node affinity, at least one document is automatically replicated between nodes of the distributed computing system. The indicated nodes are indicated based on context of the multi-node…

Automatic placement of clients in a distributed computer system satisfying constraints

Granted: April 11, 2017
Patent Number: 9621427
A cloud management server and method for performing automatic placement of clients in a distributed computer system uses a list of compatible clusters to select an affinity cluster to place the clients associated with an affinity constraint. As part of the placement method, a cluster that cannot satisfy any anti-affinity constraint associated with the clients and the affinity constrain is removed from the list of compatible clusters. After the affinity cluster has been selected, at least…

Media access control (MAC) address table protection in a virtualized computing environment

Granted: April 11, 2017
Patent Number: 9621461
An example method is provided for a network device to protect a Media Access Control (MAC) address table of a network switch in a virtualized computing environment. The method may comprise, in response to receiving a request message from a virtual machine, determining a shared MAC address that is usable for the virtual machine and at least one other virtual machine, modifying a source MAC address of the request message from a MAC address associated with the virtual machine to the shared…

Framework for early congestion notification and recovery in a virtualized environment

Granted: April 11, 2017
Patent Number: 9621471
The congestion notification system of some embodiments sends congestion notification messages from lower layer (e.g., closer to a network) components to higher layer (e.g., closer to a packet sender) components. When the higher layer components receive the congestion notification messages, the higher layer components reduce the sending rate of packets (in some cases the rate is reduced to zero) to allow the lower layer components to lower congestion (i.e., create more space in their…

Firewall configured with dynamic membership sets representing machine attributes

Granted: April 11, 2017
Patent Number: 9621516
A method is provided to control the flow of packets within a system that includes one or more computer networks comprising: policy rules are provided that set forth attribute dependent conditions for communications among machines on the one or more networks; machine attributes and corresponding machine identifiers are obtained for respective machines on the networks; and policy rules are transformed to firewall rules that include machine identifiers of machines having attributes from…

Intelligent data propagation using performance monitoring

Granted: April 11, 2017
Patent Number: 9621654
Exemplary methods, apparatuses, and systems that can intelligently copy data to a plurality of datastores using performance monitoring are described. In one embodiment, a shortest path tree determines the most efficient paths available for copying data from a source datastore to one or more destination datastores. During the copying of the data between a source datastore and the one or more destination datastores, a performance value of each of the datastores involved in the copying…

Opportunistic asynchronous deduplication using an in-memory cache

Granted: April 4, 2017
Patent Number: 9612749
Examples perform asynchronous deduplication of storage, such as virtualized or physical disks. Incoming input/output (I/O) commands containing data are subdivided into blocks which are written both to storage and to an in-memory cache. As idle processing resources become available, deduplication is performed on the storage using the in-memory cache. In this manner, read operations from storage are avoided in favor of the read operations from the in-memory cache.

Comparing states of a virtual machine

Granted: April 4, 2017
Patent Number: 9612859
In a computer-implemented method for comparing states of a virtual machine, a plurality of selectable states including a current state of a virtual machine and at least one snapshot of the virtual machine are presented for selection, wherein the at least one snapshot includes a state of the virtual machine at a previous state. Responsive to a selection of at least two states of the plurality of selectable states, a comparison tool for comparing information between the at least two states…