AppleTalk Phase 2: Short-Form Versus Extended-Form DDP Headers



Kinetics K-STAR 8.0 supports AppleTalk Phase 2. Under AppleTalk Phase 2, most
of the AppleTalk data-link layer changed. Multicast addressing was added, and
RTMP was changed quite a bit. Also, the network layer was changed. The
short-form DDP header was outlawed. The short-form DDP header is useful only
for sending packets within a network, not between networks.

When Kinetics heavily modified K-STAR to support AppleTalk Phase 2, they failed
to change the DDP packets their RTMP and ZIP packets were encapsulated in. So,
even under K-STAR 8.0, FastPaths send their RTMP and ZIP packets in the
short-form DDP header on AppleTalk Phase 1 (non-extended) networks. This seems
to work under most circumstances. However, if you run an Apple Internet
Router, it expects to see the extended-form DDP headers even on AppleTalk Phase
1 networks. Therefore, even if you use the AppleTalk Phase 2 Upgrade Utility,
you still get "Router Version Mismatch" errors.

Why didn't Kinetics switch all their DDP headers to the extended form, which is

valid on all networks and always has been? Why would we ever send anything in
a short-form header? Why do we even support sending short-form headers since
extended-form headers can do everything the short-form ones can?

In AppleTalk Phase 2, the short-form DDP header is not "outlawed". The
short-form DDP header is, and will continue to be, a valid DDP header format.

The extended-form DDP header must be used on all AppleTalk Phase 2 extended
networks. Examples of AppleTalk Phase 2 extended networks include EtherTalk
2.x and TokenTalk 2.0.

The short-form DDP header can be used only on non-extended networks, like
LocalTalk or EtherTalk 1.x. On a non-extended network, the short-form DDP
header can be used for packets whose source and destination nodes have the same
network number. The Link Access Protocol (LAP) header for LocalTalk and
EtherTalk 1.0 packets contain the source and destination node IDs. Because of
this, the source and destination network numbers and node IDs in the
extended-form DDP packet are redundant when the packets source and destination
nodes have the same network number.

Short-form DDP headers are used solely for efficiency reasons. In fact, an
implementation of DDP is permitted to send extended-header DDP packets even
when the source and destination nodes are on the same AppleTalk Phase 1 or
non-extended AppleTalk Phase 2 network. For example, the AppleTalk Internet
Router uses extended-form DDP headers exclusively, even on non-extended
networks, like EtherTalk 1.x.


Published Date: Feb 18, 2012