HPACK: Invalid Maximum Table Size

Section 4.2 of draft-ietf-httpbis-header-compression-10 states:
> Protocols that use HPACK determine the maximum size that the encoder
> is permitted to use for the dynamic table.  In HTTP/2, this value is
> determined by the SETTINGS_HEADER_TABLE_SIZE setting (see
> Section 6.5.2 of [HTTP2]).

> 

> An encoder can choose to use less capacity than this maximum size
> (see Section 6.3), but the chosen size MUST stay lower than or equal
> to the maximum set by the protocol.


I could not find any text stating what should occur if the requirement
(MUST) is violated.

In other words, if an encoder specifies a maximum table size larger than
the decoder's SETTINGS_HEADER_TABLE_SIZE setting, what should occur?

I'm guessing this would be a connection error of type COMPRESSION_ERROR,
as the compression state is likely ruined at that point.

Given this can result in compression state mismatch, I think we need
explicit text stating the handling.  Should said text go in
draft-ietf-httpbis-header-compression or draft-ietf-httpbis-http2, as it
appears that draft-ietf-httpbis-header-compression attempts to be
protocol-agnostic?

Thanks,
Robby

Received on Monday, 12 January 2015 15:15:14 UTC