Having a smaller website makes it load faster — that's not surprising.
What is surprising is that a 14kB page can load much faster than a 15kB pag...
For further actions, you may consider blocking this person and/or reporting abuse
Streaming data like videos are sent not over TCP but UDP, UDP is fast because it does not require a three way handshake ACK/SYN/ACK/ACK/FIN.... you dont mind dropped frames in your videos which is why videos over UDP dont need ACK .
That's not correct. When you buffer your videos, they are also sent via TCP and not UDP.
For livestreams that would be correct. But implementations are different on any website..
Seriously ? We went to the trouble of making TVs that display 23.976 fps (not 25, not 24, 23.976) so that there wouldn't be any judder when playing a 24p videos, so yeah, I would mind a lot if Netflix started dropping frames when there's some packet loss on the connection.
what about dropped frames !
Hi, thanks for the post, it is interesting.
And I have a question, I checked this page and found 2 size number in developer tools
The first one is 2.6MB is called Size.
The 136.83KB is called "Transferred size of all requests"
Which kind of size should smaller than 14KB to make page load more faster?
Hi, thanks, the transferred size is the one — meaning the size of the site while it's compressed.
Thanks, glad to know~
Where did you get these details?
browser developer tool
Fantastic article! Never got that detailed into how with respect to packet size and how to optimize for it. The Dice site indeed loaded incredibly fast.
Small pedantic note: the speed of light is 299792458 in a vacuum. The actual signal would move slower from Earth to a satellite since it has to pass through air, so the latency would in fact be a tad longer.
haha, yes of course, I think you could also take into account how far from the equator you are!
Wow, thanks for this! This is closer to the metal than I typically think for web development so I really appreciate how you've written this.
The explanation, the end users that are affected, and the further reading... I really learned a lot, so thank you.
Neat! Didn't think I'd be loading up wireshark ( wireshark.org/) this morning.
It appears that the average packet size my server sends to my computer is 1494 bytes. Here's a small snippet of the traffic I saw from opening unthrottled.io
I doubt that I have much influence of the TCP transmission (I use AWS Cloudfront), but do you know if there are various factors that affect max packet size? Such as TLS? (this conversation was in TLSv1.2). I know when I saw the initial
Client Hello
, it asked forALPN Next Protocol: http/1.1
, so I'll assume this might be a http/1.1 conversation. 🤷 (if that helps)I’m not sure, I know the maximum of 1500 bytes is a limitation of Ethernet - and that doesn’t change no matter what protocol you’re using. but that leaves you 6 missing bytes!
This is awesome! thanks for sharing.
Interesting article! Does http3 quick protocol which is built on top of UDP have any similar quirks?
Hello, thanks! Yes apparently it does use the same 14kB window. I'm not entirely up to date on how HTTP/3, but my understanding is it similar but more efficient.
I've updated the article with a small paragraph about it, but you can read more about it here: QUIC Loss Detection and Congestion Control.
Thank you for this great article. I'll try to use this rule in my next project.
Wow, never though in depth why website size matters 👏
Interesting post. 👌🏻
I will continue to use Astro and try to keep my JS tidy as much as possible.
14kb is a cool concept, a nice idea and definitely fun when you can actually test things on the network at the scale of having to think about how long light takes to travel down the line.
Sadly, this isn't something day-to-day devs can be bothered with.
Content/Marketing teams don't care about this kinda performance, they want their fancy images, animations and tracking scripts so they can boost conversions.
In reality, keeping a site loading in under 1-2 seconds is a far more attainable goal, and sometimes even that is tricky when non-techy people are making the decisions.
Still, the 14kb thing is a neat challenge
I am wondering if u can also write a piece about time to first byte vs first contentfull paint and why load time is different from page speed, not sure I fully get this part. Does loading page scripts impact speed?
Try do to this with ReactJS
Use SolidJS )
This is good. You should probably make a video for it.