RFC 7726
Clarifying Procedures for Establishing BFD Sessions for MPLS Label Switched Paths (LSPs)
Clarifying Procedures for Establishing BFD Sessions for MPLS Label Switched Paths (LSPs) π
Okay so this is RFC 7726 π, from the Internet Engineering Task Force (IETF). The authors are V. Govindan, K. Rajaraman, G. Mirsky, N. Akiya, and S. Aldrin, from Cisco Systems, Ericsson, Big Switch Networks, and Google. It's a Standards Track doc, dated January 2016, with ISSN 2070-1721 π. It updates RFC 5884 β¨ and doesn't list anything it obsoletes, so it's really just here to clean up 5884's loose ends.
Abstract
This doc clarifies how to set up, maintain, and tear down multiple, concurrent BFD (Bidirectional Forwarding Detection) sessions for a given <MPLS LSP, FEC> as described in RFC 5884 π¦.
Status of This Memo
This is an Internet Standards Track document π.
It's a product of the Internet Engineering Task Force (IETF), so it represents the consensus of the IETF community. It went through public review and was approved for publication by the Internet Engineering Steering Group (IESG) π. For more on Internet Standards, check Section 2 of RFC 5741.
For the current status, any errata, and how to send feedback, go to http://www.rfc-editor.org/info/rfc7726 π§.
Copyright Notice
Copyright (c) 2016 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) as in effect on the date this document was published. Pls read these carefully, bestie, because they spell out your rights and restrictions for this doc. Any Code Components pulled out of this document must include Simplified BSD License text, as described in Section 4.e of the Trust Legal Provisions, and they come without warranty, as described in the Simplified BSD License π.
Table of Contents
1. Background . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Requirements Language . . . . . . . . . . . . . . . . . . 3
2. Theory of Operation . . . . . . . . . . . . . . . . . . . . . 3
2.1. Procedures for Establishment of Multiple BFD Sessions . . 3
2.2. Procedures for Maintenance of Multiple BFD Sessions . . . 4
2.3. Procedures for Removing BFD Sessions at the Egress LSR . 4
2.4. Changing Discriminators for a BFD Session . . . . . . . . 5
3. Backwards Compatibility . . . . . . . . . . . . . . . . . . . 5
4. Security Considerations . . . . . . . . . . . . . . . . . . . 5
5. References . . . . . . . . . . . . . . . . . . . . . . . . . 6
5.1. Normative References . . . . . . . . . . . . . . . . . . 6
5.2. Informative References . . . . . . . . . . . . . . . . . 6
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 6
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 7
1. Background πΈ
Okay, so [RFC5884] defines the procedures to bootstrap and maintain BFD sessions for an <MPLS LSP, FEC> using a Label Switched Path (LSP) ping π₯. Section 4 of [RFC5884] says multiple BFD sessions can be set up for one <MPLS LSP, FEC> tuple, but the procedures to bootstrap and maintain several of them at the same time over one <MPLS LSP, FEC> are not clearly specified π. On top of that, it's unclear how to remove the BFD sessions that were bootstrapped on the egress Label Switching Router (LSR). This document fills in those gaps without going against the principles laid out in [RFC5884] π
.
The ingress LSR being able to set up multiple BFD sessions for an <MPLS LSP, FEC> tuple is super useful in things like LSPs based on Segment Routing [SEG-ROUTING] or LSPs with Equal-Cost Multipath (ECMP) β¨. How the ingress LSR decides how many BFD sessions to bootstrap for an <MPLS LSP, FEC> tuple, and how it builds them, is outside the scope of this document π¦.
1.1. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119] π.
2. Theory of Operation π
2.1. Procedures for Establishment of Multiple BFD Sessions
Section 4 of [RFC5884] lays out how to bootstrap BFD sessions using LSP ping π§. It also says that "a BFD session SHOULD be established for each alternate path that is discovered." This is where the confusion starts, because the procedures for setting up concurrent, multiple sessions were never explicitly spelled out π. The ambiguity is also partly due to the text in Section 7 of [RFC5884], which forbids either end from changing local discriminator values in BFD control packets after the session reaches the UP state π. The following procedures are described to clear up the ambiguity, based on the authors' reading of the referenced sections π«Ά:
At the ingress LSR:
MPLS LSP ping can be used to bootstrap multiple BFD sessions for a given <MPLS LSP, FEC>. Each LSP ping MUST carry a different discriminator value in the BFD discriminator TLV [RFC5884] π.
The egress LSR needs to perform the following:
- If the validation of the Forwarding Equivalence Class (FEC) in the MPLS Echo request message succeeds, check the discriminator specified in the BFD discriminator TLV of the MPLS Echo request. If there is no local session that corresponds to the (remote) discriminator received in the MPLS Echo request, a new session is bootstrapped and a local discriminator is allocated. The validation of a FEC is a necessary condition that has to be satisfied before a new BFD session can be created at the egress LSR. However, the policy or procedure, if any, that the egress LSR applies before allowing a new BFD session to be created is outside the scope of this document. Such policies or procedures could consider availability of system resources before allowing a session to be created. When the egress LSR disallows the creation of a BFD session due to policy, it MUST drop the MPLS Echo request message π.
- Ensure the uniqueness of the
<MPLS LSP, FEC, Remote Discriminator>tuple β¨. - Except for the clarification mentioned above, the remaining procedures of BFD session establishment are as specified in Sections 4-6 of [RFC5884] π.
And that's the end of part 1 of 2! π¦
5.2. Informative References π
Last reference bundle, bestie! This one's informative, so it's more of a "good to read" kind of vibe than a must-read π€
[SEG-ROUTING]
Filsfils, C., Ed., Previdi, S., Ed., Decraene, B.,
Litkowski, S., and R. Shakir, "Segment Routing
Architecture", Work in Progress, draft-ietf-spring-
segment-routing-07, December 2015.
Acknowledgements π
The authors want to give a huge thank you to Marc Binderberger for doing super thorough reviews and dropping valuable suggestions π«Ά
The authors also want to thank Mudigonda Mallik, Rajaguru Veluchamy, and Carlos Pignataro of Cisco Systems for their review comments π
And a big shoutout to Alvaro Retana and Scott Bradner for their review comments too πΈ
Authors' Addresses π¦
Meet the squad who wrote this thing! β¨
Vengada Prasad Govindan
Cisco Systems
Email: venggovi@cisco.com
Kalyani Rajaraman
Cisco Systems
Email: kalyanir@cisco.com
Gregory Mirsky
Ericsson
Email: gregory.mirsky@ericsson.com
Nobo Akiya
Big Switch Networks
Email: nobo.akiya.dev@gmail.com
Sam Aldrin
Google
Email: aldrin.ietf@gmail.com
π¦ where this page comes from
- ietf: rfc7726 2016-01
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms