[openib-general] Multicast address aliasing in IPoIB
Dror Goldenberg
gdror at mellanox.co.il
Thu Sep 9 08:15:53 PDT 2004
> -----Original Message-----
> From: David M. Brean [mailto:David.Brean at Sun.COM]
> Sent: Thursday, September 09, 2004 3:52 PM
>
> The IBTA allows multiple MGIDs to map to a MLID. That is the
> aliasing
> mechanism on IB. As a result, it seems ok to have IP multicast
> addresses to map 1-1 to MGIDs. As you know, the IPoIB multicast
> hardware address is a special format of the MGID.
Right, but this only goes out on the wire. I.e. in the case of such aliasing
n MGIDs to single MLID, it'll be filtered by the HCAs, because QPs in the
HCA are connected to specific MGIDs not LIDs.
>
> So, the OS should not need to map more than one IP multicast
> address to
> a IPoIB hardware address. [There are other steps needed to
> program the
> CA interface and obviously the SM must perform some internal mapping
> management.]
The problem is based on how Linux works. The IPoIB plugs into the OS
as an Ethernet driver. Therefore, it is subject to the Ethernet rules, and
from the OS, it only get lists of "Ethernet" multicast addresses. The
notification
for additional HW multicast address, will only be delivered to the IPoIB
driver if there is no Ethernet aliasing. Otherwise, Linux will just maintain
a reference count per HW address. Therefore, there is a problem with
the implementation of the IPoIB driver as an Ethernet driver.
Fixing this problem requires a kernel patch (or a very ugly solution).
-Dror
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/general/attachments/20040909/92a7b13f/attachment.html>
More information about the general
mailing list