Multiprotocol Interconnect over Frame Relay
obsoleted by
Extracted elements (27)
Frame Relay fragmentation is scoped to the DTE boundaries of the Frame Relay network (unlike IP fragmentation which is end-to-end). A packet is first fully encapsulated, then fragmented, so reassembled packets follow the same processing path as unfragmented packets.
IP is encapsulated with NLPID=0xCC rather than SNAP because it saves 48 bits per packet and is consistent with the encapsulation of IP in X.25 networks, reducing ambiguity and improving efficiency.
The 802.6 Common PDU Header and Trailer are carried in bridged 802.6 frames to enable pipelining: the egress bridge can extract the BAsize length field and begin transmitting the 802.6 PDU before the complete frame is received, rather than buffering the whole frame to compute the length.
Some existing Frame Relay stations use NLPID=0xCE to escape to Ethernet Packet Types (RFC-1060). Stations may recognize this value and interpret the following 2-byte EtherType for backward compatibility, but must never generate this encapsulation format.
Systems capable of carrying multiple encapsulation methods must have a priori knowledge of which virtual circuits use which encapsulation; this encapsulation must only be used on VCs explicitly configured for it.
A Frame Relay DTE must allow the maximum acceptable frame size to be configurable; the network must support at least a 262-octet maximum, and the minimum frame size is five octets between opening and closing flags.
A Frame Relay interface acting as a bridge must be able to flood, forward, and filter packets. Flooding is performed by sending the packet through each relevant DLC; dynamic MAC address learning is required.
All protocols must encapsulate their packets within a Q.922 Annex A frame, and frames shall contain information to identify the protocol carried within the PDU.
All stations must be able to accept and properly interpret both the NLPID encapsulation and the SNAP header encapsulation for a routed packet.
Bridged packets shall conform to the SNAP encapsulation described in section 7 so that the receiving Frame Relay interface can learn the association between foreign MAC destinations and Frame Relay DLCIs.
Fragments must be sent in order starting with offset zero and ending with the final fragment, must not be interrupted by other packets on the same DLC, and an end station must be able to reassemble up to 2K octets (8K recommended). If any fragment is missing or corrupted, the entire message is dropped.
If a station supporting XID receives an XID frame, it shall respond with an XID response, and if the remote maximum frame size is smaller than the local maximum, the local system shall reduce its maximum size to the remote value before generating the response.
If XID is not used, data link parameters must be statically configured or defaulted to Q.922 section 5.9 values: N201=260 octets, T200=1.5 seconds, and K varies by link speed (3 at 16 Kbps, 7 at 64 Kbps, 32 at 384 Kbps, 40 at 1.536 Mbps or above).
IP data shall be encapsulated using the NLPID value of 0xCC (option 1 in section 11), not the SNAP form. This is more efficient (48 fewer bits) and consistent with IP encapsulation in X.25.
SNAP encapsulation should only be used for protocols that do not have an assigned NLPID value. Protocols with a defined NLPID (e.g., IP=0xCC, CLNP=0x81) must use the direct NLPID form.
A SNAP header consists of a 3-octet Organizationally Unique Identifier (OUI) followed by a 2-octet Protocol Identifier (PID). OUI 0x00-00-00 specifies that the following PID is an EtherType. NLPID value 0x80 indicates a SNAP header follows.
ARP over Frame Relay is encapsulated using SNAP (NLPID=0x80, OUI=0x00-00-00, PID=0x0806). The hardware type (ar$hrd) assigned to Frame Relay is 15 decimal (0x000F), and the hardware address length (ar$hln) is 2, 3, or 4 bytes matching the Q.922 address size.
Because DLCIs have only local significance, ARP source and target hardware addresses in Frame Relay packets are initially unknown. The receiving station must extract the correct Q.922 address from the Frame Relay header and substitute it into the source hardware address field of the ARP packet.
Bridged 802.6 frames include the Common PDU Header (with BAsize field) and Common PDU Trailer to enable pipelining at the egress bridge; however, the BEtag value must not be copied directly to the outgoing 802.6 subnetwork as it may conflict with a previously transmitted BEtag.
Frame Relay fragmentation uses SNAP with OUI=0x00-80-C2, PID=0x00-0D. Each fragment contains a 2-octet sequence number (incremented per original message), a 1-bit final flag, a 4-bit reserved field (must be zero), and an 11-bit offset (logical byte offset divided by 32).
Inverse ARP (RFC 1293) is the preferred address resolution mechanism for Frame Relay because it resolves a protocol address from a known DLCI, avoiding the inefficiency of broadcasting ARP requests through every relevant DLC to simulate broadcast.
The NLPID (Network Level Protocol ID) field is a one-octet value administered by ISO/CCITT identifying the encapsulation or protocol that follows. A NLPID value of 0x00 is invalid under Frame Relay encapsulation because it cannot be distinguished from a pad field.
XID (Exchange Identification, Q.922 Appendix III) may optionally be used at circuit initialization to negotiate maximum frame size (N201), retransmission timer (T200), and maximum outstanding I-frames (K). A K value of zero indicates unwillingness to support acknowledged mode multiple frame operation.
Security issues are not addressed in this memo.
All packets must be encapsulated within a Q.922 Annex A frame consisting of: flag (0x7E), Q.922 Address (2-4 octets containing 10-bit DLCI), Control (UI=0x03), optional pad octets (0x00), NLPID (1 octet), Data, FCS (2 octets), and closing flag (0x7E).
Bridged frames use NLPID=0x80, OUI=0x00-80-C2, and a 2-octet PID that identifies both the MAC media type and whether the original LAN FCS is preserved. PIDs 0x00-01 through 0x00-05 include FCS; 0x00-07 through 0x00-0B omit it; 0x00-0E identifies BPDUs.
Routed frames for protocols without an assigned NLPID use NLPID=0x80, OUI=0x00-00-00, and a 2-octet EtherType. Protocols with an assigned NLPID (e.g., IP at 0xCC, CLNP at 0x81) omit the SNAP header, saving 48 bits.