The Subnetwork Access Protocol (SNAP) is a mechanism for multiplexing, on networks using IEEE 802.2 LLC, more protocols than can be distinguished by the 8-bit 802.2 Service Access Point (SAP) fields. SNAP supports identifying protocols by EtherType field values; it also supports vendor-private protocol identifier spaces. It is used with IEEE 802.3, IEEE 802.4, IEEE 802.5, IEEE 802.11 and other IEEE 802 physical network layers, as well as with non-IEEE 802 physical network layers such as FDDI that use 802.2 LLC. The SNAP and LSAP fields are added to the packets at the transmitting node in order to allow the receiving node to pass each received frame to an appropriate device driver which understands given protocol. The OSI model uses a Service Access Point (SAP) to define the communication between layers (like Network, Transport, Session, and the other layers of the Seven-Layered Model), that is to identify which protocol should process an incoming message. Within a given layer, programs can exchange data by a mutually agreed-upon protocol mechanism. A pair of programs that do not support a common protocol cannot communicate with each other. Thus for multiple protocols to coexist within a layer, it is necessary to determine which protocol is invoked to process a service data unit delivered by the lower layer. The most common reference to SAP, including a Source Service Access Point (SSAP) and a Destination Service Access Point (DSAP) refers to the boundary between the Data Link Layer and the Network Layer. It is common to think of SAP only in terms of its use at Layer 2, specifically in its Logical Link Control (LLC) sub-layer as defined in the IEEE 802.2 standards. Link Service Access Point (LSAP) includes both Destination Service Access Point (DSAP) and Source Service Access Point (SSAP). It enables a MAC station to communicate with upper layers via different protocols. Standard Network layer protocols have been assigned reserved LLC addresses, as recorded in ISO/IEC TR 11802-1. One half of the LLC address space is reserved for such assignment.
Giovanni De Micheli, Mathias Soeken, Pierre-Emmanuel Julien Marc Gaillardon, Luca Gaetano Amarù, Winston Jason Haaswijk
Jean-Pierre Hubaux, Kévin Clément Huguenin, Nevena Vratonjic, Vincent Bindschaedler