Re: [Idr] Comments: Route Origin Community in SR Policy(draft-ietf-spring-segment-routing-policy)

Robert Raszuk <robert@raszuk.net> Wed, 20 May 2020 12:59 UTC

Return-Path: <robert@raszuk.net>
X-Original-To: idr@ietfa.amsl.com
Delivered-To: idr@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B78253A0984 for <idr@ietfa.amsl.com>; Wed, 20 May 2020 05:59:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 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, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=raszuk.net
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 S6Zd1u9M7XPQ for <idr@ietfa.amsl.com>; Wed, 20 May 2020 05:59:12 -0700 (PDT)
Received: from mail-ej1-x62f.google.com (mail-ej1-x62f.google.com [IPv6:2a00:1450:4864:20::62f]) (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 8C49A3A0980 for <idr@ietf.org>; Wed, 20 May 2020 05:59:11 -0700 (PDT)
Received: by mail-ej1-x62f.google.com with SMTP id se13so3640675ejb.9 for <idr@ietf.org>; Wed, 20 May 2020 05:59:11 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raszuk.net; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=dmwjEzr2oH0cHrMGN5M7XVSwI6jcmO6fbIUv5D5qs4c=; b=NZrLgsY+dZT1/q37WvS29JDewsVYjz1muS7BKhv+hvcmxFFS5dnJl8A8AgOhGRX9eb OShSzlEt9+wzybwrCyuCO21dHE3WRR4pK4UfB7GeeHqzbB9hHBcn6rwfqsiJEbLgr0u9 26yeOqo7KPu3JP4NMuDVVi377EgmTVk8bhoSrFsTG5KeoZDX+hcl0nB6rgd/bNh0mz1k umD+vLTUD3ZsMNNIIJemPw7eQsoCRL0/jCroANlmQT6ldNCvUrSMyP+KxuCWWRMqndoY OPlcSzPCOl3d/FN7jACDXVDX0I7RVsQL77ZDh8o7IhAecl07tMmAEdfhuTcAh6QavOhB qo4w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=dmwjEzr2oH0cHrMGN5M7XVSwI6jcmO6fbIUv5D5qs4c=; b=BmN6+Q40uuDx9Nei7Z5fy0EkaZcuB5rKOoedyo3Okix6DGxaqIneUZ2rkaJjTZ//35 rjFL/V3vgarotfGzwBh/Ud6ltSV4258QGY+frJuS2i6QQ2tKG5pAp6ZFV93bUkJcr9o6 u9vA0jrXl3XYkQjxm1U9a9hFx9q+rrGNVe68HTlOhXjgxL1jMsNN11CeFr5irudaema+ naMyGoxIyZcAPK2ZSwXFYwBE/viPIjb/Gnbst9oC9cNNAv+F6Nd7S0buaccbtvf5yorK 0/UqwYJS9cGbAOPSxMBpUjgYpns5Ny7VwYD0K/zTzYE/2fJv++IIsFsBZDjpybvhrB9K HWRg==
X-Gm-Message-State: AOAM533TmHu/jrdXDsf8U7lhwbKHgJeH86tkCtQNc314NXWiBfzsS3/Q /ooB2MZlrBUboglTJuTlakBBItpyzZkX8JPI3xxX4umeCL8=
X-Google-Smtp-Source: ABdhPJwZr/8gW1LHg2FZaF+wXf9Tp15yG6S8oB3u4yAsqysNlkcNw6jpS1ObHmEJH9O2eYHiViL8XePqC1bw3ECzO0w=
X-Received: by 2002:a17:906:29d9:: with SMTP id y25mr3452806eje.198.1589979549588; Wed, 20 May 2020 05:59:09 -0700 (PDT)
MIME-Version: 1.0
References: <C7C2E1C43D652C4E9E49FE7517C236CB029FAC88@dggeml529-mbx.china.huawei.com> <MW3PR11MB45702B49025A293583346F36C1AA0@MW3PR11MB4570.namprd11.prod.outlook.com> <CAOj+MMGbjvgn6VL3dKviuxzNNRk0pwFkBOTJUz15D8iSM9=-Rw@mail.gmail.com> <MW3PR11MB457083E56B77688CA68A2500C1B80@MW3PR11MB4570.namprd11.prod.outlook.com> <83bae48cc52d4a5da9a7ee76529a8d20@huawei.com>
In-Reply-To: <83bae48cc52d4a5da9a7ee76529a8d20@huawei.com>
From: Robert Raszuk <robert@raszuk.net>
Date: Wed, 20 May 2020 14:58:56 +0200
Message-ID: <CAOj+MMFs2fGy0ciyBJvoWng++oepamF8YxyO=QtR9yYWbazbqg@mail.gmail.com>
To: Fangsheng <fangsheng@huawei.com>
Cc: "Ketan Talaulikar (ketant)" <ketant@cisco.com>, "Chengli (Cheng Li)" <c.l@huawei.com>, "draft-ietf-spring-segment-routing-policy@ietf.org" <draft-ietf-spring-segment-routing-policy@ietf.org>, idr wg <idr@ietf.org>, SPRING WG <spring@ietf.org>, stefano previdi <stefano@previdi.net>, Yangang <yangang@huawei.com>
Content-Type: multipart/related; boundary="0000000000004172a705a613f673"
Archived-At: <https://mailarchive.ietf.org/arch/msg/idr/UnIovtl8rWpNPlmLrjo_ygWfXec>
Subject: Re: [Idr] Comments: Route Origin Community in SR Policy(draft-ietf-spring-segment-routing-policy)
X-BeenThere: idr@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Inter-Domain Routing <idr.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/idr>, <mailto:idr-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/idr/>
List-Post: <mailto:idr@ietf.org>
List-Help: <mailto:idr-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/idr>, <mailto:idr-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 20 May 2020 12:59:16 -0000

Hi,

> the node-address is generated by CSG1

I don't think CSG1 needs to "generate" anything. Peers which send you
particular policy are well known at CSG1.

> The process described above will result in a waste of redundant candidate
paths on CSG1,

Well what you call "waste" I call redundancy. Sure keeping extra paths
requires some cost, but building redundancy in control plane pays off.

Thx,
R.




On Wed, May 20, 2020 at 2:32 PM Fangsheng <fangsheng@huawei.com> wrote:

> Hi Robert,
>
> Take the following picture as an example, I think you can understand our
> problem more easily.
>
> The controller needs to notify the headend CSG1 through BGP SR Policy to
> create a candidate path of SR Policy. This BGP SR Policy route will be
> advertised to CSG1 through RR1 and RR2.
>
> According to the definition in draft, the key of a candidate path is
> <Protocol-Origin, originator, discriminator>, where originator = <ASN,
> node-address>, so a complete candidate path key is <Protocol-Origin, ASN,
> node-address , discriminator>.
>
> However, in this specific example, the node-address is generated by CSG1,
> and because CSG1 receives BGP SR Policy routes from RR1 and RR2,
> respectively, CSG1 will get two different node-addresses. CSG1 thinks that
> it is necessary to create two  candidate paths, and the controller does not
> know what the node-address CSG1 will eventually generate. Maybe:
>
> Candidate path 1’ key:  <*BGP,RR1’s ASN, RR1’ BGP Router ID,
> discriminator1*>
>
> Candidate path 2’ key:  <*BGP,RR2’s ASN, RR2’ BGP Router ID,
> discriminator2*>
>
> The process described above will result in a waste of redundant candidate
> paths on CSG1,
>
> At the same time, when CSG1 needs to announce the SR Policy information to
> the controller through BGP LS, it needs to carry the keys of the candidate
> path in it, and the controller cannot recognize these keys.
>
>
>
>
>
>
>
> To solve these problems,  We recommend carrying the Route Origin Community
> (defined in RFC 4360) directly when the controller advertises BGP routes.
>
> In this way, the key  of the CP is determined by the controller and will
> not change during the advertisement of BGP routes.
>
>
>
>
>
>
>
>
>
> *发件人:* Ketan Talaulikar (ketant) [mailto:ketant@cisco.com]
> *发送时间:* 2020年5月18日 20:00
> *收件人:* Robert Raszuk <robert@raszuk.net>
> *抄送:* Chengli (Cheng Li) <c.l@huawei.com>;
> draft-ietf-spring-segment-routing-policy@ietf.org; idr wg <idr@ietf.org>;
> SPRING WG <spring@ietf.org>; Fangsheng <fangsheng@huawei.com>; stefano
> previdi <stefano@previdi.net>
> *主题:* RE: [Idr] Comments: Route Origin Community in SR
> Policy(draft-ietf-spring-segment-routing-policy)
>
>
>
> Hi Robert,
>
>
>
> You are right that the “Originator” is not used in BGP best path and is
> just for a tie-breaking logic in SRTE between paths from different
> protocols and controllers. I doubt if there is a functional issue here.
>
>
>
> I thought that Chengli was bringing in some new/different requirement for
> the “Originator” field for some deployment design. I haven’t seen a
> response/clarification from him as yet, and so perhaps I misunderstood him
> in which case we are ok here.
>
>
>
> Thanks,
>
> Ketan
>
>
>
> *From:* Robert Raszuk <robert@raszuk.net>
> *Sent:* 30 April 2020 14:46
> *To:* Ketan Talaulikar (ketant) <ketant@cisco.com>
> *Cc:* Chengli (Cheng Li) <chengli13@huawei.com>;
> draft-ietf-spring-segment-routing-policy@ietf.org; idr wg <idr@ietf.org>;
> SPRING WG <spring@ietf.org>; Fangsheng <fangsheng@huawei.com>; stefano
> previdi <stefano@previdi.net>
> *Subject:* Re: [Idr] Comments: Route Origin Community in SR
> Policy(draft-ietf-spring-segment-routing-policy)
>
>
>
> Hi Chengli and Ketan,
>
>
>
> Well I think (perhaps to your surprise) the current text is actually
> correct.
>
>
>
> See the overall idea of section 2.4 is not to define the real source of
> the candidate path. That is done in section 2.5 The idea here is to keep
> multiple *paths or versions* of the candidate paths in the local system
> uniquely.
>
>
>
> See if you continue reading section 2.6 demystifies the real objective:
>
>
>
>    The tuple <Protocol-Origin, originator, discriminator> uniquely
>
>    identifies a candidate path.
>
>
>
> So the real originator is encoded in discriminator and here it just means the peer candidate path was
>
> received from. And if you read on this entire exercise only servers best path selection as described in section 2.9.
>
>
>
> .... the following order until only one valid best path is selected:
>
>
>
>    1.  Higher value of Protocol-Origin is selected.
>
>
>
>    2.  If specified by configuration, prefer the existing installed
>
>        path.
>
>
>
>    3.  Lower value of originator is selected.
>
>
>
>    4.  Finally, the higher value of discriminator is selected.
>
>
>
> +
>
>       The originator allows an operator to have multiple redundant
>
>       controllers and still maintain a deterministic behaviour over
>
>       which of them are preferred even if they are providing the same
>
>       candidate paths for the same SR policies to the headend.
>
>
>
> Thx,
> R.
>
>
>
> On Thu, Apr 30, 2020 at 10:46 AM Ketan Talaulikar (ketant) <ketant=
> 40cisco.com@dmarc.ietf.org> wrote:
>
> Hi Cheng,
>
>
>
> I assume you are recommending the use of Route Origin Extended Community (
> https://tools.ietf.org/html/rfc4360#section-5) for conveying the
> “Originator” when the SR Policy update is propagated over eBGP sessions via
> other eBGP/iBGP sessions instead of direct peering with the headend.
>
>
>
> I believe it does address the scenario you describe given that it is
> expected that SR Policy propagation via BGP is happening within a single
> administrative domain even if it comprises of multiple ASes.
>
>
>
> Also copying the IDR WG for inputs since this would likely need to be
> updated in draft-ietf-idr-segment-routing-te-policy.
>
>
>
> Thanks,
>
> Ketan
>
>
>
> *From:* spring <spring-bounces@ietf.org> *On Behalf Of *Chengli (Cheng Li)
> *Sent:* 30 April 2020 07:34
> *To:* draft-ietf-spring-segment-routing-policy@ietf.org
> *Cc:* SPRING WG <spring@ietf.org>; huruizhao <huruizhao@huawei.com>;
> Fangsheng <fangsheng@huawei.com>
> *Subject:* [spring] Comments: Route Origin Community in SR
> Policy(draft-ietf-spring-segment-routing-policy)
>
>
>
> Hi authors,
>
>
>
> In section 2.4 of [draft-ietf-spring-segment-routing-policy-06],
> introduced how the node-address of "Originator of CP(Candidate Path)" is
> generated when the Protocol-Origin is BGP. It says:
>
>     “Protocol-Origin is BGP SR Policy, it is provided by the BGP component
> on the headend and is:
>
>      o  the BGP Router ID and ASN of the node/controller signalling the
> candidate path when it has a BGP session to the headend, OR
>
>      o  the BGP Router ID of the eBGP peer signalling the candidate path
> along with ASN of origin when the signalling is done via one or  more
> intermediate eBGP routers, OR
>
>      o  the BGP Originator ID [RFC4456] and the ASN of the
> node/controller  when the signalling is done via one or more
> route-reflectors over  iBGP session.”
>
>
>
> In the operator's network, in order to reduce the number of  BGP sessions
> in controller and achieve scalability, the controller only establishes eBGP
> peer with the RR. And the RR establishes iBGP peers with the headends. As
> mentioned in the draft, the headend will use the RR's Router ID as the CP's
> node-address (the signaling is done via route transmission from RR to the
> headend instead of route reflection).  The headend needs to carry the CP's
> key when reporting the SR Policy status to the controller through BGP-LS.
> And there is a problem that the controller may not recognize the key
> because the node-address is generated by the RR node.
>
>
>
> For network robustness, two or more RRs are usually deployed. This will
> introduce another problem.. When the same CP advertised by the controller
> is delivered to the headend through different RRs, the headend cannot
> distinguish whether it is the same CP because the node-address in the CPs'
> key  comes from different RRs.
>
>
>
> To solve these problems,  We recommend carrying the Route Origin Community
> (defined in RFC 4360) directly when the controller advertises BGP routes.
> In this way, the key  of the CP is determined by the controller and will
> not change during the advertisement of BGP routes.
>
>
>
> Thanks,
>
> Cheng
>
> _______________________________________________
> Idr mailing list
> Idr@ietf.org
> https://www.ietf.org/mailman/listinfo/idr
>
>