# IEEE 802.2

IEEE 802.2 is the original name of the ISO/IEC 8802-2 standard which defines logical link control (LLC) as the upper portion of the data link layer of the OSI Model. The original standard developed by the Institute of Electrical and Electronics Engineers (IEEE) in collaboration with the American National Standards Institute (ANSI) was adopted by the International Organization for Standardization (ISO) in 1998, but it remains an integral part of the family of IEEE 802 standards for local and metropolitan networks.
LLC is a software component that provides a uniform interface to the user of the data link service, usually the network layer. LLC may offer three types of services:
* unacknowledged connectionless mode services (mandatory);
* connection mode services (optional);
* acknowledged connectionless mode services (optional).
The LLC uses the services of the media access control (MAC), which is dependent on the specific transmission medium (Ethernet, Token Ring, FDDI, 802.11, etc.). Using LLC is compulsory for all IEEE 802 networks with the exception of Ethernet. It is also used in Fiber Distributed Data Interface (FDDI) which is not part of the IEEE 802 family.
The IEEE 802.2 sublayer adds some control information to the message created by the upper layer and passed to the LLC for transmission to another node on the same data link. The resulting packet is generally referred to as LLC protocol data unit (PDU) and the additional information added by the LLC sublayer is the LLC HEADER. The LLC Header consist of DSAP (Destination Service Access Point), SSAP (Source Service Access Point) and the Control field.
The two 8-bit fields DSAP and SSAP allow multiplexing of various upper layer protocols above LLC. However, many protocols use the Subnetwork Access Protocol (SNAP) extension which allows using EtherType values to specify the protocol being transported atop IEEE 802.2. It also allows vendors to define their own protocol value spaces.
The 8 or 16 bit HDLC-style Control field serves to distinguish communication mode, to specify a specific operation and to facilitate connection control and flow control (in connection mode) or acknowledgements (in acknowledged connectionless mode).

## Operational modes

IEEE 802.2 provides two connectionless and one connection-oriented operational modes:
* Type 1 is an unacknowledged connectionless mode for a datagram service. It allows for sending frames
** to a single destination (point-to-point or unicast transfer);
** to multiple destinations on the same network (multicast);
** or to all stations of the network (broadcast).
The use of multicasts and broadcasts reduces network traffic when the same information needs to be propagated to all stations of the network. However the Type 1 service provides no guarantees regarding the order of the received frames compared to the order in which they have been sent; the sender does not even get an acknowledgment that the frames have been received.
* Type 2 is a connection-oriented operational mode. Sequence numbering ensures that the frames received are guaranteed to be in the order they have been sent, and no frames are lost.
* Type 3 is an acknowledged connectionless service. It supports point-to-point communication only.
Each device conforming to the IEEE 802.2 standard must support service type 1. Each network node is assigned an LLC Class according to which service types it supports:
| LLC Class | Supported Service Types | Supported Service Types | Supported Service Types |
| LLC Class | 1 | 2 | 3 |
| I | X | | |
| II | X | X | |
| III | X | | X |
| IV | X | X | X |

## LLC header

Any 802.2 LLC PDU has the following format:
| 802.2 LLC Header | 802.2 LLC Header | 802.2 LLC Header | Information |
| DSAP address | SSAP address | Control | Information |
| 8 bits | 8 bits | 8 or 16 bits | multiple of 8 bits |
When Subnetwork Access Protocol (SNAP) extension is used, it is located at the start of the Information field:
| 802.2 LLC Header | 802.2 LLC Header | 802.2 LLC Header | SNAP extension | SNAP extension | Upper layer data |
| DSAP | SSAP | Control | OUI | Protocol ID | Upper layer data |
| 8 bits | 8 bits | 8 or 16 bits | 24 bits | 16 bits | multiple of 8 bits |
The 802.2 header includes two eight-bit address fields, called service access points (SAP) or collectively LSAP in the OSI terminology:
* SSAP (Source SAP) is an 8-bit long field that represents the logical address of the network layer entity that has created the message.
* DSAP (Destination SAP) is an 8-bit long field that represents the logical addresses of the network layer entity intended to receive the message.

### LSAP values

Although the LSAP fields are 8 bits long, the low-order bit is reserved for special purposes, leaving only 128 values available for most purposes.
The low-order bit of the DSAP indicates whether it contains an individual or a group address:
* If the low-order bit is 0, the remaining 7 bits of the DSAP specify an individual address, which refers to a single local service access point (LSAP) to which the packet should be delivered.
* If the low-order bit is 1, the remaining 7 bits of the DSAP specify a group address, which refers to a group of LSAPs to which the packet should be delivered.
The low-order bit of the SSAP indicates whether the packet is a command or response packet:
* If it's 0, the packet is a command packet.
* If it's 1, the packet is a response packet.
The remaining 7 bits of the SSAP specify the LSAP (always an individual address) from which the packet was transmitted.
LSAP numbers are globally assigned by the IEEE to uniquely identify well established international standards.
Individual LSAP addresses :
| Value | Value | Meaning |
| Dec | Hex | Meaning |
| 0 | 00 | Null LSAP |
| 2 | 02 | Individual LLC Sublayer Mgt |
| 4 | 04 | SNA Path Control (individual) |
| 6 | 06 | Reserved for DoD IP |
| 14 | 0E | ProWay-LAN |
| 24 | 18 | Texas Instruments |
| 66 | 42 | IEEE 802.1 Bridge Spanning Tree Protocol |
| 78 | 4E | EIA-RS 511 |
| 94 | 5E | ISI IP |
| 126 | 7E | ISO 8208 (X.25 over IEEE 802.2 Type LLC) |
| 128 | 80 | Xerox Network Systems (XNS) |
| 130 | 82 | BACnet/Ethernet |
| 134 | 86 | Nestar |
| 142 | 8E | ProWay-LAN (IEC 955) |
| 152 | 98 | ARPANET Address Resolution Protocol (ARP) |
| 166 | A6 | RDE (route determination entity) |
| 170 | AA | SNAP Extension Used |
| 188 | BC | Banyan VINES |
| 224 | E0 | Novell NetWare |
| 240 | F0 | IBM NetBIOS |
| 244 | F4 | IBM LAN Management (individual) |
| 248 | F8 | IBM Remote Program Load (RPL) |
| 250 | FA | Ungermann-Bass |
| 254 | FE | OSI Connectionless-mode Network Service: CLNP, ISIS, ESIS |
Group DSAP addresses (not valid for SSAP) :
| Value | Value | Meaning |
| Dec | Hex | Meaning |
| 3 | 03 | Group LLC Sublayer Mgt |
| 5 | 05 | SNA Path Control (group) |
| 245 | F5 | IBM LAN Management (group) |
| 255 | FF | Global DSAP (broadcast to all) |
The protocols or families of protocols which have assigned one or more SAPs may operate directly on top of 802.2 LLC. Other protocols may use the Subnetwork Access Protocol (SNAP) with IEEE 802.2 which is indicated by the hexadecimal value 0xAA (or 0xAB, if the source of a response) in SSAP and DSAP. The SNAP extension allows using EtherType values or private protocol ID spaces in all IEEE 802 networks. It can be used both in datagram and in connection-oriented network services.
Ethernet (IEEE 802.3) networks are an exception; the IEEE 802.3x-1997 standard explicitly allowed using of the Ethernet II framing, where the 16-bit field after the MAC addresses does not carry the length of the frame followed by the IEEE 802.2 LLC header, but the EtherType value followed by the upper layer data. With this framing only datagram services are supported on the data link layer.

### IPv4, IPX, and 802.2 LLC

Although IPv4 has been assigned an LSAP value of 6 (0x06) and ARP has been assigned an LSAP value of 152 (0x98), IPv4 is almost never directly encapsulated in 802.2 LLC frames without SNAP headers. Instead, the Internet standard RFC 1042 is usually used for encapsulating IPv4 traffic in 802.2 LLC frames with SNAP headers on FDDI and on IEEE 802 networks other than Ethernet. Ethernet networks typically use Ethernet II framing with EtherType 0x800 for IP and 0x806 for ARP.
The IPX protocol used by Novell NetWare networks supports an additional Ethernet frame type, 802.3 raw, ultimately supporting four frame types on Ethernet (802.3 raw, 802.2 LLC, 802.2 SNAP, and Ethernet II) and two frame types on FDDI and other (non-Ethernet) IEEE 802 networks (802.2 LLC and 802.2 SNAP).
It is possible to use diverse framings on a single network. It is possible to do it even for the same upper layer protocol, but in such a case the nodes using unlike framings cannot directly communicate with each other.

### Control Field

Following the destination and source SAP fields is a control field. IEEE 802.2 was conceptually derived from HDLC, and has the same three types of PDUs:
* unnumbered format PDUs, or U-format PDUs, with an 8-bit control field, which are intended for connectionless applications;
* information transfer format PDUs, or I-format PDUs, with a 16-bit control and sequence numbering field, which are intended to be used in connection-oriented applications;
* supervisory format PDUs, or S-format PDUs, with a 16-bit control field, which are intended to be used for supervisory functions at the LLC (Logical Link Control) layer.
To carry data in the most-often used unacknowledged connectionless mode the U-format is used. It is identified by the value '11' in lower two bits of the single-byte control field.