All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Lovell <mike@dev-zero.net>
To: Anthony Liguori <aliguori@us.ibm.com>
Cc: Stefan Hajnoczi <stefanha@gmail.com>, qemu-devel <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] net: RFC New Socket-Based, Switched Network Backend (QDES)
Date: Wed, 28 Nov 2012 00:37:58 -0700	[thread overview]
Message-ID: <50B5BF56.6010101@dev-zero.net> (raw)
In-Reply-To: <877gp7azt5.fsf@codemonkey.ws>

On 11/27/2012 07:24 AM, Anthony Liguori wrote:
> Stefan Hajnoczi <stefanha@gmail.com> writes:
>
>> The part I'm wondering about with VXLAN multicast is whether all QEMU
>> processes on the host need to receive on the same well-known UDP port.
>>   Not sure if that's possible with the sockets API.
> Perhaps this is a dumb question, but wouldn't it be trivial to write a
> VXLAN proxy that added a VXLAN tag to ethernet frames from -net socket?

this is definitely possible. when i was doing my initial prototyping to 
see if this would be possible, i used the socket network backend to 
connect to a python program doing the VXLAN-like processing. really ugly 
code that isn't worth reviving.

i liked the idea of having this in qemu since it would simplify 
configuration and wouldn't require starting two processes and wiring 
them together. some will probably call this crazy but i still end up 
using the cli a lot and i wanted to make that simpler. this just 
requires specifying the multicast address and the network id to qemu.

maybe there is a compromise between using the sockets api and cli 
simplicity with having a helper option for the sockets api that starts 
the other process. kind of like the bridge-helper but a process that 
stays running as long as the netdev is around. this would allow easy 
development of whatever networking methods people would want to 
experiment with. i briefly looked at the code to see how this could 
potentially be implemented but haven't started writing any code.

> Obviously, this could also be done with the normal linux tools at the
> tun/tap layer too.
>
> I think we should resist adding a bunch of stuff to the networking layer
> just because we can.  Otherwise we'll end up reinventing the Linux
> networking layer in QEMU.

definitely a valid point. with the linux 3.7 kernel getting a VXLAN 
implementation, a guest could use a tap device connected to a linux 
bridge which also has a VXLAN interface. this would keep all the 
processing in the kernel and doesn't re-invent the wheel. it still 
requires escalated privileges to configure the networking in the host 
which i'm trying to avoid (stupid misguided security monkey that is 
bugging me). so trade-offs both ways and when i wrote the original patch 
there wasn't anyone even talking about a VXLAN implementation in the 
linux kernel.

mike

  reply	other threads:[~2012-11-28  7:37 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1340602924-3231-1-git-send-email-mike@dev-zero.net>
2012-11-24 15:21 ` [Qemu-devel] net: RFC New Socket-Based, Switched Network Backend (QDES) Stefan Hajnoczi
2012-11-26 17:19   ` Mike Lovell
2012-11-27 12:42     ` Stefan Hajnoczi
2012-11-27 14:24       ` Anthony Liguori
2012-11-28  7:37         ` Mike Lovell [this message]
2012-11-28  7:14       ` Mike Lovell

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=50B5BF56.6010101@dev-zero.net \
    --to=mike@dev-zero.net \
    --cc=aliguori@us.ibm.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@gmail.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.