[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] RFC: V4V Linux Driver



On 6 August 2012 16:28, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> wrote:
> On Fri, Aug 03, 2012 at 11:24:20PM +0100, Jean Guyader wrote:
>> This is a Linux driver for the V4V inter VM communication system.
>>
>> I've posted the V4V Xen patches for comments, to find more info about
>> V4V you can check out this link.
>> http://osdir.com/ml/general/2012-08/msg05904.html
>>
>> This linux driver exposes two char devices one for TCP one for UDP.
>> The interface exposed to userspace are made of IOCTLs, one per
>> network operation (listen, bind, accept, send, recv, ...).
>
> I haven't had a chance to take a look at this and won't until next
> week. But just a couple of quick questions:
>
>  - Is there a test application for this? If so where can I get it

I have a userspace library that talks to it, I'm in the process of
cleaning it up.
I'll send a patch series today that would add it in xen/tools.

>  - Is there any code in the Xen repository that uses it.

The Xen support is being upstream right now, but because it needs some
userspace kernel to be useful it's kind a chicken and a egg problem, so I'm
trying to upstream both at the same time.

You can find the last version of the Xen patches here:
http://lists.xen.org/archives/html/xen-devel/2012-08/msg00385.html

>  - Who are the users?

Right now we use a close but not compatible version in XenClient.
Potentially the users
would be anyone that is looking to for a easy way to communicate
between VMs with
that has a feel of TCP/UDP.

Some background info about V4V could be found here:
http://lists.xen.org/archives/html/xen-devel/2012-05/msg01866.html

>  - Why .. TCP and UDP ? Does that mean it masquarades as an Ethernet
>    device? Why the choice of using a char device?
>

Because of security concerns we didn't want to rely on the Linux
networking code because it would
have been hard for us to prove that a V4V packet could never end up on
your network card.
Although we understand that there is a need for a network like driver
and we are working on a version
of the V4V driver that will use SKBs and expose itself as a new socket type.

In fact we asked on the LKML if it would be acceptable to add a new
type of socket in linux for
inter-VM communication but we are still waiting for an answer.
http://comments.gmane.org/gmane.linux.kernel/1337472

The really nice feature about V4V is it's ability leverage all the
existing networking programs.
We have a libc interposer library that wraps all the networking
functions. Here is an example
to access a ssh server running in another domain (domid=16)

LD_PRELOAD=/usr/lib/libv4v.so ssh 1.0.0.16

Thanks,
Jean

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.