idnits 2.17.1 draft-ietf-ospf-encapsulation-cap-05.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (July 3, 2017) is 2488 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Outdated reference: A later version (-22) exists of draft-ietf-idr-tunnel-encaps-06 ** Obsolete normative reference: RFC 5226 (Obsoleted by RFC 8126) == Outdated reference: A later version (-08) exists of draft-ietf-bier-architecture-07 == Outdated reference: A later version (-12) exists of draft-ietf-bier-mpls-encapsulation-07 == Outdated reference: A later version (-04) exists of draft-xu-mpls-unified-source-routing-instruction-02 -- Obsolete informational reference (is this intentional?): RFC 5512 (Obsoleted by RFC 9012) Summary: 1 error (**), 0 flaws (~~), 5 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 OSPF Working Group X. Xu, Ed. 3 Internet-Draft Huawei 4 Intended status: Standards Track B. Decraene, Ed. 5 Expires: January 4, 2018 Orange 6 R. Raszuk 7 Bloomberg LP 8 L. Contreras 9 Telefonica I+D 10 L. Jalil 11 Verizon 12 July 3, 2017 14 Advertising Tunneling Capability in OSPF 15 draft-ietf-ospf-encapsulation-cap-05 17 Abstract 19 Networks use tunnels for a variety of reasons. A large variety of 20 tunnel types are defined and the ingress needs to select a type of 21 tunnel which is supported by the egress and itself. This document 22 defines how to advertise egress tunnel capabilities in OSPF Router 23 Information Link State Advertisement (LSAs). 25 Requirements Language 27 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 28 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 29 document are to be interpreted as described in RFC 2119 [RFC2119]. 31 Status of This Memo 33 This Internet-Draft is submitted in full conformance with the 34 provisions of BCP 78 and BCP 79. 36 Internet-Drafts are working documents of the Internet Engineering 37 Task Force (IETF). Note that other groups may also distribute 38 working documents as Internet-Drafts. The list of current Internet- 39 Drafts is at http://datatracker.ietf.org/drafts/current/. 41 Internet-Drafts are draft documents valid for a maximum of six months 42 and may be updated, replaced, or obsoleted by other documents at any 43 time. It is inappropriate to use Internet-Drafts as reference 44 material or to cite them other than as "work in progress." 46 This Internet-Draft will expire on January 4, 2018. 48 Copyright Notice 50 Copyright (c) 2017 IETF Trust and the persons identified as the 51 document authors. All rights reserved. 53 This document is subject to BCP 78 and the IETF Trust's Legal 54 Provisions Relating to IETF Documents 55 (http://trustee.ietf.org/license-info) in effect on the date of 56 publication of this document. Please review these documents 57 carefully, as they describe your rights and restrictions with respect 58 to this document. Code Components extracted from this document must 59 include Simplified BSD License text as described in Section 4.e of 60 the Trust Legal Provisions and are provided without warranty as 61 described in the Simplified BSD License. 63 Table of Contents 65 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 66 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 67 3. Advertising Encapsulation Capability . . . . . . . . . . . . 3 68 4. Tunnel Encapsulation Type . . . . . . . . . . . . . . . . . . 4 69 5. Tunnel Encapsulation Attribute . . . . . . . . . . . . . . . 4 70 6. Tunnel Encapsulation Attribute Sub-TLVs . . . . . . . . . . . 5 71 6.1. Encapsulation Sub-TLV . . . . . . . . . . . . . . . . . . 5 72 6.2. Protocol Type Sub-TLV . . . . . . . . . . . . . . . . . . 5 73 6.3. Endpoint Sub-TLV . . . . . . . . . . . . . . . . . . . . 5 74 6.4. Color Sub-TLV . . . . . . . . . . . . . . . . . . . . . . 5 75 6.5. IP QoS Field . . . . . . . . . . . . . . . . . . . . . . 6 76 6.6. UDP Destination Port . . . . . . . . . . . . . . . . . . 6 77 6.7. future sub-TLV allocations . . . . . . . . . . . . . . . 6 78 7. Usage of the Tunnel Encapsulation attribute . . . . . . . . . 6 79 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 80 8.1. OSPF Router Information . . . . . . . . . . . . . . . . . 7 81 8.2. IGP Tunnel Encapsulation Attribute Sub-TLVs Registry . . 7 82 9. Security Considerations . . . . . . . . . . . . . . . . . . . 7 83 10. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 8 84 11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8 85 12. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 86 12.1. Normative References . . . . . . . . . . . . . . . . . . 8 87 12.2. Informative References . . . . . . . . . . . . . . . . . 8 88 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 90 1. Introduction 92 Networks use tunnels for a variety of reasons, such as: 94 o Partial deployment of MPLS-SPRING as described in 95 [I-D.xu-mpls-unified-source-routing-instruction], where IP tunnels 96 are used between MPLS-SPRING-enabled routers to traverse non-MPLS 97 routers. 99 o Partial deployment of MPLS-BIER as described in 100 [I-D.ietf-bier-architecture], where IP tunnels are used between 101 MPLS-BIER-capable routers to traverse non MPLS-BIER 102 [I-D.ietf-bier-mpls-encapsulation] routers. 104 o Partial deployment of IPv6 in IPv4 networks or IPv4 in IPv6 105 networks as described in [RFC5565], where IPvx tunnels are used 106 between IPvx-enabled routers so as to traverse non-IPvx routers. 108 o Remote Loop-Free Alternate (RLFA) repair tunnels as described in 109 [RFC7490], where tunnels are used between the Point of Local 110 Repair and the selected PQ node. 112 The ingress needs to select a type of tunnel which is supported by 113 the egress and itself. This document describes how to use OSPF 114 Router Information Link State Advertisements (LSAs) to advertise the 115 egress tunneling capabilities of OSPF routers. In this document, 116 OSPF refers to both OSPFv2 [RFC2328] and OSPFv3 [RFC5340]. 118 2. Terminology 120 This memo makes use of the terms defined in [RFC7770]. 122 3. Advertising Encapsulation Capability 124 Routers advertise their supported encapsulation type(s) by 125 advertising a new TLV of the OSPF Router Information (RI) Opaque LSA 126 [RFC7770], referred to as the Encapsulation Capability TLV. This TLV 127 is applicable to both OSPFv2 and OSPFv3. The Encapsulation 128 Capability TLV SHOULD NOT appear more than once within a given OSPF 129 Router Information (RI) Opaque LSA. If the Encapsulation Capability 130 TLV appears more than once in an OSPF Router Information LSA, only 131 the first occurrence MUST be processed and others MUST be ignored. 132 The scope of the advertisement depends on the application but it is 133 recommended that it SHOULD be domain- wide. The Type code of the 134 Encapsulation Capability TLV is TBD1, the Length value is variable, 135 and the Value field contains one or more Tunnel Encapsulation Type 136 Sub-TLVs. Each Encapsulation Type Sub-TLVs indicates a particular 137 encapsulation format that the advertising router supports along with 138 the parameters to be used for the tunnel. 140 4. Tunnel Encapsulation Type 142 The Tunnel Encapsulation Type Sub-TLV is structured as follows: 144 0 1 2 3 145 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 146 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 147 | Tunnel Type (2 Octets) | Length (2 Octets) | 148 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 149 | | 150 | Sub-TLVs | 151 | | 152 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 154 Tunnel Type (2 octets): Identifies the type of tunneling 155 technology being signaled. Tunnel types are shared with the BGP 156 extension [RFC5512] and hence are defined in the IANA registry 157 "BGP Tunnel Encapsulation Attribute Tunnel Types". Unknown types 158 are to be ignored and skipped upon receipt. 160 Length (2 octets): Unsigned 16-bit integer indicating the total 161 number of octets of the value field. 163 Value (variable): Zero or more Tunnel Encapsulation Attribute Sub- 164 TLVs as defined in Section 5. 166 5. Tunnel Encapsulation Attribute 168 The Tunnel Encapsulation Attribute Sub-TLV is structured as follows: 170 +-----------------------------------+ 171 | Sub-TLV Type (1 Octet) | 172 +-----------------------------------+ 173 | Sub-TLV Length (1 Octet) | 174 +-----------------------------------+ 175 | Sub-TLV Value (Variable) | 176 | | 177 +-----------------------------------+ 179 Sub-TLV Type (1 octet): Each Sub-TLV type defines a certain 180 property of the tunnel TLV that contains this Sub-TLV. This 181 document defines such types Section 6 ) 183 Sub-TLV Length (1 octet): Unsigned 8-bit integer indicating the 184 total number of octets of the Sub-TLV value field. 186 Sub-TLV Value (variable): Encodings of the value field depend on 187 the Sub-TLV type as enumerated above. The following sub-sections 188 define the encoding in detail. 190 Any unknown Sub-TLVs MUST be ignored and skipped upon receipt. 191 However, if the TLV is understood, the entire TLV MUST NOT be ignored 192 just because it contains an unknown Sub-TLV. 194 If a Sub-TLV is invalid, this specific Tunnel Encapsulation MUST be 195 ignored and skipped. However, other Tunnel Encapsulations MUST be 196 considered. 198 6. Tunnel Encapsulation Attribute Sub-TLVs 200 6.1. Encapsulation Sub-TLV 202 This Sub-TLV is defined in section 3.2 "Encapsulation Sub-TLVs for 203 Particular Tunnel Types" of [I-D.ietf-idr-tunnel-encaps] from both a 204 syntax and semantic standpoint. Usage is defined in Section 7. 206 6.2. Protocol Type Sub-TLV 208 This Sub-TLV is defined in section 3.4.1 "Protocol Type sub-TLV" of 209 [I-D.ietf-idr-tunnel-encaps] from a syntactic, semantic, and usage 210 standpoint. 212 6.3. Endpoint Sub-TLV 214 The value field carries the Network Address to be used as tunnel 215 destination address. 217 If length is 4, the tunnel endpoint is an IPv4 address. 219 If length is 16, the tunnel endpoint is an IPv6 address. 221 6.4. Color Sub-TLV 223 The valued field is a 4-octet opaque unsigned integer. 225 The color value is user-defined and configured locally on the 226 advertising routers. It may be used by service providers to define 227 policies on the ingress routers, for example, to control the 228 selection of the tunnel to use. 230 This color value can be referenced by BGP routes carrying Color 231 Extended Community [I-D.ietf-idr-tunnel-encaps]. If the tunnel is 232 used to reach the BGP Next-Hop of BGP routes, then attaching a Color 233 Extended Community attached to those routes express the willingness 234 of the BGP speaker to use a tunnel of the same color. 236 6.5. IP QoS Field 238 This Sub-TLV is defined in section 3.3.1 "IPv4 DS Field" of 239 [I-D.ietf-idr-tunnel-encaps] from a syntactic, semantic and usage 240 standpoint. 242 6.6. UDP Destination Port 244 This Sub-TLV is defined in section 3.3.2 "UDP Destination Port" of 245 [I-D.ietf-idr-tunnel-encaps] from a syntactic, semantic and usage 246 standpoint. 248 6.7. future sub-TLV allocations 250 [I-D.ietf-idr-tunnel-encaps] similarly defines Tunnel Encapsulation 251 Attribute Sub-TLVs. IGP and BGP have separate IANA registries 252 allowing for separate sub-TLV definitions. If the same information 253 is to be advertised for both IGP and BGP tunnel encapsulation, it is 254 RECOMMENDED to use the same code point, semantic and syntax. 255 However, it is to be noted that the "BGP Tunnel Encapsulation 256 Attribute Sub-TLVs" registry, allows for sub-TLV with two octets of 257 length, while the "IGP Tunnel Encapsulation Attribute Sub-TLVs" 258 registry only allows for one octet of length. Hence two-octets BGP 259 Tunnel Encapsulation Attribute Sub-TLVs won't be able to be defined 260 for IGP Tunnels. Eventually, their information may be split over 261 multiple sub-TLVs. 263 7. Usage of the Tunnel Encapsulation attribute 265 The advertisement of an Encapsulation Type Sub-TLVs indicates that 266 the advertising router support a particular tunnel encapsulation 267 along with the parameters to be used for the tunnel. The decision to 268 use that tunnel is driven by the capability of the ingress router to 269 support the encapsulation type and the policy on the ingress router. 270 The color sub-TLV may be used as an input to this policy. Note that 271 some tunnel types may require the execution of an explicit tunnel 272 setup protocol before they can be used to carry data. 274 A tunnel MUST NOT be used if there is no route toward the IP address 275 specified in the Endpoint Sub-TLV or if the route is not advertised 276 by the router advertising the Tunnel Encapsulation attribute for the 277 tunnel. 279 8. IANA Considerations 281 8.1. OSPF Router Information 283 This document requests IANA to allocate a new code point from the 284 OSPF Router Information (RI) registry. 286 Value TLV Name Reference 287 ----- ------------------------------------ ------------- 288 TBD1 Tunnel Capabilities This document 290 8.2. IGP Tunnel Encapsulation Attribute Sub-TLVs Registry 292 This document requests IANA to create a new registry "IGP Tunnel 293 Encapsulation Attribute Sub-TLVs" with the following registration 294 procedure: 296 Registry Name: IGP Tunnel Encapsulation Attribute Sub-TLVs 298 Value Name Reference 299 ------- ------------------------------------ ------------- 300 0 Reserved This document 301 1 Encapsulation This document 302 2 Protocol Type This document 303 3 Endpoint This document 304 4 Color This document 305 5 Unassigned 306 6 IP QoS This document 307 7 UDP Destination Port This document 308 8-250 Unassigned 309 251-254 Experimental This document 310 255 Reserved This document 312 Assignments of Encapsulation Attribute Types are via Standards Action 313 [RFC5226]. 315 9. Security Considerations 317 Security considerations applicable to softwires can be found in the 318 mesh framework [RFC5565]. In general, security issues of the tunnel 319 protocols signaled through this OSPF capability extension are 320 inherited. 322 If a third-party is able to modify any of the information that is 323 used to form encapsulation headers, to choose a tunnel type, or to 324 choose a particular tunnel for a particular payload type, user data 325 packets may end up getting misrouted, misdelivered, and/or dropped. 327 Security considerations for the base OSPF protocol are covered in 328 [RFC2328] and [RFC5340]. 330 10. Contributors 332 Uma Chunduri 333 Huawei 334 Email: uma.chunduri@gmail.com 336 11. Acknowledgements 338 This document is partially inspired by [RFC5512]. 340 The authors would like to thank Greg Mirsky, John E Drake, Carlos 341 Pignataro and Karsten Thomann for their valuable comments on this 342 document. Special thanks should be given to Acee Lindem for his 343 detailed reviews of this document. 345 12. References 347 12.1. Normative References 349 [I-D.ietf-idr-tunnel-encaps] 350 Rosen, E., Patel, K., and G. Velde, "The BGP Tunnel 351 Encapsulation Attribute", draft-ietf-idr-tunnel-encaps-06 352 (work in progress), June 2017. 354 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 355 Requirement Levels", BCP 14, RFC 2119, 356 DOI 10.17487/RFC2119, March 1997, 357 . 359 [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an 360 IANA Considerations Section in RFCs", RFC 5226, 361 DOI 10.17487/RFC5226, May 2008, 362 . 364 [RFC7770] Lindem, A., Ed., Shen, N., Vasseur, JP., Aggarwal, R., and 365 S. Shaffer, "Extensions to OSPF for Advertising Optional 366 Router Capabilities", RFC 7770, DOI 10.17487/RFC7770, 367 February 2016, . 369 12.2. Informative References 371 [I-D.ietf-bier-architecture] 372 Wijnands, I., Rosen, E., Dolganow, A., Przygienda, T., and 373 S. Aldrin, "Multicast using Bit Index Explicit 374 Replication", draft-ietf-bier-architecture-07 (work in 375 progress), June 2017. 377 [I-D.ietf-bier-mpls-encapsulation] 378 Wijnands, I., Rosen, E., Dolganow, A., Tantsura, J., 379 Aldrin, S., and I. Meilik, "Encapsulation for Bit Index 380 Explicit Replication in MPLS and non-MPLS Networks", 381 draft-ietf-bier-mpls-encapsulation-07 (work in progress), 382 June 2017. 384 [I-D.xu-mpls-unified-source-routing-instruction] 385 Xu, X., Bryant, S., Raszuk, R., Chunduri, U., Contreras, 386 L., Jalil, L., Assarpour, H., Velde, G., Tantsura, J., and 387 S. Ma, "Unified Source Routing Instruction using MPLS 388 Label Stack", draft-xu-mpls-unified-source-routing- 389 instruction-02 (work in progress), June 2017. 391 [RFC2328] Moy, J., "OSPF Version 2", STD 54, RFC 2328, 392 DOI 10.17487/RFC2328, April 1998, 393 . 395 [RFC5340] Coltun, R., Ferguson, D., Moy, J., and A. Lindem, "OSPF 396 for IPv6", RFC 5340, DOI 10.17487/RFC5340, July 2008, 397 . 399 [RFC5512] Mohapatra, P. and E. Rosen, "The BGP Encapsulation 400 Subsequent Address Family Identifier (SAFI) and the BGP 401 Tunnel Encapsulation Attribute", RFC 5512, 402 DOI 10.17487/RFC5512, April 2009, 403 . 405 [RFC5565] Wu, J., Cui, Y., Metz, C., and E. Rosen, "Softwire Mesh 406 Framework", RFC 5565, DOI 10.17487/RFC5565, June 2009, 407 . 409 [RFC7490] Bryant, S., Filsfils, C., Previdi, S., Shand, M., and N. 410 So, "Remote Loop-Free Alternate (LFA) Fast Reroute (FRR)", 411 RFC 7490, DOI 10.17487/RFC7490, April 2015, 412 . 414 Authors' Addresses 415 Xiaohu Xu (editor) 416 Huawei 418 Email: xuxiaohu@huawei.com 420 Bruno Decraene (editor) 421 Orange 423 Email: bruno.decraene@orange.com 425 Robert Raszuk 426 Bloomberg LP 428 Email: robert@raszuk.net 430 Luis M. Contreras 431 Telefonica I+D 433 Email: luismiguel.contrerasmurillo@telefonica.com 435 Luay Jalil 436 Verizon 438 Email: luay.jalil@verizon.com