Re: [Roll] Ralph Droms' Discuss on draft-ietf-roll-of0-15: (withDISCUSS and COMMENT)

Ralph Droms <rdroms.ietf@gmail.com> Tue, 09 August 2011 16:08 UTC

Return-Path: <rdroms.ietf@gmail.com>
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 A4E1E21F8B78; Tue, 9 Aug 2011 09:08:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -103.339
X-Spam-Level:
X-Spam-Status: No, score=-103.339 tagged_above=-999 required=5 tests=[AWL=0.260, BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1, USER_IN_WHITELIST=-100]
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 yt53--pfE9yM; Tue, 9 Aug 2011 09:08:33 -0700 (PDT)
Received: from mail-qw0-f44.google.com (mail-qw0-f44.google.com [209.85.216.44]) by ietfa.amsl.com (Postfix) with ESMTP id 7070B21F8B68; Tue, 9 Aug 2011 09:08:33 -0700 (PDT)
Received: by qwc23 with SMTP id 23so98510qwc.31 for <multiple recipients>; Tue, 09 Aug 2011 09:09:00 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=subject:mime-version:content-type:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to:x-mailer; bh=pK2V3PZm2qFOZhI3B+bRz53vhOsH/g1+BuHv6VK0Xjo=; b=Y6EdALKBd15FuPOd+ziizyMtfc9Cwha2tMEIwcsuw2vnKjYOcGHiCzJlJ2G8AcRWFC 7fB0epzQ65vWj7h0qRUpFfr+hTKc18UHD19OOX7HBvJ9VzBVDX0iLuJ688FEg5O3zRxL 8/PUH5dQ2xXSZfpCp2lDFe+uYm0ZErD7yboPk=
Received: by 10.224.200.200 with SMTP id ex8mr5730692qab.246.1312906140311; Tue, 09 Aug 2011 09:09:00 -0700 (PDT)
Received: from [161.44.65.173] ([161.44.65.173]) by mx.google.com with ESMTPS id b6sm48500qcb.11.2011.08.09.09.08.57 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 09 Aug 2011 09:08:58 -0700 (PDT)
Mime-Version: 1.0 (Apple Message framework v1084)
Content-Type: text/plain; charset="us-ascii"
From: Ralph Droms <rdroms.ietf@gmail.com>
In-Reply-To: <6A2A459175DABE4BB11DE2026AA50A5D053A3AD7@XMB-AMS-107.cisco.com>
Date: Tue, 09 Aug 2011 12:08:54 -0400
Content-Transfer-Encoding: quoted-printable
Message-Id: <9BF57281-8CB0-4D5E-AE2B-6BE836CCAD08@gmail.com>
References: <20110808232350.30897.61741.idtracker@ietfa.amsl.com> <6A2A459175DABE4BB11DE2026AA50A5D053A3AD7@XMB-AMS-107.cisco.com>
To: Pascal Thubert <pthubert@cisco.com>
X-Mailer: Apple Mail (2.1084)
Cc: roll@ietf.org, draft-ietf-roll-of0@tools.ietf.org, roll-chairs@tools.ietf.org, The IESG <iesg@ietf.org>
Subject: Re: [Roll] Ralph Droms' Discuss on draft-ietf-roll-of0-15: (withDISCUSS and COMMENT)
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: Tue, 09 Aug 2011 16:08:34 -0000

Pascal...

On Aug 9, 2011, at 5:12 AM 8/9/11, Pascal Thubert (pthubert) wrote:

> Hello Ralph;
> 
> If that's what it takes, so be it. The drawback of removing such text as
> opposed to making it more clear is that more and more people will
> interpret as Stewart did that mixing OFs could create loops.

I think the issue is sufficiently clarified in the RPL spec and need not be revisited here.  

> This was in fact an arbitrary decision by the WG to keep things simple
> and guarantee a global optimization. This also constrains RPL more than
> actually needed and we might end up blocking deployments that the group
> did not foresee at the time.

Do I have it right, then, that OF0 sidesteps the WG decision for a single OF throughout a RPL Instance by allowing each node to compute its rank increase using whatever mechanism it chooses?

I know the document has gone through last call but I don't think I saw that this specific point was discussed.

If it is the case that OF0 allows each node to choose its own computation, why not simplify the OF0 spec to state "OF0 allows a node to choose any value for rank_increase, subject to the specified constraints" , along with whatever constraints are required on the value of the rank increase to ensure loop-free operation?  Those constraints may already exist in the RPL spec, in which case the OF0 spec can simply cite a reference to the constraints in the RPL spec.

> My original "bubbles" work allowed to mix plugins - which RPL dubbed OFs
> later -, and this allowed deployments like cars from different car
> makers in a parking lot having different goals yet forming a DAG. Loops
> will not form, but the cars will not necessarily get the connectivity
> they expect.

But "not necessarily get the connectivity they expect" doesn't sound like a particularly useful characteristic of an OF ... especially if node A uses OFi, expecting one kind of connectivity, and node B uses OFj, optimizing for a different kind of connectivity, and A has no way to know what OF B is using.  How can A make any informed choice about what RPL Instance to join?

- Ralph


> Cheers,
> 
> Pascal
> 
> 
>> -----Original Message-----
>> From: roll-bounces@ietf.org [mailto:roll-bounces@ietf.org] On Behalf
> Of
>> Ralph Droms
>> Sent: Tuesday, August 09, 2011 1:24 AM
>> To: The IESG
>> Cc: roll@ietf.org; draft-ietf-roll-of0@tools.ietf.org;
> roll-chairs@tools.ietf.org
>> Subject: [Roll] Ralph Droms' Discuss on draft-ietf-roll-of0-15:
> (withDISCUSS
>> and COMMENT)
>> 
>> Ralph Droms has entered the following ballot position for
>> draft-ietf-roll-of0-15: Discuss
>> 
>> When responding, please keep the subject line intact and reply to all
>> email addresses included in the To and CC lines. (Feel free to cut
> this
>> introductory paragraph, however.)
>> 
>> Please refer to
> http://www.ietf.org/iesg/statement/discuss-criteria.html
>> for more information about IESG DISCUSS and COMMENT positions.
>> 
>> 
>> 
>> ----------------------------------------------------------------------
>> DISCUSS:
>> ----------------------------------------------------------------------
>> 
>> 1. I would like to discuss the interoperability and deployability of
>> nodes in a RPL Instance that uses OF0.  If I understand section 4.1
>> correctly, a node is free to compute step-of-rank using any method it
>> chooses.  There is a suggestion that using link properties for the
>> computation is preferred, but the specific link properties and the
>> method of computation are not specified.  Later, section 4.1 defines
>> two parameters, rank_factor and stretch_factor, that modify
>> step_of_rank to generate a "stretched step_of_rank".  The latter value
>> is then multiplied by the MinHopRankIncrease to compute the node's
>> rank_increase.
>> 
>> My concern is the degrees of freedom provided to the implementation in
>> the computation of rank_increase.  I'm hoping I can get an explanation
>> of some reason to believe that independent implementations, using
>> different methods to compute step_of_rank and potentially different
>> configured values for rank_factor and stretch_factor, will
>> interoperate successfully to form an operational network.
>> 
>> More specifically, if a simple metric that leads to a hop-count
>> computation for path lengths and route computation is know to yield
>> unusable performance, why is it not required that a node use some sort
>> of computation based on link characteristics?  And, if the computation
>> of the step_factor is entirely up to the node, why are the rank_factor
>> and stretch_factor needed?  Why not just leave the entire computation
>> to the implementation, with limitations that the resulting step_factor
>> lie in the range MINIMUM_STEP_OF_RANK and
>> MAXIMUM_STEP_OF_RANK?
>> 
>> 2. I would also like to discuss the requirement for a
>> mandatory-to-implement OF, whether OF0 is that mandatory-to-implement
>> OF and where the requirement to implement OF0 is specified.
>> 
>> 3. In section 7.1, why is support of the DODAG Configuration option
>> only a SHOULD?
>> 
>>   An OF0 implementation SHOULD support the DODAG Configuration option
>>   as specified in section 6.7.6 of [I-D.ietf-roll-rpl] and apply the
>>   parameters contained therein.
>> 
>> 4. This point is more editorial than completely technical, but I list
>> it as a Discuss because of the potential for confusion among
>> implementors.  I found the use of "DODAG Version" a little confusing,
>> because it appears sometimes to mean one of the successive Versions of
>> one DODAG and at other times to mean a specific DODAG chosen from
>> several DODAGs.  For example, from the Introduction:
>> 
>>   RPL forms Directed Acyclic Graphs (DAGs) as collections of
>>   Destination Oriented DAGs (DODAGs) within instances of the
> protocol.
>>   Each instance is associated with a specialized Objective Function.
> A
>>   DODAG is periodically reconstructed as a new DODAG Version to
> enable
>>   a global reoptimization of the graph.
>> 
>>   An instance of RPL running on a device uses an Objective Function
> to
>>   help it determine which DODAG Version it should join.  The OF is
> also
>>   used by the RPL instance to select a number of routers within the
>>   DODAG Version to serve as parents or as feasible successors.
>> 
>> In my opinion, the first use of "DODAG Version" refers to a sucessive
>> Version of one DODAG, while the second use refers to a selection of
>> one DODAG from many DODAGs.  Would it be possible to just use "DODAG"
>> for the second intended use?  Or am I confused about the intended
>> meanings?
>> 
>> 5. In section 4.2.1, what does it mean to "validate a router"?  Why
>> would a router that passes validation ("succeeded that validation
>> process") only be "preferable"?
>> 
>> 
>> 
>> ----------------------------------------------------------------------
>> COMMENT:
>> ----------------------------------------------------------------------
>> 
>> 
>> 1. I consider the following comment to be a technical rather than an
>> editorial suggestion because of the redundancy and potential conflict
>> between the text in the Introduction of this document and the contents
>> of draft-ietf-roll-rpl-19.  It would improve the document to edit the
>> Introduction down to a paragrpah that combines the following sentence
>> from the first paragraph with the content from the last paragraph:
>> 
>>   An Objective Function
>>   defines how a RPL node selects and optimizes routes within a RPL
>>   Instance based on the information objects available.
>> 
>> Editing out the text describing RPL would also presumably address
>> Stewart's Discuss about the use of multiple OFs in one RPL Instance.
>> 
>> 2. I don't understand this phrase from the last paragraph of the
>> Introduction:
>> 
>>   [...] OF0 enforces normalized values for the rank_increase of a
>>   normal link and its acceptable range
>> 
>> Do I have it right that a node uses OF0 to determine the rank_increase
>> for a successor within the range:
>> 
>>   MINIMUM_STEP_OF_RANK < stretched step_of_rank <
>> MAXIMUM_STEP_OF_RANK
>> 
>> Unless I'm missing something, these limits on the stretched
>> step_of_rank enforce (indirectly) a range on rank_increase, but don't
>> normalize rank_increase by some normalizing factor.
>> 
>> 3. Is there a reason to switch between "successor" and "parent"
>> throughout the document?  For example, the title of section 4.2 is
>> "Feasible Successors Selection" and the title of the immediately
>> following section 4.2.1 is "Selection Of The Preferred Parent".  Are
>> "successor" and "parent" are synonymous in this context?  Would it be
>> asking for foolish consistency to choose one or the other?
>> 
>> 4. In section 7.1, what is "build-time"?
>> 
>>   At build-time [...]
>> 
>> Also in section 7.1, what is a "fixed constant" (as opposed to any
>> other kind of "constant").  Why are overridden values - I assume these
>> are overriden by some administrative method like CLI configuration or
>> some management protocol? - only applied at the next Version of the
>> DODAG?
>> 
>> 5. In section 3, how is "good enough" defined?  From reading the rest
>> of the spec, I don't see where any assessment of quality is applied to
>> ensure that "good enough" is more than basic connectivity.  I suggest
>> just dropping "good enough".
>> 
>> 
>> 
>> _______________________________________________
>> Roll mailing list
>> Roll@ietf.org
>> https://www.ietf.org/mailman/listinfo/roll