tcpdump: our best friend
Virtually impossible to figure out problems like the previous one by just puzzling it out
Reading about how protocols work is a good starting point; implementing them gives you even more. But…
Nothing gave me more intimate knowledge of TCP than seeing it come alive. Not looking at high level behavior, but actually watching packets fly across the wire
Different stacks have different personalities
TCP/IP Illustrated v1 is great to learn how