Transcript from the "HTTP/3" Lesson
>> Jem Young: To finish off the HP section, we spent a while on it. That's pretty rewarding. We now have a modern site running on SSL and HP/2 and you're thinking, that's great, but HTTP/3 is coming out soon, too. I feel like I just figured out HTTP/2. It's okay. Here's HTTP/3.
[00:00:19] HTTP/3 is out. But I say out. The internet's pretty slow in terms of rolling things out. For instance, only about 42% of the internet uses HTTP/2 now, even though it's been out for years now. It's a very slow progress. I blame banks and corporations, they're, yeah we'll get to it.
[00:00:42] But when you're running a large server with thousands of users, adding HTTP/2, adding SSL is not as easy as we made it here, and it does cost money. You're gonna increase your server time and things like that. But just in time for people not to adopt HTTP/2, HTTP/3 comes out.
[00:00:58] The difference between HTTP/2 and HTTP/3 is HTTP/2 in all previous generations of HTTP bonus. How many times did I say HTTP today? So many. But all the previous generations, they all run over TCP. Remember that it is still that handshake protocol, while HTTP/2 made it faster because we multiplex that so we are not doing a handshake every single time.
[00:01:25] There is still a cost to doing that. And they are still doing that compression or they are still doing that error correction. So if we think back to our earlier lesson about TCP. TCP error corrects, so if any packets are missing, it says, hey, one, two ,three, four, five, but six and seven are missing.
[00:01:45] And you send that request to the server and the server's, my bad. Let me send those again. And that's what makes TCP reliable and it was something that was necessary, especially back in the early days of the internet when connections would drop. Especially when we're using dial up, which is very prone to lossy connection.
[00:02:00] I don't know if any of you ever use dial up, dating myself again. But I don't know if you know the pain of downloading an mp3 you're, yeah, it's the new, I don't know who's popular.. Blink 182 that was probably that's about the right time, right? I spent an hour downloading Blink 182 one song over my 56k modem.
[00:02:19] And then someone picks up the phone like hello, and you lose it all. And yes, the old days of the internet connections were unreliable, so we needed something with a lot of error correction. Now, the internet's much more reliable, it's much more of a staple, kind of like a power line, or your water line or something like that.
[00:02:37] So, what Google did, was they invented a new protocol called, Quick UDP Connections. So instead of HTTP over TCP, we now have HTTP over UDP. And from our earlier lessons, remember that UDP is more of a blast, where CCP is, hey did you get it? He's like yeah I got it.
[00:02:54] UDP is I'm gonna send you data and assuming you got it. And it has some error correction built in, but because the internet's more reliable, it's much faster cuz we don't have to do that handshake of sin in acts in acknowledge and all these other things UDP just blasts.
[00:03:09] If you wanna check if anything supporting UDP using quicker HTTP/3, we can actually pull up a Gmail. I won't pull my Gmail cuz that's my mail. But if you open your Gmail or something Google own property, you'll see in the protocol it now says HTTP/quick 46. That's because HTTP/3 is not quite official.
[00:03:31] It's not like well supported by all the browsers. But we, we can't implement this yet because it's not really being supported too much. I don't even think NGINX supports it far as I know, Sam, do you know?
>> Sam: No, not off the top of my head. I know that Lighthouse definitely supports it.
>> Jem Young: Really? That makes sense. That's a Google owned product as well. Google and Cloudflare now support HTTP/3. We'll see gradual adoption, but this is again something you'll see in the next five years or so. And it does create a baby 13, it depends on the connection, but say like 13 to 20% speed increase over HTTP/2 which is pretty impressive because you think that speed increase over HTTP/1, we're talking up to 50% faster just from just configuring the way we're sending data.
[00:04:23] That's pretty awesome. I don't know about you, but that's pretty cool. Maybe in version three of full-stack or front-end will be able to implement HTTP/3.