WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] Re: Interdomain comms

To: Harry Butterworth <harry@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
Subject: Re: [Xen-devel] Re: Interdomain comms
From: Eric Van Hensbergen <ericvh@xxxxxxxxx>
Date: Fri, 6 May 2005 19:19:42 -0500
Cc: Mike Wray <mike.wray@xxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx, "Ronald G. Minnich" <rminnich@xxxxxxxx>, Eric Van Hensbergen <ericvh@xxxxxxxxxxxxxxxxxxxxx>
Delivery-date: Sat, 07 May 2005 00:19:18 +0000
Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:reply-to:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=t/nDM7vfnHw9AqwBWWWDF/AKS8rx/1hDsnJhv11b9Jug2rMHKNx4SKYOMQ7EGwepVNtLy26r1lPWJd9aKQ3qaEDnVa12cPwb8LooDKLW5aMmX2lx3Wow+UOb3JMsTEnLZ0OhiOZGMGie3gk/UTsI20d937Jkc2Xc8DDp6wgIZFc=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <1115421185.4141.18.camel@localhost>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <0BAE938A1E68534E928747B9B46A759A6CF3AC@xxxxxxxxxxxxxxxxxxxxxxxxxxxx> <1115325448.12082.79.camel@localhost> <427B20B9.1010101@xxxxxx> <1115381693.18929.159.camel@localhost> <Pine.LNX.4.58.0505060940420.10357@xxxxxxxxxxxxxxx> <1115421185.4141.18.camel@localhost>
Reply-to: Eric Van Hensbergen <ericvh@xxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
On 5/6/05, Harry Butterworth <harry@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx> wrote:
> I skimmed what I could find immediately on 9P:
> http://www.cs.bell-labs.com/sys/man/5/INDEX.html and came to the
> conclusion that what I proposed is lower level and more general (it's
> also simpler but, given that it's not doing the same thing, that isn't
> really significant).

There isn't a great deal of detail on the specifics of the protocol
beyond the man pages.  I think you'll find the following Plan 9
foundational papers more illustrative of the type of things that it
can be used to do:
        http://plan9.bell-labs.com/sys/doc/9.pdf
        http://plan9.bell-labs.com/sys/doc/names.pdf
and in particular:
        http://plan9.bell-labs.com/sys/doc/net/net.pdf
For the security minded:
        http://plan9.bell-labs.com/sys/doc/auth.pdf

I believe Ron's original statements were motivated by your earlier statement:
>>
>>The event-channel and shared memory page are fine as low-level
>>primitives to implement a comms channel between domains on the same
>>physical machine. The problem is that the primitives are unnecessarily
>>low-level from the client's perspective and result in too much
>>per-client code.
>>

This is exactly the sort of thing that the Plan 9 networking model was
designed to do.
The idea being that the Plan 9 model provides a nice abstract layer
which to communicate with AND to organize (the organization is an
important feature) the resulting communication channels and endpoints
(no matter what the underlying transport is or where the particular
endpoints may be).  The Plan 9 networking model can be run over named
pipes, shared memory, PCI buses, Ethernet, Infiniband, or whatever
other flavor of network with relatively minor requirements on the
underlying transport layer.

> 
> You could implement 9P on top of my IDC API proposal
>

You could implement 9P on top of such an IDC API, however, it seems
like it would add unnecessary overhead.  9P can be easily implemented
directly on top of the existing event/shared-page mechanisms and then
trivially bridged to the network at the I/O partition(s).  As far as
multi-level protocol stacks and circumventing data paths, I'd hope we
could come up with a simpler, more elegant solution.

Looking over your earlier proposal it seems like an awful lot of
complexity to accomplish a relatively simple task.  Perhaps the
refined API will demonstrate that simplicity better? I'd be really
interested in the security details of your model as well when you
finish the more detailed proposal.

>>
>>The inter-domain communication API should preserve the efficiency of
>>these primitives but provide a higher level API which is more convenient
>>to use.
>>

I think this is a great mission statement -- convenience and
simplicity are the key to selling such an API.

I'd suggest we step through a complete example with actual
applications and actual devices that would demonstrate the problem
that we are trying to solve.  Perhaps Ron and I can pull together an
alternate proposal based on such a concrete example.

           -eric

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel