1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
|
Internet Engineering Task Force (IETF) M. Chen
Request for Comments: 7965 W. Cao
Category: Standards Track Huawei
ISSN: 2070-1721 A. Takacs
Ericsson
P. Pan
August 2016
LDP Extensions for Pseudowire
Binding to Label Switched Path (LSP) Tunnels
Abstract
Many transport services require that user traffic, in the form of
Pseudowires (PWs), be delivered via either a single co-routed
bidirectional tunnel or two unidirectional tunnels that share the
same routes. This document defines an optional extension to the
Label Distribution Protocol (LDP) that enables the binding between
PWs and the underlying Traffic Engineering (TE) tunnels. The
extension applies to both single-segment and multi-segment PWs.
Status of This Memo
This is an Internet Standards Track document.
This document is a product of the Internet Engineering Task Force
(IETF). It represents the consensus of the IETF community. It has
received public review and has been approved for publication by the
Internet Engineering Steering Group (IESG). Further information on
Internet Standards is available in Section 2 of RFC 7841.
Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
http://www.rfc-editor.org/info/rfc7965.
Chen, et al. Standards Track [Page 1]
^L
RFC 7965 Explicit PW-to-LSP Tunnels Binding August 2016
Copyright Notice
Copyright (c) 2016 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Requirements Language . . . . . . . . . . . . . . . . . . . . 4
3. LDP Extensions . . . . . . . . . . . . . . . . . . . . . . . 5
3.1. PSN Tunnel Binding TLV . . . . . . . . . . . . . . . . . 5
3.1.1. PSN Tunnel Sub-TLV . . . . . . . . . . . . . . . . . 7
4. Theory of Operation . . . . . . . . . . . . . . . . . . . . . 8
5. PSN Binding Operation for SS-PW . . . . . . . . . . . . . . . 9
6. PSN Binding Operation for MS-PW . . . . . . . . . . . . . . . 11
7. PSN Tunnel Select Considerations . . . . . . . . . . . . . . 13
8. Security Considerations . . . . . . . . . . . . . . . . . . . 13
9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13
9.1. LDP TLV Types . . . . . . . . . . . . . . . . . . . . . . 13
9.1.1. PSN Tunnel Sub-TLVs . . . . . . . . . . . . . . . . . 14
9.2. LDP Status Codes . . . . . . . . . . . . . . . . . . . . 14
10. References . . . . . . . . . . . . . . . . . . . . . . . . . 14
10.1. Normative References . . . . . . . . . . . . . . . . . . 14
10.2. Informative References . . . . . . . . . . . . . . . . . 15
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 16
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 16
Chen, et al. Standards Track [Page 2]
^L
RFC 7965 Explicit PW-to-LSP Tunnels Binding August 2016
1. Introduction
Pseudo Wire Emulation Edge-to-Edge (PWE3) [RFC3985] is a mechanism to
emulate Layer 2 services, such as Ethernet Point-to-Point circuits.
Such services are emulated between two Attachment Circuits, and the
Pseudowire-encapsulated Layer 2 service payload is transported via
Packet Switching Network (PSN) tunnels between Provider Edges (PEs).
PWE3 typically uses the Label Distribution Protocol (LDP) [RFC5036]
or Resource Reservation Protocol - Traffic Engineering (RSVP-TE)
[RFC3209] Label Switched Paths (LSPs) as PSN tunnels. The PEs select
and bind the Pseudowires to PSN tunnels independently. Today, there
is no standardized protocol-based provisioning mechanism to associate
PWs with PSN tunnels; such associations must be managed via
provisioning or other private methods.
PW-to-PSN Tunnel Binding has become increasingly common and important
in many deployment scenarios, as it allows service providers to offer
service level agreements to their customers for such traffic
attributes as bandwidth, latency, and availability.
The requirements for explicit control of PW-to-LSP mapping are
described in Section 5.3.2 of [RFC6373]. Figure 1 illustrates how
PWs can be bound to particular LSPs.
+------+ +------+
---AC1 ---|..............PWs...............|---AC1---
---...----| PE1 |=======LSPs=======| PE2 |---...---
---ACn ---| |-------Links------| |---ACn---
+------+ +------+
Figure 1: Explicit PW-to-LSP Binding Scenario
There are two PEs (PE1 and PE2) connected through multiple parallel
links that may be on different physical fibers. Each link is managed
and controlled as a bidirectional LSP. At each PE, there are a large
number of bidirectional user flows from multiple Ethernet interfaces
(access circuits in the figure). Each user flow utilizes a pair of
unidirectional PWs to carry bidirectional traffic. The operators
need to make sure that the user flows (that is, the PW-pairs) are
carried on the same fiber or bidirectional LSP.
There are a number of reasons behind this requirement. First, due to
delay and latency constraints, traffic going over different fibers
may require a large amount of expensive buffer memory to compensate
for the differential delay at the head-end nodes. Further, the
operators may apply different protection mechanisms on different
parts of the network (e.g., to deploy 1:1 protection in one part and
1+1 protection in other parts). As such, operators may prefer to
Chen, et al. Standards Track [Page 3]
^L
RFC 7965 Explicit PW-to-LSP Tunnels Binding August 2016
have a user's traffic traverse the same fiber. That implies that
both forwarding and reserve direction PWs that belong to the same
user flow need to be mapped to the same co-routed bidirectional LSP
or two LSPs with the same route.
Figure 2 illustrates a scenario where PW-LSP binding is not applied.
+----+ +--+ LSP1 +--+ +----+
+-----+ | PE1|===|P1|======|P2|===| PE2| +-----+
| |----| | +--+ +--+ | |----| |
| CE1 | |............PW................| | CE2 |
| |----| | +--+ | |----| |
+-----+ | |======|P3|==========| | +-----+
+----+ +--+ LSP2 +----+
Figure 2: Inconsistent SS-PW-to-LSP Binding Scenario
LSP1 and LSP2 are two bidirectional connections on diverse paths.
The operator needs to deliver a bidirectional flow between PE1 and
PE2. Using existing mechanisms, it's possible that PE1 may select
LSP1 (PE1-P1-P2-PE2) as the PSN tunnel for traffic from PE1 to PE2,
while selecting LSP2 (PE2-P3-PE1) as the PSN tunnel for traffic from
PE2 to PE1.
Consequently, the user traffic is delivered over two disjointed LSPs
that may have very different service attributes in terms of latency
and protection. This may not be acceptable as a reliable and
effective transport service to the customer.
A similar problem may also exist in multi-segment PWs (MS-PWs), where
user traffic on a particular PW may hop over different networks in
forward and reverse directions.
One way to solve this problem is by introducing manual provisioning
at each PE to bind the PWs to the underlying PSN tunnels. However,
this is prone to configuration errors and does not scale.
This document introduces an automatic solution by extending
Forwarding Equivalence Class (FEC) 128/129 PW based on [RFC4447].
2. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119].
Chen, et al. Standards Track [Page 4]
^L
RFC 7965 Explicit PW-to-LSP Tunnels Binding August 2016
3. LDP Extensions
This document defines a new optional TLV, the PSN Tunnel Binding TLV,
to communicate tunnel/LSP selection and binding requests between PEs.
The TLV carries a PW's binding profile and provides explicit or
implicit information for the underlying PSN Tunnel Binding operation.
The binding operation applies in both single-segment (SS) and multi-
segment (MS) scenarios.
The extension supports two types of binding requests:
1. Strict binding: The requesting PE will choose and explicitly
indicate the LSP information in the requests; the receiving PE
MUST obey the requests; otherwise, the PW will not be
established.
2. Co-routed binding: The requesting PE will suggest an underlying
LSP to a remote PE. Upon receipt, the remote PE has the option
to use the suggested LSP or reply to the information for an
alternative.
In this document, the term "tunnel" is identical to the "TE Tunnel"
defined in Section 2.1 of [RFC3209], which is uniquely identified by
a SESSION object that includes the Tunnel endpoint address, the
Tunnel ID, and the Extended Tunnel ID. The term "LSP" is identical
to the "LSP tunnel" defined in Section 2.1 of [RFC3209], which is
uniquely identified by the SESSION object together with the
SENDER_TEMPLATE (or FILTER_SPEC) object that consists of the LSP ID
and the Tunnel endpoint address.
3.1. PSN Tunnel Binding TLV
The PSN Tunnel Binding TLV is an optional TLV and MUST be carried in
the LDP Label Mapping message [RFC5036] if PW-to-LSP binding is
required. The format is as follows:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|U|F| PSN Tunnel Binding(0x0973)| Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|C|S|T| Unallocated flags | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ PSN Tunnel Sub-TLV ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3: PSN Tunnel Binding TLV
Chen, et al. Standards Track [Page 5]
^L
RFC 7965 Explicit PW-to-LSP Tunnels Binding August 2016
The U-bit and F-bit are defined in Section 3.3 [RFC5036]. Since the
PSN Tunnel Binding TLV is an optional TLV, the U-bit MUST be set to 1
so that a receiver MUST silently ignore this TLV if unknown to it,
and continue processing the rest of the message.
A receiver of this TLV is not allowed to forward the TLV further when
it does not know the TLV. So, the F-bit MUST be set to 0.
The PSN Tunnel Binding TLV type is 0x0973.
The Length field is 2 octets long. It defines the length in octets
of the value field (including Flags, Reserved, and sub-TLV fields).
The Flags field is 2 octets in length and three flags are defined in
this document. The rest of the unallocated flags MUST be set to zero
when sending and MUST be ignored when received.
C (Co-routed path) bit: This bit informs the remote T-PE/S-PEs
about the properties of the underlying LSPs. When set, the remote
T-PE/S-PEs SHOULD select the co-routed LSP (as the forwarding
tunnel) as the reverse PSN tunnel. If there is no such tunnel
available, it may trigger the remote T-PE/S-PEs to establish a new
LSP.
S (Strict) bit: This bit instructs the PEs with respect to the
handling of the underlying LSPs. When set, the remote PE MUST use
the tunnel/LSP specified in the PSN Tunnel Sub-TLV as the PSN
tunnel on the reverse direction of the PW, or the PW will fail to
be established.
Either the C-bit or the S-bit MUST be set. The C-bit and S-bit
are mutually exclusive from each other, and they cannot be set
in the same message. If a status code set to "both C-bit and
S-bit are set" or "both C-bit and S-bit are clear" is received,
a Label Release message with the status code set to "The C-bit
or S-bit unknown" (0x0000003C) MUST be the reply, and the PW
will not be established.
T (Tunnel Representation) bit: This bit indicates the format of
the LSP tunnels. When the bit is set, the tunnel uses the tunnel
information to identify itself, and the LSP Number fields in the
PSN Tunnel sub-TLV (Section 3.1.1) MUST be set to zero.
Otherwise, both the tunnel and LSP information of the PSN tunnel
are required. The default is set. The motivation for the T-bit
is to support the MPLS protection operation where the LSP Number
fields may be ignored.
The Reserved field is 2 octets in length and is left for future use.
Chen, et al. Standards Track [Page 6]
^L
RFC 7965 Explicit PW-to-LSP Tunnels Binding August 2016
3.1.1. PSN Tunnel Sub-TLV
PSN Tunnel Sub-TLVs are designed for inclusion in the PSN Tunnel
Binding TLV to specify the tunnel/LSPs to which a PW is required to
bind.
Two sub-TLVs are defined: The IPv4 and IPv6 Tunnel sub-TLVs.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type (1) | Length | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Global ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Node ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Tunnel Number | Source LSP Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Global ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Node ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Tunnel Number | Destination LSP Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
0 1 2 3
Figure 4: IPv4 PSN Tunnel Sub-TLV Format
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type (2) | Length | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Global ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ Source Node ID ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Tunnel Number | Source LSP Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Global ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ Destination Node ID ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Tunnel Number | Destination LSP Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 5: IPv6 PSN Tunnel Sub-TLV Format
Chen, et al. Standards Track [Page 7]
^L
RFC 7965 Explicit PW-to-LSP Tunnels Binding August 2016
The definition of the Source and Destination Global/Node IDs and
Tunnel/LSP Numbers are derived from [RFC6370]. This describes the
underlying LSPs. Note that the LSPs in this notation are globally
unique. The ITU-T style identifiers [RFC6923] are not used in this
document.
As defined in Sections 4.6.1.1 and 4.6.1.2 of [RFC3209], the "Tunnel
endpoint address" is mapped to the Destination Node ID, and the
"Extended Tunnel ID" is mapped to the Source Node ID. Both IDs can
be either IPv4 or IPv6 addresses. The Node IDs are routable
addresses of the ingress LSR and egress LSR of the Tunnel/LSP.
A PSN Tunnel sub-TLV could be used to identify either a tunnel or a
specific LSP. The T-bit in the Flags field defines the distinction
as such that, when the T-bit is set, the Source/Destination LSP
Number fields MUST be zero and ignored during processing. Otherwise,
both Source/Destination LSP Number fields MUST have the actual LSP
IDs of specific LSPs.
Each PSN Tunnel Binding TLV MUST only have one such sub-TLV. When
sending, only one sub-TLV MUST be carried. When received, if there
are more than one sub-TLVs carried, only the first sub-TLV MUST be
used, the rest of the sub-TLVs MUST be ignored.
4. Theory of Operation
During PW setup, the PEs may choose to select the desired forwarding
tunnels/LSPs and inform the remote T-PE/S-PEs about the desired
reverse tunnels/LSPs.
Specifically, to set up a PW (or PW Segment), a PE may select a
candidate tunnel/LSP to act as the PSN tunnel. If no candidate is
available or none satisfy the constraints, the PE will trigger and
establish a new tunnel/LSP. The selected tunnel/LSP information is
carried in the PSN Tunnel Binding TLV and sent with the Label Mapping
message to the target PE.
Upon the reception of the Label Mapping message, the receiving PE
will process the PSN Tunnel Binding TLV, determine whether it can
accept the suggested tunnel/LSP or to find the reverse tunnel/LSP
that meets the request, and respond with a Label Mapping message,
which contains the corresponding PSN Tunnel Binding TLV.
It is possible that two PEs request PSN Binding to the same PW or PW
segment over different tunnels/LSPs at the same time. This may cause
collisions of tunnel/LSPs selection as both PEs assume the active
role.
Chen, et al. Standards Track [Page 8]
^L
RFC 7965 Explicit PW-to-LSP Tunnels Binding August 2016
As defined in (Section 7.2.1, [RFC6073]), each PE may be categorized
into active and passive roles:
1. Active PE: The PE that initiates the selection of the tunnel/LSPs
and informs the remote PE;
2. Passive PE: The PE that obeys the active PE's suggestion.
In the rest of this document, we will elaborate upon the operation
for SS-PW and MS-PW:
1. SS-PW: In this scenario, both PEs for a particular PW may assume
the active roles.
2. MS-PW: One PE is active, while the other is passive. The PWs are
set up using FEC 129.
5. PSN Binding Operation for SS-PW
As illustrated in Figure 6, both PEs (e.g., PE1 and PE2) of a PW may
independently initiate the setup. To perform PSN Binding, the Label
Mapping messages MUST carry a PSN Tunnel Binding TLV, and the PSN
Tunnel sub-TLV MUST contain the desired tunnel/LSPs of the sender.
+----+ LSP1 +----+
+-----+ | PE1|====================| PE2| +-----+
| |----| | | |----| |
| CE1 | |............PW................| | CE2 |
| |----| | | |----| |
+-----+ | |====================| | +-----+
+----+ LSP2 +----+
Figure 6: PSN Binding Operation in SS-PW Environment
As outlined previously, there are two types of binding requests:
co-routed and strict.
In strict binding, a PE (e.g., PE1) will mandate that the other PE
(e.g., PE2) use a specified tunnel/LSP (e.g., LSP1) as the PSN tunnel
on the reverse direction. In the PSN Tunnel Binding TLV, the S-bit
MUST be set, the C-bit MUST be cleared, and the Source and
Destination IDs/Numbers MUST be filled.
Upon receipt, if the S-bit is set, as well as following the
processing procedure defined in Section 5.3.3 of [RFC4447], the
receiving PE (i.e., PE2) needs to determine whether to accept the
indicated tunnel/LSP in PSN Tunnel Sub-TLV.
Chen, et al. Standards Track [Page 9]
^L
RFC 7965 Explicit PW-to-LSP Tunnels Binding August 2016
The receiving PE (PE2) may also be an active PE, and it may have
initiated the PSN Binding requests to the other PE (PE1); if the
received PSN tunnel/LSP is the same as was sent in the Label Mapping
message by PE2, then the signaling has converged on a mutually agreed
upon Tunnel/LSP. The binding operation is completed.
Otherwise, the receiving PE (PE2) MUST compare its own Node ID
against the received Source Node ID as unsigned integers. If the
received Source Node ID is larger, the PE (PE2) will reply with a
Label Mapping message to complete the PW setup and confirm the
binding request. The PSN Tunnel Binding TLV in the message MUST
contain the same Source and Destination IDs/Numbers as in the
received binding request, in the appropriate order (where the source
is PE2 and PE1 becomes the destination). On the other hand, if the
receiving PE (PE2) has a Node ID that is larger than the Source Node
ID carried in the PSN Tunnel Binding TLV, it MUST reply with a Label
Release message with the status code set to "Reject - unable to use
the suggested tunnel/LSPs", and the received PSN Tunnel Binding TLV,
and the PW will not be established.
To support co-routed binding, the receiving PE can select the
appropriate PSN tunnel/LSP for the reverse direction of the PW, so
long as the forwarding and reverse PSNs share the same route (links
and nodes).
Initially, a PE (PE1) sends a Label Mapping message to the remote PE
(PE2) with the PSN Tunnel Binding TLV, with C-bit set, S-bit cleared,
and the appropriate Source and Destination IDs/Numbers. In case of
unidirectional LSPs, the PSN Tunnel Binding TLV may only contain the
Source IDs/Numbers; the Destination IDs/Numbers are set to zero and
left for PE2 to complete when responding to the Label Mapping
message.
Upon receipt, since PE2 is also an active PE, and may have initiated
the PSN Binding requests to the other PE (PE1), if the received PSN
tunnel/LSP has the same route as the one that has been sent in the
Label Mapping message to PE1, then the signaling has converged. The
binding operation is completed.
Otherwise, PE2 needs to compare its own Node ID against the received
Source Node ID as unsigned integers. If the received Source Node ID
is larger, PE2 needs to find/establish a tunnel/LSP that meets the
co-routed constraint, and reply with a Label Mapping message that has
a PSN Binding TLV that contains the Source and Destination IDs/
Numbers of the tunnel/LSP. On the other hand, if the receiving PE
(PE2) has a Node ID that is larger than the Source Node ID carried in
the PSN Tunnel Binding TLV, it MUST reply with a Label Release
message that has a status code set to "Reject - unable to use the
Chen, et al. Standards Track [Page 10]
^L
RFC 7965 Explicit PW-to-LSP Tunnels Binding August 2016
suggested tunnel/LSPs" (0x0000003B) and the received PSN Tunnel
Binding TLV.
In addition, if the received PSN tunnel/LSP endpoints do not match
the PW endpoints, PE2 MUST reply with a Label Release message with
the status code set to "Reject - unable to use the suggested
tunnel/LSPs" (0x0000003B) and the received PSN Tunnel Binding TLV
MUST also be carried.
In both strict and co-routed bindings, if the T-bit is set, the LSP
Number field MUST be set to zero. Otherwise, the field MUST contain
the actual LSP number for the related PSN LSP.
After a PW is established, the operators may choose to move the PWs
from the current tunnel/LSPs to other tunnel/LSPs. Also, the
underlying PSN tunnel may break due to a network failure. When
either of these scenarios occur, a new Label Mapping message MUST be
sent to notify the remote PE of the changes. Note that when the
T-bit is set, the working LSP broken will not provide this update if
there are protection LSPs in place.
The message may carry a new PSN Tunnel Binding TLV, which contains
the new Source and Destination Numbers/IDs. The handling of the new
message should be identical to what has been described in this
section.
However, if the new Label Mapping message does not contain the PSN
Tunnel Binding TLV, it declares the removal of any co-routed/strict
constraints. The current independent PW-to-PSN Binding will be used.
Further, as an implementation option, the PEs may choose not to
remove the traffic from an operational PW until the completion of the
underlying PSN tunnel/LSP changes.
6. PSN Binding Operation for MS-PW
MS-PW uses FEC 129 for PW setup. We refer to Figure 7 for this
operation.
+-----+ LSP1 +-----+ LSP2 +-----+ LSP3 +-----+
+---+ |T-PE1|======|S-PE1|======|S-PE2|======|T-PE2| +---+
| |---| | | | | | | |---| |
|CE1| |......................PW....................| |CE2|
| |---| | | | | | | |---| |
+---+ | |======| |======| |======| | +---+
+-----+ LSP4 +-----+ LSP5 +-----+ LSP6 +-----+
Figure 7: PSN Binding Operation in MS-PW Environment
Chen, et al. Standards Track [Page 11]
^L
RFC 7965 Explicit PW-to-LSP Tunnels Binding August 2016
When an active PE (that is, T-PE1) starts to signal an MS-PW, a PSN
Tunnel Binding TLV MUST be carried in the Label Mapping message and
sent to the adjacent S-PE (that is, S-PE1). The PSN Tunnel Binding
TLV includes the PSN Tunnel sub-TLV that carries the desired
tunnel/LSP of T-PE1.
For strict binding, the initiating PE MUST set the S-bit, clear the
C-bit, and indicate the binding tunnel/LSP to the next-hop S-PE.
When S-PE1 receives the Label Mapping message, it needs to determine
if the signaling is for the forward or reverse direction, as defined
in Section 4.2.3 of [RFC7267].
If the Label Mapping message is for the forward direction, and S-PE1
accepts the requested tunnel/LSPs from T-PE1, S-PE1 MUST save the
tunnel/LSP information for reverse-direction processing later on. If
the PSN Binding request is not acceptable, S-PE1 MUST reply with a
Label Release Message to the upstream PE (T-PE1) with the status code
set to "Reject - unable to use the suggested tunnel/LSPs"
(0x0000003B).
Otherwise, S-PE1 relays the Label Mapping message to the next S-PE
(that is, S-PE2), with the PSN Tunnel sub-TLV carrying the
information of the new PSN tunnel/LSPs selected by S-PE1. S-PE2 and
subsequent S-PEs will repeat the same operation until the Label
Mapping message reaches to the remote T-PE (that is, T-PE2).
If T-PE2 agrees with the requested tunnel/LSPs, it will reply with a
Label Mapping message to initiate the binding process in the reverse
direction. The Label Mapping message contains the received PSN
Tunnel Binding TLV for confirmation purposes.
When its upstream S-PE (S-PE2) receives the Label Mapping message,
the S-PE relays the Label Mapping message to its upstream adjacent
S-PE (S-PE1), with the previously saved PSN tunnel/LSP information in
the PSN Tunnel sub-TLV. The same procedure will be applied on
subsequent S-PEs, until the message reaches T-PE1 to complete the PSN
Binding setup.
During the binding process, if any PE does not agree to the requested
tunnel/LSPs, it can send a Label Release Message to its upstream
adjacent PE with the status code set to "Reject - unable to use the
suggested tunnel/LSPs" (0x0000003B). In addition, if the received
PSN tunnel/LSP endpoints do not match the PW Segment endpoints, the
receiving PE MUST reply with a Label Release message with the status
code set to "Reject - unable to use the suggested tunnel/LSPs"
(0x0000003B) and the received PSN Tunnel Binding TLV MUST also be
carried.
Chen, et al. Standards Track [Page 12]
^L
RFC 7965 Explicit PW-to-LSP Tunnels Binding August 2016
For co-routed binding, the initiating PE (T-PE1) MUST set the C-bit,
reset the S-bit, and indicate the suggested tunnel/LSP in the PSN
Tunnel sub-TLV to the next-hop S-PE (S-PE1).
During the MS-PW setup, the PEs have the option of ignoring the
suggested tunnel/LSP, and to select another tunnel/LSP for the
segment PW between itself and its upstream PE in reverse direction
only if the tunnel/LSP is co-routed with the forward one. Otherwise,
the procedure is the same as the strict binding.
The tunnel/LSPs may change after a MS-PW has been established. When
a tunnel/LSP has changed, the PE that detects the change SHOULD
select an alternative tunnel/LSP for temporary use while negotiating
with other PEs following the procedure described in this section.
7. PSN Tunnel Select Considerations
As stated in Section 1, the PSN tunnel that is used for binding can
be either a co-routed bidirectional LSP or two LSPs with the same
route. The co-routed bidirectional LSP has the characteristics that
both directions not only cross the same nodes and links, but have the
same life span. But for the two LSPs case, even if they have the
same route at the beginning, it cannot be guaranteed that they will
always have the same route all the time. For example, when Fast
ReRoute (FRR) [RFC4090] is deployed for the LSPs, link or node
failure may make the two LSPs use different routes. So, if the
network supports co-routed bidirectional LSPs, it is RECOMMENDED that
a co-routed bidirectional LSP should be used; otherwise, two LSPs
with the same route may be used.
8. Security Considerations
The ability to control which LSP is used to carry traffic from a PW
can be a potential security risk both for denial of service and
traffic interception. It is RECOMMENDED that PEs not accept the use
of LSPs identified in the PSN Tunnel Binding TLV unless the LSP
endpoints match the PW or PW segment endpoints. Furthermore, it is
RECOMMENDED that PEs implement the LDP security mechanisms described
in [RFC5036] and [RFC5920].
9. IANA Considerations
9.1. LDP TLV Types
This document defines a new TLV (Section 3.1) for inclusion in the
LDP Label Mapping message. IANA has assigned TLV type value 0x0973
from the "LDP TLV Type Name Space" registry.
Chen, et al. Standards Track [Page 13]
^L
RFC 7965 Explicit PW-to-LSP Tunnels Binding August 2016
9.1.1. PSN Tunnel Sub-TLVs
This document defines two sub-TLVs (Section 3.1.1) for the PSN Tunnel
Binding TLV. IANA has created a new PWE3 subregistry titled "PSN
Tunnel Sub-TLV Name Space" for PSN Tunnel sub-TLVs and has assigned
Sub-TLV type values to the following sub-TLVs:
IPv4 PSN Tunnel sub-TLV - 1
IPv6 PSN Tunnel sub-TLV - 2
In addition, the values 0 and 255 in this new registry should be
reserved, and values 1-254 will be allocated by IETF Review
[RFC5226].
9.2. LDP Status Codes
This document defines two new LDP status codes, IANA has assigned
status codes to these new defined codes from the "LDP Status Code
Name Space" registry.
"Reject - unable to use the suggested tunnel/LSPs" - 0x0000003B
"The C-bit or S-bit unknown" - 0x0000003C
The E bit is set to 1 for both new codes.
10. References
10.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>.
[RFC4447] Martini, L., Ed., Rosen, E., El-Aawar, N., Smith, T., and
G. Heron, "Pseudowire Setup and Maintenance Using the
Label Distribution Protocol (LDP)", RFC 4447,
DOI 10.17487/RFC4447, April 2006,
<http://www.rfc-editor.org/info/rfc4447>.
[RFC6370] Bocci, M., Swallow, G., and E. Gray, "MPLS Transport
Profile (MPLS-TP) Identifiers", RFC 6370,
DOI 10.17487/RFC6370, September 2011,
<http://www.rfc-editor.org/info/rfc6370>.
Chen, et al. Standards Track [Page 14]
^L
RFC 7965 Explicit PW-to-LSP Tunnels Binding August 2016
10.2. Informative References
[RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V.,
and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP
Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001,
<http://www.rfc-editor.org/info/rfc3209>.
[RFC3985] Bryant, S., Ed. and P. Pate, Ed., "Pseudo Wire Emulation
Edge-to-Edge (PWE3) Architecture", RFC 3985,
DOI 10.17487/RFC3985, March 2005,
<http://www.rfc-editor.org/info/rfc3985>.
[RFC4090] Pan, P., Ed., Swallow, G., Ed., and A. Atlas, Ed., "Fast
Reroute Extensions to RSVP-TE for LSP Tunnels", RFC 4090,
DOI 10.17487/RFC4090, May 2005,
<http://www.rfc-editor.org/info/rfc4090>.
[RFC5036] Andersson, L., Ed., Minei, I., Ed., and B. Thomas, Ed.,
"LDP Specification", RFC 5036, DOI 10.17487/RFC5036,
October 2007, <http://www.rfc-editor.org/info/rfc5036>.
[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", BCP 26, RFC 5226,
DOI 10.17487/RFC5226, May 2008,
<http://www.rfc-editor.org/info/rfc5226>.
[RFC5920] Fang, L., Ed., "Security Framework for MPLS and GMPLS
Networks", RFC 5920, DOI 10.17487/RFC5920, July 2010,
<http://www.rfc-editor.org/info/rfc5920>.
[RFC6073] Martini, L., Metz, C., Nadeau, T., Bocci, M., and M.
Aissaoui, "Segmented Pseudowire", RFC 6073,
DOI 10.17487/RFC6073, January 2011,
<http://www.rfc-editor.org/info/rfc6073>.
[RFC6373] Andersson, L., Ed., Berger, L., Ed., Fang, L., Ed., Bitar,
N., Ed., and E. Gray, Ed., "MPLS Transport Profile (MPLS-
TP) Control Plane Framework", RFC 6373,
DOI 10.17487/RFC6373, September 2011,
<http://www.rfc-editor.org/info/rfc6373>.
[RFC6923] Winter, R., Gray, E., van Helvoort, H., and M. Betts,
"MPLS Transport Profile (MPLS-TP) Identifiers Following
ITU-T Conventions", RFC 6923, DOI 10.17487/RFC6923, May
2013, <http://www.rfc-editor.org/info/rfc6923>.
Chen, et al. Standards Track [Page 15]
^L
RFC 7965 Explicit PW-to-LSP Tunnels Binding August 2016
[RFC7267] Martini, L., Ed., Bocci, M., Ed., and F. Balus, Ed.,
"Dynamic Placement of Multi-Segment Pseudowires",
RFC 7267, DOI 10.17487/RFC7267, June 2014,
<http://www.rfc-editor.org/info/rfc7267>.
Acknowledgements
The authors would like to thank Adrian Farrel, Kamran Raza, Xinchun
Guo, Mingming Zhu, and Li Xue for their comments and help in
preparing this document. Also this document benefits from the
discussions with Nabil Bitar, Paul Doolan, Frederic Journay, Andy
Malis, Curtis Villamizar, Luca Martini, Alexander Vainshtein, Huub
van Helvoort, Daniele Ceccarelli, and Stewart Bryant.
We would especially like to acknowledge Ping Pan, a coauthor on the
early draft versions of this document. It was a privilege to have
known him.
The coauthors of this document, the working group chairs, the
responsible AD, and the PALS working group wish to dedicate this RFC
to the memory of our friend and colleague Ping Pan, in recognition
for his devotion and hard work at the IETF.
Authors' Addresses
Mach(Guoyi) Chen
Huawei
Email: mach.chen@huawei.com
Wei Cao
Huawei
Email: wayne.caowei@huawei.com
Attila Takacs
Ericsson
Laborc u. 1.
Budapest 1037
Hungary
Email: attila.takacs@ericsson.com
Ping Pan
Chen, et al. Standards Track [Page 16]
^L
|