Re: [Idr] Growing BGP-LS Attribute

"Ketan Talaulikar (ketant)" <ketant@cisco.com> Fri, 26 October 2018 13:19 UTC

Return-Path: <ketant@cisco.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 08EC7130EDE for <idr@ietfa.amsl.com>; Fri, 26 Oct 2018 06:19:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.501
X-Spam-Level:
X-Spam-Status: No, score=-14.501 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.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 RnovUMHMunHl for <idr@ietfa.amsl.com>; Fri, 26 Oct 2018 06:18:56 -0700 (PDT)
Received: from alln-iport-1.cisco.com (alln-iport-1.cisco.com [173.37.142.88]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3C98D130EDA for <idr@ietf.org>; Fri, 26 Oct 2018 06:18:56 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=25378; q=dns/txt; s=iport; t=1540559936; x=1541769536; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=rJRBEmHKnsTA920IUjFUNGw/wOG9+MRGhTJ/Z0SpVGQ=; b=g/j9fBge3QoVqNp3TSGD9uferTDGLIGNEfehIMdyVMDHl477Zu7yaupK URo/bhFp/ApXpeddWt3oanRmQ5Oca+AYR7Q8gh/+o1+XS83gKOXV2U3pr h3LUaO/uEnexG31MbEqoeXZ9oUTR92qEfNmLK39QsbWk5+PAQImzNRV/e E=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0AXAADWE9Nb/4QNJK1jGgEBAQEBAgEBAQEHAgEBAQGBVAIBAQEBCwGBDXdmfygKg2uUMIINmRcLAQGEbAIXgwAhNwoNAQMBAQIBAQJtKIU6AQEBAQIBIwpMBQsCAQgRBAEBKAMCAgIwFAkIAgQBDQUIgxqBHVwIph2BLoobi2cXgUE/gRGDEoRXAT0fgk6CVwKJJIUihh6KGAkCkHUggVKOc4kyjTgCERSBJjMiQYEUcBWDJ5BXb4paAQYfgQiBHwEB
X-IronPort-AV: E=Sophos;i="5.54,428,1534809600"; d="scan'208,217";a="192009535"
Received: from alln-core-10.cisco.com ([173.36.13.132]) by alln-iport-1.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 26 Oct 2018 13:18:55 +0000
Received: from XCH-ALN-007.cisco.com (xch-aln-007.cisco.com [173.36.7.17]) by alln-core-10.cisco.com (8.15.2/8.15.2) with ESMTPS id w9QDItAY026884 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=FAIL); Fri, 26 Oct 2018 13:18:55 GMT
Received: from xch-aln-008.cisco.com (173.36.7.18) by XCH-ALN-007.cisco.com (173.36.7.17) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Fri, 26 Oct 2018 08:18:54 -0500
Received: from xch-aln-008.cisco.com ([173.36.7.18]) by XCH-ALN-008.cisco.com ([173.36.7.18]) with mapi id 15.00.1395.000; Fri, 26 Oct 2018 08:18:54 -0500
From: "Ketan Talaulikar (ketant)" <ketant@cisco.com>
To: Robert Raszuk <robert@raszuk.net>, "adrian@olddog.co.uk" <adrian@olddog.co.uk>
CC: "idr@ietf.org" <idr@ietf.org>
Thread-Topic: [Idr] Growing BGP-LS Attribute
Thread-Index: AQHUaG3oQJn1YbjS8EOwigjJXoXthaUotIKAgAAFTgCACMyhgIAATXqA//+1psA=
Date: Fri, 26 Oct 2018 13:18:54 +0000
Message-ID: <7569a7d94a704bf697f7a15e13cb861c@XCH-ALN-008.cisco.com>
References: <CAOj+MMH8A96TUM5qmNdX8j4CMzP51mHzwqasWvY0jOcjH5yBgw@mail.gmail.com> <008b01d46898$c6d2d2d0$54787870$@olddog.co.uk> <CAOj+MMEf+bB-8F9gtNYsym3wK3ATmvr-jhK2us9LoSh6_yz0SQ@mail.gmail.com> <0d9b01d46d01$bf070450$3d150cf0$@olddog.co.uk> <CAOj+MMEJ5ORGFEde=3gcgdpUqPEES6NyG4r0u596GPrpQN1fcQ@mail.gmail.com>
In-Reply-To: <CAOj+MMEJ5ORGFEde=3gcgdpUqPEES6NyG4r0u596GPrpQN1fcQ@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.68.219.125]
Content-Type: multipart/alternative; boundary="_000_7569a7d94a704bf697f7a15e13cb861cXCHALN008ciscocom_"
MIME-Version: 1.0
X-Outbound-SMTP-Client: 173.36.7.17, xch-aln-007.cisco.com
X-Outbound-Node: alln-core-10.cisco.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/idr/Ebh5lTpy4eZv_3_9QVOZJOZpXvI>
Subject: Re: [Idr] Growing BGP-LS Attribute
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: Fri, 26 Oct 2018 13:19:06 -0000

Hi Robert,

I think the discussion is again turning from encoding (i.e. handling of growing BGP-LS attribute size) to questioning the role and use of BGP-LS.

I agree with what Adrian has stated (except the part about p2p – it can be used p2mp to feed multiple/redundant controllers and that is one of the key benefit leveraged from base BGP). There is damping at IGP but then also one that can be applied at BGP(-LS) level in the implementations that I know. We could document guidelines for use and applicability.

However, coming to the topic of the BGP-LS attribute. We do need to consider

a)      The 4K limit and therefore perhaps enabling a BGP-LS NLRI to be split across multiple update messages. Similar to how we have LSP fragments in ISIS or multiple instances of the LSA (e.g. RI LSA) in OSPF. This would also enable splitting of information across updates and perhaps segregate information into static or dynamic or based on application.

b)     Another aspect not documented/discussed is filtering out of Attribute TLVs that are not of interest.

Thanks,
Ketan

From: Robert Raszuk <robert@raszuk.net>
Sent: 26 October 2018 20:36
To: adrian@olddog.co.uk
Cc: idr@ietf.org; Ketan Talaulikar (ketant) <ketant@cisco.com>
Subject: Re: [Idr] Growing BGP-LS Attribute

Adrian,

Is all fine what you are describing. But tell us why it has to be BGP job ?

You already have efficient telemetry streaming out of the router. Why it can not be used as transport for all this information p2p between router and controller ?

Best
R.

On Fri, Oct 26, 2018, 09:59 Adrian Farrel <adrian@olddog.co.uk<mailto:adrian@olddog.co.uk>> wrote:
Sorry for the delay, Robert: travel.

>> IMHO, two fundamental concepts in BGP-LS are summarisation and stability.
>
> I don't see any summarization in the current encoding as most
> if not all of the information being sent is verbatim taken from
> IGP drafts and RFCs.

Encoding does not (and should not) reflect summarization.
Summarization is the process of taking n components and representing them as m (<n) components by;
- omitting
- aggregating
- virtualizing

The summarized things look like links. Some may really be IGP links reported straight through; some might be virtual links. In both cases they use the same encoding: they are presented as links.

Of course, one could use BGP-LS to simply dump the full IGP database, and that is not summarization. I would argue to not use BGP-LS if that is the function you want to deliver.

> Stability is also not there as now we have a lot of dynamic data without
> any new advertise-time thresholds being set - so we are just relying on
> IGP flooding thresholds.

If summarization is in use, then a small change to the IGP database might cause no change to the summarized information.
Furthermore, the summarization algorithm should (IMHO) be damped with some form of thresholding.
And even if you use BGP-LS to simply dump the full IGP database (against my advice :-), you can apply damping.

Most of the use cases I am aware of use BGP-LS to extract a summary of the IGP information for TE purposes. TE is usually a damped process, and operates on summarized information.

Possibly, another use case is "cross-domain reachability". That is also a form of summarization, and is relatively stable in the face of intra-network changes.

In short, there is no strong binding between the IGP and BGP-LS: neither temporal, nor informational. The use of a common encoding does not imply simultaneous or identical data.

BGP-LS is a protocol spec. We could make a good case that there should be more documentation of how/when to use the protocol, but since it is a p2p protocol, I don't think that material belongs in the protocol spec. With this in mind, I helped to write RFC 7926 for a specific TE scenario, and draft-ietf-bess-datacenter-gateway for a reachability/TE use case.

> BGP-LS has just one fundamental convenience - free TCP transport.
> That's it. If our link state protocols would run over TCP from any node
> to controller (well Henk & Gunter  just proposed it for ISIS) or if there
> would be a BMP analogy to IGPs (get full or filtered feed of LSDB or TED
> over TCP) there would be very limited need for BGP-LS.
>
> So today we are just growing single BGP-LS Attribute. Such attribute
> content changes depending if it is part of Node NLRI, Link NLRI or
> Prefix NLRI. Say take LInk NLRI there are TLVs which are static and
> which are dynamic - well there is no way to only send dynamic when
> they change as in BGP subsequent update with the same NLRI is an
> implicit withdraw of the former. So you are forced to repeat everything
> for given link NLRI regardless if even single value changes. You call this
> a "summarization" ?

No, that's not what I call a summarization as I hope I made clear.

> Further imagine controller and operator only needs 10% of the
> information for his specific application. Well hard luck as there is
> no way in general in BGP to ask for a subset of the attribute
> content. Neither RTC nor ORF would be of any use.
>
> What is needed here is an efficient and reliable pub-sub message
> transport - not just load of BGP TCP because it is there. And this
> all applies to trusted or untrusted or hybrid domain types :).

Adrian