Skip to content

Instantly share code, notes, and snippets.

@mnot
Last active July 7, 2019 11:23
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mnot/37c36258160a2218d67e to your computer and use it in GitHub Desktop.
Save mnot/37c36258160a2218d67e to your computer and use it in GitHub Desktop.

In response to the Call for Proposals to HTTP/2, PHK published a draft with a number of suggested requirements.

This is a summary of those requirements, indicating those that have been met.

  • 3.3 Avoid header field encodings/transformations in intermediaries
  • 3.3 and 9 Envelope / content header field distinction
  • 3.3 Add session as "flow-label"
  • 3.3 Use prefix coding for length
  • 3.3 Indicate presence of body clearly
  • 4 Support legitimate cryptography
  • 4 Allow explicit interception1
  • 5 Multiplexing
  • 5 Ability to extend for other than client-server
  • 6 Run over existing HTTP ports
  • 6 Magic to detect non-H2 servers
  • 7 Don't use UDP, but don't prevent future work/deployment
  • 8 Don't send Date headers
  • 8 Find smaller serialisations for repeated data
  • 8 Allow cookies to have binary content2
  • 8 Binary protocol

1 Discussed extensively and rejected.

2 Cookies were out of scope for HTTP/2, but it does allow binary headers, as does HTTP/1.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment