draft-ietf-bfd-seamless-base-07.txt   draft-ietf-bfd-seamless-base-08.txt 
Internet Engineering Task Force N. Akiya Internet Engineering Task Force N. Akiya
Internet-Draft Big Switch Networks Internet-Draft Big Switch Networks
Updates: 5880 (if approved) C. Pignataro Updates: 5880 (if approved) C. Pignataro
Intended status: Standards Track D. Ward Intended status: Standards Track D. Ward
Expires: August 12, 2016 Cisco Systems Expires: August 26, 2016 Cisco Systems
M. Bhatia M. Bhatia
Ionos Networks Ionos Networks
S. Pallagatti S. Pallagatti
February 9, 2016 February 23, 2016
Seamless Bidirectional Forwarding Detection (S-BFD) Seamless Bidirectional Forwarding Detection (S-BFD)
draft-ietf-bfd-seamless-base-07 draft-ietf-bfd-seamless-base-08
Abstract Abstract
This document defines a simplified mechanism to use Bidirectional This document defines a simplified mechanism to use Bidirectional
Forwarding Detection (BFD) with large portions of negotiation aspects Forwarding Detection (BFD) with large portions of negotiation aspects
eliminated, thus providing benefits such as quick provisioning as eliminated, thus providing benefits such as quick provisioning as
well as improved control and flexibility to network nodes initiating well as improved control and flexibility to network nodes initiating
the path monitoring. the path monitoring.
This document updates RFC5880. This document updates RFC5880.
skipping to change at page 1, line 47 skipping to change at page 1, line 47
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 http://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 August 12, 2016. This Internet-Draft will expire on August 26, 2016.
Copyright Notice Copyright Notice
Copyright (c) 2016 IETF Trust and the persons identified as the Copyright (c) 2016 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 (http://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
skipping to change at page 2, line 27 skipping to change at page 2, line 27
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 . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Seamless BFD Overview . . . . . . . . . . . . . . . . . . . . 5 3. Seamless BFD Overview . . . . . . . . . . . . . . . . . . . . 5
4. S-BFD Discriminators . . . . . . . . . . . . . . . . . . . . 6 4. S-BFD Discriminators . . . . . . . . . . . . . . . . . . . . 6
4.1. S-BFD Discriminator Uniqueness . . . . . . . . . . . . . 6 4.1. S-BFD Discriminator Uniqueness . . . . . . . . . . . . . 6
4.2. Discriminator Pools . . . . . . . . . . . . . . . . . . . 6 4.2. Discriminator Pools . . . . . . . . . . . . . . . . . . . 7
5. Reflector BFD Session . . . . . . . . . . . . . . . . . . . . 7 5. Reflector BFD Session . . . . . . . . . . . . . . . . . . . . 7
6. State Variables . . . . . . . . . . . . . . . . . . . . . . . 7 6. State Variables . . . . . . . . . . . . . . . . . . . . . . . 8
6.1. New State Variables . . . . . . . . . . . . . . . . . . . 7 6.1. New State Variables . . . . . . . . . . . . . . . . . . . 8
6.2. State Variable Initialization and Maintenance . . . . . . 8 6.2. State Variable Initialization and Maintenance . . . . . . 8
7. S-BFD Procedures . . . . . . . . . . . . . . . . . . . . . . 8 7. S-BFD Procedures . . . . . . . . . . . . . . . . . . . . . . 9
7.1. Demultiplexing of S-BFD Control Packet . . . . . . . . . 8 7.1. Demultiplexing of S-BFD Control Packet . . . . . . . . . 9
7.2. Responder Procedures . . . . . . . . . . . . . . . . . . 9 7.2. Responder Procedures . . . . . . . . . . . . . . . . . . 10
7.2.1. Responder Demultiplexing . . . . . . . . . . . . . . 9 7.2.1. Responder Demultiplexing . . . . . . . . . . . . . . 10
7.2.2. Transmission of S-BFD Control Packet by SBFDReflector 10 7.2.2. Transmission of S-BFD Control Packet by SBFDReflector 10
7.2.3. Additional SBFDReflector Behaviors . . . . . . . . . 11 7.2.3. Additional SBFDReflector Behaviors . . . . . . . . . 11
7.3. Initiator Procedures . . . . . . . . . . . . . . . . . . 11 7.3. Initiator Procedures . . . . . . . . . . . . . . . . . . 12
7.3.1. SBFDInitiator State Machine . . . . . . . . . . . . . 12 7.3.1. SBFDInitiator State Machine . . . . . . . . . . . . . 13
7.3.2. Transmission of S-BFD Control Packet by SBFDInitiator 13 7.3.2. Transmission of S-BFD Control Packet by SBFDInitiator 13
7.3.3. Additional SBFDInitiator Behaviors . . . . . . . . . 13 7.3.3. Additional SBFDInitiator Behaviors . . . . . . . . . 14
7.4. Diagnostic Values . . . . . . . . . . . . . . . . . . . . 14 7.4. Diagnostic Values . . . . . . . . . . . . . . . . . . . . 14
7.5. The Poll Sequence . . . . . . . . . . . . . . . . . . . . 14 7.5. The Poll Sequence . . . . . . . . . . . . . . . . . . . . 15
8. Scaling Aspect . . . . . . . . . . . . . . . . . . . . . . . 14 8. Operational Considerations . . . . . . . . . . . . . . . . . 15
9. Co-existence with Classical BFD Sessions . . . . . . . . . . 14 8.1. Scaling Aspect . . . . . . . . . . . . . . . . . . . . . 15
10. S-BFD Echo Function . . . . . . . . . . . . . . . . . . . . . 15 8.2. Congestion Considerations . . . . . . . . . . . . . . . . 15
11. Security Considerations . . . . . . . . . . . . . . . . . . . 15 9. Co-existence with Classical BFD Sessions . . . . . . . . . . 16
12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16 10. S-BFD Echo Function . . . . . . . . . . . . . . . . . . . . . 16
13. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 16 11. Security Considerations . . . . . . . . . . . . . . . . . . . 17
14. Contributing Authors . . . . . . . . . . . . . . . . . . . . 17 12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 18
15. References . . . . . . . . . . . . . . . . . . . . . . . . . 17 13. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 18
15.1. Normative References . . . . . . . . . . . . . . . . . . 17 14. Contributing Authors . . . . . . . . . . . . . . . . . . . . 18
15.2. Informative References . . . . . . . . . . . . . . . . . 17 15. References . . . . . . . . . . . . . . . . . . . . . . . . . 18
Appendix A. Loop Problem . . . . . . . . . . . . . . . . . . . . 18 15.1. Normative References . . . . . . . . . . . . . . . . . . 18
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 19 15.2. Informative References . . . . . . . . . . . . . . . . . 19
Appendix A. Loop Problem . . . . . . . . . . . . . . . . . . . . 19
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 20
1. Introduction 1. Introduction
Bidirectional Forwarding Detection (BFD), [RFC5880] and related Bidirectional Forwarding Detection (BFD), [RFC5880] and related
documents, has efficiently generalized the failure detection documents, has efficiently generalized the failure detection
mechanism for multiple protocols and applications. There are some mechanism for multiple protocols and applications. There are some
improvements which can be made to better fit existing technologies. improvements which can be made to better fit existing technologies.
There is a possibility of evolving BFD to better fit new There is a possibility of evolving BFD to better fit new
technologies. This document focuses on several aspects of BFD in technologies. This document focuses on several aspects of BFD in
order to further improve efficiency, to expand failure detection order to further improve efficiency, to expand failure detection
skipping to change at page 8, line 5 skipping to change at page 8, line 33
6. State Variables 6. State Variables
S-BFD introduces new state variables, and modifies the usage of S-BFD introduces new state variables, and modifies the usage of
existing ones. existing ones.
6.1. New State Variables 6.1. New State Variables
A new state variable is added to the base specification in support of A new state variable is added to the base specification in support of
S-BFD. S-BFD.
o bfd.SessionType: This is a variable introduced her and used by o bfd.SessionType: This is a new state variable that describes the
[I-D.ietf-bfd-multipoint], and describes the type of this session. type of this session. Allowable values for S-BFD sessions are:
Allowable values for S-BFD sessions are:
* SBFDInitiator - an S-BFD session on a network node that * SBFDInitiator - an S-BFD session on a network node that
performs a continuity test to a target entity by sending S-BFD performs a continuity test to a target entity by sending S-BFD
packets. packets.
* SBFDReflector - an S-BFD session on a network node that listens * SBFDReflector - an S-BFD session on a network node that listens
for incoming S-BFD control packets to local entities and for incoming S-BFD control packets to local entities and
generates response S-BFD control packets. generates response S-BFD control packets.
bfd.SessionType variable MUST be initialized to the appropriate type bfd.SessionType variable MUST be initialized to the appropriate type
skipping to change at page 14, line 35 skipping to change at page 15, line 19
Poll sequence to slow down that rate at which S-BFD control packets Poll sequence to slow down that rate at which S-BFD control packets
are generated from an SBFDInitiator. This is done by the are generated from an SBFDInitiator. This is done by the
SBFDReflector using procedures described in Section 7.2.3 and setting SBFDReflector using procedures described in Section 7.2.3 and setting
the Poll (P) bit in the reflected S-BFD control packet. The the Poll (P) bit in the reflected S-BFD control packet. The
SBFDInitiator is to then send the next S-BFD control packet with the SBFDInitiator is to then send the next S-BFD control packet with the
Final (F) bit set. If an SBFDReflector receives an S-BFD control Final (F) bit set. If an SBFDReflector receives an S-BFD control
packet with Poll (P) bit set, then the SBFDReflector MUST respond packet with Poll (P) bit set, then the SBFDReflector MUST respond
with an S-BFD control packet with Poll (P) bit cleared and Final (F) with an S-BFD control packet with Poll (P) bit cleared and Final (F)
bit set. bit set.
8. Scaling Aspect 8. Operational Considerations
S-BFD provides a smooth and continuous operational experience as a
failure detection mechanism. This is achieved by providing a
simplified mechanism with large portions of negotiation aspects
eliminated, resulting in a faster and simpler provisioning.
8.1. Scaling Aspect
This mechanism brings forth one noticeable difference in terms of This mechanism brings forth one noticeable difference in terms of
scaling aspect: number of SBFDReflector. This specification scaling aspect: number of SBFDReflector. This specification
eliminates the need for egress nodes to have fully active BFD eliminates the need for egress nodes to have fully active BFD
sessions when only one side desires to perform continuity tests. sessions when only one side desires to perform continuity tests.
With introduction of reflector BFD concept, egress no longer is With introduction of reflector BFD concept, egress no longer is
required to create any active BFD session per path/LSP/function required to create any active BFD session per path/LSP/function
basis. Due to this, total number of BFD sessions in a network is basis. Due to this, total number of BFD sessions in a network is
reduced. reduced.
8.2. Congestion Considerations
S-BFD performs failure detection by consuming resources, including
bandwidth and CPU processing. It is therefore imperative that
operators correctly provision the rates at which S-BFD is transmitted
to avoid congestion. When BFD is used across multiple hops, a
congestion control mechanism MUST be implemented, and when congestion
is detected, the BFD implementation MUST reduce the amount of traffic
it generates. The exact mechanism used to detect congestion is
outside the scope of this specification, but may include detection of
lost BFD control packets or other means. The SBFDReflector can limit
the rate at which an SBFInitiators will be sending S-BFD control
packets utilizing the "Required Min RX Interval", at the expense of
increasing the detection time.
9. Co-existence with Classical BFD Sessions 9. Co-existence with Classical BFD Sessions
Initial packet demultiplexing requirement is described in Initial packet demultiplexing requirement is described in
Section 7.1. Because of this, S-BFD mechanism can co-exist with Section 7.1. Because of this, S-BFD mechanism can co-exist with
classical BFD sessions. classical BFD sessions.
10. S-BFD Echo Function 10. S-BFD Echo Function
The concept of the S-BFD Echo function is similar to the BFD Echo The concept of the S-BFD Echo function is similar to the BFD Echo
function described in [RFC5880]. S-BFD echo packets have the function described in [RFC5880]. S-BFD echo packets have the
skipping to change at page 15, line 32 skipping to change at page 16, line 38
without also sending S-BFD control packets. There are two reasons without also sending S-BFD control packets. There are two reasons
behind this suggestion: behind this suggestion:
o S-BFD control packets can verify the reachability to intended o S-BFD control packets can verify the reachability to intended
target node, which allows one to have confidence that S-BFD echo target node, which allows one to have confidence that S-BFD echo
packets are u-turning on the expected target node. packets are u-turning on the expected target node.
o S-BFD control packets can detect when the target node is going out o S-BFD control packets can detect when the target node is going out
of service (i.e., via receiving back ADMINDOWN state). of service (i.e., via receiving back ADMINDOWN state).
S-BFD Echo packets can be spoofed, and can u-turn in a transit node
before reaching the expected target node. When the S-BFD Echo
function is used, it is RECOMMENDED in this specification that both
S-BFD control packets and S-BFD echo packets be sent. While the
additional use of S-BFD control packets alleviates these two
concerns, some form of authentication MAY still be included.
The usage of the "Required Min Echo RX Interval" field is described The usage of the "Required Min Echo RX Interval" field is described
in Section 7.3.2 and Section 7.2.2. Because of the stateless nature in Section 7.3.2 and Section 7.2.2. Because of the stateless nature
of SBFDReflector sessions, a value specified the "Required Min Echo of SBFDReflector sessions, a value specified the "Required Min Echo
RX Interval" field is not very meaningful at SBFDReflector. Thus it RX Interval" field is not very meaningful at SBFDReflector. Thus it
is RECOMMENDED that the "Required Min Echo RX Interval" field simply is RECOMMENDED that the "Required Min Echo RX Interval" field simply
be set to zero from SBFDInitiator. SBFDReflector MAY set to be set to zero from SBFDInitiator. SBFDReflector MAY set to
appropriate value to control the rate at which it wants to receives appropriate value to control the rate at which it wants to receives
SBFD echo packets. SBFD echo packets.
Following aspects of S-BFD Echo functions are left as implementation Following aspects of S-BFD Echo functions are left as implementation
skipping to change at page 18, line 5 skipping to change at page 19, line 12
(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>. <http://www.rfc-editor.org/info/rfc5880>.
15.2. Informative References 15.2. Informative References
[I-D.ietf-bfd-generic-crypto-auth] [I-D.ietf-bfd-generic-crypto-auth]
Bhatia, M., Manral, V., Zhang, D., and M. Jethanandani, Bhatia, M., Manral, V., Zhang, D., and M. Jethanandani,
"BFD Generic Cryptographic Authentication", draft-ietf- "BFD Generic Cryptographic Authentication", draft-ietf-
bfd-generic-crypto-auth-06 (work in progress), April 2014. bfd-generic-crypto-auth-06 (work in progress), April 2014.
[I-D.ietf-bfd-multipoint]
Katz, D., Ward, D., and J. Networks, "BFD for Multipoint
Networks", draft-ietf-bfd-multipoint-07 (work in
progress), August 2015.
[I-D.ietf-bfd-seamless-use-case] [I-D.ietf-bfd-seamless-use-case]
Aldrin, S., Bhatia, M., Matsushima, S., Mirsky, G., and N. Aldrin, S., Bhatia, M., Matsushima, S., Mirsky, G., and N.
Kumar, "Seamless Bidirectional Forwarding Detection (BFD) Kumar, "Seamless Bidirectional Forwarding Detection (BFD)
Use Case", draft-ietf-bfd-seamless-use-case-03 (work in Use Case", draft-ietf-bfd-seamless-use-case-03 (work in
progress), July 2015. progress), July 2015.
[RFC0791] Postel, J., "Internet Protocol", STD 5, RFC 791, [RFC0791] Postel, J., "Internet Protocol", STD 5, RFC 791,
DOI 10.17487/RFC0791, September 1981, DOI 10.17487/RFC0791, September 1981,
<http://www.rfc-editor.org/info/rfc791>. <http://www.rfc-editor.org/info/rfc791>.
 End of changes. 15 change blocks. 
36 lines changed or deleted 61 lines changed or added

This html diff was produced by rfcdiff 1.42. The latest version is available from http://tools.ietf.org/tools/rfcdiff/