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

Robert Raszuk <robert@raszuk.net> Wed, 20 July 2016 22:14 UTC

Return-Path: <rraszuk@gmail.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 5FF5E12D1C1 for <idr@ietfa.amsl.com>; Wed, 20 Jul 2016 15:14:45 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.597
X-Spam-Level:
X-Spam-Status: No, score=-2.597 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.001, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] 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 nvIPnqdgzX4G for <idr@ietfa.amsl.com>; Wed, 20 Jul 2016 15:14:43 -0700 (PDT)
Received: from mail-qt0-x22d.google.com (mail-qt0-x22d.google.com [IPv6:2607:f8b0:400d:c0d::22d]) (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 9E6A312B00F for <idr@ietf.org>; Wed, 20 Jul 2016 15:14:42 -0700 (PDT)
Received: by mail-qt0-x22d.google.com with SMTP id w38so34319551qtb.0 for <idr@ietf.org>; Wed, 20 Jul 2016 15:14:42 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=QV/3gSoMW9LoJPG0wphgPx9lQP5iPfbxILY3pzGAlSs=; b=CNwU+aMNqd1mjKGUloFlRmN5nkkxiFKKv/8CeDzLmsKcxBHON9pu2le8j94xsuMuif LuMe9d12n2F5HX9NLkSR8Z0QWTu7y/IHXtbapvV0G1nVBPc2YJBggldf255to1gzUZSC On3cuH993vhmkNqccgHJ7PoKvKK40D+bnzgtIkpYZmyNtl5MzGNcy0bJtjAfThfiN4XA istC4gWsxIIpVo+ta+0qYb7oJlNc3JEXri83K3G1Gq6YXy28rooPma3XGIOkR1qUhN/J lr813BUMWhJdaPO8mBiDjvuPB7UN1XdMKke9O6t/rHkOS5ldYGGx8NwVI1uIDQ1FRgKk FFow==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=QV/3gSoMW9LoJPG0wphgPx9lQP5iPfbxILY3pzGAlSs=; b=c3bMcNLf8WNbzGstX9hwVlLXBLtA1w03mHES/LhN58zX5l7Mdx1dfkTx23eSamunD0 tCTMlPaLif6fJNtslTAlyapfXSyUadL5CLIjdOObPtXklCAOcB424HgP+1DDsqCS07kP MxG6pNIgJRQ+g4rzfBxL2S5cJDnWNwlrGkdcArZuzkmzcE9gBEanW+yE5MUBfDOCkn9m VtqETAgSx178c+zInUpVGKKaVJRx6Whxs5C1Mug4OuxUuSSZdAIiSYVIJoNdHK9CM+ls wLRZVPjyewghUrbW0zOT1yCW7dcYBNZ7W1Y/31N8/2ODXN4VnFM9l1d0pKg6MX3F6Bee jF0Q==
X-Gm-Message-State: ALyK8tKpPwuD5hf9J2piOo21KsPxgiAjYjZp2wESq8d2og+emDEvbwNmLCbes5VIvHrD4+gllm9CYf1sxsLDqg==
X-Received: by 10.237.38.35 with SMTP id z32mr70687324qtc.69.1469052881689; Wed, 20 Jul 2016 15:14:41 -0700 (PDT)
MIME-Version: 1.0
Sender: rraszuk@gmail.com
Received: by 10.237.36.90 with HTTP; Wed, 20 Jul 2016 15:14:40 -0700 (PDT)
In-Reply-To: <D3B5343D.474BD%keyupate@cisco.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> <CA+b+ERm+2HSu+QyU7pHsEXO9WKh9uavX2y4MtuSX=WADDYx_vg@mail.gmail.com> <D3B5343D.474BD%keyupate@cisco.com>
From: Robert Raszuk <robert@raszuk.net>
Date: Thu, 21 Jul 2016 00:14:40 +0200
X-Google-Sender-Auth: SY6GMa9y6rhhIRb56iZ9AkL8ieA
Message-ID: <CA+b+ERn7Rb2=d7UFyxKC01dh7=JFpbnf+dd+_uL+UvAarnkE6w@mail.gmail.com>
To: "Keyur Patel (keyupate)" <keyupate@cisco.com>
Content-Type: multipart/alternative; boundary="94eb2c123a102b63bc053818877b"
Archived-At: <https://mailarchive.ietf.org/arch/msg/idr/R9ylHKuJuDIj5BZ6KaH5JMd-MaU>
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 22:14:45 -0000

Hi Keyur,

On the EVPN topic which defines BGP protocol extensions without any IDR WG
review the more I hear about cases like you bring below (and this is not
the first one btw) the more I think it is really quite badly designed.

And such bad protocol extensions should not be a justification to introduce
even more questionable knobs in BGP.

In this specific case just get all SAFI refreshed modulo to RTC or ORF
filters and you are done. Case solved :).

Best,
R.


On Wed, Jul 20, 2016 at 11:05 PM, Keyur Patel (keyupate) <keyupate@cisco.com
> wrote:

> Hi Robert,
>
> One interesting use case is with EVPN address family where a new
> route-type is introduced without a capability.  A PE may have had safi
> enabled but not have accepted its route-type (or set of route-types) all
> mapping to a same RT. A transactional filter attempts to solve it.
>
> We can clarify in the next revision of the draft.
>
> One more comment inlined #Keyur
>
> From: Robert Raszuk <robert@raszuk.net>
> Date: Tuesday, July 19, 2016 at 3:29 PM
> To: Keyur Patel <keyupate@cisco.com>
> Cc: "Dongjie (Jimmy)" <jie.dong@huawei.com>, 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
>
> Hi Keyur,
>
> The missing part seems to be justification if we really need "transaction
> based filters" as opposed to simply having permanent ones.
>
> What real problem "transaction based filters" solve ? IMO the draft needs
> to state it clearly.
>
> The other point is that "permanent" are not really permanent anyway ..
> they are installed from update to withdraw of a given filter - regardless
> what filtering mechanism you choose (ORF, RTC, XYZ ...). And if you go with
> the notion that permanent are sufficient the entire aparatus allowing you
> to have concurrent route refresh requests in flight goes away :)
>
> #Keyur: Ack your right. My reference to a permanent filter was in context
> of a session life time and I agree with you that it could be modified or
> withdrawn at any given time. I was trying to differentiate it from
> transactional filters.
>
> Regards,
> Keyur
>
> Thx,
> r.
>
>
> On Wed, Jul 20, 2016 at 12:18 AM, Keyur Patel (keyupate) <
> keyupate@cisco.com> wrote:
>
>> Robert, Dongjie,
>>
>> Comments inlined #Keyur
>>
>> From: Robert Raszuk <robert@raszuk.net>
>> Date: Tuesday, July 19, 2016 at 2:52 PM
>> To: "Dongjie (Jimmy)" <jie.dong@huawei.com>
>> 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
>>
>> 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.
>>
>> 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.
>>
>> Regards,
>> Keyur
>>
>>
>>
>> Many thx,
>> R.
>>
>>
>>
>>
>> On Tue, Jul 19, 2016 at 11:47 PM, Dongjie (Jimmy) <jie.dong@huawei.com>
>> wrote:
>>
>>> Hi Tony,
>>>
>>>
>>>
>>> Please see some comments inline with [Jie]:
>>>
>>>
>>>
>>> *From:* Idr [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>
>>> 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>
>>> Cc: idr wg <idr@ietf.org>
>>>
>>>
>>>
>>>
>>>
>>> On Mon, Jul 11, 2016 at 1:47 PM, Robert Raszuk <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
>>>
>>
>>
>