[Docs] [txt|pdf|xml|html] [Tracker] [WG] [Email] [Diff1] [Diff2] [Nits]

Versions: (draft-xu-isis-encapsulation-cap) 00 01

ISIS Working Group                                            X. Xu, Ed.
Internet-Draft                                                    Huawei
Intended status: Standards Track                        B. Decraene, Ed.
Expires: October 23, 2017                                         Orange
                                                               R. Raszuk
                                                            Bloomberg LP
                                                             U. Chunduri
                                                                  Huawei
                                                            L. Contreras
                                                          Telefonica I+D
                                                                L. Jalil
                                                                 Verizon
                                                          April 21, 2017


               Advertising Tunnelling Capability in IS-IS
                  draft-ietf-isis-encapsulation-cap-01

Abstract

   Some networks use tunnels for a variety of reasons.  A large variety
   of tunnel types are defined and the ingress needs to select a type of
   tunnel which is supported by the egress.  This document defines how
   to advertise egress tunnel capabilities in IS-IS Router Capability
   TLV.

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

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 October 23, 2017.



Xu, et al.              Expires October 23, 2017                [Page 1]


Internet-Draft                                                April 2017


Copyright Notice

   Copyright (c) 2017 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.  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
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  Advertising Encapsulation Capability  . . . . . . . . . . . .   3
   4.  Tunnel Encapsulation Type . . . . . . . . . . . . . . . . . .   3
   5.  Tunnel Encapsulation Attribute  . . . . . . . . . . . . . . .   5
     5.1.  Tunnel Parameters sub-TLV . . . . . . . . . . . . . . . .   5
     5.2.  Encapsulated Protocol sub-TLV . . . . . . . . . . . . . .   6
     5.3.  End Point sub-TLV . . . . . . . . . . . . . . . . . . . .   6
     5.4.  Color sub-TLV . . . . . . . . . . . . . . . . . . . . . .   6
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   6
     6.1.  IS-IS Router Capability . . . . . . . . . . . . . . . . .   6
     6.2.  IGP Tunnel Encapsulation Types Registry . . . . . . . . .   6
     6.3.  IGP Tunnel Encapsulation Attribute Types Registry . . . .   7
   7.  Security Considerations . . . . . . . . . . . . . . . . . . .   8
   8.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .   8
   9.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   8
     9.1.  Normative References  . . . . . . . . . . . . . . . . . .   8
     9.2.  Informative References  . . . . . . . . . . . . . . . . .   9
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  11

1.  Introduction

   Some networks use tunnels for a variety of reasons, such as:

   o  Partial deployment of MPLS-SPRING as described in
      [I-D.xu-mpls-unified-source-routing-instruction], where IP tunnels
      are used between MPLS-SPRING-enabled routers so as to traverse
      non- MPLS routers.

   o  Partial deployment of MPLS-BIER as described in Section 6.9 of
      [I-D.ietf-bier-architecture], where IP tunnels are used between



Xu, et al.              Expires October 23, 2017                [Page 2]


Internet-Draft                                                April 2017


      MPLS-BIER-capable routers so as to traverse non MPLS-BIER
      [I-D.ietf-bier-mpls-encapsulation] routers.

   o  Partial deployment of IPv6 (resp.  IPv4) in IPv4 (resp.  IPv6)
      networks as described in [RFC5565], where IPvx tunnels are used
      between IPvx-enabled routers so as to traverse non-IPvx routers.

   o  Remote Loop Free Alternate repair tunnels as described in
      [RFC7490], where tunnels are used between the Point of Local
      Repair and the selected PQ node.

   The ingress needs to select a type of tunnel which is supported by
   the egress.  This document describes how to use IS-IS Router
   Capability TLV to advertise the egress tunnelling capabilities of
   nodes.

2.  Terminology

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

3.  Advertising Encapsulation Capability

   Routers advertises their supported encapsulation type(s) by
   advertising a new sub-TLV of the IS-IS Router CAPABILITY TLV
   [RFC4971], referred to as Encapsulation Capability sub-TLV.  This
   sub-TLV SHOULD NOT appear more than once within a given IS-IS Router
   CAPABILITY TLV.  The scope of the advertisement depends on the
   application but it is recommended that it SHOULD be domain-wide.  The
   Type code of the Encapsulation Capability sub-TLV is TBD1, the Length
   value is variable, and the Value field contains one or more Tunnel
   Encapsulation Type sub-TLVs.  Each Encapsulation Type sub-TLVs
   indicates a particular encapsulation format that the advertising
   router supports.

4.  Tunnel Encapsulation Type

   The Tunnel Encapsulation Type sub-TLV is structured as follows:

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




Xu, et al.              Expires October 23, 2017                [Page 3]


Internet-Draft                                                April 2017


      Tunnel Type (1 octets): identifies the type of tunneling
      technology being signaled.  This document defines the following
      types:

      1.   L2TPv3 over IP [RFC3931] : Type code=1;

      2.   GRE [RFC2784] : Type code=2;

      3.   Transmit tunnel endpoint [RFC5566] : Type code=3;

      4.   IPsec in Tunnel-mode [RFC5566] : Type code=4;

      5.   IP in IP tunnel with IPsec Transport Mode [RFC5566] : Type
           code=5;

      6.   MPLS-in-IP tunnel with IPsec Transport Mode [RFC5566] : Type
           code=6;

      7.   IP in IP [RFC2003] [RFC4213]: Type code=7;

      8.   VXLAN [RFC7348] : Type code=8;

      9.   NVGRE [RFC7637] : Type code=9;

      10.  MPLS [RFC3032] : Type code=10;

      11.  MPLS-in-GRE [RFC4023] : Type code=11;

      12.  VXLAN GPE [I-D.ietf-nvo3-vxlan-gpe] : Type code=12;

      13.  MPLS-in-UDP [RFC7510] : Type code=13;

      14.  MPLS-in-UDP-with-DTLS [RFC7510] : Type code=14;

      15.  MPLS-in-L2TPv3 [RFC4817] : Type code=15;

      16.  GTP: Type code=16;

      Unknown types are to be ignored and skipped upon receipt.

      Length (1 octets): unsigned integer indicating the total number of
      octets of the value field.

      Value (variable): zero or more Tunnel Encapsulation Attribute sub-
      TLVs as defined in Section 5.






Xu, et al.              Expires October 23, 2017                [Page 4]


Internet-Draft                                                April 2017


5.  Tunnel Encapsulation Attribute

   The Tunnel Encapsulation Attribute sub-TLV is structured as as
   follows:

                           +-----------------------------------+
                           |      Sub-TLV Type (1 Octet)       |
                           +-----------------------------------+
                           |     Sub-TLV Length (1 Octet)      |
                           +-----------------------------------+
                           |     Sub-TLV Value (Variable)      |
                           |                                   |
                           +-----------------------------------+

      Sub-TLV Type (1 octet): each sub-TLV type defines a certain
      property about the tunnel TLV that contains this sub-TLV.  The
      following are the types defined in this document:

      1.  Encapsulation Parameters: sub-TLV type = 1; (See Section 5.1)

      2.  Encapsulated Protocol: sub-TLV type = 2; (See Section 5.2)

      3.  End Point: sub-TLV type = 3; (See Section 5.3)

      4.  Color: sub-TLV type = 4; (See Section 5.4)

      Sub-TLV Length (1 octet): unsigned integer indicating the total
      number of octets of the sub-TLV value field.

      Sub-TLV Value (variable): encodings of the value field depend on
      the sub-TLV type as enumerated above.  The following sub-sections
      define the encoding in detail.

   Any unknown sub-TLVs MUST be ignored and skipped.  However, if the
   TLV is understood, the entire TLV MUST NOT be ignored just because it
   contains an unknown sub-TLV.

   If a sub-TLV is erroneous, this specific Tunnel Encapsulation MUST be
   ignored and skipped.  However, others Tunnel Encapsulations MUST be
   considered.

5.1.  Tunnel Parameters sub-TLV

   This sub-TLV has its format defined in [RFC5512] under the name
   Encapsulation sub-TLV.






Xu, et al.              Expires October 23, 2017                [Page 5]


Internet-Draft                                                April 2017


5.2.  Encapsulated Protocol sub-TLV

   This sub-TLV has its format defined in [RFC5512] under the name
   Protocol Type.

5.3.  End Point sub-TLV

   The value field carries the Network Address to be used as tunnel
   destination address.

   If length is 4, the Address Family (AFI) is IPv4.

   If length is 16, the Address Family (AFI) is IPv6.

5.4.  Color sub-TLV

   The valued field is a 4 octets opaque unsigned integer.

   The color value is user defined and configured locally on the
   routers.  It may be used by the service providers to define policies.

6.  IANA Considerations

6.1.  IS-IS Router Capability

   This document requests IANA to allocate a new code point from
   registry IS-IS Router CAPABILITY TLV.

       Value   TLV Name                               Reference
       -----   ------------------------------------   -------------
       TBD1    Tunnel Capabilities                    This document

6.2.  IGP Tunnel Encapsulation Types Registry

   This document requests IANA to create a new registry "IGP Tunnel
   Encapsulation Types" with the following registration procedure:















Xu, et al.              Expires October 23, 2017                [Page 6]


Internet-Draft                                                April 2017


              Registry Name: IGP Tunnel Encapsulation Type.

   Value      Name                                         Reference
   -------    ------------------------------------------   -------------
         0    Reserved                                     This document
         1    L2TPv3 over IP                               This document
         2    GRE                                          This document
         3    Transmit tunnel endpoint                     This document
         4    IPsec in Tunnel-mode                         This document
         5    IP in IP tunnel with IPsec Transport Mode    This document
         6    MPLS-in-IP tunnel with IPsec Transport Mode  This document
         7    IP in IP                                     This document
         8    VXLAN                                        This document
         9    NVGRE                                        This document
        10    MPLS                                         This document
        11    MPLS-in-GRE                                  This document
        12    VXLAN-GPE                                    This document
        13    MPLS-in-UDP                                  This document
        14    MPLS-in-UDP-with-DTLS                        This document
        15    MPLS-in-L2TPv3                               This document
        16    GTP                                          This document
    17-250    Unassigned
   251-254    Experimental                                 This document
       255    Reserved                                     This document

   Assignments of Encapsulation Types are via Standards Action
   [RFC5226].

6.3.  IGP Tunnel Encapsulation Attribute Types Registry

   This document requests IANA to create a new registry "IGP Tunnel
   Encapsulation Attribute Types" with the following registration
   procedure:

              Registry Name: IGP Tunnel Encapsulation Attribute Types.

   Value      Name                                      Reference
   -------    ------------------------------------      -------------
         0    Reserved                                  This document
         1    Encapsulation parameters                  This document
         2    Protocol                                  This document
         3    End Point                                 This document
         4    Color                                     This document
     5-250    Unassigned
   251-254    Experimental                              This document
       255    Reserved                                  This document





Xu, et al.              Expires October 23, 2017                [Page 7]


Internet-Draft                                                April 2017


   Assignments of Encapsulation Attribute Types are via Standards Action
   [RFC5226].

7.  Security Considerations

   Security considerations applicable to softwires can be found in the
   mesh framework [RFC5565].  In general, security issues of the tunnel
   protocols signaled through this IGP capability extension are
   inherited.

   If a third party is able to modify any of the information that is
   used to form encapsulation headers, to choose a tunnel type, or to
   choose a particular tunnel for a particular payload type, user data
   packets may end up getting misrouted, misdelivered, and/or dropped.

   Security considerations for the base IS-IS protocol are covered in
   [RFC1195].

8.  Acknowledgements

   This document is partially inspired by [RFC5512].

   The authors would like to thank Carlos Pignataro and Karsten Thomann
   for their valuable comments on this draft.

9.  References

9.1.  Normative References

   [RFC1700]  Reynolds, J. and J. Postel, "Assigned Numbers", RFC 1700,
              DOI 10.17487/RFC1700, October 1994,
              <http://www.rfc-editor.org/info/rfc1700>.

   [RFC2003]  Perkins, C., "IP Encapsulation within IP", RFC 2003,
              DOI 10.17487/RFC2003, October 1996,
              <http://www.rfc-editor.org/info/rfc2003>.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <http://www.rfc-editor.org/info/rfc2119>.

   [RFC2784]  Farinacci, D., Li, T., Hanks, S., Meyer, D., and P.
              Traina, "Generic Routing Encapsulation (GRE)", RFC 2784,
              DOI 10.17487/RFC2784, March 2000,
              <http://www.rfc-editor.org/info/rfc2784>.





Xu, et al.              Expires October 23, 2017                [Page 8]


Internet-Draft                                                April 2017


   [RFC3931]  Lau, J., Ed., Townsley, M., Ed., and I. Goyret, Ed.,
              "Layer Two Tunneling Protocol - Version 3 (L2TPv3)",
              RFC 3931, DOI 10.17487/RFC3931, March 2005,
              <http://www.rfc-editor.org/info/rfc3931>.

   [RFC4213]  Nordmark, E. and R. Gilligan, "Basic Transition Mechanisms
              for IPv6 Hosts and Routers", RFC 4213,
              DOI 10.17487/RFC4213, October 2005,
              <http://www.rfc-editor.org/info/rfc4213>.

   [RFC4971]  Vasseur, JP., Ed., Shen, N., Ed., and R. Aggarwal, Ed.,
              "Intermediate System to Intermediate System (IS-IS)
              Extensions for Advertising Router Information", RFC 4971,
              DOI 10.17487/RFC4971, July 2007,
              <http://www.rfc-editor.org/info/rfc4971>.

   [RFC5226]  Narten, T. and H. Alvestrand, "Guidelines for Writing an
              IANA Considerations Section in RFCs", BCP 26, RFC 5226,
              DOI 10.17487/RFC5226, May 2008,
              <http://www.rfc-editor.org/info/rfc5226>.

9.2.  Informative References

   [I-D.ietf-bier-architecture]
              Wijnands, I., Rosen, E., Dolganow, A., Przygienda, T., and
              S. Aldrin, "Multicast using Bit Index Explicit
              Replication", draft-ietf-bier-architecture-05 (work in
              progress), October 2016.

   [I-D.ietf-bier-mpls-encapsulation]
              Wijnands, I., Rosen, E., Dolganow, A., Tantsura, J.,
              Aldrin, S., and I. Meilik, "Encapsulation for Bit Index
              Explicit Replication in MPLS and non-MPLS Networks",
              draft-ietf-bier-mpls-encapsulation-06 (work in progress),
              December 2016.

   [I-D.ietf-nvo3-vxlan-gpe]
              Maino, F., Kreeger, L., and U. Elzur, "Generic Protocol
              Extension for VXLAN", draft-ietf-nvo3-vxlan-gpe-03 (work
              in progress), October 2016.

   [I-D.xu-mpls-unified-source-routing-instruction]
              Xu, X., Bryant, S., Raszuk, R., Chunduri, U., Contreras,
              L., Jalil, L., and H. Assarpour, "Unified Source Routing
              Instruction using MPLS Label Stack", draft-xu-mpls-
              unified-source-routing-instruction-00 (work in progress),
              March 2017.




Xu, et al.              Expires October 23, 2017                [Page 9]


Internet-Draft                                                April 2017


   [RFC1195]  Callon, R., "Use of OSI IS-IS for routing in TCP/IP and
              dual environments", RFC 1195, DOI 10.17487/RFC1195,
              December 1990, <http://www.rfc-editor.org/info/rfc1195>.

   [RFC3032]  Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y.,
              Farinacci, D., Li, T., and A. Conta, "MPLS Label Stack
              Encoding", RFC 3032, DOI 10.17487/RFC3032, January 2001,
              <http://www.rfc-editor.org/info/rfc3032>.

   [RFC4023]  Worster, T., Rekhter, Y., and E. Rosen, Ed.,
              "Encapsulating MPLS in IP or Generic Routing Encapsulation
              (GRE)", RFC 4023, DOI 10.17487/RFC4023, March 2005,
              <http://www.rfc-editor.org/info/rfc4023>.

   [RFC4817]  Townsley, M., Pignataro, C., Wainner, S., Seely, T., and
              J. Young, "Encapsulation of MPLS over Layer 2 Tunneling
              Protocol Version 3", RFC 4817, DOI 10.17487/RFC4817, March
              2007, <http://www.rfc-editor.org/info/rfc4817>.

   [RFC5512]  Mohapatra, P. and E. Rosen, "The BGP Encapsulation
              Subsequent Address Family Identifier (SAFI) and the BGP
              Tunnel Encapsulation Attribute", RFC 5512,
              DOI 10.17487/RFC5512, April 2009,
              <http://www.rfc-editor.org/info/rfc5512>.

   [RFC5565]  Wu, J., Cui, Y., Metz, C., and E. Rosen, "Softwire Mesh
              Framework", RFC 5565, DOI 10.17487/RFC5565, June 2009,
              <http://www.rfc-editor.org/info/rfc5565>.

   [RFC5566]  Berger, L., White, R., and E. Rosen, "BGP IPsec Tunnel
              Encapsulation Attribute", RFC 5566, DOI 10.17487/RFC5566,
              June 2009, <http://www.rfc-editor.org/info/rfc5566>.

   [RFC7348]  Mahalingam, M., Dutt, D., Duda, K., Agarwal, P., Kreeger,
              L., Sridhar, T., Bursell, M., and C. Wright, "Virtual
              eXtensible Local Area Network (VXLAN): A Framework for
              Overlaying Virtualized Layer 2 Networks over Layer 3
              Networks", RFC 7348, DOI 10.17487/RFC7348, August 2014,
              <http://www.rfc-editor.org/info/rfc7348>.

   [RFC7490]  Bryant, S., Filsfils, C., Previdi, S., Shand, M., and N.
              So, "Remote Loop-Free Alternate (LFA) Fast Reroute (FRR)",
              RFC 7490, DOI 10.17487/RFC7490, April 2015,
              <http://www.rfc-editor.org/info/rfc7490>.







Xu, et al.              Expires October 23, 2017               [Page 10]


Internet-Draft                                                April 2017


   [RFC7510]  Xu, X., Sheth, N., Yong, L., Callon, R., and D. Black,
              "Encapsulating MPLS in UDP", RFC 7510,
              DOI 10.17487/RFC7510, April 2015,
              <http://www.rfc-editor.org/info/rfc7510>.

   [RFC7637]  Garg, P., Ed. and Y. Wang, Ed., "NVGRE: Network
              Virtualization Using Generic Routing Encapsulation",
              RFC 7637, DOI 10.17487/RFC7637, September 2015,
              <http://www.rfc-editor.org/info/rfc7637>.

Authors' Addresses

   Xiaohu Xu (editor)
   Huawei

   Email: xuxiaohu@huawei.com


   Bruno Decraene  (editor)
   Orange

   Email: bruno.decraene@orange.com


   Robert Raszuk
   Bloomberg LP

   Email: robert@raszuk.net


   Uma Chunduri
   Huawei

   Email: uma.chunduri@gmail.com


   Luis M. Contreras
   Telefonica I+D

   Email: luismiguel.contrerasmurillo@telefonica.com


   Luay Jalil
   Verizon

   Email: luay.jalil@verizon.com





Xu, et al.              Expires October 23, 2017               [Page 11]


Html markup produced by rfcmarkup 1.124, available from https://tools.ietf.org/tools/rfcmarkup/