OSPF Working Group X. Xu, Ed.
Internet-Draft Huawei
Intended status: Standards Track B. Decraene, Ed.
Expires: November 20, 2017 Orange
R. Raszuk
Bloomberg LP
L. Contreras
Telefonica I+D
L. Jalil
Verizon
May 19, 2017
Advertising Tunneling Capability in OSPF
draft-ietf-ospf-encapsulation-cap-03
Abstract
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 and itself. This document
defines how to advertise egress tunnel capabilities in OSPF Router
Information Link State Advertisement (LSAs).
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 November 20, 2017.
Xu, et al. Expires November 20, 2017 [Page 1]
Internet-Draft May 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. Encapsulation Sub-TLV . . . . . . . . . . . . . . . . . . 6
5.2. Protocol Type Sub-TLV . . . . . . . . . . . . . . . . . . 6
5.3. Endpoint Sub-TLV . . . . . . . . . . . . . . . . . . . . 6
5.4. Color Sub-TLV . . . . . . . . . . . . . . . . . . . . . . 6
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6
6.1. OSPF Router Information . . . . . . . . . . . . . . . . . 6
6.2. IGP Tunnel Encapsulation Types Registry . . . . . . . . . 6
6.3. IGP Tunnel Encapsulation Attribute Types Registry . . . . 7
7. Security Considerations . . . . . . . . . . . . . . . . . . . 8
8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 8
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8
10. References . . . . . . . . . . . . . . . . . . . . . . . . . 8
10.1. Normative References . . . . . . . . . . . . . . . . . . 8
10.2. Informative References . . . . . . . . . . . . . . . . . 9
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 11
1. Introduction
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 to traverse non-MPLS
routers.
Xu, et al. Expires November 20, 2017 [Page 2]
Internet-Draft May 2017
o Partial deployment of MPLS-BIER as described in
[I-D.ietf-bier-architecture], where IP tunnels are used between
MPLS-BIER-capable routers to traverse non MPLS-BIER
[I-D.ietf-bier-mpls-encapsulation] routers.
o Partial deployment of IPv6 in IPv4 networks or IPv6 in IPv4
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 (RLFA) 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 and itself. This document describes how to use OSPF
Router Information Link State Advertisements (LSAs) to advertise the
egress tunneling capabilities of OSPF routers. In this document,
OSPF refers to both OSPFv2 and OSPFv3.
2. Terminology
This memo makes use of the terms defined in [RFC7770].
3. Advertising Encapsulation Capability
Routers advertise their supported encapsulation type(s) by
advertising a new TLV of the OSPF Router Information (RI) Opaque LSA
[RFC7770], referred to as the 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. If the Encapsulation Capability
TLV appears more than once in an OSPF Router Information LSA, only
the first occurrence MUST be processed and others MUST be ignored.
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:
Xu, et al. Expires November 20, 2017 [Page 3]
Internet-Draft May 2017
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) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
| Sub-TLVs |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Tunnel Type (2 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;
Xu, et al. Expires November 20, 2017 [Page 4]
Internet-Draft May 2017
Unknown types are to be ignored and skipped upon receipt.
Length (2 octets): Unsigned 16-bit 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.
5. Tunnel Encapsulation Attribute
The Tunnel Encapsulation Attribute Sub-TLV is structured 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 of the tunnel TLV that contains this Sub-TLV. The
following are the types defined in this document:
1. Encapsulation: Sub-TLV type = 1; (See Section 5.1)
2. Protocol Type: Sub-TLV type = 2; (See Section 5.2)
3. Endpoint: Sub-TLV type = 3; (See Section 5.3)
4. Color: Sub-TLV type = 4; (See Section 5.4)
Sub-TLV Length (1 octet): Unsigned 8-bit 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 upon receipt.
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 invalid, this specific Tunnel Encapsulation MUST be
ignored and skipped. However, other Tunnel Encapsulations MUST be
considered.
Xu, et al. Expires November 20, 2017 [Page 5]
Internet-Draft May 2017
5.1. Encapsulation Sub-TLV
This Sub-TLV has its format defined in [RFC5512] and
[I-D.ietf-idr-tunnel-encaps] under the name Encapsulation Sub-TLV.
5.2. Protocol Type Sub-TLV
This Sub-TLV has its format defined in [RFC5512] and
[I-D.ietf-idr-tunnel-encaps] under the name Protocol Type.
5.3. Endpoint Sub-TLV
The value field carries the Network Address to be used as tunnel
destination address.
If length is 4, the tunnel endpoint is an IPv4 address.
If length is 16, the tunnel endpoint is an IPv6 address.
5.4. Color Sub-TLV
The valued field is a 4-octet opaque unsigned integer.
The color value is user defined and configured locally on the
advertising routers. It may be used by service providers to define
policies.
6. IANA Considerations
6.1. OSPF Router Information
This document requests IANA to allocate a new code point from the
OSPF Router Information (RI) registry.
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 November 20, 2017 [Page 6]
Internet-Draft May 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 This document
2 Protocol Type This document
3 Endpoint This document
4 Color This document
5-250 Unassigned
251-254 Experimental This document
255 Reserved This document
Xu, et al. Expires November 20, 2017 [Page 7]
Internet-Draft May 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 OSPF 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. Contributors
Uma Chunduri
Huawei
Email: uma.chunduri@gmail.com
9. Acknowledgements
This document is partially inspired by [RFC5512].
The authors would like to thank Greg Mirsky, John E Drake, Carlos
Pignataro and Karsten Thomann for their valuable comments on this
document. Special thanks should be given to Acee Lindem for his
detailed review of this document.
10. References
10.1. Normative References
[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>.
Xu, et al. Expires November 20, 2017 [Page 8]
Internet-Draft May 2017
[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>.
[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>.
[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>.
[RFC7770] Lindem, A., Ed., 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, <http://www.rfc-editor.org/info/rfc7770>.
10.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-06 (work in
progress), 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",
draft-ietf-bier-mpls-encapsulation-06 (work in progress),
December 2016.
[I-D.ietf-idr-tunnel-encaps]
Rosen, E., Patel, K., and G. Velde, "The BGP Tunnel
Encapsulation Attribute", draft-ietf-idr-tunnel-encaps-04
(work in progress), April 2017.
Xu, et al. Expires November 20, 2017 [Page 9]
Internet-Draft May 2017
[I-D.ietf-nvo3-vxlan-gpe]
Maino, F., Kreeger, L., and U. Elzur, "Generic Protocol
Extension for VXLAN", draft-ietf-nvo3-vxlan-gpe-04 (work
in progress), April 2017.
[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.
[RFC2328] Moy, J., "OSPF Version 2", STD 54, RFC 2328,
DOI 10.17487/RFC2328, April 1998,
<http://www.rfc-editor.org/info/rfc2328>.
[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>.
[RFC5340] Coltun, R., Ferguson, D., Moy, J., and A. Lindem, "OSPF
for IPv6", RFC 5340, DOI 10.17487/RFC5340, July 2008,
<http://www.rfc-editor.org/info/rfc5340>.
[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>.
Xu, et al. Expires November 20, 2017 [Page 10]
Internet-Draft May 2017
[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>.
[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
Luis M. Contreras
Telefonica I+D
Email: luismiguel.contrerasmurillo@telefonica.com
Xu, et al. Expires November 20, 2017 [Page 11]
Internet-Draft May 2017
Luay Jalil
Verizon
Email: luay.jalil@verizon.com
Xu, et al. Expires November 20, 2017 [Page 12]