Skip to content

Instantly share code, notes, and snippets.

@h4cc
Created August 2, 2016 06:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save h4cc/df9ae4356b1f76319e05c716bab4ed89 to your computer and use it in GitHub Desktop.
Save h4cc/df9ae4356b1f76319e05c716bab4ed89 to your computer and use it in GitHub Desktop.
Some notes a made from blog post by Mattias Geniar

Notes on Google QUIC

Source: https://ma.ttias.be/googles-quic-protocol-moving-web-tcp-udp/

  • TCP has Handshakes and slow TLS negotiation.
  • TCP has a "synchronous nature".
  • QUIC builds on UDP and tries to be faster than TCP.
  • It may easier to deploy a new protocol, than improving existing TCP.
  • QUIC adopts well to HTTP2.
  • QUIC provides:
    • Integrated multiplexing.
    • No depending on ordering anymore.
    • No blocking on packets needed to retransmission.
    • Each packet contains informations to reconstruct previous and following packets.
    • Like RAID5 on the network layer(!).
    • Faster roundtrip times.
  • QUIC does not need sender/receiver IP/port, so no new connection if that changes between Wifi/3G.
  • QUIC is using a Connection-UUID so Wifi and 3G can switch (Like Mosh shell does...).
  • QUIC coudl even use booth Wifi and 3G for transfer at the same time.
  • QUIC is already useable with Chrome and Google Services like Youtube. Actived since Chrome 52 by default)
  • Even if many firewalls are currently blocking UDP for 80/443, most of the clients do not block UDP so QUIC could work.
  • QUIC does use TLS out of the box, so port 80 might not be used at all.
  • Current Webserver to support QUIC is Cadde v0.9 (https://github.com/mholt/caddy/wiki/QUIC).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment