Cross Hypervisor VM Migration with Paused VM Functions
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Virtual machine migration across different hypervisor versions is problematic due to differences in data structures, leading to potential failure of VM functions during live migration, as existing methods require identical data structures across all hypervisors or complete shutdown and restart of virtual machines.
Innovation Solution
The VM function is coupled to the hypervisor it executes on, maintaining a consistent application binary interface (ABI) across hypervisors, allowing migration of the virtual machine's state without migrating the VM function code, and pausing migration until the VM function completes execution to ensure seamless transfer.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If VM functions are migrated across hypervisor versions with different data structures, then virtual machine migration flexibility is improved, but VM function reliability deteriorates due to data structure incompatibility
Solution Approach 1:
The patent creates a copy of the source hypervisor's data structures (e.g., linked lists, trees, hash tables) in the destination hypervisor memory space. This copy allows the migrated VM function to access and operate on familiar data structures without requiring the destination hypervisor to have identical internal implementations, thus maintaining reliability while enabling cross-version migration.
Solution Approach 2:
The patent introduces an intermediary mechanism that translates between different hypervisor data structure representations. The VM function interacts with copied data structures that mimic the source hypervisor's interface, while the system handles the translation and adaptation to the destination hypervisor's actual data structures, shielding the VM function from structural differences.
2Reliability
If identical data structures are required across all hypervisors for VM function compatibility, then VM function reliability is improved, but system complexity and maintenance difficulty increase
Solution Approach 1:
The patent segments the hypervisor system into independent components: the core hypervisor with its native data structures, and the migrated VM functions with their own copied data structures. This segmentation allows each component to maintain its own data structure implementations without requiring global uniformity, reducing system complexity while ensuring VM function reliability through isolated data structure copies.
3Productivity
If VM functions access internal hypervisor data structures directly, then VM function performance is improved, but migration capability deteriorates due to hypervisor version differences
Solution Approach 1:
The patent performs preliminary action by copying the source hypervisor's data structures into the destination hypervisor's memory space before migrating the VM function. This preliminary setup ensures that when the VM function is migrated, it immediately finds its required data structures already in place with the correct structure and content, maintaining performance while enabling migration.
Data Source
AI summary
A hypervisor executing on a source host receives a request to migrate a virtual machine from the source host to a destination host. Responsive to determining that the virtual machine is executing a VM function component, the hypervisor on the source host pauses the migration of the virtual machine. Responsive to determining that the VM function component has completed executing the hypervisor on the source host resumes the migration of the virtual machine to the destination host.


