www.youtube.com
99% of Developers Don't Get TCP/IP
Excerpt
### Transcript {ts:0} 99% of developers don't get TCP IP. You hit play on the first episode of Squid {ts:5} Game season 3. You push a oneline hotfix that accidentally takes down your entire team's prod database. You drop the this {ts:12} is fine meme into your Instagram gossip group chat. … And why is the {ts:45} future of the web, HTTP3, being built on UDP instead of the ultra reliable TCP? ... These {ts:210} protocols almost always use TCP underneath to guarantee reliability except for some DNS queries and {ts:217} real-time apps that use UDP. Next, we have the transport layer. The transport layer is where the transmission control {ts:223} protocol or TCP resides and it solves one of the internet's biggest challenges. … It then sends these segments and waits for acknowledgements or acts from the {ts:247} receiver. If a segment is lost or damaged, TCP detects the problem, usually through missing acknowledgements {ts:253} or corrupted check sums and automatically retransmits the affected segment. This process is called positive {ts:260} acknowledgement with retransmission or PR. To avoid overwhelming the receiver, TCP uses flow control via the sliding {ts:267} window protocol, which allows the sender to send multiple segments before requiring an acknowledgement, but within {ts:273} a limit that the receiver can handle. TCB also adjusts its sending rate based on network congestion. These monitor {ts:279} signs of congestion such as dropped packets or increased roundtrip times and throttle transmission rates when needed {ts:285} to avoid flooding the network. Because of these mechanisms, TCP is considered connectionoriented. Before any data is {ts:292} exchanged, a three-way handshake occurs. … For applications where speed is more important than reliability like video {ts:326} calls on FaceTime, online games or live streams on Twitch, TCB can be too slow. In such cases, a different transport {ts:333} layer protocol called UDP or user datagramgram protocol is used. UDP is connectionless and does not guarantee … But that very strength the stable singular connection can become a {ts:376} massive weakness. Imagine you're not just loading one web page. Imagine you're a developer building a service {ts:381} that needs to gather public data from thousands of web pages. If you try to open thousands of these TCB connections {ts:386} from your single server, the target's website's firewall will see it instantly. Your server's IP address gets {ts:391} blacklisted and your project is dead in the water. This is the fundamental challenge of large-scale data {ts:396} collection. And solving that exact problem is why I'm going to introduce you to Dakota. … {ts:492} It abstracts away the fragility of individual websites, handling bot detection and site changes for you. This {ts:498} means you can build more resilient data pipelines that require less maintenance, ensuring your data links and vector {ts:503} databases are constantly fed with fresh, high-quality data for training and rag systems. … And for software engineers and QA teams, flaky end-to-end {ts:539} tests are a nightmare. Stop debugging test failures caused by your CI/CD runner's IP getting rate limited or {ts:545} banned by a thirdparty API you integrate with. By routing your Playright or Selenium tests through Dakota's network,
Related Pain Points
TCP Connection Limits for Large-Scale Data Collection
8Opening thousands of TCP connections from a single server for data collection triggers firewall bot detection and IP blacklisting, blocking large-scale web scraping and data pipeline projects. This is a fundamental architectural limitation when trying to gather data from many sources simultaneously.
TCP Too Slow for Real-Time Applications
6TCP's reliability guarantees, connection overhead (3-way handshake), and flow control make it unsuitable for applications prioritizing speed over reliability, such as video calls, online games, and live streams, forcing developers to use UDP instead and lose reliability benefits.