idnits 2.17.1 draft-ietf-trill-channel-tunnel-09.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 (June 12, 2016) is 2874 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) -- Looks like a reference, but probably isn't: '4' on line 794 -- Possible downref: Non-RFC (?) normative reference: ref. 'IS-IS' ** Downref: Normative reference to an Informational RFC: RFC 5869 ** Obsolete normative reference: RFC 6347 (Obsoleted by RFC 9147) -- Obsolete informational reference (is this intentional?): RFC 7042 (Obsoleted by RFC 9542) Summary: 2 errors (**), 0 flaws (~~), 1 warning (==), 4 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 INTERNET-DRAFT Donald Eastlake 2 Updates: 7178 Huawei 3 Intended status: Proposed Standard Mohammed Umair 4 IPinfusion 5 Yizhou Li 6 Huawei 7 Expires: December 11, 2016 June 12, 2016 9 TRILL: RBridge Channel Header Extension 10 12 Abstract 14 The IETF TRILL (Transparent Interconnection of Lots of Links) 15 protocol includes an optional mechanism (specified in RFC 7178) 16 called RBridge Channel for the transmission of typed messages between 17 TRILL switches in the same campus and the transmission of such 18 messages between TRILL switches and end stations on the same link. 19 This document specifies extensions to the RBridge Channel protocol 20 header to support two features as follows: (1) a standard method to 21 tunnel payloads whose type can be indicated by Ethertype through 22 encapsulation in RBridge Channel messages; and (2) a method to 23 support security facilities for RBridge Channel messages. This 24 document updates RFC 7178. 26 Status of This Memo 28 This Internet-Draft is submitted to IETF in full conformance with the 29 provisions of BCP 78 and BCP 79. 31 Distribution of this document is unlimited. Comments should be sent 32 to the authors or the TRILL working group mailing list: 33 trill@ietf.org 35 Internet-Drafts are working documents of the Internet Engineering 36 Task Force (IETF), its areas, and its working groups. Note that 37 other groups may also distribute working documents as Internet- 38 Drafts. 40 Internet-Drafts are draft documents valid for a maximum of six months 41 and may be updated, replaced, or obsoleted by other documents at any 42 time. It is inappropriate to use Internet-Drafts as reference 43 material or to cite them other than as "work in progress." 45 The list of current Internet-Drafts can be accessed at 46 http://www.ietf.org/1id-abstracts.html. The list of Internet-Draft 47 Shadow Directories can be accessed at 48 http://www.ietf.org/shadow.html. 50 Table of Contents 52 1. Introduction............................................3 53 1.1 Terminology and Acronyms..............................3 55 2. RBridge Channel Header Extension Format.................5 57 3. Extended RBridge Channel Payload Types..................8 58 3.1 Null Payload...........................................8 59 3.2 Ethertyped Payload.....................................8 60 3.2.1 RBridge Channel Message as the Payload...............9 61 3.2.2 TRILL Data Packet as the Payload.....................9 62 3.2.3 TRILL IS-IS Packet as the Payload...................10 63 3.3 Ethernet Frame........................................11 65 4. Extended RBridge Channel Security......................14 66 4.1 Derived Keying Material...............................14 67 4.2 SType None............................................15 68 4.3 RFC 5310 Based Authentication.........................15 69 4.4 DTLS Pairwise Security................................17 70 4.5 Composite Security....................................18 72 5. Extended RBridge Channel Errors........................19 73 5.1 SubERRs under ERR 6...................................19 74 5.2 Secure Nested RBridge Channel Errors..................19 76 6. IANA Considerations....................................20 77 6.1 Extended RBridge Channel Protocol Number..............20 78 6.2 RBridge Channel Error Codes Subregistry...............20 80 7. Security Considerations................................21 82 Normative References......................................22 83 Informative References....................................23 85 Appendix Z: Change History................................24 87 Acknowledgements..........................................26 88 Authors' Addresses........................................27 90 1. Introduction 92 The IETF TRILL base protocol [RFC6325] [RFC7780] has been extended 93 with the RBridge Channel [RFC7178] facility to support transmission 94 of typed messages (for example BFD (Bidirectional Forwarding 95 Detection) [RFC7175]) between two TRILL switches (RBridges) in the 96 same campus and the transmission of such messages between RBridges 97 and end stations on the same link. When sent between RBridges in the 98 same campus, a TRILL Data packet with a TRILL Header is used and the 99 destination RBridge is indicated by nickname. When sent between a 100 RBridge and an end station on the same link in either direction, a 101 native RBridge Channel message [RFC7178] is used with no TRILL Header 102 and the destination port or ports are indicated by a MAC address. 103 (There is no mechanism to stop end stations on the same link, from 104 sending native RBridge Channel messages to each other; however, such 105 use is outside the scope of this document.) 107 This document updates [RFC7178] and specifies extensions to the 108 RBridge Channel header that provide two additional facilities as 109 follows: 111 (1) A standard method to tunnel payloads whose type may be 112 indicated by Ethertype through encapsulation in RBridge 113 Channel messages. 115 (2) A method to provide security facilities for RBridge Channel 116 messages. 118 Use of each of these facilities is optional, except that, as 119 specified below, if this header extension is implemented there are 120 two payload types that MUST be implemented. Both of the above 121 facilities can be used in the same packet. In case of conflict 122 between this document and [RFC7178], this document takes precedence. 124 1.1 Terminology and Acronyms 126 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 127 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 128 "OPTIONAL" in this document are to be interpreted as described in 129 [RFC2119]. 131 This document uses terminology and acronyms defined in [RFC6325] and 132 [RFC7178]. Some of these are repeated below for convenience along 133 with additional new terms and acronyms. 135 application_data - A DTLS [RFC6347] message type. 137 Data Label - VLAN or FGL. 139 DTLS - Datagram Transport Level Security [RFC6347]. 141 FCS - Frame Check Sequence. 143 FGL - Fine Grained Label [RFC7172]. 145 HKDF - Hash based Key Derivation Function [RFC5869]. 147 IS-IS - Intermediate System to Intermediate Systems [IS-IS]. 149 PDU - Protocol Data Unit. 151 MTU - Maximum Transmission Unit 153 RBridge - An alternative term for a TRILL switch. 155 SHA - Secure Hash Algorithm [RFC6234]. 157 Sz - Campus wide minimum link MTU [RFC6325] [RFC7780]. 159 TRILL - Transparent Interconnection of Lots of Links or Tunneled 160 Routing in the Link Layer. 162 TRILL switch - A device that implements the TRILL protocol 163 [RFC6325] [RFC7780], sometimes referred to as an RBridge. 165 2. RBridge Channel Header Extension Format 167 The general structure of an RBridge Channel message between two TRILL 168 switches (RBridges) in the same campus is shown in Figure 2.1 below. 169 The structure of a native RBridge Channel message sent between an 170 RBridge and an end station on the same link, in either direction, is 171 shown in Figure 2.2 and, compared with the first case, omits the 172 TRILL Header, inner Ethernet addresses, and Data Label. A Protocol 173 field in the RBridge Channel Header gives the type of RBridge Channel 174 message and indicates how to interpret the Channel Protocol Specific 175 Payload [RFC7178]. 177 +-----------------------------------+ 178 | Link Header | 179 +-----------------------------------+ 180 | TRILL Header | 181 +-----------------------------------+ 182 | Inner Ethernet Addresses | 183 +-----------------------------------+ 184 | Data Label (VLAN or FGL) | 185 +-----------------------------------+ 186 | RBridge Channel Header | 187 +-----------------------------------+ 188 | Channel Protocol Specific Payload | 189 +-----------------------------------+ 190 | Link Trailer (FCS if Ethernet) | 191 +-----------------------------------+ 193 Figure 2.1 RBridge Channel Packet Structure 195 +-----------------------------------+ 196 | Ethernet Link Header | 197 +-----------------------------------+ 198 | RBridge Channel Header | 199 +-----------------------------------+ 200 | Channel Protocol Specific Payload | 201 +-----------------------------------+ 202 | FCS | 203 +-----------------------------------+ 205 Figure 2.2 Native RBridge Channel Frame 207 The RBridge Channel Header looks like this: 209 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 210 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 211 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 212 | 0x8946 | CHV=0 | Channel Protocol | 213 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 214 | Flags | ERR | | 215 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / 216 / Channel Protocol Specific Data / 217 /-+-+-+-+-+- / 219 Figure 2.3 RBridge Channel Header 221 where 0x8946 is the RBridge Channel Ethertype and CHV is the Channel 222 Header Version. This document is based on RBridge Channel version 223 zero. 225 The header extensions specified herein are in the form of an RBridge 226 Channel protocol, the RBridge Channel Extension Protocol. Figure 2.4 227 below expands the RBridge Channel Header and Protocol Specific 228 Payload above for the case where the header extension is present. 230 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 231 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 232 RBridge Channel Header: 233 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 234 | 0x8946 | CHV=0 | Channel Protocol=[TBD]| 235 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 236 | Flags | ERR | 237 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 238 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 239 Header Extension Specific: | SubERR| RESV4 | SType | PType | 240 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 241 | Security Information, variable length (0 length if SType = 0) / 242 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-... 243 | Tunneled Data, variable length 244 | ... 246 Figure 2.4 RBridge Channel Header Extension Structure 248 The RBridge Channel Header Protocol field is used to indicate that 249 the header extension is present. Its contents MUST be the value 250 allocated for this purpose (see Section 6). The use of an RBridge 251 Channel protocol to indicate extension makes it easy to determine if 252 a remote RBridge in the campus supports extension since RBridges 253 advertise in their LSP which such protocols they support. 255 The Extended RBridge Channel Protocol Specific Data fields are as 256 follows: 258 SubERR: This field provides further details when an error is 259 indicated in the RBridge Channel ERR field. If ERR is zero, 260 then SubERR MUST be sent as zero and ignored on receipt. See 261 Section 5. 263 RESV4: This field MUST be sent as zero. If non-zero when received, 264 this is an error condition (see Section 5). 266 SType: This field describes the type of security information and 267 features, including keying material, being used or provided by 268 the extended RBridge Channel message. See Section 4. 270 PType: Payload type. This describes the tunneled data. See Section 271 3 below. 273 Security Information: Variable length information. Length is zero 274 if SType is zero. See Section 4. 276 The RBridge Channel Header Extension is integrated with the RBridge 277 Channel facility. Extension errors are reported as if they were 278 RBridge Channel errors, using newly allocated code points in the ERR 279 field of the RBridge Channel Header supplemented by the SubERR field. 281 3. Extended RBridge Channel Payload Types 283 The Extended RBridge Channel Protocol can carry a variety of payloads 284 as indicated by the PType field. Values are shown in the table below 285 with further explanation after the table. 287 PType Section Description 288 ----- ------- ----------- 289 0 Reserved 290 1 3.1 Null 291 2 3.2 Ethertyped Payload 292 3 3.3 Ethernet Frame 293 4-14 Unassigned 294 15 Reserved 296 Table 3.1 Payload Type Values 298 While implementation of the RBridge Channel Header Extension is 299 optional, if it is implemented PType 1 (Null) MUST be implemented and 300 PType 2 (Ethertyped Payload) with the RBridge Channel Ethertype MUST 301 be implemented. PType 2 for any Ethertypes other than the RBridge 302 Channel Ethertype MAY be implemented. PType 3 MAY be implemented. 304 The processing of any particular extended header RBridge Channel 305 message and its payload depends on meeting local security and other 306 policy at the destination TRILL switch or end station. 308 3.1 Null Payload 310 The Null payload type (PType = 1) is intended to be used for testing 311 or for messages such as key negotiation or the like where only 312 security information is present. It indicates that there is no 313 payload. Any data after the Security Information field is ignored. If 314 the RBridge Channel Header Extension is implemented, the Null Payload 315 MUST be supported in the sense that an "Unsupported PType" error is 316 not returned (see Section 5). Any particular use of the Null Payload 317 should specify what VLAN or FGL and what priority should be used in 318 the inner Data Label of the RBridge Channel message (or in an outer 319 VLAN tag for the native RBridge Channel message case) when those 320 values are relevant. 322 3.2 Ethertyped Payload 324 A PType of 2 indicates that the payload of the extended RBridge 325 Channel message begins with an Ethertype. A TRILL switch supporting 326 the RBridge Channel Header Extension MUST support a PType of 2 with a 327 payload beginning with the RBridge Channel Ethertype as described in 328 Section 3.2.1. Other Ethertypes, including the TRILL and L2-IS-IS 329 Ethertypes as described in Section 3.2.2 and 3.2.3, MAY be supported. 331 3.2.1 RBridge Channel Message as the Payload 333 A PType of 2 whose payload has an initial RBridge Channel Ethertype 334 indicates an encapsulated RBridge Channel message. A typical reason 335 for sending an RBridge Channel message inside an extended RBridge 336 Channel message is to provide security services, such as 337 authentication or encryption, for the encapsulated message. 339 This RBridge Channel message type looks like the following: 341 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 342 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 343 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 344 | RBridge-Channel (0x8946) | CHV=0 | Channel Protocol=[TBD]| 345 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 346 | Flags | ERR | SubERR| RESV4 | SType | 0x2 | 347 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 348 / Security Information, variable length (0 length if SType = 0) / 349 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 350 | RBridge-Channel (0x8946) | CHV=0 |Nested Channel Protocol| 351 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 352 | Flags | ERR | | 353 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 354 | Nested Channel Protocol Specific Data ... / 355 / / 357 Figure 3.1 Message Structure with RBridge Channel Payload 359 3.2.2 TRILL Data Packet as the Payload 361 A PType of 2 whose payload has an initial TRILL Ethertype indicates 362 an encapsulated TRILL Data packet as shown in the figure below. If 363 this Ethertype is supported for PType = 2 and the message meets local 364 policy for acceptance, the TRILL Data packet is handled as if it had 365 been received by the destination TRILL switch on the port where the 366 Extended RBridge Channel message was received. 368 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 369 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 370 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 371 | RBridge-Channel (0x8946) | CHV=0 | Channel Protocol=[TBD]| 372 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 373 | Flags | ERR | SubERR| RESV4 | SType | 0x2 | 374 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 375 / Security Information, variable length (0 length if SType = 0) / 376 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 377 | TRILL (0x22F3) | V |A|C|M| RESV |F| Hop Count | 378 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 379 | Egress Nickname | Ingress Nickname | 380 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 381 / Optional Flags Word / 382 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 383 | Inner.MacDA | 384 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 385 | Inner.MacDA continued | Inner.MacSA | 386 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 387 | Inner.MacSA (cont.) | 388 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 389 | Inner Data Label (2 or 4 bytes) 390 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-... 391 | TRILL Data Packet payload 392 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-... 394 Figure 3.2 Message Structure with TRILL Data Packet Payload 396 The optional flags word is only present if the F bit in the TRILL 397 Header is one [RFC7780]. 399 3.2.3 TRILL IS-IS Packet as the Payload 401 A PType of 2 and an initial L2-IS-IS Ethertype indicates that the 402 payload of the Extended RBridge Channel protocol message is an 403 encapsulated TRILL IS-IS PDU as shown in Figure 3.3. If this 404 Ethertype is supported for PType = 2, the tunneled TRILL IS-IS packet 405 is processed by the destination RBridge if it meets local policy. One 406 possible use is to expedite the receipt of a link state PDU (LSP) by 407 some TRILL switch or switches with an immediate requirement for the 408 link state information. A link local IS-IS PDU (Hello, CSNP, or PSNP 409 [IS-IS]; MTU-probe or MTU-ack [RFC7176]; or circuit scoped FS-LSP, 410 FS-CSNP or FS-PSNP [RFC7356]) would not normally be sent via this 411 Extended RBridge Channel method except possibly to encrypt it since 412 such PDUs can just be transmitted on the link and do not normally 413 need RBridge Channel handling. 415 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 416 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 417 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 418 | RBridge-Channel (0x8946) | CHV=0 | Channel Protocol=[TBD]| 419 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 420 | Flags | ERR | SubERR| RESV4 | SType | 0x2 | 421 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 422 / Security Information, variable length (0 length if SType = 0) / 423 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-... 424 | L2-IS-IS (0x22F4) | 0x83 | 425 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 426 | rest of IS-IS PDU 427 +-+-+-+-+-+-+-+-+-+-+-+-+-+-... 429 Figure 3.3 Message Structure with TRILL IS-IS Packet Payload 431 3.3 Ethernet Frame 433 If PType is 3, the extended RBridge Channel payload is an Ethernet 434 frame as might be received from or sent to an end station except that 435 the encapsulated Ethernet frame's FCS is omitted, as shown in Figure 436 3.4. (There is still an overall final FCS if the RBridge Channel 437 message is being sent on an Ethernet link.) If this PType is 438 implemented and the message meets local policy, the encapsulated 439 frame is handled as if it had been received on the port on which the 440 Extended RBridge Channel message was received. 442 The priority of the RBridge Channel message can be copied from the 443 Ethernet frame VLAN tag, if one is present, except that priority 7 444 SHOULD only be used for messages critical to establishing or 445 maintaining adjacency and priority 6 SHOULD only be used for other 446 important control messages. 448 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 449 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 450 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 451 | RBridge-Channel (0x8946) | 0x0 | Channel Protocol=[TBD]| 452 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 453 | Flags | ERR | SubERR| RESV4 | SType | 0x3 | 454 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 455 / Security Information, variable length (0 length if SType = 0) / 456 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 457 | MacDA | 458 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 459 | MacDA (cont.) | MacSA | 460 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 461 | MacSA (cont.) | 462 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 463 | Any Ethernet frame tagging... 464 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-... 465 | Ethernet frame payload... 466 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-... 468 Figure 3.4 Message Structure with Ethernet Frame Payload 470 In the case of a non-Ethernet link, such as a PPP (Point-to-Point 471 Protocol) link [RFC6361], the ports on the link are considered to 472 have link local synthetic 48-bit MAC addresses constructed as 473 described below. These constructed addresses MAY be used as a MacSA. 474 If the RBridge Channel message is individually addressed to a link 475 local port, the source TRILL switch will have the information to 476 construct such a MAC address for the destination TRILL switch port 477 and that MAC address MAY be used as the MacDA. By the use of such a 478 MacSA and either such a unicast MacDA or a group addressed MacDA, an 479 Ethernet frame can be sent between two TRILL switch ports connected 480 by a non-Ethernet link. 482 These synthetic TRILL switch port MAC addresses for non-Ethernet 483 ports are constructed as follows: 0xFEFF, the nickname of the TRILL 484 switch used in TRILL Hellos sent on that port, and the Port ID that 485 the TRILL switch has assigned to that port, as shown in Figure 3.5. 486 (Both the Port ID of the port on which a TRILL Hello is sent and the 487 nickname of the sending TRILL switch appear in the Special VLANs and 488 Flags sub-TLV [RFC7176] in TRILL IS-IS Hellos.) The resulting MAC 489 address has the Local bit on and the Group bit off [RFC7042]. 490 However, since there will be no Ethernet end stations on a non- 491 Ethernet link in a TRILL campus, such synthetic MAC addresses cannot 492 conflict on the link with a real Ethernet port address regardless of 493 their value. 495 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 496 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 497 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 498 | 0xFEFF | Nickname | 499 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 500 | Port ID | 501 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 503 Figure 3.5 Synthetic MAC Address 505 4. Extended RBridge Channel Security 507 Table 4.1 below gives the assigned values of the SType field and 508 their meaning. Use of DTLS Pairwise Security (SType = 2) or Composite 509 Security (SType = 3) is RECOMMENDED. 511 While [RFC5310] based authentication is also specified and can be use 512 for both pairwise and multi-destination traffic, it provides only 513 authentication and is not considered to meet current security 514 standards. For example, it does not provide for key negotiation; 515 thus, its use is NOT RECOMMENDED. 517 The Extended RBridge Channel DTLS based security specified in Section 518 4.4 and the Composite Security specified in Section 4.5 below are 519 intended for pairwise (known unicast) use. That is, the case where 520 the M bit in the TRILL Header is zero and any Outer.MacDA is 521 individually addressed. 523 Multi-destination Extended RBridge Channel packets would be those 524 with the M bit in the TRILL Header set to one or, in the native 525 RBridge Channel case, the Outer.MacDA would be group addressed. The 526 DTLS Pairwise Security and Composite Security STypes can also be used 527 in the multi-destination case by serially unicasting the messages to 528 all data accessible RBridges (or stations in the native RBridge 529 Channel case) in the recipient group. For TRILL Data packets, that 530 group is specified by the Data Label; for native frames, the group is 531 specified by the groupcast destination MAC address. It is intended to 532 specify a true group keyed SType to secure multi-destination packets 533 in a separate document [GroupKey]. 535 SType Section Meaning 536 ----- ------- ------- 537 0 4.2 None 538 1 4.3 [RFC5310] Based Authentication 539 2 4.4 DTLS Pairwise Security 540 3 4.5 Composite Security 541 4-14 Available for assignment by IETF Review 542 15 Reserved 544 Table 4.1 SType Values 546 4.1 Derived Keying Material 548 In some cases, it is possible to use material derived from [RFC5310] 549 IS-IS keying material as an element of Extended RBridge Channel 550 security. It is assumed that the IS-IS keying material is of high 551 quality. The material actually used is derived from the IS-IS keying 552 material as follows: 554 Derived Material = 555 HKDF-Expand-SHA256 ( IS-IS-key, "Extended Channel" | 0x0S, L ) 557 where "|" indicates concatenation, HKDF is as in [RFC5869], SHA256 is 558 as in [RFC6234], IS-IS-key is the input IS-IS keying material, 559 "Extended Channel" is the 16-character ASCII [RFC20] string indicated 560 without any leading length byte or trailing zero byte, 0x0S is a 561 single byte where S is the SType for which this key derivation is 562 being used and the upper nibble is zero, and L is the length of 563 output-derived material needed. 565 Whenever IS-IS keying material is being used as above, the underlying 566 [RFC5310] keying material might expire or be invalidated. At the time 567 of or before such expiration or invalidation, the use of the Derived 568 Material from the IS-IS keying material MUST cease. Continued 569 security MAY use new derived material from currently valid [RFC5310] 570 keying material. 572 4.2 SType None 574 No security services are being invoked. The length of the Security 575 Information field (see Figure 2.4) is zero. 577 4.3 RFC 5310 Based Authentication 579 This SType provides security for Extended RBridge Channel messages 580 similar to that provided for [IS-IS] PDUs by the [IS-IS] 581 Authentication TLV. The Security Information (see Figure 2.4) is as 582 shown in Figure 4.1. 584 1 1 1 1 1 1 585 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 586 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 587 | RESV | Size | 588 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 589 | Key ID | 590 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 591 | | 592 + 593 | Authentication Data (Variable) 594 + 595 | 596 +-+-+-+-+-+-+-+-+-+-+-+-+-... 598 Figure 4.1 SType 1 Security Information 600 o RESV: Four bits that MUST be sent as zero and ignored or receipt. 602 o Size: Set to 2 + the size of Authentication Data in bytes. 604 o Key ID: specifies the keying value and authentication algorithm 605 that the Key ID specifies for TRILL IS-IS LSP [RFC5310] 606 Authentication TLVs. The keying material actually used is derived 607 as shown in Section 4.1. 609 o Authentication Data: The authentication data produced by the 610 derived key and algorithm associated with the Key ID acting on the 611 part of the TRILL Data packet shown. Length of the authentication 612 data depends on the algorithm. The authentication value is 613 included in the security information field and is treated as zero 614 when authentication is calculated. 616 As show in Figure 4.2, the area covered by this authentication starts 617 with the byte immediately after the TRILL Header optional Flag Word 618 if it is present. If the Flag Word is not present, it starts after 619 the TRILL Header Ingress Nickname. In either case, it extends to just 620 before the TRILL Data packet link trailer. For example, for an 621 Ethernet packet it would extend to just before the FCS. 623 +-----------------------------+ 624 | Link Header | 625 +-----------------------------+ 626 | TRILL Header | 627 | (plus optional flag word) | 628 +-----------------------------+ ^ 629 | Inner Ethernet Addresses | | 630 +-----------------------------+ . 631 | Data Label (VLAN or FGL) | | 632 +-----------------------------+ . 633 | RBridge Channel Header | | <-authentication 634 +-----------------------------+ . 635 | Extended Channel Header | | 636 | (plus Security Information)| . 637 +-----------------------------+ | 638 | Payload | . 639 +-----------------------------+ v 640 | Link Trailer | 641 +-----------------------------+ 643 Figure 4.2. SType 1 Authentication Coverage 645 In the native RBridge Channel case this authentication coverage is as 646 specified in the above paragraph except that it starts with the 647 RBridge Channel Ethertype, since there is no TRILL Header, inner 648 Ethernet addresses, or inner Data Label (see Figure 4.3). 650 +-----------------------------+ 651 | Ethernet Header | 652 +-----------------------------+ ^ 653 | RBridge Channel Header | | 654 +-----------------------------+ . 655 | Extended Channel Header | | <-authentication 656 | (plus Security Information)| . 657 +-----------------------------+ | 658 | Payload | . 659 +-----------------------------+ v 660 | Ethernet Trailer | 661 +-----------------------------+ 663 Figure 4.3. Native SType 1 Authentication Coverage 665 While RBridges, which are IS-IS routers, can reasonably be expected 666 to hold [RFC5310] keying, so that this SType can be used for RBridge 667 Channel messages, how end stations might come to hold [RFC5310] 668 keying is beyond the scope of this document. Thus this SType might 669 not be applicable to native RBridge Channel messages. 671 4.4 DTLS Pairwise Security 673 DTLS [RFC6347] supports key negotiation and provides both encryption 674 and authentication. The RBridge Channel Extended Header DTLS Pairwise 675 SType uses a negotiated DTLS version that MUST NOT be less than 1.2. 677 When DTLS pairwise security is used, the entire payload of the 678 Extended RBridge Channel packet, starting just after the null 679 Security Information and ending just before the link trailer, is one 680 or more DTLS records [RFC6347]. As specified in [RFC6347], DTLS 681 records MUST be limited by the path MTU, in this case so each record 682 fits entirely within a single Extended RBridge Channel message. A 683 minimum path MTU can be determined from the TRILL campus minimum MTU 684 Sz, which will not be less than 1470 bytes, by allowing for the TRILL 685 Data packet, extended RBridge Channel, and DTLS framing overhead. 686 With this SType, the security information between the extended 687 RBridge Channel header and the payload is null because all the 688 security information is in the payload area. 690 The DTLS Pairwise keying is set up between a pair of RBridges 691 independent of Data Label using messages of a priority configurable 692 at the RBridge level which defaults to priority 6. DTLS message types 693 other than application_data can be the payload of an extended RBridge 694 Channel message with a TRILL Header using any Data Label. Actual 695 application_data sent within such a message using this SType SHOULD 696 use the Data Label and priority as specified for that 697 application_data. In this case, the PType value in the RBridge 698 Channel Header Extension applies to the decrypted application_data. 700 TRILL switches that implement the extended RBridge Channel DTLS 701 Pairwise SType SHOULD support the use of certificates for DTLS but 702 certificate size may be limited by the DTLS requirement that each 703 record fit within a single message. 705 TRILL switches that support the extended RBridge Channel DTLS 706 Pairwise SType MUST support the use of pre-shared keys. If the 707 psk_identity (see [RFC4279]) is two bytes, it is interpreted as a 708 [RFC5310] Key ID and the value derived as shown in Section 4.1 from 709 that key is used as a pre-shared key for DTLS negotiation. A 710 psk_identity with a length other than two bytes MAY be used to 711 indicate other implementation dependent pre-shared keys. Pre-shared 712 keys used for DTLS negotiation SHOULD be shared only by the pair of 713 end points; otherwise, secuirty could be attacked by diverting 714 messages to another end point holding that pre-shared key. 716 4.5 Composite Security 718 Composite Security (SType = 3) is the combination of DTLS Pairwise 719 Security and [RFC5310] Based Authentication. On transmission, the 720 DTLS record or records to be sent are secured as specified in Section 721 4.4 then used as the payload for the application of Authentication as 722 specified in Section 4.3. On reception, the [RFC5310] based 723 authentication is verified first and an error returned if it fails. 724 Then the DTLS record(s) are processed. 726 An advantage of Composite Security is that the payload is 727 authenticated and encrypted with a modern security protocol and, in 728 addition, the RBridge Channel Header and (except in the native case) 729 preceding MAC addresses and Data Label are provided with some 730 authentication. 732 5. Extended RBridge Channel Errors 734 RBridge Channel Header Extension errors are reported like RBridge 735 Channel errors. The ERR field is set to one of the following error 736 codes: 738 ERR Meaning 739 --- --------- 740 6 Unknown or unsupported field value 741 7 Authentication failure 742 8 Error in nested RBridge Channel message 744 Table 5.1 Additional ERR Values 746 5.1 SubERRs under ERR 6 748 If the ERR field is 6, the SubERR field indicates the problematic 749 field or value as shown in the table below. 751 SubERR Meaning (for ERR = 6) 752 ------ --------------------- 753 0 Reserved 754 1 Non-zero RESV4 nibble 755 2 Unsupported SType 756 3 Unsupported PType 757 4 Unknown Key ID 758 5 Unsupported Ethertype with PType = 2 759 6 Unsupported authentication algorithm for SType = 1 761 Table 5.2 SubERR values under ERR 6 763 5.2 Secure Nested RBridge Channel Errors 765 If 766 an extended RBridge Channel message is sent with security and with 767 a payload type (PType) indicating an Ethertyped payload and the 768 Ethertype indicates a nested RBridge Channel message 769 and 770 there is an error in the processing of that nested message that 771 results in a return RBridge Channel message with a non-zero ERR 772 field, 773 then that returned message SHOULD also be nested in an extended 774 RBridge Channel message using the same type of security. In this 775 case, the ERR field in the Extended RBridge Channel envelope is set 776 to 8 indicating that there is a nested error in the message being 777 tunneled back. 779 6. IANA Considerations 781 This section lists IANA Considerations. 783 6.1 Extended RBridge Channel Protocol Number 785 IANA is requested to assign TBD [4 recommended] from the range 786 assigned by Standards Action as the RBridge Channel protocol number 787 to indicate RBridge Channel Header Extension. 789 The added RBridge Channel protocols registry entry on the TRILL 790 Parameters web page is as follows: 792 Protocol Description Reference 793 -------- -------------------------- ---------------- 794 TBD[4] RBridge Channel Extension [this document] 796 6.2 RBridge Channel Error Codes Subregistry 798 IANA is requested to create a "RBridge Channel Error Codes" 799 subregistry under the "RBridge Channel Protocols" registry. The 800 header information is as follows: 802 Registration Procedures: IETF Review 803 References: [RFC7178] [this document] 805 The subregistry is to have columns and entries as follows: 807 Code Meaning Reference 808 ---- ------- --------- 809 [populate rows for codes 0 through 5 from Section 3.2 of 810 [RFC7178] with reference [RFC7178] ] 811 [populate rows for codes 6 through 8 from Table 5.1 of this 812 document with reference [this document] ] 813 9-15 Unassigned 814 16 Reserved 816 7. Security Considerations 818 The RBridge Channel Header Extension has potentially positive and 819 negative effects on security. 821 On the positive side, it provides optional security that can be used 822 to authenticate and/or encrypt RBridge Channel messages. Some RBridge 823 Channel message payloads, such as BFD [RFC7175], provide their own 824 security but where this is not true, consideration should be given, 825 when specifying an RBridge Channel protocol, to recommending or 826 requiring use of the security features of the RBridge Channel Header 827 Extension. 829 On the negative side, the optional ability to tunnel more payload 830 types and to tunnel them between TRILL switches and to and from end 831 stations can increase risk unless precautions are taken. The 832 processing of decapsulating extended RBridge Channel payloads is not 833 a good place to be liberal in what you accept. This is because the 834 tunneling facility makes it easier for unexpected messages to pop up 835 in unexpected places in a TRILL campus due to accidents or the 836 actions of an adversary. Local policies should generally be strict 837 and only accept payload types required and then only with adequate 838 security for the particular circumstances. 840 See the first paragraph of Section 4 for recommendations on SType 841 usage. 843 See [RFC7457] for Security Considerations of DTLS for security. 845 If IS-IS authentication is not being used, then [RFC5310] keying 846 information would not normally be available but that presumably 847 represents a judgment by the TRILL campus operator that no security 848 is needed. 850 See [RFC7178] for general RBridge Channel Security Considerations and 851 [RFC6325] for general TRILL Security Considerations. 853 Normative References 855 [IS-IS] - ISO/IEC 10589:2002, Second Edition, "Information technology 856 -- Telecommunications and information exchange between systems 857 -- Intermediate System to Intermediate System intra-domain 858 routeing information exchange protocol for use in conjunction 859 with the protocol for providing the connectionless-mode network 860 service (ISO 8473)", 2002. 862 [RFC20] - Cerf, V., "ASCII format for network interchange", STD 80, 863 RFC 20, DOI 10.17487/RFC0020, October 1969, . 866 [RFC2119] - BBradner, S., "Key words for use in RFCs to Indicate 867 Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, 868 March 1997, . 870 [RFC4279] - Eronen, P., Ed., and H. Tschofenig, Ed., "Pre-Shared Key 871 Ciphersuites for Transport Layer Security (TLS)", RFC 4279, DOI 872 10.17487/RFC4279, December 2005, . 875 [RFC5310] - Bhatia, M., Manral, V., Li, T., Atkinson, R., White, R., 876 and M. Fanto, "IS-IS Generic Cryptographic Authentication", RFC 877 5310, DOI 10.17487/RFC5310, February 2009, . 880 [RFC5869] - Krawczyk, H. and P. Eronen, "HMAC-based Extract-and- 881 Expand Key Derivation Function (HKDF)", RFC 5869, May 2010, 882 . 884 [RFC6325] - Perlman, R., Eastlake 3rd, D., Dutt, D., Gai, S., and A. 885 Ghanwani, "Routing Bridges (RBridges): Base Protocol 886 Specification", RFC 6325, DOI 10.17487/RFC6325, July 2011, 887 . 889 [RFC6347] - Rescorla, E. and N. Modadugu, "Datagram Transport Layer 890 Security Version 1.2", RFC 6347, January 2012, . 893 [RFC7172] - Eastlake 3rd, D., Zhang, M., Agarwal, P., Perlman, R., 894 and D. Dutt, "Transparent Interconnection of Lots of Links 895 (TRILL): Fine-Grained Labeling", RFC 7172, DOI 896 10.17487/RFC7172, May 2014, . 899 [RFC7176] - Eastlake 3rd, D., Senevirathne, T., Ghanwani, A., Dutt, 900 D., and A. Banerjee, "Transparent Interconnection of Lots of 901 Links (TRILL) Use of IS-IS", RFC 7176, May 2014, 902 . 904 [RFC7178] - Eastlake 3rd, D., Manral, V., Li, Y., Aldrin, S., and D. 905 Ward, "Transparent Interconnection of Lots of Links (TRILL): 906 RBridge Channel Support", RFC 7178, DOI 10.17487/RFC7178, May 907 2014, . 909 [RFC7356] - Ginsberg, L., Previdi, S., and Y. Yang, "IS-IS Flooding 910 Scope Link State PDUs (LSPs)", RFC 7356, September 2014, 911 . 913 [RFC7780] - Eastlake 3rd, D., Zhang, M., Perlman, R., Banerjee, A., 914 Ghanwani, A., and S. Gupta, "Transparent Interconnection of 915 Lots of Links (TRILL): Clarifications, Corrections, and 916 Updates", RFC 7780, DOI 10.17487/RFC7780, February 2016, 917 . 919 Informative References 921 [RFC6234] - Eastlake 3rd, D. and T. Hansen, "US Secure Hash 922 Algorithms (SHA and SHA-based HMAC and HKDF)", RFC 6234, DOI 923 10.17487/RFC6234, May 2011, . 926 [RFC6361] - Carlson, J. and D. Eastlake 3rd, "PPP Transparent 927 Interconnection of Lots of Links (TRILL) Protocol Control 928 Protocol", RFC 6361, August 2011 930 [RFC7042] - Eastlake 3rd, D. and J. Abley, "IANA Considerations and 931 IETF Protocol and Documentation Usage for IEEE 802 Parameters", 932 BCP 141, RFC 7042, October 2013. 934 [RFC7175] - Manral, V., Eastlake 3rd, D., Ward, D., and A. Banerjee, 935 "Transparent Interconnection of Lots of Links (TRILL): 936 Bidirectional Forwarding Detection (BFD) Support", RFC 7175, 937 May 2014. 939 [RFC7457] - Sheffer, Y., Holz, R., and P. Saint-Andre, "Summarizing 940 Known Attacks on Transport Layer Security (TLS) and Datagram 941 TLS (DTLS)", RFC 7457, February 2015, . 944 [GroupKey] - D. Eastlake et al, "Group Keying Protocol", draft-ietf- 945 trill-group-keying, work in progress. 947 Appendix Z: Change History 949 RFC Editor: Please delete this Appendix before publication. 951 From -00 to -01 953 1. Fix references for RFCs published, etc. 955 2. Explicitly mention in the Abstract and Introduction that this 956 document updates [RFC7178]. 958 3. Add this Change History Appendix. 960 From -01 to -02 962 1. Remove section on the "Scope" feature as mentioned in 963 http://www.ietf.org/mail-archive/web/trill/current/msg06531.html 965 2. Editorial changes to IANA Considerations to correspond to draft- 966 leiba-cotton-iana-5226bis-11.txt. 968 3. Improvements to the Ethernet frame payload type. 970 4. Other Editorial changes. 972 From -02 to -03 974 1. Update TRILL Header to correspond to [RFC7780]. 976 2. Remove a few remnants of the "Scope" feature that was removed from 977 -01 to -02. 979 3. Substantial changes to and expansion of Section 4 including adding 980 details of DTLS security. 982 4. Updates and additions to the References. 984 5. Other minor editorial changes. 986 From -03 to -04 988 1. Add SType for [RFC5310] keying based security that provides 989 encryption as well as authentication. 991 2. Editorial improvements and fixes. 993 From -04 to -05 995 1. Primary change is collapsing the previous PTypes 2, 3, and 4 for 996 RBridge Channel message, TRILL Data, and TRILL IS-IS into one by 997 including the Ethertype. Previous PType 5 is renumbered as 3. 999 2. Add Channel Tunnel Crypto Suites to IANA Considerations 1001 3. Add some material to Security Considerations, 1003 4. Assorted Editorial changes. 1005 From -05 to -06 1007 Fix editorials found during WG Last Call. 1009 From -06 to -07 1011 Minor editorial changes resulting for Shepherd review. 1013 From -07 to -08 1015 Move group keyed security out of the draft. Simplify and improve 1016 remaining security provisions. 1018 From -08 to -09 1020 1. Updates based on Routing Directorate review. 1022 2. Improvements to specification of pairwise DTLS and significant 1023 other security improvements. 1025 Acknowledgements 1027 The contributions of the following are hereby gratefully 1028 acknowledged: 1030 Jonathan Hardwick, Susan Hares, Gayle Noble, and Yaron Sheffer 1032 The document was prepared in raw nroff. All macros used were defined 1033 within the source file. 1035 Authors' Addresses 1037 Donald E. Eastlake, 3rd 1038 Huawei Technologies 1039 155 Beaver Street 1040 Milford, MA 01757 USA 1042 Phone: +1-508-333-2270 1043 EMail: d3e3e3@gmail.com 1045 Mohammed Umair 1046 IPinfusion 1048 EMail: mohammed.umair2@gmail.com 1050 Yizhou Li 1051 Huawei Technologies 1052 101 Software Avenue, 1053 Nanjing 210012, China 1055 Phone: +86-25-56622310 1056 EMail: liyizhou@huawei.com 1058 Copyright, Disclaimer, and Additional IPR Provisions 1060 Copyright (c) 2016 IETF Trust and the persons identified as the 1061 document authors. All rights reserved. 1063 This document is subject to BCP 78 and the IETF Trust's Legal 1064 Provisions Relating to IETF Documents 1065 (http://trustee.ietf.org/license-info) in effect on the date of 1066 publication of this document. Please review these documents 1067 carefully, as they describe your rights and restrictions with respect 1068 to this document. Code Components extracted from this document must 1069 include Simplified BSD License text as described in Section 4.e of 1070 the Trust Legal Provisions and are provided without warranty as 1071 described in the Simplified BSD License. The definitive version of 1072 an IETF Document is that published by, or under the auspices of, the 1073 IETF. Versions of IETF Documents that are published by third parties, 1074 including those that are translated into other languages, should not 1075 be considered to be definitive versions of IETF Documents. The 1076 definitive version of these Legal Provisions is that published by, or 1077 under the auspices of, the IETF. Versions of these Legal Provisions 1078 that are published by third parties, including those that are 1079 translated into other languages, should not be considered to be 1080 definitive versions of these Legal Provisions. For the avoidance of 1081 doubt, each Contributor to the IETF Standards Process licenses each 1082 Contribution that he or she makes as part of the IETF Standards 1083 Process to the IETF Trust pursuant to the provisions of RFC 5378. No 1084 language to the contrary, or terms, conditions or rights that differ 1085 from or are inconsistent with the rights and licenses granted under 1086 RFC 5378, shall have any effect and shall be null and void, whether 1087 published or posted by such Contributor, or included with or in such 1088 Contribution.