status
this chapter is in active development
expect live edits and rapid iteration (except for when i am really busy with other stuff) while this material is written.
transport mechanics
reliable delivery and its alternatives.
status
this chapter is in active development
expect live edits and rapid iteration (except for when i am really busy with other stuff) while this material is written.
reliable delivery and its alternatives.
chapter 2 got packets to the right machine. now the question is whether they arrive intact, in order, and without drowning the receiver.
most production debugging lives here. slow queries, broken streams, mysterious timeouts. tcp state and congestion behavior cause more outages than application logic ever will.
tcp deep dive covers the segment format and handshake mechanics. flow control is how receivers throttle senders. congestion control is how the network throttles everyone.
udp is the alternative when you want none of that overhead and accept the consequences. quic is what happened when google decided tcp was too slow to fix and built a new protocol on top of udp.
choosing a transport puts the decision framework in writing.
everything here assumes linux. the tools are ss, tcpdump, sysctl, and the occasional strace. if you cannot reproduce a problem with these, you are guessing.