Subject: [Roll] I-D Action: draft-ietf-roll-minrank-hysteresis-of-10 Comments

From: Federico Consoli <[email-masked]>
Date: Sun, 13 May 2012 16:01:59 +0200

Hi,
I have a doubt concerning the selection of parent set.
Draft Section 3.3 says:
"The exact selection of a parent set is an implementation decision."

The document does not specify what to do in a situation like this:

Example:
------
The node A has 1 parent with rank 700 and path cost 300 => A has a rank 
= 1000.
B has A as Preferred parent and the path cost A-B is 300, soB has rank 1300.

Later A receives from node C a DIO. Node C has rank 900 andpath cost A-C 
is 500 => A puts C in its parent set and announce a rank 1400.
But, A receives a DIO from node B before to send a DIO =>A puts B in its 
parent set.

When B receives the DD it will increase its rank. When Node A receives 
the DIO from the node B, it has 2 options:
1) Increase its rank
2) Delete the node from the parent set

If A chooses option 1 there will be an infinite loop.
------

In general, a node does not know the reason why a parent increase its 
rank. In fact, a node can also increase his rank because its link is got 
worse.

IMHO I think that if a parent announces a rank higher than the rank of 
the the nodethen the node MUST remove the parent from its Parent set.

-- 
Regards
Consoli Federico

---

From: Philip Levis <[email-masked]>
Date: Sun, 13 May 2012 09:28:18 -0700

On May 13, 2012, at 7:01 AM, Federico Consoli wrote:

> The node A has 1 parent with rank 700 and path cost 300 => A has a rank = 1000.
> Later A receives from node C a DIO. Node C has rank 900 andpath cost A-C is 500 => A puts C in its parent set and announce a rank 1400.
> But, A receives a DIO from node B before to send a DIO =>A puts B in its parent set.
> 
> When B receives the DD it will increase its rank. When Node A receives the DIO from the node B, it has 2 options:
> 1) Increase its rank
> In general, a node does not know the reason why a parent increase its rank. In fact, a node can also increase his rank because its link is got worse.
> 
> IMHO I think that if a parent announces a rank higher than the rank of the the nodethen the node MUST remove the parent from its Parent set.
> 
> -- 
> Regards
> Consoli Federico
> 
> 

The RPL specification goes into this. Loops can temporarily form in the network, but RPL will detect them and repair them. MaxRankIncrease controls how far the nodes can count forward. RPL will detect the loop (11.2 of RFC6550) and reset its Trickle timer to advertise the newer, higher Rank. At some point, for example, if B's Rank goes high enough, A will remove it from its parent set due to the Rank spread between B and its other parent (the one with 700).

Phil

---

From: Federico Consoli <[email-masked]>
Date: Sun, 13 May 2012 18:45:02 +0200

> The RPL specification goes into this. Loops can temporarily form in the network, but RPL will detect them and repair them. MaxRankIncrease controls how far the nodes can count forward. RPL will det…
Ok, I agree with you. So I think that the use of MaxRankIncrease is 
mandatory with mrhof, you can't disable it (set to 0).

-- 
Regards
Consoli Federico