Network Working Group Luca Martini Internet Draft Nasser El-Aawar Expiration Date: May 2001 Giles Heron Level 3 Communications, LLC. Dimitri Stratton Vlachos Daniel Tappan Eric C. Rosen Cisco Systems, Inc. Steve Vogelsang John Shirron Laurel Networks, Inc. Andrew G. Malis Vivace Networks, Inc. November 2000 Encapsulation Methods for Transport of Layer 2 Frames Over MPLS draft-martini-l2circuit-encap-mpls-00.txt Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. Martini, et al. [Page 1] Internet Draft draft-martini-l2circuit-encap-mpls-00.txt November 2000 Abstract This document describes methods for encapsulating the Protocol Data Units (PDUs) of layer 2 protocols such as Frame Relay, ATM AAL5, Ethernet for transport across an MPLS network. Table of Contents 1 Specification of Requirements .......................... 2 2 Introduction ........................................... 2 3 Optional Sequencing and/or Padding ..................... 3 4 MTU Requirements ....................................... 4 5 Protocol-Specific Issues ............................... 4 5.1 Frame Relay ............................................ 4 5.2 ATM .................................................... 4 5.2.1 OAM Cell Support ....................................... 6 5.2.2 CLP Bit to EXP Bit Mapping ............................. 7 5.3 Ethernet VLAN .......................................... 7 5.4 Ethernet ............................................... 7 5.5 HDLC ( Cisco ) ......................................... 7 5.6 PPP .................................................... 8 6 Security Considerations ................................ 8 7 Intellectual Property Disclaimer ....................... 8 8 References ............................................. 8 9 Author Information ..................................... 9 1. Specification of Requirements The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 2. Introduction In an MPLS network, it is possible to carry the Protocol Data Units (PDUs) of layer 2 protocols by prepending an MPLS label stack to these PDUs. This document specifies the necessary encapsulation procedures for accomplishing this. The control protocol methods are described in [5]. QoS related issues are not discussed in this draft. Martini, et al. [Page 2] Internet Draft draft-martini-l2circuit-encap-mpls-00.txt November 2000 3. Optional Sequencing and/or Padding Sometimes it is important to guarantee that sequentiality is preserved on a layer 2 virtual circuit. To accommodate this requirement, we provide an optional control word which may appear immediately after the label stack and immediately before the layer 2 PDU. This control word contains a sequence number. R1 and R2 both need to be configured with the knowledge of whether a control word will be used for a specific virtual circuit. Sometimes it is necessary to transmit a small packet on a medium where there is a minimum transport unit larger than the actual packet size. In this case, padding is appended to the packet. When the VC label is popped, it may be desirable to remove the padding before forwarding the packet. To facilitate this, the control word has a length field. If the packet's length (without any padding) is less than 256 bytes, the length field MUST be set to the packet's length (without padding). Otherwise the length field MUST be set to zero. The value of the length field, if non-zero, can be used to remove any padding. The generic control word is defined as follows: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Reserved |T| Length | Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ In the above diagram the first 7 bits are reserved for future use. They MUST be set to 0 when transmitting, and MUST be ignored upon receipt. The T bit is used in ATM encapsulations only, and MUST be set to zero for other encapsulations. The length byte is set as specified above. The next 16 bits are the sequence number that is used to guarantee ordered packet delivery. For a given VC label, and a given pair of LSRs, R1 and R2, where R2 has distributed that VC label to R1, the sequence number is initialized to 0. This is incremented by one for each successive packet carrying that VC label which R1 transmits to R2. The sequence number space is a 16 bit unsigned circular space. PDUs carrying the control word MUST NOT be delivered out of order. They may be discarded or reordered. Martini, et al. [Page 3] Internet Draft draft-martini-l2circuit-encap-mpls-00.txt November 2000 4. MTU Requirements The MPLS network should be configured with an MTU that is at least 12 bytes larger then the largest frame size that will be transported in the LSPs. If a packet length, once it has been encapsulated on the ingress LSR, exceeds the LSP MTU, it MUST be dropped. If an egress LSR receives a packet on a VC LSP with a length, once the label stack and sequencing control word have been popped, that exceeds the MTU of the destination layer 2 interface it MUST be dropped. 5. Protocol-Specific Issues 5.1. Frame Relay A Frame Relay PDU is transported in its entirety, including the Frame Relay header. The sequencing control word is OPTIONAL. The BECN and FECN signals are carried unchanged across the network in the Frame Relay header. These signals do not appear in the MPLS header, and are unseen by the MPLS network. The Label Edge Routers that implement this document MAY, when either adding or removing the encapsulation described herein, change a zero to a one in either or both of these bits in order to reflect congestion in the MPLS network that is known to the LERs. The BECN and FECN bits MUST NEVER be changed from one to zero. The ingress LSR MAY consider the DE bit of the Frame Relay header when determining the value to be placed in the EXP fields of the MPLS label stack. In a similar way, the egress LSR MAY consider the EXP field of the VC label when queuing the packet for egress. 5.2. ATM Two encapsulations are supported for ATM transport: one for AAL5 CPCS-PDUs and another for ATM cells. The AAL5 CPCS-PDU encapsulation consists of the MPLS label stack, an optional sequencing control word, and the AAL5 CPCS-PDU. The ATM cell encapsulation consists of an MPLS label stack, a required generic sequencing control word, a 4 byte ATM cell header, and the ATM cell payload as shown below: Martini, et al. [Page 4] Internet Draft draft-martini-l2circuit-encap-mpls-00.txt November 2000 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Reserved |T| Length | Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | VPI | VCI | PTI |C| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Two transport modes are supported for ATM transport, VCC transport and VPC transport. VCC transport mode may be used to transport ATM Adaptation Layer 5 (AAL5) CPCS-PDUs, ATM cells, or both, across the VC LSP. The sequencing control word is optional for VCC transport if only AAL5 CPCS-PDUs are to be transported. If ATM cells, or a combination of ATM cells and AAL5 CPCS-PDUs, are to be transported the sequencing control word is required. VPC transport mode may only be used to transport ATM cells. The sequencing control word is optional in VPC transport mode. * T (transport type) bit In VCC transport mode, bit (T) of the sequencing control word indicates whether the MPLS packet contains an ATM cell or an AAL5 CPCS-PDU. If set the packet contains an ATM cell, otherwise it contains an AAL5 CPCS-PDU. In VPC transport mode this bit MUST be set to 1. * VPI In both modes the ingress router MAY copy the VPI field from the incoming cell into this field. The egress router MAY generate a new VPI based on the value of the VC label and ignore the VPI contained in this field. * VCI In VCC transport mode the ingress router MAY copy the VCI field from the incoming ATM cell header into this field and the egress router MAY generate a new VCI based on the value of the VC label. When in VPC transport mode the ingress LSR MUST copy the VCI field from the incoming cell into this field and the egress LSR MUST copy the VCI from this field into the outgoing ATM cell header. Martini, et al. [Page 5] Internet Draft draft-martini-l2circuit-encap-mpls-00.txt November 2000 * PTI & CLP When present the ingress router SHOULD copy the PTI and CLP fields of the outgoing frame from the ATM cell header and the egress router SHOULD set the left-most and EFCI bits of the PTI in all outgoing cells to that contained in the PTI field of the FAST header and set the CLP bit of outgoing cells to the CLP bit contained in the FAST header. [7] 5.2.1. OAM Cell Support OAM cells MAY be transported on the VC LSP. A router that does not support transport of OAM cells MUST discard incoming MPLS frames on an ATM VC LSP that contain an ATM cell with the high-order bit of the PTI field set to 1. A router that supports transport of OAM cells MUST follow the procedures outlined in [7] section 8 for mode 0 only, in addition to the applicable procedures specified in [5]. A router that does not support transport of OAM cells across an LSP may provide OAM support on ATM PVCs using the following procedures: If an F5 end-to-end OAM cell is received from a VC by an LSR with a loopback indication value of 1 and the LSR has a label mapping for the VC, the LSR must decrement the loopback indication value and loop back the cell on the VC. Otherwise the loopback cell must be discarded by the LSR. The LSR may optionally be configured to periodically generate F5 end-to-end loopback OAM cells on a VC. In this case, the LSR MUST only generate F5 end-to-end loopback cells while a label mapping exists for the VC. If the VC label mapping is withdrawn the LSR MUST cease generation of F5 end-to-end loopback OAM cells. If the LSR fails to receive a response to an F5 end-to-end loopback OAM cell for a pre-defined period of time it must withdraw the label mapping for the VC. If an ingress LSR receives an AIS F5 OAM cell, fails to receive a pre-defined number of the End-to-End loop OAM cells, or a physical interface goes down, it MUST withdraw the label mappings for all VCs associated with the failure. When a VC label mapping is withdrawn, the egress LSR MUST generate AIS F5 OAM cells on the VC associated with the withdrawn label mapping. Martini, et al. [Page 6] Internet Draft draft-martini-l2circuit-encap-mpls-00.txt November 2000 5.2.2. CLP Bit to EXP Bit Mapping The ingress LSR MAY consider the CLP bit when determining the value to be placed in the EXP fields of the MPLS label stack. The egress LSR MAY consider the value of the EXP field of the VC label when determining the value of the ATM CLP bit. 5.3. Ethernet VLAN For an ethernet 802.1q VLAN the entire ethernet frame without the preamble or FCS is transported as a single packet. The sequencing control word is OPTIONAL. If a packet is received out of sequence it MUST be dropped. The 4 byte VLAN tag is transported as is, and MAY be overwritten by the egress LSR. The ingress LSR MAY consider the user priority field [4] of the VLAN tag header when determining the value to be placed in the EXP fields of the MPLS label stack. In a similar way, the egress LSR MAY consider the EXP field of the VC label when queuing the packet for egress. Ethernet packets containing hardware level CRC, Framing errors, or runt packets MUST be discarded on input. 5.4. Ethernet For simple ethernet port to port transport, the entire ethernet frame without the preamble or FCS is transported as a single packet. The sequencing control word is OPTIONAL. If a packet is received out of sequence it MUST be dropped. As in the Ethernet VLAN case, ethernet packets with hardware level CRC, framing, and runt packets MUST be discarded on input. 5.5. HDLC ( Cisco ) HDLC (Cisco) mode provides port to port transport of Cisco HDLC encapsulated traffic. The HDLC PDU is transported in its entirety, including the HDLC address, control and protocol fields, but excluding HDLC flags and the FCS. Bit stuffing is undone. The sequencing control word is OPTIONAL. Martini, et al. [Page 7] Internet Draft draft-martini-l2circuit-encap-mpls-00.txt November 2000 5.6. PPP PPP mode provides point to point transport of PPP encapsulated traffic, as specified in [8]. The PPP PDU is transported in its entirety, including the protocol field, but excluding any media- specific framing information, such as HDLC address and control fields or FCS. The sequencing control word is OPTIONAL. 6. Security Considerations This document does not affect the underlying security issues of MPLS. 7. Intellectual Property Disclaimer This document is being submitted for use in IETF standards discussions. 8. References [1] "LDP Specification", draft-ietf-mpls-ldp-11.txt ( work in progress ) [2] ITU-T Recommendation Q.933, and Q.922 Specification for Frame Mode Basic call control, ITU Geneva 1995 [3] "MPLS Label Stack Encoding", draft-ietf-mpls-label-encaps-08.txt ( work in progress ) [4] "IEEE 802.3ac-1998" IEEE standard specification. [5] "Transport of Layer 2 Frames Over MPLS", draft-martini- l2circuit-trans-mpls-04.txt. ( work in progress ) [6] ITU Recommendation I.610, "B-ISDN operation and maintenance principles and functions", 1999. [7] "Frame Based ATM over SONET/SDH Transport (FAST)," 2000. [8] "The Point-to-Point Protocol (PPP)", RFC 1661. [note1] FEC element type 128 is pending IANA approval. Martini, et al. [Page 8] Internet Draft draft-martini-l2circuit-encap-mpls-00.txt November 2000 9. Author Information Luca Martini Level 3 Communications, LLC. 1025 Eldorado Blvd. Broomfield, CO, 80021 e-mail: luca@level3.net Nasser El-Aawar Level 3 Communications, LLC. 1025 Eldorado Blvd. Broomfield, CO, 80021 e-mail: nna@level3.net Giles Heron Level 3 Communications 66 Prescot Street London E1 8HG United Kingdom e-mail: giles@level3.net Dimitri Stratton Vlachos Cisco Systems, Inc. 250 Apollo Drive Chelmsford, MA, 01824 e-mail: dvlachos@cisco.com Dan Tappan Cisco Systems, Inc. 250 Apollo Drive Chelmsford, MA, 01824 e-mail: tappan@cisco.com Eric Rosen Cisco Systems, Inc. 250 Apollo Drive Chelmsford, MA, 01824 e-mail: erosen@cisco.com Martini, et al. [Page 9] Internet Draft draft-martini-l2circuit-encap-mpls-00.txt November 2000 Steve Vogelsang Laurel Networks, Inc. 2607 Nicholson Rd. Sewickley, PA 15143 e-mail: sjv@laurelnetworks.com John Shirron Laurel Networks, Inc. 2607 Nicholson Rd. Sewickley, PA 15143 e-mail: jshirron@laurelnetworks.com Andrew G. Malis Vivace Networks, Inc. 2730 Orchard Parkway San Jose, CA 95134 Phone: +1 408 383 7223 Email: Andy.Malis@vivacenetworks.com Martini, et al. [Page 10]