Network Working Group                                          A. Lindem
Internet-Draft                                                  Ericsson
Updates: 2328 (if approved)                                       A. Roy
Intended status: Standards Track                            S. Mirtorabi
Expires: June 28, 2012                                     Cisco Systems
                                                       December 26, 2011


                     OSPF Multi-Instance Extensions
                 draft-ietf-ospf-multi-instance-07.txt

Abstract

   OSPFv3 includes a mechanism for supporting multiple instances on the
   same interface.  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 interface in multiple areas.
   OSPFv2 supports this capability using a separate subnet or the OSPF
   multi-area adjacency capability.

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."

   This Internet-Draft will expire on June 28, 2012.

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



Lindem, et al.            Expires June 28, 2012                 [Page 1]


Internet-Draft       OSPF Multi-Instance Extensions        December 2011


   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 Simplified BSD License.


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.  State Sharing Optimizations between OSPF instances . . . . . .  7
   5.  OSPFv2 Authentication Impacts  . . . . . . . . . . . . . . . .  8
   6.  Backward Compatibility and Deployment Considerations . . . . .  9
   7.  Security Considerations  . . . . . . . . . . . . . . . . . . . 10
   8.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 11
   9.  References . . . . . . . . . . . . . . . . . . . . . . . . . . 12
     9.1.  Normative References . . . . . . . . . . . . . . . . . . . 12
     9.2.  Informative References . . . . . . . . . . . . . . . . . . 12
   Appendix A.  Acknowledgments . . . . . . . . . . . . . . . . . . . 13
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 14



























Lindem, et al.            Expires June 28, 2012                 [Page 2]


Internet-Draft       OSPF Multi-Instance Extensions        December 2011


1.  Introduction

   OSPFv3 [OSPFV3] includes a mechanism for supporting multiple
   instances on the same interface.  OSPFv2 [OSPFV2] could benefit from
   such a mechanism in order to support multiple routing domains on the
   same subnet.  The OSPFv2 Interface 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 interface 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 June 28, 2012                 [Page 3]


Internet-Draft       OSPF Multi-Instance Extensions        December 2011


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 with the Authentication Type field split into an
   Instance ID and AuType.


       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 OSPF version number - 2

   Type
      The OSPF 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 June 28, 2012                 [Page 4]


Internet-Draft       OSPF Multi-Instance Extensions        December 2011


   Checksum
      OSPF standard checksum calculation as specified in specified in
      [OSPFV2].

   Instance ID
      Enables multiple instances of OSPF to be used on a single
      interface.  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
      Instance IDs corresponding to one of the configured OSPF Instances
      for the receiving interface MUST be discarded.

   AuType
      OSPF authentication type as specified in specified in [OSPFV2].

   Authentication
      A 64-bit field for authentication data (dependent on the
      Authentication Type as specified in the AuType field).

































Lindem, et al.            Expires June 28, 2012                 [Page 5]


Internet-Draft       OSPF Multi-Instance Extensions        December 2011


3.  OSPF Interface Instance ID

   OSPF [OSPFV2] describes the conceptual interface data structure in
   section 9.  The OSPF Interface Instance ID will be added to this
   structure.  The OSPF 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 OSPF Interface Instance ID has a
   non-zero value, it will be set in the OSPF packet header.  When
   receiving OSPF packets, the OSPF Header Instance ID will be used to
   aid in demultiplexing the packet and routing it to the correct OSPF
   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 June 28, 2012                 [Page 6]


Internet-Draft       OSPF Multi-Instance Extensions        December 2011


4.  State Sharing Optimizations between OSPF instances

   This is beyond the scope of this draft and is an area for further
   study.















































Lindem, et al.            Expires June 28, 2012                 [Page 7]


Internet-Draft       OSPF Multi-Instance Extensions        December 2011


5.  OSPFv2 Authentication Impacts

   Now that the AuType OSPFv2 header field has been reduced from 2
   octets to 1 octet, OSPF routers not supporting this specification
   will fail packet authentication for any instance other than the
   default (i.e., the Base IPv4 Unicast Instance).  This is solely due
   to the difference in field definition as opposed to any explicit
   change to OSPFv2 authentication as described in Appendix D of RFC
   2328 [OSPFV2] and RFC 5709 [RFC5709].  However, this is exactly what
   is desired since OSPF routers not supporting this specification
   should only support the default instance (Refer to Section 6).








































Lindem, et al.            Expires June 28, 2012                 [Page 8]


Internet-Draft       OSPF Multi-Instance Extensions        December 2011


6.  Backward Compatibility and Deployment Considerations

   When there are OSPF routers that support OSPF Multi-Instance
   extensions on the same broadcast capable interface as OSPF routers
   that do not, packets with non-zero OSPF header Instance IDs will be
   received by those legacy OSPF routers.  Since the non-zero Instance
   ID will be included in the AuType by these legacy OSPF routers, it
   will be misinterpreted as a mismatched authentication type and the
   packet will be dropped.  This is exactly what is expected and
   desired.

   Previously, there was concern that certain implementations would log
   every single authentication type mismatch.  Additionally, if
   ospfIfAuthFailure SNMP generation is enabled as specified in
   [OSPF-MIB], a separate trap would be generated for each received OSPF
   packet with a non-zero Instance ID.  However, discussions with
   implementers have led us to the conclusion that this is not as severe
   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.  Most implementations will dampen both the logging of
   errors and the generation of identical SNMP traps.  Hence, the more
   drastic mechanisms to avoid legacy OSPF routers from receiving
   multicast OSPF packets with non-zero Instance IDs have been removed.




























Lindem, et al.            Expires June 28, 2012                 [Page 9]


Internet-Draft       OSPF Multi-Instance Extensions        December 2011


7.  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 June 28, 2012                [Page 10]


Internet-Draft       OSPF Multi-Instance Extensions        December 2011


8.  IANA Considerations

   A new registry will be added for OSPF Instance IDs.  The allocation
   of OSPF Instance IDs is described below.

            +-------------+----------------------+--------------------+
            | Value/Range | Designation          | Assignment Policy  |
            +-------------+----------------------+--------------------+
            | 0           | Base IPv4 Unicast    | Assigned           |
            |             | Instance             |                    |
            |             |                      |                    |
            | 1           | Base IPv4 Multicast  | Assigned           |
            |             | Instance             |                    |
            |             |                      |                    |
            | 2           | Base IPv4 In-band    | Assigned           |
            |             | Management Instance  |                    |
            |             |                      |                    |
            | 3-127       | Local Policy         | Reserved for local |
            |             |                      | policy assignment  |
            |             |                      |                    |
            | 128-255     | Unassigned           | Standards Action   |
            +-------------+----------------------+--------------------+

                            OSPFv2 Instance ID



























Lindem, et al.            Expires June 28, 2012                [Page 11]


Internet-Draft       OSPF Multi-Instance Extensions        December 2011


9.  References

9.1.  Normative References

   [OSPFV2]   Moy, J., "OSPF Version 2", RFC 2328, April 1998.

   [OSPFV3]   Coltun, R., Ferguson, D., Moy, J., and A. Lindem, "OSPF
              for IPv6", RFC 5340, July 2008.

   [RFC-KEYWORDS]
              Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", RFC 2119, March 1997.

9.2.  Informative References

   [MULTI-AREA]
              Mirtorabi, S., Psenak, P., Lindem, A., and A. Oswal, "OSPF
              Multi-Area Adjacency", RFC 5185, May 2008.

   [OSPF-MIB]
              Joyal, D., Galecki, P., Giacalone, S., Baker, F., and R.
              Coltun, "OSPF Version 2 Management Information Base",
              RFC 4750, December 2006.

   [RFC5709]  Bhatia, M., Manral, V., Fanto, M., White, R., Barnes, M.,
              Li, T., and R. Atkinson, "OSPFv2 HMAC-SHA Cryptographic
              Authentication", RFC 5709, October 2009.
























Lindem, et al.            Expires June 28, 2012                [Page 12]


Internet-Draft       OSPF Multi-Instance Extensions        December 2011


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.

   Thanks to Paul Wells and Vladica Stanisic for commenting during the
   OSPF WG last call.

   Thanks to Manav Bhatia for comments and being the document shepherd.

   Thanks to Magnus Nystrom for comments under the auspicies of the
   Security Directorate review.





































Lindem, et al.            Expires June 28, 2012                [Page 13]


Internet-Draft       OSPF Multi-Instance Extensions        December 2011


Authors' Addresses

   Acee Lindem
   Ericsson
   102 Carric Bend Court
   Cary, NC  27519
   USA

   Email: acee.lindem@ericsson.com


   Abhay Roy
   Cisco Systems
   225 West Tasman Drive
   San Jose, CA  95134
   USA

   Email: akr@cisco.com


   Sina Mirtorabi
   Cisco Systems
   3 West Plumeria Drive
   San Jose, CA  95134
   USA

   Email: sina@cisco.com
























Lindem, et al.            Expires June 28, 2012                [Page 14]