[GROW] Re: draft-bensley-rpsl-exclude-members

Nick Hilliard <nick@foobar.org> Thu, 16 April 2026 13:57 UTC

Return-Path: <nick@foobar.org>
X-Original-To: grow@mail2.ietf.org
Delivered-To: grow@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id C3EF1DD8F376 for <grow@mail2.ietf.org>; Thu, 16 Apr 2026 06:57:10 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1776347830; bh=udqTB4PVaRntkR8qeddclAHKV66OFfHPykOR7lLZtd8=; h=Subject:To:Cc:References:From:Date:In-Reply-To; b=ltWh/WPa5L63qEyRZ3l0jfL0difEyi+hZamZmrR8Jk2PCXZqLmU+koe5Gz0y90WSu g1R1JXEwxI8Dp3JOcsHhOOrPBGhZP7MdvinFUYoLZ1CGzjyxiLqaNxUYIfA9Ba2BCS pOh5spmJ0CW0bf8u+M0iNq1M1L/kfalMji+uESI8=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -5.821
X-Spam-Level:
X-Spam-Status: No, score=-5.821 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, NICE_REPLY_A=-1.624, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id asDw_KyY5MQD for <grow@mail2.ietf.org>; Thu, 16 Apr 2026 06:57:09 -0700 (PDT)
Received: from mail.netability.ie (mail.netability.ie [46.182.8.5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id B568BDD8F36B for <grow@ietf.org>; Thu, 16 Apr 2026 06:57:09 -0700 (PDT)
Received: from cupcake.localdomain (unknown [89.101.195.154]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.netability.ie (Postfix) with ESMTPSA id 46BB99CEFF; Thu, 16 Apr 2026 14:57:02 +0100 (IST)
To: James Bensley <lists+ietfgrow@bensley.me>
References: <Djrh257skbQQwLkpqteXHN0KWxEbdERnSBG8KW7YQeZVj2pNpx0gqG-r-OWKN2p1XAOhcanY3jF7Amu-mKJSFT_MCZEMtiTsaMFpaELlGGM=@bensley.me>
From: Nick Hilliard <nick@foobar.org>
Message-ID: <c86fdd2a-5ed2-ac34-c0e4-1a387003183f@foobar.org>
Date: Thu, 16 Apr 2026 14:57:00 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 26.4; rv:52.0) Gecko/20100101 PostboxApp/7.0.65
MIME-Version: 1.0
In-Reply-To: <Djrh257skbQQwLkpqteXHN0KWxEbdERnSBG8KW7YQeZVj2pNpx0gqG-r-OWKN2p1XAOhcanY3jF7Amu-mKJSFT_MCZEMtiTsaMFpaELlGGM=@bensley.me>
Content-Type: multipart/alternative; boundary="------------FC6F22AD1D5DACFAF98421E0"
Content-Language: en-US
Message-ID-Hash: 5J2S7HQWNRXIDMJWLBP344D6FQBCAJQ7
X-Message-ID-Hash: 5J2S7HQWNRXIDMJWLBP344D6FQBCAJQ7
X-MailFrom: nick@foobar.org
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-grow.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: "grow@ietf.org" <grow@ietf.org>
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [GROW] Re: draft-bensley-rpsl-exclude-members
List-Id: Grow Working Group Mailing List <grow.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/grow/KcNBUrJUbbPu9y5uCF5SfmudhJo>
List-Archive: <https://mailarchive.ietf.org/arch/browse/grow>
List-Help: <mailto:grow-request@ietf.org?subject=help>
List-Owner: <mailto:grow-owner@ietf.org>
List-Post: <mailto:grow@ietf.org>
List-Subscribe: <mailto:grow-join@ietf.org>
List-Unsubscribe: <mailto:grow-leave@ietf.org>

So, yes. RPSL did try the set theory thing and in theory this idea could 
be workable, maybe.

Flicking back through rfc2622, I'm reminded of the horrors of 
mbrs-by-ref. I know it's inexcusably poor taste, but I can't help 
wondering whether you should also include a excl-mbrs-by-ref? Probably 
better to leave this for an April 1 RFC.

Some blue-sky, stream-of-consciousness thoughts:

Firstly, any output is going to be acutely dependent on how 
draft-romijn-grow-rpsl-registry-scoped-members operates. I haven't got 
to that yet in my ietf draft consumption backlog, but my first thoughts 
would be that the source:: scope would need to be applied aggressively 
to child objects (maybe it is already).

There's plenty of scope for exclusion to create operational problems. 
E.g. what happens when you have different sets which reference each 
other and then one of them is configured to include the other as an 
exclusion? There's no shortage of foot-guns here.

A complete set theory implementation would ideally include operators for 
union, intersection, complement and all that. You can synthesize it 
kinda with a simple exclusion mechanism, but I wonder about data 
consistency and general flexibility.

There are two main problems with RPSL. One is grammar flexibility, of 
which there is very little, which is why any extension needs a new key 
mechanism defined. The second is that it inherently requires symbolic 
expressions, which increases the complexity of the parser.

So, if I were approaching this - which I'm not - I'd might be tempted to 
look at this from the point of view of pure set theory and design a key 
which allowed complex set manipulation grammar. I.e. create a full 
mechanism for symbolic manipulation of as-sets. Any existing code 
implementation already needs to deal with a good deal of symbolic 
manipulation, so this may not be as problematic as it seems at the outset.

I'd also ditch extending route-set objects - no-one uses them really.  
Also draft-romijn-grow-rpsl-registry-scoped-members does not apply to 
route-sets, so you'd have a lot of work to do if you wanted to make this 
work properly.

Nick

James Bensley wrote on 15/04/2026 17:46:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA512
>
> Dear Working Group Members,
>
> Please find below a newly submitted document: "Explicitly excluding objects from RPSL sets".
>
> The purpose of this document is to address the issue faced by many operators today; namely that AS-SETs and ROUTE-SETs contain member entries which are undesirable for one reason or another, but the set owner has no method to exclude these unwanted members from their own set because they are deep within the set hierarchy.
>
> I have spoken to several people in the community who suffer from this problem and would like something done about it. In the long term we hope to phase out IRR based filtering, but we are many years away from that, so in the mean time we’d like to improve the situation until such time.
>
> Feedback and support from the community is appreciated.
>
> https://datatracker.ietf.org/doc/draft-bensley-rpsl-exclude-members/
> https://www.ietf.org/archive/id/draft-bensley-rpsl-exclude-members-00.html
>
> With kind regards,
> James.
> -----BEGIN PGP SIGNATURE-----
> Version: ProtonMail
>
> wsG5BAEBCgBtBYJp38DUCRCoEx+igX+A+0UUAAAAAAAcACBzYWx0QG5vdGF0
> aW9ucy5vcGVucGdwanMub3Jnx8IJuTw/8rwqhuttwtzev2/G6pRZyujogxsc
> gPMJ50MWIQQ+k2NZBObfK8Tl7sKoEx+igX+A+wAAi9cP/RJhqcE0KUP9QR8s
> /Q6S2iMBdn78ay9AlacMzyvH2rT5/9f9ld6X3WI10/TFAvYaTpk57KeRZDL2
> wwJZagIusJ1K4uhxDTzKU8OYLE3buH1+2U5kysxBmmW3nQQzdvPkAGFKaAhl
> 5Hpxd0q59p8RsmaumBRIWbDOHYq3YA6Ps3CNoBS2zh3hx6LDEDzm0Kr8g6El
> CkFdBq2rQFuvq8ZLR8nQ1aUhFGS7G1xxPES/2jLOjnf1A9E8Fp//QsP1FONN
> OttVKHFVaSbV72Cp3H1+qAqlcJ+qlZ0xAH2R6bAYQUbC+rU09LhYSF1q1krq
> IfZCvoHgrg6f5xkjOZH4yau3i17hEL/8yBTaYxMeNiCQE7BT4yd5YTMhgHKw
> RdjNJlS29i1ksYcB4cUNrx41JWUt8m/XRvY5tLfI277gWlPasehRfRXvebVF
> T/Gha3ar5FeXVgtnkl5suH4vYdjI8RaRcA3wqrXs/oGDkzl73Zjp/FXdNUQc
> Z1xK2XqjgPnL6AQkL4Ybh+5BR0pOePladBwB+dxWeE05GF0HMfBsJCKw20Yc
> T/xQP0WJU6ZPKG1ET8RNKdpIA93tHthHymU+MWC//dUdB6+uZlmv2GlC2Y2T
> +2dSe3iKvpo0/l4uiWM9OccJ7UYkk8De420E9XRxMyCypQyf1VVb0GgLCAFN
> xXxR8fO/
> =AkAY
> -----END PGP SIGNATURE-----
>
> _______________________________________________
> GROW mailing list -- grow@ietf.org
> To unsubscribe send an email to grow-leave@ietf.org