--- 1/draft-ietf-lsr-isis-rfc5306bis-01.txt 2019-06-03 00:13:09.765288327 -0700 +++ 2/draft-ietf-lsr-isis-rfc5306bis-02.txt 2019-06-03 00:13:09.817289640 -0700 @@ -1,19 +1,19 @@ IS-IS for IP Internets L. Ginsberg Internet-Draft P. Wells Obsoletes: 5306 (if approved) Cisco Systems, Inc. -Intended status: Standards Track December 13, 2018 -Expires: June 16, 2019 +Intended status: Standards Track June 3, 2019 +Expires: December 5, 2019 Restart Signaling for IS-IS - draft-ietf-lsr-isis-rfc5306bis-01 + draft-ietf-lsr-isis-rfc5306bis-02 Abstract This document describes a mechanism for a restarting router to signal to its neighbors that it is restarting, allowing them to reestablish their adjacencies without cycling through the down state, while still correctly initiating database synchronization. This document additionally describes a mechansim for a router to signal its neighbors that it is preparing to initiate a restart while @@ -46,25 +46,25 @@ Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at https://datatracker.ietf.org/drafts/current/. 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." - This Internet-Draft will expire on June 16, 2019. + This Internet-Draft will expire on December 5, 2019. Copyright Notice - Copyright (c) 2018 IETF Trust and the persons identified as the + Copyright (c) 2019 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 (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as @@ -74,35 +74,35 @@ 1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Approach . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.1. Timers . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.2. Restart TLV . . . . . . . . . . . . . . . . . . . . . . . 5 2.2.1. Use of RR and RA Bits . . . . . . . . . . . . . . . . 6 2.2.2. Use of the SA Bit . . . . . . . . . . . . . . . . . . 7 2.2.3. Use of PR and PA Bits . . . . . . . . . . . . . . . . 8 2.3. Adjacency (Re)Acquisition . . . . . . . . . . . . . . . . 10 2.3.1. Adjacency Reacquisition during Restart . . . . . . . 10 - 2.3.2. Adjacency Acquisition during Start . . . . . . . . . 12 + 2.3.2. Adjacency Acquisition during Start . . . . . . . . . 13 2.3.3. Multiple Levels . . . . . . . . . . . . . . . . . . . 14 2.4. Database Synchronization . . . . . . . . . . . . . . . . 14 2.4.1. LSP Generation and Flooding and SPF Computation . . . 15 - 3. State Tables . . . . . . . . . . . . . . . . . . . . . . . . 17 + 3. State Tables . . . . . . . . . . . . . . . . . . . . . . . . 18 3.1. Running Router . . . . . . . . . . . . . . . . . . . . . 18 - 3.2. Restarting Router . . . . . . . . . . . . . . . . . . . . 18 - 3.3. Starting Router . . . . . . . . . . . . . . . . . . . . . 19 - 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 20 - 5. Security Considerations . . . . . . . . . . . . . . . . . . . 21 - 6. Manageability Considerations . . . . . . . . . . . . . . . . 21 - 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 21 - 8. Normative References . . . . . . . . . . . . . . . . . . . . 22 - Appendix A. Summary of Changes from RFC 5306 . . . . . . . . . . 23 - Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 23 + 3.2. Restarting Router . . . . . . . . . . . . . . . . . . . . 19 + 3.3. Starting Router . . . . . . . . . . . . . . . . . . . . . 21 + 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 21 + 5. Security Considerations . . . . . . . . . . . . . . . . . . . 22 + 6. Manageability Considerations . . . . . . . . . . . . . . . . 22 + 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 22 + 8. Normative References . . . . . . . . . . . . . . . . . . . . 23 + Appendix A. Summary of Changes from RFC 5306 . . . . . . . . . . 24 + Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 24 1. Overview The Intermediate System to Intermediate System (IS-IS) routing protocol [RFC1195] [ISO10589] is a link state intra-domain routing protocol. Normally, when an IS-IS router is restarted, temporary disruption of routing occurs due to events in both the restarting router and the neighbors of the restarting router. The router that has been restarted computes its own routes before @@ -156,21 +156,24 @@ router starts. It is assumed that the three-way handshake [RFC5303] is being used on Point-to-Point circuits. 2. Approach 2.1. Timers Three additional timers, T1, T2, and T3, are required to support the - functionality defined in this document. + behavior of a restarting router defined in this document. + + NOTE: These timers are NOT applicable to a router which is preparing + to do a planned restart. An instance of the timer T1 is maintained per interface, and indicates the time after which an unacknowledged (re)start attempt will be repeated. A typical value might be 3 seconds. An instance of the timer T2 is maintained for each LSP database (LSPDB) present in the system, i.e., for a Level 1/2 system, there will be an instance of the timer T2 for Level 1 and an instance for Level 2. This is the maximum time that the system will wait for LSPDB synchronization. A typical value might be 60 seconds. @@ -214,32 +217,43 @@ +--+--+--+--+--+--+--+--+ |Reserved|PA|PR|SA|RA|RR| +--+--+--+--+--+--+--+--+ RR - Restart Request RA - Restart Acknowledgement SA - Suppress adjacency advertisement PR - Restart is planned PA - Planned restart acknowledgement - (Note: Remaining fields are required when the RA bit is set.) + (Note: Remaining fields are ) + Remaining Time (2 octets) - Remaining holding time (in seconds) + Remaining/recommended holding time (in seconds). + + Required when the RA, PR, or PA bit is set. Otherwise + this field SHOULD be omitted when sent and + MUST be ignored when received. Restarting Neighbor System ID (ID Length octets) - The System ID of the neighbor to which an RA refers. Note: - Implementations based on earlier versions of this document may not - include this field in the TLV when the RA is set. In this case, a - router that is expecting an RA on a LAN circuit SHOULD assume that - the acknowledgement is directed at the local system. + The System ID of the neighbor to which an RA/PA refers. + + Required when the RA or PA bit is set. Otherwise + this field SHOULD be omitted when sent and + MUST be ignored when received. + + Note: Implementations based on earlier drafts of RFC 5306 + may not include this field in the TLV when the RA bit is set. + In this case, a router that is expecting an RA on a LAN circuit + SHOULD assume that the acknowledgement is directed at the local + system. 2.2.1. Use of RR and RA Bits The RR bit is used by a (re)starting router to signal to its neighbors that a (re)start is in progress, that an existing adjacency SHOULD be maintained even under circumstances when the normal operation of the adjacency state machine would require the adjacency to be reinitialized, to request a set of CSNPs, and to request setting of the SRMflags. @@ -339,57 +353,69 @@ Note that a router that suppresses advertisement of an adjacency MUST NOT use this adjacency when performing its SPF calculation. In particular, if an implementation follows the example guidelines presented in [ISO10589], Annex C.2.5, Step 0:b) "pre-load TENT with the local adjacency database", the suppressed adjacency MUST NOT be loaded into TENT. 2.2.3. Use of PR and PA Bits The PR bit is used by a router which is planning to initiate a - restart to signal to its neighbors that it will be restarting. + restart to signal to its neighbors that it will be restarting. The + router sending an IIH with PR bit set SHOULD set the "remaining time" + to a value greater than the expected control plane restart time. The + PR bit SHOULD remain set in IIHs until the restart is initiated. The PA bit is sent by the neighbor of a router planning to restart to acknowledge receipt of a restart TLV with the PR bit set. When the neighbor of a router planning a restart receives an IIH with the restart TLV having the PR bit set, if there exists on this interface an adjacency in state "UP" with the same System ID, and in the case of a LAN circuit, with the same source LAN address, then: a. if this is the first IIH with the PR bit set that this system has received associated with this adjacency, then the adjacency is marked as being in "Planned Restart state" and the adjacency holding time is refreshed -- otherwise, the holding time is not - refreshed. The "remaining time" transmitted according to (b) - below MUST reflect the actual time after which the adjacency will - now expire. Receipt of a normal IIH with the PR bit reset will - clear the "Planned Restart mode" state. This procedure allows + refreshed. The holding time SHOULD be set to the "remaining + time" specified in the received IIH with PR set. The "remaining + time" transmitted according to (b) below MUST reflect the actual + time after which the adjacency will now expire. Receipt of a + normal IIH with the PR bit reset will clear the "Planned Restart + mode" state and cause the receiving router to set the adjacency + hold time to the locally configured value. This procedure allows the router planning a restart to cause the neighbor to maintain the adjacency long enough for restart to successfully complete. Whether or not an adjacency is marked as being in "Planned Restart mode" has no effect on adjacency state transitions. b. immediately (i.e., without waiting for any currently running timer interval to expire, but with a small random delay of a few tens of milliseconds on LANs to avoid "storms") transmit over the corresponding interface an IIH including the restart TLV with the PR bit clear and the PA bit set. The "Remaining Time" MUST be set to the current time (in seconds) before the holding timer on this adjacency is due to expire. If the corresponding interface is a LAN interface, then the Restarting Neighbor System ID SHOULD be set to the System ID of the router from which the IIH with the PR bit set was received. This is required to correctly associate the acknowledgement and holding time in the case where multiple systems on a LAN are planning a restart at approximately the same time. + NOTE: Receipt of an IIH with PA bit set indicates to the router + planning a restart that the neighbor is aware of the planned restart + and - in the absence of topology changes as described below - will + maintain the adjacency for the "remaining time" included in the IIH + with PA set. + While a control plane restart is in progress it is expected that the restarting router will be unable to respond to topology changes. It is therefore useful to signal a planned restart (if the forwarding plane on the restarting router is maintained) so that the neighbors of the restarting router can determine whether it is safe to maintain the adjacency if other topology changes occur prior to the completion of the restart. Signalling a planned restart in the absence of maintained forwarding plane state is likely to lead to significant traffic loss and MUST NOT be done. @@ -803,29 +829,34 @@ The states named in the columns of the tables below are a mixture of states that are specific to a single adjacency (ADJ suppressed, ADJ Seen RA, ADJ Seen CSNP) and states that are indicative of the state of the protocol instance (Running, Restarting, Starting, SPF Wait). Three state tables are presented from the point of view of a running router, a restarting router, and a starting router. 3.1. Running Router - Event | Running | ADJ suppressed ============================================================== RX PR | Set Planned Restart | | state. | + | Update hold time | Send PA | -------------+----------------------+------------------------- RX PR clr | Clear Planned | and RR clr | Restart State | + | Restore holdtime to | + | local value | + -------------+----------------------+------------------------- + RX PA | Proceed with planned | + | restart | -------------+----------------------+------------------------- RX RR | Maintain ADJ State | | Send RA | | Set SRM,send CSNP | | (Note 1) | | Update Hold Time, | | set Restart Mode | | (Note 2) | -------------+----------------------+------------------------- RX RR clr | Clr Restart mode |