idnits 2.17.1 draft-ietf-pals-status-reduction-04.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 (March 2017) is 2598 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) ** Obsolete normative reference: RFC 5226 (Obsoleted by RFC 8126) Summary: 1 error (**), 0 flaws (~~), 1 warning (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Internet Engineering Task Force Luca Martini 3 Internet Draft Monoski LLC 4 Intended status: Standards Track George Swallow 5 Expires: September 2017 Cisco 6 Elisa Bellagamba 7 Ericsson 9 March 2017 11 MPLS LSP PW status refresh reduction for Static Pseudowires 13 draft-ietf-pals-status-reduction-04.txt 15 Status of this Memo 17 This Internet-Draft is submitted to IETF in full conformance with the 18 provisions of BCP 78 and BCP 79. 20 Internet-Drafts are working documents of the Internet Engineering 21 Task Force (IETF), its areas, and its working groups. Note that 22 other groups may also distribute working documents as Internet- 23 Drafts. 25 Internet-Drafts are draft documents valid for a maximum of six months 26 and may be updated, replaced, or obsoleted by other documents at any 27 time. It is inappropriate to use Internet-Drafts as reference 28 material or to cite them other than as "work in progress." 30 The list of current Internet-Drafts can be accessed at 31 http://www.ietf.org/ietf/1id-abstracts.txt. 33 The list of Internet-Draft Shadow Directories can be accessed at 34 http://www.ietf.org/shadow.html. 36 This Internet-Draft will expire on September 7, 2010 38 Abstract 40 This document describes a method for generating an aggregated 41 pseudowire status message transmitted on a Multi-Protocol Label 42 Switching (MPLS) Label Switched Path (LSP) to indicate the status of 43 one or more pseudowires carried on the LSP. 45 The method for transmitting the pseudowire (PW) status information is 46 not new, however this protocol extension allows a Service Provider 47 (SP) to reliably monitor the individual PW status while not 48 overwhelming the network with multiple periodic status messages. This 49 is achieved by sending a single cumulative summary status 50 verification message for all the PWs grouped in the same LSP. 52 Table of Contents 54 1 Introduction ......................................... 3 55 1.1 Requirements Language ................................ 3 56 1.2 Terminology .......................................... 3 57 1.3 Notational Conventions in Backus-Naur Form ........... 4 58 2 PW status refresh reduction protocol ................. 4 59 2.1 Protocol states ...................................... 4 60 2.1.1 INACTIVE ............................................. 5 61 2.1.2 STARTUP .............................................. 5 62 2.1.3 ACTIVE ............................................... 5 63 2.2 Timer value change transition procedure .............. 5 64 3 PW status refresh reduction procedure ................ 6 65 4 PW status refresh reduction Message Encoding ......... 6 66 5 PW status refresh reduction Control Messages ......... 10 67 5.1 Notification message ................................. 10 68 5.2 PW Configuration Message ............................. 11 69 5.2.1 MPLS-TP Tunnel ID .................................... 12 70 5.2.2 PW ID configured List ................................ 13 71 5.2.3 PW ID unconfigured List .............................. 13 72 6 PW provisioning verification procedure ............... 14 73 6.0.4 PW ID List advertising and processing ................ 15 74 7 Security Considerations .............................. 15 75 8 IANA Considerations .................................. 15 76 8.1 PW Status Refresh Reduction Message Types ............ 15 77 8.2 PW Configuration Message Sub-TLVs .................... 16 78 8.3 PW Status Refresh Reduction Notification Codes ....... 16 79 8.4 PW status refresh reduction Message Flags ............ 17 80 8.5 G-ACH Registry Allocation ............................ 17 81 8.6 Guidance for Designated Experts ...................... 17 82 9 References ........................................... 18 83 9.1 Normative References ................................. 18 84 9.2 Informative References ............................... 18 85 10 Authors' Addresses ................................... 18 87 1. Introduction 89 When PWs use a Multi Protocol Label Switched (MPLS) network as the 90 Packet Switched Network (PSN), they are setup according to [RFC8077] 91 static configuration mode and the PW status information is propagated 92 using the method described in [RFC6478]. There are 2 basic modes of 93 operation described in [RFC6478] section 5.3: Periodic retransmission 94 of non-zero status messages, and a simple acknowledge of PW status 95 (sec 5.3.1 of [RFC6478]). The LSP level protocol described below 96 applies to the case when PW status is acknowledged immediately with a 97 requested refresh value of zero (no refresh). In this case the PW 98 status refresh reduction protocol is necessary for several reasons, 99 such as: 101 -i. Greatly increase the scalability of the PW status protocol 102 by reducing the amount of messages that a PE needs to 103 periodically send to it's neighbors. 104 -ii. Detect a remote PE restart. 105 -iii. If the local state is lost for some reason, the PE needs to 106 be able to request a status refresh reduction from the 107 remote PE 108 -iv. Optionally detect a remote PE provisioning change. 110 1.1. Requirements Language 112 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 113 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 114 document are to be interpreted as described in [RFC2119]. 116 1.2. Terminology 118 FEC: Forwarding Equivalence Class 120 LDP: Label Distribution Protocol 122 LSP: Label Switching Path 124 MS-PW: Multi-Segment Pseudowire 126 PE: Provider Edge 128 PW: Pseudowire 130 SS-PW: Single-Segment Pseudowire 132 S-PE: Switching Provider Edge Node of MS-PW 133 T-PE: Terminating Provider Edge Node of MS-PW 135 1.3. Notational Conventions in Backus-Naur Form 137 All multiple-word atomic identifiers use underscores (_) between the 138 words to join the words. Many of the identifiers are composed of a 139 concatenation of other identifiers. These are expressed using 140 Backus-Naur Form (using double-colon - "::" - notation). 142 Where the same identifier type is used multiple times in a 143 concatenation, they are qualified by a prefix joined to the 144 identifier by a dash (-). For example Src-Node_ID is the Node_ID of 145 a node referred to as Src (where "Src" is short for "source" in this 146 example). 148 The notation does not define an implicit ordering of the information 149 elements involved in a concatenated identifier. 151 2. PW status refresh reduction protocol 153 PW status refresh reduction protocol consists of a simple message 154 that is sent at the LSP level using the MPLS Generic Associated 155 Channel.[RFC5586] 157 A PE using the PW status refresh reduction protocol MUST send the PW 158 status refresh reduction Message as soon as a PW is configured on a 159 particular LSP. The message is then re-transmitted at a locally 160 configured interval indicated in the refresh timer field. If no 161 acknowledgment is received, the protocol does not reach active state, 162 and the PE SHOULD NOT send any PW status messages with a refresh 163 timer of zero as described in [RFC6478] section 5.3.1. 165 It is worth noting that no relationship is existing between the 166 locally configured timer for the refresh reduction protocol and the 167 PW individual status refresh timers. 169 2.1. Protocol states 171 The protocol can be in 3 possible states: INACTIVE, STARTUP, and 172 ACTIVE. 174 2.1.1. INACTIVE 176 This state is entered when the protocol is turned off. This state is 177 also entered if all PW on a specific LSP are deprovisioned, or the 178 feature is deprovisioned. 180 2.1.2. STARTUP 182 In this state the PE transmits periodic PW status refresh reduction 183 messages, with the Ack Session ID set to 0. The PE remains in this 184 state until a PW status refresh message is received with the correct 185 local session ID in the Ack Session ID Field. This state can be 186 exited to the ACTIVE or INACTIVE state. 188 2.1.3. ACTIVE 190 This state is entered once the PE receives a PW status refresh 191 reduction message with the correct local session ID in the Ack 192 Session ID Field within 3.5 times the refresh timer field value of 193 the last PW status refresh reduction message transmitted. This state 194 is immediately exited as follows: 196 -i. A valid PW status refresh reduction message is not received 197 within 3.5 times the current refresh timer field value. 198 (assuming a timer transition procedure is not in progress) 199 New state: STARTUP 200 -ii. A PW status refresh reduction message is received with the 201 wrong, or a zero, Ack Session ID field value. New state: 202 STARTUP 203 -iii. All PWs using the particular LSP are deprovisioned, or the 204 protocol is disabled. New state: INACTIVE 206 2.2. Timer value change transition procedure 208 If a PE needs to change the refresh timer value field while the PW 209 refresh reduction protocol is in the ACTIVE state, the following 210 procedure must be followed: 211 -i. A PW status refresh reduction message is transmitted with 212 the new timer value. 213 -ii. If the new value is greater then the original one the PE 214 will operate on the new timer value immediately. 215 -iii. If the new value is smaller then the original one, the PE 216 will operate according to the original timer value for a 217 period 3.5 times the original timer value, or until the 218 first valid PW status refresh reduction message is received. 220 A PE receiving a PW status refresh reduction message with a 221 new timer value, will immediately transmit an acknowledge PW 222 status refresh reduction message, and start operating 223 according to the new timer value. 225 3. PW status refresh reduction procedure 227 When the refresh reduction protocol, on a particular LSP, is in the 228 ACTIVE state, the PE can send all PW status messages, for PWs on that 229 LSP, with a refresh timer value of zero. This greatly decreases the 230 amount of messages that the PE needs to transmit to the remote PE 231 because once the PW status message for a particular PW is 232 acknowledged, further repetitions of that message are no longer 233 necessary. 235 To further mitigate the amount of possible messages when an LSP 236 starts forwarding traffic, care should be taken to permit the PW 237 refresh reduction protocol to reach the ACTIVE state quickly, and 238 before the the first PW status refresh timer expires. This can be 239 achieved by using a PW status refresh reduction Message refresh timer 240 value that is much smaller then the PW status message refresh timer 241 value in use. (sec 5.3.1 of [RFC6478]) 243 If the refresh reduction protocol session is terminated by entering 244 the INACTIVE or STARTUP states, the PE MUST immediately re-send all 245 the previously sent PW status messages for that particular LSP for 246 which the session terminated. In this case the refresh timer value 247 MUST NOT be set to zero, and MUST be set according to the local 248 policy of the PE router. 250 4. PW status refresh reduction Message Encoding 252 The packet containing the refresh reduction message is encoded as 253 follows: (omitting link layer information) 254 0 1 2 3 255 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 256 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 257 | MPLS LSP (tunnel) Label Stack Entry | 258 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 259 | GAL | 260 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 261 |0 0 0 1|Version| Reserved | 0xZZ PW OAM Message | 262 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 263 | Session ID | Ack Session ID | 264 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 265 | Refresh Timer | Total Message Length | 266 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 267 | Checksum | Message Sequence Number | 268 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 269 | Last Received Seq Number | Message Type |U C Flags | 270 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 271 | | 272 ~ Control Message Body ~ 273 | | 274 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 276 This message contains the following fields: 278 * MPLS LSP (tunnel) Label Stack Entry 280 This is explained in [RFC3031]. 282 * GAL 284 The GAL and the next 4 octetc are explained in [RFC5586]. 285 * PW OAM Message. 287 This field indicates the Generic Associated Channel type in the 288 GACH header as defined in [RFC5586]. 290 Note: Channel type 0xZZ pending IANA allocation. 292 * Session ID 294 A non-zero, locally selected session number that is not preserved 295 if the local PE restarts. 297 In order to get a locally unique session ID, the recommended 298 choice is to perform a CRC-16 giving as input the following data 300 |Y|Y|M|M|D|D|H|H|M|M|S|S|L|L|L| 301 Where: YY: are the decimal two last digit of the current year 302 MM: are the decimal two digit of the current month DD: are the 303 decimal two digit of the current day HHMMSSLLL: are the decimal 304 digits of the current time expressed in (hour, minutes, seconds, 305 milliseconds) If the calculation results in an already existing 306 Session ID, a unique Session ID can be generated by adding 1 to 307 the result until the Session ID is unique. Any other method to 308 generate a locally unique session ID is also acceptable. 310 * Ack Session ID 312 The Acknowledgment Session ID received from the remote PE. 314 * Refresh Timer. 316 A non zero unsigned 16 bit integer value greater or equal to 10, 317 in milliseconds, that indicates the desired refresh interval. The 318 default value of 30000 is RECOMENDED. 320 * Total Message Length 322 Total length in octets of the Checksum, Message Type, Flags, 323 Message Sequence Number, and control message body. A value of 324 zero means that no control message is present, and therefore that 325 no Checksum, and following fields are present either. 327 * Checksum 329 A 16 bit field containing the one's complement of the one's 330 complement sum of the entire message (including the GACH header), 331 with the checksum field replaced by zero for the purpose of 332 computing the checksum. An all-zero value means that no checksum 333 was transmitted. Note that when the checksum is not computed, the 334 header of the bundle message will not be covered by any checksum. 336 * Message Sequence Number 338 An unsigned 16 bit integer number that is started from 1 when the 339 protocol enters ACTIVE state. The sequence numbers wraps back to 340 1 when the maximum value is reached. The value of zero is 341 reserved and MUST NOT be used. 343 * Last Received Message Sequence Number 345 The sequence number of the last message received. In no message 346 has yet been received during this session, this field is set to 347 zero. 349 * Message Type 351 The Type of the control message that follows. Control message 352 types are allocated in this document, and by IANA. 354 * (U) Unknown flag bit. 356 Upon receipt of an unknown message or TLV, if U is clear (=0), a 357 notification message of "Unknown TLV (U-bit=0)" code 0x4 MUST be 358 sent to the remote PE, and the keepalive session MUST be 359 terminated by entering STARTUP state; if U is set (=1), the 360 unknown message, or message contining a unknown TLV, MUST be 361 acknowledged and silently ignored and the following messages, or 362 TLVs, if any, processed as if the unknown message, or TLV did not 363 exist. In this case the PE MAY send back a single notification 364 message per keepalive session with code "Unknown TLV (U-bit=1)". 365 This last Step is OPTIONAL. 367 * (C) Configuration flag bit. 369 The C Bit is used to signal the end of PW configuration 370 transmission. If it is set, the sending PE has finished sending 371 all it's current configuration information. 373 * Flags 375 The remaining 6 bits of PW status refresh reduction Message Flags 376 to be allocated by IANA. These unallocated bits MUST be set to 0 377 on transmission, and ignored on reception. 379 * Control Message Body 381 The Control Message body is defined in a section below, and is 382 specific to the type of message. 384 It should be noted that the Checksum, Message Sequence Number, Last 385 Received Message Sequence Number, Message Type, Flags, and control 386 message body are OPTIONAL. The length field is used to parse how many 387 optional fields are included. Hence all optional fields that precede 388 a specific field that needs to be included in a specific 389 implementation MUST be included if that optional field is also 390 included. 392 If any of the above vaules are outside the specified range, a 393 notification message is returned with a code "PW configuration not 394 supported.", and the message is ignored. 396 5. PW status refresh reduction Control Messages 398 PW status refresh reduction Control messages consist of the Checksum, 399 Message Sequence Number, Last Received Message Sequence Number, 400 Message Type, Flags, and control message body. 402 When there is the need to send a PW status refresh reduction Control 403 Messages, the system can attach it to a scheduled PW status refresh 404 reduction or send one ahead of time. In any case PW status refresh 405 reduction Control Messages always piggy back on normal messages. 407 A PW refresh reduction message is also called a PW status refresh 408 reduction Control Message if it contains a control message 409 construct. 411 There can only be one control message construct per PW status refresh 412 reduction Message. If the U bit is set, and a PE receiving the PW 413 status refresh reduction Message does not understand the control 414 message, the control message MUST be silently ignored. However the 415 message sequence number MUST still be acknowledged by sending a null 416 message back with the appropriate value in the Last Message Received 417 Field. If a control message is not acknowledged, after 3.5 times the 418 value of the Refresh Timer, a fatal notification "unacknowledged 419 control message" MUST be sent, and the PW refresh reduction session 420 MUST be terminated. 422 If a PE does not want or need to send a control message, the 423 Checksum, and all following fields MUST NOT be sent, and the Total 424 Message Length field is then set to zero. 426 5.1. Notification message 428 The most common use of the Notification Message is to acknowledge the 429 reception of a message by indicating the received message sequence 430 number in the "Last Received Sequence Number" field. The notification 431 message is encoded as follows: 433 0 1 2 3 434 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 435 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 436 | Checksum | Message Sequence Number | 437 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 438 | Last Received Seq Number | Type=0x01 |U C Flags | 439 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 440 | Notification Code | 441 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 442 The message type is set to 0x01, and the U bit is treated as 443 described in the above section. The Notification Codes are a 32 bit 444 quantity assigned by IANA. (see IANA consideration section) 445 Notification codes are either considered "Error codes" or simple 446 notifications. If the Notification code is an Error code as indicated 447 in the IANA allocation registry, the keepalive session MUST be 448 terminated by entering STARTUP state. 450 When there is no notification information to be sent, the 451 notification code is set to 0 to indicate a "Null Notification". The 452 C Bit MUST always be set to 0 in this type of message. The 453 remaining 6 bits of PW status refresh reduction Message Flags to be 454 allocated by IANA. These unallocated bits MUST be set to 0 on 455 transmission, and ignored on reception. 457 5.2. PW Configuration Message 459 The PW status refresh reduction TLVs are informational TLVs, that 460 allow the remote PE to verify certain provisioning information. This 461 message contain a series of sub-TLVs in no particular order, that 462 contain PW and LSP configuration information. The message has no 463 preset length limit, however its total length will be limited by the 464 transport network Maximum Transmit Unit (MTU). PW refresh reduction 465 messages MUST NOT be fragmented. If a sender has more configuration 466 information to send than will fit into one PW Configuration Message 467 it may send further messages carrying further TLVs. 469 0 1 2 3 470 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 471 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 472 | Checksum | Message Sequence Number | 473 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 474 | Last Received Seq Number | Type=0x02 |U C (Flags) | 475 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 476 ~ ~ 477 | PW Configuration Message Sub-TLVs | 478 ~ ~ 479 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 481 The PW Configuration Message type is set to 0x02. For this message 482 the U-bit is set to 1 as processing of these messages is OPTIONAL. 484 The C Bit is used to signal the end of PW configuration transmission. 485 If it is set, the sending PE has finished sending all its current 486 configuration information. The PE transmitting the configuration MUST 487 set the C bit on the last PW configuration message when all current 488 PW configuration has been sent. 490 PW Configuration Message Sub-TLVs have the following generic format: 492 0 1 2 3 493 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 494 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 495 | Type | Length | Value | 496 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 497 ~ ~ 498 | Value Continued | 499 ~ ~ 500 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 502 5.2.1. MPLS-TP Tunnel ID 504 This TLV contains the MPLS-TP tunnel ID. When the configuration 505 message is used for a particular keepalive session the MPLS-TP Tunnel 506 ID sub-TLV MUST be sent at least once. 508 The MPLS Tunnel ID is encoded as follows: 510 0 1 2 3 511 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 512 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 513 | Type=0x01 | Length=20 | MPLS-TP Tunnel ID | 514 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 515 ~ ~ 516 | MPLS-TP Tunnel ID (20 Octets) | 517 ~ ~ 518 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 520 The MPLS point to point tunnel ID is defined in [RFC6370] as follows: 522 Src-Global_Node_ID::Src-Tunnel_Num::Dst-Global_Node_ID::Dst- 523 Tunnel_Num 525 Note that a single Tunnel ID is enough to identify the tunnel, and 526 the source end of the message. 528 5.2.2. PW ID configured List 530 This OPTIONAL TLV contains a list of the provisioned PWs on the LSP. 532 0 1 2 3 533 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 534 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 535 | Type=0x02 | Length | PW Path ID | 536 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 537 | | 538 | PW Path ID | 539 ~ ~ 540 | Continued | 541 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 543 The PW Path ID is a 32 octet pseudowire path identifier specified in 544 [RFC6370] as follows: AGI::Src-Global_ID::Src-Node_ID::Src-AC_ID:: 545 Dst-Global_ID::Dst-Node_ID::Dst-AC_ID 547 The number of PW Path IDs in the TLV will be inferred by the length 548 of the TLV up to a maximum of 8. The procedure for processing this 549 TLV will be described in a section below. 551 5.2.3. PW ID unconfigured List 553 This OPTIONAL TLV contains a list of the PWs that have been 554 deprovisioned on the LSP. Note that it is a fatal session error to 555 send the same PW address in both the configured list TLV , and the 556 unconfigured list TLV in the same configuration message. If the this 557 error occurs, an error notification message is returned with the 558 error code of "PW Configuration TLV conflict" and the session is 559 terminated by entering STARTUP state. 561 0 1 2 3 562 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 563 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 564 | Type=0x03 | Length | PW Path ID | 565 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 566 | | 567 | PW Path ID | 568 ~ ~ 569 | Continued | 570 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 572 The PW Path ID is a 32 octet pseudowire path identifier specified in 574 [RFC6370] as follows: AGI::Src-Global_ID::Src-Node_ID::Src-AC_ID:: 575 Dst-Global_ID::Dst-Node_ID::Dst-AC_ID 577 The number of PW Path IDs in the TLV will be inferred by the length 578 of the TLV up to a maximum of 8. 580 6. PW provisioning verification procedure 582 The advertisement of the PW configuration message is OPTIONAL. 584 A PE that desires to use the PW configuration message to verify the 585 configuration of PWs on a particular LSP, should advertise its PW 586 configuration to the remote PE on LSPs that have active keepalive 587 sessions. When a PE receives PW configuration information using this 588 protocol and it is not supporting or is not willing to use the 589 information, it MUST acknowledge all the PW configuration messages 590 with a notification of "PW configuration not supported". In this 591 case, the information in the control messages is silently ignored. If 592 a PE receives such a notification it SHOULD stop sending PW 593 configuration control messages for the duration of the PW refresh 594 reduction keepalive session. 596 If PW configuration information is received, it is used to verify the 597 accuracy of the local configuration information against the remote 598 PE's configuration information. If a configuration mismatch is 599 detected, where a particular PW is configured locally but not on the 600 remote PE, the following action SHOULD be taken: 602 -i. The local PW MUST be considered in "Not Forwarding" State. 604 -ii. The PW Attachment Circuit status is set to reflect the PW 605 fault. 607 -iii. An Alarm SHOULD be raised to a network management system. 609 -iv. A Notification message with notification code of "PW 610 configuration mismatch." MUST be sent to the remote PE. Only 611 one such message is REQUIRED per configuration message even 612 if the configuration message is split into multiple 613 configuration messages due to individual message size 614 restriction on a particular link. Upon receipt of such a 615 message the receiving PE MAY raise an alarm to a network 616 management system. This alarm MAY be cleared when the 617 configuration is updated. 619 6.0.4. PW ID List advertising and processing 621 When configuration messages are advertised along a particular LSP, 622 the PE sending the messages needs to check point the configuration 623 information sent by setting the C bit when all currently known 624 configuration information has been sent. This process allows the 625 receiving PE to immediately proceed to verify all the currently 626 configured PWs on that LSP, eliminating the need for a long waiting 627 period. 629 If a new PW is added to a particular LSP, the PE MUST place the 630 configuration verification of this PW on hold for a period of at 631 least 30 seconds. This is necessary to minimize false positive events 632 of mis-configuration due to the ends of the PW being slightly out of 633 sync. 635 7. Security Considerations 637 The security considerations of [RFC6478] are adequate for the 638 proposed mechanism since the operating environment is almost 639 identical to the one where this protocol would be deployed. It should 640 also be noted that since this protocol is designed to be deployed 641 between two adjacent PEs connected by a physical link, it is not 642 possible to misdirect or inject traffic without compromising the PW 643 transport link itself. All these situations are covered in the 644 security considerations of [RFC6478]. 646 8. IANA Considerations 648 All the registries in this section are to be created or updated as 649 appropriate in the Pseudowire Name Spaces (PWE3). For the allocation 650 rages designated as "vendor proprietary extensions", the respective 651 IANA registry, will contain the vendor name in brackets at the end of 652 the description field. 654 8.1. PW Status Refresh Reduction Message Types 656 IANA needs to set up a registry of "PW status refresh reduction 657 Control Messages". These are 8-bit values. Type value 1 through 2 are 658 defined in this document. Type values 3 through 64, and 128 through 659 254 are to be assigned by IANA using the "Expert Review" policy 660 defined in RFC5226. Type values 65 through 127, 0 and 255 are to be 661 allocated using the IETF review policy defined in [RFC5226]. 663 The Type Values are assigned as follows: 665 Type Message Description 666 ---- ------------------- 667 0x01 Notification message 668 0x02 PW Configuration Message 670 8.2. PW Configuration Message Sub-TLVs 672 IANA needs to set up a registry of "PW status refresh reduction 673 Configuration Message Sub-TLVs". These are 8-bit values. Type value 1 674 through 2 are defined in this document. Type values 3 through 64, and 675 128 through 254 are to be assigned by IANA using the "Expert Review" 676 policy defined in RFC5226. Type values 65 through 127, 0 and 255 are 677 to be allocated using the IETF review policy defined in [RFC5226]. 679 The Type Values are assigned as follows: 680 sub-TLV type Description 681 ------------ ----------- 682 0x01 MPLS-TP Tunnel ID. 683 0x02 PW ID configured List. 684 0x03 PW ID unconfigured List. 686 8.3. PW Status Refresh Reduction Notification Codes 688 IANA needs to set up a registry of "PW status refresh reduction 689 Notification Codes". These are 32-bit values. Type value 0 through 7 690 are defined in this document. Type values 8 through 65536, and 691 134,217,729 through 4,294,967,294 are to be assigned by IANA using 692 the "Expert Review" policy defined in RFC5226. Type values 65536 693 through 134,217,728, 0 and 4,294,967,295 are to be allocated using 694 the IETF review policy defined in [RFC5226]. 696 For each value assigned IANA should also track whether the value 697 constitutes an error as described in Section 5.1. When values are 698 assigned by IETF Review, the setting of this column must be 699 documented in the RFC that requests the allocation. For Expert Review 700 and FCFS assignments, the setting of this column must be made clear 701 by the requester at the time of assignment. 703 The Type Values are assigned as follows: 704 Code Error? Description 705 ---- ------ ----------- 706 0x00000000 No Null Notification. 707 0x00000001 No PW configuration mismatch. 708 0x00000002 Yes PW Configuration TLV conflict. 709 0x00000003 No Unknown TLV (U-bit=1) 710 0x00000004 Yes Unknown TLV (U-bit=0) 711 0x00000005 No Unknown Message Type 712 0x00000006 No PW configuration not supported. 713 0x00000007 Yes Unacknowledged control message. 715 8.4. PW status refresh reduction Message Flags 717 IANA needs to set up a registry of "PW status refresh reduction 718 Message Flags". This is a 8 bit registry with the first 2 most 719 significant bits allocated by this document as follows: 720 Bit Position Name Description 721 ------------ ---- ----------- 722 0 U Unknown flag bit. 723 1 C Configuration flag bit. 725 The remaining bits are to be allocated by "IETF Review" policy 726 defined in [RFC5226]. 728 8.5. G-ACH Registry Allocation 730 IANA maintains a registry called "MPLS Generalized Associated Channel 731 (G-ACh) Types". IANA needs, to allocate a new value as follows: 732 Value Description Reference 733 ----- ----------- --------- 734 0xZZ PW Sytatus Refresh Reduction RFCXXXX 736 8.6. Guidance for Designated Experts 738 In all cases of review by the Designated Expert (DE) described here, 739 the DE is expected to ascertain the existence of suitable 740 documentation (a specification) as described in [RFC5226] and to 741 verify that the document is permanently and publicly available. The 742 DE is also expected to check the clarity of purpose and use of the 743 requested code points fits the general architecture and intended 744 purpose of the respective message or TLV. Lastly the DE should check 745 that any assignment does not duplicate or conflict with work that is 746 active or already published within the IETF. 748 9. References 750 9.1. Normative References 752 [RFC2119] Bradner. S, "Key words for use in RFCs to 753 Indicate Requirement Levels", RFC 2119, March, 1997. 755 [RFC8077] "Pseudowire Setup and Maintenance Using the Label 756 Distribution Protocol (LDP)", L. Martini, G. Heron, RFC8077, 757 february 2017. 759 [RFC6478] L. Martini, G. Swallow, G. Heron, M. Bocci "Pseudowire 760 Status for Static Pseudowires", RFC6478, May 2012 762 [RFC6370] M. Bocci, G. Swallow, E. Gray "MPLS-TP Identifiers", 763 RFC6370, September 2011 765 [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an 766 IANA Considerations section in RFCs", BCP 26, RFC 5226, May 2008 768 [RFC3031] E. Rosen, et al., RFC 3031, MPLS Architecture, January 769 2001. 771 9.2. Informative References 773 [RFC5586] M. Bocci, Ed., M. Vigoureux, Ed., S. Bryant, Ed., 774 "MPLS Generic Associated Channel", rfc5586, June 2009 776 10. Authors' Addresses 778 Luca Martini 779 Monoski LLC. 780 e-mail: lmartini@monoski.com 782 George Swallow 783 Cisco Systems, Inc. 784 300 Beaver Brook Road 785 Boxborough, Massachusetts 01719 786 United States 787 e-mail: swallow@cisco.com 788 Elisa Bellagamba 789 Ericsson EAB 790 Torshamnsgatan 48 791 16480, Stockholm 792 Sweden 793 e-mail: elisa.bellagamba@gmail.com 795 Copyright Notice 797 Copyright (c) 2017 IETF Trust and the persons identified as the 798 document authors. All rights reserved. 800 This document is subject to BCP 78 and the IETF Trust's Legal 801 Provisions Relating to IETF Documents 802 (http://trustee.ietf.org/license-info) in effect on the date of 803 publication of this document. Please review these documents 804 carefully, as they describe your rights and restrictions with respect 805 to this document. Code Components extracted from this document must 806 include Simplified BSD License text as described in Section 4.e of 807 the Trust Legal Provisions and are provided without warranty as 808 described in the Simplified BSD License. 810 Expiration Date: September 2017