< draft-ietf-bfd-multipoint-active-tail-06.txt | draft-ietf-bfd-multipoint-active-tail-07.txt > | |||
---|---|---|---|---|
Internet Engineering Task Force D. Katz | Internet Engineering Task Force D. Katz | |||
Internet-Draft Juniper Networks | Internet-Draft Juniper Networks | |||
Intended status: Standards Track D. Ward | Intended status: Standards Track D. Ward | |||
Expires: June 22, 2018 Cisco Systems | Expires: July 19, 2018 Cisco Systems | |||
S. Pallagatti, Ed. | S. Pallagatti, Ed. | |||
Individual Contributor | Individual Contributor | |||
G. Mirsky, Ed. | G. Mirsky, Ed. | |||
ZTE Corp. | ZTE Corp. | |||
December 19, 2017 | January 15, 2018 | |||
BFD Multipoint Active Tails. | BFD Multipoint Active Tails. | |||
draft-ietf-bfd-multipoint-active-tail-06 | draft-ietf-bfd-multipoint-active-tail-07 | |||
Abstract | Abstract | |||
This document describes active tail extensions to the Bidirectional | This document describes active tail extensions to the Bidirectional | |||
Forwarding Detection (BFD) protocol for multipoint and multicast | Forwarding Detection (BFD) protocol for multipoint and multicast | |||
networks. | networks. | |||
Requirements Language | Requirements Language | |||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
skipping to change at page 1, line 45 ¶ | skipping to change at page 1, line 45 ¶ | |||
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 https://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 June 22, 2018. | This Internet-Draft will expire on July 19, 2018. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2017 IETF Trust and the persons identified as the | Copyright (c) 2018 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 | |||
(https://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 | |||
skipping to change at page 2, line 29 ¶ | skipping to change at page 2, line 29 ¶ | |||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
2. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 2. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
3. Protocol Details . . . . . . . . . . . . . . . . . . . . . . 4 | 3. Protocol Details . . . . . . . . . . . . . . . . . . . . . . 4 | |||
3.1. Multipoint Client Session . . . . . . . . . . . . . . . . 4 | 3.1. Multipoint Client Session . . . . . . . . . . . . . . . . 4 | |||
3.2. Multipoint Client Session Failure . . . . . . . . . . . . 5 | 3.2. Multipoint Client Session Failure . . . . . . . . . . . . 5 | |||
3.3. State Variables . . . . . . . . . . . . . . . . . . . . . 5 | 3.3. State Variables . . . . . . . . . . . . . . . . . . . . . 5 | |||
3.3.1. New State Variables . . . . . . . . . . . . . . . . . 5 | 3.3.1. New State Variables . . . . . . . . . . . . . . . . . 5 | |||
3.3.2. State Variable Initialization and Maintenance . . . . 6 | 3.3.2. New State Variable Value . . . . . . . . . . . . . . 6 | |||
3.3.3. State Variable Initialization and Maintenance . . . . 6 | ||||
3.4. Controlling Multipoint BFD Options . . . . . . . . . . . 7 | 3.4. Controlling Multipoint BFD Options . . . . . . . . . . . 7 | |||
3.5. State Machine . . . . . . . . . . . . . . . . . . . . . . 8 | 3.5. State Machine . . . . . . . . . . . . . . . . . . . . . . 8 | |||
3.6. Session Establishment . . . . . . . . . . . . . . . . . . 8 | 3.6. Session Establishment . . . . . . . . . . . . . . . . . . 8 | |||
3.7. Discriminators and Packet Demultiplexing . . . . . . . . 8 | 3.7. Discriminators and Packet Demultiplexing . . . . . . . . 8 | |||
3.8. Controlling Tail Packet Transmission . . . . . . . . . . 8 | 3.8. Controlling Tail Packet Transmission . . . . . . . . . . 8 | |||
3.9. Soliciting the Tails . . . . . . . . . . . . . . . . . . 9 | 3.9. Soliciting the Tails . . . . . . . . . . . . . . . . . . 9 | |||
3.10. Verifying Connectivity to Specific Tails . . . . . . . . 9 | 3.10. Verifying Connectivity to Specific Tails . . . . . . . . 10 | |||
3.11. Detection Times . . . . . . . . . . . . . . . . . . . . . 10 | 3.11. Detection Times . . . . . . . . . . . . . . . . . . . . . 10 | |||
3.12. MultipointClient Down/AdminDown Sessions . . . . . . . . 11 | 3.12. MultipointClient Down/AdminDown Sessions . . . . . . . . 11 | |||
3.13. Base BFD Specification Text Replacement . . . . . . . . . 11 | 3.13. Base BFD Specification Text Replacement . . . . . . . . . 11 | |||
3.13.1. Reception of BFD Control Packets . . . . . . . . . . 11 | 3.13.1. Reception of BFD Control Packets . . . . . . . . . . 11 | |||
3.13.2. Demultiplexing BFD Control Packets . . . . . . . . . 12 | 3.13.2. Demultiplexing BFD Control Packets . . . . . . . . . 12 | |||
3.13.3. Transmitting BFD Control Packets . . . . . . . . . . 12 | 3.13.3. Transmitting BFD Control Packets . . . . . . . . . . 12 | |||
4. Assumptions . . . . . . . . . . . . . . . . . . . . . . . . . 13 | 4. Assumptions . . . . . . . . . . . . . . . . . . . . . . . . . 13 | |||
5. Operational Scenarios . . . . . . . . . . . . . . . . . . . . 13 | 5. Operational Scenarios . . . . . . . . . . . . . . . . . . . . 14 | |||
5.1. No Head Notification . . . . . . . . . . . . . . . . . . 14 | 5.1. No Head Notification . . . . . . . . . . . . . . . . . . 14 | |||
5.2. Unreliable Head Notification . . . . . . . . . . . . . . 14 | 5.2. Unreliable Head Notification . . . . . . . . . . . . . . 14 | |||
5.3. Semi-reliable Head Notification and Tail Solicitation . . 14 | 5.3. Semi-reliable Head Notification and Tail Solicitation . . 14 | |||
5.4. Reliable Head Notification . . . . . . . . . . . . . . . 15 | 5.4. Reliable Head Notification . . . . . . . . . . . . . . . 15 | |||
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16 | 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16 | |||
7. Security Considerations . . . . . . . . . . . . . . . . . . . 16 | 7. Security Considerations . . . . . . . . . . . . . . . . . . . 16 | |||
8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 16 | 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 16 | |||
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 16 | 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 16 | |||
10. Normative References . . . . . . . . . . . . . . . . . . . . 16 | 10. Normative References . . . . . . . . . . . . . . . . . . . . 16 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 17 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 17 | |||
skipping to change at page 5, line 23 ¶ | skipping to change at page 5, line 23 ¶ | |||
know the tail state. | know the tail state. | |||
3.3. State Variables | 3.3. State Variables | |||
BFD Multipoint active tail introduces new state variables and | BFD Multipoint active tail introduces new state variables and | |||
modifies the usage of a few existing ones defined in section 4.4 of | modifies the usage of a few existing ones defined in section 4.4 of | |||
[I-D.ietf-bfd-multipoint]. | [I-D.ietf-bfd-multipoint]. | |||
3.3.1. New State Variables | 3.3.1. New State Variables | |||
Few state variables are added and modified support of Multipoint BFD | Few state variables are added in support of Multipoint BFD active | |||
active tail. | tail. | |||
bfd.SessionType | ||||
The type of this session as defined in [RFC7880]. A new value | ||||
introduced is: | ||||
MultipointClient: A session on the head that tracks the | ||||
state of an individual tail, when desirable. | ||||
This variable MUST be initialized to the appropriate type when | ||||
the session is created, according to the rules in section 4.13 | ||||
of [I-D.ietf-bfd-multipoint]. | ||||
bfd.SilentTail | bfd.SilentTail | |||
If 0, a tail may send packets to the head according to other | If 0, a tail may send packets to the head according to other | |||
parts of this specification. Setting this to 1 allows tails to | parts of this specification. Setting this to 1 allows tails to | |||
be provisioned to always be silent, even when the head is | be provisioned to always be silent, even when the head is | |||
soliciting traffic from the tails. This can be useful, for | soliciting traffic from the tails. This can be useful, for | |||
example, in deployments of a large number of tails when the | example, in deployments of a large number of tails when the | |||
head wishes to track the state of a subset of them. This | head wishes to track the state of a subset of them. This | |||
variable MUST be initialized based on configuration. | variable MUST be initialized based on configuration. | |||
skipping to change at page 6, line 15 ¶ | skipping to change at page 6, line 4 ¶ | |||
periodic BFD Control packets, when they see the BFD session | periodic BFD Control packets, when they see the BFD session | |||
fail. If 0, the tail will never send periodic BFD Control | fail. If 0, the tail will never send periodic BFD Control | |||
packets, and the head will not be notified of session failures | packets, and the head will not be notified of session failures | |||
by the tails. This variable MUST be initialized based on | by the tails. This variable MUST be initialized based on | |||
configuration. | configuration. | |||
This variable is only pertinent when bfd.SessionType is | This variable is only pertinent when bfd.SessionType is | |||
MultipointHead or MultipointClient. | MultipointHead or MultipointClient. | |||
bfd.UnicastRcvd | bfd.UnicastRcvd | |||
Set to 1 if a tail receives a unicast BFD Control packet from | Set to 1 if a tail receives a unicast BFD Control packet from | |||
the head. This variable MUST be set to zero if the session | the head. This variable MUST be set to zero if the session | |||
transitions from Up state to some other state. | transitions from Up state to some other state. | |||
This variable MUST be initialized to zero. | This variable MUST be initialized to zero. | |||
This variable is only pertinent when Bfd.SessionType is | This variable is only pertinent when Bfd.SessionType is | |||
MultipointTail. | MultipointTail. | |||
3.3.2. State Variable Initialization and Maintenance | 3.3.2. New State Variable Value | |||
A new state variable value being added to: | ||||
bfd.SessionType | ||||
The type of this session as defined in [RFC7880]. A new value | ||||
introduced is: | ||||
MultipointClient: A session on the head that tracks the state | ||||
of an individual tail, when desirable. | ||||
This variable MUST be initialized to the appropriate type when the | ||||
session is created, according to the rules in section 4.13 of | ||||
[I-D.ietf-bfd-multipoint]. | ||||
3.3.3. State Variable Initialization and Maintenance | ||||
Some state variables defined in section 6.8.1 of the [RFC5880] needs | Some state variables defined in section 6.8.1 of the [RFC5880] needs | |||
to be initialized or manipulated differently depending on the session | to be initialized or manipulated differently depending on the session | |||
type (see section 4.4.2 of [I-D.ietf-bfd-multipoint]). | type (see section 4.4.2 of [I-D.ietf-bfd-multipoint]). | |||
bfd.LocalDiscr | bfd.LocalDiscr | |||
For session type MultipointClient, this variable MUST always | For session type MultipointClient, this variable MUST always | |||
match the value of bfd.LocalDiscr in the associated | match the value of bfd.LocalDiscr in the associated | |||
MultipointHead session. | MultipointHead session. | |||
skipping to change at page 16, line 30 ¶ | skipping to change at page 16, line 37 ¶ | |||
9. Acknowledgements | 9. Acknowledgements | |||
Authors would also like to thank Nobo Akiya, Vengada Prasad Govindan, | Authors would also like to thank Nobo Akiya, Vengada Prasad Govindan, | |||
Jeff Haas, Wim Henderickx, Gregory Mirsky and Mingui Zhang who have | Jeff Haas, Wim Henderickx, Gregory Mirsky and Mingui Zhang who have | |||
greatly contributed to this document. | greatly contributed to this document. | |||
10. Normative References | 10. Normative References | |||
[I-D.ietf-bfd-multipoint] | [I-D.ietf-bfd-multipoint] | |||
Katz, D., Ward, D., and J. Networks, "BFD for Multipoint | Katz, D., Ward, D., Networks, J., and G. Mirsky, "BFD for | |||
Networks", draft-ietf-bfd-multipoint-11 (work in | Multipoint Networks", draft-ietf-bfd-multipoint-12 (work | |||
progress), December 2017. | in progress), December 2017. | |||
[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, | |||
<https://www.rfc-editor.org/info/rfc2119>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
[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, | |||
<https://www.rfc-editor.org/info/rfc5880>. | <https://www.rfc-editor.org/info/rfc5880>. | |||
End of changes. 12 change blocks. | ||||
27 lines changed or deleted | 31 lines changed or added | |||
This html diff was produced by rfcdiff 1.46. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |