idnits 2.17.1 draft-ietf-mpls-ldp-dod-02.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 : ---------------------------------------------------------------------------- ** There are 2 instances of too long lines in the document, the longest one being 16 characters in excess of 72. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (July 15, 2012) is 4300 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- == Missing Reference: 'I1' is mentioned on line 804, but not defined == Missing Reference: 'I' is mentioned on line 804, but not defined == Missing Reference: 'V' is mentioned on line 811, but not defined == Missing Reference: 'U2' is mentioned on line 811, but not defined == Missing Reference: 'Y' is mentioned on line 811, but not defined == Missing Reference: 'U' is mentioned on line 811, but not defined == Unused Reference: 'RFC4446' is defined on line 1420, but no explicit reference was found in the text == Outdated reference: A later version (-17) exists of draft-ietf-mpls-ldp-ipv6-07 == Outdated reference: A later version (-07) exists of draft-ietf-mpls-seamless-mpls-01 -- Obsolete informational reference (is this intentional?): RFC 3107 (Obsoleted by RFC 8277) -- Obsolete informational reference (is this intentional?): RFC 4447 (Obsoleted by RFC 8077) Summary: 1 error (**), 0 flaws (~~), 10 warnings (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group T. Beckhaus 3 Internet-Draft Deutsche Telekom AG 4 Intended status: Informational B. Decraene 5 Expires: January 16, 2013 France Telecom 6 K. Tiruveedhula 7 Juniper Networks 8 M. Konstantynowicz 9 L. Martini 10 Cisco Systems, Inc. 11 July 15, 2012 13 LDP Downstream-on-Demand in Seamless MPLS 14 draft-ietf-mpls-ldp-dod-02 16 Abstract 18 Seamless MPLS design enables a single IP/MPLS network to scale over 19 core, metro and access parts of a large packet network infrastructure 20 using standardized IP/MPLS protocols. One of the key goals of 21 Seamless MPLS is to meet requirements specific to access, including 22 high number of devices, their position in network topology and their 23 compute and memory constraints that limit the amount of state access 24 devices can hold.This can be achieved with LDP Downstream-on-Demand 25 (LDP DoD) label advertisement. This document describes LDP DoD use 26 cases and lists required LDP DoD procedures in the context of 27 Seamless MPLS design. 29 In addition, a new optional TLV type in the LDP label request message 30 is defined for fast-up convergence. 32 Requirements Language 34 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 35 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 36 document are to be interpreted as described in RFC2119 [RFC2119]. 38 Status of this Memo 40 This Internet-Draft is submitted in full conformance with the 41 provisions of BCP 78 and BCP 79. 43 Internet-Drafts are working documents of the Internet Engineering 44 Task Force (IETF). Note that other groups may also distribute 45 working documents as Internet-Drafts. The list of current Internet- 46 Drafts is at http://datatracker.ietf.org/drafts/current/. 48 Internet-Drafts are draft documents valid for a maximum of six months 49 and may be updated, replaced, or obsoleted by other documents at any 50 time. It is inappropriate to use Internet-Drafts as reference 51 material or to cite them other than as "work in progress." 53 This Internet-Draft will expire on January 16, 2013. 55 Copyright Notice 57 Copyright (c) 2012 IETF Trust and the persons identified as the 58 document authors. All rights reserved. 60 This document is subject to BCP 78 and the IETF Trust's Legal 61 Provisions Relating to IETF Documents 62 (http://trustee.ietf.org/license-info) in effect on the date of 63 publication of this document. Please review these documents 64 carefully, as they describe your rights and restrictions with respect 65 to this document. Code Components extracted from this document must 66 include Simplified BSD License text as described in Section 4.e of 67 the Trust Legal Provisions and are provided without warranty as 68 described in the Simplified BSD License. 70 Table of Contents 72 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 73 2. Reference Topologies . . . . . . . . . . . . . . . . . . . . . 5 74 2.1. Access Topologies with Static Routing . . . . . . . . . . 6 75 2.2. Access Topologies with Access IGP . . . . . . . . . . . . 9 76 3. LDP DoD Use Cases . . . . . . . . . . . . . . . . . . . . . . 11 77 3.1. Initial Network Setup . . . . . . . . . . . . . . . . . . 11 78 3.1.1. AN with Static Routing . . . . . . . . . . . . . . . . 11 79 3.1.2. AN with Access IGP . . . . . . . . . . . . . . . . . . 13 80 3.2. Service Provisioning and Activation . . . . . . . . . . . 13 81 3.3. Service Changes and Decommissioning . . . . . . . . . . . 16 82 3.4. Service Failure . . . . . . . . . . . . . . . . . . . . . 16 83 3.5. Network Transport Failure . . . . . . . . . . . . . . . . 17 84 3.5.1. General Notes . . . . . . . . . . . . . . . . . . . . 17 85 3.5.2. AN Node Failure . . . . . . . . . . . . . . . . . . . 17 86 3.5.3. AN/AGN Link Failure . . . . . . . . . . . . . . . . . 18 87 3.5.4. AGN Node Failure . . . . . . . . . . . . . . . . . . . 19 88 3.5.5. AGN Network-side Reachability Failure . . . . . . . . 19 89 4. LDP DoD Procedures . . . . . . . . . . . . . . . . . . . . . . 20 90 4.1. LDP Label Distribution Control and Retention Modes . . . . 20 91 4.2. IPv6 Support . . . . . . . . . . . . . . . . . . . . . . . 22 92 4.3. LDP DoD Session Negotiation . . . . . . . . . . . . . . . 22 93 4.4. Label Request Procedures . . . . . . . . . . . . . . . . . 23 94 4.4.1. Access LSR/ABR Label Request . . . . . . . . . . . . . 23 95 4.4.2. Label Request Retry . . . . . . . . . . . . . . . . . 24 96 4.4.3. Label Request with Fast-Up Convergence . . . . . . . . 24 97 4.5. Label Withdraw . . . . . . . . . . . . . . . . . . . . . . 26 98 4.6. Label Release . . . . . . . . . . . . . . . . . . . . . . 27 99 4.7. Local Repair . . . . . . . . . . . . . . . . . . . . . . . 27 100 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 28 101 5.1. LDP TLV TYPE . . . . . . . . . . . . . . . . . . . . . . . 28 102 6. Security Considerations . . . . . . . . . . . . . . . . . . . 28 103 6.1. Security and LDP DoD . . . . . . . . . . . . . . . . . . . 28 104 6.1.1. Access to network packet flow direction . . . . . . . 28 105 6.1.2. Network to access packet flow direction . . . . . . . 29 106 6.2. Data Plane Security . . . . . . . . . . . . . . . . . . . 30 107 6.3. Control Plane Security . . . . . . . . . . . . . . . . . . 31 108 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 31 109 8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 31 110 8.1. Normative References . . . . . . . . . . . . . . . . . . . 31 111 8.2. Informative References . . . . . . . . . . . . . . . . . . 32 112 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 32 114 1. Introduction 116 Seamless MPLS design [I-D.ietf-mpls-seamless-mpls] enables a single 117 IP/MPLS network to scale over core, metro and access parts of a large 118 packet network infrastructure using standardized IP/MPLS protocols. 119 One of the key goals of Seamless MPLS is to meet requirements 120 specific to access, including high number of devices, their position 121 in network topology and their compute and memory constraints that 122 limit the amount of state access devices can hold. 124 In general MPLS routers implement either LDP or RSVP for MPLS label 125 distribution. The focus of this document is on LDP, as Seamless MPLS 126 design does not include a requirement for general purpose explicit 127 traffic engineering and bandwidth reservation. This document is 128 focusing on the unicast connectivity only. Multicast connectivity is 129 subject for further study. 131 In Seamless MPLS design [I-D.ietf-mpls-seamless-mpls], IP/MPLS 132 protocol optimization is possible due to a relatively simple access 133 network topologies. Examples of such topologies involving access 134 nodes (AN) and aggregation nodes (AGN) include: 136 a. A single AN homed to a single AGN. 138 b. A single AN dual-homed to two AGNs. 140 c. Multiple ANs daisy-chained via a hub-AN to a single AGN. 142 d. Multiple ANs daisy-chained via a hub-AN to two AGNs. 144 e. Two ANs dual-homed to two AGNs. 146 f. Multiple ANs chained in a ring and dual-homed to two AGNs. 148 The amount of IP RIB and FIB state on ANs can be easily controlled in 149 the listed access topologies by using simple IP routing configuration 150 with either static routes or dedicated access IGP. Note that in all 151 of the above topologies AGNs act as the access border routers (access 152 ABRs) connecting the access topology to the rest of the network. 153 Hence in many cases it is sufficient for ANs to have a default route 154 pointing towards AGNs in order to achieve complete network 155 connectivity from ANs to the network. 157 The amount of MPLS forwarding state however requires additional 158 consideration. In general MPLS routers implement LDP Downstream 159 Unsolicited (LDP DU) label advertisement [RFC5036] and advertise MPLS 160 labels for all valid routes in their RIB. This is seen as a very 161 insufficient approach for ANs, as they only require a small subset of 162 the total routes (and associated labels) based on the required 163 connectivity for the provisioned services. And although filters can 164 be applied to those LDP DU labels advertisements, it is not seen as a 165 suitable tool to facilitate any-to-any AN-driven connectivity between 166 access and the rest of the MPLS network. 168 This document describes an access node driven "subscription model" 169 for label distribution in the access. The approach relies on the 170 standard LDP Downstream-on-Demand (LDP DoD) label advertisements as 171 specified in [RFC5036]. LDP DoD enables on-demand label distribution 172 ensuring that only required labels are requested, provided and 173 installed. 175 Note that LDP DoD implementation is not widely available in today's 176 IP/MPLS devices despite the fact that it has been described in the 177 LDP specification [RFC5036]. This is due to the fact that the 178 originally LDP DoD advertisement mode was aimed mainly at ATM and 179 Frame Relay MPLS implementations, where conserving label space used 180 on the links was essential for compatibility with ATM and Frame Relay 181 LSRs. 183 The following sections describe a set of reference access topologies 184 considered for LDP DoD usage and their associated IP routing 185 configurations, followed by LDP DoD use cases and LDP DoD procedures 186 in the context of Seamless MPLS design. 188 2. Reference Topologies 190 LDP DoD use cases are described in the context of a generic reference 191 end-to-end network topology based on Seamless MPLS design 192 [I-D.ietf-mpls-seamless-mpls] shown in Figure 1 193 +-------+ +-------+ +------+ +------+ 194 ---+ AGN11 +--+ AGN21 +--+ ABR1 +--+ LSR1 +--> to LSR/AGN 195 +--------+/ +-------+ +-------+ +------+ +------+ 196 | Access | \/ \/ 197 | Network| /\ /\ 198 +--------+ +-------+ +-------+ +------+ +------+ 199 \---+ AGN12 +--+ AGN22 +--+ ABR2 +--+ LSR2 +--> to LSR/AGN 200 +-------+ +-------+ +------+ +------+ 202 static routes 203 or access IGP ISIS L1 ISIS L2 204 <----Access----><--Aggregation Domain--><----Core-----> 205 <------------------------- MPLS ----------------------> 207 Figure 1: Seamless MPLS end-to-end reference network topology. 209 The access network is either single or dual homed to AGN1x, with 210 either a single or multiple parallel links to AGN1x. 212 Seamless MPLS access network topologies can range from a single- or 213 dual-homed access node to a chain or ring of access nodes, and use 214 either static routing or access IGP. The following sections describe 215 reference access topologies in more detail. 217 2.1. Access Topologies with Static Routing 219 In most cases access nodes connect to the rest of the network using 220 very simple topologies. Here static routing is sufficient to provide 221 the required IP connectivity. The following topologies are 222 considered for use with static routing and LDP DoD: 224 a. [I1] topology - a single AN homed to a single AGN. 226 b. [I] topology - multiple ANs daisy-chained to a single AGN. 228 c. [V] topology - a single AN dual-homed to two AGNs. 230 d. [U2] topology - two ANs dual-homed to two AGNs. 232 e. [Y] topology - multiple ANs daisy-chained to two AGNs. 234 The reference static routing and LDP configuration for [V] access 235 topology is shown in Figure 2. The same static routing and LDP 236 configuration also applies to [I1] topology. 238 +----+ +-------+ 239 |AN1 +------------------------+ AGN11 +------- 240 | +-------\ /-----------+ +-\ / 241 +----+ \ / +-------+ \ / 242 \/ \/ 243 /\ /\ 244 +----+ / \ +-------+ / \ 245 |AN2 +-------/ \-----------+ AGN12 +-/ \ 246 | +------------------------+ +------- 247 +----+ +-------+ 249 --(u)-> <-(d)-- 251 <----- static routing -------> <--- ISIS ---> 252 <-- LDP DU --> 253 <--------- LDP DoD ----------> <-- BGP LU --> 255 (u) static routes: 0/0 default, (optional) /32 or /128 destinations 256 (d) static routes: /32 or /128 AN loopbacks 258 Figure 2: [V] access topology with static routes. 260 In line with the Seamless MPLS design, static routes configured on 261 AGN1x and pointing towards the access network are redistributed in 262 either ISIS or BGP labeled unicast (BGP-LU) [RFC3107]. 264 The reference static routing and LDP configuration for [U2] access 265 topology is shown in Figure 3. 267 +----+ +-------+ 268 (d1) |AN1 +------------------------+ AGN11 +------- 269 | | + + +-\ / 270 v +-+--+ +-------+ \ / 271 | \/ 272 | /\ 273 ^ +-+--+ +-------+ / \ 274 | |AN2 + + AGN12 +-/ \ 275 (d2) | +------------------------+ +------- 276 +----+ +-------+ 278 --(u)-> <-(d)-- 280 <------- static routing --------> <--- ISIS ---> 281 <-- LDP DU --> 282 <----------- LDP DoD -----------> <-- BGP LU --> 284 (u) static route 0/0 default (/32 or /128 destinations optional) 285 (d) static route for /32 or /128 AN loopbacks 286 (d1) static route for /32 or /128 AN2 loopback and 0/0 default with lower preference 287 (d2) static route for /32 or /128 AN1 loopback and 0/0 default with lower preference 289 Figure 3: [U2] access topology with static routes. 291 The reference static routing and LDP configuration for [Y] access 292 topology is shown in Figure 4. The same static routing and LDP 293 configuration also applies to [I] topology. 295 +-------+ 296 | |---/ 297 /----+ AGN11 | 298 +----+ +----+ +----+ / | |---\ 299 | | | | | +----/ +-------+ 300 |ANn +...|AN2 +---+AN1 | 301 | | | | | +----\ +-------+ 302 +----+ +----+ +----+ \ | |---/ 303 \----+ AGN12 | 304 <-(d2)-- <-(d1)-- | |---\ 305 --(u)-> --(u)-> --(u)-> +-------+ 306 <-(d)-- 308 <------- static routing -------> <--- ISIS ---> 309 <-- LDP DU --> 310 <---------- LDP DoD -----------> <-- BGP LU --> 312 (u) static routes: 0/0 default, (optional) /32 or /128 destinations 313 (d) static routes: /32 or /128 AN loopbacks [1..n] 314 (d1) static routes: /32 or /128 AN loopbacks [2..n] 315 (d2) static routes: /32 or /128 AN loopbacks [3..n] 317 Figure 4: [Y] access topology with static routes. 319 Note that in all of the above topologies parallel ECMP (or L2 LAG) 320 links can be used between the nodes. 322 ANs support Inter-area LDP [RFC5283] in order to use the IP default 323 route to match the LDP FEC advertised by AGN1x and other ANs. 325 2.2. Access Topologies with Access IGP 327 A dedicated access IGP instance is used in the access network to 328 perform the internal routing between AGN1x and connected AN devices. 329 Example of such IGP could be ISIS, OSPFv2&v3, RIPv2&RIPng. This 330 access IGP instance is distinct from the IGP of the aggegation 331 domain. 333 The following topologies are considered for use with access IGP 334 routing and LDP DoD: 336 a. [U] topology - multiple ANs chained in an open ring and dual- 337 homed to two AGNs. 339 b. [Y] topology - multiple ANs daisy-chained via a hub-AN to two 340 AGNs. 342 The reference access IGP and LDP configuration for [U] access 343 topology is shown in Figure 5. 345 +-------+ 346 +-----+ +-----+ +----+ | +---/ 347 | AN3 |---| AN2 |---|AN1 +-----+ AGN11 | 348 +-----+ +-----+ +----+ | +---\ 349 . +-------+ 350 . 351 . +-------+ 352 +-----+ +-----+ +----+ | +---/ 353 |ANn-2|---|ANn-1|---|ANn +-----+ AGN12 | 354 +-----+ +-----+ +----+ | +---\ 355 +-------+ 357 <---------- access IGP ------------> <--- ISIS ---> 358 <-- LDP DU --> 359 <------------ LDP DoD -------------> <-- BGP LU --> 361 Figure 5: [U] access topology with access IGP. 363 The reference access IGP and LDP configuration for [Y] access 364 topology is shown in Figure 6. 366 +-------+ 367 | |---/ 368 /----+ AGN11 |2 369 +----+ +----+ +----+ / | |---\ 370 | | | | | +----/ +-------+ 371 |ANn +...|AN2 +---+AN1 | 372 | | | | | +----\ +-------+ 373 +----+ +----+ +----+ \ | |---/ 374 \----+ AGN12 | 375 | |---\ 376 +-------+ 378 <---------- access IGP ------------> <--- ISIS ---> 379 <-- LDP DU --> 380 <------------ LDP DoD -------------> <-- BGP LU --> 382 Figure 6: [Y] access topology with access IGP. 384 Note that in all of the above topologies parallel ECMP (or L2 LAG) 385 links can be used between the nodes. 387 In both of the above topologies, ANs (ANn ... AN1) and AGN1x share 388 the access IGP and advertise their IPv4 and IPv6 loopbacks and link 389 addresses. AGN1x advertise a default route into the access IGP. 391 ANs support Inter-area LDP [RFC5283] in order to use the IP default 392 route for matching the LDP FECs advertised by AGN1x or other ANs. 394 3. LDP DoD Use Cases 396 LDP DoD operation is driven by Seamless MPLS use cases. This section 397 illustrates these use cases focusing on services provisioned on the 398 access nodes and clarifies expected LDP DoD operation on the AN and 399 AGN1x devices. Two representative service types are used to 400 illustrate the service use cases: MPLS PWE3 [RFC4447] and BGP/MPLS 401 IPVPN [RFC4364]. 403 Described LDP DoD operations apply equally to all reference access 404 topologies described in Section 2. Operations that are specific to 405 certain access topologies are called out explicitly. 407 References to upstream and downstream nodes are made in line with the 408 definition of upstream and downstream LSR [RFC3031]. 410 This document is focusing on IPv4 LDP DoD procedures. Similar 411 procedures are required for IPv6 LDP DoD, however some extension 412 specific to IPv6 are likely to apply including LSP mapping, peer 413 discovery, transport connection establishment. These will be added 414 in this document once LDP IPv6 standardization is advanced as per 415 [I-D.ietf-mpls-ldp-ipv6]. 417 3.1. Initial Network Setup 419 An access node is commissioned without any services provisioned on 420 it. The AN may request labels for loopback addresses of any AN, AGN 421 or other nodes within Seamless MPLS network for operational and 422 management purposes. It is assumed that AGN1x has required IP/MPLS 423 configuration for network-side connectivity in line with Seamless 424 MPLS design [I-D.ietf-mpls-seamless-mpls]. 426 LDP sessions are configured between adjacent ANs and AGN1x using 427 their respective loopback addresses. 429 3.1.1. AN with Static Routing 431 If access static routing is used, ANs are provisioned with the 432 following static IP routing entries (topology references from 433 Section 2 are listed in square brackets): 435 a. [I1, V, U2] - Static default route 0/0 pointing to links 436 connected to AGN1x. Requires support for Inter-area LDP 437 [RFC5283]. 439 b. [U2] - Static /32 or /128 routes pointing to the other AN. Lower 440 preference static default route 0/0 pointing to links connected 441 to the other AN. Requires support for Inter-area LDP [RFC5283]. 443 c. [I, Y] - Static default route 0/0 pointing to links leading 444 towards AGN1x. Requires support for Inter-area LDP [RFC5283]. 446 d. [I, Y] - Static /32 or /128 routes to all ANs in the daisy-chain 447 pointing to links towards those ANs. 449 e. [I1, V, U2] - Optional - Static /32 or /128 routes for specific 450 nodes within Seamless MPLS network, pointing to links connected 451 to AGN1x. 453 f. [I, Y] - Optional - Static /32 or /128 routes for specific nodes 454 within the Seamless MPLS network, pointing to links leading 455 towards AGN1x. 457 Upstream AN/AGN1x should request labels over LDP DoD session(s) from 458 downstream AN/AGN1x for configured static routes if those static 459 routes are configured with LDP DoD request policy and if they are 460 pointing to a next-hop selected by routing. It is expected that all 461 configured /32 and /128 static routes to be used for LDP DoD are 462 configured with such policy on AN/AGN1x. 464 Downstream AN/AGN1x should respond to the label request from the 465 upstream AN/AGN1x with a label mapping (if requested route is present 466 in its RIB, and there is a valid label binding from its downstream), 467 and must install the advertised label as an incoming label in its 468 label table (LIB) and its forwarding table (LFIB). Upstream AN/AGN1x 469 must also install the received label as an outgoing label in their 470 LIB and LFIB. If the downstream AN/AGN1x does have the route present 471 in its RIB, but does not have a valid label binding from its 472 downstream, it should forward the request to its downstream. 474 In order to facilitate ECMP and IPFRR LFA local-repair, the upstream 475 AN/AGN1x must also send LDP DoD label requests to alternate next-hops 476 per its RIB, and install received labels as alternate entries in its 477 LIB and LFIB. 479 AGN1x node on the network side may use BGP labeled unicast [RFC3107] 480 in line with the Seamless MPLS design [I-D.ietf-mpls-seamless-mpls]. 481 In such a case AGN1x will be redistributing its static routes 482 pointing to local ANs into BGP labeled unicast to facilitate network- 483 to-access traffic flows. Likewise, to facilitate access-to-network 484 traffic flows, AGN1x will be responding to access-originated LDP DoD 485 label requests with label mappings based on its BGP labeled unicast 486 reachability for requested FECs. 488 3.1.2. AN with Access IGP 490 If access IGP is used, AN(s) advertise their loopbacks over the 491 access IGP with configured metrics. AGN1x advertise a default route 492 over the access IGP. 494 Similarly to the static route case, upstream AN/AGN1x should request 495 labels over LDP DoD session(s) from downstream AN/AGN1x for all /32 496 or /128 routes received over the access IGP. 498 Routers request labels over LDP DoD session(s) according to their 499 needs for MPLS connectivity (LSPs). In particular if AGNs, as per 500 Seamless MPLS design [I-D.ietf-mpls-seamless-mpls], redistribute 501 routes from the IGP into BGP labeled unicast [RFC3107], they should 502 request labels over LDP DoD session(s) for those routes. 504 Identically to the static route case, downstream AN/AGN1x should 505 respond to the label request from the upstream AN/AGN1x with a label 506 mapping (if the requested route is present in its RIB, and there is a 507 valid label binding from its downstream), and must install the 508 advertised label as an incoming label in its LIB and LFIB. Upstream 509 AN/AGN1x must also install the received label as an outgoing label in 510 their LIB and LFIB. 512 Identically to the static route case, in order to facilitate ECMP and 513 IPFRR LFA local-repair, upstream AN/AGN1x must also send LDP DoD 514 label requests to alternate next-hops per its RIB, and install 515 received labels as alternate entries in its LIB and LFIB. 517 AGN1x node on the network side may use BGP labeled unicast [RFC3107] 518 in line with Seamless MPLS design [I-D.ietf-mpls-seamless-mpls]. In 519 such case AGN1x will be redistributing routes received over the 520 access IGP (and pointing to local ANs), into BGP labeled unicast to 521 facilitate network-to-access traffic flows. Likewise, to facilitate 522 access-to-network traffic flows AGN1x will be responding to access 523 originated LDP DoD label requests with label mappings based on its 524 BGP labeled unicast reachability for requested FECs. 526 3.2. Service Provisioning and Activation 528 Following the initial setup phase described in Section 3.1, a 529 specific access node, referred to as AN*, is provisioned with a 530 network service. AN* relies on LDP DoD to request the required MPLS 531 LSP(s) label(s) from downstream AN/AGN1x node(s). Note that LDP DoD 532 operations are service agnostic, that is, they are the same 533 independently of the services provisioned on the AN*. 535 For illustration purposes two service types are described: MPLS PWE3 537 [RFC4447] service and BGP/MPLS IPVPN [RFC4364]. 539 MPLS PWE3 service - for description simplicity it is assumed that a 540 single segment pseudowire is signaled using targeted LDP FEC128 541 (0x80), and it is provisioned with the pseudowire ID and the loopback 542 IPv4 address of the destination node. The following IP/MPLS 543 operations need to be completed on the AN* to successfully establish 544 such PWE3 service: 546 a. LSP labels for destination /32 FEC (outgoing label) and the local 547 /32 loopback (incoming label) need to be signaled using LDP DoD. 549 b. Targeted LDP session over an associated TCP/IP connection needs 550 to be established to the PWE3 destination PE. This is triggered 551 by either an explicit targeted LDP session configuration on the 552 AN* or automatically at the time of provisioning the PWE3 553 instance. 555 c. Local and remote PWE3 labels for specific FEC128 PW ID need to be 556 signaled using targeted LDP and PWE3 signaling procedures 557 [RFC4447]. 559 d. Upon successful completion of the above operations, AN* programs 560 its RIB/LIB and LFIB tables, and activates the MPLS PWE3 service. 562 Note - only minimum operations applicable to service connectivity 563 have been listed. Other non IP/MPLS connectivity operations that may 564 be required for successful service provisioning and activation are 565 out of scope in this document. 567 BGP/MPLS IPVPN service - for description simplicity it is assumed 568 that AN* is provisioned with a unicast IPv4 IPVPN service (VPNv4 for 569 short) [RFC4364]. The following IP/MPLS operations need to be 570 completed on the AN* to successfully establish VPNv4 service: 572 a. BGP peering sessions with associated TCP/IP connections need to 573 be established with the remote destination VPNv4 PEs or Route 574 Reflectors. 576 b. Based on configured BGP policies, VPNv4 BGP NLRIs need to be 577 exchanged between AN* and its BGP peers. 579 c. Based on configured BGP policies, VPNv4 routes need to be 580 installed in the AN* VRF RIB and FIB, with corresponding BGP 581 next-hops. 583 d. LSP labels for destination BGP next-hop /32 FEC (outgoing label) 584 and the local /32 loopback (incoming label) need to be signaled 585 using LDP DoD. 587 e. Upon successful completion of above operations, AN* programs its 588 RIB/LIB and LFIB tables, and activates the BGP/MPLS IPVPN 589 service. 591 Note - only minimum operations applicable to service connectivity 592 have been listed. Other non IP/MPLS connectivity operations that may 593 be required for successful service provisioning are out of scope in 594 this document. 596 To establish an LSP for destination /32 FEC for any of the above 597 services, AN* looks up its local routing table for a matching route, 598 selects the best next-hop(s) and associated outgoing link(s). 600 If a label for this /32 FEC is not already installed based on the 601 configured static route with LDP DoD request policy or access IGP RIB 602 entry, AN* must send an LDP DoD label mapping request. Downstream 603 AN/AGN1x LSR(s) checks its RIB for presence of the requested /32 and 604 associated valid outgoing label binding, and if both are present, 605 replies with its label for this FEC and installs this label as 606 incoming in its LIB and LFIB. Upon receiving the label mapping the 607 AN* must accept this label based on the exact route match of 608 advertised FEC and route entry in its RIB or based on the longest 609 match in line with Inter-area LDP [RFC5283]. If the AN* accepts the 610 label it must install it as an outgoing label in its LIB and LFIB. 612 In access topologies [V] and [Y], if AN* is dual homed to two AGN1x 613 and routing entries for these AGN1x are configured as equal cost 614 paths, AN* must send LDP DoD label requests to both AGN1x devices and 615 install all received labels in its LIB and LFIB. 617 In order for AN* to implement IPFRR LFA local-repair, AN* must also 618 send LDP DoD label requests to alternate next-hops per its RIB, and 619 install received labels as alternate entries in its LIB and LFIB. 621 When forwarding PWE3 or VPNv4 packets AN* chooses the LSP label based 622 on the locally configured static /32 or default route, or default 623 route signaled via access IGP. If a route is reachable via multiple 624 interfaces to AGN1x nodes and the route has multiple equal cost 625 paths, AN* must implement Equal Cost Multi-Path (ECMP) functionality. 626 This involves AN* using hash-based load-balancing mechanism and 627 sending the PWE3 or VPNv4 packets in a flow-aware manner with 628 appropriate LSP labels via all equal cost links. 630 ECMP mechanism is applicable in an equal manner to parallel links 631 between two network elements and multiple paths towards the 632 destination. The traffic demand is distributed over the available 633 paths. 635 AGN1x node on the network side may use BGP labeled unicast [RFC3107] 636 in line with Seamless MPLS design [I-D.ietf-mpls-seamless-mpls]. In 637 such case AGN1x will be redistributing its static routes (or routes 638 received from the access IGP) pointing to local ANs into BGP labeled 639 unicast to facilitate network-to-access traffic flows. Likewise, to 640 facilitate access-to-network traffic flows AGN1x will be responding 641 to access originated LDP DoD label requests with label mappings based 642 on its BGP labeled unicast reachability for requested FECs. 644 3.3. Service Changes and Decommissioning 646 Whenever AN* service gets decommissioned or changed and connectivity 647 to specific destination is not longer required, the associated MPLS 648 LSP label resources should be released on AN*. 650 MPLS PWE3 service - if the PWE3 service gets decommissioned and it is 651 the last PWE3 to a specific destination node, the targeted LDP 652 session is not longer needed and should be terminated (automatically 653 or by configuration). The MPLS LSP(s) to that destination is no 654 longer needed either. 656 BGP/MPLS IPVPN service - deletion of a specific VPNv4 (VRF) instance, 657 local or remote re-configuration may result in specific BGP next- 658 hop(s) being no longer needed. The MPLS LSP(s) to that destination 659 is no longer needed either. 661 In all of the above cases the following LDP DoD related operations 662 apply: 664 o If the /32 FEC label for the aforementioned destination node was 665 originally requested based on either tLDP session configuration 666 and default route or required BGP next-hop and default route, AN* 667 should delete the label from its LIB and LFIB, and release it from 668 downstream AN/AGN1x by using LDP DoD procedures. 670 o If the /32 FEC label was originally requested based on the static 671 /32 route configuration with LDP DoD request policy, the label 672 must be retained by AN*. 674 3.4. Service Failure 676 A service instance may stop being operational due to a local or 677 remote service failure event. 679 In general, unless the service failure event modifies required MPLS 680 connectivity, there should be no impact on the LDP DoD operation. 682 If the service failure event does modify the required MPLS 683 connectivity, LDP DoD operations apply as described in Section 3.2 684 and Section 3.3. 686 3.5. Network Transport Failure 688 A number of different network events can impact services on AN*. The 689 following sections describe network event types that impact LDP DoD 690 operation on AN and AGN1x nodes. 692 3.5.1. General Notes 694 If service on any of the ANs is affected by any network failure and 695 there is no network redundancy, the service must go into a failure 696 state. When the network failure is recovered from, the service must 697 be re-established automatically. 699 The following additional LDP-related functions should be supported to 700 comply with Seamless MPLS [I-D.ietf-mpls-seamless-mpls] fast service 701 restoration requirements as follows: 703 a. Local-repair - AN and AGN1x should support local-repair for 704 adjacent link or node failure for access-to-network, network-to- 705 access and access-to-access traffic flows. Local-repair should 706 be implemented by using either IPFRR LDP LFA, simple ECMP or 707 primary/backup switchover upon failure detection. 709 b. LDP session protection - LDP sessions should be configured with 710 LDP session protection to avoid delay upon the recovery from link 711 failure. LDP session protection ensures that FEC label binding 712 is maintained in the control plane as long as LDP session stays 713 up. 715 c. IGP-LDP synchronization - If access IGP is used, LDP sessions 716 between ANs, and between ANs and AGN1x, should be configured with 717 IGP-LDP synchronization to avoid unnecessary traffic loss in case 718 the access IGP converged before LDP and there is no LDP label 719 binding to the downstream best next-hop. 721 3.5.2. AN Node Failure 723 AN node fails and all links to adjacent nodes go down. 725 Adjacent AN/AGN1x nodes remove all routes pointing to the failed 726 link(s) from their RIB tables (including /32 loopback belonging to 727 the failed AN and any other routes reachable via the failed AN). 728 This in turn triggers the removal of associated outgoing /32 FEC 729 labels from their LIB and LFIB tables. 731 If access IGP is used, the AN node failure will be propagated via IGP 732 link updates across the access topology. 734 If a specific /32 FEC(s) is not reachable anymore from those AN/ 735 AGN1x, they must also send LDP label withdraw to their upstream LSRs 736 to notify about the failure, and remove the associated incoming 737 label(s) from their LIB and LFIB tables. Upstream LSRs upon 738 receiving label withdraw should remove the signaled labels from their 739 LIB/LFIB tables, and propagate LDP label withdraw across their 740 upstream LDP DoD sessions. 742 In [U] topology there may be an alternative path to routes previously 743 reachable via the failed AN node. In this case adjacent AN/AGN1x 744 should invoke local-repair (IPFRR LFA, ECMP) and switchover to 745 alternate next-hop to reach those routes. 747 AGN1x gets notified about the AN failure via either access IGP (if 748 used) and/or cascaded LDP DoD label withdraw(s). AGN1x must 749 implement all relevant global-repair IP/MPLS procedures to propagate 750 the AN failure towards the core network. This should involve 751 removing associated routes (in access IGP case) and labels from its 752 LIB and LFIB tables, and propagating the failure on the network side 753 using BGP-LU and/or core IGP/LDP-DU procedures. 755 Upon AN coming back up, adjacent AN/AGN1x nodes automatically add 756 routes pointing to recovered links based on the configured static 757 routes or access IGP adjacency and link state updates. This should 758 be then followed by LDP DoD label signaling and subsequent binding 759 and installation of labels in LIB and LFIB tables. 761 3.5.3. AN/AGN Link Failure 763 Depending on the access topology and the failed link location 764 different cases apply to the network operation after AN link failure 765 (topology references from Section 2 in square brackets): 767 a. [all] - link failed, but at least one ECMP parallel link remains 768 - nodes on both sides of the failed link must stop using the 769 failed link immediately (local-repair), and keep using the 770 remaining ECMP parallel links. 772 b. [I1, I, Y] - link failed, and there are no ECMP or alternative 773 links and paths - nodes on both sides of the failed link must 774 remove routes pointing to the failed link immediately from the 775 RIB, remove associated labels from their LIB and LFIB tabels, and 776 must send LDP label withdraw(s) to their upstream LSRs. 778 c. [U2, U, V, Y] - link failed, but at least one ECMP or alternate 779 path remains - AN/AGN1x node must stop using the failed link and 780 immediately switchover (local-repair) to the remaining ECMP path 781 or alternate path. AN/AGN1x must remove affected next-hops and 782 labels from its tables and invoke LDP label withdraw as per point 783 (a) above. If there is an AGN1x node terminating the failed 784 link, it must remove routes pointing to the failed link 785 immediately from the RIB, remove associated labels from their LIB 786 and LFIB tabels, and must propagate the failure on the network 787 side using BGP-LU and/or core IGP procedures. 789 If access IGP is used AN/AGN1x link failure will be propagated via 790 IGP link updates across the access topology. 792 LDP DoD will also propagate the link failure by sending label 793 withdraws to upstream AN/AGN1x nodes, and label release messages 794 downstream AN/AGN1x nodes. 796 3.5.4. AGN Node Failure 798 AGN1x fails and all links to adjacent access nodes go down. 800 Depending on the access topology, following cases apply to the 801 network operation after AGN1x node failure (topology references from 802 Section 2 in square brackets): 804 a. [I1, I] - ANs are isolated from the network - AN adjacent to the 805 failure must remove routes pointing to the failed AGN1x node 806 immediately from the RIB, remove associated labels from their LIB 807 and LFIB tabels, and must send LDP label withdraw(s) to their 808 upstream LSRs. If access IGP is used, an IGP link update should 809 be sent. 811 b. [U2, U, V, Y] - at least one ECMP or alternate path remains - AN 812 adjacent to failed AGN1x must stop using the failed link and 813 immediately switchover (local-repair) to the remaining ECMP path 814 or alternate path. AN must remove affected routes and labels 815 from its tables and invoke LDP label withdraw as per point (a) 816 above. 818 Network side procedures for handling AGN1x node failure have been 819 described in Seamless MPLS [I-D.ietf-mpls-seamless-mpls]. 821 3.5.5. AGN Network-side Reachability Failure 823 AGN1x loses network reachability to a specific destination or set of 824 network-side destinations. 826 In such event AGN1x must send LDP Label Withdraw messages to its 827 upstream ANs, withdrawing labels for all affected /32 FECs. Upon 828 receiving those messages ANs must remove those labels from their LIB 829 and LFIB tables, and use alternative LSPs instead if available as 830 part of global-repair. In turn ANs should also sent Label Withdraw 831 messages for affected /32 FECs to their upstream ANs. 833 If access IGP is used, and AGN1x gets completely isolated from the 834 core network, it should stop advertising the default route 0/0 into 835 the access IGP. 837 4. LDP DoD Procedures 839 Label Distribution Protocol is specified in [RFC5036], and all LDP 840 Downstream-on-Demand implementations MUST follow this specification. 842 In the MPLS architecture [RFC3031], network traffic flows from 843 upstream to downstream LSR. The use cases in this document rely on 844 the downstream assignment of labels, where labels are assigned by the 845 downstream LSR and signaled to the upstream LSR as shown in Figure 7. 847 +----------+ +------------+ 848 | upstream | | downstream | 849 ------+ LSR +------+ LSR +---- 850 traffic | | | | address 851 source +----------+ +------------+ (/32 for IPv4) 852 traffic 853 label distribution for IPv4 FEC destination 854 <------------------------- 856 traffic flow 857 -------------------------> 859 Figure 7: LDP label assignment direction 861 4.1. LDP Label Distribution Control and Retention Modes 863 LDP protocol specification [RFC5036] defines two modes for label 864 distribution control, following the definitions in MPLS architecture 865 [RFC3031]: 867 o Independent mode - an LSR recognizes a particular FEC and makes a 868 decision to bind a label to the FEC independently from 869 distributing that label binding to its label distribution peers. 870 A new FEC is recognized whenever a new route becomes valid on the 871 LSR. 873 o Ordered mode - an LSR binds a label to a particular FEC if it is 874 the egress router for that FEC or if it has already received a 875 label binding for that FEC from its next-hop LSR for that FEC. 877 Using independent label distribution control with LDP DoD and access 878 static routing would prevent the access LSRs from propagating label 879 binding failure along the access topology, making it impossible for 880 upstream LSR to be notified about the downstream failure and for an 881 application using the LSP to switchover to an alternate path, even if 882 such a path exists. 884 LDP protocol specification [RFC5036] defines two modes for label 885 retention, following the definitions in MPLS architecture [RFC3031]: 887 o Liberal mode - LSR retains every label mappings received from a 888 peer LSR, regardless of whether the peer LSR is the next-hop for 889 the advertised mapping. This mode allows for quicker adaptation 890 to routing changes. 892 o Conservative mode - LSR retains advertised label mappings only if 893 they will be used to forward packets, that is only if they are 894 received from a valid next-hop LSR according to routing. This 895 mode allows LSR to maintain fewer labels, but slows down LSR 896 adaptation to routing changes. 898 Due to the fact that according to LDP protocol specification 899 [RFC5036] conservative label retention mode calls for allocating and 900 maintaining label mappings only if they are used for the forwarding 901 of data, when used with LDP DoD the conservative label retention mode 902 would prevent LSRs operating in this mode to request and maintain 903 label mappings for any backup routes that are not used for 904 forwarding. This in turn would prevent the access LSRs (AN and AGN1x 905 nodes) from implementing IPFRR LFA alternate based local-repair, as 906 label mapping request can not be sent to alternate next-hops. 908 Adhering to the overall design goals of Seamless MPLS 909 [I-D.ietf-mpls-seamless-mpls], specifically achieving a large network 910 scale without compromising fast service restoration, all access LSRs 911 (AN and AGN1x nodes) MUST use LDP DoD advertisement mode with: 913 o Ordered label distribution control - enables propagation of label 914 binding failure within the access topology. 916 o Liberal label retention - enables pre-programming of alternate 917 next-hops with associated FEC labels. 919 In Seamless MPLS [I-D.ietf-mpls-seamless-mpls] AGN1x node acts as an 920 access ABR connecting access and metro domains. To enable failure 921 propagation between those domains, access ABR MUST implement ordered 922 label distribution control when redistributing routes/FEC between the 923 access-side (using LDP DoD and static or access IGP) and the network- 924 side ( using BGP labeled unicast [RFC3107] or core IGP with LDP 925 Downstream Unsolicited label advertisement. 927 4.2. IPv6 Support 929 Current LDP protocol specification [RFC5036] defines procedures and 930 messages for exchanging FEC-label bindings over IPv4 and/or IPv6 931 networks. However number of IPv6 usage areas are not clearly 932 specified including: packet to LSP mapping for IPv6 destination 933 router, no IPv6 specific LSP identifier, no LDP discovery using IPv6 934 multicast address, separate LSPs for IPv4 and IPv6, and others. 936 All of these issues and more are being addressed by 937 [I-D.ietf-mpls-ldp-ipv6] that will update LDP protocol specification 938 [RFC5036] in respect to the IPv6 usage. For the future deployment, 939 LDP DoD use case and procedures described in this document SHOULD 940 also support IPv6 for transport and services. 942 4.3. LDP DoD Session Negotiation 944 Access LSR/ABR should propose the Downstream-on-Demand label 945 advertisement by setting "A" value to 1 in the Common Session 946 Parameters TLV of the Initialization message. The rules for 947 negotiating the label advertisement mode are specified in LDP 948 protocol specification [RFC5036]. 950 To establish a Downstream-on-Demand session between the two access 951 LSR/ABRs, both should propose the Downstream-on-Demand label 952 advertisement mode in the Initialization message. If the access LSR 953 only supports LDP DoD and the access ABR proposes Downstream 954 Unsolicited mode, the access LSR SHOULD send a Notification message 955 with status "Session Rejected/Parameters Advertisement Mode" and then 956 close the LDP session as specified in LDP protocol specification 957 [RFC5036]. 959 If an access LSR is acting in an active role, it should re-attempt 960 the LDP session immediately. If the access LSR receives the same 961 Downstream Unsolicited mode again, it should follow the exponential 962 backoff algorithm as defined in the LDP protocol specification 963 [RFC5036] with delay of 15 seconds and subsequent delays growing to a 964 maximum delay of 2 minutes. 966 In case a PWE3 service is required between the adjacent access LSR/ 967 ABR, and LDP DoD has been negotiated for IPv4 and IPv6 FECs, the same 968 LDP session should be used for PWE3 FECs. Even if LDP DoD label 969 advertisement has been negotiated for IPv4 and IPv6 LDP FECs as 970 described earlier, LDP session should use Downstream Unsolicited 971 label advertisement for PWE3 FECs as specified in PWE3 LDP [RFC4447]. 973 4.4. Label Request Procedures 975 4.4.1. Access LSR/ABR Label Request 977 Upstream access LSR/ABR will request label bindings from adjacent 978 downstream access LSR/ABR based on the following trigger events: 980 a. Access LSR/ABR is configured with /32 static route with LDP DoD 981 label request policy in line with initial network setup use case 982 described in Section 3.1. 984 b. Access LSR/ABR is configured with a service in line with service 985 use cases described in Section 3.2 and Section 3.3. 987 c. Configuration with access static routes - Access LSR/ABR link to 988 adjacent node comes up and LDP DoD session is established. In 989 this case access LSR should send label request messages for all 990 /32 static routes configured with LDP DoD policy and all /32 991 routes related to provisioned services that are covered by 992 default route. 994 d. Configuration with access IGP - Access LSR/ABR link to adjacent 995 node comes up and LDP DoD session is established. In this case 996 access LSR should send label request messages for all /32 routes 997 learned over the access IGP and all /32 routes related to 998 provisioned services that are covered by access IGP routes. 1000 e. In all above cases requests MUST be sent to next-hop LSR(s) and 1001 alternate LSR(s). 1003 Downstream access LSR/ABR will respond with label mapping message 1004 with a non-null label if any of the below conditions are met: 1006 a. Downstream access LSR/ABR - requested FEC is an IGP or static 1007 route and there is an LDP label already learnt from the next- 1008 next-hop downstream LSR (by LDP DoD or LDP DU). If there is no 1009 label for the requested FEC and there is an LDP DoD session to 1010 the next-next-hop downstream LSR, downstream LSR MUST send a 1011 label request message for the same FEC to the next-next-hop 1012 downstream LSR. In such case downstream LSR will respond back to 1013 the requesting upstream access LSR only after getting a label 1014 from the next-next-hop downstream LSR peer. 1016 b. Downstream access ABR only - requested FEC is a BGP labelled 1017 unicast route [RFC3107] and this BGP route is the best selected 1018 for this FEC. 1020 Downstream access LSR/ABR may respond with a label mapping with 1021 explicit-null or implicit-null label if it is acting as an egress for 1022 the requested FEC, or it may respond with "No Route" notification if 1023 no route exists. 1025 4.4.2. Label Request Retry 1027 If an access LSR/ABR receives a "No route" Notification in response 1028 to its label request message, it should retry using an exponential 1029 backoff algorithm similar to the backoff algoritm mentioned in the 1030 LDP session negotiation described in Section 4.3. 1032 If there is no response to the sent label request message, the LDP 1033 specification [RFC5036] (section A.1.1, page# 100) states that the 1034 LSR should not send another request for the same label to the peer 1035 and mandates that a duplicate label request is considered a protocol 1036 error and should be dropped by the receiving LSR by sending a 1037 Notification message. 1039 Thus, if there is no response from the downstream peer, the access 1040 LSR/ABR should not send a duplicate label request message again. 1042 If the static route corresponding to the FEC gets deleted or if the 1043 DoD request policy is modified to reject the FEC before receiving the 1044 label mapping message, then the access LSR/ABR should send a Label 1045 Abort message to the downstream LSR. 1047 4.4.3. Label Request with Fast-Up Convergence 1049 In some conditions, the exponential backoff algorithm usage described 1050 in Section 4.4.2 may result in a longer than desired wait time to get 1051 a successful LDP label to route mapping. An example is when a 1052 specific route is unavailable on the downstream LSR when the label 1053 mapping request from the upstream is received, but later comes back. 1054 In such case using the exponential backoff algorithm may result in a 1055 max delay wait time before the upstream LSR sends another LDP label 1056 request. 1058 Fast-up convergence can be addressed with a minor extension to the 1059 LDP DoD procedure, as described in this section. The downstream and 1060 upstream LSRs SHOULD implement this extension if up convergence 1061 improvement is desired. 1063 The extension consists of the upstream LSR indicating to the 1064 downstream LSR that the label request should be queued on the 1065 downstream LSR until the requested route is available. 1067 To implement this behavior, a new Optional Parameter is defined for 1068 use in the Label Request message: 1070 Optional Parameter Length Value 1071 Queue Request TLV 0 see below 1073 0 1 2 3 1074 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 1075 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1076 |1|0| Queue Request (0x????) | Length (0x00) | 1077 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1079 U-bit = 1 1080 Unknown TLV bit is set to 1. If this optional TLV is unknown, 1081 it should be ignored without sending "no route" notification. 1082 Ensures backward compatibility. 1084 F-bit = 0 1085 Forward unknown TLV bit is set to 0. The unknown TLV is not 1086 forwarded. 1088 Type 1089 Queue Request Type value to be allocated by IANA. 1091 Length = 0x00 1092 Specifies the length of the Value field in octets. 1094 The operation is as follows. 1096 To benefit from the fast-up convergence improvement, the upstream LSR 1097 sends a Label Request message with a Queue Request TLV. 1099 If the downstream LSR supports the Queue Request TLV, it verifies if 1100 route is available and if so it replies with label mapping as per 1101 existing LDP procedures. 1103 If the route is not available, the downstream LSR queues the request 1104 and replies as soon as the route becomes available. In the meantime, 1105 it does not send a "no route" notification back. When sending a 1106 label request with the Queue Request TLV, the upstream LSR does not 1107 retry the Label Request message if it does not receive a reply from 1108 its downstream peer 1110 If the upstream LSR wants to abort an outstanding label request while 1111 the Label Request is queued in the downstream LSR, the upstream LSR 1112 sends a Label Abort Request message, making the downstream LSR to 1113 remove the original request from the queue and send back a 1114 notification Label Request Aborted [RFC5036]. 1116 If the downstream LSR does not support the Queue Request TLV, it will 1117 silently ignores it, and sends a "no route" notification back. In 1118 this case the upstream LSR invokes the exponential backoff algorithm 1119 described in Section 4.4.2. 1121 This described procedure ensures backward compatitibility. 1123 4.5. Label Withdraw 1125 If an MPLS label on the downstream access LSR/ABR is no longer valid, 1126 the downstream access LSR/ABR withdraws this FEC/label binding from 1127 the upstream access LSR/ABR with the Label Withdraw Message [RFC5036] 1128 with a specified label TLV or with an empty label TLV. 1130 Downstream access LSR/ABR SHOULD withdraw a label for specific FEC in 1131 the following cases: 1133 a. If LDP DoD ingress label is associated with an outgoing label 1134 assigned by BGP labelled unicast route, and this route is 1135 withdrawn. 1137 b. If LDP DoD ingress label is associated with an outgoing label 1138 assigned by LDP (DoD or DU) and the IGP route is withdrawn from 1139 the RIB or downstream LDP session is lost. 1141 c. If LDP DoD ingress label is associated with an outgoing label 1142 assigned by LDP (DoD or DU) and the outgoing label is withdrawn 1143 by the downstream LSR. 1145 d. If LDP DoD ingress label is associated with an outgoing label 1146 assigned by LDP (DoD or DU), route next-hop changed and 1148 * there is no LDP session to the new next-hop. To minimize 1149 probability of this, the access LSR/ABR should implement LDP- 1150 IGP synchronization procedures as specified in [RFC5443]. 1152 * there is an LDP session but no label from downstream LSR. See 1153 note below. 1155 e. If access LSR/ABR is configured with a policy to reject exporting 1156 label mappings to upstream LSR. 1158 The upstream access LSR/ABR responds to the Label Withdraw Message 1159 with the Label Release Message [RFC5036]. 1161 After sending label release message to downstream access LSR/ABR, the 1162 upstream access LSR/ABR should resend label request message, assuming 1163 upstream access LSR/ABR still requires the label. 1165 Downstream access LSR/ABR should withdraw a label if the local route 1166 configuration (e.g. /32 loopback) is deleted. 1168 Note: For any events inducing next hop change, downstream access LSR/ 1169 ABR should attempt to converge the LSP locally before withdrawing the 1170 label from an upstream access LSR/ABR. For example if the next-hop 1171 changes for a particular FEC and if the new next-hop allocates labels 1172 by LDP DoD session, then the downstream access LSR/ABR must send a 1173 label request on the new next-hop session. If downstream access LSR/ 1174 ABR doesn't get label mapping for some duration, then and only then 1175 downstream access LSR/ABR must withdraw the upstream label. 1177 4.6. Label Release 1179 If an access LSR/ABR does not need any longer a label for a FEC, it 1180 sends a Label Release Message [RFC5036] to the downstream access LSR/ 1181 ABR with or without the label TLV. 1183 If upstream access LSR/ABR receives an unsolicited label mapping on 1184 DoD session, they should release the label by sending label release 1185 message. 1187 Access LSR/ABR should send a label release message to the downstream 1188 LSR in the following cases: 1190 a. If it receives a label withdraw from the downstream access LSR/ 1191 ABR. 1193 b. If the /32 static route with LDP DoD label request policy is 1194 deleted. 1196 c. If the service gets decommissioned and there is no corresponding 1197 /32 static route with LDP DoD label request policy configured. 1199 d. If the route next-hop changed, and the label does not point to 1200 the best or alternate next-hop. 1202 e. If it receives a label withdraw from a downstream DoD session. 1204 4.7. Local Repair 1206 To support local-repair with ECMP and IPFRR LFA, access LSR/ABR MUST 1207 request labels on both best next-hop and alternate next-hop LDP DoD 1208 sessions as specified in the label request procedures in Section 4.4. 1210 This will enable access LSR/ABR to pre-program the alternate 1211 forwarding path with the alternate label(s), and invoke IPFRR LFA 1212 switch-over procedure if the primary next-hop link fails. 1214 5. IANA Considerations 1216 5.1. LDP TLV TYPE 1218 This document uses a new a new Optional Parameter Queue Request TLV 1219 in the Label Request message defined in Section 4.4.3. IANA already 1220 maintains a registry of name LDP "TLV TYPE NAME SPACE" defined by 1221 RFC5036. The following value is suggested for assignment: 1223 TLV type Description 1224 0x0971 Queue Request TLV 1226 6. Security Considerations 1228 MPLS LDP Downstream on Demand deployment in the access network is 1229 subject to similar security threats as any MPLS LDP deployment. It 1230 is recommended that baseline security measures are considered as 1231 described in the LDP specification [RFC5036] including ensuring 1232 authenticity and integrity of LDP messages, as well as protection 1233 against spoofing and Denial of Service attacks. 1235 Some deployments may require increased measures of network security 1236 if a subset of Access Nodes are placed in locations with lower levels 1237 of physical security e.g. street cabinets (common practice for VDSL 1238 access). In such cases it is the responsibility of the system 1239 designer to take into account the physical security measures 1240 (environmental design, mechanical or electronic access control, 1241 intrusion detection), as well as monitoring and auditing measures 1242 (configuration and Operating System changes, reloads, routes 1243 advertisements). 1245 But even with all this in mind, the designer still should consider 1246 network security risks and adequate measures arising from the lower 1247 level of physical security of those locations. 1249 6.1. Security and LDP DoD 1251 6.1.1. Access to network packet flow direction 1253 An important property of MPLS LDP Downstream on Demand operation is 1254 that the upstream LSR (requesting LSR) accepts only mappings it sent 1255 a request for (in other words the ones it is interested in), and does 1256 not accept any unsolicited label mappings by design. 1258 This limits the potential of an unauthorized third party fiddling 1259 with label mappings operations on the wire. It also enables ABR LSR 1260 to monitor behaviour of any Access LSR in case the latter gets 1261 compromised and attempts to get access to an unauthorized FEC or 1262 remote LSR. Note that ABR LSR is effectively acting as a gateway to 1263 the MPLS network, and any label mapping requests made by any Access 1264 LSR are processed and can be monitored on this ABR LSR. 1266 6.1.2. Network to access packet flow direction 1268 Another important property of MPLS LDP DoD operation in the access is 1269 that the number of access nodes and associated MPLS FECs per ABR LSR 1270 is not large in number, and they are all known at the deployment 1271 time. Hence any changes of the access MPLS FECs can be easily 1272 controlled and monitored on the ABR LSR. 1274 And then, even in the event when Access LSR manages to advertise a 1275 FEC that belongs to another LSR (e.g. in order to 'steal' third party 1276 data flows, or breach a privacy of VPN), such Access LSR will have to 1277 influence the routing decision for affected FEC on the ABR LSR. 1278 Following measures SHOULD be considered to prevent such event from 1279 occurring: 1281 a. ABR LSR - access side with static routes - this is not possible 1282 for Access LSR. Access LSR has no way to influence ABR LSR 1283 routing decisions due to static nature of routing configuration 1284 here. 1286 b. ABR LSR - access side with IGP - this is still not possible if 1287 the compromised Access LSR is a leaf in the access topology (leaf 1288 node in topologies I1, I, V, Y described earlier in this 1289 document), due to the leaf metrics being configured on the ABR 1290 LSR. If the compromised Access LSR is a transit LSR in the 1291 access topology (transit node in topologies I, Y, U), it is 1292 possible for this Access LSR to attract to itself traffic 1293 destined to the nodes upstream from it. However elaborate such 1294 'man in the middle attack' is possible, but can be quickly 1295 detected by upstream Access LSRs not receiving traffic, and 1296 legitimate traffic from them getting dropped. 1298 c. ABR LSR - network side - designer SHOULD consider giving a higher 1299 administrative preference to the labeled unicast BGP routes vs. 1300 access IGP routes. 1302 In summary MPLS in access design with LDP DoD has number of native 1303 properties that prevent number of security attacks and make their 1304 detection quick and straightforward. 1306 Following two sections describe other security considerations 1307 applicable to general MPLS deployments in the access. 1309 6.2. Data Plane Security 1311 Data plane security risks applicable to the access MPLS network are 1312 listed below (a non-exhaustive list): 1314 a. packets from a specific access node flow to an altered transport 1315 layer or service layer destination. 1317 b. packets belonging to undefined services flow to and from the 1318 access network. 1320 c. unlabelled packets destined to remote network nodes. 1322 Following mechanisms should be considered to address listed data 1323 plane security risks: 1325 1. addressing (a) - Access and ABR LSRs SHOULD NOT accept labeled 1326 packets over a particular data link, unless from the Access or 1327 ABR LSR perspective this data link is known to attach to a 1328 trusted system based on employed authentication mechanism(s), and 1329 the top label has been distributed to the upstream neighbour by 1330 the receiving Access or ABR LSR. 1332 2. addressing (a) - ABR LSR MAY restrict network reachability for 1333 access devices to a subset of remote network LSR, based on 1334 authentication or other network security technologies employed 1335 towards Access LSRs. Restricted reachability can be enforced on 1336 the ABR LSR using local routing policies, and can be distributed 1337 towards the core MPLS network using routing policies associated 1338 with access MPLS FECs. 1340 3. addressing (b) - labeled service routes (e.g. MPLS/VPN, tLDP) 1341 are not accepted from unreliable routing peers. Detection of 1342 unreliable routing peers is achieved by engaging routing protocol 1343 detection and alarm mechanisms, and is out of scope of this 1344 document. 1346 4. addressing (a) and (b) - no successful attacks have been mounted 1347 on the control plane and has been detected. 1349 5. addressing (c) - ABR LSR MAY restrict IP network reachability to 1350 and from the access LSR. 1352 6.3. Control Plane Security 1354 Similarly to Inter-AS MPLS/VPN deployments [RFC4364], the data plane 1355 security depends on the security of the control plane. 1357 To ensure control plane security access LDP DoD connections MUST only 1358 be made with LDP peers that are considered trusted from the local LSR 1359 perspective, meaning they are reachable over a data link that is 1360 known to attach to a trusted system based on employed authentication 1361 mechanism(s) on the local LSR. 1363 The TCP/IP MD5 authentication option [RFC5925] should be used with 1364 LDP as described in LDP specification [RFC5036]. If TCP/IP MD5 1365 authentication is considered not secure enough, the designer may 1366 consider using a more elaborate and advanced TCP Authentication 1367 Option (TCP-AO RFC 5925) for LDP session authentication. 1369 Access IGP (if used) and any routing protocols used in access network 1370 for signalling service routes SHOULD also be secured in a similar 1371 manner. 1373 For increased level of authentication in the control plane security 1374 for a subset of access locations with lower physical security, 1375 designer could also consider using: 1377 o different crypto keys for use in authentication procedures for 1378 these locations. 1380 o stricter network protection mechanisms including DoS protection, 1381 interface and session flap dampening. 1383 7. Acknowledgements 1385 The authors would like to thank Nischal Sheth, Nitin Bahadur, Nicolai 1386 Leymann and Ina Minei for their suggestions and review. 1388 8. References 1390 8.1. Normative References 1392 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1393 Requirement Levels", BCP 14, RFC 2119, March 1997. 1395 [RFC5036] Andersson, L., Minei, I., and B. Thomas, "LDP 1396 Specification", RFC 5036, October 2007. 1398 8.2. Informative References 1400 [I-D.ietf-mpls-ldp-ipv6] 1401 Asati, R., Manral, V., Papneja, R., and C. Pignataro, 1402 "Updates to LDP for IPv6", draft-ietf-mpls-ldp-ipv6-07 1403 (work in progress), June 2012. 1405 [I-D.ietf-mpls-seamless-mpls] 1406 Leymann, N., Decraene, B., Filsfils, C., Konstantynowicz, 1407 M., and D. Steinberg, "Seamless MPLS Architecture", 1408 draft-ietf-mpls-seamless-mpls-01 (work in progress), 1409 March 2012. 1411 [RFC3031] Rosen, E., Viswanathan, A., and R. Callon, "Multiprotocol 1412 Label Switching Architecture", RFC 3031, January 2001. 1414 [RFC3107] Rekhter, Y. and E. Rosen, "Carrying Label Information in 1415 BGP-4", RFC 3107, May 2001. 1417 [RFC4364] Rosen, E. and Y. Rekhter, "BGP/MPLS IP Virtual Private 1418 Networks (VPNs)", RFC 4364, February 2006. 1420 [RFC4446] Martini, L., "IANA Allocations for Pseudowire Edge to Edge 1421 Emulation (PWE3)", BCP 116, RFC 4446, April 2006. 1423 [RFC4447] Martini, L., Rosen, E., El-Aawar, N., Smith, T., and G. 1424 Heron, "Pseudowire Setup and Maintenance Using the Label 1425 Distribution Protocol (LDP)", RFC 4447, April 2006. 1427 [RFC5283] Decraene, B., Le Roux, JL., and I. Minei, "LDP Extension 1428 for Inter-Area Label Switched Paths (LSPs)", RFC 5283, 1429 July 2008. 1431 [RFC5443] Jork, M., Atlas, A., and L. Fang, "LDP IGP 1432 Synchronization", RFC 5443, March 2009. 1434 [RFC5925] Touch, J., Mankin, A., and R. Bonica, "The TCP 1435 Authentication Option", RFC 5925, June 2010. 1437 Authors' Addresses 1439 Thomas Beckhaus 1440 Deutsche Telekom AG 1441 Heinrich-Hertz-Strasse 3-7 1442 Darmstadt 64307 1443 Germany 1445 Phone: +49 6151 58 12825 1446 Email: thomas.beckhaus@telekom.de 1448 Bruno Decraene 1449 France Telecom 1450 38-40 rue du General Leclerc 1451 Issy Moulineaux cedex 9 92794 1452 France 1454 Email: bruno.decraene@orange.com 1456 Kishore Tiruveedhula 1457 Juniper Networks 1458 10 Technology Park Drive 1459 Westford, Massachusetts 01886 1460 USA 1462 Phone: 1-(978)-589-8861 1463 Email: kishoret@juniper.net 1465 Maciek Konstantynowicz 1466 Cisco Systems, Inc. 1467 10 New Square Park, Bedfont Lakes 1468 London 1469 United Kingdom 1471 Email: maciek@cisco.com 1473 Luca Martini 1474 Cisco Systems, Inc. 1475 9155 East Nichols Avenue, Suite 400 1476 Englewood, CO 80112 1477 USA 1479 Email: lmartini@cisco.com