1.2 Best-effort Datagrams (Mailed Letters)

Suppose you mail three different documents to your office on the other side of the country on two different days. Doing so entails the following.

  1. Each document travels in its own envelope.
  2. Each envelope contains both the sender and the recipient address.
  3. Each envelope may travel a different route to its destination.
  4. The envelopes may arrive in a different order from the one in which they were sent.
  5. One or more may get lost in the mail. (Although, fortunately, this does not occur very often.)
  6. In a computer network, one or more packets may also arrive multiple times. (This doesn’t happen with the postal system!)

The important characteristics of datagram communications, like those of the postal system are thus:

The price the user pays for the lower overhead of datagram communications is exactly the lower reliability; it is often necessary for user-level protocols that use datagram communications to add their own reliability features on top of the basic communications.