tree: be59b7cd327cb90ff00c3e59757f56f1302ffaee [path history] [tgz]
  1. adapter/
  2. core/
  3. decoder/
  4. hpack/
  5. test_tools/
  6. README.md
quiche/http2/README.md

HTTP/2

This directory contains C++ code implementing the HTTP/2 protocol.

Much of this code was written originally as a collaboration between the Chromium networking and Google Front End teams while developing the experimental SPDY protocol. SPDY was later standardized as HTTP/2.

http2/adapter/

This subdirectory contains general purpose HTTP/2 protocol handling libraries. The oghttp2_adapter library can be used in combination with an event loop, a TLS library, and a socket library to make a complete HTTP/2 client or server.

http2/core/

This subdirectory contains core utilities, including constants, data structures, and some common entry points that can be used to parse and serialize HTTP/2 protocol elements.

http2/decoder

This subdirectory contains a decoder for the HTTP/2 wire format, written from scratch by James Synge. This decoder is used by Chromium-based browsers, the Google Front End reverse-proxy, and Envoy-based proxies.

http2/hpack

This subdirectory contains a decoder and encoder for the HPACK compression algorithm

http2/test_tools

This subdirectory contains test utilities that facilitate writing unit tests for code in the other subdirectories.

Contributors

Some people who have contributed to this codebase include:

  • Alyssa Wilk
  • Antonio Vicente
  • Bence Beky
  • Biren Roy
  • Dan Zhang
  • Daniel Hollingshead
  • Dianna Hu
  • Hasan Khalil
  • James Synge
  • John Graettinger
  • Michaela LaVan
  • Mike Belshe
  • Mike Warres
  • Robbie Shade
  • Roberto Peon
  • Ryan Hamilton
  • Victor Vasiliev
  • Yang Song