| < draft-ietf-mpls-bfd-directed-07.txt | draft-ietf-mpls-bfd-directed-08.txt > | |||
|---|---|---|---|---|
| MPLS Working Group G. Mirsky | MPLS Working Group G. Mirsky | |||
| Internet-Draft ZTE | Internet-Draft ZTE | |||
| Intended status: Standards Track J. Tantsura | Intended status: Standards Track J. Tantsura | |||
| Expires: December 15, 2017 Individual | Expires: June 8, 2018 Individual | |||
| I. Varlashkin | I. Varlashkin | |||
| M. Chen | M. Chen | |||
| Huawei | Huawei | |||
| June 13, 2017 | December 5, 2017 | |||
| Bidirectional Forwarding Detection (BFD) Directed Return Path | Bidirectional Forwarding Detection (BFD) Directed Return Path | |||
| draft-ietf-mpls-bfd-directed-07 | draft-ietf-mpls-bfd-directed-08 | |||
| Abstract | Abstract | |||
| Bidirectional Forwarding Detection (BFD) is expected to be able to | Bidirectional Forwarding Detection (BFD) is expected to be able to | |||
| monitor wide variety of encapsulations of paths between systems. | monitor wide variety of encapsulations of paths between systems. | |||
| When a BFD session monitors an explicitly routed unidirectional path | When a BFD session monitors an explicitly routed unidirectional path | |||
| there may be a need to direct egress BFD peer to use a specific path | there may be a need to direct egress BFD peer to use a specific path | |||
| for the reverse direction of the BFD session. | for the reverse direction of the BFD session. | |||
| Status of This Memo | Status of This Memo | |||
| This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
| provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at https://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| This Internet-Draft will expire on December 15, 2017. | This Internet-Draft will expire on June 8, 2018. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2017 IETF Trust and the persons identified as the | Copyright (c) 2017 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info) in effect on the date of | (https://trustee.ietf.org/license-info) in effect on the date of | |||
| publication of this document. Please review these documents | publication of this document. Please review these documents | |||
| carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
| to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
| include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
| the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
| described in the Simplified BSD License. | described in the Simplified BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
| 1.1. Conventions used in this document . . . . . . . . . . . . 3 | 1.1. Conventions used in this document . . . . . . . . . . . . 3 | |||
| 1.1.1. Requirements Language . . . . . . . . . . . . . . . . 3 | 1.1.1. Requirements Language . . . . . . . . . . . . . . . . 3 | |||
| 2. Problem Statement . . . . . . . . . . . . . . . . . . . . . . 3 | 2. Problem Statement . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 3. Control of the Reverse BFD Path . . . . . . . . . . . . . . . 3 | 3. Control of the Reverse BFD Path . . . . . . . . . . . . . . . 3 | |||
| 3.1. BFD Reverse Path TLV . . . . . . . . . . . . . . . . . . 3 | 3.1. BFD Reverse Path TLV . . . . . . . . . . . . . . . . . . 3 | |||
| 3.2. Static and RSVP-TE sub-TLVs . . . . . . . . . . . . . . . 4 | 3.2. Static and RSVP-TE sub-TLVs . . . . . . . . . . . . . . . 5 | |||
| 3.3. Return Codes . . . . . . . . . . . . . . . . . . . . . . 5 | 3.3. Return Codes . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 4. Use Case Scenario . . . . . . . . . . . . . . . . . . . . . . 5 | 4. Use Case Scenario . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 | 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 5.1. BFD Reverse Path TLV . . . . . . . . . . . . . . . . . . 5 | 5.1. BFD Reverse Path TLV . . . . . . . . . . . . . . . . . . 6 | |||
| 5.2. Return Code . . . . . . . . . . . . . . . . . . . . . . . 6 | 5.2. Return Code . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 6. Security Considerations . . . . . . . . . . . . . . . . . . . 6 | 6. Security Considerations . . . . . . . . . . . . . . . . . . . 6 | |||
| 7. Normative References . . . . . . . . . . . . . . . . . . . . 6 | 7. Normative References . . . . . . . . . . . . . . . . . . . . 6 | |||
| Appendix A. Acknowledgments . . . . . . . . . . . . . . . . . . 7 | Appendix A. Acknowledgments . . . . . . . . . . . . . . . . . . 8 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 7 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 | |||
| 1. Introduction | 1. Introduction | |||
| [RFC5880], [RFC5881], and [RFC5883] established the BFD protocol for | [RFC5880], [RFC5881], and [RFC5883] established the BFD protocol for | |||
| IP networks. [RFC5884] and [RFC7726] set rules of using BFD | IP networks. [RFC5884] and [RFC7726] set rules of using BFD | |||
| asynchronous mode over IP/MPLS LSPs. These standards implicitly | asynchronous mode over IP/MPLS LSPs. These standards implicitly | |||
| assume that the egress BFD peer will use the shortest path route | assume that the egress BFD peer will use the shortest path route | |||
| regardless of route being used to send BFD control packets towards | regardless of route being used to send BFD control packets towards | |||
| it. | it. | |||
| skipping to change at page 4, line 10 ¶ | skipping to change at page 4, line 10 ¶ | |||
| included in an Echo Request message as well. If the BFD | included in an Echo Request message as well. If the BFD | |||
| Discriminator TLV is not present when the BFD Reverse Path TLV is | Discriminator TLV is not present when the BFD Reverse Path TLV is | |||
| included, then it MUST be treated as malformed Echo Request, as | included, then it MUST be treated as malformed Echo Request, as | |||
| described in [RFC8029]. | described in [RFC8029]. | |||
| The BFD Reverse Path TLV carries information about the path onto | The BFD Reverse Path TLV carries information about the path onto | |||
| which the egress BFD peer of the BFD session referenced by the BFD | which the egress BFD peer of the BFD session referenced by the BFD | |||
| Discriminator TLV MUST transmit BFD control packets. The format of | Discriminator TLV MUST transmit BFD control packets. The format of | |||
| the BFD Reverse Path TLV is as presented in Figure 1. | the BFD Reverse Path TLV is as presented in Figure 1. | |||
| 0 1 2 3 | 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 | 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | BFD Reverse Path TLV Type | Length | | | BFD Reverse Path TLV Type | Length | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Reverse Path | | | Reverse Path | | |||
| ~ ~ | ~ ~ | |||
| | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Figure 1: BFD Reverse Path TLV | Figure 1: BFD Reverse Path TLV | |||
| BFD Reverse Path TLV Type is 2 octets in length and has a value of | BFD Reverse Path TLV Type is 2 octets in length and has a value of | |||
| TBD1 (to be assigned by IANA as requested in Section 5). | TBD1 (to be assigned by IANA as requested in Section 5). | |||
| Length field is 2 octets long and defines the length in octets of the | Length field is 2 octets long and defines the length in octets of the | |||
| Reverse Path field. | Reverse Path field. | |||
| Reverse Path field contains a sub-TLV. Any Target FEC sub-TLV | Reverse Path field contains a sub-TLV. Any non-multicast Target FEC | |||
| (already defined, or to be defined in the future) for TLV Types 1, | Stack sub-TLV (already defined, or to be defined in the future) for | |||
| 16, and 21 of MPLS LSP Ping Parameters registry MAY be used in this | TLV Types 1, 16, and 21 of MPLS LSP Ping Parameters registry MAY be | |||
| field. None, one or more sub-TLVs MAY be included in the BFD Reverse | used in this field. Multicast Target FEC Stack sub-TLVs, i.e. p2mp | |||
| Path TLV. If none sub-TLVs found in the BFD Reverse Path TLV, the | and mp2mp, SHOULD NOT be included into Reverse Path field. If the | |||
| egress BFD peer MUST revert to using the default, i.e., over IP | egress LSR finds multicast Target Stack sub-TLV it MUST send echo | |||
| network, reverse path. | reply with the received Reverse Path TLV, BFD Discriminator TLV and | |||
| set the Return Code to "Inappropriate Target FEC Stack sub-TLV | ||||
| present" Section 3.3. None, one or more sub-TLVs MAY be included in | ||||
| the BFD Reverse Path TLV. If none sub-TLVs found in the BFD Reverse | ||||
| Path TLV, the egress BFD peer MUST revert to using the local policy | ||||
| based decision as described in Section 7 [RFC5884], i.e., routed over | ||||
| IP network. | ||||
| If the egress LSR cannot find the path specified in the Reverse Path | If the egress LSR cannot find the path specified in the Reverse Path | |||
| TLV it MUST send Echo Reply with the received Reverse Path TLV and | TLV it MUST send Echo Reply with the received BFD Discriminator TLV, | |||
| set the Return Code to "Failed to establish the BFD session. The | Reverse Path TLV and set the Return Code to "Failed to establish the | |||
| specified reverse path was not found" Section 3.3. The egress BFD | BFD session. The specified reverse path was not found" Section 3.3. | |||
| peer MAY establish the BFD session over IP network as defined in | The egress BFD peer MAY establish the BFD session over IP network as | |||
| [RFC5884]. | defined in [RFC5884]. | |||
| 3.2. Static and RSVP-TE sub-TLVs | 3.2. Static and RSVP-TE sub-TLVs | |||
| When an explicit path on an MPLS data plane is set either as Static | When an explicit path on an MPLS data plane is set either as Static | |||
| or RSVP-TE LSP respective sub-TLVs defined in [RFC7110] MAY be used | or RSVP-TE LSP respective sub-TLVs defined in [RFC7110] MAY be used | |||
| to identify the explicit reverse path for the BFD session. | to identify the explicit reverse path for the BFD session. | |||
| 3.3. Return Codes | 3.3. Return Codes | |||
| This document defines the following Return Codes for MPLS LSP Echo | This document defines the following Return Codes for MPLS LSP Echo | |||
| Reply: | Reply: | |||
| o "Inappropriate Target FEC Stack sub-TLV present", (TBD3). When | ||||
| multicast Target FEC Stack sub-TLV found in the received Echo | ||||
| Request by the egress BFD peer, an Echo Reply with the return code | ||||
| set to "Inappropriate Target FEC Stack sub-TLV present" MUST be | ||||
| sent to the ingress BFD peer Section 3.1. | ||||
| o "Failed to establish the BFD session. The specified reverse path | o "Failed to establish the BFD session. The specified reverse path | |||
| was not found", (TBD4). When a specified reverse path is not | was not found", (TBD4). When a specified reverse path is not | |||
| available at the egress BFD peer, an Echo Reply with the return | available at the egress BFD peer, an Echo Reply with the return | |||
| code set to "Failed to establish the BFD session. The specified | code set to "Failed to establish the BFD session. The specified | |||
| reverse path was not found" MUST be sent back to the ingress BFD | reverse path was not found" MUST be sent back to the ingress BFD | |||
| peer Section 3.1. | peer Section 3.1. | |||
| 4. Use Case Scenario | 4. Use Case Scenario | |||
| In the network presented in Figure 2 node A monitors two tunnels to | In the network presented in Figure 2 node A monitors two tunnels to | |||
| skipping to change at page 6, line 5 ¶ | skipping to change at page 6, line 14 ¶ | |||
| 5. IANA Considerations | 5. IANA Considerations | |||
| 5.1. BFD Reverse Path TLV | 5.1. BFD Reverse Path TLV | |||
| The IANA is requested to assign a new value for BFD Reverse Path TLV | The IANA is requested to assign a new value for BFD Reverse Path TLV | |||
| from the "Multiprotocol Label Switching Architecture (MPLS) Label | from the "Multiprotocol Label Switching Architecture (MPLS) Label | |||
| Switched Paths (LSPs) Ping Parameters - TLVs" registry, "TLVs and | Switched Paths (LSPs) Ping Parameters - TLVs" registry, "TLVs and | |||
| sub-TLVs" sub-registry. | sub-TLVs" sub-registry. | |||
| +----------+----------------------+---------------+ | +--------+----------------------+---------------+ | |||
| | Value | Description | Reference | | | Value | Description | Reference | | |||
| +----------+----------------------+---------------+ | +--------+----------------------+---------------+ | |||
| | X (TBD1) | BFD Reverse Path TLV | This document | | | (TBD1) | BFD Reverse Path TLV | This document | | |||
| +----------+----------------------+---------------+ | +--------+----------------------+---------------+ | |||
| Table 1: New BFD Reverse Type TLV | Table 1: New BFD Reverse Type TLV | |||
| 5.2. Return Code | 5.2. Return Code | |||
| The IANA is requested to assign a new Return Code value from the | The IANA is requested to assign a new Return Code value from the | |||
| "Multi-Protocol Label Switching (MPLS) Label Switched Paths (LSPs) | "Multi-Protocol Label Switching (MPLS) Label Switched Paths (LSPs) | |||
| Ping Parameters" registry, "Return Codes" sub-registry, as follows | Ping Parameters" registry, "Return Codes" sub-registry, as follows | |||
| using a Standards Action value. | using a Standards Action value. | |||
| +----------+----------------------------------------+---------------+ | +--------+------------------------------------------+---------------+ | |||
| | Value | Description | Reference | | | Value | Description | Reference | | |||
| +----------+----------------------------------------+---------------+ | +--------+------------------------------------------+---------------+ | |||
| | X (TBD4) | Failed to establish the BFD session. | This document | | | (TBD3) | Inappropriate Target FEC Stack sub-TLV | This document | | |||
| | | The specified reverse path was not | | | | | present. | | | |||
| | | found. | | | | (TBD4) | Failed to establish the BFD session. The | This document | | |||
| +----------+----------------------------------------+---------------+ | | | specified reverse path was not found. | | | |||
| +--------+------------------------------------------+---------------+ | ||||
| Table 2: New Return Code | Table 2: New Return Code | |||
| 6. Security Considerations | 6. Security Considerations | |||
| Security considerations discussed in [RFC5880], [RFC5884], [RFC7726], | Security considerations discussed in [RFC5880], [RFC5884], [RFC7726], | |||
| and [RFC8029], apply to this document. | and [RFC8029], apply to this document. | |||
| 7. Normative References | 7. Normative References | |||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| Requirement Levels", BCP 14, RFC 2119, | Requirement Levels", BCP 14, RFC 2119, | |||
| DOI 10.17487/RFC2119, March 1997, | DOI 10.17487/RFC2119, March 1997, | |||
| <http://www.rfc-editor.org/info/rfc2119>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
| [RFC5586] Bocci, M., Ed., Vigoureux, M., Ed., and S. Bryant, Ed., | [RFC5586] Bocci, M., Ed., Vigoureux, M., Ed., and S. Bryant, Ed., | |||
| "MPLS Generic Associated Channel", RFC 5586, | "MPLS Generic Associated Channel", RFC 5586, | |||
| DOI 10.17487/RFC5586, June 2009, | DOI 10.17487/RFC5586, June 2009, | |||
| <http://www.rfc-editor.org/info/rfc5586>. | <https://www.rfc-editor.org/info/rfc5586>. | |||
| [RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | [RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | |||
| (BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010, | (BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010, | |||
| <http://www.rfc-editor.org/info/rfc5880>. | <https://www.rfc-editor.org/info/rfc5880>. | |||
| [RFC5881] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | [RFC5881] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | |||
| (BFD) for IPv4 and IPv6 (Single Hop)", RFC 5881, | (BFD) for IPv4 and IPv6 (Single Hop)", RFC 5881, | |||
| DOI 10.17487/RFC5881, June 2010, | DOI 10.17487/RFC5881, June 2010, | |||
| <http://www.rfc-editor.org/info/rfc5881>. | <https://www.rfc-editor.org/info/rfc5881>. | |||
| [RFC5883] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | [RFC5883] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | |||
| (BFD) for Multihop Paths", RFC 5883, DOI 10.17487/RFC5883, | (BFD) for Multihop Paths", RFC 5883, DOI 10.17487/RFC5883, | |||
| June 2010, <http://www.rfc-editor.org/info/rfc5883>. | June 2010, <https://www.rfc-editor.org/info/rfc5883>. | |||
| [RFC5884] Aggarwal, R., Kompella, K., Nadeau, T., and G. Swallow, | [RFC5884] Aggarwal, R., Kompella, K., Nadeau, T., and G. Swallow, | |||
| "Bidirectional Forwarding Detection (BFD) for MPLS Label | "Bidirectional Forwarding Detection (BFD) for MPLS Label | |||
| Switched Paths (LSPs)", RFC 5884, DOI 10.17487/RFC5884, | Switched Paths (LSPs)", RFC 5884, DOI 10.17487/RFC5884, | |||
| June 2010, <http://www.rfc-editor.org/info/rfc5884>. | June 2010, <https://www.rfc-editor.org/info/rfc5884>. | |||
| [RFC7110] Chen, M., Cao, W., Ning, S., Jounay, F., and S. Delord, | [RFC7110] Chen, M., Cao, W., Ning, S., Jounay, F., and S. Delord, | |||
| "Return Path Specified Label Switched Path (LSP) Ping", | "Return Path Specified Label Switched Path (LSP) Ping", | |||
| RFC 7110, DOI 10.17487/RFC7110, January 2014, | RFC 7110, DOI 10.17487/RFC7110, January 2014, | |||
| <http://www.rfc-editor.org/info/rfc7110>. | <https://www.rfc-editor.org/info/rfc7110>. | |||
| [RFC7726] Govindan, V., Rajaraman, K., Mirsky, G., Akiya, N., and S. | [RFC7726] Govindan, V., Rajaraman, K., Mirsky, G., Akiya, N., and S. | |||
| Aldrin, "Clarifying Procedures for Establishing BFD | Aldrin, "Clarifying Procedures for Establishing BFD | |||
| Sessions for MPLS Label Switched Paths (LSPs)", RFC 7726, | Sessions for MPLS Label Switched Paths (LSPs)", RFC 7726, | |||
| DOI 10.17487/RFC7726, January 2016, | DOI 10.17487/RFC7726, January 2016, | |||
| <http://www.rfc-editor.org/info/rfc7726>. | <https://www.rfc-editor.org/info/rfc7726>. | |||
| [RFC8029] Kompella, K., Swallow, G., Pignataro, C., Ed., Kumar, N., | [RFC8029] Kompella, K., Swallow, G., Pignataro, C., Ed., Kumar, N., | |||
| Aldrin, S., and M. Chen, "Detecting Multiprotocol Label | Aldrin, S., and M. Chen, "Detecting Multiprotocol Label | |||
| Switched (MPLS) Data-Plane Failures", RFC 8029, | Switched (MPLS) Data-Plane Failures", RFC 8029, | |||
| DOI 10.17487/RFC8029, March 2017, | DOI 10.17487/RFC8029, March 2017, | |||
| <http://www.rfc-editor.org/info/rfc8029>. | <https://www.rfc-editor.org/info/rfc8029>. | |||
| [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | |||
| 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | |||
| May 2017, <http://www.rfc-editor.org/info/rfc8174>. | May 2017, <https://www.rfc-editor.org/info/rfc8174>. | |||
| Appendix A. Acknowledgments | Appendix A. Acknowledgments | |||
| Authors greatly appreciate thorough review and the most helpful | Authors greatly appreciate thorough review and the most helpful | |||
| comments from Eric Gray and Carlos Pignataro. | comments from Eric Gray and Carlos Pignataro. | |||
| Authors' Addresses | Authors' Addresses | |||
| Greg Mirsky | Greg Mirsky | |||
| ZTE | ZTE | |||
| End of changes. 25 change blocks. | ||||
| 54 lines changed or deleted | 67 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||