Re: [Idr] Fwd: Slot request in IDR to present https://www.ietf.org/internet-drafts/draft-idr-bgp-route-refresh-options-00.txt

"Dongjie (Jimmy)" <jie.dong@huawei.com> Wed, 20 July 2016 07:46 UTC

Return-Path: <jie.dong@huawei.com>
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 3B70C12D9B9 for <idr@ietfa.amsl.com>; Wed, 20 Jul 2016 00:46:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.507
X-Spam-Level:
X-Spam-Status: No, score=-5.507 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.287, SPF_PASS=-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 T_IXM9TwTZzz for <idr@ietfa.amsl.com>; Wed, 20 Jul 2016 00:46:17 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 357EC12D17A for <idr@ietf.org>; Wed, 20 Jul 2016 00:46:16 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml701-cah.china.huawei.com) ([172.18.7.190]) by lhrrg02-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id CNZ17804; Wed, 20 Jul 2016 07:46:13 +0000 (GMT)
Received: from NKGEML412-HUB.china.huawei.com (10.98.56.73) by lhreml701-cah.china.huawei.com (10.201.5.93) with Microsoft SMTP Server (TLS) id 14.3.235.1; Wed, 20 Jul 2016 08:46:03 +0100
Received: from NKGEML515-MBX.china.huawei.com ([fe80::a54a:89d2:c471:ff]) by nkgeml412-hub.china.huawei.com ([10.98.56.73]) with mapi id 14.03.0235.001; Wed, 20 Jul 2016 15:45:57 +0800
From: "Dongjie (Jimmy)" <jie.dong@huawei.com>
To: "Keyur Patel (keyupate)" <keyupate@cisco.com>, Robert Raszuk <robert@raszuk.net>
Thread-Topic: [Idr] Fwd: Slot request in IDR to present https://www.ietf.org/internet-drafts/draft-idr-bgp-route-refresh-options-00.txt
Thread-Index: AQHR4aVU83cQxXd4nUuy17dJqjAuSaAgQJlw//+FoACAAAdOAIABIFDQ
Date: Wed, 20 Jul 2016 07:45:57 +0000
Message-ID: <76CD132C3ADEF848BD84D028D243C92774EEFC10@NKGEML515-MBX.china.huawei.com>
References: <CA+wi2hM+y_K+_50Q_QRS64VBdzgBWtx8hL-6iepsVqed+NtqTw@mail.gmail.com> <CA+b+ERm2AnRAYeJRDdsAh=hLX81aQUTVd7Pe5PYLpWmHNvbgtQ@mail.gmail.com> <CA+wi2hMsbVetW_D+HpsdXEHyh75yZkx+QTpj+FoX2hMTcqbrzw@mail.gmail.com> <CA+wi2hNk2+GLY0G800Uo8qgdZQWh=9AzFGhZTk+fWRd6isgriw@mail.gmail.com> <76CD132C3ADEF848BD84D028D243C92774EEF7CF@NKGEML515-MBX.china.huawei.com> <CA+b+ERnkkhYK7Cz5eG_8fuQ_cdeo3TSCK3sBQtA0SyfkGktwAg@mail.gmail.com> <D3B3F3D9.47283%keyupate@cisco.com>
In-Reply-To: <D3B3F3D9.47283%keyupate@cisco.com>
Accept-Language: en-US, zh-CN
Content-Language: zh-CN
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.200.218.207]
Content-Type: multipart/alternative; boundary="_000_76CD132C3ADEF848BD84D028D243C92774EEFC10NKGEML515MBXchi_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A020204.578F2C46.0073, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0, ip=0.0.0.0, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: 30fd6b1a07a3ac00d82fc45c67e61a7b
Archived-At: <https://mailarchive.ietf.org/arch/msg/idr/a7WU57Y9dhOFNHuvOy4WBDnTI_w>
Cc: idr wg <idr@ietf.org>
Subject: Re: [Idr] Fwd: Slot request in IDR to present https://www.ietf.org/internet-drafts/draft-idr-bgp-route-refresh-options-00.txt
X-BeenThere: idr@ietf.org
X-Mailman-Version: 2.1.17
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 Jul 2016 07:46:22 -0000

Hi Keyur,

Please see my comments inline with [Jie2]:

From: Keyur Patel (keyupate) [mailto:keyupate@cisco.com]
Sent: Wednesday, July 20, 2016 6:18 AM
To: Robert Raszuk; Dongjie (Jimmy)
Cc: idr wg
Subject: Re: [Idr] Fwd: Slot request in IDR to present https://www.ietf.org/internet-drafts/draft-idr-bgp-route-refresh-options-00.txt

Robert, Dongjie,

Comments inlined #Keyur

From: Robert Raszuk <robert@raszuk.net<mailto:robert@raszuk.net>>
Date: Tuesday, July 19, 2016 at 2:52 PM
To: "Dongjie (Jimmy)" <jie.dong@huawei.com<mailto:jie.dong@huawei.com>>
Cc: idr wg <idr@ietf.org<mailto:idr@ietf.org>>
Subject: Re: [Idr] Fwd: Slot request in IDR to present https://www.ietf.org/internet-drafts/draft-idr-bgp-route-refresh-options-00.txt

Hi Jie,

To me what is perhaps missing is just a new draft to define *Route Type* ORF to address some of those EVPN new NLRI encodings.

#Keyur: ORFs are permanent filters. We wanted to decouple the transaction based filters (one time per refresh) from the permanent filters and hence chose to modify refresh message as opposed to an ORF.

[Jie2]: This was also my understanding in the beginning of writing the one-time orf drafts. However since you need traffic filters for this "selective refresh", you will find out it is already there with ORF, then you will want to reuse the filters. Actually it is something between the traditional refresh and the traditional ORF,  IMO the name does not really matter, the important thing is we can reuse what already exists.

I am not that much convinced if one time ORF is needed as you are free to INSTALL and REMOVE ORF effectively producing one time behavior.

#Keyur: Ack.

Also existing Enhanced Route Refresh should work with ORF too.

#Keyur: There are modifications needed if the refresh is going to be for selective prefixes only. Furthermore, if we want to support multiple concurrent selective refreshes then the changes needed are very much along the lines of the solution suggested in the draft.

[Jie2] For the concurrent refresh part, could you elaborate in which case it will be needed? The draft says "The BGP speaker responding to  the route refresh requests MAY perform the refreshes in parallel", do you mean the route updates for different selective refresh requests may be interleaved?

Best regards
Jie

Regards,
Keyur



Many thx,
R.




On Tue, Jul 19, 2016 at 11:47 PM, Dongjie (Jimmy) <jie.dong@huawei.com<mailto:jie.dong@huawei.com>> wrote:
Hi Tony,

Please see some comments inline with [Jie]:

From: Idr [mailto:idr-bounces@ietf.org<mailto:idr-bounces@ietf.org>] On Behalf Of Tony Przygienda
Sent: Tuesday, July 19, 2016 6:04 PM
To: Robert Raszuk; idr wg
Subject: [Idr] Fwd: Slot request in IDR to present https://www.ietf.org/internet-drafts/draft-idr-bgp-route-refresh-options-00.txt

Resending ...

---------- Forwarded message ----------
From: Tony Przygienda <tonysietf@gmail.com<mailto:tonysietf@gmail.com>>
Date: Mon, Jul 11, 2016 at 3:04 PM
Subject: Re: [Idr] Slot request in IDR to present https://www.ietf.org/internet-drafts/draft-idr-bgp-route-refresh-options-00.txt
To: Robert Raszuk <robert@raszuk.net<mailto:robert@raszuk.net>>
Cc: idr wg <idr@ietf.org<mailto:idr@ietf.org>>


On Mon, Jul 11, 2016 at 1:47 PM, Robert Raszuk <robert@raszuk.net<mailto:robert@raszuk.net>> wrote:
Hi Tony,

Hey Robert, thanks for chiming in. Good questions. I speak here for myself, other authors of the draft may have differing opinions.


Can you clarify what is the expected behaviour as far as per peer filter-list when you negotiate both Refresh with options, ORF and RTC ? Note that ORF also includes recent extension as described in RFC7543 - would all of those be always a logical AND towards a peer which pushed those ?

We didn't discuss that one through but the only logical conclusion for me is that the ORF/CP-ORF installed are respected (i.e. it's an implicit AND). I see ORF as statefull, remote-pushed policy on the peer that is not being flipped around all the time (albeit AFAIR there were some attempts @ non-persistent, one shot ORF but that ended up expiring?)

[Jie] I think the attempts you mentioned here are the one-time ORF drafts: draft-zeng-idr-one-time-prefix-orf  and draft-dong-idr-one-time-ext-community-orf. After several revisions, these drafts got expired due to lack of requirements at that time. If people found some new use cases of these kinds of mechanisms, the authors would be happy to bring them back to discussion.

The motivation for this work were scenarios where a single-shot refresh is needed, actually concurrent bunch of those based on configuration changes, peer having dropped received routes based on specs (A-D), in policy changes, joining VPNs, EVIs and so on. Putting ORF on a peer, refresh and remove ORFs is significantly heavier process that may interfere on top with normal update process going on and needs to be done one-by-one (since you have to wait for single BoRR/EoRR pair) unless one is very smart about combining ORF possibly & playing with the DEFER/IMMEDIATEs. As we indicated, if the AFI/SAFI is covered by RTC and RTC is supported & one is willing to configure RTs for each subset of routes that may need refreshing, RT will be doing the same job just fine.

[Jie] The motivations look similar to what we described for the one-time ORF drafts.


Would you always carry ORF with separate Refresh_ID value ?

Yes, Refresh-ID# is strictly monotonic so there is never a misunderstanding WHAT the BoRR belongs to. Observe that the draft does NOT mandate that a request MUST be followed by according BoRR, only that BoRRs must follow same sequence as requests (i.e. are also strictly monotonic). However, we should probably specify that options _and_ ORF can NOT be mixed in the same type #3 message but it's either one or the other (and anything else is error). This will allow ORF operations like today + benefit of the Refresh ID#  on the BoRR so the IMMEDIATE can go on @ the same time as another request with higher Refresh ID# (de facto we allow multiple parallel refreshes as you see).  In case of DEFER there will be simply no BoRR for it.


If one requests full Adj_RIB_Out in the new model and sends refresh message with new refresh_id and no options however there are ORF entries already installed in the past would he get just the subset of routes against all ORF entries ? In other words I think the draft should state that Refresh_IDs have no impact to ORF ADDs or REMOVE actions - don't you think ?

I agree. Yes, ORF is kind of  "permanent filter" on the peer while the intent of this draft is to have bunch of "small refreshes" going on @ same time possibly (if you request the refreshes from a good implementation while low-end implementations may serialize the requests to simplify internal logic ;-).


As far as current types why not add regular/extended community ?

Discussion came up. Feeling was it's an immediate encroach on RT territory. I argued for it ;-)  Ultimately, taking a more relaxed view, we chose to wait and see what the response is and most pressing use cases people bring to it and then we start to define bits and bytes of the options supported, possibly borrowing to an extent from the ORF specs ;-)  As in "most sincere form of flattery" and such ... ;-)

[Jie] Actually before the one-time ORF drafts were submitted, we initially considered to make it a "selective route refresh" mechanism. Then we realized that the filters will be quite similar to the ones already defined for ORF. In order to reuse the ORF filters, we then decided to define this mechanism as new "one-time" ORF types.  Just to provide some background information since you also plan to reuse the format of the existing ORF types.

Best regards,
Jie

-- tony




--
We've heard that a million monkeys at a million keyboards could produce the complete works of Shakespeare; now, thanks to the Internet, we know that is not true.
-Robert Wilensky