Re: [Idr] https://tools.ietf.org/html/draft-wang-idr-rd-orf-00

Aijun Wang <wangaijun@tsinghua.org.cn> Mon, 20 July 2020 06:25 UTC

Return-Path: <wangaijun@tsinghua.org.cn>
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 C4EB33A0B79 for <idr@ietfa.amsl.com>; Sun, 19 Jul 2020 23:25:58 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.918
X-Spam-Level:
X-Spam-Status: No, score=-1.918 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
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 gdW2a6p_65IL for <idr@ietfa.amsl.com>; Sun, 19 Jul 2020 23:25:55 -0700 (PDT)
Received: from mail-m127101.qiye.163.com (mail-m127101.qiye.163.com [115.236.127.101]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1CE9B3A0B75 for <idr@ietf.org>; Sun, 19 Jul 2020 23:25:54 -0700 (PDT)
Received: from DESKTOP2IOH5QC (unknown [219.142.69.75]) by mail-m127101.qiye.163.com (Hmail) with ESMTPA id 4EBA44972B; Mon, 20 Jul 2020 14:25:50 +0800 (CST)
From: Aijun Wang <wangaijun@tsinghua.org.cn>
To: 'Robert Raszuk' <robert@raszuk.net>
Cc: "'Jakob Heitz (jheitz)'" <jheitz=40cisco.com@dmarc.ietf.org>, 'Jeff Tantsura' <jefftant.ietf@gmail.com>, "'idr@ietf. org'" <idr@ietf.org>
References: <CAOj+MMH_CefbH639OVs==ts4C_7rf4W1d+pUN+Wb+im5+gNfFg@mail.gmail.com> <003c01d65b1a$777b60a0$667221e0$@tsinghua.org.cn> <CAOj+MMEBTbD9nKH8s2a4VJOCGT2itSUTZOc1tRQnOdTBHtsFeA@mail.gmail.com> <007501d65b4f$4990d1e0$dcb275a0$@chinatelecom.cn> <CAOj+MMGQFcKvmYT3SXsXnXT-SQpzsjZRQtoxZhpNe2WA-TgT_A@mail.gmail.com> <BYAPR11MB3207E4C80AE4563F3A8AD0C1C07F0@BYAPR11MB3207.namprd11.prod.outlook.com> <CAOj+MMG4Bw5sKE4WRRG5cssqGAgqP_jX+NaJ6_OnDhdPM5rTuA@mail.gmail.com> <BYAPR11MB3207B46C0198DD2836778EF0C07F0@BYAPR11MB3207.namprd11.prod.outlook.com> <000501d65bf5$6bbe7f50$433b7df0$@tsinghua.org.cn> <CAOj+MMFt=GbL7f7s7mxHD7R1QVQjm+ktvJeUVWY3DZZ3Q69Zng@mail.gmail.com>
In-Reply-To: <CAOj+MMFt=GbL7f7s7mxHD7R1QVQjm+ktvJeUVWY3DZZ3Q69Zng@mail.gmail.com>
Date: Mon, 20 Jul 2020 14:25:49 +0800
Message-ID: <000001d65e5e$9c45df90$d4d19eb0$@tsinghua.org.cn>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_0001_01D65EA1.AA6A7F20"
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQNnRYCq6s5hfjVD8h6OyPDXWyFosgKT1XrcAjIp6bcA1FQDnQHgNq2oAquzZTYCOwPf6wIq/iIgAeN439gCuwscnKVU1/wg
Content-Language: zh-cn
X-HM-Spam-Status: e1kfGhgUHx5ZQUpXWQgYFAkeWUFZS1VLWVdZKFlBSkxLS0o3V1ktWUFJV1 kPCRoVCBIfWUFZQhhDHx0ZGUxDSExMVkpOQk5JSU1ITktNSk5VEwETFhoSFyQUDg9ZV1kWGg8SFR 0UWUFZT0tIVUpKS09ISFVKS0tZBg++
X-HM-Sender-Digest: e1kMHhlZQR0aFwgeV1kSHx4VD1lBWUc6PCI6Igw*ST8pLRApCBUBFBZK FB5PCjVVSlVKTkJOSUlNSE5KS05PVTMWGhIXVQwaFRwaEhEOFTsPCBIVHBMOGlUUCRxVGBVFWVdZ EgtZQVlJSkJVSk9JVU1CVUxOWVdZCAFZQUhPT05PNwY+
X-HM-Tid: 0a736ae6638c9865kuuu4eba44972b
Archived-At: <https://mailarchive.ietf.org/arch/msg/idr/GXTszfbEaZWe-mSS-DwHQgW6buo>
Subject: Re: [Idr] https://tools.ietf.org/html/draft-wang-idr-rd-orf-00
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: Mon, 20 Jul 2020 06:25:59 -0000

Hi, Robert:

 

The semantic encoding of “Address Prefix ORF(RFC5292)” can cover the proposed “RD-ORF”, but their usages is different.

For the usage of “Address Prefix ORF”, please refer to https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/iproute_bgp/configuration/15-mt/irg-15-mt-book/irg-oubound-route-filtering.pdf, the device needs to configure the prefix list that used to notify the ORF peer. The prefix list itself does not include RD.

 

For RD-ORF, the sender needs not do such configuration, and it can’t decide the RD info in advance that leads to the overwhelmed VPN table. 

Defining the new RD-ORF type can make the route filter policy more distinctly.

 

Other detail reply are inline below.【WAJ】

 

 

Best Regards

 

Aijun Wang

China Telecom

 

From: Robert Raszuk [mailto:robert@raszuk.net] 
Sent: Friday, July 17, 2020 5:43 PM
To: Aijun Wang <wangaijun@tsinghua.org.cn>
Cc: Jakob Heitz (jheitz) <jheitz=40cisco.com@dmarc.ietf.org>; Jeff Tantsura <jefftant.ietf@gmail.com>; Aijun Wang <wangaj3@chinatelecom.cn>; idr@ietf. org <idr@ietf.org>
Subject: Re: [Idr] https://tools.ietf.org/html/draft-wang-idr-rd-orf-00

 

Hi Aijun,

 

>From our POV, the user of the address-prefix ORF will pay more attention to the prefix itself

 

First the "user" is the implementation ... hope you are not expecting real operator to inject such ORF entries when "overflow" happens. 

 

Let's also observe that In L3VPNs_PREFIX = RD + IPv4_PREFIX

 

[WAJ]  In semantic encoding, it seems true.  But in actual usage of the “Address Prefix ORF”, the RD is often be ignored.  In RFC7543, we can also see the context as “ignoring the Route Distinguisher……” in  section 3 “Processing Rules”  <https://tools.ietf.org/html/rfc7543#section-3> https://tools.ietf.org/html/rfc7543#section-3  

 

For example, we can refer to https://tools.ietf.org/html/rfc7543 (Covering Prefixes Outbound Route Filter for BGP-4), the minLen, maxLen and host address encoding do not include the RD(when comparing the received route, the receiver needs to add 64 to minLen/maxLen)

 

Incorrect. 

 

The RFC says: 

 

   o  the route prefix length is greater than or equal to the CP-ORF
      Minlen plus 64 (i.e., the length of a VPN Route Distinguisher);

 

  Note: ==equal== So that means that at least RD must be compared.   

[WAJ]   NO, The above procedures actually speak out that the RD is passed/ignored when compared.

 

Actually, the RD-ORF message will be regenerated between every BGP session, not propagate directly back to the upstream, as that done in BGP Update messages.

Then, every regeneration point(RR/ASBR) can control whether or not send the newly generated RD-ORF to the upstream.  In scenarios that when not all of PEs are overwhelmed by routes from this specified VPN, the RR/ASBR can constraint the sending of the RD-ORF policy to the source.

 

"Regeneration" follows propagation. This is exactly why we defined RTC so all loop free properties are still met. ORF is point to point. 

 

Or do you mean that when RR receives the RD-ORF from sending PE it will not propagate till an operator pushes a new configuration to propagate this further. If so have you even considered timing of those events ? 

[WAJ]   No, the operator needs not intervene this process, but the RR can have its policy to send out or not the received RD-ORF messages.

 

 

The edge between CE and PE is one control point to restrict the prefixes number, but we can’t rely solely on it, especially in the Option-B/Option-C interconnection scenario.

Using RD-ORF mechanism, we can prevent the overwhelmed VPN prefixes in one AS to influence PEs in another AS, and also the PEs within same AS(when they exchange routes via RR)

The reason for the occurrences of overwhelmed VPN prefixes may be misconfiguration on one PE, or being attacked from the outside of network, or other unforeseeable events.

 

 

ORF means installing additional route filter outbound from a BGP speaker as instructed by the peer. 

 

I do not see how any Option-B or worse Option-C peer will allow different AS to push some VPN prefix filter on his infrastructure. Unless both are under the same administration - but then you can use prefix limit. 

[WAJ]  Even under the same administration, we can’t depend on the prefix limit, because the ASBR/RR has no specific VRF route table.

Again I do not support your assertion that RD is more granular then RT for this purpose. It all depends how given operator designed the RT and/or RD allocations. 

[WAJ] Whatever the design of RD/RT, the RD is unique to one VRF, but RT is not.

 

As mentioned for a given VPN importing VRF copies prefixes and *ovverrides* incoming RD with local one. So just think what happens if that specific VRF "overflows" but there is many sources of original pre-import routes all with different RDs. 

[WAJ]  The overwhelmed PE should determines which RD or RDs leads to its overflow and send the specific RD-ORF message accordingly

 

If anything in this space I would rather see us perhaps trying to automate prefix limit per RT (in this case it would be export RTs carried with the routes not import RTs). 

[WAJ]  Prefix Limit mechanism can’t be used in Option B/C inter-AS scenarios

 

Thx,
R.