[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

discuss: draft-vida-mld-v2-07.txt



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

---

randy