Multicast Listener Discovery Version 2 (MLDv2) for IPv6
RFC 3810
Note: This ballot was opened for revision 08 and is now closed.
(Randy Bush) Discuss
Discuss (2003-10-15 for -** No value found for 'p.get_dochistory.rev' **)
ok, this is my first deep dive into MLDn, so o some or all questions are likely silly o many will be answered with "MLDv1 compatibility" (except routers seem to be explicitly configured to be mldv1 or mldv2, see 8.3.1) but, for the moment, color me discuss --- in general, this document is unusually well written. but i will be picky anyway. --- To cover the possibility of a State Change Report being missed by one or more multicast routers, the report is retransmitted several times by the node. The number of retransmissions depends on the so-called Robustness Variable. this seems a bit hit and miss, i.e., 'robustness' is not very apt. perhaps 'improve the odds' would better describe it </sarcasm>. --- in general, the protocol has hacks to deal with unreliability of exchanges by use of various timers and by issuing queries and responses multiple times. the S flag is a particularly 'cute' hack on this multi-send hack. it would help if the general reliability and timing model was explained. e.g., sympathy for these hacks would be easier if the document explained the assumptions behind why they are necessary and the model of how good values of RV can be decided which will make the transactions sufficiently reliable. sometimes, the layers of kink get *really* kinky, e.g., in 6.1 when changes to an interface happen before all the retransmissions of the SCR for the last change have been completed. --- the Querier sends a Multicast Address and Source Specific Query to verify whether, for a specified multicast address, there are nodes still listening to a specific set of sources, or not. Both queries are only sent in response to State Change Reports, never in response to Current State Reports. this seems to assume that a CSR will not surprise the querier, i.e., not change the querier's knowledge of what the set of listeners want. if this was not the case, should not a surprising CSR cause the querier to send MA or SS queries? alternatively, if CSRs can, ob definito, not be surprising, then why have them? --- 4.2. Interface State it would clearer to call it "4.2 Per-Interface State" --- 5.1.8. QRV (Querier's Robustness Variable) If non-zero, the QRV field contains the [Robustness Variable] value used by the Querier. If the Querier's [Robustness Variable] exceeds 7 (the maximum value of the QRV field), the QRV field is set to zero. Routers adopt the QRV value from the most recently received Query as their own [Robustness Variable] value, unless that most recently received QRV was zero, in which case they use the default [Robustness Variable] value specified in section 9.1, or a statically configured value. what is the meaning of the square brackets in "[Robustness Variable]?" the syntax needs to be explained. same confusion about 5.1.9 "[Query Interval]" --- in general, are values of MRC and QQIC expected to be so large that the exponential notation hacks are needed as opposed to just making the cardinal fields a bit larger? --- syntax error in 6.1. in following text To cover the possibility of the State Change Report being missed by one or more multicast routers, [Robustness Variable] รป 1 retransmissions are scheduled, through a Retransmission Timer, at intervals chosen at random from the range (0, [Unsolicited Report Interval]). --- 7.6.2. Querier Election has an explicit Querier state, but not a non-Querier state, though all routers but one are probabilistically in non-Querier state. E.g., When a router receives a query with a lower IPv6 address than its own, it sets the Other Querier Present timer to Other Querier Present Timeout; if it was previously in Querier state, it ceases to send queries on the link. could say it has entered non-Querier state ---
(Margaret Cullen) Yes
(Harald Alvestrand) No Objection
(Steven Bellovin) No Objection
(Ned Freed) No Objection
(Ted Hardie) No Objection
Comment (2003-10-14 for -** No value found for 'p.get_dochistory.rev' **)
No email
send info
send info
For the state change request, the draft says: Besides this "soft leave" mechanism, there is also a "fast leave" scheme in MLDv2; it is also based on the use of source timers. When a node in INCLUDE mode expresses its desire to stop listening to a specific source, all the multicast routers on the link lower their timer for that source to a small interval of LLQT milliseconds. The Querier then sends then a Multicast Address and Source Specific Query, to verify whether there are other listeners for that source on the link, or not. If a corresponding report is received before the timer expires, all the multicast routers on the link update their source timer. If not, the source is deleted from the Include List. The handling of the Include List, according to the received reports, is detailed in Tables 7.4.1 and 7.4.2. In the Security Considerations, the draft notes some of the issues with this; 10.3. State Change Report messages A forged State Change Report message will cause the Querier to send out Multicast Address Specific or Multicast Address and Source Specific Queries for the multicast address in question. This causes extra processing on each router and on each listener of the multicast address, but cannot cause loss of desired traffic. It seems like the DoS aspects of this risk might be mitigated by allowing the Querirer not to send out the Multicast Address Specific or Multicast Address and Source specific queries when the State Change request related to a multicast address for which the node was not a listener. It was not entirely clear to me, however, whether the Querier would always have definitive information on this when there multiple queriers, but it does seem useful when there is only one on-link.
(Russ Housley) No Objection
Comment (2003-10-14 for -** No value found for 'p.get_dochistory.rev' **)
No email
send info
send info
I propose a revised Abstract: This document updates RFC 2710, and it specifies Version 2 of the Multicast Listener Discovery Protocol (MLDv2). MLD is used by an IPv6 router to discover the presence of multicast listeners on directly attached links, and to discover which multicast addresses are of interest to those neighboring nodes. MLDv2 is designed to be interoperable with MLDv1. MLDv2 adds the ability for a node to report interest in listening to packets with a particular multicast address only from specific source addresses or from all sources except for specific source addresses. In section 5.1.8, the document says: If non-zero, the QRV field contains the [Robustness Variable] value used by the Querier. If the Querier's [Robustness Variable] exceeds 7 (the maximum value of the QRV field), the QRV field is set to zero. This is an unusual use of square brackets. This convention is used elsewhere too. It should be explained in a manner similar to the use of asterisk.
(Thomas Narten) (was Discuss, No Objection) No Objection
(Jon Peterson) No Objection
(Bert Wijnen) No Objection
Comment (2003-10-16 for -** No value found for 'p.get_dochistory.rev' **)
No email
send info
send info
NITS: - copyright has 2002 as the date - no IPR section I assume RFC-Editor will fix.
(Alex Zinin) No Objection
(Bill Fenner) Recuse
Comment (2003-10-16 for -** No value found for 'p.get_dochistory.rev' **)
No email
send info
send info
I am recusing because I am a meta-author (I wrote the IPv4 spec that this is a translation of).