Re: [Idr] [BULK] Bug in draft-ietf-idr-rfc5575bis, worth fixing?

"Jakob Heitz (jheitz)" <jheitz@cisco.com> Wed, 30 September 2020 18:34 UTC

Return-Path: <jheitz@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 9E7933A0B4E; Wed, 30 Sep 2020 11:34:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -9.6
X-Spam-Level:
X-Spam-Status: No, score=-9.6 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=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 header.b=Ooq7Pfdv; dkim=pass (1024-bit key) header.d=cisco.onmicrosoft.com header.b=N/NKPdIX
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 gnXOXrSe-cfB; Wed, 30 Sep 2020 11:34:18 -0700 (PDT)
Received: from alln-iport-6.cisco.com (alln-iport-6.cisco.com [173.37.142.93]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8E56B3A0AC5; Wed, 30 Sep 2020 11:34:18 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=54938; q=dns/txt; s=iport; t=1601490858; x=1602700458; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=7oR3DIbTV6IJCxWxtlTse+wC3JBbZY2m2rjbCw9qzIk=; b=Ooq7PfdvGWBX0wz9yD0ZDbk8KzDhxUWvRxej18mIi1vYT+um2MCTHYI9 L6VmjRoc4AXRZvSY7aGMyO2ISu7PO05bhkhVu4m2HveLU4t6HEQAvvSUb svWs4pPstUsB8S4KuI9B6O2+ZHQogj0NlAldm6IgdnAwty+EKNpyacHp8 k=;
IronPort-PHdr: =?us-ascii?q?9a23=3Agf59eh0ZDJjgFVrMsmDT+zVfbzU7u7jyIg8e44?= =?us-ascii?q?YmjLQLaKm44pD+JxWGu6dtkVbWUISd4PVB2KLasKHlDGoH55vJ8HUPa4dFWB?= =?us-ascii?q?JNj8IK1xchD8iIBQyeTrbqYiU2Ed4EWApj+He2YkhIEdnzZhvZpXjhpTIXEw?= =?us-ascii?q?/0YAxyIOm9E4XOjsOxgua1/ZCbYwhBiDenJ71oKxDjpgTKvc5Qioxneas=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0BLCAAFz3Rf/5BdJa1gHQEBAQEJARI?= =?us-ascii?q?BBQUBgg+BIy8jLgdwWS8shD2DRgOOAIECiQ2OaIFCgREDVQsBAQENAQEjCgI?= =?us-ascii?q?EAQGESwIXghoCJTgTAgMBAQsBAQUBAQECAQYEbYVcDIVyAQEBAQIBEgsGBAY?= =?us-ascii?q?TAQE3AQQLAgEIEQQBASEBBgMCAgIfERQJCAIEAQ0FCBqDBYF+TQMOIAEOq1E?= =?us-ascii?q?CgTmIYXZ/M4MBAQEFhRMNC4IQCYE4gnKDaYEDgT6EEhuBQT+BEUOBT0k1PoF?= =?us-ascii?q?+HEIBAQIBgUIBChEVFgkIglkzgi2PcyEDMoJwhn+Lf5AGOFIKgmeIe4ZVhX+?= =?us-ascii?q?FK4MOiX6FPI5NkwqBeIhzgmqSOQIEAgQFAg4BAQWBayMqgS1wFTuCNQEBMgl?= =?us-ascii?q?HFwINjh+CKIFJhRSFQnQCNQIGAQkBAQMJfItHLYIXAQE?=
X-IronPort-AV: E=Sophos;i="5.77,322,1596499200"; d="scan'208,217";a="585810552"
Received: from rcdn-core-8.cisco.com ([173.37.93.144]) by alln-iport-6.cisco.com with ESMTP/TLS/DHE-RSA-SEED-SHA; 30 Sep 2020 18:34:17 +0000
Received: from XCH-RCD-004.cisco.com (xch-rcd-004.cisco.com [173.37.102.14]) by rcdn-core-8.cisco.com (8.15.2/8.15.2) with ESMTPS id 08UIYHAR014718 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=FAIL); Wed, 30 Sep 2020 18:34:17 GMT
Received: from xhs-rcd-002.cisco.com (173.37.227.247) by XCH-RCD-004.cisco.com (173.37.102.14) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 30 Sep 2020 13:34:16 -0500
Received: from xhs-rtp-001.cisco.com (64.101.210.228) by xhs-rcd-002.cisco.com (173.37.227.247) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 30 Sep 2020 13:34:15 -0500
Received: from NAM11-DM6-obe.outbound.protection.outlook.com (64.101.32.56) by xhs-rtp-001.cisco.com (64.101.210.228) with Microsoft SMTP Server (TLS) id 15.0.1497.2 via Frontend Transport; Wed, 30 Sep 2020 14:34:15 -0400
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=f+LGyM7Zd0A2H3CJ6L0aFTg6YYThNLLRAf/T5upAeih6A4Qt5rtxlTghHKTNuIEWQJbqSilgx+ALy8knnnhiRRxzar7a1fnlmixhutBHAYnzDR4dASpRVE4DxU4xc6hlmfeAeVtczCzXdCP0YnBTZDdV2fCgRa6tXKX/0nJrBsgZ+u4zs+AUWFb7T4WFfoppCJ1QCHjlQO9ho4fnGEmrcjt3w7xEctj94a9EDJKWTL1svhF+TKe52D8Wp7/4gdWVuuVoYj2JDWVITH2xlXdVXL7eNdoe5aW/WnX4zN4UF0r8DvREsX8rtgU6ki/nPQwLIIYbQNN5k5lJwohId5DbSQ==
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-SenderADCheck; bh=7oR3DIbTV6IJCxWxtlTse+wC3JBbZY2m2rjbCw9qzIk=; b=RRbAYiZnP3CyQkAwClxpJIpEU5V4WBhKsdABTy2QSy4GcmcoSOCy7s5W5QLgeR0c3hYMUPiR8VhqMrrQuV3yRskfC/ORxeBKjuYlnaE4z+A+X8z+1pUKHss3VGJXgBjqvRxnDxGxUmVi0xTOik8hwOg8SwJ6SbKqRntsLAIN5Gpjw3bxQ9U2Kg4rTok7okPXOAOI2ThbmqqRRoDGGkL3SS0RmInNR1aYuiOkCaVhl3IdNlLYuvpvx0x6zgxFX7hOLBXmNpR48ZU7vqttisC7yd6fvTCy8r8esvxYE4qRp9UkzR3DoIJ9LVqjwVF94QLwsbN3A1D3MOkOQpvPD4phew==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cisco.com; dmarc=pass action=none header.from=cisco.com; dkim=pass header.d=cisco.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cisco.onmicrosoft.com; s=selector2-cisco-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7oR3DIbTV6IJCxWxtlTse+wC3JBbZY2m2rjbCw9qzIk=; b=N/NKPdIXcbwOsxKXl/nOXhQ4ymXFi3MfQ2I/bwK7QP7tagoK1bt9RIPa/mdljluNyJQuJGhfy/o/jNZN3MOVuZr1IaFHp0o/6z6M3LWqz5OAeOfri+Szv5NMavM9FF/Rk2UqbUTlf4gPvvHuY+KMCbuSVT3Mtw99rJuGj/kckt8=
Received: from BYAPR11MB3207.namprd11.prod.outlook.com (2603:10b6:a03:7c::14) by BYAPR11MB2854.namprd11.prod.outlook.com (2603:10b6:a02:c9::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3433.36; Wed, 30 Sep 2020 18:34:14 +0000
Received: from BYAPR11MB3207.namprd11.prod.outlook.com ([fe80::718c:ac63:d72e:f3c9]) by BYAPR11MB3207.namprd11.prod.outlook.com ([fe80::718c:ac63:d72e:f3c9%4]) with mapi id 15.20.3433.032; Wed, 30 Sep 2020 18:34:14 +0000
From: "Jakob Heitz (jheitz)" <jheitz@cisco.com>
To: "Dongjie (Jimmy)" <jie.dong@huawei.com>, Robert Raszuk <robert@raszuk.net>
CC: "idr@ietf. org" <idr@ietf.org>, John Scudder <jgs=40juniper.net@dmarc.ietf.org>, "bruno.decraene@orange.com" <bruno.decraene@orange.com>, "draft-ietf-idr-rfc5575bis@ietf.org" <draft-ietf-idr-rfc5575bis@ietf.org>, Hares Susan <shares@ndzh.com>
Thread-Topic: [Idr] [BULK] Bug in draft-ietf-idr-rfc5575bis, worth fixing?
Thread-Index: AQHWli3fWigMU3yXAEyzNiZSXdI7JKmA0TGAgACyZ4A=
Date: Wed, 30 Sep 2020 18:34:14 +0000
Message-ID: <BYAPR11MB3207121F8D22B4379F2279DFC0330@BYAPR11MB3207.namprd11.prod.outlook.com>
References: <303E54F6-833A-4458-B3E6-DE90E7CA121B@juniper.net> <22341_1601052988_5F6E213C_22341_268_1_53C29892C857584299CBF5D05346208A48F82C17@OPEXCAUBM43.corporate.adroot.infra.ftgroup> <DEE76A95-339B-433C-BD46-AD0243F72FBE@juniper.net> <3366_1601300732_5F71E8FC_3366_6_3_53C29892C857584299CBF5D05346208A48F86028@OPEXCAUBM43.corporate.adroot.infra.ftgroup> <21B4E52C-38F4-4C94-985C-8C1DF88F4A92@juniper.net> <CAMMESsxG+ASdax1USizop-1bzYELcSdvND-f3RNEJ78zDUPrng@mail.gmail.com> <A9128F3D-948E-4F22-B000-7B470AFAC219@tix.at> <CAOj+MMESP=1EtTcuptE9xdyb+g36kDiD4sH6wSLezeZX74v2vw@mail.gmail.com> <BYAPR11MB32079E5730B9B170C1ADF7E1C0350@BYAPR11MB3207.namprd11.prod.outlook.com> <CAOj+MMFrFhwF1D=j1KS5wJXzc-ULEA6Ne-n296LYvit5fKUB+w@mail.gmail.com> <eaf30ef00cff4e3ca7d610fb48f8aa7d@huawei.com>
In-Reply-To: <eaf30ef00cff4e3ca7d610fb48f8aa7d@huawei.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: huawei.com; dkim=none (message not signed) header.d=none;huawei.com; dmarc=none action=none header.from=cisco.com;
x-originating-ip: [2601:647:5701:46e0:510d:11bd:4bb2:4566]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: aa2f0e52-fd97-4aa1-8916-08d8656f6e9d
x-ms-traffictypediagnostic: BYAPR11MB2854:
x-microsoft-antispam-prvs: <BYAPR11MB2854B1A2F9C541576E8316D9C0330@BYAPR11MB2854.namprd11.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 6+ZOjHIhFGDO9oIaN28sDttEXCsdjC54mSsphSlOQZKl744t+fM8vkMRLsPfYvN1qupJPIhIeASV1S6c6riRAWSsRoUiNOAq5NpqOQ/zP9Gq5lDVYaDhAe+81TQvAwRSS+IcT6f+rp+49WJqN/7cxZKsoXWRwTZFzv9+oPfj507CNIFhLoih84hRtxsWCoVAu6rjSx+Z4yJ3QHS/HJgPyYAChXD6JqSM+xhPQM8Q3YfDALycKWrshneLn37DYh3lw2Mow3SvdxUiS4+h5t+YNxFuaI8uXC98r/Kxrs9VKG0B7HKWmUTYihdAWXj2R9QILFFkizh96JYp1u7Ab+uWWWOvEHM05Uwd/Alxi9pp5sRueVV5sExBUsNH811V780NlGUINSIsINdjzWAbBCFYEA==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BYAPR11MB3207.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(39860400002)(376002)(136003)(346002)(396003)(366004)(5660300002)(71200400001)(66446008)(52536014)(2906002)(86362001)(7696005)(8936002)(76116006)(83380400001)(8676002)(9686003)(66476007)(66946007)(4326008)(166002)(55016002)(53546011)(66556008)(64756008)(6506007)(83080400001)(110136005)(54906003)(316002)(186003)(966005)(33656002)(478600001); DIR:OUT; SFP:1101;
x-ms-exchange-antispam-messagedata: Q1FNzy94ZdPi/IpoUfLE+g/d4tFX9KPBoyngXcZJ4oSJoIUx9hCqPPtI6EobkCMbedznSGGQdZTGrzVT4myGMsCj/wiMH/wehap4EFFoAQateNkh7LsBQWx+CYdMBBeiHNX2mZtxH3kKW3AQXtw+6ZHrPE3CXkXLZ56gyYY5XnYlybOHw0YL637vfXSkK4RF0gugfrpUQ5ULgOxhNsxr70z3mVs21p12WuJInj1xXX+XEmAahLLIgOdBFjcD+bsPC7/K1cmgUjss+r/tGJWM/ay3y7+QT7WcLVxQsyxiJolXQjN6oAdLTRKDYunZHqAv67UBXeW4BDZpCmUYmvOSUBONaGfkJfD+TCYezmX/rx9ZVdQvlunATOcId9myDRPcY6dIEeyblygUPijrpMPB2CRnw8rMAiTEGMK4LOdYq5HpSvR1CiLlgLZ0qvTQkZuFyci+Z9OguzUuJEPypDJrVmAN4xiSc3JCexAnetqWQBANGhkNf167jSUb1TsHYm4L+zY73wY39yUuFZHhH6aSTBNnHhu58mDr/a3nepsJNe5CLCV+EM5XV3thrXVraf1qZUZRIT0xEg7EC4LDrnvH8r3i9+7IwYUTUaYDVNaC+jXE9bBcw24cjanAWS8wpxagjN7db1YYFqg20YZ3veGQOD5bgo7a4MPlEkjZOPZyBSwpBPKvBxj0ixzhwBsR/lzOYBLGJbYF1Kfb8MP1y9uHnQ==
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative; boundary="_000_BYAPR11MB3207121F8D22B4379F2279DFC0330BYAPR11MB3207namp_"
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: BYAPR11MB3207.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: aa2f0e52-fd97-4aa1-8916-08d8656f6e9d
X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Sep 2020 18:34:14.3638 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5ae1af62-9505-4097-a69a-c1553ef7840e
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: jYGnceoEW1swfZUMG9tm3gXFML/HWI6GHXFPeKL4c3rMMqjTQmsn1EHbS+HyV/o72wbt4vZfD68qU1acr+X1ag==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR11MB2854
X-OriginatorOrg: cisco.com
X-Outbound-SMTP-Client: 173.37.102.14, xch-rcd-004.cisco.com
X-Outbound-Node: rcdn-core-8.cisco.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/idr/7itSjLTSNxhXyecHmM0eDRhEsVY>
Subject: Re: [Idr] [BULK] Bug in draft-ietf-idr-rfc5575bis, worth fixing?
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: Wed, 30 Sep 2020 18:34:27 -0000

In that case, I'm fine with it.
I personally prefer that BGP be nothing more than a transport for flowspec.
That makes it possible to change the flowspec updates without modifying BGP
or upgrading speakers that don't install the flowspecs themselves.

Regards,
Jakob.

From: Dongjie (Jimmy) <jie.dong@huawei.com>
Sent: Wednesday, September 30, 2020 12:53 AM
To: Robert Raszuk <robert@raszuk.net>; Jakob Heitz (jheitz) <jheitz@cisco.com>
Cc: idr@ietf. org <idr@ietf.org>; John Scudder <jgs=40juniper.net@dmarc.ietf.org>; bruno.decraene@orange.com; draft-ietf-idr-rfc5575bis@ietf.org; Hares Susan <shares@ndzh.com>
Subject: RE: [Idr] [BULK] Bug in draft-ietf-idr-rfc5575bis, worth fixing?

Hi Robert and Jakob,

Please note that section 3 of 5575bis says:

“BGP itself treats the NLRI as a key to an entry in its databases. Entries that are placed in the Loc-RIB are then associated with a given set of semantics, which is application dependent.”

Although comparing with RFC5575 the word “opaque” is removed, the NLRI is still treated as the key.

Best regards,
Jie

From: Idr [mailto:idr-bounces@ietf.org] On Behalf Of Robert Raszuk
Sent: Tuesday, September 29, 2020 2:58 PM
To: Jakob Heitz (jheitz) <jheitz@cisco.com<mailto:jheitz@cisco.com>>
Cc: idr@ietf. org <idr@ietf.org<mailto:idr@ietf.org>>; John Scudder <jgs=40juniper.net@dmarc.ietf.org<mailto:jgs=40juniper.net@dmarc.ietf.org>>; bruno.decraene@orange.com<mailto:bruno.decraene@orange.com>; draft-ietf-idr-rfc5575bis@ietf.org<mailto:draft-ietf-idr-rfc5575bis@ietf.org>; Hares Susan <shares@ndzh.com<mailto:shares@ndzh.com>>
Subject: Re: [Idr] [BULK] Bug in draft-ietf-idr-rfc5575bis, worth fixing?

Hi Jakob,

> Flowspec does not AFAIK have any such NLRI... yet.

I am not quite sure what are you trying to say above.

Today in RFC5575 NLRI is clearly defined as a numeric value with a given length. It was by design not parsable by BGP. The entire NLRI is a key.

So updates and withdraws processing happens on the key as defined.

Now if we start to parse that value (except maybe for validation which I am also now pretty sceptical about) and dissecting part of that calling some types to be a key and some not - at min IMHO we should use different SAFI not to create complete deployment issues.

Many thx,
R.


On Tue, Sep 29, 2020 at 1:23 AM Jakob Heitz (jheitz) <jheitz@cisco.com<mailto:jheitz@cisco.com>> wrote:
Also to consider that in BGP, there are several examples of NLRI
where the NLRI key is not the whole NLRI, starting with RFC 3107,
where the label is not part of the key.

A speaker that receives an update with an unknown NLRI does not
know if that unknown NLRI servers to withdraw a (seemingly)
different unknown NLRI, if the parts that are different are not
key material.

Therefore, a BGP speaker must always be able to completely
parse and understand received NLRI.

Flowspec does not AFAIK have any such NLRI... yet.

Regards,
Jakob.

From: Idr <idr-bounces@ietf.org<mailto:idr-bounces@ietf.org>> On Behalf Of Robert Raszuk
Sent: Monday, September 28, 2020 1:44 PM
To: Christoph Loibl <c@tix.at<mailto:c@tix.at>>
Cc: idr@ietf. org <idr@ietf.org<mailto:idr@ietf.org>>; draft-ietf-idr-rfc5575bis@ietf.org<mailto:draft-ietf-idr-rfc5575bis@ietf.org>; John Scudder <jgs=40juniper.net@dmarc.ietf.org<mailto:40juniper.net@dmarc.ietf.org>>; bruno.decraene@orange.com<mailto:bruno.decraene@orange.com>; Hares Susan <shares@ndzh.com<mailto:shares@ndzh.com>>
Subject: Re: [Idr] [BULK] Bug in draft-ietf-idr-rfc5575bis, worth fixing?

All,

To me the real question is if we really should validate the content of NLRI or just make sure that NLRI boundaries meet BGP MP_REACH definition and treat NLRI values completely opaque to BGP (as per original RFC5575).

If NLRI is really malformed resulting in MP_REACH attribute being malformed I do not see that much harm in session reset.

But if we dive into each atomic type parsing of the NLRI value itself at each BGP speaker talking SAFI 133/134 I think this is going to be a mess.

Best,
R.



On Mon, Sep 28, 2020 at 9:41 PM Christoph Loibl <c@tix.at<mailto:c@tix.at>> wrote:
Hi,

I do not really want to repeat the whole discussion here (seems that we are going in circles) if not needed. I think that we agreed that if the NLRI is malformed the only option is to reset (+send notification) the session (even if we consider rfc7606). And from draft-rfc5575bis it is clear that we are talking about a malformed NLRI:


   A NLRI value not encoded as specified specified here is considered

   malformed and error handling according to Section 10 is performed.

-> I think that adding the small term that John suggested is sufficient.

Cheers Christoph

--
Christoph Loibl
c@tix.at<mailto:c@tix.at> | CL8-RIPE | PGP-Key-ID: 0x4B2C0055 | http://www.nextlayer.at



On 28.09.2020, at 21:16, Alvaro Retana <aretana.ietf@gmail.com<mailto:aretana.ietf@gmail.com>> wrote:

[Explicitly adding Jeff to the To list.]

Hi!

During my AD review there was a discussion on the list about this point, and whether we could avoid resetting the session.  Jeff presented some examples and, I think, made a very convincing case of why we really can’t: even if we can look at the length, we would still be guessing.

I think this is one of the messages:  https://mailarchive.ietf.org/arch/msg/idr/FHC-Vz26LZfam-o5Y-9-WSrEm2g/

Jeff: if you get a chance, please chime in.

Thanks!

Alvaro.


On September 28, 2020 at 2:16:38 PM, John Scudder (jgs=40juniper.net@dmarc.ietf.org<mailto:jgs=40juniper.net@dmarc.ietf.org>) wrote:

I think that is the right thing, too: FS uses T,V and not T,L,V for its component types, the lengths are implicit. So, if my parser encounters an unknown type code it is impossible for me to know how to skip over that type code. At that point, parsing breaks down.
[Bruno] I had in mind the higher level of hierarchy:

   The NLRI field of the MP_REACH_NLRI and MP_UNREACH_NLRI is encoded as
   one or more 2-tuples of the form <length, NLRI value>.  It consists
   of a 1- or 2-octet length field followed by a variable-length NLRI
   value.  The length is expressed in octets.

                     +-------------------------------+
                     |    length (0xnn or 0xfnnn)    |
                     +-------------------------------+
                     |    NLRI value   (variable)    |
                     +-------------------------------+

                Figure 1: Flow Specification NLRI for IPv4

At this level, assuming that the NLRI value is found semantically incorrect, it seems to me that one could:
-          Skip this NLRI (thanks to the ‘length’ field) and continue with the next NLRI
-          Read the ‘NLRI value’ as an opaque data, and treat this NLRI as withdraw. (In the context of the discussion, this NLRI would never had been accepted, so ‘treat-as-withdraw’  could even be replaced with ‘ignore’. But I’m _not_ calling for this).
Hence it seems to me that treat-as-withdraw is technically possible.

Fair enough. It’s a little unfortunate that the draft contains this ambiguity; in retrospect it would have been better to be explicit about the error-handling strategy chosen rather than simply referencing RFC 7606. Whether or not we want to respin the draft in order to clarify it, is a question for the WG. If we were to make a change, it could potentially be the addition of this sentence, in Section 10:


   Error handling according to [RFC7606<https://tools.ietf.org/html/rfc7606>] and [RFC4760<https://tools.ietf.org/html/rfc4760>] applies to this

   specification. Notably, an NLRI that is found to be semantically

   incorrect (for example due to an unknown component type) MUST be

   handled using the “treat-as-withdraw” strategy (which in this case,

   it must be noted, works out to be the same as skipping over the NLRI).