Subject: RE: APEX

From: "Michel Py" <[email-masked]>
Date: Mon, 23 Sep 2002 16:32:51 -0700

>> Bill Cunningham wrote:
>> APEX core data is referred to as datagrams,
>> a term denoting the network layer. Surely APEX
>> core data has to be packeted, even if not framed.

> Dave Crocker wrote:
> The term 'datagram' does not specify a particular
> level in the communications hierarchy.
> It is a mode, not a layer

I thought a datagram was at the same layer than a packet, the difference
being what they contain: A packet contains data issued from a
connection-oriented protocol (such as TCP) from the layer above, when a
datagram contains data issued from a connectionless protocol (such as
UDP).

From what Bill wrote I would interpret that APEX is a transport layer
(or possibly above), connectionless protocol.

What am I missing here?

Michel.

---

From: Dave Crocker <[email-masked]>
Date: Mon, 23 Sep 2002 17:06:51 -0700

>datagram contains data issued from a connectionless protocol (such as

Packet-switching refers to data chunks that contain destination 
addresses.  It might contain other information, such as source address, but 
this is not required.) They can be relayed in a fixed fashion essentially 
making a connection) or dynamically routed.

The term packet-switching is generic, even used by some to describe what is 
done for email relaying.  (Others are not so happy with that particular usage.)

There is no strict, formal, official distinction between packet or 
datagram.  The tendency is to use packet for referring to the lower-levels, 
and datagram at the higher.  But how high or how low?

For example, IP is a packet-switching protocol, yet its units are called 
datagrams. UDP uses the term datagram.

d/

----------
Dave Crocker <mailto:[email-masked]>
TribalWise, Inc. <http://www.tribalwise.com>
tel +1.408.246.8253; fax +1.408.850.1850

---

From: "Bill Cunningham" <[email-masked]>
Date: Mon, 23 Sep 2002 20:45:01 -0400

> (or possibly above), connectionless protocol.

If datagram and packet is the same, then what are frames? TCP is carried by
PPP frames. I'm not sure about APEX (rfc 3340)

---

From: Fred Baker <[email-masked]>
Date: Mon, 23 Sep 2002 18:46:13 -0700

At 05:06 PM 9/23/2002 -0700, Dave Crocker wrote:
>datagram.  The tendency is to use packet for referring to the 
>lower-levels, and datagram at the higher.  But how high or how low?

I'll disagree with that. A packet is a unit of data carried in a packet 
network, 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'. I can 
point out literature that refers to each of those as 'packets'. I tend to 
view that as the idiom of the writer of the specification, as there is 
nothing uniform about it.

But a datagram is quite clearly defined. RFC 753 is the first RFC to use 
the term: it defines

     internet datagram
           The unit of data exchanged between a pair of internet modules
           (includes the internet header).

More generally, RFC 1594 defines it in these terms:

     Datagram
         A self-contained, independent entity of data carrying
         sufficient information to be routed from the source
         to the destination computer without reliance on earlier
         exchanges between this source and destination computer and
         the transporting network.

Now, the User Datagram Protocol accomplishes something that the BBN 
Transport (the precursor to ISO's TP 4) did: it enables a user application 
to specify a packet of arbitrary size and a destination, and send the data 
to the destination. TP 4 did it using a reliable protocol; UDP does it by 
fragmenting the single 'packet' as necessary and blasting the lot at the 
destination. The two have about the same API, though; from the 
application's perspective, a wad of data is directed to a specified 
destination, and the application can essentially fire and forget. (I won't 
discuss probability of successful delivery :^)

I could imagine the APEX folks using the term "datagram" in that latter sense.

---

From: [email-masked]
Date: Mon, 23 Sep 2002 22:12:33 -0400

> PPP frames. I'm not sure about APEX (rfc 3340)

How about TCP encapsulated over MIME (yes, there *was* a document on that,
which I've since misplaced - it was actually NOT that silly an idea(*)), the
RFC822 carried over an SMTP connection,  which is using an RFC2549 encapsulation?

Or I could just mention ATM, which is almost as ugly ;)

/Valdis

(*) A standard IP-over-MIME format actually has applications - it beats
the usual 'tcpdump | mail fred' ;)

---

From: Dave Crocker <[email-masked]>
Date: Mon, 23 Sep 2002 19:17:16 -0700

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 forget.
>

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 for 
packet-switching...)

d/

----------

---

From: "vinton g. cerf" <[email-masked]>
Date: Tue, 24 Sep 2002 09:28:51 -0400

Louis Pouzin at INRIA coined the term datagram for use in his CIGALE/CYCLADES network around 1974.

vint

At 07:17 PM 9/23/2002 -0700, Dave Crocker wrote:
>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 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 forget.
>>
>(but it is slightly amusing that your definition is the same as I used for packet-switching...)
>
>d/
>
>
>----------

Vint Cerf
SVP Architecture & Technology
WorldCom
22001 Loudoun County Parkway, F2-4115
Ashburn, VA 20147
703 886 1690 (v806 1690)
703 886 0047 fax