(Alternative) VM swap file locations Q&A – part 2

After writing the article “(Alternative) VM swap file locations Q&A” I received a lot of questions about the destination of the swapped pages and reading back my article I didn’t do a good job clarifying that part of the process.

Which network is used for copying swapped pages?
As mentioned in the previous post the swap file itself is not copied over to the destination host, but only the swapped pages itself. Raphael Schitz (@hypervisor_fr) was the first to ask, which network is used to copy over the swapped pages? The answer is vMotion network.

The reason why the vMotion network is used, is that the source host running the active virtual machine, pulls the swapped pages back in to memory when migrating the memory pages to the destination host.

Are swapped pages on the source host swapped out on the destination host?
As the pages are copied out from the swap file to the destination host, swapped pages are copied into the stream of the in-memory pages from the source host to the destination host. That means that the destination host is not aware which pages orginate from swap file and which pages come from in-memory, they are just memory pages that need to be stored and made available to the new virtual machine.

To describe the behavior in a different way, the source host pulls the swapped pages from disk before sending them over, therefor the destination host sees a continues stream of memory pages, unmarked, all equal and are therefor stored in memory by the destination host.

What if the destination host is experiencing contention?
Well it's up to the destination host to decide which pages to swap out to disk. During a vMotion process, the destination VM starts out with a clean slate, meaning that the memory target is not determined by the source host but by the destination host. Memory targets are local memory schedule metrics and thus not shared. The source host shares the percentage of active pages but it's the destination hosts' memory scheduler that determines the appropriate swap target for the new virtual machine. It can possibly push out memory pages back to its swap file as needed. The pages could be the same as the pages on the old host, but they can also completely different pages.

What about compressed pages?
For every rule there is an exception and the exception is compressed pages. During a vMotion process the destination host will maintain the compressed pages by keeping them compressed. This behavior occurs even with an unshared swap migration.

Get notification of these blogs postings and more DRS and Storage DRS information by following me on Twitter: @frankdenneman

Frank Denneman

I’m the Chief Technologist for PernixData, part of the Office of the CTO. I contribute to the product development and analyze technology trends impacting current and future business offerings. Additionally, I help to manage the PernixPro program and contribute to PernixData messaging. Follow me on Twitter, visit the facebook fanpage of FrankDenneman.nl, or add me to your Linkedin network

2 Responses

  1. Michael says:

    Frank, Nice post!

    What if the swap location fails, does the VM continue to run?

  2. NiTRo says:

    Hi Frank, thanks again for this great post. I guess the ballooned pages are deflated too during the process ?