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

Advertising Tunnelling Capability in OSPF


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 OSPF Router Information.

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 26, 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

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

The ingress needs to select a type of tunnel which is supported by the egress. This document describes how to use OSPF Router Information to advertise the egress tunnelling capabilities of nodes. In this document, OSPF means both OSPFv2 and OSPFv3.

2. Terminology

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

3. Advertising Encapsulation Capability

Routers advertises their supported encapsulation type(s) by advertising a new TLV of the OSPF Router Information (RI) Opaque LSA [RFC7770], referred to as Encapsulation Capability TLV. This TLV is applicable to both OSPFv2 and OSPFv3. The Encapsulation Capability TLV SHOULD NOT appear more than once within a given OSPF Router Information (RI) Opaque LSA. 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 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 (2 Octets)     |        Length (2 Octets)      |
       |                                                               |
       |                             Value                             |
       |                                                               |

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

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.

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. OSPF Router Information

This document requests IANA to allocate a new code point from registry OSPF Router Information (RI).

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

6.2. IGP Tunnel Encapsulation Types Registry

              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

This document requests IANA to create a new registry "IGP Tunnel Encapsulation Types" with the following registration procedure: [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

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 OSPF protocol are covered in [RFC2328] and [RFC5340].

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.
[RFC2003] Perkins, C., "IP Encapsulation within IP", RFC 2003, DOI 10.17487/RFC2003, October 1996.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997.
[RFC2784] Farinacci, D., Li, T., Hanks, S., Meyer, D. and P. Traina, "Generic Routing Encapsulation (GRE)", RFC 2784, DOI 10.17487/RFC2784, March 2000.
[RFC3931] Lau, J., Townsley, M. and I. Goyret, "Layer Two Tunneling Protocol - Version 3 (L2TPv3)", RFC 3931, DOI 10.17487/RFC3931, March 2005.
[RFC4213] Nordmark, E. and R. Gilligan, "Basic Transition Mechanisms for IPv6 Hosts and Routers", RFC 4213, DOI 10.17487/RFC4213, October 2005.
[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.
[RFC7770] Lindem, A., Shen, N., Vasseur, JP., Aggarwal, R. and S. Shaffer, "Extensions to OSPF for Advertising Optional Router Capabilities", RFC 7770, DOI 10.17487/RFC7770, February 2016.

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", Internet-Draft draft-ietf-bier-architecture-06, April 2017.
[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", Internet-Draft draft-ietf-bier-mpls-encapsulation-06, December 2016.
[I-D.ietf-nvo3-vxlan-gpe] Maino, F., Kreeger, L. and U. Elzur, "Generic Protocol Extension for VXLAN", Internet-Draft draft-ietf-nvo3-vxlan-gpe-03, 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", Internet-Draft draft-xu-mpls-unified-source-routing-instruction-00, March 2017.
[RFC2328] Moy, J., "OSPF Version 2", STD 54, RFC 2328, DOI 10.17487/RFC2328, April 1998.
[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.
[RFC4023] Worster, T., Rekhter, Y. and E. Rosen, "Encapsulating MPLS in IP or Generic Routing Encapsulation (GRE)", RFC 4023, DOI 10.17487/RFC4023, March 2005.
[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.
[RFC5340] Coltun, R., Ferguson, D., Moy, J. and A. Lindem, "OSPF for IPv6", RFC 5340, DOI 10.17487/RFC5340, July 2008.
[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.
[RFC5565] Wu, J., Cui, Y., Metz, C. and E. Rosen, "Softwire Mesh Framework", RFC 5565, DOI 10.17487/RFC5565, June 2009.
[RFC5566] Berger, L., White, R. and E. Rosen, "BGP IPsec Tunnel Encapsulation Attribute", RFC 5566, DOI 10.17487/RFC5566, June 2009.
[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.
[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.
[RFC7510] Xu, X., Sheth, N., Yong, L., Callon, R. and D. Black, "Encapsulating MPLS in UDP", RFC 7510, DOI 10.17487/RFC7510, April 2015.
[RFC7637] Garg, P. and Y. Wang, "NVGRE: Network Virtualization Using Generic Routing Encapsulation", RFC 7637, DOI 10.17487/RFC7637, September 2015.

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