All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anthony Liguori <aliguori@us.ibm.com>
To: Stefan Berger <stefanb@us.ibm.com>
Cc: xen-devel@lists.xensource.com, "Cihula,
	Joseph" <joseph.cihula@intel.com>,
	Ronald Perez <ronpz@us.ibm.com>,
	"Scarlata, Vincent R" <vincent.r.scarlata@intel.com>
Subject: Re: A migration framework for external devices
Date: Thu, 09 Feb 2006 11:05:46 -0600	[thread overview]
Message-ID: <43EB766A.30701@us.ibm.com> (raw)
In-Reply-To: <OF8A30427C.48305C4F-ON85257110.005AFDA3-85257110.005CA9EB@us.ibm.com>

Stefan Berger wrote:
> The problem that I would see with a framework living outside XenD is 
> that you now have two different entities taking care of migration. 
> Certainly it should be one piece of code that does everything.
> I don't understand your argument about a push/pull migration model. I 
> mean in certain ways everything is push/pull and push is certainly 
> what we have today with a command like "xm migrate <DomID> <Host>", 
> which effectively pushes the vm onto another machine. What would be 
> different in the new model?
Sorry, I should have been more specific.  You still have an xm migrate 
<Dom> <Host> command, but instead of always having a daemon running on 
Host to receive the migration, it instead uses something like ssh to 
execute an "xm migrate-incoming <port>" command on the host.  Locally, 
you would use an "xm migrate-outgoing <Dom> <Host> <port>" command.

Since migration doesn't actually do anything when not migrating there's 
no point in just having an idle thread in Xend (or any idle daemon at 
all).  It also allows you to do clever things like vary the port which 
should add to the security of migration.
> Plug-ins  will need to exist in some form on another since knowledge 
> is needed about how to migarte a specific technology and prepare the 
> target system for it - and maybe check the target system first whether 
> that technology is supported there or migration requirements can be 
> met. In a way they do exist today with classes like 
> xen/xend/{pciif,netif,blkif,usbif,tpmif}.py which are all implementing 
> technology-specific code - not for migration, though.
Why do plugins have to exist?  The only reason to have a plugin 
mechanism is to be able to maintain plugins outside of the Xend tree 
which would require a stable plugin interface.  I don't think we're at a 
point where we can do that.
>
> > Is it static throughout the lifetime of the domain or does it change?  
>
> The TPM state itself is not static throughout the lifetime of a 
> domain. It does change - if that's what you mean.
>
> > How much state are we talking about migrating?
>
> It's not going to be much in terms of kilobytes or so, but it might 
> end up being the first device that lives outside a domain an needs to 
> be migrated.
How many round trips would it require?  If the data is dynamic, it has 
to be transferred (or at least finalized) during the final stage of 
migration which is performance critical.
> My gut feeling is that we need to design a flexible migration protocol 
> that is is extensibile. So I am just looking around what other poeple 
> think, although I am doing some coding as well :-).
This all sounds like it's going to add complexity.  The tools are 
already far too complex.

Regards,

Anthony Liguori
>    Stefan
>
> >
> > Regards,
> >
> > Anthony Liguori
> > > Clients on the source machine would communicate with that daemon and
> > > transfer the state. The clients would have to be triggered by XenD
> > > after a partition is not scheduled anymore and be given the IP 
> address
> > > of the target machine. Afterwards there needs to be some
> > > synchronization on resuming the scheduling on the target machine 
> after
> > > all state has been deserialized.
> > >   The plugable deamon itself would handle the communication 
> sockets, a
> > > low-level protocol which the plugins and clients would use, have
> > > support for timing and protocol time-outs and provide threading. The
> > > plugins would have to do the rest of what's necessary to communicate
> > > with the infrastructure and the higher-level protocol shared with the
> > > clients.
> > >   Comments?
> > >
> > >   Stefan
> > > 
> ------------------------------------------------------------------------
> > >
> > > _______________________________________________
> > > Xen-devel mailing list
> > > Xen-devel@lists.xensource.com
> > > http://lists.xensource.com/xen-devel
> > >  
> >

  reply	other threads:[~2006-02-09 17:05 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-02-08 20:16 A migration framework for external devices Stefan Berger
2006-02-08 21:28 ` Muli Ben-Yehuda
2006-02-08 21:30   ` Stefan Berger
2006-02-08 22:32     ` Mike D. Day
2006-02-08 22:40       ` Stefan Berger
2006-02-09 12:34         ` Mike D. Day
2006-02-09 15:01           ` Daniel Veillard
2006-02-09 16:10             ` Mike D. Day
2006-02-13 10:18               ` Daniel Veillard
2006-02-09 16:20           ` Stefan Berger
2006-02-09 16:37             ` Mike D. Day
2006-02-09 15:05 ` Anthony Liguori
2006-02-09 16:52   ` Stefan Berger
2006-02-09 17:05     ` Anthony Liguori [this message]
2006-02-09 17:51       ` Stefan Berger
2006-02-09 18:35       ` Mike D. Day
2006-02-09 18:45         ` Anthony Liguori
2006-02-09 18:58           ` Mike D. Day

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=43EB766A.30701@us.ibm.com \
    --to=aliguori@us.ibm.com \
    --cc=joseph.cihula@intel.com \
    --cc=ronpz@us.ibm.com \
    --cc=stefanb@us.ibm.com \
    --cc=vincent.r.scarlata@intel.com \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.