Re: [Idr] WG adoption call for draft-abraitis-bgp-version-capability-08, to end September 25

Aijun Wang <> Fri, 30 October 2020 04:01 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 6FA143A076F for <>; Thu, 29 Oct 2020 21:01:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id nuO4Cw6CzkQi for <>; Thu, 29 Oct 2020 21:01:01 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 4F7B73A0E04 for <>; Thu, 29 Oct 2020 21:01:00 -0700 (PDT)
Received: from DESKTOP2IOH5QC (unknown []) by (Hmail) with ESMTPA id 0983A45D59; Fri, 30 Oct 2020 12:00:56 +0800 (CST)
From: "Aijun Wang" <>
To: "'Jakob Heitz \(jheitz\)'" <>, "'Robert Raszuk'" <>, "'Jeffrey Haas'" <>
Cc: "'John Scudder'" <>, "'IDR List'" <>, "'Donatas Abraitis'" <>
References: <> <> <> <> <> <> <>
In-Reply-To: <>
Date: Fri, 30 Oct 2020 12:00:56 +0800
Message-ID: <007c01d6ae71$4513eec0$cf3bcc40$>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_007D_01D6AEB4.53386740"
X-Mailer: Microsoft Outlook 16.0
Content-Language: zh-cn
Thread-Index: AQIWM1sNE2JaFaJ68mE3OWpKRyUFxgHcUlW6ARq1EPEBWccYLALo8C+iAi3DwEgCH+oZw6jUPxUQ
X-HM-Tid: 0a7577aa61cc9865kuuu0983a45d59
Archived-At: <>
Subject: Re: [Idr] WG adoption call for draft-abraitis-bgp-version-capability-08, to end September 25
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Inter-Domain Routing <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Fri, 30 Oct 2020 04:01:04 -0000

Putting the pointer for the static information for further diagnosis into the capability code is better than putting the static information themselves.

The peer just want to know something about the other peer, let it achieve this by the information pointer.



Best Regards


Aijun Wang

China Telecom 


From: [] On Behalf Of Jakob Heitz (jheitz)
Sent: Friday, October 30, 2020 6:18 AM
To: Robert Raszuk <>et>; Jeffrey Haas <>
Cc: John Scudder <>rg>; IDR List <>rg>; Donatas Abraitis <>
Subject: Re: [Idr] WG adoption call for draft-abraitis-bgp-version-capability-08, to end September 25


Hey Robert,


That's a super cool idea. I like it.





From: Idr < <> > On Behalf Of Robert Raszuk
Sent: Thursday, October 29, 2020 4:31 AM
To: Jeffrey Haas < <> >
Cc: John Scudder < <> >; IDR List < <> >; Donatas Abraitis < <> >
Subject: Re: [Idr] WG adoption call for draft-abraitis-bgp-version-capability-08, to end September 25


Just to clarify one point ... I was not seeing a need to use domain names. Just either IP address of bgp peer or implicitely use bgp peer's address.


https url would be actually pretty short ... just the path to the opaque text.


I am more interesting on your view of how to do NSR/ISSU with current proposal.







On Thu, Oct 29, 2020, 12:18 Jeffrey Haas < <> > wrote:


On Thu, Oct 29, 2020 at 09:22:29AM +0100, Robert Raszuk wrote:
> > - I think requiring extended optional params is a good idea for this.  It
> >   mitigates the necessity for having to do do the math to squeeze stuff in
> >   or not.
> How about we would just carry a fixed size URL reference to this
> effectively static and opaque to the bgp protocol information instead of
> actual text string ?

I think this is problematic in a few senses:
- Sure, you could take this idea to the extreme that we'll just have a
  single four-byte field with a FCFS registry that everyone uses and has
  private space for a local registry.  And people would hate that.  You're
  devolving to pre-registration for something that may change frequently.
- Sure, you could just reserve char version[64] in the structure, but domain
  names may vary in length.  And when you move to punycode i18n domains,
  this could be even messier.  See prior issues with RFC 8203.
- I strongly expect that some operators will want to stick in their own
  strings here.  "Role" potentially in combination with "version".

> IMO anything which is static and is not needed for protocol operations,
> best path selection etc ... should be passed as a pointer.
> Fetching such string could be done in spare CPU times well before need to
> locally present it or at the run time when someone executes a show cmd or
> other form of query api.

Which is really a lot of typing to say "we're not exchanging this out of
band ... why?"  Which is still a legitimate argument.  It's why I think the
use case, although slightly helpful, has a lot of weaknesses.  

The one slight boost I give the core use case that we're regularly seeing in
data center cases is protocol stacks are being spun up with very little
additional components. This provides a push to consolidate channels for
sending critical information.

-- Jeff