7. End-to-End Data
It is a capital mistake to theorize before one has data.
–Sir Arthur Conan Doyle
What Do We Do with the Data?
From the network's perspective, application programs send messages to each other. Each of these messages is just an uninter preted string of bytes. From the application's perspective, however, these messages contain various kinds of data —arrays of integers, video frames, lines of text, digital images, and so on. In other words, these bytes have meaning. We now consider the problem of how best to encode the different kinds of data that application programs want to exchange into byte strings. In many respects, this is similar to the problem of encoding byte strings into electromagnetic signals that we saw ...