Two months ago, Mozilla introduced Neqo, code written in Rust to implement QUIC, a new protocol for the web developed on top of UDP instead of TCP. As per the GitHub page, web developers who want to run test on http 0.9 programs using neqo-client and neqo-server, below is the code:
- cargo build
- ./target/debug/neqo-server 12345 -k key –db ./test-fixture/db
- ./target/debug/neqo-client http://127.0.0.1:12345/ -o –db ./test-fixture/db
While developers who want to run test on http 3 programs using neqo-client and neqo-http3-server must check the code given below:
- cargo build
- ./target/debug/neqo-http3-server [::]:12345 –db ./test-fixture/db
- ./target/debug/neqo-client http://127.0.0.1:12345/ –db ./test-fixture/db
What is QUIC and why is it important for web developers
According to Wikipedia, QUIC is the next generation encrypted-by-default transport layer network protocol designed by Jim Roskind at Google. It is designed to secure and accelerate web traffic on the Internet. It was implemented and deployed in 2012, and announced publicly in 2013 as an experimentation broadened and described to the IETF. While still an Internet Draft, QUIC is used by more than half of all connections from the Chrome web browser to Google’s servers.
One of the users on Hacker News commented, “QUIC is an entirely new protocol for the web developed on top of UDP instead of TCP. UDP has the advantage that it is not dependent on the order of the received packets, hence non-blocking unlike TCP. If QUIC is used, the TCP/TLS/HTTP2 stack is replaced to UDP/QUIC stack.”
The user further comments, “If QUIC features prove effective, those features could migrate into a later version of TCP and TLS (which have a notably longer deployment cycle).
So basically, QUIC wants to combine the speed of the UDP protocol, with the reliability of the TCP protocol.”
Additionally, the Rust community on Reddit were asked if QUIC is royalty free. To which one of the Rust developer responded, “Yes, it is being developed and standardized by a working group (under the IETF) and the IETF respectively.
So it will become an internet standard just like UDP, TCP, HTTP, etc.”
If you are interested to know more about Neqo and QUIC, check out the official GitHub page.
Other interesting news in web development