As a trainer, I like to tell that the word DATAGRAM is built on the same basis
as the word TELEGRAM. It's actually a kind of "telegram-of-data".
I also usually explain that Packet Switching relies on two different modes :
DATAGRAM vs VIRTUAL CIRCUITS. The datagram mode is mainly connectionless and
consists of sending data units through the network using all possible routes
(e.g. IP), while the V.C. mode is mainly connection-oriented and consists of
establishing one virtual route prior to sending data units, thus trying to
virtually reproduce the way of working of circuit switching (e.g. X.25, Frame
Last, while I definitely, clearly prefer calling Layer 2 data units "FRAMES", I
sometimes [over-]simplify the terminology of Layer 3 by making the following
distinction : "a datagram is the data unit before fragmentation" ; "a packet is
a piece of a fragmented datagram".
However, as Dave said, there is no fixed, definitive, universal definition of
the words "datagram" and "packet". In 10 different books on the subject, you
will find 10 different definitions. I'm just happy with mine. :)
From: vinton g. cerf [mailto:vinton(_dot_)g(_dot_)cerf(_at_)wcom(_dot_)com]
Louis Pouzin at INRIA coined the term datagram for use in his CIGALE/CYCLADES
network around 1974.
At 07:17 PM 9/23/2002 -0700, Dave Crocker wrote:
At 06:46 PM 9/23/2002 -0700, Fred Baker wrote:
A packet is a unit of data carried in a packet network,
this just moves the question over the definition of a packet network.
(I was trying to compress things.)
regardless of the layer. For some reason, we generally refer to layer
two packets as 'frames' (such as Ethernet, Frame relay, or LAPB
'frames'), X.25 packets as 'packets', and TCP packets as 'segments'.
please note your use of the word "generally". as I said, use of these
terms is flexible.
I can point out literature that refers to each of those as 'packets'.
that was my point.
But a datagram is quite clearly defined.
I believe the term datagram predates IP and seem to recall hearing it
during the late 70's and early 80's in non-IP venues.
The fact that it is well defined for one use does not mean that the
definition is, well, definitive.
...from the application's perspective, a wad of data is directed to a
specified destination, and the application can essentially fire and
I could imagine the APEX folks using the term "datagram" in that
indeed locking the term down for Apex is probably the more useful path.
(but it is slightly amusing that your definition is the same as I used
Dave Crocker <mailto:dave(_at_)tribalwise(_dot_)com>
TribalWise, Inc. <http://www.tribalwise.com>
tel +1.408.246.8253; fax +1.408.850.1850