Re: [Roll] Rtgdir last call review of draft-ietf-roll-aodv-rpl-16

Charles Perkins <charliep@lupinlodge.com> Wed, 05 April 2023 22:48 UTC

Return-Path: <charliep@lupinlodge.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 D2C62C15C2B6; Wed, 5 Apr 2023 15:48:33 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level:
X-Spam-Status: No, score=-2.097 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=lupinlodge.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id DnssKUMjHxco; Wed, 5 Apr 2023 15:48:30 -0700 (PDT)
Received: from delivery16.mailspamprotection.com (delivery16.mailspamprotection.com [185.56.84.5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CDE6AC15C29B; Wed, 5 Apr 2023 15:48:29 -0700 (PDT)
Received: from 246.206.208.35.bc.googleusercontent.com ([35.208.206.246] helo=giowm1055.siteground.biz) by se16.mailspamprotection.com with esmtps (TLSv1.2:AES128-GCM-SHA256:128) (Exim 4.92) (envelope-from <charliep@lupinlodge.com>) id 1pkBvX-001x1z-8I; Wed, 05 Apr 2023 17:48:29 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lupinlodge.com; s=default; h=From:Cc:To:Subject:Date:list-help: list-unsubscribe:list-subscribe:list-post:list-owner:list-archive; bh=NxcHlLwcrpsNEL4593BbOgw1RxpwIsaAkiPrfDFoSqA=; b=rAjlx8Aa78Nd5K15C7HTk604qo H7BoN9BGpHDBYrc4n+cjGoIUTbcvlUhpa6nVNNvqoe4IhryFAtbilN5LTga/nvuHLlbRsRD5dwBqA k2EjfG/pqfmZQw0cAGBEzR4BLHQec7lbpIx3eKsDavcJtSSAZi46Vd7M2a6tpEysMLJI=;
Received: from [107.130.100.150] (port=60503 helo=[192.168.1.81]) by giowm1055.siteground.biz with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from <charliep@lupinlodge.com>) id 1pkBvW-000N2d-2b; Wed, 05 Apr 2023 22:48:26 +0000
Message-ID: <64d96e1f-7596-44af-2b73-9959b3c80f10@lupinlodge.com>
Date: Wed, 05 Apr 2023 15:48:25 -0700
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.9.1
Content-Language: en-US
To: Luc André Burdet <laburdet.ietf@gmail.com>, rtg-dir@ietf.org, Tony Przygienda <tonysietf@gmail.com>
Cc: draft-ietf-roll-aodv-rpl.all@ietf.org, last-call@ietf.org, roll@ietf.org
References: <168048071382.43347.12274112201747288173@ietfa.amsl.com>
From: Charles Perkins <charliep@lupinlodge.com>
In-Reply-To: <168048071382.43347.12274112201747288173@ietfa.amsl.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 8bit
X-Originating-IP: 35.208.206.246
X-SpamExperts-Domain: giowm1055.siteground.biz
X-SpamExperts-Username: 35.208.206.246
Authentication-Results: mailspamprotection.com; auth=pass smtp.auth=35.208.206.246@giowm1055.siteground.biz
X-SpamExperts-Outgoing-Class: ham
X-SpamExperts-Outgoing-Evidence: Combined (0.10)
X-Recommended-Action: accept
X-Filter-ID: Pt3MvcO5N4iKaDQ5O6lkdGlMVN6RH8bjRMzItlySaT9Sv6ciOhxppp5VKeDSO7kQPUtbdvnXkggZ 3YnVId/Y5jcf0yeVQAvfjHznO7+bT5zPKzBpUVnvRwjNUFViPwfEtMKrHSKSbG527Qi1omhp4IWi GmbNIKmMTmH7dmRwJKk9bsUWV/XHhcG94fnyhLrY/R7MBrg1r7dOamYEfGrbv5IhXh0R8XYe6XeP xZk+nVF2BkWxkzxsdtSjc2BMHco3jQOnCn6U1Zxvhr8tKPDrEz9/eg1DI+w9bJa90nAd+SHkIGYc lNPY6hMkUqQSk/50UHD30iSmnYVbPUXvc+QuFlprjQPFk8m4tSTfORUp3ymkEyH7KrT9+ZKm5OH0 yXBVORFKYy5Jc2bsoPSAU0o6U/DLN1XsnS+1YMzpRBm8AWmkixVZIdYn+f25tix14zzWMLaehQat gnLdtKDrOZkcLq+okZ+ZqGimiep1BH41RfImKPGesirgt5dbA7OZBBvWcdWv2fP45CaUvPi6BJHi 3tn5ZU9m1kUNpmpxl+xMy0WFGrxb+wWfCGwbjxHzGo9kqiP6/VX4G2b2aLBYJ4m90JzmvB9oeNoP B6auopJY2l5li19mW0G91CSooRJqA7sIag2FIziRW5IuqUPsvUz/y8XNv/i98skyXN5L611AK5ok 9nGznP7BFguMh/fs4xIPBRM5/04GRG8tYTRfnUj47ORTiSEuAsT+levkw06xnx9o+gRO3mmEWQDs 4wPStBtQyOycmxFvQnXRExVpsT2e3VdZ+hXsFi6XiLAouCxjECyoqOMfiC9VYEz5S8JIHsUsVMAf buqplgsbtkwSU1uxWdzn+lWM61oaJS0PxEcRX2MKDF+TnXKnJJ8jAclklGMYXaV05FBd94XxNvfO ynEf0+JDBQcAv6sbVhjq71vRAJvY5Qx4fJOk03R5fJtf/Dv/ooVxzAk1O+r6IpcKHSDe9uy4F0Vp Ouh1d4501kfPxoFY978zz4GKrOBCbyXm+rD8ZNCZo3kRMWHzxgkwYWWBaAeYUOp7A73HI6oJg7w/ VocS4MTEegQSYY+JPuJdqYj1gKhXUVxOxhGTiTXbZMAx+sO3Np1qgXardPxUSzzhRWjbBQhQqt9b LzYjmiZZak1mC0btiUKx/q9cDHD0P9Q8ypIpUzmyf9XzQUSMOG9smujYbunlpmFqidK9KA1zyv4c WQSmliZOAG2VQ/l0n7WD+YxpXoIlKaBTyl+1suTEKExek6W3JFplVGlR9F0c1GSokz4z4lybt+f+ sNsU9ojcR/MNHOR/CfdjAg4o0hsVabu3UmJ0jsGv0ZbUKVJb3DBms+lKU9jTd8e6q11j2fEiLOiR YQwQwMvAMjkynqtLdtAE/Xy9bqh2t87xwDNJ1ZQnfmfNn7sg3EYLeV2E/CSfYxlGw6b+0hfpZzqD tpSljR5PmL7EZfbXqNNDE/IOu3/bfRN4ic67wbCAlzkUsufV0Q==
X-Report-Abuse-To: spam@quarantine2.mailspamprotection.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/roll/jaEJ5oLvfAgBoUBELj6MFSMleVE>
Subject: Re: [Roll] Rtgdir last call review of draft-ietf-roll-aodv-rpl-16
X-BeenThere: roll@ietf.org
X-Mailman-Version: 2.1.39
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: <https://mailarchive.ietf.org/arch/browse/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: Wed, 05 Apr 2023 22:48:33 -0000

Hello Tony (and Luc André),

Many thanks for your careful review.  Please find our follow-up comments 
interspersed below.

On 4/2/2023 5:11 PM, Luc André Burdet via Datatracker wrote:
> Generally, introduction section would benefit from 1-2 figures showing the
> flows of RREQ etc. with flags resulting for symmetric/assymetric case and
> collisions/multiple downstream RREQ sends & such anomalous cases.

We made some more diagrams showing some message flows, but it seemed 
more appropriate to put them in an appendix.

> _Heavy_ readability suggestions:
>
> * Terminology
>
>     ** "The RPLInstanceID in the RREP message along with the Delta value
>     indicates the associated RREQ-InstanceID." is heavily cryptic and leaves one
>     guessing whether the Orig & Trg RPL Instance IDs are related somehow to
>     'pair' ? It becomes clear later but either explain in terminology or just
>     say that both InstanceIDs are matched by mechanism explained in "section
>     6.3.3" to correlate them (or define the term "pair" precisely in
>     terminology).

Yes, the point is to enable the two instance IDs to be associated. I 
added the suggested cross-reference to section 6.3.3.  I don't think a 
new terminology item is needed for this.

>
> * section 3: "the proper OF" "with 'D' == 0" is _heavily_ cryptic until one
> -really- knows 6550 intimately. Expand the acronym, flag semantics

I modified the text as follows:

                                          The 'D' bit of the 
RPLInstanceID field is set to
                 0 to indicate that the source address of the IPv6 
packet is the
                 DODAGID.


>
> * "The route discovery process is initiated when an application at the OrigNode
> has data to be transmitted to the TargNode, but does not have a route that
> satisfies the Objective Function for the target of the application's data." How
> is taht possible if e.g. a global grounded DAG that can reach the destination
> is already in place which would be kind of default 6550 behavior?

The route from the global grounded DAG might not satisfy the needed OF 
between OrigNode and TargNode as discoverable via AODV-RPL.  For 
example, AODV-RPL may often find a more direct route, or a route with 
reduced cost that does not traverse the root node.

>
> Readability suggestions:
>
> * include RRPE and RREQ in terminology for easier reading. yes, it's in intro &
> it's really ROLL but nevertheless, I had to go and search for it.

Done.

>
> * "This reduces the cost to building only one DODAG." Not clear what that
> means. I think it's "with that the node can build one DODAG for multiple
> targets" ?

Yes, that's right.  We've inserted the suggested clarification.

>
> * "The upstream neighbor router that transmitted the received RREQ-DIO is
> selected as the preferred parent." would benefit from clarifying that it's
> parent only for this DAG

Done.

>
> Robusntess/Correctness suggestions:
>
> * 'H' flag is redundant as information (either vector is there or not and that
> basically indicates H). This will lead to semantically unclear packets. In case
> H is set but a vector is sent what to do? what is semantic of H not set and no
> vector?

The H flag essentially signifies whether or not the address vector field 
is present.  If it is set incorrectly, the message fields will likely be 
misinterpreted.  I don't know of a straightforward way to detect whether 
or not the H flag is set incorrectly.

>
> * L: 2-bit unsigned integer defined as in RREQ option. The lifetime of the
> RREP-Instance MUST be no greater than the lifetime of the RREQ-Instance to
> which it is paired.   and what if not?


We added language to the draft explaining that, otherwise, resources 
(e.g., memory) that could be released will remain unavailable. Since 
consuming extra resources might not be fatal, the "MUST" was reduced to 
"SHOULD".

>
> * Logic behind Intersection instaed of union in section 6.2.2 is a mystery. Why
> not only take the newest RREQ based on sequence etc ... Is it because 2 routers
> can receive 2 RREQ on all-AODV-RPL-nodes in different sequence and the result
> should be same no matter the order?


When two or more RREQs are received with the same Orig SeqNo, they were 
transmitted by OrigNode with the same destinations and OF. When an 
intermediate node receives two RREQs with the same Orig SeqNo but 
different lists of destinations, that means that some intermediate nodes 
retransmitting the RREQs have already deleted themselves from the list 
of destinations before they retransmitted the RREQ.  We don't want to 
re-insert those deleted nodes back into the list of destinations.

> Also, it would be good to spell out how
> long all those RREQs have to be kept by a node ? for duration of the DAG?

For any particular Orig SeqNo, only one RREQ-InstanceID is maintained.  
The L field limits how long the RREQ-Instance can be maintained.

>   What
> happens if different RREQs come in with different values for S bit? how is the
> S-bit joined (maybe I missed it reading)

AODV-RPL does not specify how to use the S bit when selecting RREQ 
information for the return route to OrigNode.  It could be that the 
symmetric route is not preferable because an asymmetric route would have 
better Rank evaluation from the Objective Function.



>
> * "stale sequence number" needs defintion earlier instead of popping up in
> 6.4.3 after being already used

Done.

>
> * " In this case, the router MAY optionally associate". What does "associate"
> mean here? Same as "pair"? or simply "it received it before and was in path"


New wording not using "associate":

"In other words, the router MAY optionally include the Address Vector of 
the symmetric route back to OrigNode as part of the RREQ-Instance data."

>
> * 6.3.3. is cryptic, it is unclear why the Targ cannot just send the delta and
> still sends its own RPLInstanceID. Examples of collision/no collicion would go
> a long way here


Suppose TargNode receives the RREQ with value of Orig_RPLInstanceID = 
0x3A.  If TargNode had already used the value of 0x3A for an unrelated 
Targ_RPLInstanceID, then TargNode cannot use that same value in the RREP 
to be transmitted back to OrigNode.  It would have to pick another 
RPLInstanceID and then supply the Delta value that allows OrigNode to 
figure out which of its Orig_RPLInstanceIDs is associated with the 
received RPLInstanceID from the RREP.

>
> * Secton 7: a sentence is probably missing that a intermediate router MUST
> generate a G-RREP and send it further upstream after processing a received
> G-RREP


Done:

    "An upstream intermediate router that receives such a G-RREP MUST
     also generate a G-RREP and send it further upstream towards OrigNode."

>
> Omissions:
>
> * what about multicast? is it specifically excluded?


It is excluded (along with other schemes modifying the semantics of an 
IP address, etc.).  We could re-tool AODV-RPL for multicast but it would 
take a bit of work.  It would be a different protocol document with new 
message formats.  This has been done in several ways for AODV, and any 
one of those methods could be adapted for AODV-RPL.  Most likely the 
same multicast group all-AODV-RPL-nodes could be used for disseminating 
the new multicast messages.

We will watch to see if there is a desire for a multicast routing protocol.

Regards,
Charlie P.