public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Markus Armbruster <armbru@redhat.com>
To: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Cc: kvm@vger.kernel.org, jan.kiszka@siemens.com,
	qemu-devel@nongnu.org, Luiz Capitulino <lcapitulino@redhat.com>,
	zwu.kernel@gmail.com, wuzhy@linux.vnet.ibm.com,
	pbonzini@redhat.com
Subject: Re: [PATCH v3 00/16] net: hub-based networking
Date: Fri, 25 May 2012 13:18:35 +0200	[thread overview]
Message-ID: <m3vcjkfr04.fsf@blackfin.pond.sub.org> (raw)
In-Reply-To: <20120525100753.GD30110@stefanha-thinkpad.localdomain> (Stefan Hajnoczi's message of "Fri, 25 May 2012 11:07:53 +0100")

Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> writes:

> On Thu, May 24, 2012 at 05:53:21PM -0300, Luiz Capitulino wrote:
>> On Fri, 25 May 2012 01:59:06 +0800
>> zwu.kernel@gmail.com wrote:
>> 
>> > From: Zhi Yong Wu <wuzhy@linux.vnet.ibm.com>
>> > 
>> > The patchset implements network hub stead of vlan. The main work was done by stefan, and i rebased it to latest QEMU upstream, did some testings and am responsible for pushing it to QEMU upstream.
>> 
>> Honest question: does it really pay off to have this in qemu vs. using one of
>> the externaly available solutions?
>
> For typical KVM setups this feature will be unused.
>
> However, the legacy QEMU "vlan" feature does have a few uses:
>
> 1. It's how the "dump" netdev can be connected up with a guest NIC and
>    host netdev.  Create a hub, attach the guest NIC, attach the host
>    netdev, and attach the dump netdev.  This allows the dump netdev to
>    see all traffic.
>
> 2. It lets you build virtual network segments.  Several point-to-point
>    connections can be brought together.  Start 3 VMs connected by the
>    "socket" netdev and have one of them use a hub.  This may be
>    inefficient but I wouldn't be surprised if there are people out there
>    doing this.

Those people will find other, superior ways to do this once this
inefficient way is gone.  We'd do them a favour, I'd say ;)

> The point of this patch series is to remove the special-case net.c code
> for the legacy "vlan" feature.  Today's code makes it harder to
> implement a clean QOM model and is a burden for the net subsystem in
> general.  This series takes the vlan functionality and puts it into a
> normal netdev - it extracts the feature from net.c.

Welcome improvement, but...

> (If we didn't care about backwards compatibility we could just drop
> vlans completely and rewrite the "dump" netdev to hook into the net.h
> API somehow.)

... is backward compatiblity really worth the extra net client?

Please excuse my ignorant question (I haven't studied the series): what
kind of backward compatiblity exactly do we get here?  Command line:
-net option vlan still works?  Or just semantic: whatever you could do
with vlans you can now do with hubs?

In case it's the latter: well, whatever you could do with vlans you can
already do with external software, can't you?  Why is it worthwhile to
provide yet another way within QEMU?

  reply	other threads:[~2012-05-25 11:18 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-24 17:59 [PATCH v3 00/16] net: hub-based networking zwu.kernel
2012-05-24 17:59 ` [PATCH v3 01/16] net: Add a hub net client zwu.kernel
2012-05-24 17:59 ` [PATCH v3 02/16] net: Use hubs for the vlan feature zwu.kernel
2012-05-24 17:59 ` [PATCH v3 03/16] net: Look up 'vlan' net clients using hubs zwu.kernel
2012-05-24 17:59 ` [PATCH v3 04/16] hub: Check that hubs are configured correctly zwu.kernel
2012-05-24 17:59 ` [PATCH v3 05/16] net: Drop vlan argument to qemu_new_net_client() zwu.kernel
2012-05-24 17:59 ` [PATCH v3 06/16] net: Remove vlan qdev property zwu.kernel
2012-05-24 17:59 ` [PATCH v3 07/16] net: Remove vlan code from net.c zwu.kernel
2012-05-24 17:59 ` [PATCH v3 08/16] net: Remove VLANState zwu.kernel
2012-05-24 17:59 ` [PATCH v3 09/16] net: Rename non_vlan_clients to net_clients zwu.kernel
2012-05-24 17:59 ` [PATCH v3 10/16] net: Rename VLANClientState to NetClientState zwu.kernel
2012-05-24 17:59 ` [PATCH v3 11/16] net: Rename vc local variables to nc zwu.kernel
2012-05-24 17:59 ` [PATCH v3 12/16] net: Rename qemu_del_vlan_client() to qemu_del_net_client() zwu.kernel
2012-05-24 17:59 ` [PATCH v3 13/16] net: Make the monitor output more reasonable hub info zwu.kernel
2012-05-24 20:34   ` Jan Kiszka
2012-05-25  0:48     ` Zhi Yong Wu
2012-05-25 12:00     ` Zhi Yong Wu
2012-05-25 13:49       ` Jan Kiszka
2012-05-25 13:58         ` Zhi Yong Wu
2012-05-24 17:59 ` [PATCH v3 14/16] net: cleanup deliver/deliver_iov func pointers zwu.kernel
2012-05-24 17:59 ` [PATCH v3 15/16] net: determine if packets can be sent before net queue deliver packets zwu.kernel
2012-05-24 17:59 ` [PATCH v3 16/16] hub: add the support for hub own flow control zwu.kernel
2012-05-25  7:04   ` Paolo Bonzini
2012-05-25  7:48     ` Zhi Yong Wu
2012-05-25 10:08       ` Paolo Bonzini
2012-05-25 10:54         ` Zhi Yong Wu
2012-05-25  8:04     ` Zhi Yong Wu
2012-05-25  8:18     ` Zhi Yong Wu
2012-05-24 20:53 ` [Qemu-devel] [PATCH v3 00/16] net: hub-based networking Luiz Capitulino
2012-05-25  0:47   ` Zhi Yong Wu
2012-05-25 12:49     ` [Qemu-devel] " Luiz Capitulino
2012-05-25 10:07   ` Stefan Hajnoczi
2012-05-25 11:18     ` Markus Armbruster [this message]
2012-05-25 12:01       ` [Qemu-devel] " Stefan Hajnoczi
2012-05-25 12:30         ` Markus Armbruster
2012-05-25 12:53         ` Luiz Capitulino
2012-05-25 12:59           ` Paolo Bonzini
2012-05-25 13:07             ` Luiz Capitulino
2012-05-25 13:14               ` [Qemu-devel] " Paolo Bonzini
2012-05-25 13:18                 ` Luiz Capitulino
2012-05-25 13:19                   ` Paolo Bonzini
2012-05-25 13:30                     ` Luiz Capitulino
2012-05-25 13:37                       ` Paolo Bonzini
2012-05-25 13:43                         ` Luiz Capitulino
2012-05-25 13:47                           ` Paolo Bonzini
2012-05-25 13:56                             ` [Qemu-devel] " Luiz Capitulino
2012-05-28 11:17                               ` Stefan Hajnoczi
2012-05-28 13:25                                 ` Luiz Capitulino
2012-05-29  8:14                                   ` Markus Armbruster
2012-06-04  4:48                                     ` Anthony Liguori
2012-06-04  7:24                                       ` Markus Armbruster
2012-06-04  4:56           ` Anthony Liguori
2012-06-04 13:09             ` [Qemu-devel] " Luiz Capitulino

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=m3vcjkfr04.fsf@blackfin.pond.sub.org \
    --to=armbru@redhat.com \
    --cc=jan.kiszka@siemens.com \
    --cc=kvm@vger.kernel.org \
    --cc=lcapitulino@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@linux.vnet.ibm.com \
    --cc=wuzhy@linux.vnet.ibm.com \
    --cc=zwu.kernel@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox