Re: [Lsr] Comments on draft-zhu-lsr-isis-sr-vtn-flexalgo-07

Peter Psenak <ppsenak@cisco.com> Tue, 02 April 2024 09:05 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 50BC7C14F698; Tue, 2 Apr 2024 02:05:45 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -9.656
X-Spam-Level:
X-Spam-Status: No, score=-9.656 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.08, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_NONE=0.001, T_KAM_HTML_FONT_INVALID=0.01, T_SPF_HELO_PERMERROR=0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 gSxGzygiNXvZ; Tue, 2 Apr 2024 02:05:41 -0700 (PDT)
Received: from aer-iport-8.cisco.com (aer-iport-8.cisco.com [173.38.203.70]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 07D85C14F6A4; Tue, 2 Apr 2024 02:05:39 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cisco.com; i=@cisco.com; l=62510; q=dns/txt; s=iport; t=1712048740; x=1713258340; h=message-id:date:mime-version:subject:to:references:from: in-reply-to; bh=o904IwBTXEQH5fpwq3QJj+tggtyJ3aKw9jbF9R6O2K0=; b=benvAzSS5VLZXOD3u3NbpjGewmWAn76jUfC1JpEo3bZ+8ioepPXRmNJ3 hg2LY+zpd9ZfJMBS8ratfCQDj1KxwTMoP9NUct8GR5rMtmMgSCYznSB8L WTywifIAwKYQfuHb1a3uPaf71YU9JWgGXeEBkDlX1jPL0kdc6EYGTfjxg 0=;
X-CSE-ConnectionGUID: ub1lZiFySuK0m46vhngCKg==
X-CSE-MsgGUID: YlGav6ZeTcOmP61WE3T7yA==
X-IronPort-AV: E=Sophos;i="6.07,174,1708387200"; d="scan'208,217";a="8760831"
Received: from aer-iport-nat.cisco.com (HELO aer-core-12.cisco.com) ([173.38.203.22]) by aer-iport-8.cisco.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Apr 2024 09:05:38 +0000
Received: from [10.209.218.218] ([10.209.218.218]) by aer-core-12.cisco.com (8.15.2/8.15.2) with ESMTP id 43295cvL016378; Tue, 2 Apr 2024 09:05:38 GMT
Content-Type: multipart/alternative; boundary="------------0UkgSz6W0NuGZxaaxu0q0b6h"
Message-ID: <7910c172-1870-4c83-93f8-363a9240d0ba@cisco.com>
Date: Tue, 02 Apr 2024 11:05:37 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
To: "Dongjie (Jimmy)" <jie.dong=40huawei.com@dmarc.ietf.org>, "Les Ginsberg (ginsberg)" <ginsberg@cisco.com>, "lsr@ietf.org" <lsr@ietf.org>, "draft-zhu-lsr-isis-sr-vtn-flexalgo.authors@ietf.org" <draft-zhu-lsr-isis-sr-vtn-flexalgo.authors@ietf.org>
References: <BY5PR11MB4337517A2F56C0502753F69FC1332@BY5PR11MB4337.namprd11.prod.outlook.com> <06c715d1b00f4a2fa3ed2ba0fdacc93a@huawei.com> <BY5PR11MB43372435F6AA3AC5376EFE16C1322@BY5PR11MB4337.namprd11.prod.outlook.com> <0291e80655cd4c07abaeb67a318caa2b@huawei.com> <567eb022-759c-41df-860a-81e2634cbd8e@cisco.com> <b98e8f54cadd4536bfef4f483a7b976e@huawei.com> <ec9000c1-17da-47e5-bda4-992f0eeb292d@cisco.com> <ca89c6ab7a2a4345954a637011fc5bab@huawei.com>
Content-Language: en-US
From: Peter Psenak <ppsenak@cisco.com>
In-Reply-To: <ca89c6ab7a2a4345954a637011fc5bab@huawei.com>
X-Outbound-SMTP-Client: 10.209.218.218, [10.209.218.218]
X-Outbound-Node: aer-core-12.cisco.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/lsr/i39yORQLo_cWi4J2J4GH9IYwrD8>
Subject: Re: [Lsr] Comments on draft-zhu-lsr-isis-sr-vtn-flexalgo-07
X-BeenThere: lsr@ietf.org
X-Mailman-Version: 2.1.39
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: Tue, 02 Apr 2024 09:05:45 -0000

Hi Jie,

On 02/04/2024 10:57, Dongjie (Jimmy) wrote:
>
> Hi Peter,
>
> Thanks for the quick reply.
>
> Do you mean IGP L2 bundle should be abandoned?
>
> Quote from RFC 8668:
>
> “If entities external to IS-IS wish to control traffic flows on the 
> individual physical links that comprise the Layer 2 interface bundle, 
> link attribute information about the bundle members is required.This 
> document introduces the ability for IS-IS to advertise the link 
> attributes of Layer 2 (L2) Bundle Members. “
>

no, absolutely not.

I was referring to the new E-bit.


thanks,
Peter

> Best regards,
>
> Jie
>
> *From:*Peter Psenak <ppsenak@cisco.com>
> *Sent:* Tuesday, April 2, 2024 4:47 PM
> *To:* Dongjie (Jimmy) <jie.dong@huawei.com>; Les Ginsberg (ginsberg) 
> <ginsberg@cisco.com>; lsr@ietf.org; 
> draft-zhu-lsr-isis-sr-vtn-flexalgo.authors@ietf.org
> *Subject:* Re: [Lsr] Comments on draft-zhu-lsr-isis-sr-vtn-flexalgo-07
>
> Hi Jie,
>
> On 02/04/2024 10:18, Dongjie (Jimmy) wrote:
>
>     Hi Peter,
>
>     Please see inline:
>
>     *From:*Peter Psenak <ppsenak@cisco.com> <mailto:ppsenak@cisco.com>
>     *Sent:* Thursday, March 21, 2024 5:39 PM
>     *To:* Dongjie (Jimmy) <jie.dong=40huawei.com@dmarc.ietf.org>
>     <mailto:jie.dong=40huawei.com@dmarc.ietf.org>; Les Ginsberg
>     (ginsberg) <ginsberg@cisco.com> <mailto:ginsberg@cisco.com>;
>     lsr@ietf.org; draft-zhu-lsr-isis-sr-vtn-flexalgo.authors@ietf.org
>     *Subject:* Re: [Lsr] Comments on draft-zhu-lsr-isis-sr-vtn-flexalgo-07
>
>     Hi Jie,
>
>     On 21/03/2024 02:34, Dongjie (Jimmy) wrote:
>
>         Hi Les,
>
>         Thanks for providing your opinion with an example.
>
>         In your example, the default IGP metric is used, which is
>         normally calculated based on bandwidth. While Flex-Algo can
>         support metric types such as TE metric and delay.
>
>         When Flex-Algo is used as the control plane of NRP, usually
>         the metric types other than IGP metric would be used. We could
>         add some notes about the selection of metric type to this
>         document. In most cases per Flex-Algo metric type would not be
>         needed.
>
>         Your proposal of making each member link an L3 link is an
>         alternative solution, while that would bring back the problems
>         we discussed during the L2 bundle standardization, and can
>         impact the network stability and scalability.
>
>         Your second proposal (controller based path computation and
>         construction) works for scenarios where strict TE-path
>         SID-list is used to steer traffic into specific bundle member
>         links on each hop, while traffic with Flex-Algo prefix SIDs
>         will be mixed up and ECMP among the member links of the L3
>         interface.
>
>         So we do see there is a gap in using Flex-Algo to support NRP,
>         and would like to hear feedbacks from the WG on possible
>         solutions (including this one).
>
>     there is no gap in Flex-algo. Flex-algo is a routing concept and
>     as such only works on L3 constructs. That will not change.
>
>     *[Jie] Fully agree Flex-Algo is a routing concept and works on L3
>     control plane, while it shows a gap in how to map Flex-Algos to
>     different subset of resources for network slicing. Currently
>     traffic of different Flex-Algos would share the same set of
>     resources on the L3 outgoing interfaces. *
>
>     The problem is that you are trying to mix the routing (flex-algo)
>     with the PHB/QOS. These are two different things.
>
>     You can achieve PHP/QOS by marking the packet and give it a
>     necessary treatment you need at each hop, e.g. reserve certain
>     bandwidth to it, or even reserve a L2 bundle for it if that's what
>     you want.
>
>     *[Jie] QoS PHB is per-hop behavior, which cannot provide
>     end-to-end resource guarantee at NRP/Slice granularity. Consider
>     the difference between DiffServ and IntServ. And within each NRP,
>     QoS is still needed. *
>
>     *Reserving an L2 bundle member link for NRP is the approach
>     proposed in this document. *
>
>     Alternatively, you can classify the traffic at each hop using
>     other mechanisms, but it becomes slow and problematic.
>
>     *[Jie] Agree that per-hop traffic classification has many problems. *
>
>     What you propose is to overwrite the routing decision and instead
>     of using the L3 outgoing interface computed based on L3
>     information, you install the specific L2 bundle member out of such
>     L3 interface in forwatding. It works, because by using the L2
>     member of the L3 interface the traffic is forwarded to the same
>     next-hop as has been calculated by the L3 routing. Nobody can stop
>     you doing that locally if you wish doing so. But there is
>     absolutely nothing you need from the IETF to do this. There is no
>     need to advertise anything to do what you describe, as this is all
>     a local behavior of the node. There is no need to add a new E-bit,
>     and there is not even a need to advertise affinities for the L2
>     bundle members.
>
>     *[Jie] The distributed path computation is still based on the L3
>     links/interfaces, the change is in the forwarding entry
>     installation. Thanks for confirming it works. *
>
>     *The advertisement of the L2bundle information is for the
>     controller or ingress nodes to perform path computation based on
>     NRP-specific constraints and can use Algo-specific SIDs together
>     with bundle member Adj-SIDs in building the SID list, this aligns
>     with the usage of L2 bundle and extends its applicability to
>     Flex-Algo-specific SIDs. *
>
>     *The E bit is to indicate the L2 bundle is working in the
>     exclusive mode (rather than load balancing), which means the
>     Flex-Algo SIDs can be used to steer traffic to the corresponding
>     member links. *
>
> given that such information is not used during the flex-algo 
> computation itself, there is no need to signal it by IGP. If the 
> controller needs to know about such a property, there are other ways 
> how it can learn about it.
>
> thanks,
> Peter
>
>     *Best regards,*
>
>     *Jie*
>
>     **
>
>     I see no need for this draft.
>
>     thanks,
>     Peter
>
>         Best regards,
>
>         Jie
>
>         *From:*Les Ginsberg (ginsberg) <ginsberg@cisco.com>
>         <mailto:ginsberg@cisco.com>
>         *Sent:* Thursday, March 21, 2024 10:36 AM
>         *To:* Dongjie (Jimmy) <jie.dong@huawei.com>
>         <mailto:jie.dong@huawei.com>; lsr@ietf.org;
>         draft-zhu-lsr-isis-sr-vtn-flexalgo.authors@ietf.org
>         *Subject:* RE: Comments on draft-zhu-lsr-isis-sr-vtn-flexalgo-07
>
>         Jie -
>
>         Thanx for the quick response and confirming that my
>         understanding of the intent of the draft is correct.
>
>         Making a routing decision when the full topology information
>         is not provided as input to the Decision Process leads to
>         incorrect or sub-optimal routing. Here is one simple example.
>
>         Consider the following simple topology (Layer 3 links):
>
>             B
>
>           /   \
>
>         A       D
>
>          \   /
>
>             C
>
>         All layer 3 links participate in Flex Algo 128.
>
>         On both B and C, the Layer 3 link to D is an L2 bundle and the
>         total bandwidth of the bundle links are the same.
>
>         On link B-D, the L2 bundle member assigned to the NRP
>         associated with flex algo 128 has 100 Mb of bandwidth.
>
>         On link C-D, the L2 bundle member assigned to the NRP
>         associated with flex algo 128 has 1 GB of bandwidth.
>
>         The L3 SPF associated with algo 128 utilizes Layer 3 metric
>         advertisements. Based on that, traffic from A to D will be
>         equally balanced via B and C.
>
>         However, what you intend is that when algo 128 traffic is
>         forwarded by B it will utilize a 100 Mb link – whereas when
>         algo 128 traffic is forwarded by C it will utilize a 1 Gb link.
>
>         Clearly the ECMP traffic flow which is the output of the L3
>         SPF is sub-optimal.
>
>         How could this be fixed?
>
>         1)Do not use L2 bundles on B and C. Make each bundle member an
>         L3 link and run IS-IS on the Layer 3 interfaces. In such a
>         case different L3 metrics can be advertised for each L3 link
>         and Flex Algo 128 can be associated only with the desired L3
>         link on C and D.
>
>         Standard flex-algo as defined in RFC 9350 works and requires
>         no modifications.
>
>         2)Do not use L3 routing/flex algo. Define some other mechanism
>         to mark packets in a way that the forwarding recognizes as
>         mapping to the appropriate L2 link.
>
>         The L2 bundle advertisements provided by IS-IS as per RFC 8668
>         can be used by this (external to IS-IS) mechanism.
>
>         For example this mechanism could use the admin group
>         advertised for each L2Bundle member to determine the mapping
>         between an NRP and a link.
>
>         All of the functionality required is already defined in RFC
>         8668 – the only thing you need to define is this new mechanism
>         – which is not part of IS-IS and therefore does not belong in
>         an LSR draft.
>
>         NOTE: Please do not suggest that a different metric-type can
>         be used for each Flex-Algo. Such an approach does not scale as
>         it requires as many metric-types as Flex-Algos – which we do
>         not have. 😊
>
>         What you MUST NOT do is use L3 routing to make a routing
>         decision for a topology which is not part of the input to the
>         routing decision process. But that is exactly what you are
>         proposing in this draft.
>
>         Hope this example is clear.
>
>         As regards the clarity of Section 4, that section simply says
>         (using the SR-MPLS text):
>
>         “A forwarding entry MUST be installed in the forwarding plane
>         using the MPLS label that corresponds to the Prefix-SID
>         associated with the Flex-algorithm corresponding to the NRP.”
>
>         But this entry must have next hops which include only the L2
>         links associated with the NRP mapped to Flex-algo 128. How
>         this is done is not described – but as it requires using
>         information advertised in the L2 Bundle Member Descriptors
>         this clearly cannot be done by IS-IS w/o violating RFC 8668.
>         IS-IS will simply attempt to install a forwarding entry based
>         on the L3 topology – which will indicate to use the L3 link.
>         How this forwarding entry is discarded/overwritten is not
>         specified. But, this is a problem which should never need to
>         be solved.
>
>            Les
>
>         > -----Original Message-----
>
>         > From: Dongjie (Jimmy) <jie.dong@huawei.com>
>
>         > Sent: Wednesday, March 20, 2024 4:30 PM
>
>         > To: Les Ginsberg (ginsberg) <ginsberg@cisco.com>; lsr@ietf.org;
>         draft-zhu-lsr-
>
>         > isis-sr-vtn-flexalgo.authors@ietf.org
>
>         > Subject: RE: Comments on draft-zhu-lsr-isis-sr-vtn-flexalgo-07
>
>         > 
>
>         > Hi Les,
>
>         > 
>
>         > Thanks for the review and comments.
>
>         > 
>
>         > Please see some replies inline:
>
>         > 
>
>         > > -----Original Message-----
>
>         > > From: Les Ginsberg (ginsberg) <ginsberg@cisco.com
>         <mailto:ginsberg@cisco.com>>
>
>         > > Sent: Thursday, March 21, 2024 7:32 AM
>
>         > > To: lsr@ietf.org <mailto:lsr@ietf.org>;
>         draft-zhu-lsr-isis-sr-vtn-flexalgo.authors@ietf.org
>         <mailto:draft-zhu-lsr-isis-sr-vtn-flexalgo.authors@ietf.org>
>
>         > > Subject: Comments on draft-zhu-lsr-isis-sr-vtn-flexalgo-07
>
>         > >
>
>         > > This draft discusses how to use flex-algo in support of
>         Network Resource
>
>         > > Partitions (NRPs). In particular, it proposes to use a
>         combination of L3 links
>
>         > and
>
>         > > L2 Bundle member links as the topology associated with a
>         given NRP. In
>
>         > those
>
>         > > cases where an L3 link is using an L2 bundle and individual
>         bundle members
>
>         > > are "assigned" to different NRPs, it then proposes to
>         associate the parent L3
>
>         > > link with multiple flex-algos. The intent seems to be to
>         utilize the L3 algo
>
>         > > specific SIDs to assign the traffic to subsets of the L2
>         Bundle members.
>
>         > 
>
>         > Your reading of the intent of this document is correct.
>
>         > 
>
>         > With the proposed mechanism, traffic with Flex-Algo specific SIDs
>         could be
>
>         > steered to different partitions of the L3 link resources.
>
>         > 
>
>         > The only thing I'd like to mention is the L2 bundle members could
>         be virtual or
>
>         > physical, they are just used to represent different subsets
>         of the link resources.
>
>         > 
>
>         > 
>
>         > > This is extremely problematic.
>
>         > >
>
>         > > The output of the L3 algo-specific SPF will be to install
>         nexthops pointing to
>
>         > the
>
>         > > L3 interface for packets which arrive with the L3 algo
>         specific SID. But since
>
>         > the
>
>         > > intent is to only forward traffic for a given algo specific
>         SID via specific L2
>
>         > > Bundle members, the L3 forwarding entries will have to be
>         overwritten - in a
>
>         > > manner not specified by the draft.
>
>         > 
>
>         > Section 4 of this document specifies the required forwarding
>         plane behavior
>
>         > and the forwarding entry installation.
>
>         > 
>
>         > 
>
>         > > The implementation complexities this introduces arise because
>         the proposed
>
>         > > solution attempts to use a Layer 3 technology (flex-algo) to
>         control the use
>
>         > of
>
>         > > L2 links. This should not be done.
>
>         > 
>
>         > In the proposed mechanism, Flex-Algo is still used for constraint path
>
>         > computation, and only the L3 links attributes are used in the
>         computation. The
>
>         > L2 member links are only to partition the resources used by
>         different Flex-Algo
>
>         > traffic.
>
>         > 
>
>         > 
>
>         > > Indeed, even independent of flex-algo, trying to use a Layer
>         3 routing
>
>         > protocol
>
>         > > to control traffic flow on an L2 sub-topology is broken.
>
>         > > It means that the L2 bundles have been improperly defined for
>         use by the L3
>
>         > > routing protocol.
>
>         > 
>
>         > There is no routing computation based on the "L2 sub-topology", as
>         L2 bundle
>
>         > member links are not visible in the L3DB. All the Flex-Algo
>         computation is
>
>         > based on the attributes of L3 links.
>
>         > 
>
>         > 
>
>         > > RFC 8668 defines the advertisements of L2 Bundle member link
>         attributes by
>
>         > > IS-IS. The introduction of RFC 8668 states:
>
>         > >
>
>         > > "...the new advertisements defined in this document are
>         intended to be
>
>         > > provided to external (to IS-IS) entities."
>
>         > >
>
>         > > This means these advertisements are not to be used by the
>         routing protocol
>
>         > > itself. The association of these advertisements with the
>         Layer 3 SIDs defined
>
>         > by
>
>         > > Flex-Algo is a clear violation of the intended use as stated
>         by RFC 8668.
>
>         > 
>
>         > As stated above, L2 bundle link attributes are not used in path
>         computation.
>
>         > The Flex-Algo specific SIDs still point to the L3 interface based
>         on that
>
>         > computation. The only change is that a Flex-Algo SID can
>         further points to the
>
>         > resource of an L2 member link (consider it as a subset of the
>         resource of the L3
>
>         > link if that is easier to understand). So the L2 bundle
>         information is only used
>
>         > for associating different Flex-Algo SIDs with different subsets
>         of resources of a
>
>         > l3 link.
>
>         > 
>
>         > 
>
>         > > This draft should be abandoned.
>
>         > >
>
>         > > NOTE: None of the points above should be interpreted to mean
>         that flex-
>
>         > algo
>
>         > > cannot be used in support of NRPs. (Whether that is a good
>         idea or not is
>
>         > out
>
>         > > of scope for this discussion).
>
>         > 
>
>         > AFAIK people are talking about using Flex-Algo to support NRPs. This
>
>         > document provides a solution to meet their needs.
>
>         > 
>
>         > 
>
>         > > But the proper way to do that is when the NRP maps to an L3
>         topology. Such
>
>         > a
>
>         > > usage is fully supported by RFC 9350 and there is no need to
>         write an
>
>         > > additional document to define how this is to be done.
>
>         > 
>
>         > In some cases it is possible to map different NRPs to
>         non-overlapping L3 sub-
>
>         > topologies, while in many other cases the same L3 link needs
>         to participate in
>
>         > multiple NRPs, each of which is assigned with a subset of the
>         link resources.
>
>         > The latter case cannot be supported by RFC 9350, and it is the
>         target of this
>
>         > document.
>
>         > 
>
>         > 
>
>         > > In cases where an NRP maps to an L2 topology, some other
>         mechanism
>
>         > needs
>
>         > > to be defined as to how forwarding entries for a given NRP
>         are determined
>
>         > and
>
>         > > installed. Such a mechanism would qualify as "external to
>         IS-IS" and
>
>         > therefore
>
>         > > could make use of RFC 8668 advertisements.
>
>         > 
>
>         > This document also provides descriptions about this. As I
>         mentioned it is after
>
>         > L3 computation, and makes use of the L2 bundle information.
>
>         > 
>
>         > 
>
>         > > But attempts to utilize the Layer 3 Flex-Algo technology to
>         control traffic flow
>
>         > > in an L2 topology are misguided and flawed.
>
>         > 
>
>         > As long as Flex-Algo is used for L3 topology based computation,
>         IMO it still
>
>         > complies to RFC 9350.
>
>         > 
>
>         > Best regards,
>
>         > Jie (on behalf of coauthors)
>
>         > 
>
>         > >
>
>         > >    Les
>
>
>
>
>         _______________________________________________
>
>         Lsr mailing list
>
>         Lsr@ietf.org
>
>         https://www.ietf.org/mailman/listinfo/lsr
>
>
> _______________________________________________
> Lsr mailing list
> Lsr@ietf.org
> https://www.ietf.org/mailman/listinfo/lsr