2013-07-12 17:19:03 +02:00
|
|
|
nghttp2 - HTTP/2.0 C Library
|
|
|
|
============================
|
2012-01-26 17:38:35 +01:00
|
|
|
|
2013-07-12 17:19:03 +02:00
|
|
|
This is an experimental implementation of Hypertext Transfer Protocol
|
|
|
|
version 2.0.
|
2012-09-12 15:37:05 +02:00
|
|
|
|
2012-04-25 14:25:51 +02:00
|
|
|
Development Status
|
|
|
|
------------------
|
2012-03-26 16:46:02 +02:00
|
|
|
|
2013-07-12 17:19:03 +02:00
|
|
|
We started work based on spdylay codebase and just replaced spdylay
|
|
|
|
keyword with nghttp2. So just now it is just a relabled SPDY
|
|
|
|
implementation and is not HTTP/2.0 implementation at all. To take
|
|
|
|
advantage of the existing code, we will perform the following steps to
|
|
|
|
implement HTTP/2.0 based on implementation draft
|
|
|
|
(http://tools.ietf.org/html/draft-ietf-httpbis-http2-04):
|
|
|
|
|
|
|
|
1. Implement HTTP/2.0 frames and semantics, except for header
|
|
|
|
compression. Server push may be omitted because I am not so
|
|
|
|
interested in it.
|
|
|
|
2. Modify spdycat and spdyd to work with new library code and perform
|
|
|
|
internal testing. We use NPN for TLS for now.
|
|
|
|
3. Implement header compression, which may be based on draft-x (x >=
|
|
|
|
1).
|
|
|
|
4. Add new client and server which can perform HTTP upgrade mechanism.
|
|
|
|
5. At this step, the library and demo client/server should be
|
|
|
|
interoperable to the other implementation. Do some interoperable
|
|
|
|
testing with the other ones (e.g., node-http2)
|