From: "Blue Swirl" <blauwirbel@gmail.com>
To: dlaor@redhat.com, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH] mark nic as trusted
Date: Sun, 11 Jan 2009 17:34:28 +0200 [thread overview]
Message-ID: <f43fc5580901110734s92bb3beqa29f68fc2716cfd1@mail.gmail.com> (raw)
In-Reply-To: <496A0B4C.7000004@redhat.com>
On 1/11/09, Dor Laor <dlaor@redhat.com> wrote:
>
> Carl-Daniel Hailfinger wrote:
> On 11.01.2009 08:10, Blue Swirl wrote:
>
>
> On 1/11/09, Jamie Lokier <jamie@shareable.org> wrote:
>
>
>
> > But we also have to think about how to support newer platforms and newer
> > kernels and this will often mean that we have to make intrusive changes
> > so that the integration makes everyone happy. This does not mean that
> > we cannot support older platforms though, we just have to do it a little
> > differently on the older platforms.
>
> Sure, but don't make it _deliberately_ hard to support
> older/obscure/can't-compile-a-kernel-module guests by
> designing
> something that's obviously going to require a totally different
> mechanism on those other guests. It would make it unnecessarily hard
> to integrate diverse guests with management apps from different
> authors if they do adopt the vmchannel mechanism.
>
>
> I think a serial port device should be universally supported by any OS
> and it's portable to many systems. Older OS may accidentally enable
> forwarding between the trusted nic and other nics, this doesn't happen
> with serial lines.
>
>
> I remember the old days of DOS networking where the Kirschbaum-Netz
> software provided some sort of routed/forwarded networking between PCs
> over serial ports. It was a default on choice in many corporate and
> private "LANs" in Germany at the beginning of the last decade.
>
> Except for machines with that software (which is really hard to get
> nowadays), my concern should be a non-issue, especially for virtual
> machines which are unlikely to have such software installed.
>
> Regards,
> Carl-Daniel
>
>
>
> Actually vmchannel started as a pv serial implementation. Standard serial
> is
> a bit low performing and demand an vmexit per byte (maybe it's not that bad
> for us).
> Moreover, various guest do not support more than 4 serial channels. Since
> there
> should be several channels and we like to preserve some for console/debug,
> it is
> not enough.
There could be similar OS limits for number of nics in the system.
> Originally, vmchannel was a virtio interface with netlink interface to the
> kernel.
> Then, Anthony asked to change it to a socket interface with new address
> family. It
> was indeed a logical step. Then, David Miller was reluctant to add such
> interface to the
> kernel. Instead, he offered the network device solution.
> Are we close to begin this loop again? :)
I propose to make the vmchannel connect to any capable device (serial,
nic, usb, IO port, whatever) by adding some indirection. Moreover, at
start no device should be "vmchannel-enabled" but the connection could
be made dynamically at guest's request, then some of the disadvantages
you listed are gone.
> Let's try to stick to the nic solution. It has some advantages over pv
> serial:
> - Reliable communication if tcp is used
> - Migration support for slirp
> - No new driver in the guest.
> - Might even work for older guests
> The disadvantages are:
> - Need to 'teach' guest daemons/firewalls not to handle/block the new
> nic
The guest could request a vmchannel only after ensuring that the
firewall is fixed..
> - Link local addresses for ipv4 are problematic when using on other
> nics in parallel
Likewise, the guest could check the address situation beforehand.
> - We should either 1. not use link local on other links 2. Use
> standard dhcp addresses 3. do
> not use tcp/ip for vmchannel communication.
>
> So additional nic can do the job and we have several flavours to choose
> from.
The solution should be generic enough so that any nic can be connected
to vmchannel.
next prev parent reply other threads:[~2009-01-11 15:34 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-01-07 14:26 [Qemu-devel] [PATCH] mark nic as trusted Gleb Natapov
2009-01-07 15:04 ` Mark McLoughlin
2009-01-07 15:19 ` Gleb Natapov
2009-01-07 15:41 ` Mark McLoughlin
2009-01-07 16:02 ` Gleb Natapov
2009-01-07 16:34 ` Anthony Liguori
2009-01-07 16:50 ` Gleb Natapov
2009-01-07 17:53 ` Anthony Liguori
2009-01-07 17:54 ` Anthony Liguori
2009-01-07 18:41 ` Gleb Natapov
2009-01-07 19:26 ` Anthony Liguori
2009-01-07 19:46 ` Gleb Natapov
2009-01-08 19:58 ` Anthony Liguori
2009-01-08 21:26 ` Gleb Natapov
2009-01-08 21:42 ` Anthony Liguori
2009-01-08 22:49 ` Jamie Lokier
2009-01-08 23:14 ` Dor Laor
2009-01-09 10:41 ` Daniel P. Berrange
2009-01-10 2:18 ` Jamie Lokier
2009-01-10 18:22 ` Anthony Liguori
2009-01-11 4:55 ` Jamie Lokier
2009-01-11 7:10 ` Blue Swirl
2009-01-11 14:08 ` Carl-Daniel Hailfinger
2009-01-11 15:07 ` Dor Laor
2009-01-11 15:34 ` Blue Swirl [this message]
2009-01-11 16:01 ` Dor Laor
2009-01-12 2:20 ` Jamie Lokier
2009-01-12 8:05 ` Gleb Natapov
2009-01-12 12:26 ` Dor Laor
2009-01-10 2:27 ` Jamie Lokier
2009-01-08 23:26 ` Anthony Liguori
2009-01-10 2:31 ` Jamie Lokier
2009-01-10 18:24 ` Anthony Liguori
2009-01-11 4:40 ` Jamie Lokier
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=f43fc5580901110734s92bb3beqa29f68fc2716cfd1@mail.gmail.com \
--to=blauwirbel@gmail.com \
--cc=dlaor@redhat.com \
--cc=qemu-devel@nongnu.org \
/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;
as well as URLs for NNTP newsgroup(s).