http/2: use hpack_table_size to control both encoder and decoder.#3659
http/2: use hpack_table_size to control both encoder and decoder.#3659mattklein123 merged 4 commits intoenvoyproxy:masterfrom
Conversation
Previously, hpack_table_size was used to configure maximum table size used by the local endpoint for HPACK decoding, however, there was no way to configure table size used for HPACK enoding. Since this option is mostly used to disable header compression by setting the size to 0, it means that Envoy only asked the remote endpoint not to compress headers, but it was still compressing them itself (unless asked not to by the remote endpoint). Re-using hpack_table_size instead of adding a new option, since both: encoder and decoder will usually use the same value anyway. *Level*: Medium (some broken libraries don't support header table updates) *Testing*: bazel test //test/... *Docs Changes*: n/a *Release Notes*: n/a Signed-off-by: Piotr Sikora <piotrsikora@google.com>
mattklein123
left a comment
There was a problem hiding this comment.
This seems reasonable to me. @alyssawilk any objections?
|
SGTM. Also LGTM if there's a release note added (I think it's a worthwhile change to note) |
|
This pull request has been automatically marked as stale because it has not had activity in the last 7 days. It will be closed in 7 days if no further activity occurs. Please feel free to give a status update now, ping for review, or re-open when it's ready. Thank you for your contributions! |
|
This pull request has been automatically closed because it has not had activity in the last 14 days. Please feel free to give a status update now, ping for review, or re-open when it's ready. Thank you for your contributions! |
|
@PiotrSikora can you add the release note per @alyssawilk and then we can merge this? |
While there, fix typo and ordering of others. Signed-off-by: Piotr Sikora <piotrsikora@google.com>
|
@mattklein123 Added. |
|
@PiotrSikora sorry needs another master merge for your other commit. |
…o_compression Signed-off-by: Piotr Sikora <piotrsikora@google.com>
Previously, hpack_table_size was used to configure maximum table size used by
the local endpoint for HPACK decoding, however, there was no way to configure
table size used for HPACK enoding.
Since this option is mostly used to disable header compression by setting the
size to 0, it means that Envoy only asked the remote endpoint not to compress
headers, but it was still compressing them itself (unless asked not to by the
remote endpoint).
Re-using hpack_table_size instead of adding a new option, since both: encoder
and decoder will usually use the same value anyway.
Level: Medium (some broken libraries don't support header table updates)
Testing: bazel test //test/...
Docs Changes: n/a
Release Notes: Added
Signed-off-by: Piotr Sikora piotrsikora@google.com