Skip to content
This repository has been archived by the owner on Apr 9, 2022. It is now read-only.

Latest commit

 

History

History
54 lines (45 loc) · 1.18 KB

quic.md

File metadata and controls

54 lines (45 loc) · 1.18 KB

QUIC

QUIC is a morden protocol built on top of udp, which has these well known benifits:

  • Fast: Only requires 1 rtt to setup. Also, 0-rtt is supported.
  • Secure: Packets are encrypted by tls1.3, which only use AES_128_GCM_SHA256,AES_256_GCM_SHA384 and CHACHA20_POLY1305_SHA256 as cipher suits.
  • Multiplex: Multiple streams over one connection. Compared to HTTP2, there is no head-of-line blocking issue.

position

endpoint->listen|remote->net=udp (*must*)
endpoint->listen|remote->tls (*must*)
endpoint->listen|remote->trans->quic

options

mux(client): int

max number of concurrent streams for each connection.

example

Also See: TLS

"remote": {
    "addr": "127.0.0.1:5000",
    "net": "udp",
    "trans": {
        "proto": "quic",
        "mux": 8
    },
    "tls": {
        "sni": "example.com",
        "roots": "firefox",
        "early_data": true,
    }
}
"listen": {
    "addr": "127.0.0.1:5000",
    "net": "udp",
    "trans": {
        "proto": "quic"
    },
    "tls": {
        "cert": "cert.pem",
        "key": "key.pem"
    }
}