Network Working Group                                        U. Chunduri
Internet-Draft                                             Ericsson Inc.
Intended status: Standards Track                                   X. Xu
Expires: January 3, 2016                                          Huawei
                                                            L. Contreras
                                                          Telefonica I+D
                                                            M. Boucadair
                                                          France Telecom
                                                                L. Jalil
                                                                 Verizon
                                                            July 2, 2015


        Using Operator-defined TLVs for Agile Service Deployment
              draft-chunduri-ospf-operator-defined-tlvs-01

Abstract

   This document proposes a TLV within the body of the OSPF Router
   Information (RI) Opaque LSA, called Operator-defined Sub-TLV
   Container TLV.  Here the term OSPF means both OSPFv2 and OSPFv3.This
   attribute is meant to accommodate policy-based and deployment-
   specific use cases.

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 January 3, 2016.

Copyright Notice

   Copyright (c) 2015 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



Chunduri, et al.         Expires January 3, 2016                [Page 1]


Internet-Draft          Operator-defined Sub-TLVs              July 2015


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

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Requirements Language . . . . . . . . . . . . . . . . . .   3
   2.  Sample Use Cases  . . . . . . . . . . . . . . . . . . . . . .   3
   3.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   4
   4.  Operator-defined Sub-TLV Container TLV  . . . . . . . . . . .   4
   5.  Operator-defined Sub-TLV  . . . . . . . . . . . . . . . . . .   5
   6.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .   7
   7.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   7
   8.  Security Considerations . . . . . . . . . . . . . . . . . . .   7
   9.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   7
     9.1.  Normative References  . . . . . . . . . . . . . . . . . .   7
     9.2.  Informative References  . . . . . . . . . . . . . . . . .   7
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   8

1.  Introduction

   There are some use cases where OSPF is used for service auto-
   discovery by using node administrative tags [I-D.ietf-ospf-node-
   admin-tag] . One major benefit of using administrative tags rather
   than IANA defined TLVs or sub-TLVs to indicate different services is
   to facilitate the rapid deployment of new services without any need
   for the standardization of those TLVs or sub-TLVs.  However, there
   are some special use cases where the service to be advertised has one
   or more attributes which need to be advertised as well.  In such
   case, the administrative tag is not much applicable anymore.

   To inherit the benefit of administrative tags (i.e., allowing
   operators to use OSPF for service auto-discovery without the need of
   any standardization process) while meeting the requirement of
   advertising services and their associated attributes, this document
   proposes a TLV within the body of the OSPF Router Information (RI)
   Opaque LSA, called Operator-defined Sub-TLV Container TLV.  With such
   TLV, operators could flexibly define one or more sub-TLVs indicating
   one or more services and their associated attributes without relying
   on any standardization process.  This document gives a framework
   where operator information can be transparently injected into the
   routing domain.




Chunduri, et al.         Expires January 3, 2016                [Page 2]


Internet-Draft          Operator-defined Sub-TLVs              July 2015


   The characterization of the TLV and its associated sub-SLVs is local
   to the each administrative domain.  Defining new sub-TLVs is
   therefore deployment-specific and policy-based.  OSPF here denotes
   both OSPFv2 and OSPFv3.

1.1.  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 [RFC2119].

2.  Sample Use Cases

   There can be several possible use cases and applications for
   Operator-defined Sub-TLV Container TLV defined in Section 4.  This
   section provides few examples how operators can deploy services
   rapidly by advertising associated attributes.  However, the
   illustrations listed below are not meant to be restrictive or
   exhaustive.

   o Advertising Service Functions and it's attributes
         Service Function nodes implementing various service functions
         within the network need to advertise each service function they
         are offering so that a control and/or management entity can
         decide which instance to invoke for the delivery of an added-
         value service or to react to particular events (such as failure
         of a service function instance).  Each service can be
         identified by a dedicated sub-TLV type while the associated
         attributes/identifiers of the service are indicated by the
         value part of the corresponding sub-TLV.  These identifiers MAY
         not be globally unique and MAY not be exposed outside of a
         given administrative domain.  The Operator-defined sub-TLV
         Container TLV could appear multiple times within a given Router
         Information (RI) Opaque LSA, when more than one service
         function instances needs to be advertised by a given node based
         on a local policy.

         Advertising service functions and it's attributes also allow a
         controller to adjust its policies and react dynamically.
         Typical actions would be, to withdraw a service instance from
         being invoked in the context of a service delivery, update load
         balancing polices, dynamically activate a backup instance, etc.

         The mechanisms, on how service information and attributes are
         used by an external controller (for example to steer the
         traffic) is beyond the scope of this document.

   o Dissemination of dynamic information



Chunduri, et al.         Expires January 3, 2016                [Page 3]


Internet-Draft          Operator-defined Sub-TLVs              July 2015


         Dissemination of dynamic information that MAY trigger a
         decision-making process at a central controller or an external
         entity, controlled by the Operator to decide whether, for
         example:

         *  Mobile OSPF routers can use this attribute to leak their
            locations using the operator-defined TLV.  For example, the
            collected information is used by an off-line Traffic
            Engineering (TE) engine to tweak OSPF metrics.

         *  Use the operator-defined TLV to disseminate a planned
            maintenance operation date.  This can be used to notify a
            service node for e.g., a media gateway, CE, etc.

         *  To put some links in a sleep mode for the sake of power
            consumption optimization.

   The proposed attribute in this document is operator-defined.  As
   such, it is the responsibility of the provider to decide which
   information can be conveyed as per the pre-defined format specific to
   the deployment by means of the operator-defined attributes.  It is
   out of scope of this document to enumerate an exhaustive list of
   deployment use cases.

3.  Terminology

   This memo makes use of the terms defined in [RFC4970].

4.  Operator-defined Sub-TLV Container TLV

   A new TLV within the body of the OSPFv2 and OSPFv3 RI Opaque LSA,
   called Operator-defined Sub-TLV Container TLV is defined to carry one
   or more operator-defined sub-TLVs.

   The format of the Operator-defined Sub-TLV Container TLV is shown in
   Figure 1.















Chunduri, et al.         Expires January 3, 2016                [Page 4]


Internet-Draft          Operator-defined Sub-TLVs              July 2015


        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            |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                First Operator-defined Sub-TLV                 |
       o                                                               o
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       // ...                                                         //
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |             Last Operator-defined Sub-TLV                     |
       o                                                               o
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

             Figure 1: Operator-defined Sub-TLV Container TLV

   Type: TBD Section 7

   Length: A 16-bit field that indicates the length of the value portion
   in octets.  It MUST be multiple of 4 octets dependent on the number
   of Operator-defined Sub-TLVs advertised.

   Value: Contains one or more nested TLV triplets of operator-defined
   sub-TLVs as defined in Section 5.

   There can be more than one TLV of these possible and the flooding
   scope of this TLV depends on the application.  Being part of the RI
   Opaque LSA, the Operator-defined sub-TLV Container TLV inherits
   applicability as well as restrictions as specified in Section 3 of
   [RFC4970].

5.  Operator-defined Sub-TLV

   The operator-defined sub-TLV has the following structure and can be
   part of the Container TLV as defined in Section 4 within the body of
   the OSPF RI LSA.













Chunduri, et al.         Expires January 3, 2016                [Page 5]


Internet-Draft          Operator-defined Sub-TLVs              July 2015


        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            |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |        Attribute Length       |  Attribute Value (variable)   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       // ...                                                         //
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |        Attribute Length       |  Attribute Value (variable)   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                    Figure 2: Operator-defined Sub-TLV

   Type: Per Operator/Local Policy.

   Length: A 16-bit field that indicates the length of the value portion
   in octets and will be padded/formatted as described in Section 2.1 of
   [RFC4970].

   Value: Represents the associated attribute of the service or Type
   defined locally (i.e., within a single administrative domain).  The
   Value field contains one or more {Attribute-Len, Attribute-value}
   tuple.  Attribute Length is of 2 bytes, for fixed formatting and
   Attribute value as represented by attribute length.  All multi byte
   attribute values MUST be encoded in Network Byte Order (NBO).  If
   multiple fixed length values have to be represented, those SHOULD be
   represented with multiple {Attribute-Len, Attribute-value} tuples.

   The meaning of the operator-defined sub-TLV is totally opaque to OSPF
   and is defined by the network local policy and is controlled via
   configuration.

   Routers advertising the operator-defined sub-TLV are configured to do
   so without knowing (or even explicitly supporting) functionality
   implied by the sub-TLV.

   How a receiving node communicates the operator-defined sub-TLVs with
   the policy manager is outside the scope of this document.

   There is no need for any specification to define any operator-defined
   sub-TLV.  Furthermore, the semantics of the operator-defined sub-TLV
   order has no meaning.  That is, there is no implied meaning to the
   ordering of the operator-defined sub-TLV that indicates a certain
   operation or set of operations that need to be performed based on the
   ordering.  The ordering of operator-defined sub-TLVs and the
   interpretation of the operator-defined sub-TLV is deployment-
   specific.  Routers can be configured with local policies if the order



Chunduri, et al.         Expires January 3, 2016                [Page 6]


Internet-Draft          Operator-defined Sub-TLVs              July 2015


   of sub-TLV must be preserved.  How a router is configured with
   additional instructions (such as order preservation) is
   implementation-specific.

6.  Acknowledgements

   Authors would like to thank Acee Lindem for reviewing and providing
   suggestions on the initial version of the document.  Also thankful to
   Anton Smirnov, Peter Psenak, Chris Bowers and Les Ginsberg for their
   review and comments.

7.  IANA Considerations

   This document includes a request to IANA to allocate a TLV type code
   for the new RI LSA TLV proposed in Section 4 of this document from
   OSPF Router Information (RI) TLVs Registry defined by [RFC4970].

8.  Security Considerations

   As Operator Defined TLV specified in this draft is part of RI LSA,
   this document does not introduce any new security risk other than
   what is specified by [RFC4970].  Security considerations for the base
   OSPF protocol are covered in [RFC2328] and [RFC5340].

9.  References

9.1.  Normative References

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

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

   [RFC4970]  Lindem, A., Shen, N., Vasseur, JP., Aggarwal, R., and S.
              Shaffer, "Extensions to OSPF for Advertising Optional
              Router Capabilities", RFC 4970, July 2007.

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

9.2.  Informative References

   [I-D.ietf-ospf-node-admin-tag]
              Hegde, S., Raghuveer, H., Gredler, H., Shakir, R.,
              Smirnov, A., Li, Z., and B. Decraene, "Advertising per-
              node administrative tags in OSPF", draft-ietf-ospf-node-
              admin-tag-02 (work in progress), June 2015.




Chunduri, et al.         Expires January 3, 2016                [Page 7]


Internet-Draft          Operator-defined Sub-TLVs              July 2015


Authors' Addresses

   Uma Chunduri
   Ericsson Inc.
   300 Holger Way,
   San Jose, California  95134
   USA

   Phone: 408 750-5678
   Email: uma.chunduri@ericsson.com


   Xiaohu Xu
   Huawei

   Email: xuxiaohu@huawei.com


   Luis M. Contreras
   Telefonica I+D
   Ronda de la Comunicacion, s/n
   Sur-3 building, 3rd floor
   Madrid  28050
   Spain

   Email: luismiguel.contrerasmurillo@telefonica.com
   URI:   http://people.tid.es/LuisM.Contreras/


   Mohamed Boucadair
   France Telecom
   Rennes  35000
   France

   Email: mohamed.boucadair@orange.com


   Luay Jalil
   Verizon
   400 International Parkway
   Richardson, Tx  75081
   USA

   Email: luay.jalil@verizon.com







Chunduri, et al.         Expires January 3, 2016                [Page 8]