[openib-general] IPoIB multicast group creation

Fabian Tillier ftillier at silverstorm.com
Wed Mar 1 20:10:05 PST 2006


On 3/1/06, Sean Hefty <sean.hefty at intel.com> wrote:
> Can someone explain when ipoib creates a multicast group?

Here's how the Linux IPoIB handles multicast:

For the broadcast group, it depends on the SM having pre-created the
broadcast group.  It only does a join (i.e. component mask doesn't
provide all the settings to create the group) for the broadcast group.

Once in the broadcast group, it uses it as a template for all other
groups, which allows it to issue a join with all paramters necessary
to create the group if it doesn't exist already.  I believe the only
field that changes is the MGID.

Since all IPoIB instances in the fabric use the same broadcast group,
their settings for all MC groups are consistent, no matter which
instance creates particular groups.

In Windows, only the broadcast group join is different.  In this case,
the code handles the case where the broadcast group is not
pre-created, and the first instance to start will create it.  In that
case, it picks some values for the broadcast group, mostly hardcoded
except for the qkey which it generates dynamically.  Once in the
broadcast group, it uses it as a template for all other MC groups.

- Fab



More information about the general mailing list