Site home page
Get alerts when Linktionary is updated
Book updates and addendums
Get info about the Encyclopedia of Networking and Telecommunicatons, 3rd edition (2001)
Download the electronic version of the Encyclopedia of Networking, 2nd edition (1996). It's free!
Contribute to this site
Electronic licensing info
Datagram and Datagram Services
Note: Many topics at this site are reduced versions of the text in "The Encyclopedia of Networking and Telecommunications." Search results will not be as extensive as a search of the book's CD-ROM.
A datagram is a unit of data in the network layers of the protocol stack for carrying data across a packet-switched network. Like a message, it includes a destination network address so it can be forwarded across internetworks to a recipient. It is transmitted using connectionless, best-effort delivery techniques. A datagram contains encapsulates data from the upper transport layer. This is illustrated in Figure D-14 and described next.
Figure 14: See book
IPX (Internetwork Packet Exchange) and IP (Internet Protocol) are datagram services. In contrast, SPX (Sequenced Packet Exchange) and TCP (Transmission Control Protocol) are connection-oriented services that provide additional reliability services on top of IPX and IP, respectively. Applications that don't need reliability services go through UDP rather than TCP, but both UDP and TCP use the underlying IP datagram services to move information across router-connected internetworks.
The concept that a reliable protocol such as TCP uses an unreliable protocol like IP is often confusing. One can think of a postal carrier as a datagram service provider. Her job is to delivery packets (letters). If you want a confirmation that a letter has been delivered, you need to fill out a receipt confirmation slip. That's an enhanced service provided by the post office. TCP is an enhanced service that applications can choose to use if they need delivery confirmations.
Figure D-15 illustrates the difference between the IP datagram and the TCP segment. Note that IP datagrams have fields for IP source and destination addresses, along with flags and a Checksum field (to determine if a packet is corrupted). This information is all related to moving information across a network. A TCP segment, on the other hand, contains fields for information that is used to provide reliable delivery (sequence numbers and acknowledgement numbers), as well as port numbers, which identify the application processes that connect across the TCP virtual circuit.
Figure 15: See book
It is helpful to compare datagram services with ATM services. Datagrams are variable in length and carried across connectionless links. ATM uses fixed-size cells and transports cells across predefined virtual circuits. There has always been a rift between the telecommunication engineers who advocated ATM cells and the data communication engineers who advocated packet switching. The outcome of this rift was summarized by Charles N. Judice writing in IEEE Communications Magazine, August 2000:
I submit that the communication industry lost it when the computer guys could not get their 1000-byte packets into ATM standards. While those of us with the "Bell Shaped Heads" thought we won a great compromise in establishing 53 bytes as the ATM packet size, what we really did was demonstrate to the computer industry that we had little understanding of their requirements or the implications of their design. So rather than design the next-generation network with us, they just kept making their datagram network work harder and faster.
Copyright (c) 2001 Tom Sheldon and Big Sur Multimedia.