Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Real-World Applications

“In theory, there is no difference between theory and practice. In practice, there is.” — Attributed to Yogi Berra, though suspiciously similar to things said by engineers throughout the galaxy

We’ve spent considerable time in the comfortable, well-lit corridors of binary syntax theory. The examples have been clean, the data cooperative, and everything has worked on the first try. This is, as anyone who has actually written software knows, completely unlike reality.

Reality is where:

  • Protocol specifications were written by committees who couldn’t agree on lunch
  • Legacy systems exchange data in formats designed when 640K was a lot of memory
  • Network packets arrive malformed because cosmic rays exist and Murphy’s Law has universal jurisdiction
  • Documentation says one thing, implementations do another, and the RFC was “clarified” seventeen times

Let’s roll up our sleeves and look at some actual binary protocol handling, starting with a perennial favorite: the Internet Protocol.