The Life of a Packet in the Linux kernel

A practical, plain-English tour of how Linux moves packets from write() to the wire and back