Encapsulation Methods for Transport of Fibre Channel Traffic over MPLS Networks
Extracted elements (29)
FC PW provides transparent port-to-port FC link emulation unlike FCIP, which introduces B_Ports at each end. This transparency means the FC fabric and network operator see an apparent direct FC link, enabling simpler FC control processing and eliminating the special timing mechanisms FCIP requires for TCP interaction.
Idle Primitive Signal suppression and Primitive Sequence rate reduction are performed by the NSP to reclaim WAN bandwidth; a 10:1 reduction in Primitive Sequence rate achieves 90% of bandwidth benefits without loss of FC functionality. These optimizations are transparent to CE devices because the far-end PE regenerates the required FC link behavior.
The CRC in an FC frame is passed through the PW without recalculation or checking at the ingress PE; the receiving FC port performs CRC validation. This differs from RFC 4720 FCS retention, which mandates ingress inspection and discard of errored frames. The rationale is that CRC coverage extends end-to-end between FC ports, not just between PW endpoints.
The FC PW specification is limited to FC attachment links using 8b/10b transmission coding. Links using 64b/66b coding (10GFC, 16GFC) are not supported. FC service classes 1, 4, and 6 are not supported; only classes 2, 3, and F may be used.
An FC PW MUST adhere to three FC timing requirements: latency no more than half R_T_TOV (default 100 ms) for Primitive Sequences, no more than half E_D_TOV (default 2 s) for frames, and within R_A_TOV (default 10 s) for the fabric. The FC PW MUST NOT be used where high or variable latency may violate these requirements.
FC links using 64b/66b transmission code (e.g., 10GFC and 16GFC) MUST NOT be attached to an FC PW PE unless their link speed can be negotiated to one that uses 8b/10b encoding. If an invalid 10b code is received, the PE sends an FC PW control frame to report the error.
FC PW packets containing FC Ordered Sets MUST NOT be larger than 60 octets (8 octets of header plus at most 13 Ordered Sets) to ensure the Length field contains a non-zero value.
FC service classes 1, 4, and 6 MUST NOT be used with an FC PW; only service classes 2, 3, and F are permitted.
Fragmentation as described in RFC 4623 SHALL NOT be used for an FC PW; therefore the MPLS network MUST be configured with a minimum MTU sufficient to transport the largest encapsulated FC frame (2164 octets without PW and MPLS labels). The MPLS network SHOULD accommodate frames up to 2500 octets for future FC frame size increases.
If measured latency violates any of the three FC timing requirements, the FC PW PE MUST generate a WAN Down event as specified in FC-BB-5/AM1. PING and PING_ACK FC PW control frames SHOULD be used to measure current FC pseudowire latency.
PW failures detected through PW signaling failure, PW status notifications (RFC 4447), or OAM mechanisms MUST be mapped to emulated signal failure indications; the NSP sends the FC link failure indication to the attached FC link.
The first four bits of the PW Control Word MUST be set to 0 by the ingress PE to indicate PW data. Packets with PT field values other than 0, 1, 2, or 6 are not valid and MUST be discarded by the receiving FC PW PE.
The Fragmentation Indicator, Interface MTU Parameter, and FCS Retention Indicator parameters MUST be omitted from the Interface Parameter Sub-TLV for FC pseudowires, as fragmentation is unused, all FC interfaces have the same MTU, and FC CRC treatment differs from RFC 4720.
The Generic PW Control Word as defined in RFC 4385 MUST be used for FC PW to facilitate transport of short packets and convey FC-specific flag bits. The Control Word is REQUIRED for FC pseudowires.
The Length field MUST be used for PW packets shorter than 64 octets (setting the value to the actual length), MUST be set to zero for longer packets, and MUST be processed per RFC 4385 rules.
The PW Type field in the PWid FEC element and PW generalized ID FEC elements MUST be set to the 'FC Port Mode' value (0x001F). The C-Bit MUST be set; if it is not set, the pseudowire MUST NOT be established and a Label Release MUST be sent with an 'Illegal C-Bit' status code.
The receiving FC PW PE MUST check for presence of an 8b K28.5 value (0xBC) at the start of each Ordered Set and MUST send that value as a 10b K28.5 character on the attached FC link; the three following Dxx.y 8b values MUST be sent as Dxx.y 10b characters and MUST NOT be sent as 10b Kxx.y characters.
The sequence number field in the FC PW Control Word MUST be set to 0 by the ingress PE and MUST be ignored by the egress PE. The X flag bit SHOULD be set to zero by the sender and MUST be ignored by the receiver.
Four Payload Types (PT) are defined in the FC PW Control Word: PT=0 (FC data frame), PT=1 (FC login frame carrying PLOGI/FLOGI/ELP operations), PT=2 (FC Primitive Sequences and/or Primitive Signals), and PT=6 (FC PW control frames for ASFC flow control, ping, and error reporting).
The Native Service Processing (NSP) function performs three operations: (1) Idle Suppression — drops received FC Idle Primitive Signals and regenerates them at the far end; (2) FC Primitive Sequence Reduction — forwards only a subset (e.g., every fourth) of repeated Primitive Sequences; (3) Alternate Simple Flow Control (ASFC) — a pause/resume protocol for buffer management across the PW.
Three FC port-connection types are supported over an FC PW: N_Port to N_Port (established by PLOGI), N_Port to F_Port (established by FLOGI), and E_Port to E_Port (established by ELP). Other FC connection types such as NL_Port and FL_Port are not supported.
IANA assigned MPLS Pseudowire type 0x001F with description 'FC Port Mode' to this document (RFC 6307) for use in the PWid FEC element and PW generalized ID FEC elements.
IANA reserved Pseudowire Interface Parameters Sub-TLV types 0x12, 0x13, 0x14, and 0x15 (previously used for the now-eliminated FC PW Selective Retransmission protocol) to prevent future reuse, as at least one deployed implementation of that protocol exists.
FC PW inherits MPLS pseudowire security considerations from RFC 3985 and RFC 4385. Fibre Channel fabric security protocols defined in FC-SP operate at higher FC layers and are transparent to the FC PW layer.
Injection of latency sufficient to cause an FC PW's round-trip time to exceed R_T_TOV (default 100 ms) may cause active FC PW failure, as the FC link initialization protocol repeatedly times out. OAM functionality SHOULD monitor for persistence of this condition and respond, e.g., by shutting down the FC PW to avoid wasting WAN bandwidth.
FC data frames (PT=0) and login frames (PT=1) are encapsulated as: FC PW Control Word | FC Encapsulation Header | 1-octet SOF Code | 3-octet Reserved | FC Frame payload | 4-octet CRC | 1-octet EOF Code | 3-octet Reserved. Maximum encapsulated FC frame size is 2164 octets.
FC Ordered Sets (PT=2) are encapsulated as: FC PW Control Word | FC Encapsulation Header | repeating groups of [K28.5 (1 octet, 0xBC) | Dxx.y | Dxx.y | Dxx.y]. One packet may carry multiple Ordered Sets up to 60 octets total.
FC PW Control Frames (PT=6) are encapsulated as: FC PW Control Word | FC Encapsulation Header | FC PW Control Frame payload. These frames are always shorter than 64 octets, so the Length field always indicates their length.
The 32-bit FC PW Control Word contains: 4 reserved bits (set to 0), a 3-bit Payload Type (PT) field, a 1-bit X flag, 2 fragmentation bits (set to 0), a 6-bit Length field, and a 16-bit Sequence Number (set to 0). It precedes an FC Encapsulation Header in every PW packet.