Skip to main content

IETF Last Call Review of draft-ietf-sidrops-publication-server-bcp-10
review-ietf-sidrops-publication-server-bcp-10-httpdir-lc-nottingham-2026-09-08-00

Request Review of draft-ietf-sidrops-publication-server-bcp
Requested revision No specific revision (document currently at 10)
Type IETF Last Call Review
Team HTTP Directorate (httpdir)
Deadline 2026-09-11
Requested 2026-09-04
Requested by Mark Nottingham
Authors Tim Bruijnzeels , Ties de Kock , Frank Hill , Tom Harrison , Job Snijders
I-D last updated 2026-09-04 (Latest revision 2026-08-27)
Completed reviews Opsdir IETF Last Call review of -10 by Michael P
Artart IETF Last Call review of -10 by Patrik Fältström
Tsvart IETF Last Call review of -10 by Magnus Westerlund
Genart IETF Last Call review of -10 by Behcet Sarikaya
Httpdir IETF Last Call review of -10 by Mark Nottingham
Assignment Reviewer Mark Nottingham
State Completed
Request IETF Last Call review on draft-ietf-sidrops-publication-server-bcp by HTTP Directorate Assigned
Reviewed revision 10
Result Ready w/issues
Completed 2026-09-08
review-ietf-sidrops-publication-server-bcp-10-httpdir-lc-nottingham-2026-09-08-00
[Drafted with AI assistance from a structured review over the document and the
WG's record, then reviewed and edited by me.]

The draft is mostly careful with HTTP -- no fixed paths, no new methods or
status codes, no redefinition of the caching model, and RFC 9110 is the
reference used throughout. Two things are worth fixing before publication.

## Issues

1. Section 3.4 says RFC 8181 has no way to signal backoff, but HTTP does

"Unfortunately, the publication protocol specified in [RFC8181] has no adequate
support for rate limiting or signaling requests to CAs to backoff. Therefore,
publishers SHOULD NOT perform this resynchronisation more frequently than once
every 10 minutes..."

RFC 8181 runs over HTTP POST. 429 or 503 with Retry-After (Section 10.2.3 of
RFC 9110) lets a publication engine enforce and communicate exactly this limit,
rather than asking publishers to self-limit on trust.

Reword to say the PDUs themselves carry no backoff signal, but a compliant
server can still respond with 429/503 plus Retry-After -- and recommend doing
so.

2. Compression with no mention of Vary

Section 5.3: "RRDP endpoints SHOULD support compression. At a minimum, gzip
content coding (see Section 8.4.1.3 of [RFC9110]) SHOULD be supported..."
Section 5.4 separately recommends serving RRDP content through a CDN.

Without Vary: Accept-Encoding, a shared cache has no basis to key on the
client's Accept-Encoding -- whichever variant it stores first is what every RP
behind that cache gets, regardless of what it asked for. An RP that never
implemented decompression, because it never sends Accept-Encoding: gzip, could
still be handed a gzip response.

Suggestion: "RRDP endpoints SHOULD support compression through proactive
content negotiation (see Section 12.1 of [RFC9110]). At a minimum, gzip content
coding (see Section 8.4.1.3 of [RFC9110]) SHOULD be supported. Additionally,
servers are RECOMMENDED to support other widely used compression algorithms
where feasible. Note that this implies that the Vary header field be sent on
responses; see Section 12.5.5 of [RFC9110]."

## Comments

Section 5.4's "unless the backend RRDP server is unavailable, in which case it
is RECOMMENDED that stale files are served" needs a mechanism: RFC 9111 Section
4.2.4 only lets a connected cache serve stale content when the origin or client
explicitly permits it (e.g. stale-if-error, RFC 5861, or an out-of-band CDN
contract).

ARTART (Fältström) already asked that Section 5.1's "same host" be pinned down
precisely. This document already normatively cites RFC 9110, whose Section
4.3.1 gives the same canonicalisation ARTART is asking for (lowercase scheme
and host, drop leading zeros from the port, substitute the default port when
elided) without pulling in RFC 6454.

Section 8 says no new security issues arise beyond RFC 8181/8182/9589/9674, but
Section 5.4's own CDN recommendation exposes RP fetch patterns to a third party
-- none of those documents' security considerations account for that. SECDIR's
review is still outstanding; may already be on their list.

## Nits

* Section 5.2: "HTTP GET parameters" isn't HTTP terminology -- query
parameters, or the query component of the request-target? * Section 5.9.2:
"HTTP keepalive" -- RFC 9112 Section 9.3 calls this persistent connections. *
Section 5.4: "HTTP 404 responses" -- editorial convention for status codes is
using the bare code plus reason phrase in parenthesis: "404 (Not Found)".

Cheers,