Re: [Roll] ROVR and TID in the 6lo multicast

Adnan Rashid <adnan.rashid@unifi.it> Wed, 27 July 2022 15:05 UTC

Return-Path: <adnan.rashid@unifi.it>
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 8C77FC14F75F for <roll@ietfa.amsl.com>; Wed, 27 Jul 2022 08:05:55 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.105
X-Spam-Level:
X-Spam-Status: No, score=-7.105 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, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=unifi.it
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 mXlvH4iHM9UR for <roll@ietfa.amsl.com>; Wed, 27 Jul 2022 08:05:50 -0700 (PDT)
Received: from mail-yw1-x1132.google.com (mail-yw1-x1132.google.com [IPv6:2607:f8b0:4864:20::1132]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 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 5A708C14F606 for <roll@ietf.org>; Wed, 27 Jul 2022 08:05:49 -0700 (PDT)
Received: by mail-yw1-x1132.google.com with SMTP id 00721157ae682-32194238c77so5875577b3.4 for <roll@ietf.org>; Wed, 27 Jul 2022 08:05:49 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=unifi.it; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=zCuvwp/ztlGVMeWW0ND0rQyR4WmsgxFPH9jjQdhvwUo=; b=R7XZTiM6Orp/tDcnij2ZutbTwYi41v0ANQm3UXP4iIwNn8eiwpes6/pcfgXXsQd4IQ p5QNndU1aoAap+qYyUTn8t8RTcjnNc8R5fKh7eoINqXNfQuOvJXmr5PSFnEbl3e0aY9A XNxuEDqY1E/E6a5zUQFb0R+Zyg1ha21lQq4Vdh0mXImzOropKKblKkSxtq9W6lZGVj2L iHnYPql4JbH2quFTPgyz711XvsUFtiMU2uNHQyDTdg/XiSqwZEBf/l7GMXuvYHA96NMP DshsqlH91gUvajk7etcmj/PJw6zit27bsPwC/3Az5EUUB0V0rnvD4tmhW9nmixQ4mZBg X2Sw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=zCuvwp/ztlGVMeWW0ND0rQyR4WmsgxFPH9jjQdhvwUo=; b=Oxf2U3C2wc4hDcLKzbHn6vrwHCZIx6izioPO7+m92ucERmvSnWcO+ujt4wh58f6lRb cHqHxdYwBvXQkLHby2hKV52xjnnzgqd3m56tVObL1sHplP/Pk82Qd1XY15UqJo2ErQdt Hr6HNqZodV1XznMpP1WBBdai3z5k8vKqlcgGucFLFAxaPGiIK48m5wvCB3NbealgbpV2 gh5PbCcRFgxqL3RhSV1WRayXz7Gw+SqH7JhV+GtiCWNIh7/zJMVkk9OwKePRgspCeoVE ONMmBxTVtd/MnUdL6YIvE0tOMk/mOngNupfKlRcVyb7GRVwH0HXvqtVmqGPy5RuK9CWx GWOg==
X-Gm-Message-State: AJIora+O74XH4wk/t9RDwt3VCnp2Tj82bPWWcy96sgFwpuKXsVMYnbZW 4VJgtnXeGpXD+ow8M5gSvm6VDjxRJzrH75wa9n+u7VpCr1j+cw==
X-Google-Smtp-Source: AGRyM1vtQBDEpZ4CDO0d0Er4VL64VmsxGNgxgNTFNYeffrYJf8d98MEmygfqdkcFjaYwj4GWNW08o0nnvXV3mv8ujbQ=
X-Received: by 2002:a81:848c:0:b0:31f:4dad:3b08 with SMTP id u134-20020a81848c000000b0031f4dad3b08mr7005987ywf.412.1658934347976; Wed, 27 Jul 2022 08:05:47 -0700 (PDT)
MIME-Version: 1.0
References: <CO1PR11MB48814995EF121A4F97917067D8979@CO1PR11MB4881.namprd11.prod.outlook.com>
In-Reply-To: <CO1PR11MB48814995EF121A4F97917067D8979@CO1PR11MB4881.namprd11.prod.outlook.com>
From: Adnan Rashid <adnan.rashid@unifi.it>
Date: Wed, 27 Jul 2022 17:05:12 +0200
Message-ID: <CANZwfFnvsoOv=noOd07QeXBCmyduYhqB9uij8nukZC8V4c2OBA@mail.gmail.com>
To: "Pascal Thubert (pthubert)" <pthubert@cisco.com>
Cc: "ROLL WG (roll@ietf.org)" <roll@ietf.org>, "6lo@ietf.org" <6lo@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000846e1b05e4cac0c1"
Archived-At: <https://mailarchive.ietf.org/arch/msg/roll/hN-cAMBty7P9fQRkXi0SWjVgLho>
Subject: Re: [Roll] ROVR and TID in the 6lo multicast
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, 27 Jul 2022 15:05:55 -0000

Hi Pascal,

Thanks for addressing my question.

Do you really think that the *T flag* is really important in EARO? As we
already discussed the rfc6775 is obsoleted.

   T: 1-bit flag.  Set if the next octet is used as a TID.


The significance of TID is really important, so is there any case where
*TID* octet is not available in EARO?




On Wed, Jul 27, 2022 at 4:08 PM Pascal Thubert (pthubert) <
pthubert@cisco.com> wrote:

> Dear all:
>
> Yesterday at the mike, Adnan asked questions about the use of TID and
> ROVR.
> In the general case today, the ROVR is not available in the DAO messages
> and
> Since multiple nodes will register the same anycast or multicast address
> With uncoordinated TODs, the TID freshness comparison that is used to
> remove
> stale unicast routes cannot happen.
>
> Now, RFC 9010 added the ROVR field in the DAO messages, enabling the
> routing
> to determine the origin of the route and opening the door to zerotrust/ROV
> in
> the future. When the ROVR is available either in NA(EARO) or DAO(RTO), the
> origin can be determined, and the stale (mobility) or retired (lifetime=0)
> routes can be removed.
>
> I reread the text and that was not sufficiently documented. So I went on
> with the following proposed clarification:
>
>  5.  Updating RFC 6550
>
>
>
> +   [RFC6550] uses the Path Sequence in the Transit Information Option
> +   (TIO) to retain only the freshest unicast route and remove stale
> +   ones, e.g., in the case of mobility.  [RFC9010] copies the TID from
> +   the EARO into the Path Sequence, and the ROVR field into the
> +   associated RPL Target Option (RTO).  This way, it is possible to
> +   identify both the registering node and the order of registration in
> +   RPL for each individual route advertisement, so the most recent path
> +   and lifetime values are used.
> +
> +   For anycast and multicast advertisements (in NS or DAO messages),
> +   multiple origins may subscribe to the same address, and multiple
> +   advertisements from different origins are merged by the common parent
> +   which becomes the origin of the merged advertisements.  The Path
> +   Sequence is to be used between advertisements with the same ROVR
> +   value, denoting an update from the same origin, but cannot apply if
> +   the origin is not determined.  This is why this specification
> +   requires the use of the ROVR field as the indication of the origin in
> +   the RPL advertisements.
> +
> +   [RFC6550] uses the Path Lifetime in the TIO to indicate the remaining
> +   time for which the advertisement is valid for unicast route
> +   determination, and a Path Lifetime value of 0 invalidates that route.
> +   [RFC9010] maps the Address Registration lifetime in the EARO and the
> +   Path Lifetime in the TIO so they are comparable when both forms of
> +   advertisements are received.
> +
> +   For anycast and multicast advertisements, the Path Sequence is to be
> +   used between advertisements from the same origin only.  The RPL
> +   router that merges multiple advertisement for the same anycast or
> +   multicast addresses must use and advertise the longest remaining
> +   lifetime across all the origins of the advertisements for that
> +   address.  When the lifetime expires, the router sends a no-path DAO
> +   (lifetime=0) using the same value for ROVR value as for the preceding
> +   advertisements.
>
> 5.1.  Updating MOP 3
>
> ...
>
>
> -   Though it was implicit in [RFC6550], this specification clarifies
> -   that the freshness comparison based on the TID field is ignored for
> -   RPL multicast operations.  A RPL router maintains a remaining Path
> -   Lifetime for each DAO that it receives for a multicast target, and
> -   sends it own DAO for that target with the longest remaining lifetime
> -   across its listening children.
>
> +   For anycast and multicast advertisements, including MOP 3, the ROVR
> +   field is placed in the RPL Target Option as specified in [RFC9010]
> +   for both MOP 3 and MOP 5 as it is for unicast advertisements.
> +
> +   Though it was implicit with [RFC6550], this specification clarifies
> +   that the freshness comparison based on the Path Sequence is not used
> +   when the origin cannot be determined, which is the case there.  The
> +   comparison is to be used only between advertisements from the same
> +   origin, which is either an individual subscriber, or a descendant
> +   that aggregated multiple advertisements.
> +
> +   A RPL router maintains a remaining Path Lifetime for each DAO that it
> +   receives for a multicast target, and sends its own DAO for that
> +   target with the longest remaining lifetime across its listening
> +   children.  If the router has only one descendant listening, it
> +   propagates the TID and ROVR as received.  Conversely, if the router
> +   merges multiple advertisements (including possibly one for self as a
> +   listener), the router uses its own ROVR and TID values.
>
> 5.2.  New Non-Storing Multicast MOP
>
> ...
>
>
>
> -   As with MOP 3, the freshness comparison based on the TID field is
> -   ignored for RPL MOP 5 multicast operations.  The Root maintains a
> -   remaining Path Lifetime for each DAO that it receives, and the 6LRs
> -   generate the DAO for multicast addresses with the longest remaining
> -   lifetime across its registered 6LNs.
>
> +   For anycast and multicast advertisements in NA (at the 6LR) and DAO
> +   (at the Root) messages, as discussed in Section 5.1, the freshness
> +   comparison based on the TID field is applied only between messages
> +   from the same origin, as determined by the same value in the ROVR
> +   field.
>
> -   The route disappears when the associated path lifetime in the transit
> -   option times out, but the procedure to remove a unicast route based
> -   on TID cannot apply to multicast and anycast.
>
> +   The Root maintains a remaining Path Lifetime for each advertisement
> +   it receives, and the 6LRs generate the DAO for multicast addresses
> +   with the longest remaining lifetime across its registered 6LNs, using
> +   its own ROVR and TID when multiple 6LNs subscribed, or if this 6LR is
> +   one of the subscribers.
>
> ...
>
> 5.3.  RPL Anycast Operation
>
> ...
>
>
>     With the A flag, this specification alleviates the issue of
>
> -   synchronizing the TIDs, and as for multicast, the freshness
> -   comparison based on the TID field is ignored.  A target is routed as
> -   anycast by a parent (or the Root) that received at least one DAO
> -   message for that target with the A flag set to 1.
>
> +   synchronizing the TIDs and ROVR fields.  As for multicast, the
> +   freshness comparison based on the TID (in EARO) and the Path Sequence
> +   (in TIO) is ignored unless the messages have the same origin, as
> +   inferred by the same ROVR in RTO and/or EARO, and the latest value of
> +   the lifetime is retained for each origin.
> +
> +   A RPL router that propagates an advertisement from a single origin
> +   MUST use the ROVR and Path Sequence from that origin, whereas a
> +   router that merges multiple subscriptions MUST use its own ROVR and
> +   Path Sequence and the longest lifetime over the different
> +   advertisements.  A target is routed as anycast by a parent (or the
> +   Root) that received at least one DAO message for that target with the
> +   A flag set to 1.
>
> Also added missing terminology...
>
> The full commit is here:
> https://github.com/pthubert/6lo-multicast-registration/commit/3fa57412a565731ab73b90ca49fb79115fb5919b
>
> I refrain from publishing till Erik indicates the fate of the proposed
> IPv6 ND Node Uptime option.
>
> All the best;
>
> Pascal
>


-- 


Regards,



ADNAN RASHID (Ph.D. Research Scholar)
Dpt. Ingegneria dell'Informazione

Università di Firenze​, via di S.Marta-3,
50139, Florence​, Italy.

*email:* adnan.rashid@unifi.it
       adnanrashidpk@gmail.com
*Cell:* (+39) 347 9821​ ​467

--------------------------------------------------------------------------------------------------