quic-go is an implementation of the QUIC protocol, RFC 9000 protocol in Go. In addition to RFC 9000, it currently implements the IETF QUIC draft-29. Support for draft-29 will eventually be dropped, as it is phased out of the ecosystem. We currently support Go 1.16.x and Go 1.17.x. See the example server. Starting a QUIC server is very similar to the standard lib http in go. Also, check out the example client. Use a http3.RoundTripper as a Transport in a http.Client. QUIC includes security measures that ensure confidentiality, integrity, and availability in a range of deployment circumstances. Accompanying documents describe the integration of TLS for key negotiation, loss detection, and an exemplary congestion control algorithm.
Features
- We currently support Go 1.16.x and Go 1.17.x
- QUIC without HTTP/3
- Use as a server
- Use as a client
- There are many projects using quic-go