[mod.protocols.tcp-ip] IP on 802

POSTEL@B.ISI.EDU (10/13/86)

Well, i haven't got an RFC out yet, but the procedure described in the
following memo should be used anyway.  There is a small and ever
decreasing possibility that the values of K1 and K2 may be different
than indicated below, so consider the possibility of having them
changable in your implementation.

In the mean time please go ahead and use this encapsulation format for
doing IP and ARP (and other things) on 802 nets,

                      using K1=170, and K2=0.

The IEEE likes to talk about bytes in little endian order so they say
K1 is 01010101.  The ARPA protocols have everything in big endian
order so that K1 becomes 10101010 binary or AA hex or 170 decimal.
This value is pretty definite.

The value of K2 is somewhat less certain, but no evidience to the
contrary has surfaced yet.

--jon.

*** begin ***

Date: 29 Aug 1986 19:27:12 PDT
From: POSTEL@B.ISI.EDU
Subject: How to IP & ARP on 802 Nets
To:   tcp-ip@SRI-NIC.ARPA

Hello. 

At an ad hoc special session on "IEEE 802 Networks and ARP" held
during the recent TCP Vendors Workshop, an approach to a consistent
way to sent DOD-IP datagrams and other IP related protocols on 802
networks was developed.

Due to some evolution of the IEEE 802.2 standards and the need to
provide for a standard way to do additional DOD-IP related protocols
(such as Address Resolution Protocol (ARP)) on IEEE 802 networks, the
following new policy is being proposed, which will replace the current
policy (see page 26 of RFC-960 and RFC-948).

The proposal is for DDN and ARPA-Internet community to use IEEE
802.2 encapsulation on 802.3, 802.4, and 802.5 networks by using the
SNAP with an organization code indicating that the following 16 bits
specify the Ethertype code (where IP = 2048 (0800 hex), see page 27 of
RFC-960).


...--------+--------+--------+
 MAC Header|      Length     |                    802.{3/4/5} MAC Header
...--------+--------+--------+

+--------+--------+--------+
| Dsap=K1| Ssap=K1| control|                      802.2 SAP Header
+--------+--------+--------+

+--------+--------+---------+--------+--------+
|protocol id or org code =K2|    Ether Type   |   802.2  SNAP Header
+--------+--------+---------+--------+--------+

The values of K1 and K2 must be assigned by the IEEE.  We believe
there is already assigned a value of K1 that indicates that the
5-octet SNAP header follows.  We can use this value.  There may be a
value of K2 that is already assigned that indicates that the last two
octets of the SNAP header holds the EtherType.  If so we may be able
to use this value.  This remains to be explored.  The EtherTypes are
assigned by Xerox (as always).

The total length of the SAP Header and the SNAP header is 8-octets,
making the 802.2 protocol overhead come out on a nice octet boundary.

If we can not quickly resolve the issue of the values for K1 and K2,
we will push for the assignment of a sap value (a K1 value) to
indicate "IP related protocols" and do our own multiplexing (much like
that proposed above).

In any case, we will not create incompatible interpretations of
headers already in use on 802 networks.

***  end  ***
-------