PWE3 T. Nadeau, Ed. Internet-Draft BT Intended status: Standards Track C. Pignataro, Ed. Expires: May 12, 2008 Cisco Systems, Inc. November 9, 2007 Bi-directional Forwarding Detection (BFD) for the Pseudowire Virtual Circuit Connectivity Verification (VCCV) draft-ietf-pwe3-vccv-bfd-00 Status of this Memo By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she becomes aware will be disclosed, in accordance with Section 6 of BCP 79. 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. This Internet-Draft will expire on May 12, 2008. Copyright Notice Copyright (C) The IETF Trust (2007). Abstract This document describes new Connectivity Verification (CV) types for using Bi-directional Forwarding Detection (BFD) with Virtual Circuit Connectivity Verification (VCCV). VCCV provides a control channel that is associated with a Pseudowire (PW), as well as the corresponding operations and management functions such as connectivity verification to be used over that control channel. Nadeau & Pignataro Expires May 12, 2008 [Page 1] Internet-Draft BFD VCCV November 2007 Table of Contents 1. Specification of Requirements . . . . . . . . . . . . . . . . 3 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 3. Bidirectional Forwarding Detection Connectivity Verification . . . . . . . . . . . . . . . . . . . . . . . . . 3 3.1. BFD CV Type Operation . . . . . . . . . . . . . . . . . . 4 3.2. BFD Encapsulation . . . . . . . . . . . . . . . . . . . . 5 3.3. CV Types for BFD . . . . . . . . . . . . . . . . . . . . . 5 4. Capability Selection . . . . . . . . . . . . . . . . . . . . . 7 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 5.1. MPLS CV Types for the VCCV Interface Parameters Sub-TLV . 7 5.2. PW Associated Channel Type . . . . . . . . . . . . . . . . 8 5.3. L2TPv3 CV Types for the VCCV Capability AVP . . . . . . . 8 6. Congestion Considerations . . . . . . . . . . . . . . . . . . 9 7. Security Considerations . . . . . . . . . . . . . . . . . . . 9 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 9 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 9 9.1. Normative References . . . . . . . . . . . . . . . . . . . 9 9.2. Informative References . . . . . . . . . . . . . . . . . . 10 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 10 Intellectual Property and Copyright Statements . . . . . . . . . . 12 Nadeau & Pignataro Expires May 12, 2008 [Page 2] Internet-Draft BFD VCCV November 2007 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 [RFC2119]. 2. Introduction This document describes new Connectivity Verification (CV) types for using Bi-directional Forwarding Detection (BFD) with Virtual Circuit Connectivity Verification (VCCV). VCCV [I-D.ietf-pwe3-vccv] provides a control channel that is associated with a Pseudowire (PW), as well as the corresponding operations and management functions such as connectivity/fault verification to be used over that control channel. Some BFD CV Types can additionally carry fault status between the endpoints of the Pseudowire. Furthermore, this information can then be translated into the native OAM status codes used by the native access technologies, such as ATM, Frame-Relay or Ethernet. The specific details of such status interworking are out of the scope of this document, and are only noted here to illustrate the utility of BFD over VCCV for such purposes. Those details can be found in [I-D.ietf-pwe3-oam-msg-map]. The new BFD CV Types are PSN-agnostic, and hence applicable for both MPLS and L2TPv3 PSNs. This document concerns itself with the BFD VCCV operation over Single-Segment Pseudowires (SS-PW). 3. Bidirectional Forwarding Detection Connectivity Verification VCCV can support several Connectivity Verification types (CV types) or protocols. This section defines new CV types for use when BFD is used as the VCCV payload. These types apply to both MPLS and L2TPv3 Pseudowire demultiplexors. The CV Type indicator field is defined as a bitmask used to indicate the specific CV type or types (i.e., none, one or more) of VCCV packets that may be sent on the VCCV control channel. The values shown below augment those already defined in [I-D.ietf-pwe3-vccv]. They represent the numerical value corresponding to the actual bit being set in the CV Type bitfield. BFD CV Types: The defined values for the different BFD CV Types for MPLS and L2TPv3 PWs are: Nadeau & Pignataro Expires May 12, 2008 [Page 3] Internet-Draft BFD VCCV November 2007 Bit (Value) Description ============ ========================================== Bit 2 (0x04) - BFD for PW Fault Detection Only. Bit 3 (0x08) - BFD for PW Fault Detection and AC/PW Fault Status Signaling. Bit 4 (0x10) - BFD for PW Fault Detection Only, carrying BFD payload without IP/UDP headers. Bit 5 (0x20) - BFD for PW Fault Detection and AC/PW Fault Status Signaling, carrying BFD payload without IP/UDP headers. It should be noted that two pairs of BFD CV Types have been defined, see Section 3.3. 3.1. BFD CV Type Operation When heart-beat indication is necessary for one or more PWs, the Bidirectional Forwarding Detection (BFD) [I-D.ietf-bfd-base] provides a means of continuous monitoring of the PW data path and propagation of forward and reverse defect indications. In order to use BFD, both ends of the PW connection must have signaled the existence of a control channel and the ability to run BFD on it (see Section 3.3 and Section 4). Once a node has both signaled and received signaling from its peer of these capabilities, it begins sending BFD control packets. The packets are sent on the VCCV control channel. The use of the control channel provides the context required to bind and bootstrap the BFD session; the Pseudowire demultiplexer field (e.g., MPLS PW Label or L2TPv3 Session ID) provides the context to demultiplex the first BFD control packet, and thus single-hop BFD initialization procedures are followed (see Section 3 of [I-D.ietf-bfd-v4v6-1hop]). BFD MUST be run in asynchronous mode (see [I-D.ietf-bfd-base]). When the downstream PE (D-PE) does not receive control messages from its upstream peer PE (U-PE) during a certain number of transmission intervals (a number provisioned by the operator), D-PE declares that the PW in its receive direction is down. In other words, D-PE enters the "forward defect" state for this PW. D-PE then sends a message to U-PE with H=0 (i.e., "I do not hear you") and with Diagnostic code 1. In turn, U-PE declares the PW is down in its transmit direction and it uses Diagnostic code 3 in its control messages to D-PE. U-PE enters the "reverse defect" state for this PW. How it further processes this error condition, and conveys this status the attachment circuits is out of the scope of this specification, and is instead defined in [I-D.ietf-pwe3-oam-msg-map]. The VCCV message comprises a BFD packet [I-D.ietf-bfd-base] Nadeau & Pignataro Expires May 12, 2008 [Page 4] Internet-Draft BFD VCCV November 2007 encapsulated as specified by the CV Type (see Section 3.2). 3.2. BFD Encapsulation This document defines two pairs of BFD CV Types (see Section 3) which specify two ways in which a BFD connectivity verification packet may be encapsulated over the VCCV control channel. Table 1 in Section 3.3 summarizes the BFD CV Types. When the BFD CV Type used is either 0x04 or 0x08, the VCCV encapsulation of BFD includes the IP/UDP headers as defined in Section 4 of [I-D.ietf-bfd-v4v6-1hop]. The IP Protocol Number and UDP Port numbers discriminate among the possible VCCV payloads (i.e., differentiate among ICMP Ping and LSP Ping defined in [I-D.ietf-pwe3-vccv] and BFD). However, when BFD CV Types of 0x10 or 0x20 are employed, the IP/UDP headers are omitted from the BFD encapsulation. Therefore, these BFD CV Types can only be used when the Pseudowire utilizes a Control Word (CW) or Layer-2 Specific Sublayer (L2SS) that can take the PW Associated Channel Header (PW-ACH) Control Word format. The PW Associated Channel (PW-AC) is defined in Section 5 of [RFC4385], and its Channel Type field is used as a payload type identifier to discriminate the VCCV payload types. The usage of the PW-AC for VCCV is specified in Sections 5.1.1, 5.1.2 and 5.1.3 of [I-D.ietf-pwe3-vccv]. When VCCV carries raw BFD, the Pseudowire CW's or L2SS' Channel Type MUST be set to 0x0007 to indicate "BFD Without IP/UDP Headers" (see Section 5.2), to allow the identification of the encased BFD payload when demultiplexing the control channel. In summary, if a PW Associated Channel Header is used, the Channel Type can indicate IPv4 (0x0021) or IPv6 (0x0057) for CV Types 0x04 and 0x08, or BFD without IP/UDP headers (0x0007) for CV Types 0x10 and 0x20. 3.3. CV Types for BFD Two distinctive pairs of CV Types are defined for BFD. Table 1 summarizes the BFD CV Types, grouping them by encapsulation (i.e., with and without IP/UDP headers) and by functionality (i.e., fault detection only, or fault detection and status signaling). Nadeau & Pignataro Expires May 12, 2008 [Page 5] Internet-Draft BFD VCCV November 2007 +---------------------+-----------------+---------------------------+ | | Fault Detection | Fault Detection and | | | Only | Status Signaling | +---------------------+-----------------+---------------------------+ | BFD with IP/UDP | 0x04 | 0x08 | | Headers | | | | | | | | BFD without IP/UDP | 0x10 | 0x20 | | Headers | | | +---------------------+-----------------+---------------------------+ Table 1: Bitmask Values for BFD CV Types Given the bidirectional nature of BFD, before selecting a given BFD CV Type capability to be used, there MUST be a match in the given CV Type capability advertised and received. That is, only BFD CV Types that were both advertised and received are available to be selected. Additionally, only one BFD CV Type can be used (selecting a BFD CV Type excludes all the remaining BFD CV Types). The following list enumerates restrictions and their corollaries on the usage of BFD CV Types: 1. CV Types 0x08 and 0x20, SHOULD NOT be used when a control protocol such as LDP [RFC4447] or L2TPV3 [RFC3931] is available that can signal the AC/PW status to the remote endpoint of the PW. A. In the case of CV Type 0x08 or 0x20, the AC and PW status is conveyed via BFD status codes as specified in [I-D.ietf-pwe3-oam-msg-map]. 2. Similarly, CV Types 0x04 and 0x10 SHOULD NOT be used when there is no control protocol available to signal the AC/PW status. A. In the case of type 0x04 or 0x10, BFD is used exclusively to detect faults on the PW and the status of those faults are to be conveyed using some means other than BFD, such as using LDP status messages when using MPLS as a transport (see Section 5.4 of [RFC4447]), or the Circuit Status AVP in an L2TPv3 SLI message for L2TPv3 (see Section 5.4.5 of [RFC3931]). 3. Only a single BFD CV Type can be seleced and used. Nadeau & Pignataro Expires May 12, 2008 [Page 6] Internet-Draft BFD VCCV November 2007 4. Capability Selection The precedence rules for selection of various CC and CV types is clearly outlined in Section 7 of [I-D.ietf-pwe3-vccv]. This section augments these rules when the BFD CV types defined herein are supported. The selection of a specific BFD CV Type to use out of the four available CV Types defined is tied to multiple factors, as detained in Section 3.3. Given that BFD is bidirectional in nature, only CV Types that are both received and sent in VCCV capability signaling advertisement can be selected. As already enumerated, when a control protocol that can signal the AC/PW status is not available, CV Types CV Types 0x04 and 0x10 (i.e., for Fault Detection only) SHOULD NOT be used. When a control protocol that can signal the AC/PW status (such as LDP [RFC4447] or L2TPv3 [RFC3931]) is available, CV Types 0x08 and 0x20 (i.e., for Fault Detection and Status Signaling) SHOULD NOT be used. All BFD CV Types are mutually exclusive with the rest, selecting a BFD CV Type prevents the use of any of the other three BFD CV Types. Finally, only Pseudowires that use a CW or L2SS using the PW Associated Channel Header support the use of BFD CV Types 0x10 or 0x20 (i.e., encapsulation of BFD without IP/UDP headers), and consequently the their concurrent use along with another CV Type that uses an encapsulation with IP headers (e.g., ICMP Ping or LSP Ping). PWs that use a PW-ACH include CC Type 1 (for both MPLS and L2TPv3 as defined in Sections 5.1.1 and 6.1 of [I-D.ietf-pwe3-vccv]), and MPLS CC Types 2 and 3 when using a Control Word (as specified in Sections 5.1.2 and 5.1.3 of [I-D.ietf-pwe3-vccv]). This restriction stems from the fact that the PW-ACH contains a Protocol Identification (PID) field, the Channel Type. 5. IANA Considerations 5.1. MPLS CV Types for the VCCV Interface Parameters Sub-TLV The VCCV Interface Parameters Sub-TLV codepoint is defined in [RFC4446], and the VCCV CV Types registry is defined in [I-D.ietf-pwe3-vccv]. This section lists the new BFD CV Types. IANA is requested to augment the "VCCV Connectivity Verification Types" registry in the Pseudo Wires Name Spaces, reachable from [IANA.pwe3-parameters]. These are bitfield values. CV Type values 0x04 0x08, 0x10 and 0x20 are specified in Section 3. Nadeau & Pignataro Expires May 12, 2008 [Page 7] Internet-Draft BFD VCCV November 2007 MPLS Connectivity Verification (CV) Types: Bit (Value) Description ============ ========================================== Bit 2 (0x04) - BFD for PW Fault Detection Only. Bit 3 (0x08) - BFD for PW Fault Detection and AC/PW Fault Status Signaling. Bit 4 (0x10) - BFD for PW Fault Detection Only, carrying BFD payload without IP/UDP headers. Bit 5 (0x20) - BFD for PW Fault Detection and AC/PW Fault Status Signaling, carrying BFD payload without IP/UDP headers. 5.2. PW Associated Channel Type The PW Associated Channel Types used by VCCV rely on previously allocated numbers from the Pseudowire Associated Channel Types Registry [RFC4385] in the Pseudo Wires Name Spaces reachable from [IANA.pwe3-parameters]. In particular, 0x21 (Internet Protocol version 4) is used whenever an IPv4 payload follows the Pseudowire Associated Channel Header, or 0x57 is used when an IPv6 payload follows the Pseudowire Associated Channel Header. In cases where raw BFD follows the Pseudowire Associated Channel as specified in Section 3.2 (i.e., when the IP/UDP encapsulation as specified in [I-D.ietf-bfd-v4v6-1hop] is be present), a new Pseudowire Associated Channel Types Registry [RFC4385] entry of 0x07 is used. IANA is requested to reserve a new Pseudowire Associated Channel Type value as follows: Value (in hex) Protocol Name Reference -------------- ------------------------------- --------- 0x0007 BFD Without IP/UDP Headers [This document] 5.3. L2TPv3 CV Types for the VCCV Capability AVP This section lists the new BFD CV Types to be added to the existing "VCCV Capability AVP" registry in the L2TP name spaces. The Layer Two Tunneling Protocol "L2TP" Name Spaces are reachable from [IANA.l2tp-parameters]. IANA is requested to reserve the following L2TPv3 Connectivity Verification (CV) Types in the VCCV Capability AVP Values registry. Nadeau & Pignataro Expires May 12, 2008 [Page 8] Internet-Draft BFD VCCV November 2007 VCCV Capability AVP (Attribute Type AVP-TBD) Values --------------------------------------------------- L2TPv3 Connectivity Verification (CV) Types: Bit (Value) Description ============ ========================================== Bit 2 (0x04) - BFD for PW Fault Detection Only. Bit 3 (0x08) - BFD for PW Fault Detection and AC/PW Fault Status Signaling. Bit 4 (0x10) - BFD for PW Fault Detection Only, carrying BFD payload without IP/UDP headers. Bit 5 (0x20) - BFD for PW Fault Detection and AC/PW Fault Status Signaling, carrying BFD payload without IP/UDP headers. 6. Congestion Considerations The congestion considerations that apply to [I-D.ietf-pwe3-vccv] apply to this mode of operation as well. 7. Security Considerations Routers that implement the additional CV Types defined herein are subject to the same security considerations as defined in [I-D.ietf-pwe3-vccv], [I-D.ietf-bfd-base], and [I-D.ietf-bfd-v4v6-1hop]. 8. Acknowledgements This work forks from a previous revision of the PWE3 WG document [I-D.ietf-pwe3-vccv], to which a number of people contributed, including Rahul Aggarwal, Peter B. Busschbach, Yuichi Ikejiri, Kenji Kumaki, Luca Martini, Monique Morrow, George Swallow, and others. 9. References 9.1. Normative References [I-D.ietf-bfd-base] Katz, D. and D. Ward, "Bidirectional Forwarding Detection", draft-ietf-bfd-base-06 (work in progress), March 2007. Nadeau & Pignataro Expires May 12, 2008 [Page 9] Internet-Draft BFD VCCV November 2007 [I-D.ietf-bfd-v4v6-1hop] Katz, D. and D. Ward, "BFD for IPv4 and IPv6 (Single Hop)", draft-ietf-bfd-v4v6-1hop-06 (work in progress), March 2007. [I-D.ietf-pwe3-vccv] Nadeau, T. and C. Pignataro, "Pseudowire Virtual Circuit Connectivity Verification (VCCV) A Control Channel for Pseudowires", draft-ietf-pwe3-vccv-15 (work in progress), September 2007. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC4385] Bryant, S., Swallow, G., Martini, L., and D. McPherson, "Pseudowire Emulation Edge-to-Edge (PWE3) Control Word for Use over an MPLS PSN", RFC 4385, February 2006. 9.2. Informative References [I-D.ietf-pwe3-oam-msg-map] Nadeau, T., "Pseudo Wire (PW) OAM Message Mapping", draft-ietf-pwe3-oam-msg-map-05 (work in progress), March 2007. [IANA.l2tp-parameters] Internet Assigned Numbers Authority, "Layer Two Tunneling Protocol "L2TP"", April 2007, . [IANA.pwe3-parameters] Internet Assigned Numbers Authority, "Pseudo Wires Name Spaces", June 2007, . [RFC3931] Lau, J., Townsley, M., and I. Goyret, "Layer Two Tunneling Protocol - Version 3 (L2TPv3)", RFC 3931, March 2005. [RFC4446] Martini, L., "IANA Allocations for Pseudowire Edge to Edge Emulation (PWE3)", BCP 116, RFC 4446, April 2006. [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. Nadeau & Pignataro Expires May 12, 2008 [Page 10] Internet-Draft BFD VCCV November 2007 Authors' Addresses Thomas D. Nadeau (editor) BT BT Centre 81 Newgate Street London, EC1A 7AJ United Kingdom Email: thomas.nadeau@bt.com Carlos Pignataro (editor) Cisco Systems, Inc. 7200 Kit Creek Road PO Box 14987 Research Triangle Park, NC 27709 USA Email: cpignata@cisco.com Nadeau & Pignataro Expires May 12, 2008 [Page 11] Internet-Draft BFD VCCV November 2007 Full Copyright Statement Copyright (C) The IETF Trust (2007). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Intellectual Property The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79. Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org. Acknowledgment Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA). Nadeau & Pignataro Expires May 12, 2008 [Page 12]