draft-ietf-ospf-encapsulation-cap-08.txt   draft-ietf-ospf-encapsulation-cap-09.txt 
OSPF Working Group X. Xu, Ed. OSPF Working Group X. Xu, Ed.
Internet-Draft Huawei Internet-Draft Huawei
Intended status: Standards Track B. Decraene, Ed. Intended status: Standards Track B. Decraene, Ed.
Expires: March 22, 2018 Orange Expires: April 12, 2018 Orange
R. Raszuk R. Raszuk
Bloomberg LP Bloomberg LP
L. Contreras L. Contreras
Telefonica I+D Telefonica I+D
L. Jalil L. Jalil
Verizon Verizon
September 18, 2017 October 9, 2017
The Tunnel Encapsulations OSPF Router Information The Tunnel Encapsulations OSPF Router Information
draft-ietf-ospf-encapsulation-cap-08 draft-ietf-ospf-encapsulation-cap-09
Abstract Abstract
Networks use tunnels for a variety of reasons. A large variety of Networks use tunnels for a variety of reasons. A large variety of
tunnel types are defined and the tunnel encapsulator router needs to tunnel types are defined and the tunnel encapsulator router needs to
select a type of tunnel which is supported by the tunnel decapsulator select a type of tunnel which is supported by the tunnel decapsulator
router. This document defines how to advertise, in OSPF Router router. This document defines how to advertise, in OSPF Router
Information Link State Advertisement (LSAs), the list of tunnel Information Link State Advertisement (LSAs), the list of tunnel
encapsulations supported by the tunnel decapsulator. encapsulations supported by the tunnel decapsulator.
skipping to change at page 1, line 48 skipping to change at page 1, line 48
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on March 22, 2018. This Internet-Draft will expire on April 12, 2018.
Copyright Notice Copyright Notice
Copyright (c) 2017 IETF Trust and the persons identified as the Copyright (c) 2017 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 30 skipping to change at page 2, line 30
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Tunnel Encapsulations TLV . . . . . . . . . . . . . . . . . . 3 3. Tunnel Encapsulations TLV . . . . . . . . . . . . . . . . . . 3
4. Tunnel Sub-TLV . . . . . . . . . . . . . . . . . . . . . . . 3 4. Tunnel Sub-TLV . . . . . . . . . . . . . . . . . . . . . . . 3
5. Tunnel Parameter Sub-TLVs . . . . . . . . . . . . . . . . . . 4 5. Tunnel Parameter Sub-TLVs . . . . . . . . . . . . . . . . . . 4
5.1. Encapsulation Sub-TLV . . . . . . . . . . . . . . . . . . 5 5.1. Encapsulation Sub-TLV . . . . . . . . . . . . . . . . . . 5
5.2. Protocol Type Sub-TLV . . . . . . . . . . . . . . . . . . 5 5.2. Protocol Type Sub-TLV . . . . . . . . . . . . . . . . . . 5
5.3. Endpoint Sub-TLV . . . . . . . . . . . . . . . . . . . . 5 5.3. Endpoint Sub-TLV . . . . . . . . . . . . . . . . . . . . 5
5.4. Color Sub-TLV . . . . . . . . . . . . . . . . . . . . . . 5 5.4. Color Sub-TLV . . . . . . . . . . . . . . . . . . . . . . 6
5.5. Load-Balancing Block Sub-TLV . . . . . . . . . . . . . . 6 5.5. Load-Balancing Block Sub-TLV . . . . . . . . . . . . . . 6
5.6. IP QoS Field . . . . . . . . . . . . . . . . . . . . . . 6 5.6. IP QoS Field . . . . . . . . . . . . . . . . . . . . . . 6
5.7. UDP Destination Port . . . . . . . . . . . . . . . . . . 6 5.7. UDP Destination Port . . . . . . . . . . . . . . . . . . 7
6. Operation . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6. Operation . . . . . . . . . . . . . . . . . . . . . . . . . . 7
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7
7.1. OSPF Router Information . . . . . . . . . . . . . . . . . 6 7.1. OSPF Router Information . . . . . . . . . . . . . . . . . 7
7.2. Tunnel Parameter Sub-TLVs Registry . . . . . . . . . . . 7 7.2. Tunnel Parameter Sub-TLVs Registry . . . . . . . . . . . 7
8. Security Considerations . . . . . . . . . . . . . . . . . . . 7 8. Security Considerations . . . . . . . . . . . . . . . . . . . 8
9. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 8 9. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 9
10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 9
11. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 9
11.1. Normative References . . . . . . . . . . . . . . . . . . 8 11.1. Normative References . . . . . . . . . . . . . . . . . . 9
11.2. Informative References . . . . . . . . . . . . . . . . . 9 11.2. Informative References . . . . . . . . . . . . . . . . . 10
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10
1. Introduction 1. Introduction
Networks use tunnels for a variety of reasons, such as: Networks use tunnels for a variety of reasons, such as:
o Partial deployment of IPv6 in IPv4 networks or IPv4 in IPv6 o Partial deployment of IPv6 in IPv4 networks or IPv4 in IPv6
networks as described in [RFC5565], where IPvx tunnels are used networks as described in [RFC5565], where IPvx tunnels are used
between IPvx-enabled routers so as to traverse non-IPvx routers. between IPvx-enabled routers so as to traverse non-IPvx routers.
o Remote Loop-Free Alternate (RLFA) repair tunnels as described in o Remote Loop-Free Alternate (RLFA) repair tunnels as described in
skipping to change at page 3, line 29 skipping to change at page 3, line 29
3. Tunnel Encapsulations TLV 3. Tunnel Encapsulations TLV
Routers advertise their supported tunnel encapsulation type(s) by Routers advertise their supported tunnel encapsulation type(s) by
advertising a new TLV of the OSPF Router Information (RI) Opaque LSA advertising a new TLV of the OSPF Router Information (RI) Opaque LSA
[RFC7770], referred to as the Tunnel Encapsulations TLV. This TLV is [RFC7770], referred to as the Tunnel Encapsulations TLV. This TLV is
applicable to both OSPFv2 and OSPFv3. applicable to both OSPFv2 and OSPFv3.
The Type code of the Tunnel Encapsulations is TBD1, the Length value The Type code of the Tunnel Encapsulations is TBD1, the Length value
is variable, and the Value field contains one or more Tunnel Sub-TLVs is variable, and the Value field contains one or more Tunnel Sub-TLVs
as defined in Section 4. Each Tunnel Type Sub-TLV indicates a as defined in Section 4. Each Tunnel Sub-TLV indicates a particular
particular encapsulation format that the advertising router supports encapsulation format that the advertising router supports along with
along with the parameters corresponding to the tunnel type. the parameters corresponding to the tunnel type.
The Tunnel Encapsulations TLV MAY appear more than once within a The Tunnel Encapsulations TLV MAY appear more than once within a
given OSPF Router Information (RI) Opaque LSA. If the Tunnel given OSPF Router Information (RI) Opaque LSA. If the Tunnel
Encapsulations TLV appears more than once in an OSPF Router Encapsulations TLV appears more than once in an OSPF Router
Information LSA, the set of all Tunnel Sub-TLVs from all Tunnel Information LSA, the set of all Tunnel Sub-TLVs from all Tunnel
Encapsulations TLV SHOULD be considered. The scope of the Encapsulations TLV SHOULD be considered. The scope of the
advertisement depends on the application but it is recommended that advertisement depends on the application but it is recommended that
it SHOULD be domain-wide. it SHOULD be domain-wide.
4. Tunnel Sub-TLV 4. Tunnel Sub-TLV
skipping to change at page 4, line 15 skipping to change at page 4, line 15
0 1 2 3 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 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) | | Tunnel Type (2 Octets) | Length (2 Octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| Tunnel Parameter Sub-TLVs | | Tunnel Parameter Sub-TLVs |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: Tunnel Sub-TLV
Tunnel Type (2 octets): Identifies the type of tunneling Tunnel Type (2 octets): Identifies the type of tunneling
technology signaled. Tunnel types are shared with the BGP technology signaled. Tunnel types are shared with the BGP
extension [I-D.ietf-idr-tunnel-encaps] and hence are defined in extension [I-D.ietf-idr-tunnel-encaps] and hence are defined in
the IANA registry "BGP Tunnel Encapsulation Attribute Tunnel the IANA registry "BGP Tunnel Encapsulation Attribute Tunnel
Types". Unknown Tunnel types are to be ignored upon receipt. Types". Unknown Tunnel types are to be ignored upon receipt.
Length (2 octets): Unsigned 16-bit integer indicating the total Length (2 octets): Unsigned 16-bit integer indicating the total
number of octets of the value field. number of octets of the value field.
Value (variable): Zero or more Tunnel Parameter Sub-TLVs as Value (variable): Zero or more Tunnel Parameter Sub-TLVs as
skipping to change at page 4, line 43 skipping to change at page 4, line 45
+---------------------------------------------+ +---------------------------------------------+
| Tunnel Parameter Sub-Type (2 Octets) | | Tunnel Parameter Sub-Type (2 Octets) |
+---------------------------------------------+ +---------------------------------------------+
| Tunnel Parameter Length (2 Octets) | | Tunnel Parameter Length (2 Octets) |
+---------------------------------------------+ +---------------------------------------------+
| Tunnel Parameter Value (Variable) | | Tunnel Parameter Value (Variable) |
| | | |
+---------------------------------------------+ +---------------------------------------------+
Figure 2: Tunnel Parameter Sub-TLV
Tunnel Parameter Sub-Type (2 octets): Each sub-type defines a Tunnel Parameter Sub-Type (2 octets): Each sub-type defines a
certain parameter of the Tunnel Type TLV that contains this Sub- parameter of the Tunnel Sub-TLV. Sub-Types are registered in the
TLV. Types are registered in the IANA registry "OSPF Tunnel IANA registry "OSPF Tunnel Parameter Sub-TLVs" Section 7.2.
Parameter Sub-TLVs" Section 7.2.
Tunnel Parameter Length (2 octets): Unsigned 16-bit integer Tunnel Parameter Length (2 octets): Unsigned 16-bit integer
indicating the total number of octets of the Sub-TLV value field. indicating the total number of octets of the Tunnel Parameter
Value field.
Tunnel Parameter Value (variable): Encodings of the value field Tunnel Parameter Value (variable): Encodings of the value field
depend on the Sub-TLV type as enumerated above. The following depend on the Sub-TLV type as enumerated above. The following
sub-sections define the encoding in detail. sub-sections define the encoding in detail.
Any unknown Tunnel Parameter Sub-Type MUST be ignored and skipped Any unknown Tunnel Parameter Sub-Type MUST be ignored and skipped
upon receipt. When a reserved value (See Section 7.2) is seen in an upon receipt. When a reserved value (See Section 7.2) is seen in an
LSA, it MUST be treated as an invalid Tunnel Parameter Sub-TLV. When LSA, it MUST be treated as an invalid Tunnel Parameter Sub-TLV. When
a Tunnel Parameter Value has an incorrect syntax of semantic, it MUST a Tunnel Parameter Value has an incorrect syntax or semantic, it MUST
be treated as an invalid Tunnel Parameter Sub-TLV. If a Tunnel be treated as an invalid Tunnel Parameter Sub-TLV. If a Tunnel
Parameter Sub-TLV is invalid, its Tunnel Sub-TLV MUST be ignored. Parameter Sub-TLV is invalid, its Tunnel Sub-TLV MUST be ignored.
However, other Tunnel Sub-TLVs MUST be considered. However, other Tunnel Sub-TLVs MUST be considered.
5.1. Encapsulation Sub-TLV 5.1. Encapsulation Sub-TLV
This Sub-TLV type is 1. The syntax, semantic, and usage of its value This Sub-TLV type is 1. The syntax, semantic, and usage of its value
field are defined in Section 3.2 "Encapsulation Sub-TLVs for field are defined in Section 3.2 "Encapsulation Sub-TLVs for
Particular Tunnel Types" of [I-D.ietf-idr-tunnel-encaps]. Particular Tunnel Types" of [I-D.ietf-idr-tunnel-encaps].
5.2. Protocol Type Sub-TLV 5.2. Protocol Type Sub-TLV
This Sub-TLV type is 2. The syntax, semantic, and usage of its value This Sub-TLV type is 2. The syntax, semantic, and usage of its value
field are defined in Section 3.4.1 "Protocol Type sub-TLV" of field are defined in Section 3.4.1 "Protocol Type sub-TLV" of
[I-D.ietf-idr-tunnel-encaps]. [I-D.ietf-idr-tunnel-encaps].
5.3. Endpoint Sub-TLV 5.3. Endpoint Sub-TLV
This Sub-TLV type is 3. The value field carries the Network Address This Sub-TLV type is 3. It MUST be present once and only once in a
to be used as tunnel destination address. given Tunnel Sub-TLV. The value field contain two sub-fields:
If length is 4, the tunnel endpoint is an IPv4 address. a two-octet Address Family sub-field
If length is 16, the tunnel endpoint is an IPv6 address. an Address sub-field, whose length depends upon the Address
Family.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Address Family | Address ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
~ (Variable length) ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3: Endpoint Sub-TLV
The Address Family subfield contains a value from IANA's "Address
Family Numbers" registry. In this document, we assume that the
Address Family is either IPv4 or IPv6; use of other address families
is outside the scope of this document.
If the Address Family subfield contains the value for IPv4, the
address subfield MUST contain an IPv4 address (a /32 IPv4 prefix).
In this case, the length field of Remote Endpoint sub-TLV MUST
contain the value 6.
If the Address Family subfield contains the value for IPv6, the
address sub-field MUST contain an IPv6 address (a /128 IPv6 prefix).
In this case, the length field of Remote Endpoint sub-TLV MUST
contain the value 18 (0x12). IPv6 link local addresses are not valid
values of the IP address field.
5.4. Color Sub-TLV 5.4. Color Sub-TLV
This Sub-TLV is of type 4. The value field is a 4-octet opaque This Sub-TLV type is 4. It may appear zero or more time in a given
unsigned integer. Tunnel Sub-TLV. The value field is a 4-octet opaque unsigned
integer.
The color value is user-defined and configured locally on the The color value is user-defined and configured locally on the
advertising routers. It may be used by service providers to define advertising routers. It may be used by service providers to define
policies on the tunnel encapsulator routers, for example, to control policies on the tunnel encapsulator routers, for example, to control
the selection of the tunnel to use. the selection of the tunnel to use.
This color value can be referenced by BGP routes carrying Color This color value can be referenced by BGP routes carrying Color
Extended Community [I-D.ietf-idr-tunnel-encaps]. If the tunnel is Extended Community [I-D.ietf-idr-tunnel-encaps]. If the tunnel is
used to reach the BGP Next-Hop of BGP routes, then attaching a Color used to reach the BGP Next-Hop of BGP routes, then attaching a Color
Extended Community to those routes express the willingness of the BGP Extended Community to those routes express the willingness of the BGP
skipping to change at page 6, line 36 skipping to change at page 7, line 25
along with the parameters to be used for the tunnel. The decision to along with the parameters to be used for the tunnel. The decision to
use that tunnel is driven by the capability of the tunnel use that tunnel is driven by the capability of the tunnel
encapsulator router to support the encapsulation type and the policy encapsulator router to support the encapsulation type and the policy
on the tunnel encapsulator router. The Color Sub-TLV (See on the tunnel encapsulator router. The Color Sub-TLV (See
Section 5.4) may be used as an input to this policy. Note that some Section 5.4) may be used as an input to this policy. Note that some
tunnel types may require the execution of an explicit tunnel setup tunnel types may require the execution of an explicit tunnel setup
protocol before they can be used to transit data. protocol before they can be used to transit data.
A tunnel MUST NOT be used if there is no route toward the IP address A tunnel MUST NOT be used if there is no route toward the IP address
specified in the Endpoint Sub-TLV (See Section 5.3) or if the route specified in the Endpoint Sub-TLV (See Section 5.3) or if the route
is not advertised by the router advertising this Tunnel Sub-TLV. is not advertised in the same OSPF domain.
7. IANA Considerations 7. IANA Considerations
7.1. OSPF Router Information 7.1. OSPF Router Information
This document requests IANA to allocate a new code point from the This document requests IANA to allocate a new code point from the
OSPF Router Information (RI) registry. OSPF Router Information (RI) registry.
Value TLV Name Reference Value TLV Name Reference
----- ---------------------- ------------- ----- ---------------------- -------------
TBD1 Tunnel Encapsulations This document TBD1 Tunnel Encapsulations This document
Figure 4: Tunnel Encapsulation Router Information
7.2. Tunnel Parameter Sub-TLVs Registry 7.2. Tunnel Parameter Sub-TLVs Registry
This document requests IANA to create, under "Open Shortest Path This document requests IANA to create, under "Open Shortest Path
First (OSPF) Parameters", a new registry "OSPF Tunnel Parameter Sub- First (OSPF) Parameters", a new registry "OSPF Tunnel Parameter Sub-
TLVs" with the following registration procedure: TLVs" with the following registration procedure:
The values in the range 1-34999 are to be allocated using the The values in the range 1-34999 are to be allocated using the
"Standards Action" registration procedure as defined in [RFC8126]. "Standards Action" registration procedure as defined in [RFC8126].
The values in the range 35000-65499 are to be allocated using the The values in the range 35000-65499 are to be allocated using the
skipping to change at page 7, line 37 skipping to change at page 8, line 25
4 Color This document 4 Color This document
5 Load-Balancing Block This document & [RFC5640] 5 Load-Balancing Block This document & [RFC5640]
6 IP QoS This document 6 IP QoS This document
& [I-D.ietf-idr-tunnel-encaps] & [I-D.ietf-idr-tunnel-encaps]
7 UDP Destination Port This document 7 UDP Destination Port This document
& [I-D.ietf-idr-tunnel-encaps] & [I-D.ietf-idr-tunnel-encaps]
8-65499 Unassigned 8-65499 Unassigned
65500-65534 Experimental This document 65500-65534 Experimental This document
65535 Reserved This document 65535 Reserved This document
Figure 5: OSPF Tunnel Parameter Sub-TLVs Registry
8. Security Considerations 8. Security Considerations
Security considerations applicable to softwires can be found in the Security considerations applicable to softwires can be found in the
mesh framework [RFC5565]. In general, security issues of the tunnel mesh framework [RFC5565]. In general, security issues of the tunnel
protocols signaled through this OSPF capability extension are protocols signaled through this OSPF capability extension are
inherited. inherited.
If a third-party is able to modify any of the information that is 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 used to form encapsulation headers, to choose a tunnel type, or to
choose a particular tunnel for a particular payload type, user data choose a particular tunnel for a particular payload type, user data
packets may end up getting misrouted, mis-delivered, and/or dropped. packets may end up getting misrouted, mis-delivered, and/or dropped.
However, since an OSPF routing domain is usually a well-controlled However, since an OSPF routing domain is usually a well-controlled
network under a single administrative domain, the possibility of the network under a single administrative domain, the possibility of the
above attack is very low. above attack is very low.
We note that the last paragraph of Section 6 forbid the establishment
of a tunnel toward arbitrary destinations. It prohibits a
destination outside of the OSPF domain. This avoid that a third-
party gaining access to an OSPF router be able to send the traffic to
other destinations, e.g., for inspection purposes.
Security considerations for the base OSPF protocol are covered in Security considerations for the base OSPF protocol are covered in
[RFC2328] and [RFC5340]. [RFC2328] and [RFC5340].
9. Contributors 9. Contributors
Uma Chunduri Uma Chunduri
Huawei Huawei
Email: uma.chunduri@gmail.com Email: uma.chunduri@gmail.com
10. Acknowledgements 10. Acknowledgements
 End of changes. 21 change blocks. 
31 lines changed or deleted 74 lines changed or added

This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/