PPP Over FUNI
Extracted elements (20)
The encapsulation transition detection and recovery policies prevent 'black-holes' that occur when the peer loses state, ensuring the PPP link can recover from unexpected encapsulation changes across virtual connection state loss.
Detection of encapsulation type is possible by inspecting initial LCP packet bytes: LLC-encapsulated PPP starts with fe-fe-03-cf-c0-21 while VC-multiplexed PPP starts with c0-21 following the FUNI Header.
Frame Relay/ATM FRF.8 inter-working units are exempted from the requirement to support VC-multiplexed PPP, allowing them to remain compliant with FRF.8 when the PPP over FUNI endpoint is inter-operating with an RFC 1973 endpoint.
An implementation MUST support both VC-multiplexed PPP payloads and LLC encapsulated PPP payloads on PVCs by mutual configuration or negotiation of both end points.
For each FUNI section in a multi-physical-layer PPP link, the LCP framing options MUST be actively negotiated by the bridging converters independently of the LCP framing options in use by other physical layer sections.
For SVC set up, an implementation MUST negotiate using the Q.2931 Annex C procedure, encoding the B-LLI information element to signal either VC-multiplexed PPP or LLC encapsulated PPP.
If an implementation is connecting through a Frame Relay/ATM FRF.8 service inter-working unit to an RFC 1973 end point, it MUST use LLC encapsulated PPP payloads.
The ATM FUNI virtual connection MUST be full-duplex and point to point, and MAY be either dedicated (permanent, set up by provisioning) or switched (set up on demand).
The called implementation MUST reject a call set up request that only offers an encapsulation that it does not support. Implementations originating a call offering both techniques MUST be able to negotiate LLC-encapsulated PPP.
The FUNI layer MUST provide control signals to the PPP layer indicating when the virtual connection has become connected or disconnected, providing 'Up' and 'Down' events to the LCP state machine.
The Magic Number LCP option is RECOMMENDED; Protocol Field Compression (PFC) is NOT RECOMMENDED. Implementations MUST NOT request and MUST reject FCS Alternatives, ACFC, and ACCM options.
The MRU option MUST NOT be negotiated to a larger size than the maximum CPCS-SDU size specified in the associated direction for the virtual connection's traffic contract.
When originating a switched virtual circuit FUNI connection, the caller MUST request in the SETUP message either VC-multiplexed PPP, LLC-encapsulated PPP, or both; the called implementation MUST be able to accept an incoming call offering LLC-encapsulated PPP.
When using LLC encapsulation, end points MUST NOT send packets belonging to any protocol that has an active NCP within the PPP session, even if bi-laterally provisioned to send other LLC-encapsulated protocols.
ATM PVC security relies on the network provider's administration; for SVCs the protocol is analogous to dial-up, leveraging PAP/CHAP authentication. Applications requiring stronger security are encouraged to use authentication headers, encrypted payloads, and/or ATM-layer security services.
When using LLC-encapsulated PPP over a virtual connection, an end point cannot assume that the PPP session authentication and related security mechanisms also secure other LLC-encapsulated flows on the same virtual connection.
Once PPP has entered the Network-layer Protocol phase and an alternate but equivalent encapsulation frame arrives, for a SVC the PPP Link MUST immediately clear the call with cause value 111 ('protocol error, unspecified'); for a PVC it must tear down active NCPs, SHOULD generate an error message, enter Termination state, and silently drop received packets.
A VC-multiplexed PPP frame constitutes the FUNI User SDU and contains a Protocol ID field (8 or 16 bits), an Information field, and a Padding field.
LLC encapsulated PPP over FUNI encodes the SDU payload as: a 3-byte LLC header (Destination SAP 0xFE, Source SAP 0xFE, Frame Type UI 0x03), followed by NLPID 0xCF (representing PPP), followed by the PPP Protocol Identifier (1 or 2 octets) and PPP information field.
The FUNI PDU format consists of a Flag, a FUNI Header (with 10-bit or 24-bit Frame Address, Congestion Notification bit, Congestion Loss Priority bit, and four Reserved bits), a User SDU field (up to 4096, optionally 64K, octets), a FUNI FCS field (2 or 4 octets), and a closing Flag.