Re: [Roll] MRHOF draft-07 comments

Philip Levis <pal@cs.stanford.edu> Fri, 30 March 2012 09:53 UTC

Return-Path: <pal@cs.stanford.edu>
X-Original-To: roll@ietfa.amsl.com
Delivered-To: roll@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6361021F8919 for <roll@ietfa.amsl.com>; Fri, 30 Mar 2012 02:53:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.599
X-Spam-Level:
X-Spam-Status: No, score=-6.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id z3-LaeJVvs8K for <roll@ietfa.amsl.com>; Fri, 30 Mar 2012 02:53:56 -0700 (PDT)
Received: from cs-smtp-1.Stanford.EDU (cs-smtp-1.Stanford.EDU [171.64.64.25]) by ietfa.amsl.com (Postfix) with ESMTP id 6913521F8916 for <Roll@ietf.org>; Fri, 30 Mar 2012 02:53:55 -0700 (PDT)
Received: from ast-lambert-153-1-157-249.w90-44.abo.wanadoo.fr ([90.44.96.249] helo=[192.168.100.145]) by cs-smtp-1.Stanford.EDU with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.76) (envelope-from <pal@cs.stanford.edu>) id 1SDYWp-00073n-2s; Fri, 30 Mar 2012 02:53:55 -0700
Mime-Version: 1.0 (Apple Message framework v1257)
Content-Type: text/plain; charset="us-ascii"
From: Philip Levis <pal@cs.stanford.edu>
In-Reply-To: <4F74A202.2040206@ipv6it.org>
Date: Fri, 30 Mar 2012 11:53:55 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <55B55877-4CF8-444C-9E09-711C6990BC9D@cs.stanford.edu>
References: <4F723A15.7040900@ipv6it.org> <747F05A8-A525-49EB-9D9E-5A0B072EF74D@cs.stanford.edu> <4F7444F0.3020101@ipv6it.org> <A78FB66B-E578-4D2D-9D13-AF9A57F35859@cs.stanford.edu> <4F74A202.2040206@ipv6it.org>
To: Federico Consoli <admin@ipv6it.org>
X-Mailer: Apple Mail (2.1257)
X-Scan-Signature: 5d5bd4b8133540f30bea22ef470d169d
Cc: Roll@ietf.org
Subject: Re: [Roll] MRHOF draft-07 comments
X-BeenThere: roll@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Routing Over Low power and Lossy networks <roll.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/roll>, <mailto:roll-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/roll>
List-Post: <mailto:roll@ietf.org>
List-Help: <mailto:roll-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/roll>, <mailto:roll-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 30 Mar 2012 09:53:57 -0000

On Mar 29, 2012, at 7:55 PM, Federico Consoli wrote:

> Il 29/03/2012 19.27, Philip Levis ha scritto:
>> On Mar 29, 2012, at 1:18 PM, Federico Consoli wrote:
>> 
>>> Il 28/03/2012 11.56, Philip Levis ha scritto:
>>>> On Mar 28, 2012, at 12:07 AM, Federico Consoli wrote:
>>>> 
>>>>> Hi, I have a doubt about the root's rank with ETX.
>>>>> Assume I have 2 nodes A and B and I use ETX as metric with MRHOF:
>>>>> A is root
>>>>> B is non-root
>>>>> Link between A and B has a cost of 256 (ETX=2)
>>>>> 
>>>>> A got rank of 256(2*,4*) and will annunce a path_cost of 0(1*,3*) in its DIO message in its advertised Rank value(6*).
>>>>> 
>>>>> B will receive a DIO with rank value = 0 so B will set his rank to 256(7*) and will annunce a path_cost of 256.
>>>>> 
>>>>> But now I got 2 nodes with the same rank value. I think it's not a problem with the algorith of DODAG creation but it's not RPL complaint(5*).
>>>> Good catch.
>>>> 
>>>> I think the issue here is the MRHOF draft is not clear: A (a root) should advertise a Rank of 256, and B, following 3.3, would advertise a Rank of 256 + MinHopRankIncrease (case 3 of 3.3).
>>>> 
>>>> This does get at a more fundamental issue, one where the rules on Rank and the rules on metrics can diverge. I'd argue that the text saying Root nodes set to MIN_PATH_COST should instead relate to MinHopRankIncrease; 3.3 was designed given the RPL specification, but I think the cur_min_path_cost clause is out of sync with it. What do you think?
>>>> 
>>>> Phil
>>> Hi, thank you for your reply.
>>> 
>>> I think that if the root node advertise a Rank of 256 it means that it got a path_cost to the worst parent of 256 (1*), so it means that it got a ETX of 2 to the worst parent.
>>> It's not RPL complaint(2*).
>>> If instead we suppose that root send packet to itself, it means that the root can lost packet (ETX=2) to itself.
>>> IMHO, a way to fix that (still assuming that root send packet to itself) is that root could advertise a Rank of 128 (ETX=1) so it got no loss to itself.
>>> Anyway I don't like this fix.
>>> 
>>> I think that a goot fix is that a root set it's rank to MinHopRankIncrease and (only root) MUST use the metric container to carry ETX=0.
>>> 
>>> I think it's a pretty significant change in MRHOF but I have other ideas. What do you think?
>>> 
>>> 
>>> 
>>> 
>>> (1*) MRHOF - Section 3.4
>>> "...It then calculates the metric it will advertise in
>>> its metric container. This value is the path cost of the member of
>>> the parent set with the highest path cost..."
>>> 
>>> (2*) RPL-RFC - Section 8.2.1 - Rules 2
>>> "A DODAG root MUST have a DODAG parent set of size zero"
>>> 
>> The RPL specification is what says the Rank value a root must advertise.
>> 
>> 8.2.2.2 says
>>    2.  A DODAG root MUST advertise a rank of ROOT_RANK.
> Yes. I agree with that. Root nodes got rank=256.
>> 
>> To some degree, absolute ETX values do not matter -- what matters is their relative values. If all DODAG Roots advertise a Rank of 256, corresponding to an ETX of 2, then that's what they advertise, and a route with an computed ETX of 5 involves 3 transmissions within the LLN.
>> 
>> I don't think I'm understanding the issue -- could you explain it again?
>> 
>> Phil
> I don't agree that root nodes could advertise a ETX=2.
> 
> "Once the preferred parent is selected, the node sets its cur_min_path_cost variable to the path cost corresponding to its preferred parent. It then calculates the metric it will advertise in its metric container. This value is the path cost of the member of the parent set with the highest path cost."
> 
> Root nodes have parent set of size zero so they got a cur_min_path_cost=0 so ETX=0.
> 
> Because "a node MUST advertise an approximation of its ETX in its advertised Rank value" root nodes must advertise ETX=0.
> I agree with the fact that absolute ETX do not matter but I think that the root advertisement does not match the definition in the MRHOF draft.

Ah, this is a good catch. I'll adjust the text to note this edge case. I chose the word "approximation" carefully there -- but the issues you're pointing out make it clear that the draft should explain what's going on in greater detail. In particular, how would you feel about some text along the lines of

"RPL's Rank advertisement rules can require a DODAG Root to advertise a Rank higher than its corresponding ETX value, as a DODAG Root advertises a Rank of MinHopRankIncrease. Because all DODAG Roots within a DODAG Version advertise the same Rank, this constant value typically does not affect route selection. Nevertheless, it means that if a DODAG Version has a MinHopRankIncrease of M and a path has an advertised ETX of E, then the actual ETX of the path is likely closer to a value of E-M than a value of E."

Phil