Network Working Group A. Lindem Internet-Draft Redback Networks Intended status: Standards Track A. Roy Expires: August 17, 2008 Cisco Systems S. Mirtorabi Force10 Networks February 14, 2008 OSPF Multi-Instance Extensions draft-acee-ospf-multi-instance-01.txt Status of this Memo By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she becomes aware will be disclosed, in accordance with Section 6 of 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. This Internet-Draft will expire on August 17, 2008. Copyright Notice Copyright (C) The IETF Trust (2008). Lindem, et al. Expires August 17, 2008 [Page 1] Internet-Draft OSPF Multi-Instance Extensions February 2008 Abstract OSPFv3 includes a mechanism for supporting multiple instances on the same link. OSPFv2 could benefit from such a mechanism in order to support multiple routing domains on the same subnet. The OSPFv2 instance ID is reserved for support of separate OSPFv2 protocol instances. This is different from OSPFv3 where it could be used for other purposes such as putting the same link in multiple areas. OSPFv2 supports this capability using a separate subnet or the OSPF multi-area adjacency capability. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1. Requirements notation . . . . . . . . . . . . . . . . . . 3 2. OSPFv2 Instance Packet Encoding . . . . . . . . . . . . . . . 4 3. OSPF Interface Instance ID . . . . . . . . . . . . . . . . . . 6 3.1. Sending and Receiving OSPF packets . . . . . . . . . . . . 6 4. Backward Compatibility and Deployment Considerations . . . . . 7 5. Security Considerations . . . . . . . . . . . . . . . . . . . 8 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 7. Normative References . . . . . . . . . . . . . . . . . . . . . 10 Appendix A. Acknowledgments . . . . . . . . . . . . . . . . . . . 11 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 12 Intellectual Property and Copyright Statements . . . . . . . . . . 13 Lindem, et al. Expires August 17, 2008 [Page 2] Internet-Draft OSPF Multi-Instance Extensions February 2008 1. Introduction OSPFv3 [OSPFV3] includes a mechanism for supporting multiple instances on the same link. OSPFv2 [OSPFV2] could benefit from such a mechanism in order to support multiple routing domains on the same subnet. The OSPFv2 instance ID is reserved for support of separate OSPFv2 protocol instances. This is different from OSPFv3 where it could be used for other purposes such as putting the same link in multiple areas. OSPFv2 supports this capability using a separate subnet or the OSPF multi-area adjacency capability [MULTI-AREA]. 1.1. Requirements notation 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-KEYWORDS]. Lindem, et al. Expires August 17, 2008 [Page 3] Internet-Draft OSPF Multi-Instance Extensions February 2008 2. OSPFv2 Instance Packet Encoding OSPFv2 currently doesn't offer a mechanism to differentiate packets for different instances sent and received on the same interface. In support of this capability, this document introduces a modified packet header format when the Authentication Type field is split into an instance ID and type. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Version # | Type | Packet length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Router ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Area ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Checksum | Instance ID | AuType | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Authentication | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Authentication | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ The OSPFv2 Packet Header Version # The OSPFv2 version number - 2 Type The OSPFv2 packet type as specified [OSPFV2]. Packet length The length of the OSPF protocol packet in bytes. This length includes the standard OSPF header. Router ID The Router ID of the packet's source. Area ID A 32-bit number identifying the area corresponding the packet as specified in [OSPFV2]. Lindem, et al. Expires August 17, 2008 [Page 4] Internet-Draft OSPF Multi-Instance Extensions February 2008 Checksum OSPFv2 standard checksum calculation as specified in specified in [OSPFV2]. Instance ID Enables multiple instances of OSPF to be run over a single link. Each protocol instance would be assigned a separate Instance ID; the Instance ID has local subnet significance only. Received packets with an Instance ID not equal to one of the configured OSPF Instance IDs on the receiving interface MUST be discarded. AuType OSPFv2 authentication type as specified in specified in [OSPFV2]. Authentication A 64-bit field for Authentication type dependent authentication data. Lindem, et al. Expires August 17, 2008 [Page 5] Internet-Draft OSPF Multi-Instance Extensions February 2008 3. OSPF Interface Instance ID OSPF [OSPFV2] describes the conceptual interface data structure in section 9. The OSPF Interface ID will be added to this structure. The Interface Instance ID will default to 0. Its setting to a non- zero value may be accomplished through configuration or implied by some usage beyond the scope of this document. 3.1. Sending and Receiving OSPF packets When sending OSPF packets, if the interface instance ID has a non- zero value, it will be set in the OSPF packet header. When receiving OSPF packets, the OSPFv2 Header Instance ID will be used to aid in demultiplexing the packet and routing it to the correct OSPFv2 instance. Received packets with an Instance ID not equal to one of the configured OSPF Instance IDs on the receiving interface MUST be discarded. Lindem, et al. Expires August 17, 2008 [Page 6] Internet-Draft OSPF Multi-Instance Extensions February 2008 4. Backward Compatibility and Deployment Considerations When there are OSPF routers that support this capability on the same broadcast capable link as those that do not, packets with non-zero Instance IDs will be received by those legacy routers. Since the authentication type will be unknown to them they will not process the packet. This is exactly what is desired. Previously, a concern was that some implementations will log every single authentication type mismatch. However, discussions with implementers have led us to the conclusion that this is not as current a problem as we'd first thought and it will be even less of a problem by the time the mechanism in this draft is standardized, implemented, and deployed. Hence, the controversial mechanisms to avoid legacy routers receiving multicast OSPF packets with a non-zero instance ID have been removed. Lindem, et al. Expires August 17, 2008 [Page 7] Internet-Draft OSPF Multi-Instance Extensions February 2008 5. Security Considerations The enhancement described herein doesn't add any additional security considerations to OSPFv2. Security considerations for OSPFv2 are described in [OSPFV2]. Given that only three OSPFv2 authentication types have been standardized, it seems reasonable to reduce the OSPF packet header field to 8 bits. Lindem, et al. Expires August 17, 2008 [Page 8] Internet-Draft OSPF Multi-Instance Extensions February 2008 6. IANA Considerations A new registry will be added for OSPF Instance IDs. The allocation is TBD. Dependent on the approach, two new multicast addresses from the IPv4 Multicast Addresses registry would need to be allocated. Dependent on the approach, a new protocol ID may need to be allocated from the Protocol Numbers registry. Lindem, et al. Expires August 17, 2008 [Page 9] Internet-Draft OSPF Multi-Instance Extensions February 2008 7. Normative References [MULTI-AREA] Mirtorabi, S., Psenak, P., Lindem, A., and A. Oswal, "OSPF Multi-Area Adjacency", draft-ietf-ospf-multi-area-adj-07.txt (work in progress). [OSPFV2] Moy, J., "OSPF Version 2", RFC 2328, April 1998. [OSPFV3] Coltun, R., Ferguson, D., and J. Moy, "OSPF for IPv6", RFC 2740, April 2007. [RFC-KEYWORDS] Bradner, S., "Key words for use in RFC's to Indicate Requirement Levels", RFC 2119, March 1997. Lindem, et al. Expires August 17, 2008 [Page 10] Internet-Draft OSPF Multi-Instance Extensions February 2008 Appendix A. Acknowledgments The RFC text was produced using Marshall Rose's xml2rfc tool. Thanks to Paul Wells for commenting on the backward compatibility issues. Lindem, et al. Expires August 17, 2008 [Page 11] Internet-Draft OSPF Multi-Instance Extensions February 2008 Authors' Addresses Acee Lindem Redback Networks 102 Carric Bend Court Cary, NC 27519 USA Email: acee@redback.com Abhay Roy Cisco Systems 225 West Tasman Drive San Jose, CA 95134 USA Email: akr@cisco.com Sina Mirtorabi Force10 Networks 350 Holger Way San Jose, CA 95134 USA Email: sina@force10networks.com Lindem, et al. Expires August 17, 2008 [Page 12] Internet-Draft OSPF Multi-Instance Extensions February 2008 Full Copyright Statement Copyright (C) The IETF Trust (2008). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Intellectual Property The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79. Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org. Acknowledgment Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA). Lindem, et al. Expires August 17, 2008 [Page 13]