From: Anthony Liguori <anthony@codemonkey.ws>
To: David Miller <davem@davemloft.net>
Cc: gleb@redhat.com, netdev@vger.kernel.org,
virtualization@lists.linux-foundation.org, kvm@vger.kernel.org
Subject: Re: [PATCH] AF_VMCHANNEL address family for guest<->host communication.
Date: Mon, 15 Dec 2008 17:01:14 -0600 [thread overview]
Message-ID: <4946E1BA.80206@codemonkey.ws> (raw)
In-Reply-To: <20081215.142918.190909950.davem@davemloft.net>
David Miller wrote:
> From: Anthony Liguori <anthony@codemonkey.ws>
> Date: Mon, 15 Dec 2008 14:44:26 -0600
>
>
>> We want this communication mechanism to be simple and reliable as we
>> want to implement the backends drivers in the host userspace with
>> minimum mess.
>>
>
> One implication of your statement here is that TCP is unreliable.
> That's absolutely not true.
>
No, TCP falls under the not simple category because it requires the
backend to have access to a TCP/IP stack.
>> Within the guest, we need the interface to be always available and
>> we need an addressing scheme that is hypervisor specific. Yes, we
>> can build this all on top of TCP/IP. We could even build it on top
>> of a serial port. Both have their down-sides wrt reliability and
>> complexity.
>>
>
> I don't know of any zero-copy through the hypervisor mechanisms for
> serial ports, but I know we do that with the various virtualization
> network devices.
>
Yes, and I went down the road of using a dedicated network device and
using raw ethernet as the protocol. The thing that killed that was the
fact that it's not reliable. You need something like TCP to add
reliability.
But that's a lot of work and a bit backwards. Use a unreliable
transport but use TCP on top of it to get reliability. Our link
(virtio) is inherently reliable so why not just expose a reliable
interface to userspace?
>> Do you have another recommendation?
>>
>
> I don't have to make alternative recommendations until you can
> show that what we have can't solve the problem acceptably, and
> TCP emphatically can.
>
It can solve the problem but I don't think it's the best way to solve
the problem mainly because the complexity it demands on the backend.
Regards,
Anthony Liguori
next prev parent reply other threads:[~2008-12-15 23:01 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-12-14 11:50 [PATCH] AF_VMCHANNEL address family for guest<->host communication Gleb Natapov
2008-12-14 12:23 ` Evgeniy Polyakov
2008-12-14 12:46 ` Gleb Natapov
2008-12-15 6:44 ` David Miller
2008-12-15 7:48 ` Gleb Natapov
2008-12-15 8:27 ` David Miller
2008-12-15 15:02 ` Anthony Liguori
2008-12-15 17:45 ` Jeremy Fitzhardinge
2008-12-15 18:26 ` Itamar Heim
2008-12-15 18:45 ` Anthony Liguori
2008-12-15 22:52 ` Jeremy Fitzhardinge
2008-12-15 23:08 ` Anthony Liguori
2008-12-15 23:44 ` Jeremy Fitzhardinge
2008-12-15 23:52 ` Evgeniy Polyakov
2008-12-16 0:01 ` Dor Laor
2008-12-15 19:43 ` David Miller
2008-12-15 20:44 ` Anthony Liguori
2008-12-15 22:29 ` David Miller
2008-12-15 23:01 ` Anthony Liguori [this message]
2008-12-15 23:10 ` David Miller
2008-12-15 23:17 ` Anthony Liguori
2008-12-16 2:55 ` Herbert Xu
2008-12-15 23:13 ` Stephen Hemminger
2008-12-15 23:45 ` Evgeniy Polyakov
2008-12-16 6:57 ` Gleb Natapov
2008-12-16 21:25 ` Evgeniy Polyakov
2008-12-16 23:20 ` Dor Laor
2008-12-17 14:31 ` Gleb Natapov
2008-12-18 12:30 ` Evgeniy Polyakov
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=4946E1BA.80206@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=davem@davemloft.net \
--cc=gleb@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=virtualization@lists.linux-foundation.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).