Subject: [Roll] Questions while implementing RPL.

From: "JeongGil Ko (John)" <[email-masked]>
Date: Mon, 25 Jan 2010 13:32:52 -0800

Hi.

I am in the process of trying to implement RPL with respect to the rpl and metrics drafts. In the process, I had a few questions that was unclear in the writeups. Maybe someone can clear them up for me :)

I will take ETX as an example. Let's say our goal is to find a route that 'minimizes' the aggregated ETX to the gateway (root of the DODAG). The flags of the routing metric/constraint header will indicate R=0, G=1, A=0x00, C=0, and O=0. When nodes send DIO messages will include this information for nodes that receive the DIO to parse and compute its own ETX for a specific path/parent. In this case, how would we indicate that 'minimizing' the ETX metric is our goal? 
On a receiving node's perspective it just received a DIO message saying that it is including a metric and the routing object type will be 7 (recommended for ETX; pp. 20 of [draft-ietf-roll-routing-metrics]). As a result, the node will have different ETX values from different potential next hops and would have to select one from them as the preferred parent node. In the selection process, should it be already known that minimizing the ETX is the goal (OF) at the node in compile time? Or is there a way/scheme to infer that minimizing the ETX is the goal? To make nodes support different OFs dynamically in-run time, having a way to infer/notify the new OFs (goals) would be nice but I wonder if this is interesting. If everything is given in compile time, then we can simply make the nodes that do not recognize what to do with the OFs as leaf nodes (as stated in the rpl draft).

Thanks.

-John