2013年8月28日 星期三

[NOTE] HTTP 2.0

The primary goals for HTTP 2.0 are to reduce latency by enabling full request and response multiplexing, minimize protocol overhead via efficient compression of HTTP header fields, and add support for request prioritization and server push.


  • Request/Response multiplexing
    • Each session can have many streams, each stream can transfer many messages in both direction. Each message is contained by many frames. Frame is the base unit.
    • one connection per origin
      • avoid "Slow-Start" on TCP
      • better header compression
        • keep track key-value header table on server/client side

    •  
  • Server push
    • server can create stream to client as well
  • Header compression
    • header tables with key/value and maintain on server/client side
    •  so no need to send the same header if it match previous request
  • Flow control on each stream
Reference:
High Performance Browser Networking CH12