IS-IS Working Group Z. Li Internet-Draft Y. Qin Intended status: BCP China Mobile Expires: September 8, 2010 J. Dong Huawei Technologies March 7, 2010 Recommendations for LSP Checksum Calculation and Related Processing in multi-vendor Networks using Intermediate System to Intermediate System draft-li-isis-error-lsp-processing-03 Abstract Recommendations for Interoperable Networks using Intermediate System to Intermediate System (IS-IS) [RFC3719] highlights a number of differences between the IS-IS protocol as described in ISO 10589 and the protocol as it is deployed today. This document outlines a number of differences found in the China Mobile backbone network, which is constructed using routers from several manufacturers. These differences include LSP checksum calculation, zero checksum LSP processing, zero remaining lifetime LSP processing, and corrupt LSP processing. This document is intended to provide best current practices to facilitate interoperability and maintain network stability. Status of this Memo This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. 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." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. Li, et al. Expires September 8, 2010 [Page 1] Internet-Draft draft-li-isis-error-lsp-processing March 2010 This Internet-Draft will expire on September 8, 2010. Copyright Notice Copyright (c) 2010 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) 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 described in the BSD License. Li, et al. Expires September 8, 2010 [Page 2] Internet-Draft draft-li-isis-error-lsp-processing March 2010 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Requirements Language . . . . . . . . . . . . . . . . . . . . 4 3. Checksum Calculation . . . . . . . . . . . . . . . . . . . . . 5 4. Zero Checksum LSP Processing . . . . . . . . . . . . . . . . . 6 5. Zero Remaining Lifetime LSP Processing . . . . . . . . . . . . 8 6. Corrupt LSP Processing . . . . . . . . . . . . . . . . . . . . 9 7. Security Considerations . . . . . . . . . . . . . . . . . . . 10 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 12 10. Normative References . . . . . . . . . . . . . . . . . . . . . 13 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 14 Li, et al. Expires September 8, 2010 [Page 3] Internet-Draft draft-li-isis-error-lsp-processing March 2010 1. Introduction IS-IS Protocol [ISO10589] is one of the Interior Gateway Protocols. It is widely deployed in the carrier backbone networks. [RFC3719] discusses a number of differences between the IS-IS protocol as described in ISO 10589 and the protocol as it is deployed today. In the China Mobile backbone network, constructed with hundreds of routers from several manufacturers, some differences in IS-IS implementations were identified. These differences contribute to instability across the whole network. The differences discussed in this document include Link State Protocol Data Unit (LSP) checksum calculation, zero checksum LSP processing, zero remaining lifetime LSP processing, and corrupt LSP processing. This document is intended to provide best current practices for LSP checksum calculation and related processing to facilitate interoperability and maintain network stability. The following sections describe the problems and possible solutions in multi-vendor IS-IS environments. Li, et al. Expires September 8, 2010 [Page 4] Internet-Draft draft-li-isis-error-lsp-processing March 2010 2. Requirements Language The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC 2119]. Li, et al. Expires September 8, 2010 [Page 5] Internet-Draft draft-li-isis-error-lsp-processing March 2010 3. Checksum Calculation ISO 10589, section 7.3.16.4, note 36, prescribes that examining the checksum of a zero Remaining Lifetime LSP is always successful. Thus, some implementations fill in the checksum field with zero in the zero Remaining Lifetime LSP. However, some implementations check the checksum regardless of the value of the Remain Lifetime. To insure the interoperability and maintain network stability, it is RECOMMENDED to calculate the checksum of all LSPs correctly, including zero Remaining Lifetime LSP. The calculation method is presented in Section 7.3.11, ISO 10589. Li, et al. Expires September 8, 2010 [Page 6] Internet-Draft draft-li-isis-error-lsp-processing March 2010 4. Zero Checksum LSP Processing Section 7 of [RFC3719] suggests an implementation SHOULD treat all LSPs with a zero checksum and a non-zero remaining lifetime, as if they had a checksum error. ISO 10589, section 7.3.16.4, note 36, states: A check of the checksum of a zero Remaining Lifetime LSP succeeds even though the data portion is not present. Therefore, the LSP with a zero checksum and a zero remaining lifetime SHOULD be treated as an LSP with the correct checksum. Considering the above two conditions together, the implementation SHOULD check the remaining lifetime first, then check the checksum. In practice, some implementations perform the check in reverse. The suggested processing procedure is shown in Figure 1. +--------------+ +---| LSP Received | | +--------------+ | | +----------------+ +-->| zero remaining | Yes +------------------------+ +---| lifetime? |----->|Zero remaining lifetime | | +----------------+ |LSP processing specified| |No | in Section 4 | | +------------------------+ | +--------------+ +-->|Zero checksum?| Yes +---------------------+ +---| |----->| | | +--------------+ | Corrupt LSP | | |processing specified | | +----->| in Section 5 | |No | +---------------------+ | | | +----------+ | +-->| Checksum |Yes| +---| error? |---+ | +----------+ |No | +----------------------+ +-->|Correct LSP processing| +----------------------+ Figure 1 Suggested LSP Processing Procedure Equipment with on-off switches of "ignore LSP errors" SHOULD treat Li, et al. Expires September 8, 2010 [Page 7] Internet-Draft draft-li-isis-error-lsp-processing March 2010 LSPs with a zero checksum and a non-zero remaining lifetime according to the processing mechanism mentioned in Section 5 of this document. That is treating this kind of LSPs as corrupt LSPs. As for the LSPs with a zero checksum and a zero remaining lifetime, the processing mechanism SHOULD NOT be affected by the state of the switch. That is treating this kind of LSPs as correct zero remaining lifetime LSPs. The suggested process mechanism is specified in Section 4 of this document. Li, et al. Expires September 8, 2010 [Page 8] Internet-Draft draft-li-isis-error-lsp-processing March 2010 5. Zero Remaining Lifetime LSP Processing ISO 10589, section 7.3.16.4, note 36, states: A check of the checksum of a zero Remaining Lifetime LSP succeeds even though the data portion is not present. Therefore, a zero Remaining Lifetime LSP SHOULD be treated as a correct LSP, no matter whether its checksum is correct or not. Some implementations, however, still check the checksum of a zero Remaining Lifetime LSP. The processing mechanism SHOULD NOT be affected by the on-off switch and the details can be seen in section 7.3.16.4, ISO 10589. Li, et al. Expires September 8, 2010 [Page 9] Internet-Draft draft-li-isis-error-lsp-processing March 2010 6. Corrupt LSP Processing Section 7.3.14.2 e) of [ISO10589] states: An IS receiving a LSP with an incorrect LSP Checksum or with an invalid PDU syntax shall 1) generate a corruptedLSPReceived circuit event, 2) discard the PDU. In order to control the processing mechanism of Checksum error LSP, some equipment manufacturers provide an on-off configuration switch. However, the default state of the switch is different, thus the processing mechanism of checksum error LSP is not the same. From the carrier's perspective, such on-off configuration switch is welcome, because the carrier can determine the processing mechanism through the switch. But the behavior of the switch SHOULD be the same, as follows. When the on-off switch is on, the processing mechanism for the checksum error LSP SHOULD be accordant with what is stated in Section 7.3.14.2 e) of [ISO10589]. When the on-off switch is off, the equipment SHOULD treat the received checksum error LSP in the same way as the LSP whose remaining lifetime equals 0, i.e. treating the checksum error LSP as zero remaining lifetime LSP. The processing mechanism is specified in Section 4 of this document. It is RECOMMENDED that the default state of the on-off switch be on. In this way, the default processing mechanism is in accordance with Section 7.3.14.2 e) of [ISO10589]. Li, et al. Expires September 8, 2010 [Page 10] Internet-Draft draft-li-isis-error-lsp-processing March 2010 7. Security Considerations The suggestions and clarifications in this document will not cause any new security concerns. Li, et al. Expires September 8, 2010 [Page 11] Internet-Draft draft-li-isis-error-lsp-processing March 2010 8. IANA Considerations This document makes no requests for IANA action. Li, et al. Expires September 8, 2010 [Page 12] Internet-Draft draft-li-isis-error-lsp-processing March 2010 9. Acknowledgments Many thanks to Adrian Farrel for your comments to push this document forward. Daniel King reviewed this document and gave lots of sound advice. Support and discussion from Lianyuan Li, Xiaodong Duan are greatly appreciated. Lianyuan Li presented this document at IETF 75 in Stockholm. Acknowledgments to the efforts and discussion from Fang Wei, Zhaorui Huang, Xiaodong Wei, Jingxi Zho, Xiaobo He, Jun Zhu when doing the test in lab. Li, et al. Expires September 8, 2010 [Page 13] Internet-Draft draft-li-isis-error-lsp-processing March 2010 10. Normative References [ISO10589] ISO, "Intermediate system to Intermediate system routeing information exchange protocol for use in conjunction with the Protocol for providing the Connectionless-mode Network Service (ISO 8473)", ISO/IEC 10589:2002. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC3719] Parker, J., "Recommendations for Interoperable Networks using Intermediate System to Intermediate System (IS-IS)", RFC 3719, February 2004. Li, et al. Expires September 8, 2010 [Page 14] Internet-Draft draft-li-isis-error-lsp-processing March 2010 Authors' Addresses Zhenqiang Li China Mobile Unit2, Dacheng Plaza, No. 28 Xuanwumenxi Ave, Xuanwu District Beijing 100053 P.R. China Email: lizhenqiang@chinamobile.com Yue Qin China Mobile No. 29, Financial Street, Xicheng District Beijing 100032 P.R. China Email: qinyue@chinamobile.com Jie Dong Huawei Technologies KuiKe Building, No.9 Xinxi Rd., Haidian District Beijing 100085 P.R. China Email: dongjie_dj@huawei.com Li, et al. Expires September 8, 2010 [Page 15]