Network Working Group                                 A. Lindem (Editor)
Internet-Draft                                        Cisco Systems, Inc
Expires: August 8, 2005                                          N. Shen
                                                           Cisco Systems
                                                             R. Aggarwal
                                                        Juniper Networks
                                                              S. Shaffer
                                                     BridgePort Networks
                                                             JP. Vasseur
                                                      Cisco Systems, Inc
                                                        February 7, 2005


    Extensions to OSPF for Advertising Optional Router Capabilities
                       draft-ietf-ospf-cap-06.txt

Status of this Memo

   This document is an Internet-Draft and is subject to all provisions
   of section 3 of RFC 3667.  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 become aware will be disclosed, in accordance with
   RFC 3668.

   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 8, 2005.

Copyright Notice

   Copyright (C) The Internet Society (2005).

Abstract




Lindem (Editor), et al.    Expires August 8, 2005               [Page 1]


Internet-Draft         OSPF Capability Extensions          February 2005


   It is useful for routers in an OSPFv2 or OSPFv3 routing domain to
   know the capabilities of their neighbors and other routers in the
   routing domain.  This draft proposes extensions to OSPFv2 and OSPFv3
   for advertising optional router capabilities.  A new Router
   Information (RI) LSA is proposed for this purpose.

Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.  OSPF Router Information (RI) LSA . . . . . . . . . . . . . . .  4
     2.1   OSPFv2 Router Information (RI) Opaque LSA  . . . . . . . .  4
     2.2   OSPFv3 Router Information (RI) Opaque LSA  . . . . . . . .  5
     2.3   OSPF Router Capabilities TLV . . . . . . . . . . . . . . .  6
     2.4   Assiged OSPF Router Capability Bits  . . . . . . . . . . .  7
     2.5   Flooding Scope of the Router Information LSA . . . . . . .  7
   3.  Router Information LSA Opaque Usage and Applicability  . . . .  9
   4.  Security Considerations  . . . . . . . . . . . . . . . . . . . 10
   5.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 11
   6.  References . . . . . . . . . . . . . . . . . . . . . . . . . . 12
   6.1   Normative References . . . . . . . . . . . . . . . . . . . . 12
   6.2   Informative References . . . . . . . . . . . . . . . . . . . 12
       Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 12
   A.  Acknowledgments  . . . . . . . . . . . . . . . . . . . . . . . 14
       Intellectual Property and Copyright Statements . . . . . . . . 15



























Lindem (Editor), et al.    Expires August 8, 2005               [Page 2]


Internet-Draft         OSPF Capability Extensions          February 2005


1.  Introduction

   It is useful for routers in an OSPFv2 [OSPF] or OSPFv3 [OSPFV3]
   routing domain to know the capabilities of their neighbors and other
   routers in the routing domain.  This can be useful for both the
   advertisement and discovery of OSPFv2 and OSPFv3 capabilities.
   Throughout this document, OSPF will be used when the specification is
   applicable to both OSPFv2 and OSPFv3.  Similiarly, OSPFv2 or OSPFv3
   will be used when the text is protocol specific.

   OSPF uses the options field in LSAs and hello packets to advertise
   optional router capabilities.  In the case of OSFPv2, all the bits in
   this field have been allocated and there is no way to advertise new
   optional capabilities.  This document proposes extensions to OSPF to
   advertise these optional capabilities.  For existing OSPF
   capabilities, backward compatibility issues dictate that this
   advertisement is used primarily for informational purposes.  For
   future OSPF features, this advertimsement MAY be used as the sole
   mechanism for advertisement and discovery.
































Lindem (Editor), et al.    Expires August 8, 2005               [Page 3]


Internet-Draft         OSPF Capability Extensions          February 2005


2.  OSPF Router Information (RI) LSA

   OSPF routers MAY optionally advertise their optional capabilities in
   a link-scoped, area-scoped, or AS-scoped LSA.  For existing OSPF
   capabilities, this advertisement will be used primarily for
   informational purposes.  Future OSPF features could the RI LSA as the
   sole mechanism for advertisement and discovery.  The RI LSA will be
   originated initially when an OSPF router instance is created and
   whenever one of the advertised capabilities is configured or changed.

2.1  OSPFv2 Router Information (RI) Opaque LSA

   OSPFv2 routers will advertise a link scoped, area-scoped, or
   AS-scoped Opaque-LSA [OPAQUE].  The OSPFv2 Router Information LSA has
   an Opaque type of 4 and Opaque ID of 0.


       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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |            LS age             |     Options   |  9, 10 or 11  |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |       4       |                    0                          |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                     Advertising Router                        |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                     LS sequence number                        |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |         LS checksum           |             length            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                                                               |
      +-                            TLV's                            -+
      |                             ...                               |


   The format of the TLV's within the body of a router information LSA
   is the same as the format used by the Traffic Engineering Extensions
   to OSPF [TE].  The LSA payload consists of one or more nested Type/
   Length/Value (TLV) triplets.  The format of each TLV is:












Lindem (Editor), et al.    Expires August 8, 2005               [Page 4]


Internet-Draft         OSPF Capability Extensions          February 2005


      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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |              Type             |             Length            |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                            Value...                           |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


   The Length field defines the length of the value portion in octets
   (thus a TLV with no value portion would have a length of zero).  The
   TLV is padded to four-octet alignment;  padding is not included in
   the length field (so a three octet value would have a length of
   three, but the total size of the TLV would be eight octets).  Nested
   TLV's are also 32-bit aligned.  For example, a one byte value would
   have the length field set to 1, and three octets of padding would be
   added to the end of the value portion of the TLV.  Unrecognized types
   are ignored.

2.2  OSPFv3 Router Information (RI) Opaque LSA

   The OSPFv3 Router Information LSA has a function code of 12 while the
   S1/S2 bit are dependent on the desired flooding scope for the LSA.
   The U bit will be set indicating the OSPFv3 RI LSA should be flooded
   even if it is not understood.  The Link State ID (LSID) value for
   this LSA is 0.  This is unambiguous since an OSPFv3 router will only
   advertise a single RI LSA per flooding scope.
























Lindem (Editor), et al.    Expires August 8, 2005               [Page 5]


Internet-Draft         OSPF Capability Extensions          February 2005


       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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |            LS age             |1|S12|          12             |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                         0  (Link State ID)                    |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                    Advertising Router                         |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                    LS sequence number                         |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |        LS checksum           |             length             |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                                                               |
      +-                            TLV's                            -+
      |                             ...                               |


   The format of the TLV's within the body of a  router information LSA
   as defined in Section 2.1

   When a new Router Information LSA TLV is defined, the specification
   MUST explicitly state whether the TLV is applicable to OSPFv2 only,
   OSPFv3 only, or both OSPFv2 and OSPFv3.

2.3  OSPF Router Capabilities TLV

   The first defined TLV in the body of an RI LSA is the Router
   Capabilities TLV.  A router advertising an RI LSA MUST include the
   Router Capabilities TLV and it MUST be the first TLV in the LSA.
   Additionally, the TLV MUST accurately reflect the OSPF router's
   capabilities in the scope it is advertised.

   The format of the Router Capabilities TLV is as follows:

















Lindem (Editor), et al.    Expires August 8, 2005               [Page 6]


Internet-Draft         OSPF Capability Extensions          February 2005


       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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |              Type             |             Length            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |             Capabilities                                      |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


      Type     A 16 bit field set to 1.
      Length   A 16 bit field that indicates the length of the value
               portion in octets and will be a multiple of 4 octets
               dependent on the number of capabilities advertised. In
               this revision the length will be 4 denoting 4 octets of
               capability bits.
      Value    A variable length sequence of capability flags rounded
               to a multiple of 4 octects padded with undefined bits.
               In this revision, there are 4 octets of capability bits.


   The Router Capabilities TLV MAY be followed by optional TLV's that
   further specify a capability.

2.4  Assiged OSPF Router Capability Bits

   The following bits in the first capability flag have been assigned:


      Bit       Capabilities

      0-3       Unassigned
      4         OSPF graceful restart capable [GRACE]
      5         OSPF graceful restart helper  [GRACE]
      6         OSPF Stub Router support [STUB]
      7         OSPF Traffic Engineering support [TE]
      8         OSPF point-to-point over LAN [P2PLAN]
      9         OSPF Experimental TE [EXPTE]
      10-31     Future assignments



2.5  Flooding Scope of the Router Information LSA

   The flooding scope for a Router Information LSA is determined by the
   LSA type.  For OSPFv2, type 9 (link-scope), type 10 (area-scoped), or
   a type 11 (AS-scoped) opaque LSA may be flooded.  For OSPFv3, the
   flooding scope is determined by the S1 and S2 bits in the LSA type.
   If AS wide flooding scope is chosen, the originating router should



Lindem (Editor), et al.    Expires August 8, 2005               [Page 7]


Internet-Draft         OSPF Capability Extensions          February 2005


   also advertise area scoped LSA(s) into any attached NSSA area(s).  An
   OSPF router MAY advertise different capabilities when both NSSA area
   scoped LSA(s) and an AS scoped LSA is advertised.  This allows
   functional capabilities to be limited in scope.  For example, a
   router may be an area border router but only support traffic
   engineering (TE) in a subset of its attached areas.  The choice of
   flooding scope is made by the advertising router and is a matter of
   local policy.  The originating router MAY advertise multiple RI LSAs
   as long as the flooding scopes differ.  TLV flooding scope rules will
   be specified on a per-TLV basis and MUST be specified in the
   accompanying specifications for new Router Information LSA TLVs.








































Lindem (Editor), et al.    Expires August 8, 2005               [Page 8]


Internet-Draft         OSPF Capability Extensions          February 2005


3.  Router Information LSA Opaque Usage and Applicability

   The purpose of the Router Information (RI) LSA is to advertise
   information relating to the aggregate OSPF router.  Normally, this
   should be confined to TLVs with a single value or very few values.
   It is not meant to be a generic container to carry any and all
   information.  The intent is to both limit the size of the RI LSA to
   the point where an OSPF router will always be able to contain the
   TLVs in a single LSA and to keep the task of determining what has
   changed between LSA instances reasonably simple.  Hence, discretion
   and sound engineering judgement MUST be adhered to when deciding
   whether newly proposed TLV(s) in support of a new application are
   advertised in the RI LSA or warrent the creation of an application
   specific LSA.





































Lindem (Editor), et al.    Expires August 8, 2005               [Page 9]


Internet-Draft         OSPF Capability Extensions          February 2005


4.  Security Considerations

   The function described in this document does not create any new
   security issues for the OSPF protocol.  Security considerations for
   the base OSPF protocol are covered in [OSPF].














































Lindem (Editor), et al.    Expires August 8, 2005              [Page 10]


Internet-Draft         OSPF Capability Extensions          February 2005


5.  IANA Considerations

   The following IANA assignments are to be made from existing
   registries:
   1.  The OSPFv2 opaque LSA type 4 will need to be reserved for the
       OSPFv2 RI opaque LSA.
   2.  The OSPFv2 LSA type function code 18 will need to be reserved for
       the OSPFv3 RI LSA.

   New registries are defined for the following purposes:
   1.  Registry for OSPF RI TLVs - The value of 1 for the capabilities
       TLV is defined herein.  All TLV additions are subject to OSPF WG
       review.
   2.  Registry for OSPF Router Capability Flags - The values defined in
       Section 2.3.  All Router Capability TLV additions are subject to
       OSPF WG review.



































Lindem (Editor), et al.    Expires August 8, 2005              [Page 11]


Internet-Draft         OSPF Capability Extensions          February 2005


6.  References

6.1  Normative References

   [OPAQUE]   Coltun, R., "The OSPF Opaque LSA Option", RFC 2370, July
              1998.

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

   [OSPFV3]   Coltun, R., Ferguson, D. and J. Moy, "OSPF for IPv6", RFC
              2740, April 1998.

   [RFC2119]  Bradner, S., "Key words for use in RFC's to Indicate
              Requirement Levels", RFC 2328, March 1977.

   [TE]       Katz, D., Yeung, D. and K. Kompella, "Traffic Engineering
              Extensions to OSPF", RFC 3630, September 2003.

6.2  Informative References

   [EXPTE]   Srisuresh, P. and P. Joseph, "OSPF  OSPF-TE: An
             experimental extension to OSPF for Traffic Engineering",
             draft-srisuresh-ospf-te-07.txt (work in progress).

   [GRACE]   Moy, J., Pillay-Esnault, P. and A. Lindem, "Graceful OSPF
             Restart", RFC 3623, November 2003.

   [P2PLAN]  Shen, N. and A. Zinin, "Point-to-point operation over LAN
             in link-state routing protocols",
             draft-ietf-isis-igp-p2p-over-lan-05.txt (work in progress).

   [STUB]    Retana, A., Nguyen, L., White, R., Zinin, A. and D.
             McPherson, "OSPF Stub Router Advertisement", RFC 3137, June
             2001.

   [T3CAP]   Vasseur, JP., Psenak, P., Yasukawa, S. and JL. Le Roux,
             "OSPF MPLS Traffic Engineering Capabilities",
             draft-vasseur-ospf-te-caps-00.txt (work in progress).













Lindem (Editor), et al.    Expires August 8, 2005              [Page 12]


Internet-Draft         OSPF Capability Extensions          February 2005


Authors' Addresses

   Acee Lindem
   Cisco Systems, Inc
   7025 Kit Creek Road
   Research Triangle Park, NC  27709
   USA

   EMail: acee@cisco.com


   Naiming Shen
   Cisco Systems
   225 West Tasman Drive
   San Jose, CA  95134
   USA

   EMail: naiming@cisco.com


   Rahul Aggarwal
   Juniper Networks
   1194 N. Mathilda Ave.
   Sunnyvale, CA  94089
   USA

   EMail: rahul@juniper.net


   Scott Shaffer
   BridgePort Networks
   One Main Street, 7th Floor
   Cambridge, MA  02142
   USA

   EMail: sshafferl@bridgeport-networks.com


   Jean-Philippe Vasseur
   Cisco Systems, Inc
   300 Beaver Brook Road
   Boxborough, MA  01719
   USA

   EMail: jpv@cisco.com






Lindem (Editor), et al.    Expires August 8, 2005              [Page 13]


Internet-Draft         OSPF Capability Extensions          February 2005


Appendix A.  Acknowledgments

   The idea for this work grew out of a conversation with Andrew Partan
   and we would like to thank him for his contribution.  The authors
   would like to thanks Peter Psenak for his review and helpful comments
   early versions of the draft.

   Comments from Abhay Roy, Vishwas Manral, Vivek Dubey, and Adrian
   Farrel were incorporated into the final draft version.

   The RFC text was produced using Marshall Rose's xml2rfc tool.








































Lindem (Editor), et al.    Expires August 8, 2005              [Page 14]


Internet-Draft         OSPF Capability Extensions          February 2005


Intellectual Property Statement

   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.


Disclaimer of Validity

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


Copyright Statement

   Copyright (C) The Internet Society (2005).  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.


Acknowledgment

   Funding for the RFC Editor function is currently provided by the
   Internet Society.




Lindem (Editor), et al.    Expires August 8, 2005              [Page 15]