Why the Windows kernel can connect slower than Linux

preview_player
Показать описание
Fundamentals of Operating Systems Course

Why Windows Kernel connects slower than Linux

I explore the behavior of TCP/IP stack in Windows kernel when it receives a RST from the backend server especially when the host is available but the port we are trying to connect to is not. This behavior is exacerbated by having both IPv6 and IPv4 and if the happy eye ball protocol is in place where IPv6 is favorable.

0:00 Intro
0:30 Fundamentals TCP/IP
3:00 Unreachable Port Behavior
6:00 Client Kernel Behavior (Linux vs Windows)
11:40 Slow TCP Connect on Windows
15:00 localhost, IPv6 and IPv4
20:00 Happy Eyeballs
28:00 Registry keys to change the behavior
31:00 Port Unreachable vs Host Unreachable

Backend Troubleshooting Course

Fundamentals of Backend Engineering (link redirects to udemy with coupon)

Fundamentals of Networking for Effective Backends udemy course (link redirects to udemy with coupon)

Fundamentals of Database Engineering udemy course (link redirects to udemy with coupon)

Follow me on Medium

Introduction to NGINX (link redirects to udemy with coupon)

Python on the Backend (link redirects to udemy with coupon)

Become a Member on YouTube

Buy me a coffee if you liked this

Arabic Software Engineering Channel

🔥 Members Only Content


🏭 Backend Engineering Videos in Order

💾 Database Engineering Videos

🎙️Listen to the Backend Engineering Podcast

Gears and tools used on the Channel (affiliates)

🖼️ Slides and Thumbnail Design
Canva


Stay Awesome,
Hussein
Рекомендации по теме
Комментарии
Автор

Fundamentals of Operating Systems Course

hnasr
Автор

Recently started watching your videos.
Feels nice to know things in depth❤

bipulmishra
Автор

I really enjoy these long, deep dives. You always cover interesting topics

spicynoodle
Автор

The term "Happy Eyeballs" is basically a euphemism for "good user experience". The RFC was trying to balance network load and efficiency versus fast enough timeouts that users wouldn't readily notice that they were timing out and failing over to another address family. Thus the delay was short enough (200-300ms) that their eyeballs remained "happy" as it didn't negatively impact their experience.

nathansherrard
Автор

I have just finished listening to the podcast about this topic and decided to subscribe to your YouTube channel. Thank you for sharing interesting things!

eminence_grise
Автор

Great explanation of Window's TCP/IP. Douglas Comer would be proud.
P.S.: you have some very strange bots in your comments.
Edit: How many people know who Douglas Comer is?

esra_erimez
Автор

One day the dev tool them all series will make a comeback

charliesta.abc
Автор

I like how he didn’t actually try setting the registry option on his machine

benlu
Автор

Its seems that server would not be listning on ipv6 port for this behavior 😮

anandmoon
Автор

Thanks for the great video, as USUAL <3
One more question that pops up, what happens in WSL2, is it the same?

devyetii
Автор

I know why.. cos Windows is terrible 😉

everyhandletaken
Автор

16:02 In 2024 you might need to have IPv6 disabled on Windows due to a zero day. Edit: please see CVE-2024-38063

esra_erimez
Автор

You try to sound clever, but in reality you are not

codingbond