Use circular buffer instead of std::deque for HPACK dynamic table in HTTP/2 decoder.

Http2Deque is an alias for QuicheDequeImpl which is an alias for std::deque both
in internal code and in Chromium.  QuicCircularDeque is more memory efficient,
especially if there are only few entries, and requires fewer allocations as new
entries are added if old entries are also being removed, which is the case for
HPACK where the dynamic table size is bounded.

PiperOrigin-RevId: 366295336
Change-Id: I9457344c632ae26def506592d64a3d233cb380c1
1 file changed
tree: 5948ebe2ace4e7eeb55aa72ba55ce148899374a2
  1. common/
  2. epoll_server/
  3. http2/
  4. quic/
  5. spdy/
  6. CONTRIBUTING.md
  7. LICENSE
  8. README.md
README.md

QUICHE

QUICHE (QUIC, Http/2, Etc) is Google‘s implementation of QUIC and related protocols. It powers Chromium as well as Google’s QUIC servers and some other projects. QUICHE is only supported on little-endian platforms.

Code can be viewed in CodeSearch in Quiche and is imported into Chromium.