Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-ospf-ospfv3-segment-routing-extensions-20: (with DISCUSS and COMMENT)
Peter Psenak <ppsenak@cisco.com> Mon, 17 December 2018 11:32 UTC
Return-Path: <ppsenak@cisco.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 E6F37128D68; Mon, 17 Dec 2018 03:32:59 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.96
X-Spam-Level:
X-Spam-Status: No, score=-15.96 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-1.459, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.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 kwtT4t195hjm; Mon, 17 Dec 2018 03:32:56 -0800 (PST)
Received: from aer-iport-4.cisco.com (aer-iport-4.cisco.com [173.38.203.54]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 20A17128CE4; Mon, 17 Dec 2018 03:32:54 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=15027; q=dns/txt; s=iport; t=1545046375; x=1546255975; h=subject:to:references:cc:from:message-id:date: mime-version:in-reply-to:content-transfer-encoding; bh=QbG5PqI4JMklYo6fgc5coNA3d1juQ9hfGAsW6wYVL5E=; b=G7ANr6j030qqtODm0DXR6OHAfOrZGCi+5u2UBB+kmFfAboKs5jZXVn7H vOP3eXUd2FGgJ8iy/qRDjMrX/1O8uI7AoYdmyJ4+N6+dSoGmrfkF1+ewy 4rCULnODHpOGCdTCBS7NqJGFDuFE3IqUVymGlT0KrBWiXechvkJguaKUC g=;
X-IronPort-AV: E=Sophos;i="5.56,365,1539648000"; d="scan'208";a="8867446"
Received: from aer-iport-nat.cisco.com (HELO aer-core-4.cisco.com) ([173.38.203.22]) by aer-iport-4.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 17 Dec 2018 11:32:53 +0000
Received: from [10.147.24.16] ([10.147.24.16]) by aer-core-4.cisco.com (8.15.2/8.15.2) with ESMTP id wBHBWqup000696; Mon, 17 Dec 2018 11:32:52 GMT
To: Benjamin Kaduk <kaduk@mit.edu>
References: <154398144445.4943.7198735398003216566.idtracker@ietfa.amsl.com> <5C079200.1030701@cisco.com> <20181217055358.GC94620@kduck.kaduk.org>
Cc: The IESG <iesg@ietf.org>, draft-ietf-ospf-ospfv3-segment-routing-extensions@ietf.org, Acee Lindem <acee@cisco.com>, aretana.ietf@gmail.com, lsr-chairs@ietf.org, lsr@ietf.org
From: Peter Psenak <ppsenak@cisco.com>
Message-ID: <69190220-4994-f9c9-4adf-5016abf3a39b@cisco.com>
Date: Mon, 17 Dec 2018 12:32:51 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:45.0) Gecko/20100101 Thunderbird/45.8.0
MIME-Version: 1.0
In-Reply-To: <20181217055358.GC94620@kduck.kaduk.org>
Content-Type: text/plain; charset="windows-1252"; format="flowed"
Content-Transfer-Encoding: 7bit
X-Outbound-SMTP-Client: 10.147.24.16, [10.147.24.16]
X-Outbound-Node: aer-core-4.cisco.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/lsr/2l3rzPd85fuLTp45VXNDhzi1lI8>
Subject: Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-ospf-ospfv3-segment-routing-extensions-20: (with DISCUSS and COMMENT)
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, 17 Dec 2018 11:33:00 -0000
Hi Benjamin, please see inline (##PP): On 17/12/2018 06:53 , Benjamin Kaduk wrote: > Sorry for the slow reply -- you caught me right as I was leaving for > vacation. > > On Wed, Dec 05, 2018 at 09:53:20AM +0100, Peter Psenak wrote: >> Hi Benjamin, >> >> please see inline: >> >> On 05/12/18 04:44 , Benjamin Kaduk wrote: >>> Benjamin Kaduk has entered the following ballot position for >>> draft-ietf-ospf-ospfv3-segment-routing-extensions-20: 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 https://www.ietf.org/iesg/statement/discuss-criteria.html >>> for more information about IESG DISCUSS and COMMENT positions. >>> >>> >>> The document, along with other ballot positions, can be found here: >>> https://datatracker.ietf.org/doc/draft-ietf-ospf-ospfv3-segment-routing-extensions/ >>> >>> >>> >>> ---------------------------------------------------------------------- >>> DISCUSS: >>> ---------------------------------------------------------------------- >>> >>> What is the extensibility model for the "AF" (address family) field in the >>> OSPFv3 Extended Prefix Range TLV? That is, what do we need to say about >>> current implementations' behavior to allow future changes? (I also a >>> little bit wonder if we really need a full eight bits, but that's basically >>> aesthetic.) >> >> I don't think OSPFv3 will ever support other then IPv6 or IPv4 AF. Also >> the text says: >> >> "Prefix encoding for other address families is beyond the scope >> of this specification." > > Perhaps it would be better encoded in a 1-bit field (rather than an 8-bit > one), then? That would at least make the (lack of) semantics of the other > 7 bits more clear, as the usual "MUST set to zero on transmit and ignore on > receipt". ##PP it's too late now to change the encoding. This draft has several years of history and there are implementation shipping. Changing the encoding would cause the backward compatibility issues. > >>> >>> Some of the text in Section 8.1 (see the COMMENT section) reads like it >>> might have an "Updates" relationship with other documents, but I don't know >>> enough to be sure. Hopefully we can have a conversation to clarify the >>> situation. >> >> please see my comments below. > > Okay. > >>> >>> ---------------------------------------------------------------------- >>> COMMENT: >>> ---------------------------------------------------------------------- >>> >>> Section 1 >>> >>> Is there a start of the separate document that covers SR with the IPv6 data >>> plane that we could reference from here? >> >> this document describes OSPFv3 extension for SR with the MPLS data >> plane, not IPv6 data plane. And rfc8402 is referenced. > > I understand the difference between OSPFv3 SR with MPLS vs. IPv6 data plane > (well, at least that there is a difference). My point is that you say it > "will be specified in a separate document". If there's an existing I-D > that is the start of this work, listing it as an informative reference > seems helpful to me. (If there's not, perhaps "at a later date" would work > instead of "in a separate document".) > > But of course this is a non-blocking comment, so feel free to ignore -- I > really don't mind. > >>> >>> Section 5 >>> >>> In some cases it is useful to advertise attributes for a range of >>> prefixes. The Segment Routing Mapping Server, which is described in >>> [I-D.ietf-spring-segment-routing-ldp-interop], is an example of where >>> a single advertisement is needed to advertise SIDs for multiple >>> prefixes from a contiguous address range. >>> >>> I note that the referenced document does not use the word "range" to >>> describe the prefix being assigned multiple SIDs; it might be helpful to >>> say a few more words about how the range of prefixes gets mapped to what is >>> discussed in the linked document. >> >> "prefix being assigned multiple SIDs" - that is not what we are doing >> here. > > Hmm, I must have misspoke; sorry. My point remains, though, that if I go to > I-D.ietf-spring-segment-routing-ldp-interop and search for "range", I will > not find anything to help me know which part of that document you are > talking about. I would encourage some additional text to clarify how the > terminology used in this document relates to the terminology and work used > in the referenced document. ##PP range is not defined in I-D.ietf-spring-segment-routing-ldp-interop, it's the SRMS functionality that is defined there. The range was defined for IGPs to optimize the encoding for SRMS advertisement - with thousands of prefixes the encoding would not scale if we advertise the individual SID for every prefix independently. What about the following updated text in the OSPFv3 draft: "In some cases it is useful to advertise attributes for a range of prefixes. The Segment Routing Mapping Server, which is described in <xref target="I-D.ietf-spring-segment-routing-ldp-interop"/>, is an example of where SIDs for multiple prefixes can be advertised. To optimize such advertisement in case of multiple prefixes from a contiguous address range, OSPFv3 Extended Prefix Range TLV is defined." > >>> >>> I'm also not entirely sure how to construct the prefix range just given >>> this format description. Suppose I have an IPv4 prefix of 18.18/16 and a >>> range size of 4; my prefix length is 16 and the address prefix is encoded >>> as 0x120120000. Am I then representing the four prefixes 18.18/16, >>> 18.19/16, 18.20/16, and 18.21/16? >> >> yes. >> >>> Or am I constrained to be a subset of >>> 18.18/18 (in which case I don't know what the actual distinct prefixes >>> would be)? The examples in Section 6 suggests the former, but I would suggest >>> stating this explictly, here. >>> >> >> I would thing that the example in section 16 is clear enough. > > I generally prefer to describe the normative behavior in actual text > description instead of relying on examples to clarify the expected > behavior. That said, this is a non-blocking comment, so feel free to > retain the current text. If you did want to add something, I would > propose the strawman: > > OLD: > The range represents the contiguous set of prefixes with the same > prefix length as specified by the Prefix Length field. The set > starts with the prefix that is specified by the Address Prefix field. > The number of prefixes in the range is equal to the Range size. > > NEW: > The range represents the contiguous set of prefixes with the same > prefix length as specified by the Prefix Length field. The set > starts with the prefix that is specified by the Address Prefix field and > continues with the subsequent prefixes of the same length, forming a > contiguous block of addresses. Since the Range Size is not restricted to a > power of two, this new block of addresses may not be describable using a > single address prefix/length. The number of prefixes in the range is > equal to the Range size. > > > >> >>> Section 6 >>> >>> Should there be any discussion of the historical or future reasons why V >>> and L are separate flag bits, given that the only legal combinations are >>> currently 00 and 11, i.e., fully redundant? >> >> I would rather not get into that discussion here. > > That's fine, though even just noting the redundancy and that it exists for > [historical/...] reasons might help some readers understand more easily. > >>> >>> It may not be necessary to expand ASBR on first usage here, since it's in >>> the terminology section (and marked as "well-known" at >>> https://www.rfc-editor.org/materials/abbrev.expansion.txt). >> >> ASBR is defined in terminology section. > > Precisely; you can just use the abbreviation if you want and make the text > here shorter. ##PP done. > >>> >>> If the NP-Flag is not set, then any upstream neighbor of the Prefix- >>> SID originator MUST pop the Prefix-SID. This is equivalent to the >>> penultimate hop popping mechanism used in the MPLS dataplane. If the >>> NP-flag is not set, then the received E-flag is ignored. >>> >>> Is it going to be clear that "pop" only applies when this Prefix-SID is the >>> outermost label? (Or am I super-confused about how this is supposed to >>> work?) >> >> you can only POP the outmost label. > > Okay, thanks for confirming. > >>> >>> A similar consideration may apply to the discussion of the NP flag as well. >>> Also some redundantly expanded ABR and ASBR here as well. >>> >>> This is useful, e.g., when the originator of the Prefix- >>> SID is the final destination for the related prefix and the >>> originator wishes to receive the packet with the original EXP >>> bits. >>> >>> Are we still supposed to call these the EXP bits after RFC 5462? (I had to >>> look up what they were; not sure if this means that we should put a >>> reference in for them or not, given that I'm not a practitioner here.) >> >> I can rename to "Traffic Class" if you insist. > > I do not insist; I'm just trying to understand the common > usage/conventions. ##PP it has been updated. thanks, Peter > >>> >>> When the M-Flag is set, the NP-flag and the E-flag MUST be ignored on >>> reception. >>> >>> Do I understand this correctly that this is because the mapping server may >>> not know the needs of the individual routers, and if the routers had >>> specific needs they should advertise the SIDs directly (which would take >>> precedence over the mapping server's advertisement)? If so, given the >>> following discussion, I wouldn't suggest adding any extra text about it, >>> but I do want to make sure I'm understanding it properly. >> >> your understanding is correct. There is also some more details in the >> next section. >> >>> >>> When a Prefix-SID is advertised in the OSPFv3 Extended Prefix Range >>> TLV, then the value advertised in the Prefix SID Sub-TLV is >>> interpreted as a starting SID/Label value. >>> >>> Am I remembering correctly that Prefix-SID can appear multiple times within >>> OSPFv3 Extended Prefix Range? Then each Prefix-SID would be indicating a >>> distinct range but adhering to the same parameters of the range that are >>> indicated in the Extended Prefix Range TLV? This seems a little weird on >>> the face of it (as opposed to a single Prefix-SID sub-TLV per Extended >>> Prefix Range), but maybe there's a use case that I'm missing on first >>> glance. >> >> the use case is when you need to advertise Prefix-SID for different >> Algorithms. >> >>> >>> Section 7.1 >>> >>> (Probably off-topic: what's the use case for assigning the same Adj-SID to >>> different adjacencies?) >> >> load balancing of traffic over multiple links. > > Thanks for helping me understand better (here and above). > >>> >>> Section 7.2 >>> >>> Perhaps add DR to the terminology section (or expand on first usage)? >> >> ok, will do. >> >>> >>> Section 8.1 >>> >>> When a Prefix-SID is advertised by the Mapping Server, which is >>> indicated by the M-flag in the Prefix-SID Sub-TLV (Section 6), the >>> route type as implied by the LSA type is ignored and the Prefix-SID >>> is bound to the corresponding prefix independent of the route type. >>> >>> Is this considered to be Update-ing the behavior of another RFC? >> >> no. All we say is that the LSA type in which the SID from SRMS is >> advertised does not need to match the route-type of the prefix for which >> the SID is adverised. > > Okay, thanks. > >>> >>> Advertisement of the Prefix-SID by the Mapping Server using an Inter- >>> Area Prefix TLV, External-Prefix TLV, or Intra-Area-Prefix TLV >>> [RFC8362] does not itself contribute to the prefix reachability. The >>> NU-bit MUST be set in the PrefixOptions field of the LSA which is >>> used by the Mapping Server to advertise SID or SID Range, which >>> prevents the advertisement from contributing to prefix reachability. >>> >>> This MUST reads like it is restating an existing normative requirement from >>> elsewhere (in which case we should probably just state it as fact and >>> provide a reference). Or is it a new requirement (in which case Updates: >>> might be in order)? >> >> not sure I understand. NU-bit is defined in rfc5340. We are just reusing >> it here. I can add a reference to it. > > Thanks for the pointer. I was wondering whether RFC5340 itself would > require the NU bit to be set in this situation -- from a quick skim, it > seems that it does not, so there's nothing to do here (other than add that > reference, if you want.) > >>> >>> Area-scoped OSPFv3 Extended Prefix Range TLVs are propagated between >>> areas. Similar to propagation of prefixes between areas, an ABR only >>> propagates the OSPFv3 Extended Prefix Range TLV that it considers to >>> be the best from the set it received. The rules used to pick the >>> best OSPFv3 Extended Prefix Range TLV are described in Section 5. >>> >>> I don't see any usage of "best" in Section 5; I do see direction to use the >>> numerically smallest Instance ID when multiple Extended Prefix Range TLVs >>> advertise *the exact same range*. But this in and of itself does not >>> safisfy the claim here that there is guidance to pick a single best >>> Extended Prefix Range TLV, so I'm left confused as to what's supposed to >>> happen. Perhaps this was intended as a transition to Section 8.2 instead >>> of referring back to Section 5 (especially considering that Section 8.1 is >>> supposed to be intra-area but this topic is inter-area)? >>> (This sort of dangling/unclear internal reference would normally be a >>> DISCUSS, but it seems very likely this is just a stale section number and >>> not a real problem, so I'm keeping it in the COMMENT section for now.) >> >> right, I will remove the reference to section 5 and correct the text. >> >>> >>> Section 8.4.1 >>> >>> Do we need a reference for 2-Way and FULL? >> >> these are standard OSPF adjacency states. > > Okay. Sorry for my ignorance here (and throughout), and thank you again > for your patient explanations of the "basic concepts". > >>> >>> Section 9 >>> >>> I would normally expect some text about "IANA has made permanent the >>> following temporary allocations" or similar, so the reader can quickly tell >>> that this is not a case of codepoint squatting. >> >> well, I guess what is important is that the IANA allocations has been made. > > Indeed. > > -Benjamin > . >
- [Lsr] Benjamin Kaduk's Discuss on draft-ietf-ospf… Benjamin Kaduk
- Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-… Peter Psenak
- Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-… Benjamin Kaduk
- Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-… Benjamin Kaduk
- Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-… Peter Psenak
- Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-… Peter Psenak
- Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-… Benjamin Kaduk
- Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-… Acee Lindem (acee)
- Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-… Peter Psenak
- Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-… Peter Psenak
- Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-… Benjamin Kaduk
- Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-… Benjamin Kaduk
- Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-… Peter Psenak
- Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-… Benjamin Kaduk
- Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-… Peter Psenak
- Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-… Benjamin Kaduk
- Re: [Lsr] Benjamin Kaduk's Discuss on draft-ietf-… Peter Psenak