Thread (17 messages) 17 messages, 6 authors, 2013-10-14

Re: Is fallback vhost_net to qemu for live migrate available?

From: Qin Chuanyu <hidden>
Date: 2013-08-27 07:22:36
Also in: kvm

On 2013/8/27 15:16, Michael S. Tsirkin wrote:
On Tue, Aug 27, 2013 at 03:04:54PM +0800, Qin Chuanyu wrote:
quoted
On 2013/8/27 12:19, Michael S. Tsirkin wrote:
quoted
On Tue, Aug 27, 2013 at 11:32:31AM +0800, Qin Chuanyu wrote:
quoted
Hi all

I am participating in a project which try to port vhost_net on Xen。

By change the memory copy and notify mechanism ,currently
virtio-net with vhost_net could run on Xen with good
performance。TCP receive throughput of single vnic from 2.77Gbps up
to 6Gps。In VM receive side,I instead grant_copy with grant_map +
memcopy,it efficiently reduce the cost of grant_table spin_lock of
dom0,So the hole server TCP performance from 5.33Gps up to 9.5Gps。

Now I am consider the live migrate of vhost_net on Xen,vhost_net
use vhost_log for live migrate on Kvm,but qemu on Xen havn't manage
the hole memory of VM,So I am trying to fallback datapath from
vhost_net to qemu when doing live migrate ,and fallback datapath
from qemu to
vhost_net again after vm migrate to new server。

My question is:
	why didn't vhost_net do the same fallback operation for live
migrate on KVM,but use vhost_log to mark the dirty page?
	Is there any mechanism fault for the idea of fallback datapath from
vhost_net to qemu for live migrate?

any question about the detail of vhost_net on Xen is welcome。

Thanks
It should work, in practice.

However, one issue with this approach that I see is that you
are running two instances of virtio-net on the host:
qemu and vhost-net, doubling your security surface
for guest to host attack.

I don't exactly see why does it matter that qemu doesn't manage
the whole memory of a VM - vhost only needs to log
memory writes that it performs.


.
Thanks for your reply.

In fact,I am not sure that whether vhost_log could work on Xen live
migrate or not. Yes,vhost_sync_dirty_bitmap work well on Kvm,but
vhost_net havn't run on Xen before,although the method
vhost_dev_sync_region -> memory_region_set_dirty ->
xen_modified_memory call sequence exist.

Have you considered the scene that vhost_migration_log code running
on Xen? If yes,it sames much easier then fallback datapath from
vhost_net to qemu for live migrate.
I never looked at how Xen live migration works with QEMU so I don't
know.


.
Thanks

I will try vhost_migration_log for live migration first,if there are 
some further result,I would let you know.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help