To learn more about networking fundamentals check out my udemy course Fundamentals of Networking for Effective Backends Head to network.husseinnasser.com for a discount coupon
Ahh, yes, tcpdump, one of my most used tools. I would also recommend adding -s 0 -a on Linux (pretty sure it's different on Mac OS X: edit and you mentioned it later) so you can look into the packets. 6:33 actually, Mac OS X came from NeXTSTEP which used a Mach kernel, which was developed at Carnegie Mellon University. And parts from BSD. Which is the BSD where FreeBSD, NetBSD, OpenBSD are also derivatives from. My guess is TCP/IP stack came from BSD. 6:41 I understand what you are saying if it went onto the network, because tcpdump would sees the packets before the NIC adds the checksums because of TCP offloading. But loopback, no NIC involved. 7:58 even better the latency of loopback is really low. Best in the industry ! ;-) 10:14 let's be clear here, isn't it just a C-structure in memory ? No memcopy at all. 9:38 if we are getting into the tech weeds obviously, the server in userspace doesn't send the TCP packet (the kernel handles the TCP part), the server program just uses the socket API and does an accept (). 10:24 well, client... 10:44 so not really a duplicate after all ? You can could argue it's not needed I guess. 14:40 well, this is why in Unix we have Unix domain sockets and in Windows Named pipes. Even less overhead than loopback. Have a great weekend ! 🙂