All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anthony Liguori <anthony@codemonkey.ws>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Sridhar Samudrala <sri@us.ibm.com>,
	avi@redhat.com, markmc@redhat.com, ogerlitz@voltaire.com,
	kvm@vger.kernel.org, qemu-devel@vger.kernel.org
Subject: Re: [PATCH qemu-kvm] Add raw(af_packet) network backend to qemu
Date: Wed, 27 Jan 2010 11:07:45 -0600	[thread overview]
Message-ID: <4B6072E1.7030702@codemonkey.ws> (raw)
In-Reply-To: <20100127165909.GA13260@redhat.com>

On 01/27/2010 10:59 AM, Michael S. Tsirkin wrote:
> On Wed, Jan 27, 2010 at 08:07:11AM -0600, Anthony Liguori wrote:
>    
>> On 01/27/2010 03:24 AM, Michael S. Tsirkin wrote:
>>      
>>> I am not sure I agree with this sentiment.  The main issue being that
>>> macvtap doesn't exist on all kernels :).
>>>        
>> Neither does vhost ;-)  If it were just that as the difference, I'd be
>> inclined to agree, but macvtap is much better from a security PoV.
>>
>>      
>>>> Not to mention that from a user perspective, raw makes almost no sense
>>>> as it's an obscure socket protocol family.
>>>>
>>>> A user wants to do useful things like bridged networking or direct VF
>>>> assignment.  We should have -net backends that reflect things that make
>>>> sense to a user.
>>>>
>>>> Regards,
>>>>
>>>> Anthony Liguori
>>>>
>>>>          
>>> I agree to that. People don't even seem to agree whether it's a raw
>>> socket or a packet socket :) We need a better name for this option: what
>>> it really does is rely on an external device to loopback a packet to us,
>>> so how about -net loopback or -net extbridge?
>>>
>>>        
>> Specifically for VEPA, something like:
>>
>> -net extbridge,if=eth0
>>
>> or even
>>
>> -net vepa,if=eth0
>>
>> Would be fantastic.
>>      
> extbridge is IMO better.
>
>    
>> I think the best way to achieve this is to
>> introduce a small helper that gets called and can create a macvtap
>> device and hand the file descriptor back to qemu :-)  A builtin backend
>> would also be fine since we don't have the helper infrastructure.
>>      
> Excellent.
> Sridhar, this is actually not a lot of work on top of what you
> already posted.
>
>    

N.B.  I had suggested using macvtap, not raw.  In this case, the full 
syntax would be:

-net vepa,if=eth0

or

-net vepa,fd=N

where N is a macvtap fd.

For raw, I think there's a real problem wrt security.  I think it's 
important that we support running qemu as a non-privileged user.  In 
fact, this seems to be the mode libvirt is now preferring to operate in.

I think we need to re-evaluate the use of any raw socket by qemu as it's 
very dangerous from a security perspective (assuming we cannot 
introduced a "locked" raw socket mode).

Regards,

Anthony Liguori

>> Regards,
>>
>> Anthony Liguori
>>      


  reply	other threads:[~2010-01-27 17:07 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-01-26 20:40 [PATCH qemu-kvm] Add raw(af_packet) network backend to qemu Sridhar Samudrala
2010-01-26 20:47 ` Anthony Liguori
2010-01-26 20:50   ` Anthony Liguori
2010-01-26 23:19     ` Sridhar Samudrala
2010-01-27  9:24     ` Michael S. Tsirkin
2010-01-27  9:34       ` Arnd Bergmann
2010-01-27  9:44         ` Michael S. Tsirkin
2010-01-27 14:03           ` Anthony Liguori
2010-01-27 21:39             ` Arnd Bergmann
2010-01-27 22:56               ` Sridhar Samudrala
2010-01-28  6:06                 ` Arnd Bergmann
2010-01-28 16:53                   ` Jens Osterkamp
2010-01-28 11:22                 ` Or Gerlitz
2010-01-29 20:52                 ` Sridhar Samudrala
2010-01-29 20:52                   ` [Qemu-devel] " Sridhar Samudrala
2010-01-27 14:07       ` Anthony Liguori
2010-01-27 16:59         ` Michael S. Tsirkin
2010-01-27 17:07           ` Anthony Liguori [this message]
2010-01-27 17:25             ` Michael S. Tsirkin
2010-01-27 17:36               ` Anthony Liguori
2010-01-27 17:54                 ` Sridhar Samudrala
2010-01-27 18:02                   ` Anthony Liguori
2010-01-27 18:03                     ` Michael S. Tsirkin
2010-01-27 19:54                       ` Anthony Liguori
2010-01-28  8:12                         ` Arnd Bergmann
2010-01-28 13:56                           ` Michael S. Tsirkin
2010-01-28 14:13                             ` Anthony Liguori
2010-01-28 14:39                               ` Anthony Liguori
2010-01-28 14:52                               ` Michael S. Tsirkin
2010-01-28 15:05                                 ` Anthony Liguori
2010-01-28 16:37                                   ` Michael S. Tsirkin
2010-01-28 17:58                                     ` Anthony Liguori
2010-01-28 18:04                                       ` Michael S. Tsirkin
2010-01-28 19:57                                         ` Anthony Liguori
2010-01-29 11:26                                           ` Michael S. Tsirkin
2010-01-28 20:29                                   ` Arnd Bergmann
2010-02-01 15:47                         ` Or Gerlitz
2010-01-27 18:12                 ` Michael S. Tsirkin
2010-01-26 23:15   ` Sridhar Samudrala
2010-01-26 23:15     ` [Qemu-devel] " Sridhar Samudrala
2010-01-27  0:06     ` Anthony Liguori
2010-01-27  6:52       ` Arnd Bergmann
2010-01-27  6:52         ` Arnd Bergmann
2010-01-27 14:14         ` Anthony Liguori
2010-01-27 14:14           ` Anthony Liguori

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=4B6072E1.7030702@codemonkey.ws \
    --to=anthony@codemonkey.ws \
    --cc=avi@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=markmc@redhat.com \
    --cc=mst@redhat.com \
    --cc=ogerlitz@voltaire.com \
    --cc=qemu-devel@vger.kernel.org \
    --cc=sri@us.ibm.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.