Re: [Sidrops] WGLC = draft-ietf-sidrops-aspa-verification - ENDS 03/22/2023 (Mar 22 2023)

Tim Bruijnzeels <tim@nlnetlabs.nl> Sat, 25 March 2023 03:20 UTC

Return-Path: <tim@nlnetlabs.nl>
X-Original-To: sidrops@ietfa.amsl.com
Delivered-To: sidrops@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 76FC1C15155A for <sidrops@ietfa.amsl.com>; Fri, 24 Mar 2023 20:20:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.797
X-Spam-Level:
X-Spam-Status: No, score=-2.797 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, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=nlnetlabs.nl
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 0n_1uauctRZp for <sidrops@ietfa.amsl.com>; Fri, 24 Mar 2023 20:20:40 -0700 (PDT)
Received: from dane.soverin.net (dane.soverin.net [185.233.34.24]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BE881C151542 for <sidrops@ietf.org>; Fri, 24 Mar 2023 20:20:39 -0700 (PDT)
Received: from smtp.soverin.net (c04smtp-lb01.int.sover.in [10.10.4.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by dane.soverin.net (Postfix) with ESMTPS id 4Pk48h2zhRzyhX; Sat, 25 Mar 2023 03:20:36 +0000 (UTC)
Received: from smtp.soverin.net (smtp.soverin.net [10.10.4.100]) by soverin.net (Postfix) with ESMTPSA id 4Pk48f25P5zFv; Sat, 25 Mar 2023 03:20:33 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=nlnetlabs.nl; s=soverin; t=1679714436; bh=UnoeNH1CHhhEvgK6NbYN4Tt+WLSKkIizVaB9ao7rK3Y=; h=Subject:From:In-Reply-To:Date:Cc:References:To:From; b=TpGNHmRafyUOf61XnHInX+/V5yDj0D+wd8JRiOrrHCCxkCqERNq+LT1wjIB4xeQH2 mwiKar8gyUOSh3YpB5ZV/Dy9CiYAeRnb59OGJpKo6Ny71PgxUBzxsx9PTqzYMO8msq bwCK5vCde9NHs/5lGxOxmLf9Sw56Lz1H2tymxP9iXO/5fJYjPFkiBufrl/f3Gofdio xKGxJdUn8ZD9s65SdpM1dvJu83KXQ2exfdsrmUFqW0QvF6X87RCuXG9sYK6/Zm5jkE hMP68BpDEqkV0RpyHKgLGvIUQqfTJ11u5OF8wFC4pzNms0rwAD4slvws29230CFBes OMm5A/0J8TV9g==
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.400.51.1.1\))
X-Soverin-Authenticated: true
From: Tim Bruijnzeels <tim@nlnetlabs.nl>
In-Reply-To: <3d9e252c02a342f09c93269779d91328@akamai.com>
Date: Sat, 25 Mar 2023 12:20:19 +0900
Cc: SIDR Operations WG <sidrops@ietf.org>, "Sriram, Kotikalapudi (Fed)" <kotikalapudi.sriram@nist.gov>
Content-Transfer-Encoding: quoted-printable
Message-Id: <EDFA2A6D-F7DA-4FCA-9D83-65B08DEE1907@nlnetlabs.nl>
References: <3d9e252c02a342f09c93269779d91328@akamai.com>
To: "Lubashev, Igor" <ilubashe=40akamai.com@dmarc.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/sidrops/9VRppItDYBrJqOkUW-WlisPoFUI>
Subject: Re: [Sidrops] WGLC = draft-ietf-sidrops-aspa-verification - ENDS 03/22/2023 (Mar 22 2023)
X-BeenThere: sidrops@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: A list for the SIDR Operations WG <sidrops.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/sidrops>, <mailto:sidrops-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/sidrops/>
List-Post: <mailto:sidrops@ietf.org>
List-Help: <mailto:sidrops-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sidrops>, <mailto:sidrops-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 25 Mar 2023 03:20:44 -0000

Hi,

> On 25 Mar 2023, at 01:07, Lubashev, Igor <ilubashe=40akamai.com@dmarc.ietf.org> wrote:
> 
> Comment 1.
> 
> ASPA Profile draft (3. ASPA eContent) says: "all Provider ASes MUST be registered in a single ASPA object".
> ASPA Verification draft (4. ASPA Registration Recommendations) says: "An AS SHOULD NOT have more than one ASPA".
> 
> Since the two drafts are both in the WGLC, it is best if they adopt the same recommendation and choose a MUST or SHOULD here.  My view is that a SHOULD is more appropriate, since the Verification draft already specifies taking the union of ASPA registrations, so multiple registrations could work, albeit in a more fragile way (hence a SHOULD). But agreeing on SHOULD/MUST seems more important than which one is picked.

I believe that SHOULD is appropriate.

But, I also believe that it would be better to move all considerations about ASPA objects, object validation, the definition of Validated ASPA Payloads (VAPs), and a formal specification of how to make a union to the profile document.

The reason for this is that the verification process runs in a BGP speaker, and it will get its data through the RPKI-RTR protocol. Validation and synthesis of any applicable union to get the VAPs will have happened before this point. So, while it should be discussed, I think it's actually not relevant any more in the verification context. The information of whether a given VAP came from 1 or multiple objects (and possibly SLURM at some point) is not available and cannot drive the verification process.

More to the point of SHOULD vs MUST of a having a single object per Customer AS (CAS). I think SHOULD is appropriate. I am not suggesting to add the following to the documents, but to exemplify why multiple objects may exist: there can be transfers of ASNs between organisations or business units, or transfers between RPKI server implementations (rir-hosted to self-hosted, between self-hosted, etc). In such cases a make-before-break policy may be beneficial.

Regarding unions of ASPA objects for the same CAS. This is not formally specified. It may be self-evident, but even if it _is_ obvious it would not hurt to be explicit.

Merging the VAPs from multiple ASPA objects for the same CAS can be done as follows. The RPKI Relying Party (Validator) creates two sets of providers ASNs, one for IPv4 and one for IPv6. Any provider ASN in any of the VAPs that is found to have no afiLimit is added to both sets. If there is an afiLimit then the provider ASN is added to the corresponding set only. Duplicates are ignored (i.e. these are sets). At the end of the process a new VAP can be created. Any provider ASNs that are found in only one of the two sets get the corresponding afiLimit. Any provider ASNs that are in both sets get no afiLimit.

To the authors mainly: please let me know if the above procedure is incorrect. All the more reason for documenting it I would say ;)

Tim