[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5035D17D.8090703@mellanox.com>
Date: Thu, 23 Aug 2012 09:45:17 +0300
From: Or Gerlitz <ogerlitz@...lanox.com>
To: "Michael S. Tsirkin" <mst@...hat.com>
CC: "Eric W. Biederman" <ebiederm@...ssion.com>, <davem@...emloft.net>,
<roland@...nel.org>, <netdev@...r.kernel.org>,
Ali Ayoub <ali@...lanox.com>, <sean.hefty@...el.com>,
Erez Shitrit <erezsh@...lanox.co.il>,
Doug Ledford <dledford@...hat.com>,
Shlomo Pongratz <shlomop@...lanox.com>
Subject: Re: [PATCH V2 09/12] net/eipoib: Add main driver functionality
On 20/08/2012 21:57, Michael S. Tsirkin wrote:
> On Sun, Aug 12, 2012 at 11:54:57PM +0300, Michael S. Tsirkin wrote:
>
>> If you want this, then you really want a limited form of IPoIB bridging.
>
> And to clarify that statement, here is how I would make such IPoIB "bridging" work:
>
> Guest side:
>
> - Implement virtio-ipoib. This would be a device like virtio-net,
> but instead of ethernet packets, it would pass packets
> that consist of:
> IPoIB destination address
> IP packet
>
> - this is passed to/from host without modifications, possibly with addition
> of header such as virtio net header
>
> - flags such as broadcast can also be added to header
>
> - like virtio net get capabilities from host and expose
> as netdev capabilities
>
> Host side:
> - create macvtap -passthrough like device that can sit on top of an
> ipoib interface
> - expose this device QPN and GID to guest as hardware address
> - as we get packet forward it on UD QPN or CM as appropriate
> depending on size,checksum and admin preference
> - expose capabilities such as TSO
> - can expose capability such as max MTU to guest too
>
> Above means hardware address changes with migration.
> So we need to notify guest when this happens.
>
> This can be addressed from host by notifying all neighbours.
>
> Alternatively guest can notify all neighbours.
>
> Notification can be done by broadcast.
> This second option seems preferable.
>
> this ipoib-vtap can support two modes
> - bridge like mode:
> guest to guest and guest to host packets
> can be detected by macvtap and passed
> to/from guest directly like macvlan bridge mode
>
> - vepa like mode
> guest to guest and guest to host packets
> are sent out and looped back by IB switch
> like macvlan vepa mode
>
> As compared to the custom protocol I sent, it has -
> Advantages: interoperates cleanly with ipoib
> Disadvantages: no support for legacy (ethernet-only) guest
>
Hi Michael,
As you mentioned, the approach doesn't address legacy guests, who either
don't have the virtio
driver, or don't have a virtio driver patched to support virtio-ipoib
-- which doesn't go inline
with a strong requirement I got.
Other than this giant obstacle, I liked the suggestion and it seems
valid and viable -- BTW IB HW has
loopback capability, so the VM/VM packets wouldn't actually go to the IB
switch, but remain within the
HCA.
Or.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists