Subject: [Roll] RPL Draft 06 - Misc comments

From: Anders Jagd <[email-masked]>
Date: Thu, 25 Feb 2010 11:10:52 -0500

I believe draft 06 in general strikes a good balance of requirements
belonging to a base document. I hope and assume this now will be
complemented by additional applicability documents.

I would like to offer a few comments regarding draft 06. I apologize if some
of my comments have already been discussed; I admit that I am not 100% up to
speed with the mailing list.

1) The fundamental DAO mechanism appears to be quite solid; I am happy to
see the introduction of the DTSN field in the DIO base. As for actual
encoding of destinations, I was wondering if there have been any thoughts on
compression of the (potentially large) amounts of (similar) data that may be
propagated ? Several ways to approach this, mostly variations of
"dictionary" schemes.

2) Page 26, first paragraph discusses padding. I suggest discouraging
padding, since in my experience network bandwidth is often a more
constrained resource than cpu cycles. This may of course depend on the
application.

3) Page 27, section 5.1.3.5 describes the "DAG Destination Prefix" and how
the "DODAG Root, or another node located upwards...needs to indicate that it
offers connectivity". I understand the DODAG Root doing so, but am not sure
how this would work for non Root nodes, since there wouldn't be any
guarantee that downstream nodes would actually be able to target
messages upstream for non Root nodes.

4) Page 37, section 5.3.5: Upon receiving a unicast DIS message, a node must
respond, but should not reset the trickle timer. Does this mean the node
must respond asap or should it wait until current trickle timer times out ?

5) Page 41, section 6.1 regarding DAO objects: Does DAO sequence need 16
bits ? Seems a bit excessive to me, but I may be missing something.

6) Page 46, section 6.2.4.1.1.2, bullet 1: I am a bit confused about the
words "REACHABLE entry times out" ? Don't you mean "Retry counter reaches a
maximum threshold" (as described in 6.2.4.1.1.2.2) ?

A few minor editorial comments:

Page 10, last bullet: Forward reference to DIO messages
Page 13, section 3.4: "DODAG Information Object" should be "DAG Information
Object" (see 3.4.1)
Page 19, section 3.6.1.3: "...cleaned up the state" may need a little
clarification
Page 22, section 4: "This document defines three types", suggest "codes"
instead of "types"
Page 23, figure 4 (and text): Is Rank 16 bit or 8 bit ?
Page 24, first paragraph: "other DODAG roots within the DODAG" (within the
"DAG")
Page 25, 5.1.2 bullet 3: A node "MAY" update Rank; don't you mean "MUST" ?
Page 35, section 5.3.3.5, bullet 3: "if its revised rank would exceed..."
should be "if its change in rank would exceed..."
Page 39, section 5.4 "...when a node does not understand...", may consider
replacing "understand" with "parse" or something similar.
Page 48, section 6.2.5 "...from a child by a node who...", suggest replacing
the word "who".
Page 49, section 6.2.7 "Note: the DIO is modified", suggest to strike the
word "modified".
Page 52, section 7.2: Suggest to change the word "meltdown".
Page 54, section 7.2.2.2, third paragraph: "RPLInstanceID" is not a "flag".

/Anders Jagd