Subject: Alvaro Retana's Discuss on draft-ietf-6man-segment-routing-header-22: (with DISCUSS and COMMENT)

From: Alvaro Retana via Datatracker <[email-masked]>
Date: Wed, 04 Sep 2019 23:13:46 -0700

Alvaro Retana has entered the following ballot position for
draft-ietf-6man-segment-routing-header-22: 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-6man-segment-routing-header/

----------------------------------------------------------------------
DISCUSS:
----------------------------------------------------------------------

The new "Segment Routing Header TLVs" registry (§8.2) includes a range "for
TLVs that may change en route".  However, I couldn't find a specification for
these types of TLVs.  The only clues come from §4.3.1 (FIB Entry Is Locally
Instantiated SRv6 SID), where it says:

   Processing this SID modifies the Segments Left and, if configured to
   process TLVs, it may modify the "variable length data" of TLV types
   that change en route.  Therefore Segments Left is mutable and TLVs
   that change en route are mutable.  The remainder of the SRH (Flags,
   Tag, Segment List, and TLVs that do not change en route) are
   immutable while processing this SID.

I am balloting DISCUSS because the description of "TLVs that may change en
route" is not clear or specific enough.  I would like to see a clear
specification of what "TLVs that may change en route" are, *AND* corresponding
instructions to the Designated Experts-to-be.

   Some related questions that come to mind include: Where can these TLVs be
   processed/changed?  If the data is modified, what about the alignment,
   should the Padding TLVs be also changed?  If no data is left, can the TLV be
   removed?  The instructions above (for the SRV6 SID) seem generic enough to
   apply to other potential future SIDs, what type of variation is expected?

----------------------------------------------------------------------
COMMENT:
----------------------------------------------------------------------

(1) I support Ben's DISCUSS.

Adding to his HMAC concerns, §2.1 says that when "processing the SID defined in
Section 4.3.1, all TLVs are ignored unless local configuration indicates
otherwise (Section 4.3.1.1.1).  Thus, TLV and HMAC support is optional for any
implementation..."  This seems to indicate that, regardless of the HMAC
security properties, it will be ignored by default.

(2) §4.1.1: "When a source does not require the entire SID list to be preserved
in the SRH, a reduced SRH may be used."  When does a source require the entire
SID list to be preserved?  Please provide an example of these cases.

(3) §8.1: Given that the SRH Flags Bits are limited, I would like to see
instructions to the DEs-to-be about the type of information that may need to be
encoded in the Header.