Network Working Group L. Jin Internet-Draft R. Chen Intended status: Standards Track ZTE Expires: April 12, 2013 S. Boutros Cisco Systems S. Kini Ericsson October 9, 2012 Static pseudowire configuration checking using Generic Associated Channel (G-ACh) Advertisement Protocol draft-jc-pwe3-static-config-check-01.txt Abstract This document defines a method to verify the configuration parameters of static pseudowires (PW). Since a static PW can be independently provisioned at each end of the PW there is a potential for a configuration parameter mismatch and this can result in the PW not being operational. This document introduces a configuration checking protocol to simplify the provisioning and ease trouble shooting. Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. 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." This Internet-Draft will expire on April 12, 2013. Copyright Notice Copyright (c) 2012 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of Jin, et al. Expires April 12, 2013 [Page 1] Internet-Draft draft-jc-pwe3-static-config-check-00 October 2012 publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 3. GAP Extensions . . . . . . . . . . . . . . . . . . . . . . . . 4 3.1. Static PW Application Message . . . . . . . . . . . . . . 4 3.2. PE Procedure for SS-PW . . . . . . . . . . . . . . . . . . 7 3.2.1. Sending PW application Element TLV . . . . . . . . . . 7 3.2.2. Receiving PW application Element TLV . . . . . . . . . 7 3.2.3. PW Configuration Verification Process . . . . . . . . 8 3.2.4. Remote Label Advertisement . . . . . . . . . . . . . . 8 3.3. PE Procedure for MS-PW . . . . . . . . . . . . . . . . . . 8 4. Security Considerations . . . . . . . . . . . . . . . . . . . 9 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 9 7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 9 7.1. Normative references . . . . . . . . . . . . . . . . . . . 9 7.2. Informative References . . . . . . . . . . . . . . . . . . 10 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 10 Jin, et al. Expires April 12, 2013 [Page 2] Internet-Draft draft-jc-pwe3-static-config-check-00 October 2012 1. Introduction The manual configuration of static PW in MPLS and MPLS-TP network requires configuring different PW parameters at the two terminating PEs (Provider Edge). The PW parameters include PW-id, PW-Type, Control word setting, interface and VCCV parameters settings. The PW provisioned parameters MUST be aligned, so as to make the PW operational. For dynamically signaled PW, the PW parameters are negotiated using the signaling protocol, and only when the PW parameters match at the terminating PE end points, the P2P (Point-to- Point) PW is made operational and can be used to forward data traffic. In the absence of a signaling protocol, this draft defines a method to do static PW configuration verification, so as to ease the troubleshooting of end to end static PW provisioning in both MPLS and MPLS-TP networks. The mechanism to exchange the PW configuration parameters uses the Generic Associated Channel (G-ACh) Advertisement Protocol (GAP) defined in [I-D.ietf-mpls-gach-adv]. In this draft, the GAP functionality assumes that the PW's underlying PSN Tunnel with GAP enabled is operational. In the following sections we will describe the extension to the GAP mechanism to do the PW configuration verification at the two terminating PEs for P2P PW. The P2MP (Point-to-Multipoint) PW configuration verification is for further study. 2. Terminology 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 [RFC2119]. This document uses some terms and acronyms as follows: MPLS: Multi Protocol Label Switching. OAM: MPLS Operations, Administration and Maintenance. PE: Provide Edge Node. T-PE: PW Terminating Provider Edge. S-PE: PW Switching Provider Edge. Jin, et al. Expires April 12, 2013 [Page 3] Internet-Draft draft-jc-pwe3-static-config-check-00 October 2012 PW: PseudoWire. TLV: Type, Length, and Value. SS-PW: Single-segment PseudoWire MS-PW: Multi-segment PseudoWire 3. GAP Extensions 3.1. Static PW Application Message 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Static PW | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Lifetime | Reserve | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + Static PW FEC Element TLV + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 1 A new GAP application "Static PW" is defined in this draft. The Static PW Application ID is to be assigned by IANA, and suggested value is 0x0002. Length: as per [I-D.ietf-mpls-gach-adv]. Lifetime: as per [I-D.ietf-mpls-gach-adv], and the default value is suggested to be 120 seconds. Static PW FEC Element TLV for "Static PW" GAP application: Jin, et al. Expires April 12, 2013 [Page 4] Internet-Draft draft-jc-pwe3-static-config-check-00 October 2012 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Reserved | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source Global ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source Node ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source AC-ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Destination Global ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Destination Node ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Destination AC-ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | PW Type |C| Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TX Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RX Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |0|0| Label Sub-TLV(0x0200) | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Incoming Label | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |0|0| Label Sub-TLV(0x0200) | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Outgoing Label | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + Optional Interface Parameters Sub-TLV + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 2 The Static PW FEC Element TLV type is to be assigned by IANA. The Length field specifies the length in octets of the Static PW FEC Element and all Optional Interface Parameters Sub-TLVs. The Static PW FEC element TLV value MUST include the following: o The Global ID and Node ID fields MUST be set as per [RFC6370]. Jin, et al. Expires April 12, 2013 [Page 5] Internet-Draft draft-jc-pwe3-static-config-check-00 October 2012 o The AC-ID fields MUST be set as per [RFC5003]. o PW-Type and control word bit (C) MUST be set as per [RFC4447]. o TX Sequence Number: The transmitted message sequence number for the associated Static PW FEC Element TLV. o RX Sequence Number: The last received sequence number for the associated Static PW FEC Element TLV. o Two Generic Label TLVs as defined in [RFC5036] to encode static PW incoming and outgoing labels in the order shown above. o Optional Interface parameters Sub-TLV as defined in [RFC4447]. The GAP Suppress message defined in [I-D.ietf-mpls-gach-adv] only applies all TLVs for a given application. We define a new TLV, static PW suppress TLV, to suppress static PW FEC element transmission. Multiple static PW FEC element TLVs could be included in this TLV. The format would be 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |PW Suppress TLV| Reserved | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + Static PW FEC Element + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Multiple Static PW FEC Element TLVs ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 3 The type of static PW suppress TLV is to be assigned by IANA. The static PW suppress TLV could be sent by a receiving PE to request a transmitting PE to stop sending GAP messages for the static PW FEC Element TLVs in the static PW suppress TLV. The static PW application MUST follow all procedures defined in [I-D.ietf-mpls-gach-adv]. Jin, et al. Expires April 12, 2013 [Page 6] Internet-Draft draft-jc-pwe3-static-config-check-00 October 2012 3.2. PE Procedure for SS-PW The mechanism defined in this draft provides a verification tool for the P2P PW configuration information between two PEs. Upon the provisioning or re-provisioning of a PW at an endpoint PE, GAP messages carrying the static PW application TLV will be sent over the PW's corresponding PSN tunnel which the endpoints PEs of the P2P PW selects by local policy. 3.2.1. Sending PW application Element TLV When a PW is configured at one endpoint PE, and the PW corresponding PSN Tunnel is operational and UP, the PE MUST send its local PW configuration information using the GAP over the PSN tunnel. The transmitting PE MUST set the TX sequence number to a non-zero value in Static PW FEC Element TLV, and MUST increment the TX sequence number each time any local PW parameters change. If the transmitting PE has previously received a GAP message with the static PW FEC Element, the transmitting PE MUST verify local PW parameters with the remote PE parameters as specified in section 4.2.3. The RX sequence number MUST be set to the previously received TX sequence number, otherwise set to zero. 3.2.2. Receiving PW application Element TLV The receiving PE MUST update the remote PW parameters associated with a static PW FEC Element TLV, when the received TX sequence number in the GAP message is different from the last one received. If the receiving PE has been provisioned locally with the PW parameters and has previously sent GAP message for the PW parameters, it MUST check if the RX sequence number in the received GAP message is equal to the TX sequence number it previously sent. If the RX sequence number is equal, the receiving PE MUST send GAP message with static PW suppress TLV as a response to remote PE, and then verify local static PW parameters with the remote static PW FEC parameters as specified in section 3.2.3. Otherwise, if the RX sequence number is not equal, the receiving PE MUST continue sending GAP message with static PW FEC element TLV, with the RX sequence number set to the last received TX sequence number from the remote PE. If there is no local PW configuration associated with the static PW FEC Element TLV, the receiving PE MUST retain the remote static PW Jin, et al. Expires April 12, 2013 [Page 7] Internet-Draft draft-jc-pwe3-static-config-check-00 October 2012 FEC Element information. Whenever PE receives the GAP message with static PW suppress TLV, it MUST stop sending GAP messages with the specified static PW FEC element TLVs included in the static suppress TLV. The GAP message of static PW application SHOULD be sent at least three times within lifetime. The mechanism described above applies as well for MS-PW. 3.2.3. PW Configuration Verification Process Using source/destination Global-IDs, and source/destination node-ID and AC-IDs, to identify a locally provisioned static PW, once found, perform the following parameter verification checks: 1. Check the control word bit (C), and MUST do logical operation "AND". Only when both ends have the use of control word enabled, the result would be with control word presented on this PW. 2. Check PW type mismatch as defined in [RFC4447]. 3. Check and negotiate interface parameters as defined in [RFC4447]. 4. Check incoming and outgoing static PW labels. The local incoming label should be equal to remote outgoing label, and the local outgoing label should be equal to remote incoming label, otherwise checking failed. 3.2.4. Remote Label Advertisement The mechanism described in this draft MAY also be used to communicate local static PW labels to allow for single side provisioning of labels. As such, only incoming label will be included in the GAP message and this label will be used by the remote PE as the output label for the PW. 3.3. PE Procedure for MS-PW The mechanism described above for verifying the SS-PW configuration applies for MS-PW. As described in section 3.2, an S-PE MUST verify the incoming and outgoing static PW labels, however no other PW configuration parameters checking are needed at S-PE, since only the labels will be configured at S-PE. An S-PE MUST pass through static PW application TLVs carried in GAP messages, from one PW segment's corresponding PSN tunnel to the other Jin, et al. Expires April 12, 2013 [Page 8] Internet-Draft draft-jc-pwe3-static-config-check-00 October 2012 PW segment's corresponding PSN tunnel. 4. Security Considerations The mechanisms defined in this draft do not introduce any new threats more than what's described in [I-D.ietf-mpls-gach-adv]. 5. IANA Considerations IANA is requested to allocate a new "Static PW" Application ID in the "G-Ach Advertisement Protocol Applications" registry. Application ID Description Reference -------------- ---------------------------- ------------ (TBD) Static PW Application (this draft) This document requests that IANA create a new registry, "GAP Static PW Application: TLV objects", with fields and initial value as follows: Type Name Type ID Reference ----------------------- ------- ------------ Static PW FEC Element 0 (this draft) Static PW suppress TLV 1 (this draft) The range of the Type ID field is 0 - 255. The allocation policy for this registry is IETF Review. 6. Acknowledgements The authors would like to thank Stewart Bryant, Dan Frost for their review and contributions. 7. References 7.1. Normative references [I-D.ietf-mpls-gach-adv] Frost, D., Bryant, S., and M. Bocci, "MPLS Generic Associated Channel (G-ACh) Advertisement Protocol", draft-ietf-mpls-gach-adv-02 (work in progress), May 2012. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. Jin, et al. Expires April 12, 2013 [Page 9] Internet-Draft draft-jc-pwe3-static-config-check-00 October 2012 7.2. Informative References [RFC4447] Martini, L., Rosen, E., El-Aawar, N., Smith, T., and G. Heron, "Pseudowire Setup and Maintenance Using the Label Distribution Protocol (LDP)", RFC 4447, April 2006. [RFC5003] Metz, C., Martini, L., Balus, F., and J. Sugimoto, "Attachment Individual Identifier (AII) Types for Aggregation", RFC 5003, September 2007. [RFC5036] Andersson, L., Minei, I., and B. Thomas, "LDP Specification", RFC 5036, October 2007. [RFC6370] Bocci, M., Swallow, G., and E. Gray, "MPLS Transport Profile (MPLS-TP) Identifiers", RFC 6370, September 2011. Authors' Addresses Lizhong Jin ZTE Corporation 889, Bibo Road Shanghai, 201203, China Email: lizhong.jin@zte.com.cn Ran Chen ZTE Corporation No.19 East Huayuan Road Beijing, 100191, China Email: chen.ran@zte.com.cn Sami Boutros Cisco Systems, Inc. 3750 Cisco Way San Jose, California 95134 USA Email: sboutros@cisco.com Jin, et al. Expires April 12, 2013 [Page 10] Internet-Draft draft-jc-pwe3-static-config-check-00 October 2012 Sriganesh Kini Ericsson Ericsson San Jose, CA 95134 Email: sriganesh.kini@ericsson.com Jin, et al. Expires April 12, 2013 [Page 11]