In cloud computing, VM migration is a process where a virtual machine is moved from one physical host to another. This allows better load balancing, hardware maintenance, and energy efficiency. During migration, three main components must be handled:
Memory Migration
- Goal: Move the VM’s memory from the source to the destination system.
- Challenge: VM memory can be several hundreds of MBs to a few GBs.
- Technique:
- Internet Suspend-Resume (ISR):
- Exploits temporal locality (only recently changed data is different).
- Memory is treated as a tree of small subfiles.
- Only modified subfiles are transmitted during migration.
- Live Migration:
- Uses pre-copy method.
- First transfers all memory pages.
- Then sends only modified (dirty) pages in iterations.
- Final step transfers CPU state and last dirty pages.
- Keeps downtime very low (few milliseconds to seconds).
- Post-copy:
- Transfers only once.
- Higher downtime but lower total migration time.
- Memory Compression:
- Compress memory pages to reduce size.
- Fast decompression on the destination system.
- Internet Suspend-Resume (ISR):
File System Migration
- Goal: Provide the same file system view to the VM on the new host.
- Problem: Large disks are difficult to transfer entirely.
- Solutions:
- Virtual Disk Transfer:
- Copy the entire virtual disk image, but slow and not scalable.
- Global File System (like NFS):
- Files are network-accessible, so no need to copy.
- ISR with Smart Copying:
- Uses spatial locality (users move between predictable places).
- Only differences between source and destination file systems are transferred.
- Proactive Transfer:
- Predict where the VM will move next and preload common data.
- Virtual Disk Transfer:
Network Migration
- Goal: Maintain all active network connections during migration.
- Techniques:
- Assign each VM a virtual IP address and virtual MAC address.
- VMM maps these to physical machines.
- Use Unsolicited ARP to notify other systems about the VM’s new location.
- Optionally, keep the same MAC address and let the switch detect the move.
- Live Migration Support:
- Protocol states are moved with the VM.
- Applications stay connected without restarting.
- Common in LAN or datacenter environments.
Example: Xen VM Live Migration
- Xen hypervisor allows VM migration using Domain 0 (Dom0).
- Dom0 handles migration tasks using send/receive model.
- Uses pre-copy strategy to move memory and CPU state.
- Ensures minimal downtime and keeps applications running.
