Re: [Idr] Growing BGP-LS Attribute

"Ketan Talaulikar (ketant)" <ketant@cisco.com> Mon, 22 October 2018 07:32 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 09EB6130DD3 for <idr@ietfa.amsl.com>; Mon, 22 Oct 2018 00:32:21 -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 dcvDphsRuNGJ for <idr@ietfa.amsl.com>; Mon, 22 Oct 2018 00:32:17 -0700 (PDT)
Received: from alln-iport-5.cisco.com (alln-iport-5.cisco.com [173.37.142.92]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6099A130DC3 for <idr@ietf.org>; Mon, 22 Oct 2018 00:32:16 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=152780; q=dns/txt; s=iport; t=1540193536; x=1541403136; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=tVFodYHZcFTryfS8OHh0jmhrhIZSH+CAyxYMKYPk1Js=; b=doOI7f7oYr1KGCpIEHb3fXewTQQjgas80fv0vYf2jfv9wkn3nhwCzqEq 1OMkSCKzguXIQORdJ2W9gQAMwup9nNPnIWVmL0r8H3QBnxjjLIV/dYtJl MCPKDBXA7Y5Sj4D5ygD3JG31XvqsYI7SazQo0YqnFPGXySxJzKTeRSPyz E=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0ADAABxe81b/5RdJa1kGQEBAQEBAQEBAQEBAQcBAQEBAQGBUQQBAQEBAQsBgQ1IL2YOcSgKg2uIGIwYgg2XFYF6CwEBI4RJAheEeCE0DQ0BAwEBAgEBAm0cDIU6AQEBAQMjCjoSEAIBCBEEAQEhAQkCAgIwHQgCBA4FCAGCYjeBHWQPo22BLooSgRuKNxeBQT+BEAGDEoMbAQEBAQGBNwE9D4JdF4JAAokahRsVj34JAoZgiggfgVKEc4hBgSiHQ4FigzOGZIJ6AhEUgSYdOIFVcBU7gmwJgh0XiFyFPm8BAYkxAQEkBAOBAYEfAQE
X-IronPort-AV: E=Sophos;i="5.54,411,1534809600"; d="scan'208,217";a="188968526"
Received: from rcdn-core-12.cisco.com ([173.37.93.148]) by alln-iport-5.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 22 Oct 2018 07:32:14 +0000
Received: from XCH-ALN-006.cisco.com (xch-aln-006.cisco.com [173.36.7.16]) by rcdn-core-12.cisco.com (8.15.2/8.15.2) with ESMTPS id w9M7WECN025028 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=FAIL); Mon, 22 Oct 2018 07:32:14 GMT
Received: from xch-aln-008.cisco.com (173.36.7.18) by XCH-ALN-006.cisco.com (173.36.7.16) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Mon, 22 Oct 2018 02:32:13 -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; Mon, 22 Oct 2018 02:32:13 -0500
From: "Ketan Talaulikar (ketant)" <ketant@cisco.com>
To: Robert Raszuk <robert@raszuk.net>
CC: "idr@ietf.org" <idr@ietf.org>
Thread-Topic: Growing BGP-LS Attribute
Thread-Index: AQHUaG3oQJn1YbjS8EOwigjJXoXthaUq2uQQ
Date: Mon, 22 Oct 2018 07:32:13 +0000
Message-ID: <91762d710b50491f96719654d7b02718@XCH-ALN-008.cisco.com>
References: <CAOj+MMH8A96TUM5qmNdX8j4CMzP51mHzwqasWvY0jOcjH5yBgw@mail.gmail.com>
In-Reply-To: <CAOj+MMH8A96TUM5qmNdX8j4CMzP51mHzwqasWvY0jOcjH5yBgw@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.24.41.46]
Content-Type: multipart/alternative; boundary="_000_91762d710b50491f96719654d7b02718XCHALN008ciscocom_"
MIME-Version: 1.0
X-Outbound-SMTP-Client: 173.36.7.16, xch-aln-006.cisco.com
X-Outbound-Node: rcdn-core-12.cisco.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/idr/fj_Axw6ZNZfU70WGWz0F1ksVQ7A>
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: Mon, 22 Oct 2018 07:32:21 -0000

Hi Robert,

Please check inline for response.

From: Robert Raszuk <robert@raszuk.net>
Sent: 20 October 2018 17:40
To: Ketan Talaulikar (ketant) <ketant@cisco.com>
Cc: idr@ietf.org
Subject: Growing BGP-LS Attribute


Hi Ketan,

So today I see bunch of new proposals requesting addition of number of new TLVs to BGP-LS Attribute.

Some of them will go into attribute along with Node NLRI and some with Link NLRI.
[KT] I believe all of them (new proposals you reference above) are going into the BGP-LS Attribute and none into the NLRI descriptors.

I think by all means this is the largest single BGP attribute we ever had and it seems growing daily like a balloon. Most of the TLVs which are defined contain sub-TLVs which can be filled with data in a non limited by any spec fashion.

Just few questions:

* What happens when someone injects more then 4K of data into this attribute today ? What prevents one from doing so ?
[KT] This would result in a packing error for the BGP update message. I do see your point of this not being discussed in RFC7752.

* Is attribute discard an acceptable thing for someone who counts of that information operationally simple due to a bug in a new TLV ?
[KT] Per https://tools.ietf.org/html/rfc7752#section-6.2.2 a malformed TLV would result in Attribute discard. But an unrecognized TLV would not result in this. This could be clarified in base BGP-LS.

* So far error handling proposal stopped at the attribute boundary as most BGP attributes are small, precisely addressing the problem they were invented to solve. Here we are facing a completely different situation ..
[KT] Agree and the nature of semantic or syntactical validation for TLVs within the BGP-LS attribute does need to be specified in base BGP-LS spec.

* Is it acceptable to loose all other address family information if BGP-LS Attribute error or its size impacts the propagation to the extend of bringing down the session ?
[KT] This would indeed be the case if session isolation were not being used.

* What is the limiting factor of the BGP-LS churn (due to the nature of some carried data being quite dynamic) to other address families present either on sender, receiver or route reflector ?
[KT] Besides the need for session isolation, RFC7752 also talks about knobs for rate-limiting in https://tools.ietf.org/html/rfc7752#section-6.2.3. This would be in addition to whatever is present/available in say IGP to throttle churn at that protocol level.

Below is the current IANA registry with BGP-LS TLV space ... note that it does not even list sub-TLVs which most if not each of the TLV defines. Do we really want to grow this single BGP Attribute even more ?
[KT] Most TLVs do not have sub-TLVs but some do and for sure, as we extend BGP-LS we can expect sub-TLVs and nesting. We can discuss/debate whether introducing more BGP Attributes would help. Another option would be to discuss if we need to introduce the concept of splitting information across multiple NLRIs to advertise different “fragments” of say a node/link where by the corresponding state may not only grow beyond the 4K limit but also more likely may be used to segregate TLVs based on application and update frequency (or other such criteria).

Thanks,
Ketan

Thx,
R
TLV Code Point [https://www.iana.org/assignments/_support/sort_none.gif]

Description [https://www.iana.org/assignments/_support/sort_none.gif]

IS-IS TLV/Sub-TLV [https://www.iana.org/assignments/_support/sort_none.gif]

Reference [https://www.iana.org/assignments/_support/sort_none.gif]

0-255

Reserved

[RFC7752<http://www.iana.org/go/rfc7752>]

256

Local Node Descriptors

[RFC7752, Section 3.2.1.2<http://www.iana.org/go/rfc7752>]

257

Remote Node Descriptors

[RFC7752, Section 3.2.1.3<http://www.iana.org/go/rfc7752>]

258

Link Local/Remote Identifiers

22/4

[RFC5307, Section 1.1<http://www.iana.org/go/rfc5307>]

259

IPv4 interface address

22/6

[RFC5305, Section 3.2<http://www.iana.org/go/rfc5305>]

260

IPv4 neighbor address

22/8

[RFC5305, Section 3.3<http://www.iana.org/go/rfc5305>]

261

IPv6 interface address

22/12

[RFC6119, Section 4.2<http://www.iana.org/go/rfc6119>]

262

IPv6 neighbor address

22/13

[RFC6119, Section 4.3<http://www.iana.org/go/rfc6119>]

263

Multi-Topology ID

[RFC7752, Section 3.2.1.5<http://www.iana.org/go/rfc7752>]

264

OSPF Route Type

[RFC7752, Section 3.2.3<http://www.iana.org/go/rfc7752>]

265

IP Reachability Information

[RFC7752, Section 3.2.3<http://www.iana.org/go/rfc7752>]

266

Node MSD (TEMPORARY - registered 2017-11-02, extension registered 2018-09-07, expires 2019-11-02)

242/23

[draft-ietf-idr-bgp-ls-segment-routing-msd<http://www.iana.org/go/draft-ietf-idr-bgp-ls-segment-routing-msd>]

267

Link MSD (TEMPORARY - registered 2017-11-02, extension registered 2018-09-07, expires 2019-11-02)

(22,23,25,141,222,223)/15

[draft-ietf-idr-bgp-ls-segment-routing-msd<http://www.iana.org/go/draft-ietf-idr-bgp-ls-segment-routing-msd>]

268-511

Unassigned

512

Autonomous System

[RFC7752, Section 3.2.1.4<http://www.iana.org/go/rfc7752>]

513

BGP-LS Identifier

[RFC7752, Section 3.2.1.4<http://www.iana.org/go/rfc7752>]

514

OSPF Area-ID

[RFC7752, Section 3.2.1.4<http://www.iana.org/go/rfc7752>]

515

IGP Router-ID

[RFC7752, Section 3.2.1.4<http://www.iana.org/go/rfc7752>]

516

BGP Router-ID

[draft-ietf-idr-bgpls-segment-routing-epe<http://www.iana.org/go/draft-ietf-idr-bgpls-segment-routing-epe>]

517

BGP Confederation Member

[draft-ietf-idr-bgpls-segment-routing-epe<http://www.iana.org/go/draft-ietf-idr-bgpls-segment-routing-epe>]

518-1023

Unassigned

1024

Node Flag Bits

[RFC7752, Section 3.3.1.1<http://www.iana.org/go/rfc7752>]

1025

Opaque Node Attribute

[RFC7752, Section 3.3.1.5<http://www.iana.org/go/rfc7752>]

1026

Node Name

variable

[RFC7752, Section 3.3.1.3<http://www.iana.org/go/rfc7752>]

1027

IS-IS Area Identifier

variable

[RFC7752, Section 3.3.1.2<http://www.iana.org/go/rfc7752>]

1028

IPv4 Router-ID of Local Node

134/---

[RFC5305, Section 4.3<http://www.iana.org/go/rfc5305>]

1029

IPv6 Router-ID of Local Node

140/---

[RFC6119, Section 4.1<http://www.iana.org/go/rfc6119>]

1030

IPv4 Router-ID of Remote Node

134/---

[RFC5305, Section 4.3<http://www.iana.org/go/rfc5305>]

1031

IPv6 Router-ID of Remote Node

140/---

[RFC6119, Section 4.1<http://www.iana.org/go/rfc6119>]

1032-1033

Unassigned

1034

SR Capabilities

[draft-ietf-idr-bgp-ls-segment-routing-ext<http://www.iana.org/go/draft-ietf-idr-bgp-ls-segment-routing-ext>]

1035

SR Algorithm

[draft-ietf-idr-bgp-ls-segment-routing-ext<http://www.iana.org/go/draft-ietf-idr-bgp-ls-segment-routing-ext>]

1036

SR Local Block

[draft-ietf-idr-bgp-ls-segment-routing-ext<http://www.iana.org/go/draft-ietf-idr-bgp-ls-segment-routing-ext>]

1037

SRMS Preference

[draft-ietf-idr-bgp-ls-segment-routing-ext<http://www.iana.org/go/draft-ietf-idr-bgp-ls-segment-routing-ext>]

1038-1087

Unassigned

1088

Administrative group (color)

22/3

[RFC5305, Section 3.1<http://www.iana.org/go/rfc5305>]

1089

Maximum link bandwidth

22/9

[RFC5305, Section 3.4<http://www.iana.org/go/rfc5305>]

1090

Max. reservable link bandwidth

22/10

[RFC5305, Section 3.5<http://www.iana.org/go/rfc5305>]

1091

Unreserved bandwidth

22/11

[RFC5305, Section 3.6<http://www.iana.org/go/rfc5305>]

1092

TE Default Metric

22/18

[RFC7752, Section 3.3.2.3<http://www.iana.org/go/rfc7752>]

1093

Link Protection Type

22/20

[RFC5307, Section 1.2<http://www.iana.org/go/rfc5307>]

1094

MPLS Protocol Mask

[RFC7752, Section 3.3.2.2<http://www.iana.org/go/rfc7752>]

1095

IGP Metric

[RFC7752, Section 3.3.2.4<http://www.iana.org/go/rfc7752>]

1096

Shared Risk Link Group

[RFC7752, Section 3.3.2.5<http://www.iana.org/go/rfc7752>]

1097

Opaque Link Attribute

[RFC7752, Section 3.3.2.6<http://www.iana.org/go/rfc7752>]

1098

Link Name

[RFC7752, Section 3.3.2.7<http://www.iana.org/go/rfc7752>]

1099

Adjacency Segment Identifier (Adj-SID) TLV

[draft-ietf-idr-bgp-ls-segment-routing-ext<http://www.iana.org/go/draft-ietf-idr-bgp-ls-segment-routing-ext>]

1100

LAN Adjacency Segment Identifier (Adj-SID) TLV

[draft-ietf-idr-bgp-ls-segment-routing-ext<http://www.iana.org/go/draft-ietf-idr-bgp-ls-segment-routing-ext>]

1101

Peer-Node-SID

[draft-ietf-idr-bgpls-segment-routing-epe<http://www.iana.org/go/draft-ietf-idr-bgpls-segment-routing-epe>]

1102

Peer-Adj-SID

[draft-ietf-idr-bgpls-segment-routing-epe<http://www.iana.org/go/draft-ietf-idr-bgpls-segment-routing-epe>]

1103

Peer-Set-SID

[draft-ietf-idr-bgpls-segment-routing-epe<http://www.iana.org/go/draft-ietf-idr-bgpls-segment-routing-epe>]

1104

Unassigned

1105

RTM Capability

22/40

[RFC8169<http://www.iana.org/go/rfc8169>]

1106-1113

Unassigned

1114

Unidirectional Link Delay (TEMPORARY - registered 2017-08-18, extension registered 2018-07-20, expires 2019-08-18)

[draft-ietf-idr-te-pm-bgp<http://www.iana.org/go/draft-ietf-idr-te-pm-bgp>]

1115

Min/Max Unidirectional Link Delay (TEMPORARY - registered 2017-08-18, extension registered 2018-07-20, expires 2019-08-18)

[draft-ietf-idr-te-pm-bgp<http://www.iana.org/go/draft-ietf-idr-te-pm-bgp>]

1116

Unidirectional Delay Variation (TEMPORARY - registered 2017-08-18, extension registered 2018-07-20, expires 2019-08-18)

[draft-ietf-idr-te-pm-bgp<http://www.iana.org/go/draft-ietf-idr-te-pm-bgp>]

1117

Unidirectional Packet Loss (TEMPORARY - registered 2017-08-18, extension registered 2018-07-20, expires 2019-08-18)

[draft-ietf-idr-te-pm-bgp<http://www.iana.org/go/draft-ietf-idr-te-pm-bgp>]

1118

Unidirectional Residual Bandwidth (TEMPORARY - registered 2017-08-18, extension registered 2018-07-20, expires 2019-08-18)

[draft-ietf-idr-te-pm-bgp<http://www.iana.org/go/draft-ietf-idr-te-pm-bgp>]

1119

Unidirectional Available Bandwidth (TEMPORARY - registered 2017-08-18, extension registered 2018-07-20, expires 2019-08-18)

[draft-ietf-idr-te-pm-bgp<http://www.iana.org/go/draft-ietf-idr-te-pm-bgp>]

1120

Unidirectional Bandwidth Utilization (TEMPORARY - registered 2017-08-18, extension registered 2018-07-20, expires 2019-08-18)

[draft-ietf-idr-te-pm-bgp<http://www.iana.org/go/draft-ietf-idr-te-pm-bgp>]

1121

Graceful-Link-Shutdown TLV

[RFC8379<http://www.iana.org/go/rfc8379>]

1122-1151

Unassigned

1152

IGP Flags

[RFC7752, Section 3.3.3.1<http://www.iana.org/go/rfc7752>]

1153

IGP Route Tag

[RFC5130<http://www.iana.org/go/rfc5130>]

1154

IGP Extended Route Tag

[RFC5130<http://www.iana.org/go/rfc5130>]

1155

Prefix Metric

[RFC5305<http://www.iana.org/go/rfc5305>]

1156

OSPF Forwarding Address

[RFC2328<http://www.iana.org/go/rfc2328>]

1157

Opaque Prefix Attribute

[RFC7752, Section 3.3.3.6<http://www.iana.org/go/rfc7752>]

1158

Prefix SID

[draft-ietf-idr-bgp-ls-segment-routing-ext<http://www.iana.org/go/draft-ietf-idr-bgp-ls-segment-routing-ext>]

1159

Range

[draft-ietf-idr-bgp-ls-segment-routing-ext<http://www.iana.org/go/draft-ietf-idr-bgp-ls-segment-routing-ext>]

1160

Unassigned

1161

SID/Label TLV

[draft-ietf-idr-bgp-ls-segment-routing-ext<http://www.iana.org/go/draft-ietf-idr-bgp-ls-segment-routing-ext>]

1162-1169

Unassigned

1170

IGP Prefix Attributes

[draft-ietf-idr-bgp-ls-segment-routing-ext<http://www.iana.org/go/draft-ietf-idr-bgp-ls-segment-routing-ext>]

1171

Source Router-ID

[draft-ietf-idr-bgp-ls-segment-routing-ext<http://www.iana.org/go/draft-ietf-idr-bgp-ls-segment-routing-ext>]

1172

L2 Bundle Member TLV

[draft-ietf-idr-bgp-ls-segment-routing-ext<http://www.iana.org/go/draft-ietf-idr-bgp-ls-segment-routing-ext>]

1173

Extended Administrative Group (TEMPORARY - registered 2018-04-09, expires 2019-04-09)

22/14

[draft-ietf-idr-eag-distribution<http://www.iana.org/go/draft-ietf-idr-eag-distribution>][RFC7308<http://www.iana.org/go/rfc7308>]

1174-65535

Unassigned