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 *** -------