New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
QPACK SC: No encoder memory for blocked #4008
Conversation
This is true, but this is also obvious, at least once you start implementing the encoder. Too, there is the natural limit on dynamic references: it is the function of the product of the number of allowed streams and the number of entries in the dynamic table (which itself is a function of the table size). I am concerned that this new verbiage puts the wrong thought into the head of the implementer; we should not encourage this. Limiting the number of dynamic table references (done out of memory conservation zeal) affects compression performance directly -- it worsens it. Perhaps we can tack on the following sentence to the end of the paragraph:
|
I'm OK with that, though I would qualify with "compression performance", as performance has other dimensions that the extra state might impinge upon. |
Another thing to note is that sometimes dynamic table references do not have to have their own objects in the encoder. For examples, they are virtually free in ls-qpack. (Everyone reading this in 2022: you're welcome) |
Yeah, compression performance qualification is a good suggestion. |
draft-ietf-quic-qpack.md
Outdated
additional state memory on the encoder. | ||
|
||
An encoder allocates memory to track all dynamic table references in | ||
unacknowledged representations. Implementations can directly limit the amount |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
representations are not acknowledged, encoded field section blocks are, right?
|
||
An encoder allocates memory to track all dynamic table references in | ||
unacknowledged representations. Implementations can directly limit the amount | ||
of state memory by only using as many references to the dynamic table as it |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Subject/pronoun agreement: "Implementations can...as it wishes". Perhaps "An implementation can..."
Per discussion on Slack, expanding this discussion in the Security Considerations to be more accurate. Editorial, since these are purely statements about the properties of the design.