Hi Alvaro - Thanks for the extensive review. 

Hi Peter - Thanks for the addressing all the comments. 

See one inline. 

On 3/16/20, 7:52 AM, "Peter Psenak" <[email protected]> wrote:

    Hi Alvaro,
    
    thanks for your comments.
    
    Let's first close the ISIS ELC draft before starting to work on OSPF 
    one, as many comments are common and will be applicable to both ISIS and 
    OSPF variants.
    
    Please see inline (##PP):
    
    On 29/02/2020 06:00, Alvaro Retana wrote:
    > Dear authors:
    > 
    > This is my review of draft-ietf-isis-mpls-elc-10.  I reviewed this
    > document alongside draft-ietf-ospf-mpls-elc-12, so many comments are
    > the same/similar.  Thank you for the work in both of them!
    > 
    > Besides the in-line comments, I want to point out here that this
    > specification is incomplete.  It needs to have (1) a formal
    > description of the new MSD-Type (similar to §5/rfc8491), and (2) a
    > discussion of the interaction with the BMI-MSD.
    > 
    > I will progress both documents together, so I will wait for both of
    > them to address my comments before starting their IETF LC.
    > 
    > Thanks!!
    > 
    > Alvaro.
    > 
    > 
    > [Line numbers from idnits.]
    > 
    > ...
    > 18        Abstract
    > 
    > 20           Multiprotocol Label Switching (MPLS) has defined a mechanism 
to load-
    > 21           balance traffic flows using Entropy Labels (EL).  An ingress 
Label
    > 22           Switching Router (LSR) cannot insert ELs for packets going 
into a
    > 23           given Label Switched Path (LSP) unless an egress LSR has 
indicated
    > 24           via signaling that it has the capability to process ELs, 
referred to
    > 25           as Entropy Label Capability (ELC), on that tunnel.  In 
addition, it
    > 26           would be useful for ingress LSRs to know each LSR's 
capability for
    > 27           reading the maximum label stack depth and performing 
EL-based load-
    > 28           balancing, referred to as Entropy Readable Label Depth 
(ERLD).  This
    > 29           document defines a mechanism to signal these two 
capabilities using
    > 30           IS-IS.  These mechanisms are particularly useful, where label
    > 31           advertisements are done via protocols like IS-IS.
    > 
    > [nit] s/  /as the Entropy Label Capability
    
    ##PP
    done
    
    > 
    > [minor] "protocols like IS-IS"  That last sentence sounds as if there
    > were other options; for example advertise labels with OSPF and then
    > use the extensions here.  It's just a minor point, but I think that
    > maybe that last sentence is not needed.
    
    ##PP
    removed last sentence
    
    > 
    > 
    > ...
    > 81        1.  Introduction
    > 
    > 83           [RFC6790] describes a method to load-balance Multiprotocol 
Label
    > 84           Switching (MPLS) traffic flows using Entropy Labels (EL).  
"The Use
    > 85           of Entropy Labels in MPLS Forwarding" [RFC6790] introduces 
the
    > 86           concept of Entropy Label Capability (ELC) and defines the 
signalings
    > 87           of this capability via MPLS signaling protocols.  Recently,
    > 88           mechanisms have been defined to signal labels via link-state 
Interior
    > 89           Gateway Protocols (IGP) such as IS-IS
    > 90           [I-D.ietf-isis-segment-routing-extensions].  In such 
scenarios, the
    > 91           defined signaling mechanisms are inadequate.  This draft 
defines a
    > 92           mechanism to signal the ELC using IS-IS.  This mechanism is 
useful
    > 93           when the label advertisement is also done via IS-IS.
    > 
    > [nit] s/"The Use of Entropy Labels in MPLS Forwarding" [RFC6790]/It also
    
    ##PP
    done
    > 
    > [nit] s/signalings/signaling
    
    ##PP
    done
    
    > 
    > [nit] "In such scenarios, the defined signaling mechanisms are
    > inadequate." Take this sentence out: the rest of the paragraph is
    > enough.
    
    ##PP
    done
    > 
    > 
    > 95           In addition, in the cases where LSPs are used for whatever 
reasons
    > 96           (e.g., SR-MPLS [I-D.ietf-spring-segment-routing-mpls]), it 
would be
    > 97           useful for ingress LSRs to know each intermediate LSR's 
capability of
    > 98           reading the maximum label stack depth and performing 
EL-based load-
    > 99           balancing.  This capability, referred to as Entropy Readable 
Label
    > 100          Depth (ERLD) as defined in 
[I-D.ietf-mpls-spring-entropy-label] may
    > 101          be used by ingress LSRs to determine the position of the EL 
label in
    > 102          the stack, and whether it's necessary to insert multiple ELs 
at
    > 103          different positions in the label stack.
    > 
    > [nit] s/in the cases where LSPs are used for whatever reasons/in cases
    > where LSPs are used
    
    ##PP
    done
    > 
    > 
    > 105       2.  Terminology
    > 
    > 107          This memo makes use of the terms defined in [RFC6790], 
[RFC4971] and
    > 108          [I-D.ietf-mpls-spring-entropy-label].
    > 
    > [minor] I'm not sure why rfc4971 is referenced here; what terminology
    > is needed from it?
    
    ##PP
    removed the reference to rfc4971
    
    
    > 
    > 
    > ...
    > 116       3.  Advertising ELC Using IS-IS
    > 
    > 118          Even though ELC is a property of the node, in some cases it 
is
    > 119          advantageous to associate and advertise the ELC with a 
prefix.  In a
    > 120          multi-area network, routers may not know the identity of the 
prefix
    > 121          originator in a remote area, or may not know the 
capabilities of such
    > 122          originator.  Similarly in a multi-domain network, the 
identity of the
    > 123          prefix originator and its capabilities may not be known to 
the
    > 124          ingress LSR.
    > 
    > [minor] Is there a difference that are you trying to highlight between
    > multi-area and multi-domain?  The last two sentences seem redundant to
    > me; using "domain" should be enough.
    
    ##PP
    Multi-area and multi-domain are two different cases. I believe it is 
    important to keep both in the text.

I agree with Peter. It might be possible to combine these in one sentence but 
both case should be included. 

Thanks,
Acee
    
        
    > 
    > 
    > 126          One bit of the "Bit Values for Prefix Attribute Flags 
Sub-TLV"
    > 127          registry defined in [RFC7794] (Bit 3 is desired) is to be 
assigned by
    > 128          the IANA for the ELC.  If a router has multiple line cards, 
the
    > 129          router MUST NOT announce the ELC for any prefixes that are 
locally
    > 130          attached unless all of its line-cards are capable of 
processing ELs.
    > 131          If a router supports ELs on all of its line-cards, it SHOULD 
set the
    > 132          ELC for every local host prefix it advertises in IS-IS.
    > 
    > [major] The first sentence is not needed because IANA has already
    > assigned the bit, and any requests should be in the IANA
    > Considerations section.  Perhaps change to something like:
    > 
    >        Bit 3 in the Prefix Attribute Flags [RFC7794] is used as the ECL 
Flag
    >        (E-flag), as shown in Figure 1.
    
    ##PP
    done
    
    > 
    > 
    > [major] From a general router architecture point of view, I understand
    > what you mean by line-card.  But, strictly speaking from a
    > specification point of view, what is a line-card?  Would using
    > "interface" instead be an acceptable generalization?
    
    ##PP
    change to interface
    > 
    > 
    > [minor] Is there a difference between "prefixes that are locally
    > attached" and a "local host prefix"?  Are all locally-attached
    > prefixes host prefixes (/32 or /128)?
    
    ##PP
    changed to "local host prefix"
    
    > 
    > 
    > [major] "it SHOULD set the ELC for every local host prefix"  If ELs
    > are supported in all the interfaces, when would a router not set the
    > ELC?  IOW, why is "MUST" not used instead of "SHOULD"?
    
    ##PP
    advertising ELC is not a MUST. It's an optional information that the 
    originator should advertise, but if it is not, it is not going to break 
    anything really.
    
    > 
    > 
    > [major/related] The last two sentences seem to be redundant -- I think
    > that only the second one is needed; suggestion (assuming my
    > interpretation of the questions above):
    
    ##PP
    if we only keep the second sentence, the reader may not know what to do 
    in case where some interfaces do not support ELC. I believe it is good 
    to keep both.
    
    > 
    >     If a router supports ELs on all of its interfaces, it MUST set the 
E-flag
    >     (ELC Flag) for every local prefix it advertises.
    > 
    > 
    > 134                 0 1 2 3 4 5 6 7...
    > 135                +-+-+-+-+-+-+-+-+...
    > 136                |X|R|N|E|        ...
    > 137                +-+-+-+-+-+-+-+-+...
    > 138                      Figure 1: Prefix Attribute Flags
    > 
    > 140                      E-flag: ELC Flag (Bit 3)
    > 141                          Set for local host prefix of the originating 
node
    > 142                          if it supports ELC.
    > 
    > [nit] Justify the description in line with the text (move it to the left).
    
    ##PP
    done
    
    > 
    > 
    > 144          When a router leaks a prefix between two levels (upwards or
    > 145          downwards), it MUST preserve the ELC signaling for this 
prefix.
    > 
    > [nit] Going up is not really leaking. ;-)
    
    ##PP
    ok, changed to "propagate".
    
    > 
    > [minor] An Informative reference to rfc5302 would be nice.
    
    ##PP
    added.
    
    > 
    > Suggestion>
    > 
    >     When a router distributes a prefix between two levels [RFC5302] it 
MUST
    >     preserve the E-flag setting.
    
    
    ##PP
    I prefer:
    
    "When a router propagates a prefix between ISIS levels [RFC5302], it 
    MUST preserve the ELC signaling for this prefix."
    
    
    > 
    > 
    > 147          When redistributing a prefix between two IS-IS protocol 
instances or
    > 148          redistributing from another protocol to an IS-IS protocol 
instance, a
    > 149          router SHOULD preserve the ELC signaling for that prefix.  
The exact
    > 150          mechanism used to exchange ELC between protocol instances 
running on
    > 151          an ASBR is outside of the scope of this document and is
    > 152          implementation specific.
    > 
    > [minor] s/ELC signaling/ELC setting
    
    ##PP
    we use "signaling" for the inter-area propagation, I would prefer to 
    keep the same terminology for the redistribution.
    
    
    > 
    > [nit] Please expand ASBR.
    
    ##PP
    done.
    
    > 
    > [nit] s/ and is implementation specific./.
    
    ##PP
    done
    
    > 
    > 
    > 154       4.  Acknowledgements
    > 
    > [major] Move this section to just before the References.
    
    ##PP
    done
    
    > 
    > 
    > ...
    > 161       5.  Advertising ERLD Using IS-IS
    > 
    > [major] draft-ietf-mpls-spring-entropy-label says that "To advertise
    > an ERLD value, a SPRING router:  MUST be entropy label capable".  This
    > requirement must be translated to this document so that the ERLD is
    > only advertised if the ELC is also advertised.  I'm assuming that the
    > ERLD should be ignored if the ELC is not advertised -- but that should
    > be explicitly defined as well.  If the ELC is advertised, but the ERLD
    > isn't, what value should be assumed, 0?
    
    
    ##PP
    RFC8662 already set the rules on when the ERLD can be advertised and 
    that behavior is orthogonal to protocol which is being used to advertise 
    the ERLD/ELC.
    
    Same in terms of what should be assumed when the ELC is advertised, but 
    ERLD is not - has nothing to do with the advertising protocol - should 
    be specified in RFC8662
    
    I don't feel any of the above should be specified in the IGP ELC drafts.
    
    
    
    > 
    > 
    > 163          A new MSD-type of the Node MSD ((Maximum SID Depth) sub-TLV
    > 164          [RFC8491], called ERLD is defined to advertise the ERLD of a 
given
    > 165          router.  As shown in Figure 2, it is formatted as described 
in
    > 166          [RFC8491] with a new MSD-Type code to be assigned by IANA 
(the type
    > 167          code of 2 is desired) and the Value field is set to the ERLD 
in the
    > 168          range between 0 to 255.  The scope of the advertisement 
depends on
    > 169          the application.  If a router has multiple line-cards with 
different
    > 170          capabilities of reading the maximum label stack depth, the 
router
    > 171          MUST advertise the smallest one.
    > 
    > [minor] "new MSD-type...called ERLD is defined to advertise the ERLD"
    > I suggest that you call the new MSD ERLD-MSD, to differentiate ERLD
    > from ERLD. ;-)
    
    ##PP
    changed to:
    
    "A new MSD-type <xref target="RFC8491"/>, called ERLD is defined to
    advertise the ERLD of a given router"
    > 
    > 
    > [major] s/a new MSD-Type code to be assigned by IANA (the type code of
    > 2 is desired)/the MSD-Type set to 2
    > IANA already assigned.
    
    ##PP
    done
    
    > 
    > [minor] s/Value/MSD-Value
    
    ##PP
    done.
    
    > 
    > 
    > ...
    > 180          When the ERLD MSD-Type is received in the Link MSD Sub-TLV, 
it MUST
    > 181          be ignored.
    > 
    > [nit] s/When the/If the
    
    ##PP
    done
    > 
    > 
    > 183       6.  Signaling ELC and ERLD in BGP-LS
    > ...
    > 188          The ELC Flag included in the Prefix Attribute Flags sub-TLV, 
as
    > 189          defined in Section 3, is advertised using the Prefix 
Attribute Flags
    > 190          TLV (TLV 1170) of the BGP-LS IPv4/IPv6 Prefix NLRI Attribute 
as
    > 191          defined in section 2.3.2 of
    > 192          [I-D.ietf-idr-bgp-ls-segment-routing-ext].
    > 
    > [nit] Suggestion>
    > 
    >     The ELC is advertised using the Prefix Attribute Flags TLV as defined 
in
    >     [I-D.ietf-idr-bgp-ls-segment-routing-ext].
    
    ##PP
    done
    
    > 
    > 194          The ERLD MSD-type introduced for IS-IS in Section 5 is 
advertised
    > 195          using the Node MSD TLV (TLV 266) of the BGP-LS Node NLRI 
Attribute as
    > 196          defined in section 3 of 
[I-D.ietf-idr-bgp-ls-segment-routing-msd].
    > 
    > [nit] Suggestion>
    > 
    >     The ERLD-MSD is advertised using the Node MSD TLV as defined in
    >     [I-D.ietf-idr-bgp-ls-segment-routing-msd].
    
    ##PP
    done
    
    > 
    > 
    > 198       7.  IANA Considerations
    > 
    > 200          IANA is requested to allocate the E-bit (bit position 3 is 
desired)
    > 201          from the "Bit Values for Prefix Attribute Flags Sub-TLV" 
registry.
    > 
    > 203          IANA is requested to allocate a MSD type (the type code of 2 
is
    > 204          desired) from the "IGP MSD Types" registry for ERLD.
    > 
    > [major] IANA has already assigned the values.  Suggestion>
    > 
    >     Early allocation has been done by IANA for this document as follows:
    > 
    >     - Bit 3 in the Bit Values for Prefix Attribute Flags Sub-TLV registry 
has
    >     been assigned to the ELC Flag.  IANA is asked to update the registry 
to
    >     reflect the name used in this document: ECL Flag (E-flag).
    > 
    >     - Type 2 in the IGP MSD-Types registry has been assigned for the 
ERLD-MSD.
    >     IANA is asked to update the registry to reflect the name used in this
    >     document: ERLD-MSD.
    
    ##PP
    done
    
    > 
    > 
    > 206       8.  Security Considerations
    > 
    > 208          The security considerations as described in [RFC4971] nd
    > 209          [I-D.ietf-mpls-spring-entropy-label] are applicable to this 
document.
    > 
    > [minor] Why?  Also, I think that some of the other references should
    > be added here.  Suggestion:
    > 
    >     This document specifies the ability to advertise additional node
    >     capabilities using IS-IS and BGP-LS.  As such, the security 
considerations
    >     as described in [RFC4971], [RFC7752], [RFC7794], [RFC8491],
    >     [I-D.ietf-idr-bgp-ls-segment-routing-ext],
    >     [I-D.ietf-idr-bgp-ls-segment-routing-msd] and
    >     [I-D.ietf-mpls-spring-entropy-label] are applicable to this document.
    
    ##PP
    done
    > 
    > 
    > 211          Incorrectly setting the E flag (ELC capable) (during 
origination,
    > 212          leaking or redistribution) may lead to black-holing of the 
traffic on
    > 213          the egress node.
    > 
    > [minor] s/E flag (ELC capable)/E flag
    
    ##PP
    
    done
    
    > 
    > [minor] s/during origination, leaking or redistribution/during
    > origination or redistribution
    
    ##PP
    change to:
    
    "during origination, propagation or redistribution"
    
    > 
    > 
    > [major] "...may lead to black-holing of the traffic on the egress
    > node."  I'm not sure I understand how, but the ELC advertisement
    > should be accompanied by the ERLD-MSD -- see my questions at the
    > beginning of §5.
    
    ##PP
    the text talks about the ELC flag only, not about ERLD. If the egress 
    sets the E flag, while it is not capable of ELC processing the traffic 
    could be dropped at egress PE - that's what the text says and it is correct.
    
    It is not mandatory to advertise ERLD if the node is ELC capable. It is 
    however not allowed to advertise ERLD if the node is not ELC capable by 
    RFC8662.
    
    > 
    > 
    > 215          Incorrectly setting of the ERLD value may lead to poor 
load-balancing
    > 216          of the traffic.
    > 
    > [minor] "may lead to poor load-balancing"  If the ERLD is low, then
    > the traffic may not be load balanced at all...that is not "poor", it
    > is "0".
    
    ##PP
    would "lead to poor or no load-balancing" be good enough?
    
    > 
    > 
    > ...
    > 244       10.1.  Normative References
    > ...
    > 259          [I-D.ietf-mpls-spring-entropy-label]
    > 260                     Kini, S., Kompella, K., Sivabalan, S., Litkowski, 
S.,
    > 261                     Shakir, R., and J. Tantsura, "Entropy label for 
SPRING
    > 262                     tunnels", draft-ietf-mpls-spring-entropy-label-12 
(work in
    > 263                     progress), July 2018.
    > 
    > == Outdated reference: draft-ietf-mpls-spring-entropy-label has been
    >     published as RFC 8662
    
    ##PP
    done
    > 
    > 
    > 265          [I-D.ietf-spring-segment-routing-mpls]
    > 266                     Bashandy, A., Filsfils, C., Previdi, S., 
Decraene, B.,
    > 267                     Litkowski, S., and R. Shakir, "Segment Routing 
with MPLS
    > 268                     data plane", 
draft-ietf-spring-segment-routing-mpls-22
    > 269                     (work in progress), May 2019.
    > 
    > == Outdated reference: draft-ietf-spring-segment-routing-mpls has been
    >     published as RFC 8660
    
    ##done
    
    > 
    > [minor] This reference can be Informative.
    
    ##PP
    done
    
    
    > 
    > 
    > ...
    > 276          [RFC4971]  Vasseur, JP., Ed., Shen, N., Ed., and R. 
Aggarwal, Ed.,
    > 277                     "Intermediate System to Intermediate System 
(IS-IS)
    > 278                     Extensions for Advertising Router Information", 
RFC 4971,
    > 279                     DOI 10.17487/RFC4971, July 2007,
    > 280                     <https://www.rfc-editor.org/info/rfc4971>.
    > 
    > ** Obsolete normative reference: RFC 4971
    > ** Replace with rfc7981
    
    ##PP
    done
    
    > 
    > 
    > ...
    > 307       10.2.  Informative References
    > 
    > 309          [I-D.ietf-isis-segment-routing-extensions]
    > 310                     Previdi, S., Ginsberg, L., Filsfils, C., 
Bashandy, A.,
    > 311                     Gredler, H., and B. Decraene, "IS-IS Extensions 
for
    > 312                     Segment Routing", draft-ietf-isis-segment-routing-
    > 313                     extensions-25 (work in progress), May 2019.
    > 
    > == Outdated reference: draft-ietf-isis-segment-routing-extensions has been
    >     published as RFC 8667
    
    ##PP
    done
    
    
    thanks,
    Peter
    > 
    > 
    
    

_______________________________________________
Lsr mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/lsr

Reply via email to