Re: [Lsr] Working Group Last Call for draft-ietf-lsr-ip-flexalgo-04 - "IGP Flexible Algorithms (Flex-Algorithm) In IP Networks"

Ketan Talaulikar <ketant.ietf@gmail.com> Wed, 13 April 2022 04:01 UTC

Return-Path: <ketant.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 DB02A3A1CCC; Tue, 12 Apr 2022 21:01:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.107
X-Spam-Level:
X-Spam-Status: No, score=-2.107 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, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01] 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 MqWohSkvjWtI; Tue, 12 Apr 2022 21:01:09 -0700 (PDT)
Received: from mail-vk1-xa34.google.com (mail-vk1-xa34.google.com [IPv6:2607:f8b0:4864:20::a34]) (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 9EE243A1CC6; Tue, 12 Apr 2022 21:01:09 -0700 (PDT)
Received: by mail-vk1-xa34.google.com with SMTP id i27so302417vkr.5; Tue, 12 Apr 2022 21:01:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=wbF000SLnbU6Edm0VPv/du1N00InQdUpUNhzLCco3HY=; b=RGZxwTqPVJL9zwscPabdJReklfRqjQC+2Re+kWRi4yKcNccspGhH9tk8N+ogjKIXnO utjSKn9bbjne8XWJ2XEnfGTIv2yhm9FezWYRIpoFLw6dXJgLEfxNg0OR6rZ5AHloX8/F QWZYA/rw/6rsSD03Yy1uGPW7ygKZEhJi0PMSwMIXtsfDlVVepjTv/ZWOCyadlxZgFFUA UeWHMsdybdAhp1Il5zNXCiNLotOeWbgkO+BFmb0HnfqEl4JkODVIwLwp/YgyjUBwAYtg Yp0sStDthziEieDpfU6uLacODSTwXBkprsnU7Gt2ZMYhINWOKCJ5ou/r3Kw+z7A7fi08 Nafg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=wbF000SLnbU6Edm0VPv/du1N00InQdUpUNhzLCco3HY=; b=8PfqxWQ0KCA/YZH9ToBIWdR6X6VnMv+eC6j2xX/2FH1irrQLIODUGzgs8BH2HK84vN nBO72fz+5qvcgRhcXCcneJTqEY1VW7gtvALzuufluCIrQVnKlwUXs02/+eoih/Hrh+SP 490MolhkrwRZvWRoa5Zg6dvIkjyqs5KwFlAe4SFvc+qOZdpu1y2QrqJQoIizBxuyo67Z JhSv4Q4AsPXaIUZKRIZCx72w0shL4Os+Bh/IK8NSW5VxTvsWjzMsqvlAKFr7IVx7Ieif mXGz3cD2VhIXovNaT7MPZ+yvEN5oM5jhurNrx2xF/PJN8roJXQ4xWBi+4wYEro901dEQ DjXg==
X-Gm-Message-State: AOAM530YZB8JVhdbhkP37mzHAZempconGSS5ZVWrThOMUmwYvyDDszsx vlcN0p44eCU6wXaVwL7ie+7vheqpFnwljSIIVjvBC+Ni
X-Google-Smtp-Source: ABdhPJweS/Uv2gK8P1cGTk/8BiU59uCp/S+e8qXvMQo8kDVEjO7bmzH755LbM6/pFFpLXTc0YbUy+nD/lcTENabLiM0=
X-Received: by 2002:a05:6122:a13:b0:345:a7c8:72de with SMTP id 19-20020a0561220a1300b00345a7c872demr4257709vkn.14.1649822468203; Tue, 12 Apr 2022 21:01:08 -0700 (PDT)
MIME-Version: 1.0
References: <36E526F2-34CB-4C0A-84C2-79A50D9D4C36@cisco.com> <CAH6gdPwrshSVGNsjJVqND8kpNBTBQWicggEz_qyP0DtMYY5wjg@mail.gmail.com> <b6250861-a35d-2a47-6701-194b074e7233@cisco.com> <CAH6gdPwbL5qWX_GXfuv5YL4mRL9xUy3p9wc7an-FbnzpTc0U9A@mail.gmail.com> <46e4c6c1-4ae6-a628-ba27-daa5381c0ac0@cisco.com>
In-Reply-To: <46e4c6c1-4ae6-a628-ba27-daa5381c0ac0@cisco.com>
From: Ketan Talaulikar <ketant.ietf@gmail.com>
Date: Wed, 13 Apr 2022 09:30:56 +0530
Message-ID: <CAH6gdPwS97eEgRQsX16=QfR_yEiPi0WPWGt6PM0XawE5v07exA@mail.gmail.com>
To: Peter Psenak <ppsenak@cisco.com>
Cc: "Acee Lindem (acee)" <acee=40cisco.com@dmarc.ietf.org>, "lsr@ietf.org" <lsr@ietf.org>, "draft-ietf-lsr-ip-flexalgo@ietf.org" <draft-ietf-lsr-ip-flexalgo@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000028e93505dc813a7e"
Archived-At: <https://mailarchive.ietf.org/arch/msg/lsr/bShvnvV-9fygpwwMPXnNHzDX3Ts>
Subject: Re: [Lsr] Working Group Last Call for draft-ietf-lsr-ip-flexalgo-04 - "IGP Flexible Algorithms (Flex-Algorithm) In IP Networks"
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: Wed, 13 Apr 2022 04:01:12 -0000

Hi Peter,

Please check inline below with KT2. I am trimming everything other than the
one point of continuing debate.

>      >
> >      > 2) The relationship between the algo usage for IP FlexAlgo and
> other
> >      > data planes (e.g. FlexAlgo with SR) is not very clear. There arise
> >      > complications when the algo usage for IP FlexAlgo overlap with
> other
> >      > (say SR) data planes since the FAD is shared but the node
> >     participation
> >      > is not shared. While Sec 9 suggests that we can work through these
> >      > complications, I question the need for such complexity. The
> FlexAlgo
> >      > space is large enough to allow it to be shared between various
> data
> >      > planes without overlap. My suggestion would be to neither carve
> out
> >      > parallel algo spaces within IGPs for various types of FlexAlgo
> data
> >      > planes nor allow the same algo to be used by both IP and SR data
> >     planes.
> >      > So that we have a single topology computation in the IGP for a
> given
> >      > algo based on its FAD and data plane participation and then when
> it
> >      > comes to prefix calculation, the results could involve
> >     programming of
> >      > entries in respective forwarding planes based on the signaling of
> >     the
> >      > respective prefix reachabilities. The coverage of these aspects
> in a
> >      > dedicated section upfront will help.
> >
> >     ##PP
> >     I strongly disagree.
> >
> >     FAD is data-pane/app independent. Participation is data-plane/app
> >     dependent. Base flex-algo specification is very clear about that.
> That
> >     has advantages and we do not want to modify that part.
> >
> >
> > KT> No issue with this part.
> >
> >
> >     Topology calculation for algo/data-plane needs to take both FAD and
> >     participation into account. You need independent calculation for each
> >     data-plane/app in the same algo.
> >
> >
> > KT> So, an implementation now needs to potentially support performing
> > multiple topology computations for each algo. This is a complication for
> > which I do not see the justification. Why not just pick different
> > algorithms for different data planes for those (rare?) deployments where
> > someone wants multiple data planes?
>
> ##PP2
> flex-algo architecture supports multiple apps/data-planes per algo, with
> unique participation per app/data-plane. That requires per-algo/per
> app/data-plane calculation. What is complicated on it?
>

KT2> This specific and precise statement that you have provided is not
covered in either draft-ietf-lsr-flex-algo or this document. For starters,
this needs to be clarified and covered so that it gets the attention of any
reader during the review. This has implications for implementations.


>
> If your implementation does not want to support it, fine, but the
> architecture allows it and there is/are implementation(s) that already
> support it. This is not defined in this draft, it's defined in base
> flex-algo spec.
>

KT2> I am not sure if it is really an option for implementation once it is
in the specification. And this is not about "my" implementation :-). So it
is not that because some implementations can do (or does) it that it should
be in the specification. The determination on whether it should be in a
specification needs to be based on the tradeoff between requiring multiple
computations per algo with the potential benefit or use case that is
enabled by it.


>
>
> >
> >
> >     The fact that the same FAD is shareable between all apps has it
> >     advantages and use cases - e.g. if the participation for algo X is
> the
> >     same in SR and IP data-planes, one can use SR to protect IP in that
> >     algo.
> >
> >
> > KT> Would this protection use case not violate the base FlexAlgo rule
> > that the protection has to remain within the specific topology. If there
> > is an SR data plane, then why would one want an IP data plane as well?
>
> ##PP2
> if the participation in two app/data-planes is the same for the algo,
> the resulting topology is the same. If your implementation is smart, it
> can only run a single computation for that case. There is no violation
> here whatsoever.
>

KT2> If the resulting topology is the same between SR data plane and IP
data plane, what is the need to enable the IP data plane? Why not just
steer the IP traffic over the FlexAlgo data plane? And when it is not the
same topology, then we cannot really do the protection for IP FlexAlgo
using SR FlexAlgo. So what is really the use case or benefit for enabling
this?


>
>
>
> > IP forwarding can be steered over the SR-based FlexAlgo topology along
> > with the protection provided by it. Am I missing something?
>
> ##PP2
> topology for both primary and backup computation must be the same.
>

KT2> I see the primary use case for IP FlexAlgo (or another data plane) to
be that the data plane is used by itself. In the (rare?) case where
multiple data planes are required to coexist, it is simpler both from
implementation and deployment POV to use different algos. It would be good
to have operator inputs here. The only cost that I see for this is that the
same FAD may get advertised twice only in the case where it is identical
for multiple data planes. So I am still not seeing the benefit of enabling
multiple (i.e. per data plane) computations for a single algo rather than
just keeping it a single computation per algo where a single data plane is
associated with a specific algo.

Thanks,
Ketan