From 03ad337c75336977668f4fad636c9bd11ebf8740 Mon Sep 17 00:00:00 2001 From: Patrick Meenan Date: Wed, 3 Apr 2024 12:59:12 -0400 Subject: [PATCH 1/3] Specify the compression window sizes for zstd-d and br-d --- draft-ietf-httpbis-compression-dictionary.md | 24 ++++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/draft-ietf-httpbis-compression-dictionary.md b/draft-ietf-httpbis-compression-dictionary.md index 82ac4a759..25dc4a65f 100644 --- a/draft-ietf-httpbis-compression-dictionary.md +++ b/draft-ietf-httpbis-compression-dictionary.md @@ -300,12 +300,12 @@ negotiating content encoding in HTTP. This document introduces two new content encoding algorithms: -|------------------|----------------------------------------------------| -| Content-Encoding | Description | -|------------------|----------------------------------------------------| -| br-d | Brotli using an external compression dictionary | -| zstd-d | Zstandard using an external compression dictionary | -|------------------|----------------------------------------------------| +|------------------|--------------------------------------------------------------------------------------------| +| Content-Encoding | Description | +|------------------|--------------------------------------------------------------------------------------------| +| br-d | Brotli using an external compression dictionary and a compression window of up to 16 MB. | +| zstd-d | Zstandard using an external compression dictionary and a compression window of up to 8 MB. | +|------------------|--------------------------------------------------------------------------------------------| The dictionary to use is negotiated separately and advertised in the "Available-Dictionary" request header. @@ -345,12 +345,12 @@ Vary: accept-encoding, available-dictionary IANA is asked to update the "HTTP Content Coding Registry" registry ({{HTTP}}) according to the table below: -|--------|---------------------------------------------------------------------------------------|-------------| -| Name | Description | Reference | -|--------|---------------------------------------------------------------------------------------|-------------| -| br-d | A stream of bytes compressed using the Brotli protocol with an external dictionary | {{RFC7932}} | -| zstd-d | A stream of bytes compressed using the Zstandard protocol with an external dictionary | {{RFC8878}} | -|--------|---------------------------------------------------------------------------------------|-------------| +|--------|--------------------------------------------------------------------------------------------------------------------------------|-------------| +| Name | Description | Reference | +|--------|--------------------------------------------------------------------------------------------------------------------------------|-------------| +| br-d | A stream of bytes compressed using the Brotli protocol with an external dictionary and a compression window of up to 16 MB. | {{RFC7932}} | +| zstd-d | A stream of bytes compressed using the Zstandard protocol with an external dictionary and a compression window of up to 8 MB. | {{RFC8878}} | +|--------|--------------------------------------------------------------------------------------------------------------------------------|-------------| ## Header Field Registration From 828b3927ace5320834e4d44fd00553d1a8eae871 Mon Sep 17 00:00:00 2001 From: Patrick Meenan Date: Thu, 4 Apr 2024 11:28:37 -0400 Subject: [PATCH 2/3] Switched content encoding definitions to a list and point the IANA registry to this document --- draft-ietf-httpbis-compression-dictionary.md | 35 ++++++++++---------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/draft-ietf-httpbis-compression-dictionary.md b/draft-ietf-httpbis-compression-dictionary.md index 25dc4a65f..1673b3026 100644 --- a/draft-ietf-httpbis-compression-dictionary.md +++ b/draft-ietf-httpbis-compression-dictionary.md @@ -298,18 +298,15 @@ When a compression dictionary is available for use for a given request, the algorithm to be used is negotiated through the regular mechanism for negotiating content encoding in HTTP. -This document introduces two new content encoding algorithms: - -|------------------|--------------------------------------------------------------------------------------------| -| Content-Encoding | Description | -|------------------|--------------------------------------------------------------------------------------------| -| br-d | Brotli using an external compression dictionary and a compression window of up to 16 MB. | -| zstd-d | Zstandard using an external compression dictionary and a compression window of up to 8 MB. | -|------------------|--------------------------------------------------------------------------------------------| - The dictionary to use is negotiated separately and advertised in the "Available-Dictionary" request header. +## Compression Algorithms +This document introduces two new content encoding algorithms: + +- br-d: Brotli {{RFC7932}} using an external compression dictionary and a compression window of not more than 16 MB. +- zstd-d: Zstandard {{RFC8878}} using an external compression dictionary and a compression window of not more than 8 MB. + ## Accept-Encoding The client adds the algorithms that it supports to the "Accept-Encoding" @@ -342,15 +339,19 @@ Vary: accept-encoding, available-dictionary ## Content Encoding -IANA is asked to update the "HTTP Content Coding Registry" registry -({{HTTP}}) according to the table below: +IANA is asked to enter the following into the "HTTP Content Coding Registry" registry ({{HTTP}}): + +- Name: br-d +- Description: A stream of bytes compressed using the Brotli protocol with an external dictionary. +- Reference: This document +- Notes: {{compression-algorithms}} + +IANA is asked to enter the following into the "HTTP Content Coding Registry" registry ({{HTTP}}): -|--------|--------------------------------------------------------------------------------------------------------------------------------|-------------| -| Name | Description | Reference | -|--------|--------------------------------------------------------------------------------------------------------------------------------|-------------| -| br-d | A stream of bytes compressed using the Brotli protocol with an external dictionary and a compression window of up to 16 MB. | {{RFC7932}} | -| zstd-d | A stream of bytes compressed using the Zstandard protocol with an external dictionary and a compression window of up to 8 MB. | {{RFC8878}} | -|--------|--------------------------------------------------------------------------------------------------------------------------------|-------------| +- Name: zstd-d +- Description: A stream of bytes compressed using the Zstandard protocol with an external dictionary. +- Reference: This document +- Notes: {{compression-algorithms}} ## Header Field Registration From e22f620c51639424dc3ac55915a8c49a79264aac Mon Sep 17 00:00:00 2001 From: Patrick Meenan Date: Fri, 5 Apr 2024 16:42:15 -0400 Subject: [PATCH 3/3] Added the window sizes back to the IANA entries --- draft-ietf-httpbis-compression-dictionary.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/draft-ietf-httpbis-compression-dictionary.md b/draft-ietf-httpbis-compression-dictionary.md index 1673b3026..8c0e8737b 100644 --- a/draft-ietf-httpbis-compression-dictionary.md +++ b/draft-ietf-httpbis-compression-dictionary.md @@ -342,14 +342,14 @@ Vary: accept-encoding, available-dictionary IANA is asked to enter the following into the "HTTP Content Coding Registry" registry ({{HTTP}}): - Name: br-d -- Description: A stream of bytes compressed using the Brotli protocol with an external dictionary. +- Description: A stream of bytes compressed using the Brotli protocol with an external dictionary of not more than 16 MB. - Reference: This document - Notes: {{compression-algorithms}} IANA is asked to enter the following into the "HTTP Content Coding Registry" registry ({{HTTP}}): - Name: zstd-d -- Description: A stream of bytes compressed using the Zstandard protocol with an external dictionary. +- Description: A stream of bytes compressed using the Zstandard protocol with an external dictionary of not more than 8 MB. - Reference: This document - Notes: {{compression-algorithms}}