Re: [Lsr] AD Review of draft-ietf-lsr-ospf-prefix-originator-07

Alvaro Retana <aretana.ietf@gmail.com> Mon, 08 March 2021 21:27 UTC

Return-Path: <aretana.ietf@gmail.com>
X-Original-To: lsr@ietfa.amsl.com
Delivered-To: lsr@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 702C13A17F5; Mon, 8 Mar 2021 13:27:12 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 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, FREEMAIL_FROM=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, UNPARSEABLE_RELAY=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 0MVUTP2tl4Sn; Mon, 8 Mar 2021 13:27:10 -0800 (PST)
Received: from mail-ej1-x635.google.com (mail-ej1-x635.google.com [IPv6:2a00:1450:4864:20::635]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A3E8C3A17F6; Mon, 8 Mar 2021 13:27:10 -0800 (PST)
Received: by mail-ej1-x635.google.com with SMTP id ox4so7672514ejb.11; Mon, 08 Mar 2021 13:27:10 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:in-reply-to:references:mime-version:date:message-id:subject:to :cc:content-transfer-encoding; bh=iCbjuJOEmyQNY5j1zhM0jhEhHzkVZdOxAbIPYoeK8cI=; b=K2MDctieOiDt7ksbHKgDZf5hrjDasC2flP/w7F4TwyZHmJNtOExpx4n6PRhXRXupqe /DtsDdUsGpxFPeTW41/+7tmG+I6dnChbV9VMS3/bN8nsDhDhUlyBgnxahZgJKsoL0X1O etVUPg5U/FdjjmyTvMPSbV0X+l1r5pbVQdHiEz21Pfz8oNTwgppEEQmjVLPRT93e4caK 1eHdrQbtyAJ2vugDLv/Wq98EVeu9xO7bWJ0/ywdAA5Chn7vraTjsutcA2cJkPGtMsAhd R17fpyryQq+uHOriNs4iTfBC1pViTeO6SXsUQd1NWKOuihSQXHCi6CWZmtT2uES1pqJz cY+g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:in-reply-to:references:mime-version:date :message-id:subject:to:cc:content-transfer-encoding; bh=iCbjuJOEmyQNY5j1zhM0jhEhHzkVZdOxAbIPYoeK8cI=; b=IAiMHCM9aWmBdL/jrQuj1R9amMMyDy5+KYRAQRxbYtOIIeOIsLXedtjXApU7Mw8S8L vrj6Q5bWtl+MGXUtogsTMyEY6GWcOJSwL4cJap5m7r87i/dU7O4mojNgtGH0jBYqidZn gK/Qtprp6tRjccz0IwPogUswYfrc3c9A0/t8M7brx0JNWwW4ZfVi31nw4ht+GXuy0E5v upTGVoCutdvECKKNphBCf+TT1H9V6DjDqw3aQksw7Vj2k3AV+yhPjFRSfy664N4EDSMz d9ZQ8MbwW1E9X2Ptgzt0sRDvUxTVYXXP3MpDevsVkwCfeteDk64capGd5HMqZMFbkS7S 6zsA==
X-Gm-Message-State: AOAM530NK1HyVgyknvbS1J3ck2xykUP52OvV/wbH1xgOApfrF9a+L9Mf 2sA3636WoDgZXSCXppOeyoHreJaSsdtYuYC1IczqK96ejkk=
X-Google-Smtp-Source: ABdhPJxUyBLj5MhMq8vdbk+XsBFD74AqNjXa/xB+evGYp0IA9gjJp/+Ho43nrLd4bU4H7ckM3ZSCyJpxmRuXvh+HvqA=
X-Received: by 2002:a17:906:eb89:: with SMTP id mh9mr17245650ejb.122.1615238828297; Mon, 08 Mar 2021 13:27:08 -0800 (PST)
Received: from 1058052472880 named unknown by gmailapi.google.com with HTTPREST; Mon, 8 Mar 2021 13:27:07 -0800
From: Alvaro Retana <aretana.ietf@gmail.com>
In-Reply-To: <MW3PR11MB457060CA68F49896C284537BC1939@MW3PR11MB4570.namprd11.prod.outlook.com>
References: <CAMMESsx1NLSRj8O4B6qgmZa3sW_nTAt_8inV-rJ_sPtMPJS2Rg@mail.gmail.com> <016001d7046e$8ce7e3c0$a6b7ab40$@org.cn> <MW3PR11MB457060CA68F49896C284537BC1939@MW3PR11MB4570.namprd11.prod.outlook.com>
MIME-Version: 1.0
Date: Mon, 08 Mar 2021 13:27:07 -0800
Message-ID: <CAMMESsyGE=Mrz_URAvhX8LCT5+mm+EQK1nrfi0+cq-yTgn4UTA@mail.gmail.com>
To: "Ketan Talaulikar (ketant)" <ketant@cisco.com>, "draft-ietf-lsr-ospf-prefix-originator@ietf.org" <draft-ietf-lsr-ospf-prefix-originator@ietf.org>
Cc: John Scudder <jgs@juniper.net>, "lsr-chairs@ietf.org" <lsr-chairs@ietf.org>, "lsr@ietf.org" <lsr@ietf.org>, Christian Hopps <chopps@chopps.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/lsr/mwD1kI3hoooXEJ7m92ft91F_GQI>
Subject: Re: [Lsr] AD Review of draft-ietf-lsr-ospf-prefix-originator-07
X-BeenThere: lsr@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Link State Routing Working Group <lsr.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/lsr>, <mailto:lsr-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/lsr/>
List-Post: <mailto:lsr@ietf.org>
List-Help: <mailto:lsr-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/lsr>, <mailto:lsr-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 08 Mar 2021 21:27:12 -0000

On March 8, 2021 at 12:35:52 PM, Ketan Talaulikar (ketant) wrote:


Ketan:

Hi!

I have a couple of comments below, which I think can be handled with
other last-call comments.  I'm starting the IETF LC.

Thanks!!

Alvaro.




...
> 127 2. Protocol Extensions
>
> 129 This document defines the Prefix Source Router-ID and the Prefix
> 130 Originator Sub-TLVs for inclusion of the Router ID and a reachable
> 131 address information for the router originating the prefix as a prefix
> 132 attribute.
>
> [major] I understand that the 2 sub-TLVs are optional and complement each
> other. Is there an expectation for both to be present? Should (SHOULD/MUST)
> both be present? What if they're not?
>
> [KT] There is no dependency between the two and hence either one or both of
> them may be advertised.

Why do we need both then?  Can the users of this information figure
stuff out with only one?  After all you added the Prefix Originator
Sub-TLV for a reason. ;-)




...
> 134 2.1. Prefix Source Router-ID Sub-TLV
> ...
> 161 o OSPF Router ID : the OSPF Router ID of the OSPF router that
> 162 originated the prefix advertisement in the OSPF domain.
>
> [major] Should there be a relationship between the router ID and the
> Advertising Router field in the LSA containing the prefix? What does it mean
> if the router ID doesn't match?
>
> [KT] The value MUST match for intra-area. So we can clarify this part and if
> it does not match then the sub-TLV can be ignored. For external (e.g.
> Type 5), we cannot determine because we don't know if it was not translated
> from Type 7 to Type 5 by an NSSA ABR. Same way we cannot figure this out
> reliably for inter-area prefix advertisements. Not sure if there is anything
> we can say other than intra-area.

Right.

OLD>
   For intra-area prefix advertisements, the Prefix Source Router-ID
   Sub-TLV MUST be considered invalid and ignored if it is not the same
   as Advertising Router ID for the prefix advertisement.

NEW>
   For intra-area prefix advertisements, the Prefix Source Router-ID Sub-TLV
   MUST be considered invalid and ignored if the OSPF Router ID field is not
   the same as the Advertising Router field in the containing LSA.


For inter-area, maybe it's worth mentioning the fact that it cannot be
verified, so a rogue ABR (see more on rogue below) can inject
incorrect information.


> [major] Even though this document doesn't specify any OSPF-in-the-network
> action based on the new information, it does say that the information is
> useful for "topology analysis and traffic engineering", which means that the
> values may have an impact on route calculation (at a controller). I'm asking
> the questions about matching values because (if they don't) then it would be
> relatively easy for a rogue node to introduce non-congruent values which
> could have an effect on the controller's decision.
>
> [KT] We need to remember that we are talking about a prefix advertisement -
> a rogue would need to make a prefix advertisement first (which is considered
> for OSPF routing) and only then comes the part when this sub-TLV value is
> mismatched. Isn't the first part a bigger issue?

Yes.  But a rogue node can already do that!!  This draft adds the second part.

Note that by rogue I mean a router that has been subverted; e.g.
someone got the password and now has the ability to inject anything
into the network.  In this case authentication does not help because
the router has the proper keys.

Note that I'm not asking you to fix the problem -- just to mention the new risk.


...
> 172 2.2. Prefix Originator Sub-TLV
> ...
> 198 o Router Address: A reachable IPv4 or IPv6 router address for the
> 199 router that originated the IPv4 or IPv6 prefix advertisement.
> 200 Such an address would be semantically equivalent to what may be
> 201 advertised in the OSPFv2 Router Address TLV [RFC3630] or in the
> 202 OSPFv3 Router IPv6 Address TLV [RFC5329].
>
> [minor] "semantically equivalent" The text in §3 says that the addresses are
> the same -- what is "semantically equivalent", and is that different from
> "the same"?
>
> [KT] There are implementation which allow different loopback (i.e. node)
> addresses being specified/used for the TE Router-ID. So semantically
> indicates have similar properties (e.g. cannot be anycast) but does not have
> to be the same address technically.

Ok.  Please explain that in the text.


> 204 A prefix advertisement MAY include more than one Prefix Originator
> 205 sub-TLV, one corresponding to each of the Equal-Cost Multi-Path
> 206 (ECMP) nodes that originated the given prefix.
>
> [] Same questions as above.

You changed the text in the previous section, but not the one here.


...
> 226 If the originating node is advertising an OSPFv2 Router Address TLV
> 227 [RFC3630] or an OSPFv3 Router IPv6 Address TLV [RFC5329], then that
> 228 value is set in the Router Address field of the Prefix Originator
> 229 Sub-TLV. When the originating node is not advertising such an
> 230 address, implementations MAY support mechanisms to determine a
> 231 reachable address (e.g., advertised with the N-flag set [RFC7684] or
> 232 N-bit set [RFC8362] and either matching the OSPF Router ID or the
> 233 highest IP address) belonging to the originating node to set in the
> 234 Router Address field.
>
> [minor] "then that value is set" Which value?
>
> s/then that value is set/then the same address MUST be used
>
> [KT] I would use SHOULD - please see my previous comment about them being
> semantically equivalent but not necessary have to be the same (e.g. if an
> implementation provided a separate knob for it).

Ok.  When is it ok to not use the same address?  Put another way, why
would an implementation provide a knob in the first place?



...
> [major] "MAY support mechanisms to determine a reachable address" I don't
> understand how this action can be optional.
>
> [KT] An implementation can choose not to advertise this sub-TLV - it is
> optional and hence we are not mandating. The address just has to be a
> reachable address of that node.

The specification should be written from the point of view of an
implementation of this document.  IOW, if the functionality is
implemented would "mechanisms to determine a reachable address" be
required?   I think the answer is yes, right?

s/MAY support/MUST support   ("must" is also ok)



> [minor] "advertised with the N-flag set" Are you suggesting that if the
> N-flag is set then the Prefix Originator Sub-TLV doesn't need to be present?
> I know it was just an example, but it raises the question of: what if the
> N-flag is set and the Prefix Originator Sub-TLV is present, and the
> addresses don't match?
>
> [KT] This is about which address may be picked for advertisement in the
> Prefix Originator sub-TLV - picking a node address with N-flag set indicates
> that it is associated with that node and also that it is not anycast.

I think we could live without the example.