We're sorry but this app doesn't work properly without JavaScript enabled. Please enable it to continue.

This lesson's interactive features are locked, please to keep using them

HTTP 2 and 3

First of all, great job! You've made it through the TCP to HTTP course!

My goal with this course is to dispel magic. Not the magic of discovering something new, the enjoyment of a new technology or programming language, the ability to see a problem from a new angle. No, magic that makes you feel like you just might not be capable enough. You are capable.

That said, you've learned a whole lot about HTTP/1.1, but I'd be remiss if I didn't just leave you with a brief teaser of HTTP 2 and 3, because you will see them around, and they're very different from HTTP/1.1. However, it's notable that a lot of the internet still runs on HTTP/1.1.

HTTP/2

Some key differences include:

  • It's a binary protocol rather than text-based. This makes it more efficient and less error-prone, but also requires more steps to debug, typically.
  • HTTP/2 uses multiplexing, which allows multiple requests and responses to be sent over a single connection at the same time. This reduces latency and improves performance.
  • Uses header compression to save on header bandwidth.
  • Allows for server push, which lets the server send resources to the client before they are requested.

HTTP/3

  • Built on QUIC instead of TCP. QUIC is a transport layer protocol that runs over UDP, which allows for faster connection establishment and improved performance.
  • Mandates encryption at the HTTP protocol level (HTTP/1.1 is unencrypted by default, meaning it requires HTTPS to be secure).