Re: Comments on draft-ietf-ipoib-link-multicast-04.txt
"H.K. Jerry Chu" <[email protected]>
| Newsgroups | gmane.ietf.ipoib |
|---|---|
| Message-ID | <[email protected]> |
Roy, >To: [email protected] >MIME-Version: 1.0 >From: Roy Brabson <[email protected]> > >I've just started to look at IPoIB, so please forgive me if some of the >comments below have been discussed previously. I did try to read through >the mailing list archive, but may have missed some of the relevant posts. > >- The draft contains a reference to draft-ietf-ipoib-architecture-01.txt. > This is an expired draft which hasn't been updated in almost 18 months. > Should this reference be deleted, or is referenced draft updated and > published as an RFC? > >- In Section 9.0, am I correct in assuming that all routers MUST join the > all-routers multicast group if it exists? Yes, but this is not a new requirement imposed by IPoIB, but rather an existing requirement from the IP layer. > And, if one does not exist, > shouldn't the router create the group when it first connects to the IB > subnet as a "FullMember"? This section also makes it sound as though > the IB administrator must create the all-router multicast group, which > doesn't seem to be necessary. You are right. In prior versions of the draft the all-router mulitcast group played a more prominent role. Now it looks like the all-router MC group can be treated just like many other multicast groups, and gets created by demand when a router joins. I'll change the "SHOULD" to "may" regarding the creation of the all- router multicast group in the paragraph before section 8.0. > And it doesn't describe if/when/how a > router is expected to join the all-router multicast group. Isn't this determined by the IP software independent of IPoIB? > >- Section 9.0 indicates that "The packet SHOULD be forwarded to locally > connected routers. [snip] The specific mechanism for a sender to > forward packets to routers are left to implementations". At a > minimum, I think the exact implementation needs to be specified. Why? (The draft strives to avoid dictating implementation details that do not affect interoperability.) > The > text suggests using all-router multicast group or the broadcast group. > If a router is required to create the all-router multicast group (see > the previous comment), then wouldn't it be sufficient to check for the > existence of the all-router multicast group and, if it exists, send to > that? If it doesn't exist, then there can't be any multicast routers > on the link, and since there aren't any local listeners there are no > on-link listeners there isn't any need to send the packet. Don't the code sinppet following 9.B match pretty much what you described above? > > And shouldn't the IPoIB sender subscribe to the IB multicast group > creation events using a wildcard MGID so that it can > "SendOnlyNonMember" join the group if a listener appears on the local > IB subnet, or "SendOnlyNonMember" join the all-routers group if a > router appears on-link and creates the all-routers multicast group? > And doesn't it need to subscribe to the IB multicast group deletion > events so that it knows when to switch back to sending to the > all-router multicast group and/or stop sending? Aren't you saying the same thing (more or less) as what is described in the section following the code snippet? > > But I'm wondering why a node needs to do this at all. Wouldn't it > make more sense for the IPoIB node instead create the multicast group > and join the group so that IPoIB multicast routers can join the group? > Yes, the IPoIB sender will need create the group as a "FullMember", > but this seems to provide a simpler mapping of IP multicast to IB > multicast. While what you suggested may simplify the procedure, it essentially removes the difference between a multicast sender and a multicast receiver, which is wrong. In the IP multicast model a multicast sender doesn't need to be a member of a multicast group to send. The draft has tried to keep the same distinction. > >- Section 9.0 also indicates that "A multicast sender must join the > target multicast group as a "SendOnlyNonMember" before outgoing > messages from it can be successfully routed." This text should be > clarified to indicate this is only true if the node has not already > joined the group as either a "FullMember" or "SendOnlyNonMember". The > If-Then-Else logic below correctly shows this behavior, but this > paragraph does not reflect that behavior. Although your comment is correct, I'd argue this kind of details can be found in the IBA spec. It has nothing to do with IPoIB in particular, So the question becomes how much IBA info we need to repeat in an IPoIB RFC. Since the code sippet already covers this correctly, if you still believe this needs to be clarified i can certain add more text to it. > >- Section 9.0 states that the MGID cache may need to be validated > periodically. I think it would be useful to indicate why this might > be necessary, how a node should go about doing so, and what action > should be taken if the MGID is found to be invalid. I'm assuming that > this would be done by checking with the SA on the outbound link for a > "MCMemberRecord" that matches the MGID and, if not found, creating the > multicast group and rejoining. Good catch. The text comes from the old drafts before the MC group creation/deletion traps were invented. Now with the trap support the periodic cache flush is not needed anymore. > >- Section 9.0 indicates that "For the rest of attributes, it is > recommended the same values from the all-node multicast/broadcast > group be used." Should this instead say "For the rest of the > attributes, the same values from the all-node multicast/broadcast > group SHOULD be used." Regardless of the wording, this text seems to > contradict the Section 7.0 which states a node must "use the rest of > the link attributes associated with the group for all future > communication on the link. If Section 7.0 is correct, should this be > a MUST instead of a SHOULD? And, if not, under what circumstances > would a node choose to not use the same values? 7.0 describes the attributes used by a node when conducting unicast communication. 9.0 describes the attributes used to create a multicast group, i.e., for multicast communication. So the question is: Must path attributes used for unicast match with those for multicast? The flexibility allowed in the multicast case in the current draft is deliberate. I don't know in reality if this is useful, or even good to have. (Comments are welcome.) My design principle has been to not to make something a requirement unless it is needed for interoperability. Jerry > >Roy >_______________________________________________ >IPoverIB mailing list >[email protected] >https://www1.ietf.org/mailman/listinfo/ipoverib