Re: [Idr] BGP autoconfiguration - draft-minto-idr-bgp-autodiscovery

Minto Jeyananth <minto@juniper.net> Mon, 21 March 2022 05:15 UTC

Return-Path: <minto@juniper.net>
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 7FAC63A115D; Sun, 20 Mar 2022 22:15:59 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.109
X-Spam-Level:
X-Spam-Status: No, score=-7.109 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=juniper.net header.b=ZnZ32GNn; dkim=pass (1024-bit key) header.d=juniper.net header.b=Sl5P+JXl
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 YwWVQyUyYoIW; Sun, 20 Mar 2022 22:15:53 -0700 (PDT)
Received: from mx0a-00273201.pphosted.com (mx0a-00273201.pphosted.com [208.84.65.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3118E3A115B; Sun, 20 Mar 2022 22:15:52 -0700 (PDT)
Received: from pps.filterd (m0108156.ppops.net [127.0.0.1]) by mx0a-00273201.pphosted.com (8.16.1.2/8.16.1.2) with ESMTP id 22L0eUhM029722; Sun, 20 Mar 2022 22:15:50 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : mime-version; s=PPS1017; bh=4KisZI1rt7nnD3Kz17P8+8Nq1IFWltWk5PkGipy+uRM=; b=ZnZ32GNne6Jb5kSfVkV939+GGZZ5cH9HSPx5TLocXGgc43DDZAgq53B7puKNmW1LPbHm Dcu5U1mDZVKXnQO8WyjOJvkax++9RGEPPy/yhih7bOZPdljmrsieSuH+7tbMqtL960yR y+uxuOdGCT62uK6q6eTaEUly1EB4pGIWhwlFzpHwtWhP2YZvEFw8GTnL3osADuyd7elb K/+9aTXjhz5TpFgYao1Muu10D7A3xl3PDfDsQ2WrWQP840528UjKx4CbaQ7oO77clnmQ f7sv1bOj/CvW6+U5+7oBL9mQ4b6MpwvJ2dAWA/1C8h4EZ4WAHN7jDUOmfMc8eCOFFNcZ Fg==
Received: from nam02-bn1-obe.outbound.protection.outlook.com (mail-bn1nam07lp2048.outbound.protection.outlook.com [104.47.51.48]) by mx0a-00273201.pphosted.com (PPS) with ESMTPS id 3ewe6n2a4t-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Sun, 20 Mar 2022 22:15:49 -0700
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KJOPaKHEIsaGHnkCjfbHEPkuX7Hfgp96jkQv2CEl0PFcmam2xh5RxDfAM9u04WGgRXPuac8DfoHou+kKKgNZICUu9fph6OFlz0x+TCtfzh++jKrWDcssE2mtr+mIr3HUopJYBK2/5rmPvnRqf+TRY3soHRpcSdXUgKFyXo3t5eLVMR34LMYEt+0bEdnBnPPJRTQvfJBkYhgd5W6+fZsWHk1Htnt3eSSEjw4zW+b/vESDGvQ5zbwpHfaj4ojerTrFOqcnuNLvM97RSpzf9CTqYF8vkF7kOOc5hTbWjp0UOqwPdkaUMx1rLPg6A+5Or3MzbdSWkxeh/y15YgU6U+3OIg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=4KisZI1rt7nnD3Kz17P8+8Nq1IFWltWk5PkGipy+uRM=; b=j9jBm23fWrG6wNrcJ2wrvE51SSDkw6mlroDi2CdG3EwMKaPED4/85f+2sLiz2bfWXsQKYUQJMDSpsspcahVBYZQelCxRMqznoGET9MSlHCAGwHp0vcNgAFOQOXjpMAepz9P54jeFDbX69uLbm4aG2/SE5G2pSOpvfFDInTU60FXiiNPZI2UYzi4k9AUepgnFS5uwJoGo6mFggtWwJlxI+j1+GaT8vKiNzNK0hEAkTAGDlxKyHchK8w7alUjKMz1JuEAK0jDEa1DkkdV32sPzVTcxCZdc+rHMQfED4/ONUc6paFD/Gw9xdBT6j0X1z8EHMRSoGH4GSCa8HocoFhMpfQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=juniper.net; dmarc=pass action=none header.from=juniper.net; dkim=pass header.d=juniper.net; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4KisZI1rt7nnD3Kz17P8+8Nq1IFWltWk5PkGipy+uRM=; b=Sl5P+JXlSvj7iAqX9rLcdpXgBtoN3DmXcQkMEngk6fj+f/OwE3ciSVJ8kP4m4sEmxiLltii2xgQ5hyodRvTXTEik79eDwnwaKdV20ml6mtLAx7G8A10e7W3I5vFT8+hxRn1B7ub01qLOR60ilhf36agnUOZ+nDUndIS0MUADWrw=
Received: from BYAPR05MB4359.namprd05.prod.outlook.com (2603:10b6:a02:f8::25) by BYAPR05MB6696.namprd05.prod.outlook.com (2603:10b6:a03:e9::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5081.16; Mon, 21 Mar 2022 05:15:46 +0000
Received: from BYAPR05MB4359.namprd05.prod.outlook.com ([fe80::b121:d015:8205:70a]) by BYAPR05MB4359.namprd05.prod.outlook.com ([fe80::b121:d015:8205:70a%7]) with mapi id 15.20.5081.014; Mon, 21 Mar 2022 05:15:45 +0000
From: Minto Jeyananth <minto@juniper.net>
To: Susan Hares <shares@ndzh.com>, 'Jeffrey Haas' <jhaas@pfrc.org>, "idr@ietf.org" <idr@ietf.org>
CC: "draft-minto-idr-bgp-autodiscovery@ietf.org" <draft-minto-idr-bgp-autodiscovery@ietf.org>
Thread-Topic: [Idr] BGP autoconfiguration - draft-minto-idr-bgp-autodiscovery
Thread-Index: AQHYMrU0t0I6hf6eLUqHOLUqKRNXp6zFrPIagAEFPYCAAo98jw==
Date: Mon, 21 Mar 2022 05:15:45 +0000
Message-ID: <BYAPR05MB4359F7ACE3952027135F6F10A5169@BYAPR05MB4359.namprd05.prod.outlook.com>
References: <20220308062429.GF17510@pfrc.org> <BYAPR05MB4359013ABE17D0296F6CEB86A5139@BYAPR05MB4359.namprd05.prod.outlook.com> <00b501d83b8b$cd5ff320$681fd960$@ndzh.com>
In-Reply-To: <00b501d83b8b$cd5ff320$681fd960$@ndzh.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
msip_labels: MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Enabled=True; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_SiteId=bea78b3c-4cdb-4130-854a-1d193232e5f4; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_SetDate=2022-03-21T03:27:07.3049539Z; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_ContentBits=0; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Method=Standard
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: e03f0dc2-5b22-4a46-a5a7-08da0af9da98
x-ms-traffictypediagnostic: BYAPR05MB6696:EE_
x-ms-exchange-atpmessageproperties: SA|SL
x-microsoft-antispam-prvs: <BYAPR05MB6696B2D402FA80B45215D0F9A5169@BYAPR05MB6696.namprd05.prod.outlook.com>
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: zgawXPGnsLpCK57D9l0FdODxfo1qm93gB92afSgtIHcvRvOf2y7vyMBcewMZQ778pOY0QxF2fombks4sXRIS9e95wHl5dL8G1/C2ncTTZnlgXzSS7IckFiEfScSEZbozbfK5OU8O6CkH8nd7SSqfct+scAibQ9LLiSB2T8OaLD13ueIoiPO8N3S8gtIIbWfX/TpuNcnNQJ+SiuWT0QeSshOIDJ5cQUB9AheOFME/nTV76SACGIOnvVwo2wm25rPSEee36A8aCrbeGYlZ2yCXfbFLZsUOHV7Abg0EhaapKLtXO+hetg8BahDYoaBfw6Ic5qpeS1CasyuiuotV57aY9ewcw219vAkj2VruPe+4ZPV0AVN3xoS38ED6W+CF5BSgr2v04hyf6pMs0uMj0AwtFxKI0ObPY3vQRe9qacGZMjMY5POH1h+LyUSMczzb+S4Q0JC08Pw97QznRC/OypQGGo5FL5IUpAFOgwgjOyq3tVX0o3S+2eU55qRZl3rkDLl5MMuiR8cTkrGkq/duhIDXspH/meCED7IUStFJQaGhtRFOmr/7S/fxKeYNTl1QdcVSG1BJcTp0BBqVMzEjWK4bCaAJ5O4tMiHmkVm4LZ2aViV9TyDMoLwkLLJ4Vo+wXa+GK6fyOQ8fyUd5VkwFj6sYqG6MotUASCKeaiyLkxr9TB5wmyB0zgvnLGW2y53XJO0dQGut8dAoPeeh6FipDykQTHqZtzcVHdxovJe+nd+FuZoGTCcCWsKhy7Vmq0pKcj0/16nDq5AQQyH0nzQt9Gq7fazD2nmXO8ANkKFpMUHTlQZnrnwQVOi8rrf1bzFud8nOy4OR13ZuZ5DLoSd+LA5IeA==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BYAPR05MB4359.namprd05.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(4636009)(366004)(5660300002)(26005)(83380400001)(52536014)(86362001)(186003)(8936002)(7696005)(9686003)(6506007)(53546011)(966005)(508600001)(66556008)(76116006)(166002)(66946007)(122000001)(4326008)(71200400001)(38100700002)(66476007)(38070700005)(64756008)(66446008)(30864003)(33656002)(55016003)(8676002)(110136005)(316002)(2906002); DIR:OUT; SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 3DE1kF3zWckBLeLqfrsITLgdVtx9dIwVEGGA/YLrleXixWSuhoaPbQdWGjEi1a2H7CU0pfAMYgEVKMUwb3tASmN9b0vcdduiact3UWNCY9FJOq24wbQi0SdahKzchD00SySrnp2CiHKTL0OouymyIU1opFJebyFt2M+dmWCeZlzmkukVd+kro46MmN2WZgMNpOgh5SB/EPmcPXlqAYOoVDZjmio5G94xSUX10jthmSO7ypT0h4dye0t0BOuv7QhvW0rgFA+U2jt6Ogw2bF6g+kflxvZW3I+9WhpO8vuV+Syrzd/tFACFjgw1XF1go7THoytX1ASCjpJQRiYbIYqW4BwJBcZC8ZrCPqHHN1kFCCSokdm6QT6TkXgjCyJB39rmumW4P8AjgHpoIHmiMYdM3frcMsrOzy2YWGGDBnl9JC+A4M0UL4C+5PmdXSpkx7Qey1pCjvbCp8QsfZqiLFKv0zG9yvnjIeOru4ahiMblPTY3jrZ8KcWH4IXqG/eRMV4aHSJfKiKSrMvpu2O6KyMbOZFasN3YlP480lrzuCoqD2cuozTtY5Z/6+HApkkCLjE+vUpPBPfCboFe+mVEuOSUmV4ApvlR4KQAItGvOCVT6eq9vA8QS2JzvG1qzGqAbG9aZSLNg+YIw5mBSt/9nhw2LVydhVx6GIacpNAowoT7J9nVxo7Xq7Iky9yWsOEpxKaQs725BUiECAxECc9XjcqhVhQOj3VUsyhbKf60UEYricbHA3Rm+QvFuQPclPTujjoo+E5RzT8POpWW5draxlWHz3bgKsOPST/yTqLa6oCa3VPCDVzga6lb8LoOkiKDVZeHg4YUSNkEKLNWC5eWdP5wsvzfZasPb9CYMCW4fFM7daW54MWSCS3stk6apjJGc2EeGLuoQzhs52tO/m9EA+bD5TnXuMg4+bwVIUny9OVbvGdEBTfP4uht3zC+yIwozc4w98EUhnuICqlnf4QTTpRiXKre4g8Z4U+7JfEFLa0ewU5UcUD21/f5uFcz0n0dMuOBXTF3NpREm+02nYJgdLW2dgnog26ZkQh9DriW6a4+kdLepz2d6xZNA/2rCSIILUWiL3CCGC68vyf0Kx05FwrJ5jKWNlufmmc7nhlFKHWsP1qT4hUU6B+Gu2/DBefes0sR5bTbDBM2xHh5OtizAMBoYNAPFmJpDPSjwxG29Z3Lm+Qh2ywssEtHYkQ6qHkuXR455iXjv2DcMMOxZq7o26v5xqrrU7lTmrd/UwPHaeCrU0GGkmZATE41wGP1+Lxfk8qzv89CuArs44SUzG2i4OH5FO1hJ5M5lhUGSSzCdy3U14I9towaprZSFywub/BigHE63R9uOP3Y/SNCa5CWeBZBMs0A1MKIVxoh/d/+JQhnn0lVrj5JtEzSuoz8pZa2r5fadx41SQ56rz6l/8EIRf4xtPwiIncuv+T6mlIcKRb2diUnyoIF4VzKtvTIJNJpZxSgSbYgCcxFd25lG5ZMrqdPbQ==
Content-Type: multipart/alternative; boundary="_000_BYAPR05MB4359F7ACE3952027135F6F10A5169BYAPR05MB4359namp_"
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: BYAPR05MB4359.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e03f0dc2-5b22-4a46-a5a7-08da0af9da98
X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Mar 2022 05:15:45.5355 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: oMljS3pu0uOAYMsPrBudZP0dUknACAXeADpoyZtQPo8h48cWS6BEfTQgyHoiFYBnnhUO1mRA/mZgYBl93prwQg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR05MB6696
X-Proofpoint-ORIG-GUID: RIzbxsnne1WNswnPqkOeRAUht8ejv9P2
X-Proofpoint-GUID: RIzbxsnne1WNswnPqkOeRAUht8ejv9P2
X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.850,Hydra:6.0.425,FMLib:17.11.64.514 definitions=2022-03-21_01,2022-03-15_01,2022-02-23_01
X-Proofpoint-Spam-Details: rule=outbound_spam_notspam policy=outbound_spam score=0 impostorscore=0 malwarescore=0 clxscore=1011 lowpriorityscore=0 mlxscore=0 mlxlogscore=999 priorityscore=1501 phishscore=0 bulkscore=0 adultscore=0 spamscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2202240000 definitions=main-2203210033
Archived-At: <https://mailarchive.ietf.org/arch/msg/idr/aWesrGzj-_gOv--GjFTc8YBbVTk>
Subject: Re: [Idr] BGP autoconfiguration - draft-minto-idr-bgp-autodiscovery
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, 21 Mar 2022 05:16:00 -0000

Susan,

Thanks for the review. Please see inline [minto2]

From: Susan Hares <shares@ndzh.com>
Date: Saturday, March 19, 2022 at 5:21 AM
To: Minto Jeyananth <minto@juniper.net>, 'Jeffrey Haas' <jhaas@pfrc.org>, idr@ietf.org <idr@ietf.org>
Cc: draft-minto-idr-bgp-autodiscovery@ietf.org <draft-minto-idr-bgp-autodiscovery@ietf.org>
Subject: RE: [Idr] BGP autoconfiguration - draft-minto-idr-bgp-autodiscovery
[External Email. Be cautious of content]

Jeff and Minto:
[WG chair hat off]
[Individual contributor hat on]

I have a few additional questions below.

Two high level questions:

1) What non-BGP use are you proposing for your protocol?

[minto2] None. Though, technically Link tlv (section 4.2.6) could be treated as non bgp parameter.


2) What is the normal rate of your timers?
[minto2] Protocol required that a sender should refresh advertise state before it expires.
In steady-state refresh, the sender shall refresh the states after the advertised lifetime goes below 2/3 of the time. For e.g if the advertised remaining lifetime is 900 seconds, then it may refresh for every 300 seconds +/- jitter.
In short-live fast-refresh mode, the sender will not consider the advertised remaining lifetime. And sender switches to a rapid timer, typically 250 milliseconds, for a second.

Thank you for your hard work on this protocol!

Sue


From: Idr [mailto:idr-bounces@ietf.org] On Behalf Of Minto Jeyananth
Sent: Friday, March 18, 2022 6:42 PM
To: Jeffrey Haas; idr@ietf.org
Cc: draft-minto-idr-bgp-autodiscovery@ietf.org
Subject: Re: [Idr] BGP autoconfiguration - draft-minto-idr-bgp-autodiscovery


Jeff,
   Thanks for the review.  At a high level, the SA protocol design trade-off is given to simplicity(the requirement is to just bring up BGP).  Any higher-level complexity can be very well handled by BGP.

Please see inline [minto]. A couple of clarifications inline and will address the rest of the comments in the next version of the draft.  Again thanks for the thoughtful review.


From: Jeffrey Haas <jhaas@pfrc.org>
Date: Monday, March 7, 2022 at 10:24 PM
To: idr@ietf.org <idr@ietf.org>
Cc: draft-minto-idr-bgp-autodiscovery@ietf.org <draft-minto-idr-bgp-autodiscovery@ietf.org>
Subject: BGP autoconfiguration - draft-minto-idr-bgp-autodiscovery
[External Email. Be cautious of content]


Working Group,

As noted in another thread, we had a late entrant to the BGP
autoconfiguration options.  In an attempt to spur along discussion of the
L3ND proposal, I posted my analysis of that proposal in the same vein as the
discussions we'd had over the course of the various IDR interim meetings and
also as covered in the Appndices of draft-ietf-idr-bgp-autoconf-considerations.[1]

While draft-minto-idr-bgp-autodiscovery[2] had been presented and received
discussion at those interims, similar analysis as that in the design team's
document wasn't done.  The authors of L3ND have asked for similar treatment
for draft-minto.

Below, find my observations on the draft with questions and commentary
intermixed.  I finish this response with my high level analysis and personal
opinion on what these properties accomplish.

-----

Scoping Discussion:

- The proposal starts by noting that it covers more general discovery by
  labeling itself "Service Advertisement".  So, the scope is broader than
  simply BGP autoconfiguration state.
[Sue:  Is there extra state due to the service advertisement?
- Single-hop BGP and "loopback address BGP between directly connected
  speakers" are use cases.
[Sue: Please indicate where you find this information in the text.]
[minto2] Please see section 2.

“Receiver could use this information to bootstrap the single hop bgp and/or loopback address bgp between directly connected bgp speakers
“
- Advertised state is expected to be refreshed; it times out.
- Messages are transmitted peridically.
[sue]: What is your normal time frame.  Page 9 does not provide this information.
It states:  “A sender should periodically send PDU to refresh the advertised  information before the time expires.”
[minto2] This is same as point 2). Will add a section on next version.
-----

Protocol properties:

> - PDU messages are simple 1-octet type, 2-octet length TLV format.
[Sue: Type is 8 bits.  Do you see any future expansion for the non-BGP use case? ]]
[minto2] No. Message type also provide 8 bits. Message is provide logical grouping of TLVs.
>- Two top-level PDUs defined:
  + Service Advertisement PDU
    * Defines "lifetime" properties of the advertisements.  A "time to live"
      field.
    * A Config sequence TLV.  Compare vs. "BGP Session Protocol State
      Version Number" in the requirements.
    * Authentication TLV. Provides authentication of Service Advertisements.
    * Refresh request TLV.  The only message that attempts to trigger
      another Service advertisement speaker to send messages.
Is the structure of the two PDUs due to the non-BGP use case?
[minto2] 2 messages. Base message provide base operation such as timer authentication etc … “
[minto2] excerpt from draft

“The document defines following messages.

1.    SA Base message

The SA Base message is mandatory message and mainly used for the

protocol operation.





2.    BGP service advertisement message

BGP Service Advertisement message provides transport information to

   bring up the bgp session.

“

Section 3's TLV format runs somewhat backwards from many RFCs:
- The top level TLV, the SA PDU, is shown last.
- The individual messages in an SA PDU is shown in the middle.
- The generic TLV structure is at the top.

Message ID, is per-message.  It's a little unclear how individual message
IDs within a given SA PDU is helpful.  Should the message ID be per SA PDU
instead?
[minto] The message-id per message type will help in debugging per message level.
The individual field definitions should list whether they are mandatory or
optional.
[minto] will fix it in next version.


The Remaining lifetime field is 2-octets.  65k seconds is 1k hours. That's
overly long.  :-)

[minto] We always run into not enough size.  And 65k is 18hours.
[Sue: Why are you cycling so much?  What are the timer limits?]

- This field should probably be bound to a much lower value for sending.
- Implementations may wish to bound the maximum time they're willing to
  keep.

[minto] Yes. It is not explicitly mentioned in spec. But a stateless implementation, could simply discard subsequent pdu after it bring up  bgp.
[Sue:  It would be helpful to mention this in the specification.
[minto2] Will add it next version. In short this is same as  point 2) response.

- Expiry of records might want to interact with Refresh request?
[minto] Good suggestion. Will add it in some section in next version.
[Sue] How are you keeping track of the expiry of records in your implementation?
[minto2] A stateful implementation keep the peer’s advertised state until the remaining-life expire.

The Refresh request procedure is under-specified.  Since it's the one
field that causes another SA speaker to respond, it should describe:
- What does responding to such a trigger do to the sender's timers for the
  message?
- What sort of rate limiting should be done for responding to the triggers?
[minto] Will add a new section on the refresh request and fast send.


Local address TLV:
- The flags and Res fields need the standard "MUST BE ZERO on send, SHOULD
  BE ignored on receipt" text.
- The flags field needs an IANA Considerations section.
- Preference doesn't have any normative text as to how it should be used.
- The contents of sections 4.2.1 and 4.2.2 blend together a bit.
[minto] Will fix it in next version.


Transport properties:
- Being at the top level of the SA message, the implication is that these
  apply uniformly to the Local Address in that message.

Security TTL:
- Currently specified as a zero-length flag.
- Some GTSM might require 254 rather than 255.  This is inconsistently
  flagged in many pieces of configuration state across IETF.
[minto] Will fix it in next version.


Security authentication:
- A selector for BGP's authentication mechanism.
- Has TCP-MD5 and TCP-AO
- Need an IANA registry.
- Not bound to any particular address in the Local Address field.  If
  security needs to vary, like any other attribute, it needs to go into a
  separate SA message.

MSS:
- 4 bytes is probably too big. :-)
[Sue: Do you  need the MSS of 4 bytes for some of your retransmission? }

[minto2] No. will fix it next version

-----

Protocol behavior:
- The procedure really needs to talk about some possible default timer
  values.
[minto] The preference be automatic. The value might change from fast(order of milliseconds) to steady state value based on local load.
[Sue: Could you explain how the preference might be automatic.
It would be helpful to explain this in the protocol.]

[minto2] Will add timer section in next version.

- The procedure indicates that it may refresh more frequently than the
  expiration time.  It should offer advice as to how often it may do so.  An
  example from BGP's holdtime would be to send at least once in 1/3 of that
  interval.  Other options could be to have two timers described: retention
  timer (placed in PDU) and transmit timer (configuration state).
- Fast transmit could use some procedure.  For example, transmit X times in
  Y interval.
  + The refresh TLV provides some ability to do a "pull".

[minto] will add a section in next version.
[Sue:] Does the refresh have a “pull”.

[minto2]  Refresh request TLV ask for the receiver to resend the pdu,



Thanks

-minto


- When specifying "all routers", include the multicast group in the text for
  clarity.
[minto] will fix it in next version.

- The procedure argues that you can receive the same state in multiple
  encapsulations; i.e. IPv4 and IPv6.  Some discussion should be given as to
  how to recognize it's the same for puposes of "resetting state".  As an
  example, the Identifier field being the same.
- The transmit procedure supplies some of the "what is mandatory"
  description.  That should be clarified in the TLV descriptions.
- The procedure for handling the identifier vs. IP addresses should be
  clarified.
[minto] Will fix it next version.


-----

Misc:
- The document should really remove references to UDP port 179.  IANA hasn't
  assigned this.  It should simply be "TBD".
[minto] will fix it.

- Code points should consider starting at 1 rather than 0.  (Jeff's
  opinion.)
- TLVs starting at > 16 should get some discussion as to why that number is
  being used.
[minto] ok. My initial thought, if a need special tlv code across all message then we can use it.


-minto

-----

Security Properties:
Authentiction TLV for Service Advertisements contain:
<key-id (2-octets), Sequence number (4-octets), Hash/digest (variable)>

(Defined in §4.1.3, procedure in §5.4.)

- The procedure for management of key-ids is left as an opaque detail.  This
  would require implementations to have key id management that includes
  inputs for cipher and shared key.
- The Sequence number field has procedure somewhat similar to BFD's use of
  Sequence number in non-meticulous mode. (See RFC 5880, §4.3+.)
  + I suspect the sequence number comparison features should refer to
    RFC 1982.  (And the authors of draft-minto may wish to refer to the
    Author list of that RFC. :-)
- The procedure for handling the hash over the PDU is missing many of the
  usual bits of procedure when such hash based mechanisms are done:
  - What value should the PDU's Hash/digest field be set to?
  - Where should the key be placed in the PDU for purposes of calculating
    the hash?
- What are the mandatory hash mechanisms?
  + Is there a benefit to including an authentication type along with just
    the key-id?  Doing so might help simplify procedure by making validation
    always able to determine TLV lengths based on input.
- The receiver procedure needs clarification as to what its desired security
  properties are.  For example, if the receiver expects to receive packets
  with the Authentication TLV, it should require one on receipt.  Otherwise
  there's possibility of an active attacker simply generating Service
  Advertisements without an Authentication TLV.

The mechanism is currently vulnerable to replay attacks.
- This can be somewhat mitigated by reasonable key rotation and limited key
  lifetime.
- Keys really need to be rotated as part of sequence number rollover.
- Sequence number increment procedures need to be bound to prevent certain
  scenarios where a later sequence number has been cached by an attacker and
  used to trigger the "this is a valid next number" and convince listeners
  to ignore the valid but appear to be stale packets.

For fresh starting receivers, they are vulnerable to replay attacks that
keep sequence numbers from synchronizing initially.
+ An epoch/generation value in addition to to the steps above could reduce
  the attack space.
+ See for example TCP-AO's Sequence Number Extension concept.

The security TLV for the BGP session itself is incomplete.  While
authentication TLV indicates TCP-AO/TCP-MD5, there needs to be a hint as to
what the connection properties should be.  Key-id, reference to keychain
RFC, etc.  Is ipsec planned for?


-----

Transport Layer Considerations:

- The feature uses (IP) UDP multicast.
- No transport reliability is implied.
- IP fragmentation is implied as the mechanism to deal with packets that are
  too large.
  + Link MTU will thus define how much state can be passed around.
  + Possibility is left in the design (via TBD TLVs) that fragmentation
    might be addressable in the future.

-----

Misc.:

- The document is in need of a spelling and grammar review.  In the interest
  of not cluttering functional analysis when the intent is clear, I will
  send comments on spelling and grammar separately to the authors.

-----

Jeff's read of the proposal:

The protocol is a "shout in the dark" type protocol.  In general, it doesn't
have any particular session layer.  Receivers may, or may not be listening.
For the most part, there is no expectation of a receiver with the expection
of the refresh TLV which is intended to elicit a response from other
senders.  (Compare vs. IGMP/MLDv2.)

Being sessionless, one of its big problems is that the state must be small
enough to fit into link MTU.  This is likely sufficient for many BGP
autodiscovery scenarios, although the question of massive numbers of
messages is raised in discussion about L3ND.


IP fragmentation is offered as a possible method to deal with too-large
messages, but fragmentation is often seen as an attack on IP infrastructure
and in many cases is explicitly filtered.  The draft discussses possible
procedures for extending support via additional TLVs.  If there's intent to
do that, such procedure should be specified early since it would tend to
manifest as one of a common set of prior solutions:
- Split it into a number of additional messages.  Compare vs. PIM Group Set
  Fragmentation.
- Provide a session-based protocol as the extension mechanism.  However,
  that opens attacks against sessions.  Compare possibly vs. LLDPv2.

The SA procedures can be exercised unidirectionally.  This means that a
device may volunteer to have BGP Speakers peer with it, but don't have to
have the rest of the network trying to peer with them.

The timer procedures are underspecified.  Similarlities can be drawn to RIP
and to some extent IGMP/MSDP.

Security procedures for the SA PDU need tightening, as noted above.

The procedure for keying of BGP sessions is absent and needs text.  Since
the protocol has no privacy, exchanging BGP session keys directly in the
TLVs as cleartext cannot be suggested.

Being sessionless, there is no session infrastructure to be under attack.
The primary ready attacks against the infrastructure are volumetric attacks.
Such attacks beat up on the crypto involved at a cost related to the
strength of the cipher used to protect the validation of the packet.  These
attacks are mitigated, much as similar attacks on TCP-MD5 and TCP-AO, on the
mechanism relying on GTSM.  This restricts such attacks to on-link.

Configuration of security mechanisms are critical for this protocol.  In the
absence of required security, since this protocol advertises state to be
cached for BGP session configuration, unauthenticated messages can be used to:
- Flood the cache of SA state for all listening receivers.
- Cause those receivers to effectively attack hosts at TCP port 179 on the
  local network by trying to BGP peer with them, even if they're not BGP.

-- Jeff (who is up way past his bedtime...)

[1] https://urldefense.com/v3/__https://datatracker.ietf.org/doc/draft-ietf-idr-bgp-autoconf-considerations/__;!!NEt6yMaO-gk!W_mD4PG04ql6NljpkZMM_DJtZ2k23wBJvMX_qM2LMVXeLiO3F5MbhN3o17TzPQ$<https://urldefense.com/v3/__https:/datatracker.ietf.org/doc/draft-ietf-idr-bgp-autoconf-considerations/__;!!NEt6yMaO-gk!W_mD4PG04ql6NljpkZMM_DJtZ2k23wBJvMX_qM2LMVXeLiO3F5MbhN3o17TzPQ$>
[2] https://urldefense.com/v3/__https://datatracker.ietf.org/doc/html/draft-minto-idr-bgp-autodiscovery-01__;!!NEt6yMaO-gk!W_mD4PG04ql6NljpkZMM_DJtZ2k23wBJvMX_qM2LMVXeLiO3F5MbhN2snlIPMw$<https://urldefense.com/v3/__https:/datatracker.ietf.org/doc/html/draft-minto-idr-bgp-autodiscovery-01__;!!NEt6yMaO-gk!W_mD4PG04ql6NljpkZMM_DJtZ2k23wBJvMX_qM2LMVXeLiO3F5MbhN2snlIPMw$>


Juniper Business Use Only


Juniper Business Use Only