On Mon, Nov 26, 2018 at 09:07:32AM +0000, linzhecheng wrote: > > > > -----Original Message----- > > From: Gerd Hoffmann [mailto:kra...@redhat.com] > > Sent: Monday, November 26, 2018 4:50 PM > > To: linzhecheng <linzhech...@huawei.com> > > Cc: qemu-devel@nongnu.org; wangxin (U) <wangxinxin.w...@huawei.com>; > > Zhoujian (jay) <jianjay.z...@huawei.com> > > Subject: Re: [Qemu-devel] [question] live migration about redir-usb > > > > On Mon, Nov 26, 2018 at 06:53:23AM +0000, linzhecheng wrote: > > > > > > > > > > -----Original Message----- > > > > From: Gerd Hoffmann [mailto:kra...@redhat.com] > > > > Sent: Monday, November 26, 2018 2:46 PM > > > > To: linzhecheng <linzhech...@huawei.com> > > > > Cc: qemu-devel@nongnu.org; wangxin (U) > > <wangxinxin.w...@huawei.com>; > > > > Zhoujian (jay) <jianjay.z...@huawei.com> > > > > Subject: Re: [Qemu-devel] [question] live migration about redir-usb > > > > > > > > On Mon, Nov 26, 2018 at 02:29:12AM +0000, linzhecheng wrote: > > > > > Hi, Gerd > > > > > I have read this discussion thread about live migration in tcp mode. > > > > > https://bugzilla.redhat.com/show_bug.cgi?id=1254971 > > > > > Only spice redirection supports live migration not, but why not tcp > > > > > mode? > > > > > Does usbredirserver not support it or qemu? > > > > > > > > usbredirserver. > > > > > > > > spice client holds a connection to both source and target host for a > > > > seamless connection handover, and usb-redir needs that too to hand > > > > over the usb device without interruption. > > > > > > > > usbredirserver can't do that. > > > > > So if we realize the handover between src and dst chardev of qemu, we > > > can do live migration in tcp mode. > > > > > Is it similar with openvswtich who both accept the connection of src and > > > dst > > qemu? > > > > It is more complicated than just accepting two connections. Network can > > just > > throw away packages if needed, typicaly they will be resent by the guest. > > That > > doesn't work with usb, you must properly keep track of every in-flight usb > > transfer. > Why will network throw away packets?
It has the option to do that if needed, which can simplify the software design. > I think inflight usb Packets have already been tracked by redir-usb in > live migration. What's more do we have to do? spice client also knows the live migration state, specifically whenever the guest is still running on the source machine (usb replies should be sent to source then) or whenever it is already stopped for the final live migration stage (usb replies must be queued up then and wait until the guest starts running on the target machine). That information travels over the main channel though, not the usb-redir channel. cheers, Gerd