VMWARE, INC. Patent applications |
Patent application number | Title | Published |
20160127321 | METHOD AND SYSTEM FOR VPN ISOLATION USING NETWORK NAMESPACES - One embodiment of the present invention provides a system for providing exclusive access to a virtual private network (VPN) connection to an authorized application. During operation, the system creates a unique network namespace that is different from a default network namespace of a host system. The system then places a pseudo network interface associated with the VPN connection into the unique network namespace. Furthermore, the system places at least one socket for an authorized application into the unique network namespace. The system also precludes unauthorized applications on the host from accessing the unique network namespace, thereby facilitating exclusive access to the VPN connection by the authorized application. | 05-05-2016 |
20160110434 | METHOD AND SYSTEM THAT DETERMINE WHETHER OR NOT TWO GRAPH-LIKE REPRESENTATIONS OF TWO SYSTEMS DESCRIBE EQUIVALENT SYSTEMS - The current document is directed to methods and systems that determine whether or not two graph-like representations of two physically or temporally distinct computer systems or computer-system configurations are equivalent. The currently described methods and systems extract a first and second ordered set of subgraphs from each of a first and second graph-like representation of a first and a second computer system. The ordered sets of subgraphs are logically aligned, forming a set of subgraph pairs. The currently described methods and systems transform the first and second subgraph of each subgraph pair into a corresponding first and second set of trees, label the trees, and then compare labels at each level of the trees to determine whether or not an isomorphic tree can be found in the second set of trees for each tree in the first set of trees. | 04-21-2016 |
20160103744 | SYSTEM AND METHOD FOR SELECTIVELY UTILIZING MEMORY AVAILABLE IN A REDUNDANT HOST IN A CLUSTER FOR VIRTUAL MACHINES - Techniques for selectively utilizing memory available in a redundant host system of a cluster are described. In one embodiment, a cluster of host systems, with at least one redundant host system, with each host system having a plurality of virtual machines with associated virtual machine (VM) reservation memory is provided. A portion of a data store is used to store a base file, the base file accessed by all the plurality of virtual machines. A portion of the memory available in the redundant host system is assigned as spare VM reservation memory. A copy of the base file is selectively stored in the spare VM reservation memory for access by all the plurality of virtual machines. | 04-14-2016 |
20160098810 | Watermarking and Scalability Techniques for a Virtual Desktop Planning Tool - A method for measuring performance of virtual desktop services offered by a server including a processor is described. A first encoded watermark is embedded into user interface display generated by a virtual desktop when initiating an operation. The first encoded watermark includes pixels identifying the operation and indicating its initiation. A second encoded watermark is embedded into the user interface upon completion of the operation indicating completion of the operation. An action performance time is then computed and stored in a memory. Multiple performance times may be compiled from multiple operations of multiple virtual desktops to assess the performance of the system as a whole. | 04-07-2016 |
20160087992 | PROVIDING VIRTUAL DESKTOPS USING RESOURCES ACCESSED ON PUBLIC COMPUTER NETWORKS - A computer system supports hosting of virtual desktops using resources available in the cloud. Connections to various resources used by a desktop configuration are made dynamically using authentication information associated with the user assigned to the desktop configuration. In addition to using file storage, directory services and user management information on private resources on a private network, these resources may also be accessed through a public network. | 03-24-2016 |
20160085392 | SYSTEM AND METHOD FOR SEAMLESSLY INTEGRATING SEPARATE INFORMATION SYSTEMS WITHIN AN APPLICATION - The present invention is, in one embodiment, a system and method based on a client-server architecture for seamlessly integrating various information systems. In one embodiment, a bundle of files is deployed to a collaboration client, in order to enable the integration of the collaboration client with disparate information systems and content. In one embodiment, content within a mailbox item is allowed to become a “live” object, and is associated with trigger events, and actions, including sending all or part of the content to a separate information system. In one embodiment, mailbox items are subjected to predefined searches to assess whether they include certain content objects. In another embodiment, panel item elements are visible in the overview panel of the collaboration client. The user may interact with the panel items by dragging content onto them, double clicking them, and invoking actions from a context menu if one is available. | 03-24-2016 |
20160080546 | CONTROLLING USE OF A BUSINESS ENVIRONMENT ON A MOBILE DEVICE - A business environment on a mobile device can be controlled by an enterprise server by receiving identifying information transmitted from a mobile device, wherein the identifying information identifies a user of the mobile device to the enterprise server. A virtual phone template is transmitted to the mobile device, wherein the virtual phone template (i) corresponds to the identifying information, and (ii) is configured to provide the business environment on the mobile device as a virtual machine running on a hypervisor installed on top of a host operating system of the mobile device. The enterprise server then receives a periodic transmission from the mobile device to indicate that the mobile device remains in periodic communication with the enterprise server. | 03-17-2016 |
20160072723 | METHOD AND SYSTEM FOR DETERMINING BANDWIDTH DEMAND - A method, a non-transitory computer-readable storage medium, and a computer system for managing bandwidth allocated to a virtual machine running on a host computer is disclosed. In an embodiment, a method involves obtaining the current bandwidth for a virtual machine running on a host computer, determining bandwidth demand for the virtual machine as a function of the current bandwidth and a growth margin, and adjusting a bandwidth cap for the virtual machine based on the determined bandwidth demand. In an embodiment, when applied, the technique allows for bandwidth to be allocated to the virtual machines without the sum of allocated bandwidth exceeding a global bandwidth cap. | 03-10-2016 |
20160070587 | LOAD BALANCING OF CLONED VIRTUAL MACHINES - A method, a non-transitory computer-readable storage medium, and a computer system for managing the placement of virtual machines in a virtual machine network are disclosed. In an embodiment, a method involves determining if at least one virtual machine in a set of virtual machines supporting a process and running on a first host computer needs to be separated from other virtual machines in the set. If at least one virtual machine needs to be separated, then at least one virtual machine is selected to be separated based on the number of memory pages changed. The selected VM is then separated from the other virtual machines in the set. | 03-10-2016 |
20160057559 | PROVISIONING WORK ENVIRONMENTS ON PERSONAL MOBILE DEVICES - A virtual business mobile device can be provisioned on a personal mobile device, by binding a mobile application for provisioning the business mobile device to a privileged component of a host operating system of the personal mobile device, wherein the binding enables a software virtualization layer and a management service component of the mobile application to execute in a privileged mode. The mobile application is then able to download a virtual phone image for the business mobile device and security-related policy settings relating to use of the business mobile device from a mobile management server, wherein the software virtualization layer is able to launch a virtual machine for the business mobile device based on the virtual phone image. Once the virtual phone image has been downloaded, the management service component initiates a periodic attempt to establish a connection with the mobile management server to comply with the downloaded security-related policy settings. | 02-25-2016 |
20160057041 | AUTOMATIC REMEDIATION OF POOR-PERFORMING VIRTUAL MACHINES FOR SCALABLE APPLICATIONS - A management system and method for remediating poor-performing clients running in a distributed computer system uses a machine learning technique to automatically detect one or more poor-performing clients among a plurality of clients running in the distributed computer based on at least performance data and resource usage data of the clients. An action is then initiated to mitigate the effects of the poor-performing clients. | 02-25-2016 |
20160028658 | DISTRIBUTED VIRTUAL SWITCH FOR VIRTUALIZED COMPUTER SYSTEMS - A runtime state of a virtual port associated with a virtual machine (“VM”) is persisted as the VM is migrated from a source host to a destination host. In certain embodiments, a virtual switch forwards network frames between the VM and the physical network interface via the virtual port. During migration of the VM, the runtime state of the virtual port is transferred to the destination host and applied at the second host to a virtual port associated with a second virtual switch at the destination host. The runtime state of the virtual port at the source host is then cleared, and the second virtual switch at the destination host forwards network frames between the migrated VM and the physical network interface of the destination host using the virtual port at the second host. | 01-28-2016 |
20160026474 | CACHING BASED OPERATING SYSTEM INSTALLATION - An image of system software is installed by loading an executable image of the system software using a boot loader, where the executable image includes a kernel and a plurality of files used by the kernel. The kernel of the system software is executed to generate the image of the system software that includes a copy of the kernel. Generating the image of the system software involves the steps of generating a plurality of pointers that each point to a different one of the files, retrieving the files using the pointers, and storing a copy of the kernel and the files in a storage device from which the system software is to be booted as the image of the system software. | 01-28-2016 |
20160021024 | ADAPTIVE RESOURCE MANAGEMENT OF A CLUSTER OF HOST COMPUTERS USING PREDICTED DATA - A resource management system and method for performing resource management operations in a distributed computer system uses predicted resource demands for a specified time in the future to change a resource management option of a resource management analysis algorithm prior to the specified time so that the resource management analysis algorithm can be executed in anticipation of the predicted resource demands at the specified time. | 01-21-2016 |
20160021019 | UNIVERSAL VIRTUALIZED RESOURCE MANAGEMENT - A universal resource management system and method for performing resource management operations for different computing environments uses a universal snapshot of the different computing environments to perform a resource management analysis to produce at least one recommended action for the different computing environments. The universal snapshot is created using state information collected from the different computing environments. The recommended action is then implemented in at least one of the different computing environments. | 01-21-2016 |
20150379259 | DYNAMIC DATABASE AND API-ACCESSIBLE CREDENTIALS DATA STORE - A system for managing credentials for authenticating and securely communicating with trusted hosts, for example, in a cloud computing environment. The system dynamically updates credentials stored in a database and injects the updated credentials back into a runtime environment without restarting the runtime environment or applications running on the runtime environment. Embodiments of the present invention further enable credentials to be tracked and managed on a per-tenant basis, allowing each tenant that is running an application on a runtime environment to customize which hosts should be trusted. | 12-31-2015 |
20150379167 | CROWD-SOURCED OPERATIONAL METRIC ANALYSIS OF VIRTUAL APPLIANCES - A system and method for performing an operational metric analysis for a virtual appliance uses application operational data from multiple instances of the virtual appliance. The application operational data is then used to generate an operational metric prediction for the virtual appliance. | 12-31-2015 |
20150379110 | AUTOMATED METHODS AND SYSTEMS FOR CALCULATING HARD THRESHOLDS - This disclosure is directed to automated methods and systems for calculating hard thresholds used to monitor time-series data generated by data-generating entity. The methods are based on determining a cumulative distribution that characterizes the probability that data values of time-series data generated by the data-generating entity violate a hard threshold. The hard threshold is calculated as an inverse of the cumulative distribution based on a user defined risk confidence level. The hard threshold may then be used to generate alerts when time-series data generated later by the data-generating entity violate the hard threshold. | 12-31-2015 |
20150378839 | RECOVERY SYSTEM AND METHOD FOR PERFORMING SITE RECOVERY USING REPLICATED RECOVERY-SPECIFIC METADATA - A recovery system and method for performing site recovery utilizes recovery-specific metadata and files of protected clients at a primary site to recreate the protected clients at a secondary site. The recovery-specific metadata is collected from at least one component at the primary site, and stored with the files of protected clients at the primary site. The recovery-specific metadata and the files of the protected clients are replicated to the secondary site so that the protected clients can be recreated at the secondary site using the replicated information. | 12-31-2015 |
20150378762 | MONITORING AND DYNAMIC CONFIGURATION OF VIRTUAL-MACHINE MEMORY-MANAGEMENT - The current document is directed to methods and systems for monitoring the performance of memory management in virtual machines. By accurately measuring the performance of memory management in virtual machines, a virtualization layer can dynamically reconfigure virtual machines to use more optimal memory-management methods, intelligently schedule execution of virtual machines to increase memory-management performance, and migrate virtual machines among different servers and computer systems to increase memory-management performance. | 12-31-2015 |
20150372855 | METHOD AND SYSTEM FOR CLUSTERING EVENT MESSAGES - The current document is directed to methods and systems for processing, classifying, and efficiently storing large volumes of event messages generated in modern computing systems. In a disclosed implementation, received event messages are normalized to identify non-parameter tokens within the event messages. The non-parameter event tokens are used to compute a metric for each event message. The metrics are used, in turn, to identify a type-associated cluster to which to assign each received event message. The type-associated clusters are created dynamically as streams of event messages are processed. The type-associated clusters may be dynamically split and merged to refine event-message typing. | 12-24-2015 |
20150370885 | METHOD AND SYSTEM FOR CLUSTERING EVENT MESSAGES AND MANAGING EVENT-MESSAGE CLUSTERS - The current document is directed to methods and systems for processing, classifying, and efficiently storing large volumes of event messages generated in modern computing systems. In a disclosed implementation, received event messages are assigned to event-message clusters based on non-parameter tokens identified within the event messages. A parsing function is generated for each cluster that is used to extract data from incoming event messages and to prepare event records from event messages that more efficiently and accessible store event information. The parsing functions also provide an alternative basis for assignment of event massages to clusters. | 12-24-2015 |
20150370799 | METHOD AND SYSTEM FOR CLUSTERING AND PRIORITIZING EVENT MESSAGES - The current document is directed to methods and systems for processing, classifying, and efficiently storing large volumes of event messages generated in modern computing systems. In a disclosed implementation, received event messages are assigned to clusters based on metrics computed for the event messages. In addition, a significance value is determined for each received event message. When the significance value exceeds a threshold value, one or more actions are taken, including marking an event record corresponding to the event message, storing an event record corresponding to the event message in a significant-event log, and generating a notice or alarm. | 12-24-2015 |
20150370763 | HTML5 GRAPH OVERLAYS FOR APPLICATION TOPOLOGY - A user may create a blueprint that specifies an application's architecture, including virtual machines (VM) nodes, software services and application components within the VM nodes. To do so, the user manipulates a graphical user interface (GUI) rendered by a graph layout manager and a Scalable Vector Graphics (SVG) layout engine. The SVG layout engine parses declarative layout configurations and translates the declarative layout into SVG elements that visually represent the blueprint. Additional information may be rendered in independent layers overlaid on the GUI which a user may selectively activate or de-activate to show or hide, respectively, the additional information. The layers may be generated using extension points exposed via the declarative layout. | 12-24-2015 |
20150370682 | DATA-AGNOSTIC ADJUSTMENT OF HARD THRESHOLDS BASED ON USER FEEDBACK - 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 generated and presented to a user. Methods and systems collect user feedback after a number of alerts to determine the quality and significance of the alerts. Based on the user feedback, methods and systems automatically adjust the hard thresholds to better represent how the user perceives the alerts. | 12-24-2015 |
20150370583 | SYSTEM AND METHOD FOR SIMULATING VIRTUAL MACHINE (VM) PLACEMENT IN VIRTUAL DATACENTERS - A placement simulator is used for testing a placement engine in a virtual machine environment. The placement simulator includes a simulation controller, an event manager, and an inventory manager. The simulation controller receives input data for a simulated datacenter. The event manager invokes event handlers for a sequence of events from the input data. The inventory manager stores states of inventory objects to simulate deployment of virtual infrastructure resources by the placement engine based on the sequence of the events. | 12-24-2015 |
20150363232 | METHODS AND SYSTEMS FOR CALCULATING STATISTICAL QUANTITIES IN A COMPUTING ENVIRONMENT - This disclosure is directed to methods and systems for calculating statistical quantities of computational resources used by distributed data sources in a computing environment. In one aspect, a master node receives a query regarding use of computational resources used by distributed data sources of a computing environment. The data sources generate metric data that represents use of the computational resources and distribute the metric data to two or more worker nodes. The master node directs each worker node to generate worker-node data that represents the metric data received by each of the worker nodes and each worker node sends worker-node data to the master node. The master node receives the worker-node data and calculates a master-data structure based on the worker-node data, which may be used to estimate percentiles of the metric data in response to the query. | 12-17-2015 |
20150363216 | METHOD AND SYSTEM FOR MANAGING HOSTS THAT RUN VIRTUAL MACHINES WITHIN A CLUSTER - Embodiments of a non-transitory computer-readable storage medium and a computer system are disclosed. In an embodiment, a non-transitory computer-readable storage medium containing program instructions for managing host computers that run virtual machines into host-groups within a cluster is disclosed. When executed, the instructions cause one or more processors to perform steps including determining if a virtual machine entity needs additional resources and, if the virtual machine entity needs additional resources, mapping a host computer to a host-group with which the virtual machine entity is associated. | 12-17-2015 |
20150350360 | FEEDBACK LAYER FOR NATIVE CONTENT DISPLAY IN VIRTUAL DESKTOP INFRASTRUCTURE - In one embodiment, a mobile computing device receives content in a desktop compatible format. The content is generated by a remote desktop executing an application. The mobile computing device determines a conversion of at least a first portion of the content to a native display format of the mobile computing device and displays the conversion of the at least the first portion of the content in the native display format on an interface. Also, the mobile computing device displays at least a second portion of the content in the desktop compatible format on the interface where the at least the second portion of the content in the desktop compatible format corresponds to the conversion of the at least the first portion of the content in the native display format of the mobile computing device. | 12-03-2015 |
20150350101 | CUSTOMIZED CONFIGURATION OF CLOUD-BASED APPLICATIONS PRIOR TO DEPLOYMENT - A cloud computing environment consists of a cloud deployment platform with an application management server executing thereon, and a cloud management server configured to manage a plurality of virtual machines deployed in a cloud infrastructure. When a cloud-based application is deployed to the cloud infrastructure, a deployment plan for the cloud-based application is read, where the deployment plan comprises a first plurality of tasks to be executed in the cloud infrastructure. A determination is made that one or more custom tasks are required to be executed in the cloud infrastructure. After the determination, the one or more custom tasks are inserted into the first plurality of tasks to generate a second plurality of tasks. The second plurality of tasks is then transmitted to the cloud management server for execution in the cloud infrastructure. | 12-03-2015 |
20150347266 | Analyzing I/O Traces - Systems and techniques are described for analyzing input output I/O traces. One of the techniques includes receiving an I/O trace, the I/O trace identifying a temporal sequence of previously submitted I/O requests; partitioning the I/O trace into a plurality of partitions based on a load pattern of the I/O requests in the I/O trace and a data access pattern of the I/O requests in the I/O trace; and generating a signature for each partition, wherein the signature for each of the partitions identifies characteristics of the I/O requests in the partition, and wherein the characteristics of the I/O requests in the partition include the load pattern of the I/O requests in the partition and the data access pattern of the I/O requests in the partition. | 12-03-2015 |
20150347264 | TRACKING APPLICATION DEPLOYMENT ERRORS VIA CLOUD LOGS - A cloud computing environment consists of a cloud deployment platform and a cloud management server configured to manage a plurality of virtual machines deployed in a cloud infrastructure. When a request to deploy an application to the cloud infrastructure is received by the cloud deployment platform, application deployment errors are monitored and tracked. A unique identifier is generated for each virtual machine, and requests to instantiate the virtual machines in the cloud infrastructure are then transmitted. A log containing error records that identify the occurrence of deployment errors is monitored based on the generated virtual machine identifiers, where the deployment errors are detected by the cloud deployment platform or the cloud management server. Based on the monitoring, error messages are generated by the cloud deployment platform. | 12-03-2015 |
20150347170 | GROUPING VIRTUAL MACHINES IN A CLOUD APPLICATION - An application is deployed to a cloud computing environment, where the application is executed using a plurality of virtual machines, including a first virtual machine, that execute on hosts in the cloud computing environment. To deploy the application, an application identifier is generated and a first virtual machine identifier is generated for the first virtual machine. The first virtual machine is then instantiated in the cloud computing environment. A second virtual machine identifier for the first virtual machine is then generated. An association among the application identifier, the first virtual machine identifier, and the second virtual machine identifier is then created. | 12-03-2015 |
20150347018 | CUSTOMIZABLE VIRTUAL DISK ALLOCATION FOR BIG DATA WORKLOAD - An example method to allocate a virtual disk for a virtual machine in a virtualized computing system includes allocating a plurality of virtual machine disk file (VMDK) candidates in a virtual machine file system (VMFS) volume, selecting a subset of VMDK candidates from the plurality of VMDK candidates for having performance scores indicative of higher I/O throughputs associated with the one or more physical hard disks than rest of the plurality of VMDK candidates, and configuring the virtual disk based on the subset of the VMDK candidates. The VMFS volume is supported by one or more physical hard disks in a storage system in the virtualized computing system. | 12-03-2015 |
20150347005 | KEY COMBINATIONS TOOLBAR - Techniques disclosed herein permit users to input keyboard key combinations via context menu shortcuts. A context menu may be invoked by long-pressing a function key such as “Ctrl.” The context menu includes key combination shortcuts associated with the pressed function key. For example, key combination shortcuts presented in the context menu for “Ctrl” may include “Ctrl+A,” “Ctrl+C,” “Ctrl+X,” “Ctrl+V,” and “Ctrl+Alt+Del.” The user can input a desired key combination by tapping on an appropriate shortcut. The context menu may include default and/or user-specified key combinations. Default key combinations may be application or operating system specific. In addition, users may configure desired key combinations to be displayed in the context menu for a given function key. | 12-03-2015 |
20150341221 | Customizing Network Configuration of Virtual Machines Using Subnet Mapping Rules - Techniques disclosed herein provide disaster recovery IP customization based on rules associated with virtual networks that virtual machines (VMs) are connected to. In one embodiment, the rules are applied to each recovered VM to dynamically derive new TCP/IP settings at a recovery site based on TCP/IP settings used at a protected site and the virtual networks that the VMs is connected to at the protected and recovery sites. In particular, the rules may be defined in IP mapper objects associated with mappings between protected site networks and recovery site networks. During disaster recovery, the protected-site-to-recovery-site network mapping for a vNIC of a recovered VM is determined and rules that are defined in the IP mapper object associated with such a network mapping are evaluated to generate new TCP/IP settings. | 11-26-2015 |
20150341176 | Digitally Signing JSON Messages - Systems and techniques are described for digitally signing JavaScript Object Notation (JSON) messages. One of the techniques includes receiving a JavaScript Object Notation (JSON) message; and digitally signing the JSON message, wherein digitally signing the JSON message comprises: generating a digital signature information JSON object; inserting the digital signature information JSON object into the JSON message; generating a canonical representation of the JSON message with the inserted digital signature information JSON object; generating a digital signature of the canonical representation of the JSON message; and inserting the digital signature into the digital signature information JSON object. | 11-26-2015 |
20150339475 | APPLICATION WHITELISTING USING USER IDENTIFICATION - Methods and systems for protecting a virtual machine network are disclosed. In an embodiment, a method involves storing an application whitelist including application-to-user associations in memory such that the application whitelist is immutable by a guest virtual machine, receiving a request to execute an application including an application identifier and a user identifier, comparing the application identifier and the user identifier of the request with the application whitelist, and generating an execution decision indicating whether the requested application can execute on the guest virtual machine. | 11-26-2015 |
20150339180 | APPLICATION AWARE SERVICE POLICY ENFORCEMENT AND AUTONOMOUS FEEDBACK-BASED REMEDIATION - A virtualization platform can discover capabilities of data devices connected in a virtual infrastructure. The virtualization platform allows a user (e.g., system administrator) to specify a policy profile for a virtual machine in terms of performance and data handling parameters. The virtualization platform can provision a virtual machine comprising data devices having a combined capability that matches the policy profile. Enforcement of a policy profile can be made when I/O is performed by a virtual machine. | 11-26-2015 |
20150339144 | MAINTAINING VIRTUAL HARDWARE DEVICE ID IN A VIRTUAL MACHINE - An example method to maintain services in a cloned virtual machine (VM) includes detecting a cloning operation of a virtual machine, the cloning operation causing the cloned virtual machine to be generated from a source virtual machine having a first virtual network interface card (VNIC) with a first machine access control (MAC) address, the cloned virtual machine having a second VNIC with a second MAC address unique from the first MAC address, and causing a device identifier associated with the second VNIC of the cloned virtual machine to be changed to match a device identifier associated with the first VNIC of the source virtual machine, the device identifier of the cloned virtual machine being generated by a guest operating system running in the cloned virtual machine upon detection of the presence of the second VNIC with the second MAC address. | 11-26-2015 |
20150339143 | APPLICATION AWARE STORAGE RESOURCE MANAGEMENT - A virtualization platform can discover capabilities of data devices connected in a virtual infrastructure. The virtualization platform allows a user (e.g., system administrator) to specify a policy profile for a virtual machine in terms of performance and data handling parameters. The virtualization platform can provision a virtual machine comprising data devices having a combined capability that matches the policy profile. Enforcement of a policy profile can be made when I/O is performed by a virtual machine. | 11-26-2015 |
20150319222 | OPERATING SYSTEM MIGRATION WHILE PRESERVING APPLICATIONS, DATA, AND SETTINGS - An enterprise management system is described for efficient operating system migration, preserving applications, data, and settings. A staging area, such as an empty folder, is created on a client device. A base layer for the new operating system and application layers for applications that will be installed on the computing device are downloaded to the staging area. After the base layer and application layers are downloaded, the layers are merged onto the computing device to instantly install the operating system and the applications. User settings, data, and other applications can be migrated to corresponding locations in the new operating system from the old operating system. | 11-05-2015 |
20150317326 | INLINE GARBAGE COLLECTION FOR LOG-STRUCTURED FILE SYSTEMS - Exemplary methods, apparatuses, and systems receive a command to overwrite or delete data stored within an allocated portion of a file system. In response to the command, an entry is added to a first data structure. A write command is received. The portion of the file system added to the first data structure is formatted for reallocation. In performance of the write command, the portion of the file system is reallocated. Portions of the file system are allocated from a second data structure when the second data structure includes a sufficient amount of space to satisfy the write command and from the first data structure when the second data structure does not include a sufficient amount of space. The second data structure includes free portions of the file system that have been formatted for allocation. The first data structure includes free portions that have yet to be formatted. | 11-05-2015 |
20150312116 | VIRTUAL PERFORMANCE MONITORING DECOUPLED FROM HARDWARE PERFORMANCE-MONITORING UNITS - The current document is directed to virtualized PMUs provided by virtualization layers. The currently disclosed virtualized PMUs are decoupled from the underlying PMU hardware features of processors on which the virtualization layer executes. The decoupling is achieved, in part, by time multiplexing the underlying hardware PMU registers to provide a greater number of virtualized PMU registers than the number of hardware-PMU registers provided by at least some of the underlying hardware PMUs. The decoupling is also achieved by providing for monitoring, by the virtualized PMU registers, of computed processor events and approximated processor events in addition to the processor events monitored by the underlying hardware PMUs. In addition, the virtualized PMU registers are implemented, in certain implementations, to support a variety of different monitoring modes, including monitoring of processor events that occur only during execution of the virtualization layer and monitoring of hardware-thread-specific processor events. | 10-29-2015 |
20150309901 | EMULATING A STRETCHED STORAGE DEVICE USING A SHARED STORAGE DEVICE - Exemplary methods, apparatuses, and systems include receiving a device discovery command from a recovery manager running on a management server within a first or second datacenter. In response to the device discovery command, device identifiers for one or more logical storage devices within the first datacenter are requested. In response to the request, a device discovery response including a first identifier is received. The received device discovery response is modified to include the first device identifier as the identifier for both an underlying logical storage device and as an identifier for a peer logical storage device. The modified response is returned to the recovery manager in response to the device discovery command. | 10-29-2015 |
20150309890 | EMULATING A STRETCHED STORAGE DEVICE USING A SHARED REPLICATED STORAGE DEVICE - Exemplary methods, apparatuses, and systems include receiving a command from a recovery manager running on a management server within a first or second datacenter. In response to the command, device identifiers for one or more logical storage devices within the first datacenter are requested. In response to the request, a first device identifier for a first logical storage device within the first datacenter and a peer device identifier for a second logical storage device within the second datacenter are received. Data is replicated from the first logical storage device to the second logical storage device. The first and second logical storage devices are in an active-passive configuration, the first logical storage device storing the replicated data being active and the second logical storage device storing the replicated data being passive. The command with the peer device identifier is sent to the underlying storage. | 10-29-2015 |
20150309827 | CONVERTING VIRTUAL MACHINE I/O REQUESTS - Systems, computer readable mediums, and techniques are described for converting virtual machine input/output (I/O) requests. One of the techniques includes obtaining access request data for one or more virtual machines (VMs) executing on a physical machine, wherein the access request data characterizes data access requests received from the one or more VMs; classifying, using the access request data, each of the one or more VMs as having either a sequential data access pattern or a random data access pattern; receiving a first I/O request packet from a first VM of the one or more VMs; determining that the first VM has been classified as having a random data access pattern; and splitting the first I/O request packet into a plurality of second I/O request packets based at least in part on determining that the first VM has been classified as having a random data access pattern. | 10-29-2015 |
20150309826 | METHOD AND SYSTEM FOR GENERATING REMEDIATION OPTIONS WITHIN A CLUSTER OF HOST COMPUTERS THAT RUN VIRTUAL MACHINES - A method for adjusting the configuration of host computers in a cluster on which virtual machines are running in response to a failed change in state is disclosed. The method involves receiving at least one reason a change in state failed the present check or the future check, associating the at least one reason with at least one remediation action, wherein the remediation action would allow the change in state to pass both a present check and a future check, assigning the at least one remediation action a cost, and determining a set of remediation actions to perform based on the cost assigned to each remediation action. In an embodiment, the steps of this method may be implemented in a non-transitory computer-readable storage medium having instructions that, when executed in a computing device, causes the computing device to carry out the steps. | 10-29-2015 |
20150309825 | METHOD AND SYSTEM FOR SUPPORTING A CHANGE IN STATE WITHIN A CLUSTER OF HOST COMPUTERS THAT RUN VIRTUAL MACHINES - A method for supporting a change in state within a cluster of host computers that run virtual machines is disclosed. The method involves identifying a change in state within a cluster of host computers that run virtual machines, determining if predefined criteria for available resources within the cluster of host computers can be met by resources available in the cluster of host computers, and determining if predefined criteria for available resources within the cluster of host computers can be maintained after at least one different predefined change in state. In an embodiment, the steps of this method may be implemented in a non-transitory computer-readable storage medium having instructions that, when executed in a computing device, causes the computing device to carry out the steps. | 10-29-2015 |
20150309736 | TECHNIQUES FOR REDUCING READ I/O LATENCY IN VIRTUAL MACHINES - A computer implemented method for reducing the latency of an anticipated read of disk blocks from a swap file in a virtualized environment. The environment includes a host swap file maintained by a host operating system and a guest swap file maintained but a guest operating system. First, the method identifies a sequence of disk blocks that was written in the guest swap file. The method then detects within the sequence of blocks a first disk block that contains a reference to a second disk block that is stored in the host swap file. The method then replaces the first disk block in the guest swap file with the second disk block. | 10-29-2015 |
20150309735 | TECHNIQUES FOR REDUCING READ I/O LATENCY IN VIRTUAL MACHINES - A computer implemented method for reducing the latency of an anticipated read of disk blocks from a swap file in a virtualized environment. First, the method identifies a sequence of disk blocks that was written in a guest swap file. The method then detects a first reference within the sequence of blocks that references a first disk block stored in a host swap file and a second reference within the sequence of blocks that references a second disk block stored in the host swap file. The method then moves the second disk block to a location in a host swap file that is adjacent to the first disk block. In some examples, the first block and second block are both moved to a new location in the host swap file where they are adjacent to one another. | 10-29-2015 |
20150304655 | TIMESTAMP IN PERFORMANCE BENCHMARK - A method is provided for a computer to measure performance. The method includes capturing frames of at least a portion of a video on the computer and detecting timestamps on the captured frames, and determining a frame rate of the video playback based on the timestamps. Each timestamp includes data elements of first and second colors that are spaced apart from each other and set against a background of a third color so adjacent data elements are separated by areas of the third color. | 10-22-2015 |
20150304433 | GESTURE BASED SWITCHING OF VIRTUAL DESKTOP CLIENTS - A computer implemented method receives a switch session request from a source client device that is running a virtual desktop session. The method identifies a list of one or more potential destination client devices based on the source client device. The method then selects a desired destination client device from the list, disconnects the virtual desktop session from the source client device, and establishes a connection between the virtual desktop session and the desired destination client device. | 10-22-2015 |
20150302621 | CONCEALING SENSITIVE INFORMATION ON A DISPLAY - An example method is provided for a computing device, coupled to a first display and a second display, to conceal sensitive information on a display. The method may comprise in response to detecting sensitive information in a desktop shown on the first display, generating a replacement image that conceals the detected sensitive information in the desktop and sending the replacement image to the second display for display. Otherwise, a mirror image of the desktop shown on the first display may be sent to the second display for display. | 10-22-2015 |
20150301946 | Page Compressibility Checker - Techniques for checking the compressibility of a memory page that is allocated to a virtual machine (VM) running on a host system are provided. In one embodiment, the host system can determine a compression ratio for the memory page by compressing the memory page using a first compression algorithm. The host system can then compare the compression ratio to a threshold. If the compression ratio does not exceed the threshold, the host system can predict that the memory page is compressible by a second compression algorithm that is distinct from the first compression algorithm. On average, the second compression algorithm can be slower, but achieve a lower compression ratio, than the first compression algorithm. | 10-22-2015 |
20150301843 | Content-Based Swap Candidate Selection - Techniques for building a list of swap candidate pages for host swapping are provided. In one embodiment, a host system can determine a swap target virtual machine (VM) and a target number of swap candidate pages. The host system can further select a memory page from a memory space of the swap target VM and can check whether the memory page is sharable or compressible. If the memory page is sharable or compressible, the host system can add the memory page to the list of swap candidate pages. | 10-22-2015 |
20150293815 | PREDICTING STORAGE CAPACITY AND PERFORMANCE REQUIREMENTS OF A BACKUP SOLUTION - Techniques are described for predicting the storage capacity and performance requirements for deploying and maintaining a backup solution within an enterprise. In particular, a backup system is described which uses an initial pilot phase, during which the system can gather information about the files and data on each end user's device (i.e., client device) that will be backed up and provide a more realistic estimate and resource planning for the backup solution deployment. This initial pilot phase can be performed before any content is actually backed up from the client devices. | 10-15-2015 |
20150293772 | VIRTUAL SWITCH AND VIRTUAL SWITCH PORT MANAGEMENT FOR VM AVAILABILITY - Techniques for virtual switch and virtual switch port management for VM availability in a cluster are described. In one example embodiment, a determination is made as to whether a virtual switch port on a first virtual switch associated with a first VM network is available for powering on the VM on a first host computing system. Based on the outcome of the determination either further determination is then made as to whether a virtual switch port on a second virtual switch associated with the first VM network is available to power on the VM on a second host computing system or migration of the VM in a power-off state is initiated to the second host computing system and powered-on on the second host computing system via the virtual switch port on the second virtual switch associated with the first VM network associated. | 10-15-2015 |
20150288727 | SOFTPHONE OVER DESKTOP-AS-A-SERVICE (DAAS) - Techniques for delivering telephone access are provided. In one embodiment, a server system can determine a telephone number assigned to a user operating a client device. The server system can further retrieve, based on the telephone number, softphone configuration data from a telephony service, where the softphone configuration data enables a softphone associated with the client device to register itself, and the telephone number, with the telephony service. The server system can then transmit the softphone configuration data to the client device. | 10-08-2015 |
20150286753 | Estimating Think Times - Methods, systems, and computer programs, for estimating think times. One of the methods includes receiving a request to perform a test of one or more computing resources. The test of the one or more computing resources is performed by simulating an interaction of one or more simulated users with the one or more computing resources. Requests are submitted from the simulated user for execution by the one or more computing resources. Respective response times of the one or more computing resources to each of the requests are measured. An estimated think time of the simulated user is computed, wherein the estimated think time is computed based on at least one preceding response time. | 10-08-2015 |
20150281049 | FAST LOOKUP AND UPDATE OF CURRENT HOP LIMIT - In order to facilitate efficient and scalable lookup of current hop limits of transmitted packets, a communications device embeds hop limit values along with other connection parameters in a connection data structure. To transmit a packet for a particular connection, the communications device retrieves the data structure for the particular connection and applies the hop limit value embedded in the data structure to the packet for transmission. To keep track of the hop limits being embedded in different data structures of different connections, the communications device use a binary search in which each node of the search tree correspond to a different connection. The communications device maintains one such search tree per communications interface. | 10-01-2015 |
20150281048 | INGRESS ECMP IN VIRTUAL DISTRIBUTED ROUTING ENVIRONMENT - A logical routing element (LRE) having multiple designated instances for routing packets from physical hosts (PH) to a logical network is provided. A PH in a network segment with multiple designated instances can choose among the multiple designated instances for sending network traffic to other network nodes in the logical network according to a load balancing algorithm. Each logical interface (LIF) of an LRE is defined to be addressable by multiple identifiers or addresses, and each LIF identifier or address is assigned to a different designated instance. | 10-01-2015 |
20150278046 | METHODS AND SYSTEMS TO HOT-SWAP A VIRTUAL MACHINE - Methods and systems to limit the duration of a service interruption caused by a failed middleware application server are disclosed. One example method and system includes monitoring the operational status of a first virtual machine operating as a primary server and the operational status of a second virtual machine operating as a stand-by server and, based on the monitored operational status of the first and second virtual machines, performing a hot-swap to cause the second virtual machine to operate as the primary server and the first virtual machine to operate as the stand-by server. The first and second virtual machines are implemented on a same host processing system. After the hot-swap, the first virtual machine is restarted. In some examples, the first virtual machine and the second virtual machine are implemented on a same host processing system. Performing the hot-swap can include causing the first virtual machine to be uncoupled from a network and causing the second virtual machine to be coupled to the network. In some examples, the method also includes causing copy of a first file system used by the primary server to be stored as a second file system for use by the stand-by server. | 10-01-2015 |
20150278042 | VM AVAILABILITY DURING MIGRATION AND VM NETWORK FAILURES IN HOST COMPUTING SYSTEMS - Techniques for virtual machine (VM) availability during migration network failure and VM network failure in a first host computing system in a failover cluster are described. In one example embodiment, migration and VM network failure in the first host computing system is identified, wherein the first host computing system being configured to migrate VMs using the migration network and to route network traffic of VMs via the VM network. A migration network is then temporarily configured for the first host computing system over a management network in the virtual datacenter, wherein the management network being used to manage host computing systems by virtual management software (VMS) residing in a management server. The VMs running on the first host computing system are then migrated to at least one other host computing system in the failover cluster via the migration network temporarily configured on the management network. | 10-01-2015 |
20150278041 | VM AVAILABILITY DURING MANAGEMENT AND VM NETWORK FAILURES IN HOST COMPUTING SYSTEMS - Techniques for virtual machine (VM) availability during management network failure and VM network failure in a first host computing system in a failover cluster are described. In one example embodiment, management network failure is identified in the first host computing system. The management network being coupled to a virtual management software in a management server and used for management functions. Migration of the VMs running on the first host computing system is then initiated to at least one other host computing system in the failover cluster via a migration network by a failover agent associated with the first host computing system. The migration network being isolated from the virtual management software and capable of handling live migrations. | 10-01-2015 |
20150277953 | USING VIRTUAL LOCAL AREA NETWORKS IN A VIRTUAL COMPUTER SYSTEM - A virtual computer system includes virtualization software, and one or more physical network interfaces for connecting to one or more computer networks. The visualization software supports one or more virtual machines (VMs), and exports one or more virtual network interfaces to the VM(s) to enable the VM(s) to access the computer network(s) through the physical network interface(s). The virtualization software modifies and filters network data frames from the VM(s) and from the physical network interfaces) to restrict one or more VMs to one or more virtual local area networks (VLANs) that are implemented within a VLAN topology. Restricting a VM to a VLAN Omits the broadcast domain to which the VM belongs, which may reduce security risks facing the VM. implementing the VLAN functionality within the virtualization software provides the functionality to every VM in the computer system, without requiring every VM to provide the functionality. | 10-01-2015 |
20150277952 | RAPID CREATION AND RECONFIGURATION OF VIRTUAL MACHINES ON HOSTS - A rapid virtual machine (VM) cloning technique is provided that creates cloned VMs on hosts from multiple source VMs, rather than a single source VM that may otherwise be a bottleneck. The described technique selects particular hosts, disposed in particular racks, on which to create VM clones in a dynamic manner that reduces total deployment time for the plurality of VMs. A rapid VM reconfiguration technique is also provided that reduces the time spent reconfiguring the provisioned VMs for use in a distributed computing application. | 10-01-2015 |
20150277951 | AUTO-SCALING VIRTUAL SWITCHES - A port is dynamically added to and removed from a virtual switch. The new port may be allocated when there is sufficient free memory in a pool of memory associated with the virtual switch. When an existing port is deallocated, the portion of the pool of memory allocated to that existing port is freed up. As a result, a virtual machine that requires one or more ports on the virtual switch may be provisioned on a host so long as the pool of memory is sized properly and memory usage on the host is not excessive. | 10-01-2015 |
20150277775 | MIGRATING WORKLOADS ACROSS HOST COMPUTING SYSTEMS BASED ON REMOTE CACHE CONTENT USAGE CHARACTERISTICS - Techniques for migrating workloads across host computing systems in a virtual computing environment are described. In one embodiment, a workload executing on a first host computing system that accesses contents cached in a cache of a second host computing system via a remote memory channel for a predetermined number of times is identified. Further, migration of the identified workload to the second host computing system is recommended, thereby allowing the identified workload to access the contents from the second host computing system after migration in accordance with the recommendation. | 10-01-2015 |
20150271259 | WORKFLOW PROCESSING IN A DISTRIBUTED COMPUTING ENVIRONMENT - An example method is provided to perform workflow processing in a distributed computing environment comprising a first node, a second node and a data store accessible by the first node and second node. The method may comprise the first node retrieving, from the data store, state information associated with a workflow being processed by the second node. The method may further comprise, in response to determination that load balancing from the second node to the first node is required based on the state information of the workflow, the first node initiating the load balancing by updating the state information of the workflow in the data store. If the state information is successfully updated, the first node may resume processing of the workflow by performing a workflow step to be completed by the second node, but otherwise, abandon the load balancing. | 09-24-2015 |
20150271030 | METHODS AND SYSTEMS FOR DETECTION OF DATA ANOMALIES - The disclosure presents computational methods and systems for detecting and correcting, or deleting, data anomalies in data generated by information technology business management (“ITBM”) systems. In one aspect, a method receives a record of data generated by an ITBM system. The record of data includes data types and associated numerical values recorded over a number of time periods. The method detects one or more data anomalies in the record of data based on the numerical values of the data types in the time periods and reports a set of the one or more data anomalies to a user. The method also enables a user to correct the data anomalies in the recorded data based on the user's decision to selectively correct or delete each of the data anomalies. | 09-24-2015 |
20150269062 | DEFINING TEST BED REQUIREMENTS - Systems and techniques are described for defining test bed requirements. A described technique includes receiving data specifying a first test to be performed for a software application. The data identifies test bed requirements for the first test. Data identifying characteristics of each of available test beds are obtained. Each available test bed includes one or more computing resources on which software tests are performed. The characteristics of each available test bed specify characteristics of the one or more computing resources included in the available test bed. A determination is made that the characteristics of a particular test bed of the available test beds satisfy the test bed requirements for the first test. In response to determining that the characteristics of the particular test bed satisfy the test bed requirements, the first test is performed using the particular test bed. | 09-24-2015 |
20150268978 | BINARY EDITING OF APPLICATIONS EXECUTED BY VIRTUAL MACHINES - Systems and techniques are described for modifying an executable file of an application and executing the application using the modified executable file. A described technique includes receiving, by a virtual machine, a request to perform an initial function of an application and an executable file for the application. The virtual machine modifies the executable file by redirecting the executable file to a custom runtime library that includes a custom function configured to initialize the application and to place the application in a paused state. A custom function call is added to the custom function in the executable file. The virtual machine initializes the application by executing the modified executable file, the executing causing the custom function to initialize the application and place the application in a paused state. | 09-24-2015 |
20150268865 | METHODS AND SYSTEMS FOR CALCULATING THE COST OF LOGICAL CAPACITY CONTAINERS - The disclosure presents methods and systems for determining cost allocation for logical containers run on a data-center infrastructure. In one aspect, for each resource allocated to one or more logical containers, a method calculates a resource allocation value for each of the one or more logical containers, the resource allocation value represents an amount of the resource allocated to the logical container. An allocated container cost is then calculated for each of the one or more logical containers based on the resource allocation value of each logical container. A cost of unused portions of the resource for each of the one or more logical containers is calculated based on the allocated container cost and the resource allocation value associated with each logical container. The resource allocation value, the allocated container cost, and the cost of unused portion of the resource are stored in one or more data-storage devices. | 09-24-2015 |
20150268837 | MULTI MODE EXTENDABLE OBJECT SELECTOR - A object selector for supporting at least one selectable view is described. The object selector includes: a selectable view accessor configured for accessing a set of selectable views, wherein each selectable view of the set of selectable views is configured for displaying data associated with at least one selected item; an integrated selectable view renderer configured for rendering at least one integrated selectable view by integrating the at least one selected item into at least one selectable view of the set of selectable views; and an integrated selectable view displayer configured for displaying the at least one integrated selectable view. | 09-24-2015 |
20150263974 | LARGE RECEIVE OFFLOAD FOR VIRTUAL MACHINES - A network interface controller (NIC) that includes a set of receive NIC queues capable of performing large receive offload (LRO) operations by aggregating incoming receive packets is provided. Each NIC queue turns on or off its LRO operation based a set of LRO enabling rules or parameters, whereby only packets that meet the set of rules or parameters will be aggregated in the NIC queue. Each NIC queue is controlled by its own set of LRO enabling rules such that the LRO operations of the different NIC queues can be individually controlled. | 09-17-2015 |
20150263968 | SNOOPING FORWARDED PACKETS BY A VIRTUAL MACHINE - A method for performing LRO aggregation on packets being forwarded by a VM is provided. The method segments the LRO aggregated packet according to the Maximum Segment Size (MSS) of the TCP protocol before forwarding the segmented packets to their destination. The method snoops the packets being forwarded for its MSS parameter before using the snooped MSS parameter to perform Transmit Segmentation Offload (TSO) operation. The PNIC performs both the aggregation operation (LRO) and the segmentation (TSO) within its own hardware without consuming CPU cycles at the host machine. The PNIC receives the MSS parameter from the network stack as a metadata that accompanies a LRO aggregated packet. | 09-17-2015 |
20150261576 | OPTIMIZING MEMORY SHARING IN A VIRTUALIZED COMPUTER SYSTEM WITH ADDRESS SPACE LAYOUT RANDOMIZATION ENABLED IN GUEST OPERATING SYSTEMS - Systems and techniques are described for optimizing memory sharing. A described technique includes grouping virtual machines (VMs) into groups including a first group; initializing a first VM in the first group, wherein initializing the first VM includes identifying, for each of one or more first memory pages for the first VM, a respective base address for storing the first memory page using an address randomization technique, and storing, for each of the one or more first memory pages, data associating the first memory page with the respective base address for the first group, and initializing a second VM while the first VM is active, wherein initializing the second VM includes determining that the second VM is a member of the first group, and in response, storing one or more second memory pages for the second VM using the respective base addresses stored for the first group. | 09-17-2015 |
20150261556 | LARGE RECEIVE OFFLOAD FOR VIRTUAL MACHINES - A network interface controller (NIC) that includes a set of receive NIC queues capable of performing large receive offload (LRO) operations by aggregating incoming receive packets is provided. Each NIC queue turns on or off its LRO operation based a set of LRO enabling rules or parameters, whereby only packets that meet the set of rules or parameters will be aggregated in the NIC queue. Each NIC queue is controlled by its own set of LRO enabling rules such that the LRO operations of the different NIC queues can be individually controlled. | 09-17-2015 |
20150261459 | MIGRATING WORKLOADS ACROSS HOST COMPUTING SYSTEMS BASED ON CACHE CONTENT USAGE CHARACTERISTICS - Techniques for migrating workloads across host computing systems in a virtual computing environment are described. In one embodiment, workloads executing on different host computing systems that access identical contents that are stored on storage devices are identified, with the identical contents often being cached in a cache of each of the different host computing systems. Further, migration of one or more of the identified workloads is recommended to consolidate the identified workloads on a single host computing system, thereby allowing the identical contents to be cached within the single host computing system and allowing the identified workloads to access the cached identical contents from the single host computing system after migration in accordance with the recommendation. | 09-17-2015 |
20150261455 | CATASTROPHIC DATA LOSS AVOIDANCE - Exemplary methods, apparatuses, and systems divide data into a plurality of portions such that the data is recoverable using a subset of the plurality of portions. For each portion of the data, a storage device different than storage devices storing all other portions of the data is selected. The selecting of storage devices includes distributing the portions of data based upon diversity of geographic locations of storage devices and diversity of storage device characteristics. The storage device characteristics include at least one of hardware characteristics, software characteristics, and operating history characteristics. Each portion of the data is stored on a corresponding selected storage device. | 09-17-2015 |
20150254364 | ACCESSING A FILE IN A VIRTUAL COMPUTING ENVIRONMENT - In a computer-implemented method for exploring files stored on a virtual disk associated with a virtual machine in a virtual computing environment, at least a virtual disk associated with a virtual machine is displayed in a web user interface. The virtual machine is not powered on. In response to instructions received via the web user interface, the virtual disk is accessed without powering on the virtual machine. One or more files on the virtual disk are presented in the web user interface. | 09-10-2015 |
20150254103 | INSTANT XVMOTION USING A PRIVATE STORAGE VIRTUAL APPLIANCE - Techniques for migrating a virtual machine (VM) from a source host system to a destination host system, where the VM is associated with a source virtual disk file (VMDK) residing in a local storage component of the source host system, are provided. In one embodiment, a virtual infrastructure (VI) server in communication with the source and destination host systems can create a shell directory in the local storage component of the source host system, where the shell directory includes a symbolic link to the source VMDK. The VI server can further promote the shell directory to a private virtual storage appliance (PSVA) running on the source host system. The VI server can then cause an execution state of the VM to be transferred from the source host system to the destination host system, without transferring the source VMDK between the host systems. | 09-10-2015 |
20150254092 | INSTANT XVMOTION USING A HYPERVISOR-BASED CLIENT/SERVER MODEL - Techniques for migrating a virtual machine (VM) from a source host system to a destination host system, where the VM is associated with a source virtual disk file (VMDK) residing in a local storage component of the source host system, are provided. In one embodiment, a virtual infrastructure (VI) server in communication with the source and destination host systems can create a proxy VMDK in a local storage component of the destination host system. The proxy VMDK can include information usable by the destination host system for remotely accessing the source VMDK over a client/server connection. The VI server can then cause an execution state of the VM to be transferred from the source host system to the destination host system, without transferring the source VMDK between the host systems. | 09-10-2015 |
20150254000 | CONFIGURING CACHE FOR I/O OPERATIONS OF VIRTUAL MACHINES - In a computer-implemented method for configuring flash cache for input/output operations to a storage device by a plurality of virtual machines an input/output trace log for each of a plurality of virtual machines is accessed. Performance of each of the plurality of virtual machines based on a plurality of configurations of the flash cache is simulated in real-time. A recommendation of the plurality of configurations of the flash cache for the each of the plurality of virtual machines utilizing results from the simulation is generated. | 09-10-2015 |
20150249709 | EXTENDING CLOUD STORAGE WITH PRIVATE DEVICES - Techniques are described for extending public or enterprise cloud storage systems with private end user devices, such as laptops, personal computers and the like. The system allows users to register their own personal (i.e., private) devices as storage extensions to the cloud storage system. Once a user has registered their device as an extension to the cloud storage system, that device becomes available as a storage location and can be made accessible via the graphical user interface (GUI) provided by the cloud storage system. Thereafter, any user that has been granted permissions to the content is able to access the content stored on the extension device. | 09-03-2015 |
20150248305 | EXTENDING PLACEMENT CONSTRAINTS FOR VIRTUAL MACHINE PLACEMENT, LOAD BALANCING MIGRATIONS, AND FAILOVER WITHOUT CODING - Techniques are described for placing virtual machines (VM) on computer hosts. In one embodiment, a user may compose a constraint specification document which includes VM and host properties and how they are retrieved, as well as constraint predicates that define valid VM placements on hosts. Use of the constraint specification document permits new constraints, including constraints that involve new properties, to be handled without requiring changing the underlying code for collecting required input data and processing said data to determine whether placement constraints are satisfied. Instead, based on the constraint specification document, a resource scheduler or high availability module may program a programmable data collector to fetch the needed properties from the appropriate places. Then, the resource scheduler or high availability module may parse the constraint predicates, evaluate potential placements to determine whether the constraint predicates are satisfied, and place VMs according to placements that satisfy the constraint predicates. | 09-03-2015 |
20150248282 | AUTOMATIC APPLICATION LAYER SUGGESTION - A desktop management system is described that provides an automated process for distributing and suggesting modifications. The system is comprised of a central server and multiple client devices connected through a network. Application layer drafts for a particular modification (such as an installation, update, un-installation, fix, etc.) are generated based on snapshots of client devices before and after the modification is applied. Several application layer drafts are produced for a particular modification. Based on commonalities between the several application layer drafts, an official application layer is produced. When a client device requests a modification, an official application layer for the requested modification is retrieved and merged onto the requesting client device to apply the modification. If a client device on the network lacks an application that is present on similar client devices on the network, the system can suggest the application to the client device. | 09-03-2015 |
20150248281 | AUTOMATIC APPLICATION LAYER CAPTURE - A desktop management system is described that provides an automated process for distributing and suggesting modifications. The system is comprised of a central server and multiple client devices connected through a network. Application layer drafts for a particular modification (such as an installation, update, un-installation, fix, etc.) are generated based on snapshots of client devices before and after the modification is applied. Several application layer drafts are produced for a particular modification. Based on commonalities between the several application layer drafts, an official application layer is produced. When a client device requests a modification, an official application layer for the requested modification is retrieved and merged onto the requesting client device to apply the modification. If a client device on the network lacks an application that is present on similar client devices on the network, the system can suggest the application to the client device. | 09-03-2015 |
20150242226 | METHODS AND SYSTEMS FOR CALCULATING COSTS OF VIRTUAL PROCESSING UNITS - This disclosure presents computational systems and methods for calculating the cost of vCPUs from the cost of CPU computing cycles. In one aspect, a total number of computing cycles used by one or more virtual machines (“VMs”) is calculated based on utilization measurements of a multi-core processor for each VM over a period of time. The method also calculates a total number of virtual CPUs (“vCPUs”) used by the one or more VMs based on vCPU counts for each VM over the period of time. A cost per vCPU is calculated based on the total number of computing cycles, the total number of vCPUs, and cost per computing cycle. The cost per vCPU is stored in a data-storage device. The cost per vCPU can be used to calculate the cost of a VM that uses one or more of the vCPUs. | 08-27-2015 |
20150242204 | METHODS AND APPARATUS TO GENERATE A CUSTOMIZED APPLICATION BLUEPRINT - Methods and apparatus to generate a customized application blueprint are disclosed. An example method includes determining a first computing unit within an application definition, identifying a property for the first computing unit, and generating an application blueprint based on the identified property of the computing unit. | 08-27-2015 |
20150237132 | VIRTUAL MACHINE HIGH AVAILABILITY USING SHARED STORAGE DURING NETWORK ISOLATION - In case of network isolation of a host executing one or more virtual machines, the state of the one of more virtual machines is saved using a variety of isolation response mechanisms. Isolation responses may include a live migration to another host using a shared storage system connected to both hosts, a virtual machine suspend and resume operation, and a snapshot reversion operation. The execution state of the virtual machine(s) running on the isolated host, which includes the state of the guest operating system and any running applications, are maintained in the other host, even after host isolation has occurred. | 08-20-2015 |
20150237117 | WIDE AREA AGGREGATED COMMUNICATIONS - Methods, systems, and techniques for federating operations, in an optimized way using wide area networks are provided. Example systems provide an API for generating and handling federated requests as an aggregation. In one example Wide Area Network Aggregation System, WANAS provides an API, a connection manager, and connection iterators to manage inter-site connections and requests, and inter-pod requests and messaging. These components cooperate to distribute a task across multiple physically disparate sites using a representative connection to the site and fan out of requests to other pods within the site. | 08-20-2015 |
20150237081 | WIDE AREA AGGREGATED COMMUNICATIONS - Methods, systems, and techniques for federating operations, in an optimized way using wide area networks are provided. Example systems provide an API for generating and handling federated requests as an aggregation. In one example Wide Area Network Aggregation System, WANAS provides an API, a connection manager, and connection iterators to manage inter-site connections and requests, and inter-pod requests and messaging. These components cooperate to distribute a task across multiple physically disparate sites using a representative connection to the site and fan out of requests to other pods within the site. | 08-20-2015 |
20150234668 | VIRTUAL MACHINE LOAD BALANCING - Exemplary methods, apparatuses, and systems include virtualization software of a host computer receiving a first packet addressed to a first virtual link layer address. Each of a first plurality of virtual machines on the first host computer is configured to share the first virtual link layer address. The virtualization software of the first host computer maps a flow of packets, including the first packet, to a first virtual machine within the first plurality of virtual machines and forwards the first packet to the first virtual machine. The virtualization software of the first host computer receives a second packet from the first virtual machine in response to the first packet. The second packet includes the first virtual link layer address as a source address for the first virtual machine. | 08-20-2015 |
20150229546 | GRAPHICAL USER INTERFACE FOR DISPLAYING INFORMATION RELATED TO A VIRTUAL MACHINE NETWORK - A graphical user interface for displaying information related to a virtual machine network is disclosed. In an embodiment, a non-transitory computer-readable storage medium stores instructions that, when executed by a computer, enable a graphical user interface to be displayed. The graphical user interface displays information related to a virtual machine network and includes a chart having error indicators organized in rows and columns, wherein an error indicator corresponds to an entity in the virtual machine network at a time and indicates a state of the entity at that time. | 08-13-2015 |
20150229532 | GRAPHICAL USER INTERFACE FOR DISPLAYING INFORMATION RELATED TO A VIRTUAL MACHINE NETWORK - A graphical user interface for displaying information related to a virtual machine network is disclosed. In an embodiment, a non-transitory computer-readable storage medium stores instructions that, when executed by a computer, enable a graphical user interface to be displayed. The graphical user interface, which assists in graphical representation of log data entries in a virtual machine network, includes a circular element that is divided into slices and virtual machine indicator elements that represent virtual machines within each slice. The slices represent various groupings of the virtual machines within the virtual machine network. | 08-13-2015 |
20150227567 | DESKTOP IMAGE MANAGEMENT FOR VIRTUAL DESKTOPS USING ON-DEMAND STUB CREATION - A desktop image management system is described that can efficiently distribute updates to virtual desktops running on host servers in a data center. The system is comprised of a central server and multiple agents, each agent installed on a virtual machine. When a VM receives an update from the central server, the files are stored in a single instance store on the host server. On a first request to open the directory containing the files on the VM, corresponding stub files are created on-demand for each file in the single instance store. The stub files are marked to indicate that they are mapped to the single instance store. Subsequently, when the guest operating system requests to read the stub file, the virtual disk layer of the host server detects that the requested block has been marked and fetches the content of the file from the single instance store. | 08-13-2015 |
20150227384 | DESKTOP IMAGE MANAGEMENT FOR VIRTUAL DESKTOPS - A desktop image management system is described that can efficiently distribute updates to virtual desktops running on host servers in a data center. The system is comprised of a central server and multiple agents, each agent installed on a virtual machine. When a VM receives an update from the central server, the files are stored in a single instance store on the host server. The agent running on the VM then creates a corresponding stub file (empty of content) on the VM for each file in the single instance store. The agent further marks the stub file to indicate that the stub file is mapped to the single instance store. When the guest operating system requests to read the stub file, the virtual disk layer of the host server detects that the requested block has been marked and fetches the content of the file from the single instance store. | 08-13-2015 |
20150227357 | DESKTOP IMAGE MANAGEMENT FOR VIRTUAL DESKTOPS USING A BRANCH REFLECTOR - A desktop image management system is described that can efficiently distribute updates to virtual desktops running on host servers in a data center. The system is comprised of a central server and multiple agents, each agent installed on a virtual machine. When a VM receives an update from the central server, the files are stored in a single instance store on the host server. Corresponding stub files (empty of content) are created on the VM for each file in the single instance store. The stub files are marked to indicate that the stub file is mapped to the single instance store. When the guest operating system requests to read the stub file, the virtual disk layer of the host server detects that the requested block has been marked and fetches the content of the file from the single instance store. | 08-13-2015 |
20150220856 | METHODS AND SYSTEMS FOR DETECTION AND ANALYSIS OF COST OUTLIERS IN INFORMATION TECHNOLOGY COST MODELS - Computational methods and systems for detecting cost outliers in various information technology (“IT”) services provided an IT service provider are described. In one implementation, bills of IT generated for each billing period are converted into corresponding cost-flow models with expense nodes. Each expense node represents a cost for a particular IT services purchased during a billing period. The method searches the expense nodes over the billing periods for cost outliers, and rank orders the cost outliers. The method then analyzes the cost outliers in order to identify a possible root cause for each cost outlier. The rank order and possible cost outliers are stored in a data-storage device. | 08-06-2015 |
20150215624 | ENHANCED IMAGE ENCODING IN A VIRTUAL DESKTOP INFRASTRUCTURE ENVIRONMENT - A method is provided to perform enhanced image encoding in a virtual desktop infrastructure (VDI) environment that includes a client device having a first graphical user interface (GUI) and a server device having a second GUI associated with the first GUI. One example method may include receiving, from the client device, user interface (UI) events based on which the first GUI is to be updated, and obtaining, by an agent on the server device, UI information relating to a UI element on the second GUI. The method may further include determining, by the agent on the server device, an encoding configuration for an encoder based at least in part on the UI information, encoding image data of the second GUI based on the encoding configuration, and sending encoded image data to the client device to update the first GUI on a screen of the client device. | 07-30-2015 |
20150215276 | SYSTEM AND METHOD FOR DYNAMICALLY CONFIGURING A DNS SERVER IN A VIRTUAL NETWORK ENVIRONMENT - Techniques for dynamic configuration of a domain name system (DNS) server in a virtual network environment are described. In one example embodiment, DNS rules are configured using virtual machine (VM) inventory objects and associated DNS names. Further, the configured DNS rules are transformed by replacing the VM inventory objects in the configured DNS rules with associated Internet protocol (IP) addresses using an IP address management (IPAM) table or a network address translation (NAT) table and the DNS names in the configured DNS rules with modified DNS names using a zone table and a view table. Furthermore, the transformed DNS rules are sent to the DNS server for performing domain name resolutions associated with multiple VMs running on a plurality of host computing systems in a computing network. | 07-30-2015 |
20150215234 | APPLICATION SERVICE LEVEL OBJECTIVE AWARE DEMAND ESTIMATION - A management server and method for performing resource management operations in a distributed computer system uses at least one sampling parameter to estimate demand of a client for a resource. The sampling parameter has a correlation with at least one target performance goal of an application that the client is running. The demand estimation can then be used to make at least one decision in a resource management operation. | 07-30-2015 |
20150212910 | HIGH AVAILABILITY ACROSS GEOGRAPHICALLY DISJOINT CLUSTERS - Exemplary methods, apparatuses, and systems include a first virtual infrastructure management (VIM) server monitoring a first host device to determine if the first host device receives one or more messages within an interval of time from a first storage device indicating a failure of one or more logical disks within the first storage device. The first VIM server manages a first virtual datacenter including the first host device and the first storage device. A second VIM server manages a second virtual datacenter including a second host device and a second storage device. The logical disk is replicated on the second storage device. The first VIM server determines, that a plurality of virtual machines running on the first host device is dependent upon the logical disk(s). The first VIM server performs, in response to the dependency upon the logical disk, a failover of the virtual machines to the second host device. | 07-30-2015 |
20150212860 | Power-Aware Scheduling - Systems and techniques are described for power-aware scheduling. One of the techniques includes monitoring execution of a plurality of groups of software threads executing on a physical machine, wherein the physical machine comprises a physical hardware platform that includes a plurality of processor packages having a plurality of package power states, wherein the plurality of package power states includes an independent package power state; obtaining a respective independent power state measure for each of the processor packages, wherein the independent power state measure provides a measure of a percentage of time the processor package spends in the independent package power state; and adjusting an allocation of the plurality of groups of software threads across the plurality of processor packages based in part on the independent power state measures for the packages. | 07-30-2015 |
20150212857 | DYNAMIC ALLOCATION OF PHYSICAL COMPUTING RESOURCES AMONGST VIRTUAL MACHINES - Techniques for resource allocation are described. Some embodiments provide a resource allocation manager configured to dynamically allocate physical computing resources amongst multiple virtual machines hosted on a physical computing system. The resource allocation manager receives information about the importance of activities that can occur on the multiple virtual machines. Activities may include or be based on virtual machine states, virtual desktop states, business activities or processes performed by users, or the like. Then, the resource allocation manager determines that an activity is occurring on one of the virtual machines. In response, the resource allocation manager reallocates physical computing resources of the physical computing system that are assigned or available to the one virtual machine, based on the occurring activity and its corresponding importance. The resource allocation manager continually and dynamically reallocates physical computing resources assigned to corresponding virtual machines, in order to match resource allocation to activity importance. | 07-30-2015 |
20150212856 | SYSTEM AND METHOD FOR PERFORMING RESOURCE ALLOCATION FOR A HOST COMPUTER CLUSTER - A system and method for performing resource allocation for a host computer cluster uses a copy of a cluster resource allocation hierarchy of the host computer cluster to generate a host resource allocation hierarchy of a host computer in the host computer cluster. | 07-30-2015 |
20150205542 | VIRTUAL MACHINE MIGRATION IN SHARED STORAGE ENVIRONMENT - A source virtual machine (VM) executing on a source host is migrated to a destination host using a shared storage system connected to both hosts. The source VM memory is iteratively copied to a memory file stored on the shared storage system and locked by the source host. When the destination host is able to lock the memory file, memory pages from the memory file are copied into VM memory of a destination VM, and access to virtual machine disk files are transferred to the destination host. | 07-23-2015 |
20150199343 | OPTIMIZED FILE PROCESSING FOR LINKED CLONE VIRTUAL MACHINES - Techniques for optimizing file processing for linked clone virtual machines (VMs) are provided. In one embodiment, an agent executing within a linked clone VM can determine an identifier for a file to be processed by a file processor, where the identifier is based on a virtual disk location of the file. The agent can then transmit the identifier to the file processor. Upon receiving the identifier, the file processor can detect, using the identifier, whether the file has already been processed. If the file has already been processed, the file processor can short-circuit processing of the file. | 07-16-2015 |
20150186175 | PRE-CONFIGURED HYPER-CONVERGED COMPUTING DEVICE - A pre-configured hyper-converged computing device for supporting a virtualization infrastructure includes a first independent server node comprising a central processing unit (CPU), memory, and storage. The pre-configured hyper-converged computing device includes a pre-configured software module that comprises a graphical user-interface module for managing the pre-configured hyper-converged computing device, a hypervisor for managing virtual machines hosted by said pre-configured hyper-converged computing device and a storage block integrated with the hypervisor. The pre-configured hyper-converged computing device is offered for sale as a single stock keeping unit (SKU). | 07-02-2015 |
20150181207 | Measuring Remote Video Display with Embedded Pixels - Methods, systems, and computer programs are provided for managing remote display performance. One method includes an operation for determining pixel data for a group of macroblocks, each macroblock having a group of pixels. The macroblocks are for embedding in respective video frames of a video stream. The pixel data for each pixel in each macroblock is calculated with a formula based on the frame number of the respective video frame and on the location of the pixel within the macroblock. Farther, the method includes operations for embedding the macroblocks in the respective video frames, and for transmitting the video frames with the embedded macroblocks to a remote client. A performance metric for the transmitted video stream is calculated based on the macroblocks received at the remote client by comparing the received macroblocks to the expected macroblocks based on the formula. | 06-25-2015 |
20150180933 | Measurement of Remote Display Responsiveness to Application Display Changes - One method for managing remote display performance includes operations for embedding pixel data in a file of an application executing on a server, and detecting an open window of a graphical user interface (GUI) associated with the application. The pixel data is used to create a pixel strip in the window, while the GUI is being displayed on a remote display of a remote client. Update information for the GUI being displayed on the remote display is transmitted from the server to the remote client, the update information corresponding to the change in the presentation of the open window on the server. Further, a change in a presentation of the open window is detected, and a pixel strip received at the remote display is identified. A performance metric for the remote display is calculated based on the received pixel strip when compared to the expected values for the pixel strip. | 06-25-2015 |
20150180907 | DETECTING CONFLICTS IN A POLICY-BASED MANAGEMENT SYSTEM - A computing environment includes a plurality of objects that are managed according to a plurality of policies, where each policy defines an action to be performed and a condition for performing the action. When a request to create a new policy is received, a condition of the new policy is compared with conditions of existing policies that are maintained in a policy storage unit in order to determine a policy conflict. If no policy conflict is determined, the new policy is stored in the policy storage unit. An error is issued if a policy conflict is determined. | 06-25-2015 |
20150180824 | METHODS, APPARATUSES AND SYSTEMS FOR ASSIGNING IP ADDRESSES IN A VIRTUALIZED ENVIRONMENT - Some embodiments use proxies on host devices to capture broadcast DHCP traffic in a network. Each host in some embodiments executes one or more virtual machines (VMs). In some embodiments, a proxy operates on each host between each VM and the underlying network. For instance, in some embodiments, a VM's proxy operates between the VM and a physical forwarding element executing on the VM's host. To suppress DHCP broadcast, the proxy for a particular VM monitors the VM's traffic to detect and intercept a DHCP discover message. When the proxy receives a DHCP discover message, the proxy retrieves DHCP configuration data that was previously stored on the host for the VM. In some embodiments, the DHCP configuration data is stored on the host for the VM during the installation of the VM in response to an administrator's request or as part of an installation script that installs the VM. The DHCP configuration data in some embodiments is stored in one common data store for all the VMs that execute on the host, while in other embodiments, each VM's DHCP configuration data is stored in a DHCP data store that is uniquely maintained for the VM. In some of these latter embodiments, the data in the unique DHCP data store for a VM can easily migrate with the VM when the VM migrates from one host to another host. | 06-25-2015 |
20150180432 | VOLUME REDIRECTION - Exemplary systems and methods enable a user of a mobile device that is communicatively coupled to a remote device to adjust the audio output volume level of an application running on the remote device using audio volume adjustment inputs on the mobile device. The application produces an audio output signal that has an adjustable audio volume output level. The mobile device receives the audio output signal from the remote device. The mobile device detects an audio volume adjustment input. The mobile device redirects the audio volume adjustment to the remote device to control the audio output volume level of the application. | 06-25-2015 |
20150178110 | State Customization of Forked Virtual Machines - Embodiments support instant forking of virtual machines (VMs) and state customization. A computing device initiates execution of a first group of services (e.g., identity-independent) in a first VM. A second VM is instantiated from the first VM. The second VM shares memory and storage with the first VM. The computing device customizes the second VM based on configuration data associated with the second VM. A second group of services (e.g., identity-dependent) starts executing on the second VM after configuring the identity of the second VM. Customizing the second VM includes configuring one or more identities of the second VM. In some embodiments, a domain identity is selected from a pool of previously-created identities and applied to the second VM, before bootup completes on the second VM. | 06-25-2015 |
20150178109 | Provisioning Customized Virtual Machines without Rebooting - Embodiments provision and customize virtual machines (VMs), such as desktop VMs, without rebooting the desktop VMs. In response to a request to provision the VMs, a computing device creates a clone VM from a parent VM template identified in the request. One or more customization that prompt rebooting of the clone VM are applied to the clone VM. The computing device instantiates a plurality of child VMs from the customized clone VM. A child VM configuration is applied to at least one of the instantiated child VMs without provoking a reboot of those child VMs. | 06-25-2015 |
20150178108 | Fast Instantiation of Virtual Machines - Embodiments support instant forking of virtual machines (VMs) and state customization. Virtual device state and persistent storage of a child VM are defined based on virtual device state and persistent storage of parent VMs. After forking, a state of the child VM is customized based on configuration data. Customizing the state includes configuring one or more identities of the child VM, before bootup completes on the child VM. | 06-25-2015 |
20150178107 | Elastic Compute Fabric Using Virtual Machine Templates - Embodiments include an infrastructure shared among cloud services that supports fast provisioning of virtual machines (VMs). A set of powered-on parent VM templates and a set of powered-off child VMs are maintained by the infrastructure in a hierarchy. The child VMs are instantiated from the parent VM templates, and pre-registered to a cloud operating system in some embodiments. In response to requests from the cloud services for the child VMs, where the requests specify child VM configurations, child VMs from the set of powered-off child VMs are selected and customized based on the child VM configurations, and then deployed for use by the cloud services. In some embodiments, the fast provisioning of VMs is supported by forking operations in the infrastructure. | 06-25-2015 |
20150178019 | ENSURING STORAGE AVAILABILITY FOR VIRTUAL MACHINES - A management server allocates storage for a virtual disk of a virtual machine configured to execute on a first host computer, where the first host computer is associated with a plurality of data storage devices including first and second data storage devices, and where a first portion of storage is allocated to the virtual disk from the first storage device. The management server receives a request to allocate a second portion of storage to the virtual disk of the virtual machine and, responsive to determining that the first data storage device has insufficient free storage space from which to allocate the second portion of storage, selects the second data storage device having sufficient free storage space from which to allocate the second portion of storage. The management server allocates the second portion of storage for the virtual disk of the virtual machine from the second data storage device, wherein the virtual machine accesses the first and second portions of storage as a single virtual disk. | 06-25-2015 |
20150163281 | MOVING OBJECTS OF A REMOTE DESKTOP IN UNSTABLE NETWORK ENVIRONMENTS - A computer implemented method is configured to remotely access a desktop hosted by a server system. The method displays a local view of a remote desktop hosted by a server system based on information received from the server system where the remote desktop includes a first object. The method then detects user input indicating a request to move the first object. In response to the request, the method generates a second object to represent the first object. The second object is generated to correspond to the visual appearance of the object. The method then presents the second object on the local view of the remote desktop. The second object may overlay the first object. The second object is then moved to a destination on the local view of the desktop according to the request. Once the move has concluded, the method transmits the destination to the server system. | 06-11-2015 |
20150163196 | SYSTEM AND METHOD FOR DYNAMICALLY CONFIGURING A DHCP SERVER IN A VIRTUAL NETWORK ENVIRONMENT - Techniques for dynamically configuring a dynamic host configuration protocol (DHCP) server in a virtual network environment are described. In one example embodiment, DHCP bindings are configured using virtual machine (VM) inventory objects. Further, the configured DHCP bindings are transformed by replacing the VM inventory objects in the configured DHCP bindings with associated media access control (MAC) addresses using a VM object attribute table. Furthermore, the transformed DHCP bindings are sent to the DHCP sever for assigning Internet protocol (IP) addresses to multiple VMs running on a plurality of host computing systems in a computing network. | 06-11-2015 |
20150161211 | PREDICTIVE QUERY RESULT COMPUTATION - Techniques for reducing query response time are provided. In one embodiment, a computer system can organize data into a plurality of buckets, where the data is ordered according to a dimension, and where each bucket includes a subset of data that corresponds to a range within the dimension. The computer system can then precompute, for one or more buckets in the plurality of buckets, query results for one or more queries against the bucket, and can store the precomputed query results in a cache. | 06-11-2015 |
20150161056 | TRACKING GUEST MEMORY CHARACTERISTICS FOR MEMORY SCHEDULING - A system and method are disclosed for improving operation of a memory scheduler operating on a host machine supporting virtual machines (VMs) in which guest operating systems and guest applications run. For each virtual machine, the host machine hypervisor categorizes memory pages into memory usage classes and estimates the total number of pages for each memory usage class. The memory scheduler uses this information to perform memory reclamation and allocation operations for each virtual machine. The memory scheduler further selects between ballooning reclamation and swapping reclamation operations based in part on the numbers of pages in each memory usage class for the virtual machine. Calls to the guest operating system provide the memory usage class information. Memory reclamation not only can improve the performance of existing VMs, but can also permit the addition of a VM on the host machine without substantially impacting the performance of the existing and new VMs. | 06-11-2015 |
20150161008 | VIRTUAL MACHINE CRASH MANAGEMENT - Systems and techniques are described for managing virtual machines crashes. A described technique includes determining that a virtual machine is unresponsive, in response to determining that the virtual machine is unresponsive, identifying one or more files in which a guest operating system (OS) of the virtual machine writes data when the guest OS abnormally terminates, the one or more files being stored in virtual storage, determining, based on contents of the one or more files, whether the guest OS has abnormally terminated, in response to determining that the guest OS has abnormally terminated, monitoring requests initiated by the virtual machine to determine whether the guest OS has finished writing to the one or more files, and in response to determining that the guest OS has finished writing to the one or more files, copying the one or more files to a location in hardware storage, and restarting the virtual machine. | 06-11-2015 |
20150160960 | METHOD AND SUBSYSTEM FOR DATA EXCHANGE BETWEEN A GUEST OPERATING SYSTEM AND A VIRTUALIZATION LAYER - The current document is directed to methods and subsystems for communication between virtualization layers and guest operating systems. A hardware baseboard management controller (“BMC”) provides an out-of-band communications link and management interface to a computer system that can be accessed by a system administrator through a remote console. A virtualization layer may provide a virtualized BMC (“vBMC”) that provides a data-and-command-exchange medium between a guest operating system and the virtualization layer. The virtualization layer may transmit commands, query status and configuration information, and transfer data through this data-and-command-exchange medium to the guest operating system. | 06-11-2015 |
20150160958 | ADAPTIVE INTERRUPT AND SYSTEM CALL COALESCING - Exemplary methods, apparatuses, and systems determine a virtual processing unit utilization value representing utilization for a first virtual machine of a plurality of virtual machines running on a host computer. A host processing unit utilization value representing utilization for the host computer including the plurality of virtual machines running on the host computer is also determined. A target coalescing rate is selected based upon the virtual processing unit utilization and host processing unit utilization values. A coalescing rate or a coalescing depth for the first virtual machine is updated based upon the selected target coalescing rate. | 06-11-2015 |
20150154566 | PRODUCTIVITY BASED MEETING SCHEDULER - Techniques for scheduling a meeting using a productivity based meeting scheduler are described. In one example embodiment, the productivity based scheduler receives selection of two or more participants for a meeting requested by a meeting organizer. The selection received on a calendar application is then executed on one or more client devices. Participant information associated with each selected participant is then determined. A time value of each selected participant is then computed based on the determined participant information. The computed time value of each selected participant is then displayed on at least one display screen of a client device by the calendar application. The productivity based scheduler then receives a request to schedule the meeting based on displayed computed time value of each selected participant. The meeting is then scheduled based on the received request. | 06-04-2015 |
20150154081 | EFFICIENT INCREMENTAL CHECKPOINTING OF VIRTUAL DEVICES - A virtualization platform provides fault tolerance for a primary virtual machine by continuously transmitting checkpoint information of the primary virtual machine to a collector process, such as a backup virtual machine. The virtualization platform includes virtual devices configured to keep track of state changes, for example, by using state flags or saving copies of prior state data. The virtualization platform generates incremental checkpoints by querying the virtual devices, which return state data based on whether the virtual devices have changed state since a prior checkpoint operation. | 06-04-2015 |
20150154046 | INTERDEPENDENT VIRTUAL MACHINE MANAGEMENT - Exemplary methods, apparatuses, and systems determine a list of virtual machines to be subject to a corrective action. When one or more of the listed virtual machines have dependencies upon other virtual machines, network connections, or storage devices, the determination of the list includes determining that the dependencies of the one or more virtual machines have been met. An attempt to restart or take another corrective action for the first virtual machine within the list is made. A second virtual machine that is currently deployed and running or powered off or paused in response to the corrective action for the first virtual machine is determined to be dependent upon the first virtual machine. In response to the second virtual machine's dependencies having been met by the attempt to restart or take corrective action for the first virtual machine, the second virtual machine is added to the list of virtual machines. | 06-04-2015 |
20150153964 | PLACING A STORAGE NETWORK DEVICE INTO A MAINTENANCE MODE IN A VIRTUALIZED COMPUTING ENVIRONMENT - Techniques for placing a first storage network device into maintenance mode in a virtualized computing environment in which each data store is connected to at least one host computing system via a storage network device are described. In one embodiment, a first data store having an active input/output (I/O) path to a first host computing system via the first storage network device is identified. Further, migration of virtual machine disks (VMDKs) on the first data store and/or migration of workloads running on the first host computing system are recommended such that the VMDKs can be accessed by the workloads via any other storage network device. | 06-04-2015 |
20150150087 | DYNAMIC EXPRESSION EVALUATION BASED GROUPING OF VM OBJECTS FOR NETWORKING AND SECURITY SERVICES IN A VIRTUALIZED COMPUTING SYSTEM - Techniques for grouping virtual machine (VM) objects for networking and security services in a virtualized computing system are described. In one example embodiment. VM attributes and identity attributes are obtained from a virtual center and an identity server, respectively. One or more desired security groups are then formed based on security requirements of the virtualized computing system. A user defined dynamic expression is then associated with the one or more security groups. One or more expression attributes are then determined by evaluating the user defined dynamic expression using the obtained VM attributes and identity attributes. VM objects are then grouped based on the determined one or more expression attributes. The grouped VM objects are then associated with the created one or more security groups for providing the networking and security services. | 05-28-2015 |
20150149999 | VIRTUAL MACHINE GROUP MIGRATION - A plurality of virtual machines (VMs) is migrated from a source group to a destination group in such as way as to achieve consistency and either availability or group preservation. Execution of VMs in the source group is selectively delayed during state migration so that memory transfer of all the VMs in the group will converge roughly at the same time. After VM state transfer to the destination group, execution switch-over is coordinated using different handshake and acknowledgement messages, passed either through a “leader” VM in each group, or directly between source-destination VM pairs. | 05-28-2015 |
20150149730 | CACHE MIGRATION - Exemplary methods, apparatuses, and systems determine that a cache is to be migrated from a first storage device to a second storage device. Each cache entry within the cache includes a first indicator to indicate whether or not the cache entry has long-term utility. Only a portion of all cache entries are selected to be migrated and the portion is selected from cache entries with the first indicator set to indicate long-term utility. The selected cache entries and metadata for cache entries that were not selected are migrated from the first storage device to the second storage device. | 05-28-2015 |
20150149729 | CACHE MIGRATION - Exemplary methods, apparatuses, and systems determine that a cache is to be migrated from a first storage device to a second storage device. The cache includes cache entries organized in a first list of cache entries and a second list of cache entries. Only a portion of all cache entries from the first and second lists is selected for migration to the second storage device. The selected cache entries and metadata for cache entries from the first or second list that were not selected are migrated from the first storage device to the second storage device. | 05-28-2015 |
20150147057 | PLACING A FIBRE CHANNEL SWITCH INTO A MAINTENANCE MODE IN A VIRTUALIZED COMPUTING ENVIRONMENT VIA PATH CHANGE - Techniques for placing a first fibre channel (FC) switch into maintenance mode in a virtualized computing environment in which each data store is connected to at least one host computing system via at least two FC switches are described. In one embodiment, a first active input/output (I/O) path from a data store to a host computing system via the first FC switch is identified. Further, a path change is initiated from the data store to the host computing system via any other FC switch coupled to the data store and the host computing system. | 05-28-2015 |
20150143373 | HIGH-PERFORMANCE VIRTUAL MACHINE NETWORKING - A virtual machine (VM) runs on system hardware, which includes a physical network interface device that enables transfer of packets between the VM and a destination over a network. A virtual machine monitor (VMM) exports a hardware interface to the VM and runs on a kernel, which forms a system software layer between the VMM and the system hardware. Pending packets (both transmit and receive) issued by the VM are stored in a memory region that is shared by, that is, addressable by, the VM, the VMM, and the kernel. Rather than always transferring each packet as it is issued, packets are clustered in the shared memory region until a trigger event occurs, whereupon the cluster of packets is passed as a group to the physical network interface device. Optional mechanisms are included to prevent packets from waiting too long in the shared memory space before being transferred to the network. An interrupt offloading mechanism is also disclosed for use in multiprocessor systems such that it is in most cases unnecessary to interrupt the VM in order to request a VMM action, and the need for VMM-to-kernel context transitions is reduced. | 05-21-2015 |
20150143279 | METHODS AND SYSTEMS FOR OPTIMIZING USER INTERFACESCREEN SPACE AND CONTENT - The current disclosure is directed to a graphical user interface (“GUIs”) that displays an optimized arrangement of hierarchical content using an expandable grid. Each item of the content may represent textual information or a numerical value. The expandable grid provides an overview of top-level content by displaying rows on contextually related content in a single list. The rows of top-level content enable a viewer to compare the top-level content of nearby rows in parallel and each content item in a row can be expanded in a tab viewing area which provides a display for a more detail presentation of information regarding the top-level content item using tables, graphs, charts and text. | 05-21-2015 |
20150135126 | AUTOMATED TOUCH SCREEN ZOOM - Systems and techniques are described for automated zoom and selection of content on a touch screen device. A described technique includes receiving a first touch input contacting a touch screen display of a user device at a first position in a user interface presented at a first magnification, while continuing to receive the first touch input determining that a duration of the first touch input has exceeded a predetermined threshold duration, and increasing, based on determining that the duration of the first touch input has exceeded than the predetermined threshold duration, the magnification of the user interface to a second magnification, and performing an action based on the first touch input. | 05-14-2015 |
20150135003 | REPLICATION OF A WRITE-BACK CACHE USING A PLACEHOLDER VIRTUAL MACHINE FOR RESOURCE MANAGEMENT - Exemplary methods, apparatuses, and systems include a first host system configuring storage of the first host to serve as a primary cache for a virtual machine running on the first host. A second host system configures storage of the second host to serve as a secondary cache and boots a placeholder virtual machine. The first host transmits, in response to write operations from the virtual machine directed to the primary cache, copies of the write operations to the second host to create mirrored copies on the secondary cache. The first host acknowledges each write operation from the virtual machine when the write operation is committed to both the primary cache and the secondary cache. When the virtual machine is restarted on the second host in response to a failure or migration event, the secondary cache is promoted to serve as a new primary cache for the virtual machine. | 05-14-2015 |
20150134607 | INTELLIGENT DATA PROPAGATION USING PERFORMANCE MONITORING - 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 process is compared to a threshold. In response to determining that the performance value of a given source or destination datastore involved in the copying exceeds the threshold, the copying of the data to the corresponding destination datastore is suspended. An updated shortest path tree is determined to locate a more efficient path for copying data to the suspended destination datastore. Copying is resumed to the suspended destination datastore using the updated shortest path tree. | 05-14-2015 |
20150134606 | INTELLIGENT DATA PROPAGATION IN A HIGHLY DISTRIBUTED ENVIRONMENT - Exemplary methods, apparatuses, and systems that can intelligently copy data to a plurality of datastores are described. In one embodiment, a distance value of a path between each datastore is determined. Based on the distance values, a graph cluster analysis creates clusters of the datastores within close proximity to one another. Also, a shortest path tree determines the most efficient paths available for copying data from a source datastore to one or more destination datastores. The source datastore is designated as the root of the shortest path tree, and the one or more destination datastores are designated as the vertices of the tree. After each child vertex of the source datastore is ordered in descending order according to a number of unique clusters to which descendants of the child vertex belong, the data is copied from the source datastore to the one or more destination datastores in the descending order. | 05-14-2015 |
20150134424 | SYSTEMS AND METHODS FOR ASSESSING HYBRIDIZATION OF CLOUD COMPUTING SERVICES BASED ON DATA MINING OF HISTORICAL DECISIONS - Computational methods and systems that aid an enterprise in deciding whether to execute an application entirely within a private cloud or a hybrid combination of the private cloud and public cloud services offered by a public cloud service provider are described. The methods and system receive a set of quantitative parameters associated with running an application using computational services provided by a public cloud service provider and a set of organizational parameters associated with an enterprise. The quantitative and organizational parameters are normalized and input to a decision model that generates a recommendation that indicates exclusive use of a private cloud or a hybrid private cloud and public cloud to execute the application. | 05-14-2015 |
20150128125 | PROVIDING APPLICATION AND DEVICE MANAGEMENT USING ENTITLEMENTS - Methods and systems for providing virtual workspaces are provided. Example embodiments provide a Application Workspace System “AWS,” which enables users to access remote server-based applications (e.g., thin client applications, terminal server applications, applications on hosted operating systems, etc.) using the same interface that they use to access local applications, without needing to know where the application is being accessed. The AWS automatically determines which applications the user is entitled to use, and then figures out automatically, based upon a variety of parameters, which applications are to be made available to the user (resolved to version, particular package etc.), and whether they are to be installed locally, or accessed remotely. 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. | 05-07-2015 |
20150128032 | Generating Canonical Representations of JSON Documents - Systems and techniques are described for generating canonical representations of JSON documents. One of the techniques includes receiving a first JavaScript Object Notation (JSON) document, wherein the first document includes one or more JSON objects, and wherein each JSON object includes one or more name-value pairs; generating a first canonical representation of the first JSON document, wherein generating the first canonical representation comprises: removing each non-significant whitespace character and non-significant line ending from the first document, for each JSON object, sorting the name-value pairs included in the JSON object lexicographically, and converting one or more instances of a number value type in the first document into a standardized representation of a double data type; and generating a first digital signature for the first JSON document using the first canonical representation. | 05-07-2015 |
20150127858 | Dynamic virtual machine (VM) input-output per second (IOPS) control based on application IO profiling & VM IO usage trend analysis - Embodiments of the present invention include systems and methods for controlling input-output (IO) requests of a plurality of virtual machines to a datastore. The method includes: monitoring, for each virtual machine, a throughput of IO to a datastore for a preset time interval; identifying a peak value of the throughput; calculating a value of input-output-per-second (IOPS) using the peak value; and setting the value of IOPS as an IOPS limit for a corresponding virtual machine. | 05-07-2015 |
20150127833 | RAPID VIRTUAL MACHINE CLONING - A management server clones a source virtual machine to a plurality of target host computers. For each target host, the management server creates linked clones of the source virtual machine in a target data store that is accessible to the target host. The management server starts execution of the linked clones in the target hosts. While the linked clones execute, for each target host, the management server creates full clones of the source virtual machine in the target data store and, after creating the full clones, suspends execution in the linked clones and resumes execution in the full clones. | 05-07-2015 |
20150127768 | RAPID CLOUD-BASED IMAGE CENTRALIZATION - A system for a mass centralization approach to full image cloning of multiple computing devices is provided. The system includes a server, and a computing device that includes a disk for data storage, wherein the disk includes a plurality of blocks within a plurality of regions. The system also includes a processor programmed to map each file stored on the disk to at least one of the plurality of blocks, for one or more of the plurality of regions of the disk, determine that a number of files appearing in sequential blocks exceeds a predefined threshold number of files, perform a continuous scan of the one or more of the plurality of regions of the disk occupied by the number of files appearing in sequential blocks exceeding the predefined threshold number of files, and send a copy of the files scanned from the one or more plurality of regions of the disk to the server. | 05-07-2015 |
20150127716 | Filtering Unnecessary Display Updates for a Networked Client - Methods, systems, and computer programs are provided for managing remote display performance. One method includes operations for receiving notifications of events identified by an operating system, and for receiving notifications of display updates destined to a remote display coupled to a remote client. The method includes an operation for correlating events and display updates to determine the transmittal priority for the updates, where the priority is associated with a criticality for presenting the display updates on the remote display. Further, a subset of the display updates are identified as unnecessary for transmission to the remote client based, at least in part, on the priority of the display updates. Additionally, the method includes an operation for performing at least one of: discarding the subset; consolidating the subset into a single display update for transmittal to the remote client; or limiting the frequency of transmission of the subset to the remote client. | 05-07-2015 |
20150127661 | RAPID CLOUD-BASED IMAGE CENTRALIZATION - A system for a mass centralization approach to full image cloning of multiple computing devices is provided. The system includes a plurality of computing devices and a server. The server includes a processor programmed to receive, from the plurality of computing devices, metadata for files stored on the plurality of computing devices, determine, from the received metadata, an importance level for each of the files, instruct the plurality of computing devices to send a copy of the files to the server in a defined order, the defined order based on the importance level for each of the files, and store the copy of the files on the server. | 05-07-2015 |
20150121369 | GUARDED VIRTUAL MACHINES - A virtual machine (VM) is designated as a guarded VM so that restricted operations may not be performed on the VM without permission from the VM's owner. A request to perform at least one of the restricted operations on the VM is received. When the VM is a guarded VM, the request to perform at least one of the restricted operations on the VM is sent to the VM's owner. When the VM's owner at least partially approves the request, at least some of the restricted operations on the VM are enabled. | 04-30-2015 |
20150121193 | USER INTERFACE VIRTUALIZATION FOR WEB APPLICATIONS - User interface virtualization describes a technique for providing a user with access to a web application from a computing device, while translating the ergonomics of the web application's user interface style into the ergonomics of the computer device's. A proxy agent exchanges metadata and input events with a corresponding client running on a client device that accepts a “touch and swipe” style input. The proxy agent parses web content, such as markup documents and scripting code, that makes the presentation tier of the web application. The client constructs and displays native graphical user interface elements at the client device that are virtual representations of a corresponding user interface element of the web application. | 04-30-2015 |
20150121122 | Visualizing Disaster Recovery Plan Execution for the Cloud - Embodiments visualize the execution of a disaster recovery plan. During a transfer of computing nodes from a source site to a target site, a map user interface (UI) is displayed. The map UI includes a first region corresponding to the geographic location of the source site and a second region corresponding to the geographic location of the target site. An animated progress indicator representing termination of computing nodes at the source site is displayed in the first region. Simultaneously, another animated progress indicator representing initiation of computing nodes at the target site, and further representing a reverse animation of the other animated progress indicator, is displayed in the second region. | 04-30-2015 |
20150121059 | SYNTHETIC DEVICE FOR INSTALLATION SOURCE MEDIA - In one embodiment, a computer system provides a process for executing software that cannot be executed in a first configuration. The computer system determines source media for the software stored in a first data store, the source media being in the first configuration. The computer system retrieves metadata relating to executing the software from the source media. The computer system next transforms the retrieved metadata to generate a second configuration of the source media according to a transformation rule set, where the software can be executed in the second configuration, and stores the transformed metadata in a second data store. Next, the computer system presents the second configuration of the source media based on the transformed metadata. Thereafter, the computer system satisfies a request relating to executing the software using the transformed metadata in the second data store, wherein the request is satisfied based on the second configuration. | 04-30-2015 |
20150120932 | PROFILE-BASED PLACEMENT OF CLIENTS - A client placement module and method for placing a client in a distributed computer system uses at least one requirement profile with profile parameters to determine whether any host computer in the distributed computer system satisfies resource requirements of the client and also matches the profile parameters in the at least one requirement profile. | 04-30-2015 |
20150120931 | AUTOMATIC REMEDIATION IN A DISTRIBUTED COMPUTER SYSTEM WITH MULTIPLE CLUSTERS OF HOST COMPUTERS - A system and method for performing automatic remediation in a distributed computer system with multiple clusters of host computers uses the same placement selection algorithm for initial placements and for remediation placements of clients. The placement selection algorithm is executed to generate a placement solution when a remediation request in response to a remediation-requiring condition in the distributed computer system for at least one client running in one of the multiple clusters of host computers is detected and a remediation placement problem for the client is constructed. The placement solution is then implemented for the client for remediation | 04-30-2015 |
20150120928 | CONTAINER VIRTUAL MACHINES FOR HADOOP - A distributed computing application is described that provides a highly elastic and multi-tenant platform for Hadoop applications and other workloads running in a virtualized environment. Data and compute nodes are separated into different virtual machines (VM). Compute VMs are used to launch containers from different tenants. Compute VMs are organized in pools of hot spare VMs that are immediately available for launching a container and executing a task, and pools of cold spare VMs. Each compute VM may include a mounted network filesystem provided by a node manager to share intermediate outputs across VMs executing on the same host. | 04-30-2015 |
20150120791 | MULTI-TENANT PRODUCTION AND TEST DEPLOYMENTS OF HADOOP - A distributed computing application is described that provides a highly elastic and multi-tenant platform for Hadoop applications and other workloads running in a virtualized environment. Production, test, and development deployments of a Hadoop application may be executed using multiple compute clusters and a shared instance of a distributed filesystem, or in other cases, multiple instances of the distributed filesystem. Data nodes executing as virtual machines (VMs) for test and development deployments can be linked clones of data nodes executing as VMs for a production deployment to reduce duplicated data and provide a shared storage space. | 04-30-2015 |
20150119113 | USER INTERFACE FOR CONTROLLING USE OF A BUSINESS ENVIRONMENT ON A MOBILE DEVICE - A graphical user interface to provision business environments on mobile devices presents a navigation panel that displays a virtual phone template menu item and a policy setting menu item. Upon selection of the virtual phone template menu item, a template user interface is presented that enables an administrator to customize virtual phone image templates for users to be delivered to mobile devices that are configured to run the virtual phone image templates as virtual machines on the mobile devices in order to provide a business environment. Upon selection of the policy setting menu item, a policy user interface is presented that enables the administrator to set security policies, wherein each of the security policies specifies a time interval within which a mobile device running a virtual machine corresponding to one of the virtual phone image templates should communicate with an enterprise server to comply with the security policy. | 04-30-2015 |
20150116310 | METHOD AND SYSTEM TO VIRTUALIZE GRAPHIC PROCESSING SERVICES - Methods and systems configured to virtualize graphic processing services in a virtual machine environment are disclosed. A virtual machine monitor (VMM) may be configured to maintain a virtual machine (VM) based on a host operating system (OS) executing in the system. The VM may contain a virtualized graphics library (vGLib) configured to support a graphic command from an application executing in the VM. The host OS may contain a graphics library (GLib) configured to support the graphic command and utilize a graphics processing unit (GPU) in the system to process the graphic command. Upon receiving the graphic command from the application, the vGLib may be configured to allocate a memory section in the VM to store the graphic command. And the VMM may be further configured to share access to the memory section with the host OS, thereby allowing the host OS to retrieve the graphic command from the memory section and deliver the graphic command to the GLib for processing. | 04-30-2015 |
20150113424 | MONITORING MULTIPLE REMOTE DESKTOPS ON A WIRELESS DEVICE - Methods and systems configured to facilitate monitoring of multiple remote desktops in a user interface of a wireless device are provided. One example method includes maintaining image data representing a prior state of graphical displays of a plurality of graphical user interfaces associated with the remote desktops, in response to receiving a first request specifying first display information from the wireless device, preparing first update information for a first scaled image corresponding to content of a first graphical display, wherein the first scaled image contains image data defining a lower resolution version of a current state of a first graphical display out of the graphical displays, the scaled version is being sized according to the first display information received from the wireless device, and transmitting the prepared first update information to the wireless device to be displayed in the user interface. | 04-23-2015 |
20150113152 | TECHNIQUES FOR IMPROVING SYN CACHE PERFORMANCE - A computer implemented method receives a client request message to initiate a network connection. In response to the client request, the method generates a key to represent the client request. The key is generated independent of information provided in the client request message and is generated to correspond to a desired address in a data structure used to track client request message. The method then enters the generated key at the desired address in the data structure and transmits a response message that includes the key back to the client. The network connection between the client and the computer system is established according to the key. | 04-23-2015 |
20150109334 | AUGMENTED REALITY AIDED NAVIGATION - In a computer-implemented method for augmented reality aided navigation to at least one physical device indicia corresponding to the at least one physical device supporting virtualization infrastructure is observed. Based on the observed indicia, navigational cues correlating to a location of the at least one physical device is generated. Navigational cues are displayed such that augmented reality aided navigation is provided to the at least one physical device. | 04-23-2015 |
20150106811 | SYSTEM AND METHOD FOR MANAGING A VIRTUALIZED COMPUTING ENVIRONMENT - A technique for predictive distributed resource scheduling and distributed power management includes analyzing patterns in the workload, predicting future workloads, and making recommendations for changes to the virtual computing environment. In addition, a cost-benefit analysis can be performed to determine whether the recommended change would likely result in improved performance. | 04-16-2015 |
20150106802 | REPLICATING VIRTUAL MACHINES ACROSS DIFFERENT VIRTUALIZATION PLATFORMS - A first virtual machine executing in a first computer server is replicated to a second virtual machine executing in a second computer server, where the first computer server and the second computer server are connected over a network and are each connected to one or more disk storage units capable of storing files in a file system. Virtual disks of the first virtual machine on the first server are transmitted to the second server, where each transmitted virtual disk is stored as a file in a storage unit connected to the second server and corresponds to one of a plurality of virtual disks of the second virtual machine running in the second server, and where the virtual disks of the first virtual machine have a first format and the virtual disks of the second virtual machine have a second format that is different from the first format. A plurality of updates to the virtual disks of the first virtual machine is captured, and contiguous data blocks from the virtual disks of the first virtual machine that are subject to the captured updates are identified. The identified contiguous data blocks are then transmitted to the second server for storage in the virtual disks of the second virtual machine. | 04-16-2015 |
20150106523 | DISTRIBUTED GLOBAL LOAD-BALANCING SYSTEM FOR SOFTWARE-DEFINED DATA CENTERS - The disclosure herein describes a system for providing distributed global server load balancing (GSLB) over resources across multiple data centers. The system includes a directory group comprising one or more directory nodes and a plurality of GSLB nodes registered to the directory group. A respective GSLB node is configured to provide GSLB services over a respective portion of the resources. A directory node includes a domain name system (DNS) query-receiving module configured to receive a DNS query from a client, a node-selecting module configured to select from the plurality of GSLB nodes a first GSLB node based at least on the DNS query, and a DNS query-responding module configured to respond to the DNS query to the client using an address of the selected first GSLB node, thereby facilitating the selected first GSLB node in performing GSLB while resolving the DNS query. | 04-16-2015 |
20150106245 | DYNAMIC UNIT RESOURCE USAGE PRICE CALIBRATOR FOR A VIRTUAL DATA CENTER - Techniques for performing dynamic cost per unit resource usage in a virtual data center are described. In one example embodiment, an initial unit resource usage price is received for the virtual data center for a first cycle. Further, capital expenditure (CAPEX) and operating expenditure (OPEX) information of the virtual data center of the first cycle is obtained. Furthermore, a target return on investment (ROI) for the virtual data center for a second cycle is received. A unit resource usage price is then computed for the second cycle using the received initial unit resource usage price for the first cycle and the CAPEX and OPEX information of the first cycle. The unit resource usage price is then dynamically calibrated for the second cycle using the computed unit resource usage price and the target ROI. | 04-16-2015 |
20150103679 | Tracing Host-Originated Logical Network Packets - Some embodiments provide a method for a first host machine that hosts a virtual machine connected to a particular logical network. The method receives a command to test connectivity between the first host machine and a set of at least one additional host machine that also host virtual machines on the particular logical network. At the first host machine, the method generates a packet for sending to the set of additional host machines in order to test the connectivity. The method appends to the generated packet (i) information that identifies the particular logical network and (ii) a flag indicating that the packet is for connectivity testing. The method encapsulates the generated packet with tunnel endpoint addresses, including a tunnel endpoint located at the first host machine. The method sends the encapsulated packet from the first host machine to the set of additional host machines according to the tunnel encapsulation. | 04-16-2015 |
20150103661 | HOST SIDE METHOD OF USING A CONTROLLER ASSIGNMENT LIST - Some embodiments provide a novel method for distributing control-channel communication load between multiple controllers in a network control system. In some embodiments, the controllers manage physical forwarding elements that forward data between several computing devices (also called hosts or host computers), some or all of which execute one or more virtual machines (VMs). The method of some embodiments distributes a controller assignment list to the host computers. The host computers use this list to identify the controllers with which they need to interact to perform some of the forwarding operations of their associated logical forwarding elements. In some embodiments, agents executing on the host computers (1) review the controller assignment list to identify the appropriate controllers, and (2) establish control channel communications with these controllers to obtain the needed data for effectuating the forwarding operations of their associated physical forwarding elements. These agents in some embodiments are responsible for out-of-band control channel communication with the controllers. | 04-16-2015 |
20150103645 | CONTROLLER SIDE METHOD OF GENERATING AND UPDATING A CONTROLLER ASSIGNMENT LIST - Some embodiments provide a novel method for distributing control-channel communication load between multiple controllers in a network control system. In some embodiments, the controllers manage physical forwarding elements that forward data between several computing devices (also called hosts or host computers), some or all of which execute one or more virtual machines (VMs). The method of some embodiments distributes a controller assignment list to the host computers. The host computers use this list to identify the controllers with which they need to interact to perform some of the forwarding operations of their associated logical forwarding elements. In some embodiments, agents executing on the host computers (1) review the controller assignment list to identify the appropriate controllers, and (2) establish control channel communications with these controllers to obtain the needed data for effectuating the forwarding operations of their associated physical forwarding elements. These agents in some embodiments are responsible for out-of-band control channel communication with the controllers. | 04-16-2015 |
20150101042 | TAG BASED PERMISSION SYSTEM AND METHOD FOR VIRTUALIZED ENVIRONMENTS - A virtualized computing system includes a plurality of inventory objects and an access control subsystem that manages permissions to perform actions on the inventory objects using corresponding access control labels of the inventory objects. Permissions are managed by detecting a change in an association of a tag with an inventory object, where the tag defines one or more users and one or more privileges. In response to the detecting, an access control label of the inventory object is updated based on the users and privileges that are defined by the tag. | 04-09-2015 |
20150100791 | CRYPTOGRAPHIC MULTI-SHADOWING WITH INTEGRITY VERIFICATION - A virtual-machine-based system that may protect the privacy and integrity of application data, even in the event of a total operating system compromise. An application is presented with a normal view of its resources, but the operating system is presented with an encrypted view. This allows the operating system to carry out the complex task of managing an application's resources, without allowing it to read or modify them. Different views of “physical” memory are presented, depending on a context performing the access. An additional dimension of protection beyond the hierarchical protection domains implemented by traditional operating systems and processors is provided. | 04-09-2015 |
20150096007 | Distributed Identity-Based Firewalls - Systems and techniques are described for monitoring network communications using a distributed firewall. One of the techniques includes receiving, at a driver executing in a guest operating system of a virtual machine, a request to open a network connection from a process associated with a user, wherein the driver performs operations comprising: obtaining identity information for the user; providing the identity information and data identifying the network connection to an identity module external to the driver; and receiving, by a distributed firewall, data associating the identity information with the data identifying the network connection from the identity module, wherein the distributed firewall performs operations comprising: receiving an outgoing packet from the virtual machine; determining that the identity information corresponds to the outgoing packet; and evaluating one or more routing rules based at least in part on the identity information. | 04-02-2015 |
20150095585 | CONSISTENT AND EFFICIENT MIRRORING OF NONVOLATILE MEMORY STATE IN VIRTUALIZED ENVIRONMENTS - Updates to nonvolatile memory pages are mirrored so that certain features of a computer system, such as live migration of applications, fault tolerance, and high availability, will be available even when nonvolatile memory is local to the computer system. Mirroring may be carried out when a cache flush instruction is executed to flush contents of the cache into nonvolatile memory. In addition, mirroring may be carried out asynchronously with respect to execution of the cache flush instruction by retrieving content that is to be mirrored from the nonvolatile memory using memory addresses of the nonvolatile memory corresponding to target memory addresses of the cache flush instruction. | 04-02-2015 |
20150095576 | CONSISTENT AND EFFICIENT MIRRORING OF NONVOLATILE MEMORY STATE IN VIRTUALIZED ENVIRONMENTS - Updates to nonvolatile memory pages are mirrored so that certain features of a computer system, such as live migration of applications, fault tolerance, and high availability, will be available even when nonvolatile memory is local to the computer system. Mirroring may be carried out when a cache flush instruction is executed to flush contents of the cache into nonvolatile memory. In addition, mirroring may be carried out asynchronously with respect to execution of the cache flush instruction by retrieving content that is to be mirrored from the nonvolatile memory using memory addresses of the nonvolatile memory corresponding to target memory addresses of the cache flush instruction. | 04-02-2015 |
20150095505 | RESOLVING NETWORK ADDRESS CONFLICTS - Exemplary systems and methods resolve an IP address conflict in a network system, including network systems in a virtual computing environment. An IP address monitor receives a message from a first device connected to a network or a second device connecting to the network. The message includes an indication of a network address conflict between the first and second devices. The IP address monitor detects the IP address conflict from the message, selects one of the first and second devices to disconnect from the network, and sends a message to disconnect the selected device from the network. A new IP address is received for the selected device, and the IP address monitor sends a message to reconnect the selected device to the network. | 04-02-2015 |
20150095446 | SYSTEM AND METHOD FOR INCREASING PHYSICAL MEMORY PAGE SHARING BY WORKLOADS - System and method for increasing physical memory page sharing by workloads executing on different host computing systems are described. In one embodiment, workloads executing on different host computing systems that access physical memory pages having identical contents are identified. Further, migration to consolidate the identified workloads on a single host computing system such that the physical memory pages can be shared using a page sharing mechanism is recommended. | 04-02-2015 |
20150095445 | Dynamic Path Selection Policy for Multipathing in a Virtualized Environment - Particular embodiments change a current storage I/O path used by a host computer to access networked storage to an alternative storage I/O path by considering traffic load at a networked switch in the current storage I/O path. The host computer transmits a request to the networked switch in the current storage I/O path to provide network load information currently experiences by the networked switch. After receiving network load information from the networked switch, the host computer then evaluates whether the networked switch is overloaded based on the received network load information. Based on the evaluation, the host computer selects a new alternative storage I/O path to the networked storage that does not include the networked switch, and then forwards future storage I/O communications to the networked storage using the new alternative storage I/O path. | 04-02-2015 |
20150095298 | Method for Tracking a Schema in a Schema-Less Database - Systems and methods are described for obtaining, for insertion into a schema-less database, a data object that comprises a plurality of key and value pairs. The method also includes hashing the keys associated with the plurality of key and value pairs. The hashing includes executing a hash function to generate a hashed data object. The method also includes comparing the hashed data object to a plurality of first hashed data objects and determining that the hashed data object does not match any of the first hashed data objects. Based on the determining, the method includes associating the hashed data object with the first hashed data objects to generate second hashed data objects and generating a schema for the database. The schema includes a hierarchy of keys that represent the second hashed data objects. | 04-02-2015 |
20150089496 | SELECTIVE ALLOCATION OF PHYSICAL COMPUTING RESOURCES AMONGST VIRTUAL MACHINES - Techniques for resource allocation are described. Some embodiments provide a computing system and method for resource allocation in a virtualized computing environment comprising at least one physical computing system hosting multiple virtual machines, that performs at least some of the described techniques. In one embodiment, a user connection server is configured to receive a request for allocation of a virtual machine, for a user. The user connection server determines an attribute value of the user. Based on the attribute value of the user, allocation of physical computing resources for the virtual machine is determined. A management server is configured to boot the virtual machine for access by the user, the virtual machine booted with the determined allocation of physical computing resources for the virtual machine. | 03-26-2015 |
20150089381 | EYE TRACKING IN REMOTE DESKTOP CLIENT - A remote desktop client application on a client device receives screen data from a remote desktop on a remote server and displays a portion of the remote desktop, a mode icon, and direction icons. In a first mode, the remote desktop client detects a direction icon being selected by the user's eye movements and locally scrolls the remote desktop to display another portion of the remote desktop. The remote desktop switches to a second mode after detecting the mode icon being selected based on the user's eye movements. In the second mode, the remote desktop client detecting a direction icon being selected by the user's eye movements and sends a scrolling command to remotely scroll in the remote desktop. The remote desktop client receives updated screen data of the remote desktop from the remote server and displays the other portion of the remote desktop based on the updated screen data. | 03-26-2015 |
20150089272 | MAINTAINING HIGH AVAILABILITY OF A GROUP OF VIRTUAL MACHINES USING HEARTBEAT MESSAGES - Embodiments maintain high availability of software application instances in a fault domain. Subordinate hosts are monitored by a master host. The subordinate hosts publish heartbeats via a network and datastores. Based at least in part on the published heartbeats, the master host determines the status of each subordinate host, distinguishing between subordinate hosts that are entirely inoperative and subordinate hosts that are operative but partitioned (e.g., unreachable via the network). The master host may restart software application instances, such as virtual machines, that are executed by inoperative subordinate hosts or that cease executing on partitioned subordinate hosts. | 03-26-2015 |
20150084979 | METHOD AND SYSTEM FOR MEASURING DISPLAY PERFORMANCE OF A REMOTE APPLICATION - This disclosure describes a performance-monitoring system that computes a display performance metric of a remote application. During operation, the system performs a sequence of input events, and receives information which updates a graphical user interface (GUI). The GUI displays a sequence of frames rendered by a remote application in response to the input events. The system then samples colors at a number of pivot points on the GUI, and matches the a respective frame to a previously performed input event based on the sampled colors. The system subsequently computes a display performance metric for the remote application based on the frames and the corresponding input events. | 03-26-2015 |
20150082417 | FIREWALL CONFIGURED WITH DYNAMIC COLLABORATION FROM NETWORK SERVICES IN A VIRTUAL NETWORK ENVIRONMENT - Techniques for automatic firewall configuration in a virtual network environment are described. In one example embodiment, firewall rules are configured using virtual machine (VM) inventory objects. The firewall rules are then transformed by replacing the VM inventory objects in the configured firewall rules with associated Internet protocol (IP) addresses using an IP address management table (IPAM) table and a network address translation (NAT) table. The transformed firewall rules are then sent to a firewall engine for filtering communication from and to VMs running on a first machine on one or more computing networks and communication from and to VMs running on a second machine on one or more computing networks at a firewall according to the transformed firewall rules. | 03-19-2015 |
20150082302 | HIGH AVAILABILITY USING DYNAMIC QUORUM-BASED ARBITRATION - Exemplary methods, apparatuses, and systems include a first virtual infrastructure manager (VIM) determining that the first VIM is to be an active manager of a plurality of virtual machines running on a plurality of host devices and that a second VIM is to be a standby manager of the plurality of virtual machines. The first VIM selects a first host device from the plurality of host devices to serve as a passive witness node in arbitrating active and standby roles between the first VIM and second VIM. The first host device runs one or more virtual machines and is managed by the active manager. The first VIM selects a first host device by confirming that the first host device is available to each of the first VIM and the second VIM. The first VIM writes a file on the first host device indicating that the first VIM is the active manager. | 03-19-2015 |
20150082276 | EXTENSIBLE CODE AUTO-FIX FRAMEWORK BASED ON XML QUERY LANGUAGES - A method is provided to automatically correct an original source code. An abstract syntax tree (AST) is created from the original source code where the AST includes AST nodes. AST node filter queries are evaluated on the AST to filter out AST nodes with defect patterns. Automatic fixes are applied to the filtered AST nodes to transform the AST. A modified source code is created by deserializing the transformed AST. | 03-19-2015 |
20150082218 | EFFICIENT COMMAND PROCESSING - Exemplary methods, apparatuses, and systems receive input command requests and present suggestions for command actions or command objects. An action request is received within a datacenter management user interface and a first command suggestion is provided. The first command suggestion includes one or more placeholder object categories. A first suggested object is identified according to a received object property and the action request. The object property can be CPU utilization, disk space, memory, uptime, version, software type, geographic location, keyword, or name. In response to receiving the action request, the first suggested object is determined to be compatible with the action request, in response to identifying the first suggested object is compatible with the received object property and the action request, a second command suggestion is provided. The second command suggestion includes the first suggested object. | 03-19-2015 |
20150081993 | INCREMENTAL BACKUPS USING RETIRED SNAPSHOTS - Systems and methods for performing backups to a storage device are provided. For virtual disks of a virtual machine, snapshots are used to backup data periodically to a storage device. A disk virtualization layer “retires” data blocks associated with a snapshot, while retaining a list of block addresses, for comparison in future backup operations. The retired snapshot can be compared against future snapshots to generate incremental backups without occupying storage space with data blocks that have already been copied to another storage device. | 03-19-2015 |
20150081979 | STORAGE INTEGRATION FOR HOST-BASED WRITE-BACK CACHING - Techniques for enabling integration between a storage system and a host system that performs write-back caching are provided. In one embodiment, the host system can transmit to the storage system a command indicating that the host system intends to cache, in a write-back cache, writes directed to a range of logical block addresses (LBAs). The host system can further receive from the storage system a response indicating whether the command is accepted or rejected. If the command is accepted, the host system can initiate the caching of writes in the write-back cache. | 03-19-2015 |
20150074793 | PLACING A VIRTUAL EDGE GATEWAY APPLIANCE ON A HOST COMPUTING SYSTEM - Techniques for placing a virtual edge gateway appliance on at least one host computing system are described. In one embodiment, a virtual switch assigned to a tenant for creating virtual networks is identified. Further, at least one host computing system having access to the virtual switch is identified. Furthermore, placing a virtual edge gateway appliance on the at least one identified host computing system is recommended to allow connectivity to networks created using the virtual switch assigned to the tenant. | 03-12-2015 |
20150074743 | EXTENSIBLE MULTI-TENANT CLOUD-MANAGEMENT SYSTEM AND METHODS FOR EXTENDING FUNCTIONALITIES AND SERVICES PROVIDED BY A MULTI-TENANT CLOUD-MANAGMENT SYSTEM - The current document is directed to an interface and authorization service that allows users of a cloud-director management subsystem of distributed, multi-tenant, virtual data centers to extend the services and functionalities provided by the cloud-director management subsystem. A cloud application programming interface (“API”) entrypoint represents a request/response RESTful interface to services and functionalities provided by the cloud-director management subsystem as well as to service extensions provided by users. The cloud API entrypoint includes a service-extension interface and an authorization-service management interface. The cloud-director management subsystem provides the authorization service to service extensions that allow the service extensions to obtain, from the authorization service, an indication of whether or not a request directed to the service extension through the cloud API entrypoint is authorized. | 03-12-2015 |
20150074670 | METHOD AND SYSTEM FOR DISTRIBUTED PROCESSING OF HTTP REQUESTS - The current document is directed to an interface and authorization service that allows users of a cloud-director management subsystem of distributed, multi-tenant, virtual data centers to extend the services and functionalities provided by the cloud-director management subsystem. A cloud application programming interface (“API”) entrypoint represents a request/response RESTful interface to services and functionalities provided by the cloud-director management subsystem as well as to service extensions provided by users. The API entrypoint includes a service-extension interface and an authorization-service management interface. The cloud-director management subsystem provides the authorization service to service extensions that allow the service extensions to obtain, from the authorization service, an indication of whether or not a request directed to the service extension through the API entrypoint is authorized. Requests for service-extension URIs within the API entrypoint are processed by a cloud API entrypoint server that dispatches requests, in a predetermined order, to service-extension servers. | 03-12-2015 |
20150074662 | TECHNIQUES FOR IMPROVING COMPUTATIONAL THROUGHPUT BY USING VIRTUAL MACHINES - A computer implemented method receives a request to run a group of instruction sets. Each instruction set is associated with a sequence of common instructions. The method executes the sequence of common instructions in a first virtual machine (VM) to generate a result which is stored in a first memory associated with the first VM. The method then clones a second VM that shares the first memory with the first VM. The method continues by executing a first instruction set in the second VM. Since the second VM shares memory with the first VM, the second VM can use the result stored in the first memory and the sequence of common instructions does not need to be executed on the second VM. In one example, the result is a run-time model of a circuit and the second VM runs the first instruction set on the run-time model. | 03-12-2015 |
20150074661 | SYSTEM AND METHOD FOR MANAGING CONFIGURATION OF VIRTUAL SWITCHES IN A VIRTUAL MACHINE NETWORK - Techniques for managing configuration of virtual switches in a virtual machine network are disclosed. In an embodiment, a virtual machine network that includes virtual switches is configured to revert back to a saved network configuration if a configuration change causes the connection between the VM management system and a managed node to be lost. For example, before any configuration changes are made, the active configuration is saved. If the new configuration supports a working connection between the managed node and the VM management system, then the saved configuration is no longer needed and can be flushed from memory. If, however, the new configuration causes the managed node to be disconnected from the VM management system, then the system reverts back to the saved configuration that was previously known to work. The saved configuration is used to reestablish the connection so that the network continues to function. | 03-12-2015 |
20150074659 | Methods and Apparatus to Perform Web-Based Installations and/or Upgrade Architectures for Enterprise Software - Methods, apparatus, systems and articles of manufacture are disclosed to perform web-based installations and/or upgrade architectures for enterprise software. An example method disclosed herein includes obtaining configuration information at an installation handler via a web-based interface, the configuration information including a source locator identifying a source location of a source package and a target locator identifying a target machine on which to install the source package, the target machine being separate from the installation handler and the source location. The example method also includes validating the configuration information, and, in response to determining that the configuration information is valid, deploying the source package to the target machine. | 03-12-2015 |
20150074262 | PLACEMENT OF VIRTUAL MACHINES IN A VIRTUALIZED COMPUTING ENVIRONMENT - Techniques for placement of a virtual machine (VM) on a host computing system in a virtualized computing environment are disclosed. In one embodiment, a first network device having network load less than a threshold value is determined. Further, the VM is placed on the host computing system coupled to the first network device. In this case, the host computing system transmits and receives network traffic associated with the VM via the first network device. | 03-12-2015 |
20150074054 | VIRTUAL MACHINE CLONING - Exemplary methods, apparatuses, and systems create a parent snapshot of the parent virtual disk in response to receiving a request to clone a parent virtual machine. A clone virtual machine is created with a clone redo log file and clone virtual disk. Copying of the parent virtual disk to the clone virtual disk is initiated. A first active link from the clone redo log file to the parent snapshot is created to provide the clone virtual machine access to the parent snapshot. In response to determining that the copying of the parent virtual disk to the clone virtual disk is complete, the first active link is removed and a second active link is created from the clone redo log file to the clone virtual disk or to a snapshot of the clone virtual disk. | 03-12-2015 |
20150071110 | METHOD AND SYSTEM FOR RECOVERING FROM NETWORK DISCONNECTS BY CLONING A VIRTUAL PORT - Techniques for managing the configuration of managed nodes in a virtual machine network are disclosed. In an embodiment, managing the configuration of a managed node involves creating a clone of a virtual port on the managed node and using the cloned virtual port as an alternative communication channel between the managed node and a virtual machine management system to modify the virtual port. This technique can be used to restore connectivity to a managed node, such as a virtual switch, when connectivity is lost due to a misconfigured virtual port. | 03-12-2015 |
20150067284 | SYSTEM AND METHOD FOR SELECTIVELY UTILIZING MEMORY AVAILABLE IN A REDUNDANT HOST IN A CLUSTER FOR VIRTUAL MACHINES - Techniques for selectively utilizing memory available in a redundant host system of a cluster are described. In one embodiment, a cluster of host systems, with at least one redundant host system, with each host system having a plurality of virtual machines with associated virtual machine (VM) reservation memory is provided. A portion of a data store is used to store a base file, the base file accessed by all the plurality of virtual machines. A portion of the memory available in the redundant host system is assigned as spare VM reservation memory. A copy of the base file is selectively stored in the spare VM reservation memory for access by all the plurality of virtual machines. | 03-05-2015 |