[Sidrops] Re: WG Last Call for draft-ietf-sidrops-publication-server-bcp
Christopher Morrow <christopher.morrow@gmail.com> Thu, 29 May 2025 19:14 UTC
Return-Path: <christopher.morrow@gmail.com>
X-Original-To: sidrops@mail2.ietf.org
Delivered-To: sidrops@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 8F46B2E73133 for <sidrops@mail2.ietf.org>; Thu, 29 May 2025 12:14:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -2.099
X-Spam-Level:
X-Spam-Status: No, score=-2.099 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, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 zrt-YCoVT97v for <sidrops@mail2.ietf.org>; Thu, 29 May 2025 12:14:21 -0700 (PDT)
Received: from mail-pl1-x629.google.com (mail-pl1-x629.google.com [IPv6:2607:f8b0:4864:20::629]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id ABDF22E7312A for <sidrops@ietf.org>; Thu, 29 May 2025 12:14:21 -0700 (PDT)
Received: by mail-pl1-x629.google.com with SMTP id d9443c01a7336-2350b1b9129so6237975ad.0 for <sidrops@ietf.org>; Thu, 29 May 2025 12:14:21 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1748546061; x=1749150861; darn=ietf.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=LvcHTuApi2ztQOmqX4LAyoAQaa8UzrRp+gSp1vKX6UY=; b=jzyTX1VkdAU+oz9uaw3oVRmiXJZ3kX7ihJEnJ4H9Q3PfK4SNzZHT+3YB+Q2mFK2pMO faM2wJne1tsQADkOU2pJj7ZEe0fQ5QF9hr6ocA7Aq67EQF420j8T5P8XpUuq5u3A90ns kSfUE4IfU4XKTPYzFcveB75QQFk1dbumZ2EDq/ozoe7Y5Y2veebdCwB5LcwhmfTr4bGW 78g9G2UYP9k2R7o2GiEZscf7KWcI0al8hns4VdLmnums+YtNmLMDdGZTk4quXqzn5PRu iWZcjSq+4AtmRukBm1T8UJWU+2jrc3eoJOk999zqxrSoe0ajxe8fLRwfTv9TmbAKfBki shBw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748546061; x=1749150861; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=LvcHTuApi2ztQOmqX4LAyoAQaa8UzrRp+gSp1vKX6UY=; b=kk4oGJ2Jw0reM7kN9T7OE+wv5zx/isAJNRe0DVS4aMopjQxiHb4adRmRZXa3WwDUf/ Er8bvU/e4hCvIuw9LQz7vRV1Vv5VKuRrgEYkEGjFZf8SXxXxL8JDiNsMOPhDRbo4/6YL RcX5lbnOCKqkLkmTn71ZSL543v5EIkJqyGHWih1Y1fVMBaNdAt8RJaZFxrYf87H6RXEa 23GUM2nX6K71L9FxdizxVq1rohzBhCi3je4LtbjOXKkQISAEoupKub1huuCU/rfwWRfG A/5NnMLTHCDAVu145fsjUyiZnQtjBBywnGSHhpxGD+DRp1b6iB7sQMV50Lp8BFsgtwlm JSZw==
X-Gm-Message-State: AOJu0YwYj4zZTjrGWLutqwF2ZJbrWvY+zKSRsgs8d2ms2wuLYeB7PAHQ UkdMNnwdms0O+vq5k/game1T2R51ioaB0xu8jRKK89/JH4r4YoE/qiZRel9M2yb0XnGEGhE4j5R APgdtIaGjhkn8d+DwZX51kuzPAs3q10ttiw==
X-Gm-Gg: ASbGncvISXTODbqZacPcseklQoTWt+GzVYqzpknxg5GNq4A1ojdiC+kHk2UQk1vAyQa 5zY/fLnjBKbul0RJqaHIya5c9JsHSN1IbjHX97g00ccHutaU9BufWpACxrh8WW1hpYWql5FCOVC NTIegf7KXAnrkTTunhz4gw3BA48y4uc2SM95r1MGZaPXijlKZQ1a1I4ca9rbAwOmU=
X-Google-Smtp-Source: AGHT+IEkixbhlyjwd1qF23hlQwrT1hws9YMMf2w/5X3Js3ISUJqNXP1awJSzxDEH3kyumL4c08/v3Huv2eaMeloTX+8=
X-Received: by 2002:a17:90b:384c:b0:311:b0ec:135f with SMTP id 98e67ed59e1d1-31241e86773mr966363a91.30.1748546060546; Thu, 29 May 2025 12:14:20 -0700 (PDT)
MIME-Version: 1.0
References: <74674002-1C2A-4F7F-90EF-423506421030@gigix.net> <aC2ly6SHgMpWYtxg@feather.sobornost.net> <CAL9jLaYaPsN4LdY3JFDe1t6z1hH+KGSews9iOvGpqdZMODr85A@mail.gmail.com> <F23C0707-5185-413E-8E41-7838E15D678B@ripe.net>
In-Reply-To: <F23C0707-5185-413E-8E41-7838E15D678B@ripe.net>
From: Christopher Morrow <christopher.morrow@gmail.com>
Date: Thu, 29 May 2025 15:14:09 -0400
X-Gm-Features: AX0GCFt8yBNgx8Bch8rhDvuD_d59FwtD3Oeo_BaO0Yn7Gxk40Fy3BvALrAbyMvc
Message-ID: <CAL9jLaZDOdEcgYD3r6qYFq1yZwfzqioQ0Omik_MQp1e6PLmuOQ@mail.gmail.com>
To: Tim Bruijnzeels <tbruijnzeels@ripe.net>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Message-ID-Hash: XQKP62HPD3U7FDV7BHLDO2O4BBJLQBXM
X-Message-ID-Hash: XQKP62HPD3U7FDV7BHLDO2O4BBJLQBXM
X-MailFrom: christopher.morrow@gmail.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-sidrops.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: sidrops@ietf.org
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [Sidrops] Re: WG Last Call for draft-ietf-sidrops-publication-server-bcp
List-Id: A list for the SIDR Operations WG <sidrops.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/sidrops/YI7UGY33_59BdKmpjXE7UB4Aeuo>
List-Archive: <https://mailarchive.ietf.org/arch/browse/sidrops>
List-Help: <mailto:sidrops-request@ietf.org?subject=help>
List-Owner: <mailto:sidrops-owner@ietf.org>
List-Post: <mailto:sidrops@ietf.org>
List-Subscribe: <mailto:sidrops-join@ietf.org>
List-Unsubscribe: <mailto:sidrops-leave@ietf.org>
On Wed, May 28, 2025 at 4:26 AM Tim Bruijnzeels <tbruijnzeels@ripe.net> wrote: > > Hi Chris, all, > > Thank you for your comments! Late comments are better than no comments. This is at > least partly why we asked for Last Call, becuase this tends to motivate people ;) > > In any case, a quick update: > > - We incorporated Job's comments and made him co-author (he contributed significant > text earlier in the doc lifecycle as well) > - We incorporated minor improvements in wording by Mike Hollyman > > We currently have a PR for the next document revision here: > https://github.com/timbru/draft-sidrops-publication-server-bcp/pull/33 > oh neat! I'll go have a read there... > Of course, that is just transparency. Feel free to comment here on the list. If you > comment on github we will make sure that the list is informed. > > In any case, the current edit buffer does not yet include your comments Chris, but > we plan to work on this over the coming days. > > My proposal to the chairs would be do a new last call on -03 when it's ready, and > addresses Chris's comments. > sounds ok to me, thnx! > Tim > > > > > > On 23 May 2025, at 19:35, Christopher Morrow <christopher.morrow@gmail.com> wrote: > > > > owdy sidorops and authors of the subject document... I probably should > > have made 1-2 of these next comments sooner :( > > (incidentally I think the document will be useful!) > > > > I can also attempt to make a github PR similar to job's once done > > typing here.. I think there should be a bit more information / > > guidance > > provided to the operators of Publication Services around availability, > > I think there are scenarios today where publication servers: > > * live behind a single ISP > > - limited redundancy/reslience to routing anomalies in that > > provider (or their peers) > > * are deployed in a single geographical region (same town) > > - same power grid > > - same natural-disaster zone > > * live behind smaller than expected links > > - what is expected? 1 Gbps? 10Gbps? > > - link size vs utilization? > > - capacity planning concerns exist here - "Can service N > > concurrent request streams?" > > * are a single entity > > - pub service is a single computer/server > > - inability to scale efficiently as demand rises > > - in ability to split services across domains (geographical / > > network / power / etc) > > - prone to hardware enforced outages > > > > I think the idea that the RPKI system of publication services can be a > > loose group of things sprinkled across the internet without a ton > > of care about resilience of the system, because overall the relying > > parties can always call back later if a particular Publication Service > > is not currently available, has helped growth, experience, and > > experimentation in the system. I don't think the system works well > > long > > term ini this model, because more users and more tight coupling to the > > business of packet forwarding will require closer observation > > of the RPKI system's artifacts. I think this will drive more thought > > and effort into resiliency and redundancy, this document seems like > > a good place to start that conversation. Some has been done in > > RFC6481[0] for sure, but a slightly more structured and comprehensive > > discussion would help Publication Service operators align with network > > operations on requirements/expectations. > > > > If we look at the guidance in RFC6481 section 3 there is one pointer to: > > " * The publication repository SHOULD be hosted on a highly > > available service and high-capacity publication platform." > > > > This is a nice start, but does not provide guidance and reasoning for > > that guidance, really. > > I think being a bit more explicit about what that means and why it's > > necessary would be good. > > I think it's reasonable to build a simple model and drive the advice > > from that, something like: > > > > * 20k ASN participating in the RPKI system > > * An hourly update cadence for Relying Parties > > * Average repository size of 1MBytes > > > > Missing repository information because of outages between the relying > > party and the publication service MAY not be critical > > immediately, but will lead to delays in the system and possibly > > imapcts on the relying parties as they force age out content > > and suffer delays in their workload collecting from the globally > > distributed system. One view is that the delays are expected > > because this is the internet and over time such outages will occur, so > > we should be resilient in the total system to this, I think > > this is the prevailing sentiment today... Some study about lengthy > > outages and impact to the RPKI and routing systems would > > be super informative, I bet. > > > > Using wikipedia's 'how much outage is too much' page[1] and the below > > information might be handy in deciding how much > > time can elapse between a Publication Service going offline for a > > percentage of the Internet and when flags should go up. > > As a starting stake in the ground I'd suggest 99.9 uptime seems like a > > great start? > > > > When it comes to discussing capabilities and expectations about the > > Publication Service itself, It would be expected for a > > Publication Service to be able to service: > > * 20000/3600 == 6 full request sets per second > > - every ASN has 1 RP talking to every Publication Service every hour > > - of course this will probably be at least 2x larger, so round to > > 10x for growth and ease of math > > - assume spherical cow request/repository can accomplish all > > tasks in 1 connection (and in that 1 second) > > - 60 requests * 1MB each second > > - produces about 500 mbps sustained traffic for this request rate > > * It's possible that RFC9286[2] expectations on nextUpdate existing > > may cause the relying party clients behave > > differently, but that remains to be seen. > > > > I think the above would guide a discussion on the point raised in > > RFC6481, I think adding to that some discussion > > about resilience and redundancy (which RFC6481 attempts to talk about > > a bit in Section 2.1 and point 5 of section 3) > > and how that could improve the ability of the Publication Service to > > be available would be helpful. I expect that guidance such > > as: > > * maintain at least 2 transit paths to the wider Internet for each deployment > > - plan for outages on the local and immediate provider network systems > > - plan for outages to your networking systems as maintenance > > requirements arise > > * plan more than one Publication Service deployment, in more than > > one geographically distinct region(s) > > - remove local power/natural-disaster scenarios as much as > > possible from outage causes > > - provide for disaster recovery capabilities > > * move the Publication Service closer to the core of the network if possible > > - shorten the connections between relying parties and the service > > > > Along with the last set of points would be some guidance about how to > > (again RFC6481 points a bit at this in section 3) to > > provide a coherent view of the Publication Service data across > > multiple relying party accessible endpoints. This should not > > be hard to accomplish, but certainly some thought and guidance would > > be handy to help folks move toward that world. > > > > I think a review of historic outages to Publication Services would > > also show where each of the above points would have > > proven useful to the wider community of relying parties and > > Publication Services. > > > > Sorry, this set of comment(s) got longer than I expected :( > > > > -chris > > > > 0: https://www.rfc-editor.org/rfc/rfc6481.html#page-8 - 'Resource > > Certificate Publication Repository Considerations' > > 1: https://en.wikipedia.org/wiki/High_availability - How much downtime > > to tolerate? > > 2: https://www.rfc-editor.org/rfc/rfc9286.html#name-manifest - > > next-update definition in Manifest > > > > On Wed, May 21, 2025 at 6:07 AM Job Snijders <job@sobornost.net> wrote: > >> > >> Dear all, > >> > >> I am _in favor_ of publishing this publication BCP (no pun intended ;-) > >> but would like to see a few changes in order to help future RPKI > >> operators. > >> > >> I've submitted the proposed changes through a github pull-request to > >> save the author team a bit of time. > >> https://github.com/timbru/draft-sidrops-publication-server-bcp/pull/31 > >> > >> My comments so far: > >> > >> 1/ The Glossary can perhaps be expanded a bit: at the moment it makes > >> mention of some entities but not all entities that play a role. Maybe > >> add "Publication Point Operator" and "Relying Party", because > >> "Publisher" already is there? > >> > >> 2/ As for the word "repository"... we are approaching the point where > >> everything is called a repository. I suggest replacing the phrase "RRDP > >> Repository" with "RRDP Server" and "Rsync Repository" with "Rsync > >> Server". > >> > >> It is the RRDP _server_ and Rsync _server_ host one or more > >> 'caRepository'. Calling the RRDP server endpoint a repository (of > >> repositories...) may increase confusion. > >> > >> 3/ Add to glossary: "rsyncd - Rsync daemon" > >> > >> 4/ "Because RPs use cached data" ... this is not a given, not all > >> RP implementations have implemented the concept of a 'validated cache' > >> (yet). > >> > >> I suggested different wording: > >> > >> RPs are expected to make use of cached data from a previous, > >> successful fetch (Section 6 of @!RFC9286). Therefor, short > >> outages on the server side don't need to be cause for immediate > >> concern, provided the server operator restores access > >> availability in a timely fashion (e.g. before objects expire). > >> > >> 5/ Section 4.1 sorta buried the lede. I'd like it if the first sentence > >> can strongly suggest to NOT RUN YOUR OWN. Add a sentence "In general, it > >> is NOT RECOMMENDED to run your own Publication Server, but to make use > >> of a publication server provided by the Issuer". Or, s/Issuer/RIR/. > >> This is a BCP document after all, no need to beat around the bush. > >> > >> 6/ "... RPs rejecting CA publication points" I don't think RPs reject > >> the publication point, RPs simply stop considering connecting to a > >> publication point because the referal became invalid. Perhaps the > >> paragraph can be reworded. > >> > >> """ > >> If the Publication Server is unavailable for some reason, this > >> will prevent Publishers from making updated RPKI objects > >> available. The most immediate impact of this is that the > >> publisher cannot distribute new issuances or revocations of > >> ROAs, ASPAs or BGPSec Router Certificates for the duration of > >> this outage. Thus, in effect, it cannot signal changes in its > >> routing operations. If the outage persists for an extended > >> period, then RPKI Manifests, CRLs, and Signed Objects might > >> became stale, hampering, for example, BGP Origin Validation > >> ([@!RFC6811]. > >> """ > >> 7/ "content regression has occured due to data loss" maybe just needs to > >> be "content regression has occured" > >> > >> 8/ Section 4.4 "The ROAs may not reflect what the publisher intended." > >> perhaps reword to: > >> "The published ROAs no longer reflect the CA's intentions." ? > >> > >> 9/ The paragraph with "The publisher may not renew their manifest or CRL > >> in time" contains a duplication (expiry == stale). Suggestion: > >> """ > >> - The CA might not re-issue their Manifest or CRL in time, because > >> they operated under the assumption that the currently published > >> Manifest and CRL have not yet became stale. > >> """ > >> > >> 10/ Some commas are missing here: "In addition to this the publishing CA > >> MAY perform ..." I've submitted suggested rewording through a pull > >> request. > >> > >> 11/ ref update is needed, [I-D.ietf-sidrops-rrdp-same-origin] > >> > >> 12/ "publishing in a repository" -> "publishing through a server" ? > >> > >> --------- > >> > >> I'll review the second half of the document soon! > >> > >> Thank you for your work on this document. > >> > >> Kind regards, > >> > >> Job > >> > >> > >> On Wed, May 21, 2025 at 10:01:14AM +0200, Luigi Iannone wrote: > >>> Hi All, > >>> > >>> the authors of draft-ietf-sidrops-publication-server-bcp requested WG Last Call as they consider that the document is ready to be published. > >>> > >>> Abstract: > >>> This document describes best current practices for operating an RFC > >>> 8181 RPKI Publication Server and its rsync (RFC 5781) and RRDP (RFC > >>> 8182) public repositories. > >>> > >>> Details can be found at: https://datatracker.ietf.org/doc/draft-ietf-sidrops-publication-server-bcp/ > >>> > >>> This email formally opens the two weeks WG Last Call, to be ended June 4, 2025. > >>> > >>> Please review this WG document and let the WG know if you agree that it is ready to be handed over to the AD. > >>> > >>> If you have objections, please state your reasons why, and explain what it would take to address your concerns. > >>> > >>> Thanks in adavance for your feedback. > >>> > >>> Luigi & Russ > >> > >>> _______________________________________________ > >>> Sidrops mailing list -- sidrops@ietf.org > >>> To unsubscribe send an email to sidrops-leave@ietf.org > >> > >> _______________________________________________ > >> Sidrops mailing list -- sidrops@ietf.org > >> To unsubscribe send an email to sidrops-leave@ietf.org > > > > _______________________________________________ > > Sidrops mailing list -- sidrops@ietf.org > > To unsubscribe send an email to sidrops-leave@ietf.org >
- [Sidrops] WG Last Call for draft-ietf-sidrops-pub… Luigi Iannone
- [Sidrops] Re: WG Last Call for draft-ietf-sidrops… Job Snijders
- [Sidrops] Re: WG Last Call for draft-ietf-sidrops… Christopher Morrow
- [Sidrops] Re: WG Last Call for draft-ietf-sidrops… Tim Bruijnzeels
- [Sidrops] Re: WG Last Call for draft-ietf-sidrops… Luigi Iannone
- [Sidrops] Re: WG Last Call for draft-ietf-sidrops… Christopher Morrow
- [Sidrops] Re: WG Last Call for draft-ietf-sidrops… Tim Bruijnzeels
- [Sidrops] Re: WG Last Call for draft-ietf-sidrops… Luigi Iannone