INTERNET-DRAFT W A Simpson DayDreamer Intended status: Experimental 8 August 2011 Generation of Unique IS-IS System Identifiers draft-simpson-isis-ppp-unique-02 Abstract The IS-IS routing protocol (Intermediate System to Intermediate System, ISO 10589) requires unique System Identifiers at the link layer. A common practice has been to use an existing IEEE 802 MAC link-layer interface identifier. When no unique MAC is available, this document specifies automatic generation of identifiers. It is fully interoperable with systems that do not support this extension. Additionally, the extension automatically resolves conflicts between System Identifiers. Copyright Notice Copyright (c) 2011 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. This document may contain material from IETF Documents or IETF Contributions published or made publicly available before November 10, 2008. The person(s) controlling the copyright in some of this material may not have granted the IETF Trust the right to allow modifications of such material outside the IETF Standards Process. This document may not be modified, and derivative works of it may not be created, except to format it for publication as an RFC or to translate it into languages other than English. Simpson expires February 8, 2011 [Page i] DRAFT ISIS Unique 8 August 2011 Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. 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 http://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." Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . 1 1.1 Terminology . . . . . . . . . . . . . . . . . . . 1 2. Random Generation . . . . . . . . . . . . . . . . . . . 2 2.1 PPP Links . . . . . . . . . . . . . . . . . . . . 2 3. Resolving Conflicts . . . . . . . . . . . . . . . . . . 3 ACKNOWLEDGMENTS . . . . . . . . . . . . . . . . . . . . . . . . 4 IANA CONSIDERATIONS . . . . . . . . . . . . . . . . . . . . . . 4 OPERATIONAL CONSIDERATIONS . . . . . . . . . . . . . . . . . . 5 SECURITY CONSIDERATIONS . . . . . . . . . . . . . . . . . . . . 5 NORMATIVE REFERENCES . . . . . . . . . . . . . . . . . . . . . 6 INFORMATIVE REFERENCES . . . . . . . . . . . . . . . . . . . . 6 CONTACTS . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Simpson expires February 8, 2011 [Page ii] DRAFT ISIS Unique 8 August 2011 1. Introduction The System Identifier is 6 octets for OSI end systems, and 7 octets for IS-IS routers or pseudonodes. This identifier is not required to be the Destination or Source of any packet. (See [ISO10589], [RFC1195], and [RFC5342] for further details.) Typically, IS-IS implementations base the identifier on an existing Media Access Control (MAC) link-layer interface identifier. The 48-bit MAC is usually composed of a 24-bit Organizationally Unique Identifier (OUI) followed by a 24-bit Network Interface Controller (NIC) specific number. Other systems have a configured identifier that is independent of the interfaces. When no unique MAC is available, this document specifies automatic generation of identifiers. In the presence of PPP [RFC1661] links, the PPP Magic Number is unique with respect to its neighbors and further reduces the potential for conflict. This mechanism is also necessary to resolve conflicts between multiple systems with the same System Identifier due to manufacturing or misconfiguration. 1.1. Terminology The key words "MAY", "MUST, "MUST NOT", "OPTIONAL", "RECOMMENDED", "REQUIRED", "SHOULD", and "SHOULD NOT" in this document are to be interpreted as described in [RFC2119]. Simpson expires February 8, 2011 [Page 1] DRAFT ISIS Unique 8 August 2011 2. Random Generation Some systems have only point-to-point or other links without any conveniently available MAC, and do not have a configured identifier. This status might change dynamically, as hot swap interfaces are added or removed. In this case, a 48-bit System Identifier MUST be randomly generated. (See [RFC4086] for requirements.) To mitigate against potential assignment conflicts, this System Identifier (considered as a pseudo-MAC) MUST have both the "locally- assigned" and "broadcast/multicast" (group) bits set; that is, the least significant two bits of the most significant octet are equal to 0x3. The probability of conflict between these identifiers is of the order (N**2)/(2**47); where N is the number of systems in the same IS-IS area. This is considerably less likely than a duplicate MAC (see below). 2.1. PPP Links PPP [RFC1661] links (such as [RFC1377]) already specify negotiation of a randomly generated unique 32-bit Magic Number "to detect looped- back links and other Data Link Layer anomalies." Although only a single interface negotiation is described in the main document, it has long been understood [RFC1220] [Simpson1992] [Baker1992] that the term "unique" applies across all local system interfaces. This protects against patch-panel errors in addition to looped-back modems, to detect unexpected loopbacks of a link from an endpoint to itself. [Simpson1993] [RFC1663] [RFC1717] An implementation conforming with this specification MUST have different Magic Numbers for every link in a single system, and each end of every link between two peers MUST have Magic Numbers which are unique to those peers. That is, the Magic Number MUST be unique for all visible interfaces. Whenever such a Magic Number has been successfully negotiated, only the most significant 2 octets of a pseudo-OUI are randomly generated, followed by (concatenated to) the selected Magic Number. To mitigate against potential assignment conflicts, this System Identifier (considered as a pseudo-OUI) MUST have both the "locally- assigned" and "broadcast/multicast" (group) bits set; that is, the least significant two bits of the most significant octet are equal to Simpson expires February 8, 2011 [Page 2] DRAFT ISIS Unique 8 August 2011 0x3. The probability of conflict is considerably less than the wholly generated pseudo-MAC (above), as the Magic Number has already been determined to be locally unique. The pseudo-OUI differentiates among PPP systems in the same IS-IS area. 3. Resolving Conflicts As multiple systems generate System Identifiers, they might not have sufficiently divergent random bits available (especially on startup). Resolving conflicts is REQUIRED. Field experience has shown that IEEE 802 MAC identifiers are frequently not unique. Reuse is more likely to recycle a block varying only the least significant bits, increasing the probability considerably over a normal distribution. A MAC is most often reused by companies that have defective manufacturing processes, or manufacture more than 2**24 (16,777,214) devices. Many companies reuse the same MAC for different product lines, or different speeds or types of media. Some implementations failed to correctly convert the MAC to canonical form [RFC2469], causing unintentional conflicts through multi-media bridges. If a duplicated MAC is used as a System Identifier within an IS-IS area, this leads to the condition colloquially called "LSP War" or "LSR War". The Update Process will increment its LSP sequence number repeatedly. Currently, IS-IS has no method to autonomously resolve conflicts. An implementation conforming with this specification MUST generate a replacement System Identifier using one of the techniques specified above, upon: (a) detecting a conflicting System Identifier in (a)(1) 1 IS-IS Hello from any neighbor, or (a)(2) 2 consecutive LSPs and/or SNPs from the same source; (b) failing to resolve participation in an area after (b)(1) incrementing its Sequence Number 3 or more times, and (b)(2) 10 seconds. Simpson expires February 8, 2011 [Page 3] DRAFT ISIS Unique 8 August 2011 This will not usually detect conflicts between different areas that do not affect routing within those areas. Each system participating in two or more areas MUST maintain a distinction between System Identifiers found in each area. Never-the-less, any replacement System Identifier SHOULD propagate in every such area. The system SHOULD delay generation and transmission of this replacement System Identifier for a random amount of time between 0 and MAX_GENERATION_DELAY. Although the randomization range is specified in units of seconds, the actual randomly-chosen value SHOULD NOT be in units of whole seconds, but rather in units of the highest available timer resolution. This reduces the probability of synchronization with advertisements from other systems in the same IS-IS area. If a message is received during the delay indicating the conflict was resolved by another system, the existing local System Identifier remains unchanged. Acknowledgments This document parallels text originally in [RFC2153] and various other drafts. James Carlson, Donald Eastlake, Dave Katz, and Radia Perlman provided background information and helpful comments. Members of the IESG, ISIS WG, PPPext WG, and TRILL WG contributed additional comments. IANA Considerations This document has no IANA actions. [RFC Editor: please remove this section prior to publication.] Simpson expires February 8, 2011 [Page 4] DRAFT ISIS Unique 8 August 2011 Operational Considerations MAX_GENERATION_DELAY Default: 1 second. This is based on an anticipated IS-IS Hello interval of no more than 4 seconds. When Hellos are sent at a greater time interval, this MUST NOT be greater than interval/2, and SHOULD NOT be greater than interval/4. Configurable System Identifier Default 0 (off). Although the probability of conflict with another System Identifier is minuscule, some implementations might not have a sufficient source of randomness, and could repeatedly select conflicting values. An implementation conforming with this specification SHOULD have the capability of manually configuring the System Identifier, preventing random generation of a replacement System Identifier. To mitigate against potential assignment conflicts, this System Identifier (considered as a pseudo-MAC) MUST have the "locally- assigned" bit set and "broadcast/multicast" (group) bit clear; that is, the least significant two bits of the most significant octet are equal to 0x2. Remote Management Additional options have been suggested to configure other actions taken upon detecting a conflicting System Identifier. For example, the system might send an alert to a remote management facility and disable IS-IS until remote management updates the configuration. Such remote management configuration options are beyond the scope of this specification. Security Considerations These mechanisms provide protection against compromised, malfunctioning, or misconfigured systems [RFC4593]; spoofing attacks are thwarted by quickly renegotiating a replacement System Identifier. Never-the-less, [RFC5304] increases protection against maliciously configured conflicting System Identifiers. Simpson expires February 8, 2011 [Page 5] DRAFT ISIS Unique 8 August 2011 Normative References [ISO10589] ISO/IEC 10589:2002, "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)" [RFC1195] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and dual environments", December 1990. [RFC1377] Katz, D., "The PPP OSI Network Layer Control Protocol (OSINLCP)", November 1992. [RFC1661] Simpson, W., Ed., "The Point-to-Point Protocol (PPP)", STD 51, July 1994. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, March 1997. [RFC4086] Eastlake, D. (3rd), Schiller, J., and S. Crocker, "Randomness Requirements for Security", BCP 106, June 2005. Informative References [Baker1992] Baker, F., "PPP Reliable and Multi-Link Transmission", Message to PPP Compression List, June 29, 1992. Message- Id: <9206292135.AA00620@saffron.acc.com> [RFC1220] Baker, F., "Point-to-Point Protocol extensions for bridging", April 1991. [RFC1663] Rand, D., "PPP Reliable Transmission", July 1994. [RFC1717] Sklower, K., Lloyd, B., McGregor, G., and D. Carr, "The PPP Multilink Protocol (MP)", November 1994. [RFC2153] Simpson, W., "PPP Vendor Extensions", May 1997. [RFC2469] Narten, T., and C. Burton, "A Caution On The Canonical Ordering Of Link-Layer Addresses", December 1998. [RFC4593] Barbir, A., Murphy, S., and Y. Yang, "Generic Threats to Routing Protocols", October 2006. Simpson expires February 8, 2011 [Page 6] DRAFT ISIS Unique 8 August 2011 [RFC5304] Li, T., and R. Atkinson, "IS-IS Cryptographic Authentication", October 2008. [RFC5342] Eastlake 3rd, D., "IANA Considerations and IETF Protocol Usage for IEEE 802 Parameters", BCP 141, September 2008. [Simpson1992] Simpson, W., "where are we?", Message to IESG and others, April 17, 1992. Message-Id: <269.bsimpson@vela.acs.oakland.edu> [Simpson1993] Simpson, W., "Re: Simple Multilink Proceedure for PPP - the document", Message to ietf-ppp and iplpdn mailing lists, February 21, 1993. Message-Id: <988.bill.simpson@um.cc.umich.edu> Author's Address Questions about this document can be directed to: William Allen Simpson DayDreamer Computer Systems Consulting Services 1384 Fontaine Madison Heights, Michigan 48071 William.Allen.Simpson@Gmail.com Simpson expires February 8, 2011 [Page 7]