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
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
|
Internet Engineering Task Force (IETF) D. Allan, Ed.
Request for Comments: 6428 Ericsson
Category: Standards Track G. Swallow, Ed.
ISSN: 2070-1721 Cisco Systems, Inc.
J. Drake, Ed.
Juniper
November 2011
Proactive Connectivity Verification, Continuity Check, and
Remote Defect Indication for the MPLS Transport Profile
Abstract
Continuity Check, Proactive Connectivity Verification, and Remote
Defect Indication functionalities are required for MPLS Transport
Profile (MPLS-TP) Operations, Administration, and Maintenance (OAM).
Continuity Check monitors a Label Switched Path for any loss of
continuity defect. Connectivity Verification augments Continuity
Check in order to provide confirmation that the desired source is
connected to the desired sink. Remote Defect Indication enables an
end point to report, to its associated end point, a fault or defect
condition that it detects on a pseudowire, Label Switched Path, or
Section.
This document specifies specific extensions to Bidirectional
Forwarding Detection (BFD) and methods for proactive Continuity
Check, Continuity Verification, and Remote Defect Indication for
MPLS-TP pseudowires, Label Switched Paths, and Sections using BFD as
extended by this memo.
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 5741.
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/rfc6428.
Allan, et al. Standards Track [Page 1]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
Copyright Notice
Copyright (c) 2011 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. Conventions Used in This Document ...............................3
2.1. Terminology ................................................3
2.2. Requirements Language ......................................5
3. MPLS-TP CC, Proactive CV, and RDI Mechanism Using BFD ...........5
3.1. Existing Capabilities ......................................5
3.2. CC, CV, and RDI Overview ...................................5
3.3. ACH Code Points for CC and Proactive CV ....................6
3.4. MPLS-TP BFD CC Message Format ..............................7
3.5. MPLS-TP BFD Proactive CV Message Format ....................8
3.5.1. Section MEP-ID ......................................9
3.5.2. LSP MEP-ID ..........................................9
3.5.3. PW End Point MEP-ID ................................10
3.6. BFD Session in MPLS-TP Terminology ........................10
3.7. BFD Profile for MPLS-TP ...................................11
3.7.1. Session Initiation and Modification ................12
3.7.2. Defect Entry Criteria ..............................13
3.7.3. Defect Entry Consequent Action .....................14
3.7.4. Defect Exit Criteria ...............................14
3.7.5. State Machines .....................................15
3.7.6. Configuration of MPLS-TP BFD Sessions ..............17
3.7.7. Discriminator Values ...............................17
4. Configuration Considerations ...................................18
5. IANA Considerations ............................................18
6. Security Considerations ........................................19
7. References .....................................................19
7.1. Normative References ......................................19
7.2. Informative References ....................................20
8. Acknowledgments ................................................20
9. Contributing Authors ...........................................21
Allan, et al. Standards Track [Page 2]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
1. Introduction
In traditional transport networks, circuits are provisioned on two or
more switches. Service providers need Operations, Administration,
and Maintenance (OAM) tools to detect mis-connectivity and loss of
continuity of transport circuits. Both pseudowires (PWs) and MPLS-TP
Label Switched Paths (LSPs) [12] emulating traditional transport
circuits need to provide the same Continuity Check (CC), proactive
Continuity Verification (CV), and Remote Defect Indication (RDI)
capabilities as required in RFC 5860 [3]. This document describes
the use of Bidirectional Forwarding Detection (BFD) [4] for CC,
proactive CV, and RDI of a PW, LSP, or Sub-Path Maintenance Entity
(SPME) between two Maintenance Entity Group End Points (MEPs).
As described in RFC 6371 [13], CC and CV functions are used to detect
loss of continuity (LOC) and unintended connectivity between two MEPs
(e.g., mis-merging or mis-connectivity or unexpected MEP).
RDI is an indicator that is transmitted by a MEP to communicate to
its peer MEP that a signal fail condition exists. RDI is only used
for bidirectional LSPs and is associated with proactive CC and CV BFD
control packet generation.
This document specifies the BFD extension and behavior to satisfy the
CC, proactive CV monitoring, and the RDI functional requirements for
both co-routed and associated bidirectional LSPs. Supported
encapsulations include Generic Associated Channel Label (GAL) /
Generic Associated Channel (G-ACh), Virtual Circuit Connectivity
Verification (VCCV), and UDP/IP. Procedures for unidirectional
point-to-point (P2P) and point-to-multipoint (P2MP) LSPs are for
further study.
This document utilizes identifiers for MPLS-TP systems as defined in
RFC 6370 [9]. Work is ongoing in the ITU-T to define a globally-
unique semantic for ITU Carrier Codes (ICCs), and future work may
extend this document to utilize ICCs as identifiers for MPLS-TP
systems.
The mechanisms specified in this document are restricted to BFD
asynchronous mode.
2. Conventions Used in This Document
2.1. Terminology
ACH: Associated Channel Header
BFD: Bidirectional Forwarding Detection
Allan, et al. Standards Track [Page 3]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
CC: Continuity Check
CV: Connectivity Verification
GAL: Generic Associated Channel Label
G-ACh: Generic Associated Channel
LDI: Link Down Indication
LKI: Lock Instruct
LKR: Lock Report
LSP: Label Switched Path
LSR: Label Switching Router
ME: Maintenance Entity
MEG: Maintenance Entity Group
MEP: Maintenance Entity Group End Point
MIP: Maintenance Entity Group Intermediate Point
MPLS: Multiprotocol Label Switching
MPLS-OAM: MPLS Operations, Administration and Maintenance
MPLS-TP: MPLS Transport Profile
MPLS-TP LSP: Unidirectional or bidirectional Label Switched Path
representing a circuit
MS-PW: Multi-Segment Pseudowire
NMS: Network Management System
OAM: Operations, Administration, and Maintenance [14]
PW: Pseudowire
PDU: Protocol Data Unit
P/F: Poll/Final
RDI: Remote Defect Indication
Allan, et al. Standards Track [Page 4]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
SPME: Sub-Path Maintenance Entity
TTL: Time To Live
TLV: Type Length Value
VCCV: Virtual Circuit Connectivity Verification
2.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 RFC 2119 [1].
3. MPLS-TP CC, Proactive CV, and RDI Mechanism Using BFD
This document describes procedures for achieve combined CC, CV, and
RDI functionality within a single MPLS-TP MEG using BFD. This
augments the capabilities that can be provided for MPLS-TP LSPs using
existing specified tools and procedures.
3.1. Existing Capabilities
A CC-only mode may be provided via protocols and procedures described
in RFC 5885 [7] with ACH channel 7. These procedures may be applied
to bidirectional LSPs (via the use of the GAL) as well as PWs.
Implementations may also interoperate with legacy equipment by
implementing RFC 5884 [8] for LSPs and RFC 5085 [10] for PWs, in
addition to the procedures documented in this memo. In accordance
with RFC 5586 [2], when BFD control packets are encapsulated in an IP
header, the fields in the IP header are set as defined in RFC 5884
[8]. When IP encapsulation is used, CV mis-connectivity defect
detection can be performed by inferring a globally unique source on
the basis of the combination of the source IP address and My
Discriminator fields.
3.2. CC, CV, and RDI Overview
The combined CC, CV, and RDI functionality for MPLS-TP is achieved by
multiplexing CC and CV PDUs within a single BFD session. The CV PDUs
are augmented with a Source MEP-ID TLV to permit mis-connectivity
detection to be performed by sink MEPs.
The interleaving of PDUs is achieved via the use of distinct
encapsulations and code points for generic associated channel (G-ACh)
encapsulated BFD depending on whether the PDU format is CC or CV:
Allan, et al. Standards Track [Page 5]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
o CC format: defines a new code point in the Associated Channel
Header (ACH) described in RFC 5586 [2]. This format supports
Continuity Check and RDI functionalities.
o CV format: defines a new code point in the Associated Channel
Header (ACH) described in RFC 5586 [2]. The ACH with "MPLS-TP
Proactive CV" code point indicates that the message is an MPLS-TP
BFD proactive CV message, and information for CV processing is
appended in the form of the Source MEP-ID TLV.
RDI is communicated via the BFD diagnostic field in BFD CC messages,
and the diagnostic code field in CV messages MUST be ignored. It is
not a distinct PDU. As per [4], a sink MEP SHOULD encode a
diagnostic code of "1 - Control Detection Time Expired" when the time
since the last received BFD control packet exceeds the detection
time, which is equal to the remote system's Transmit Interval
multiplied by the remote system's Detect Multiplier (which is set to
3 in this document). A sink MEP SHOULD encode a diagnostic code of
"5 - Path Down" as a consequence of the sink MEP receiving LDI. A
sink MEP MUST encode a diagnostic code of "9 - mis-connectivity
defect" when CV PDU processing indicates a mis-connectivity defect.
A sink MEP that has started sending diagnostic code 5 SHOULD NOT
change it to 1 when the detection timer expires.
3.3. ACH Code Points for CC and Proactive CV
Figure 1 illustrates the G-ACh encoding for BFD CC-CV-RDI
functionality.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 0 0 1|Version| Flags | BFD CC/CV Code Point |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: ACH Indication of MPLS-TP CC/CV/RDI
The first nibble (0001b) indicates the G-ACh as per RFC 5586 [2].
The version and the flags are set to 0 as specified in [2].
The code point is either
- BFD CC code point = 0x0022, or
- BFD proactive CV code point = 0x0023.
Allan, et al. Standards Track [Page 6]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
CC and CV PDUs apply to all pertinent MPLS-TP structures, including
PWs, MPLS LSPs (including SPMEs), and Sections.
CC and CV operations are simultaneously employed on a maintenance
entity (ME) within a single BFD session. The expected usage is that
normal operation is to send CC BFD protocol data units (PDUs)
interleaved with a CV BFD PDU (augmented with a Source MEP-ID and
identified as requiring additional processing by the different ACh
channel types). The insertion interval for CV PDUs is one per
second. Detection of a loss of continuity defect occurs when the
time since the last received BFD control packet exceeds the detection
time, which is equal to the session periodicity times the remote
system's Detect Multiplier (which is set to 3 for the CC code point).
Mis-connectivity defects are detected in a maximum of one second.
3.4. MPLS-TP BFD CC Message Format
The format of an MPLS-TP CC message is shown below.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |0
0 0 1|Version| Flags | BFD CC Code point |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| ~ BFD Control Packet ~ |
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 2: MPLS-TP CC Message
As shown in Figure 2, the MPLS-TP CC message consists of the BFD
control packet as defined in [4] pre-pended by the G-ACh.
Allan, et al. Standards Track [Page 7]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
3.5. MPLS-TP BFD Proactive CV Message Format
The format of an MPLS-TP CV Message is shown below.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 0 0 1|Version| Flags | BFD CV Code Point |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
~ BFD Control Packet ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
~ Source MEP-ID TLV ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3: MPLS-TP CV Message
As shown in Figure 3, the MPLS-TP CV message consists of the BFD
control packet as defined in [4], pre-pended by the ACH and appended
by a Source MEP-ID TLV.
A Source MEP-ID TLV is encoded as a 2-octet field that specifies a
Type, followed by a 2-octet Length field, followed by a variable-
length Value field. A BFD session will only use one encoding of the
Source ID TLV.
The length in the BFD control packet is as per [4]; the length of the
Source MEP-ID TLV is not included. There are three possible Source
MEP TLVs (corresponding to the MEP-IDs defined in [9]). The type
fields are:
0 - Section MEP-ID
1 - LSP MEP-ID
2 - PW MEP-ID
When the GAL is used, the TTL field of the GAL MUST be set to at
least 1, and the GAL MUST be the end of stack label (S=1) as per [2].
A node MUST NOT change the value in the Source MEP-ID TLV.
When digest-based authentication is used, the Source ID TLV MUST NOT
be included in the digest.
Allan, et al. Standards Track [Page 8]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
3.5.1. Section MEP-ID
The IP-compatible MEP-ID for MPLS-TP Sections is the interface ID.
The format of the Section MEP-ID TLV is:
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 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MPLS-TP Global_ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MPLS-TP Node Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MPLS-TP Interface Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 4: Section MEP-ID TLV Format
Where the Type is of value '0'. The Length is the length of the
value fields. The MPLS-TP Global_ID, Node Identifier, and Interface
Numbers are as per [9].
3.5.2. LSP MEP-ID
The fields for the LSP MEP-ID are as defined in [9]. This is
applicable to both LSPs and SPMEs. This consists of the 32-bit MPLS-
TP Global_ID, the 32-bit Node Identifier, followed by the 16-bit
Tunnel_Num (that MUST be unique within the context of the Node
Identifier), and the 16-bit LSP_NUM (that MUST be unique within the
context of the Tunnel_Num). The format of the TLV is:
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 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MPLS-TP Global_ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MPLS-TP Node Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tunnel_Num | LSP_Num |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 5: LSP MEP-ID TLV Format
Allan, et al. Standards Track [Page 9]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
Where the type is of value '1'. The length is the length of the
value fields. The MPLS-TP Global_ID, Node Identifier, Tunnel_Num,
and LSP_Num are as per [9].
3.5.3. PW End Point MEP-ID
The fields for the MPLS-TP PW End Point MEP-ID are as defined in [9].
The format of the TLV is:
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 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MPLS-TP Global_ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MPLS-TP Node Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AC_ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AGI Type | AGI Length | AGI Value |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ AGI Value (contd.) ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 6: PW End Point MEP-ID TLV Format
Where the type is value '2'. The length is the length of the
following data: the Global_ID, Node Identifier, and Attachment
Circuit ID (AC_ID) are as per [9]. The Attachment Group Identifier
(AGI) Type is as per [6], and the AGI Length is the length of the AGI
value field.
3.6. BFD Session in MPLS-TP Terminology
A BFD session corresponds to a CC and proactive CV OAM instance in
MPLS-TP terminology. A BFD session is enabled when the CC and
proactive CV functionality are enabled on a configured Maintenance
Entity (ME).
When the CC and proactive CV functionality are disabled on an ME, the
BFD session transitions to the ADMIN DOWN state, and the BFD session
ends.
A new BFD session is initiated when the operator enables or
re-enables the CC and CV functionality.
Allan, et al. Standards Track [Page 10]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
All BFD state changes and P/F exchanges MUST be done using CC
packets. P/F and session state information in CV packets MUST be
ignored.
3.7. BFD Profile for MPLS-TP
BFD operates in asynchronous mode utilizing the encapsulation defined
in Section 3 for all sessions in a given MEG. For LSPs, SPMEs, and
Sections, this is GAL/G-ACh-encapsulated BFD using the code points
specified in Section 3.3. For PWs, this is G-ACh or GAL/G-ACh-
encapsulated BFD using the code points specified in Section 3.3. In
this mode, the BFD control packets are periodically sent at a
configurable time rate. This rate is a fixed value common for both
directions of MEG for the lifetime of the MEG.
This document specifies bidirectional BFD for P2P transport LSPs;
hence, all BFD packets MUST be sent with the M bit clear.
There are two modes of operation for bidirectional LSPs: one in which
the session state of both directions of the LSP is coordinated, and
one constructed from BFD sessions in such a way that the two
directions operate independently but are still part of the same MEG.
A single bidirectional BFD session is used for coordinated operation.
Two independent BFD sessions are used for independent operation. It
should be noted that independent operation treats session state and
defect state as independent entities. For example, an independent
session can be in the UP state while receiving RDI. For a
coordinated session, the session state will track the defect state.
In coordinated mode, an implementation SHOULD NOT reset
bfd.RemoteDiscr until it is exiting the DOWN state.
In independent mode, an implementation MUST NOT reset bfd.RemoteDiscr
upon transitioning to the DOWN state.
Overall operation is as specified in RFC 5880 [4] and augmented for
MPLS in RFC 5884 [8]. Coordinated operation is as described in [4].
Independent operation requires clarification of two aspects of [4].
Independent operation is characterized by the setting of
bfd.MinRxInterval to zero by the MEP that is typically the session
originator (referred to as the source MEP), and there will be a
session originator at either end of the bidirectional LSP. Each
source MEP will have a corresponding sink MEP that has been
configured to a transmission interval of zero.
Allan, et al. Standards Track [Page 11]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
This memo specifies a preferred interpretation of the base
specification on how a MEP behaves with a BFD transmit rate set to
zero. One interpretation is that no periodic messages on the reverse
component of the bidirectional LSP originate with that MEP; it will
only originate messages on a state change.
The first clarification is that, when a state change occurs, a MEP
set to a transmit rate of zero sends BFD control messages with a one-
second period on the reverse component until such time that the state
change is confirmed by the session peer. At this point, the MEP set
to a transmit rate of zero can resume quiescent behavior. This adds
robustness to all state transitions in the RxInterval=0 case.
The second clarification is that the originating MEP (the one with a
non-zero bfd.TxInterval) will ignore a DOWN state received from a
zero-interval peer. This means that the zero-interval peer will
continue to send DOWN state messages that include the RDI diagnostic
code as the state change is never confirmed. This adds robustness to
the exchange of RDI on a unidirectional failure (for both session
types DOWN with a diagnostic of either control detection period
expired or neighbor signaled session down offering RDI
functionality).
A further extension to the base specification is that there are
additional OAM protocol exchanges that act as inputs to the BFD state
machine. These are the Link Down Indication [5] and the Lock
Instruct/Lock Report transactions, the Lock Report interaction being
optional.
3.7.1. Session Initiation and Modification
Session initiation occurs starting from MinRx = 1 second, MinTx >= 1
second, and the detect multiplier = 3.
Once in the UP state, Poll/Final discipline is used to modify the
periodicity of control message exchange from their default rates to
the desired rates and to set the detect multiplier to 3.
Note that in the Poll/Final process a receiver of a new timer value
with a poll flag can reject the timer value by tearing the session,
or it can return its preferred timer value with the final flag. Note
also that the receiver of a new timer value with a final flag can
reject the timer value by tearing the session, or it can return its
preferred timer value with the poll flag.
Once the desired rate has been reached using the Poll/Final
mechanism, implementations SHOULD NOT attempt further rate
modification.
Allan, et al. Standards Track [Page 12]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
In the rare circumstance where an operator has a reason to further
change session parameters, beyond the initial migration from default
values, Poll/Final discipline can be used with the caveat that a peer
implementation may consider a session change unacceptable and/or
bring the BFD session down via the use of the ADMIN DOWN state.
3.7.2. Defect Entry Criteria
There are further defect criteria beyond those that are defined in
[4] to consider given the possibility of mis-connectivity defects.
The result is the criteria for an LSP direction to transition from
the defect-free state to a defect state is a superset of that in the
BFD base specification [4].
The following conditions cause a MEP to enter the defect state for CC
PDUs (in no particular order):
1. BFD session times out (loss of continuity defect).
2. Receipt of a Link Down Indication or Lock Report.
The following will cause the MEP to enter the mis-connectivity defect
state for CV operation (again, not in any particular order):
1. BFD control packets are received with an unexpected
encapsulation (mis-connectivity defect), these include:
- receiving an IP encoded CC or CV BFD control packet on an
LSP configured to use GAL/G-ACh, or
- vice versa
(Note there are other possibilities that can also alias as an
OAM packet.)
2. Receipt of an unexpected globally unique Source MEP identifier
(mis-connectivity defect). Note that as each encoding of the
Source MEP-ID TLV contains unique information (there is no
mechanical translation possible between MEP-ID formats),
receipt of an unexpected Source MEP-ID type is the same as
receiving an unexpected value.
3. Receipt of a session discriminator that is not in the local BFD
database in the Your Discriminator field (mis-connectivity
defect).
4. Receipt of a session discriminator that is in the local
database but does not have the expected label (mis-connectivity
defect).
Allan, et al. Standards Track [Page 13]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
5. If BFD authentication is used, receipt of a message with
incorrect authentication information (password, MD5 digest, or
SHA1 hash).
The effective defect hierarchy (order of checking) is:
1. Receiving nothing.
2. Receiving Link Down Indication, e.g., a local link failure, an
MPLS-TP LDI, or Lock Report.
3. Receiving from an incorrect source (determined by whatever
means).
4. Receiving from a correct source (as near as can be determined),
but with incorrect session information.
5. Receiving BFD control packets in all discernable ways correct.
3.7.3. Defect Entry Consequent Action
Upon defect entry, a sink MEP will assert signal fail into any client
(sub-)layers. It will also communicate session DOWN to its session
peer using CC messages.
The blocking of traffic as a consequent action MUST be driven only by
a defect's consequent action as specified in Section 5.1.1.2 of RFC
6371 [13].
When the defect is mis-connectivity, the Section, LSP, or PW
termination will silently discard all non-OAM traffic received. The
sink MEP will also send a defect indication back to the source MEP
via the use of a diagnostic code of mis-connectivity defect (9).
3.7.4. Defect Exit Criteria
3.7.4.1. Exit from a Loss of Continuity Defect
For a coordinated session, exit from a loss of connectivity defect is
as described in Figure 7, which updates RFC 5880 [4].
For an independent session, exit from a loss of connectivity defect
occurs upon receipt of a well-formed BFD control packet from the peer
MEP as described in Figures 8 and 9.
Allan, et al. Standards Track [Page 14]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
3.7.4.2. Exit from a Mis-Connectivity Defect
Exit from a mis-connectivity defect state occurs when no CV messages
with mis-connectivity defects have been received for a period of 3.5
seconds.
3.7.5. State Machines
The following state machines update RFC 5880 [4]. They have been
modified to include LDI and LKR as specified in [5] as inputs to the
state machine and to clarify the behavior for independent mode. LKR
is an optional input.
The coordinated session state machine has been augmented to indicate
LDI and optionally LKR as inputs to the state machine. For a session
that is in the UP state, receipt of LDI or optionally LKR will
transition the session into the DOWN state.
+--+
| | UP, ADMIN DOWN, TIMER, LDI, LKR
| V
DOWN +------+ INIT
+------------| |------------+
| | DOWN | |
| +-------->| |<--------+ |
| | +------+ | |
| | MIS-CONNECTIVITY,| |
| | ADMIN DOWN,| |
| |ADMIN DOWN, DOWN,| |
| |TIMER TIMER,| |
V |LDI,LKR LDI,LKR | V
+------+ +------+
+----| | | |----+
DOWN| | INIT |--------------------->| UP | |INIT, UP
+--->| | INIT, UP | |<---+
+------+ +------+
Figure 7: MPLS CC State Machine for Coordinated Session Operation
For independent mode, there are two state machines: one for the
source MEP (which requested bfd.MinRxInterval=0) and one for the sink
MEP (which agreed to bfd.MinRxInterval=0).
The source MEP will not transition out of the UP state once
initialized except in the case of a forced ADMIN DOWN. Hence, LDI
and optionally LKR do not enter into the state machine transition
from the UP state, but do enter into the INIT and DOWN states.
Allan, et al. Standards Track [Page 15]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
+--+
| | UP, ADMIN DOWN, TIMER, LDI, LKR
| V
DOWN +------+ INIT
+------------| |------------+
| | DOWN | |
| +-------->| |<--------+ |
| | +------+ | |
| | | |
| |ADMIN DOWN ADMIN DOWN | |
| |TIMER, | |
| |LDI, | |
V |LKR | V
+------+ +------+
+----| | | |----+
DOWN| | INIT |--------------------->| UP | | INIT, UP, DOWN,
+--->| | INIT, UP | |<---+ LDI, LKR
+------+ +------+
Figure 8: MPLS CC State Machine for Source MEP for
Independent Session Operation
The sink MEP state machine (for which the transmit interval has been
set to zero) is modified to:
1) Permit direct transition from DOWN to UP once the session has been
initialized. With the exception of via the ADMIN DOWN state, the
source MEP will never transition from the UP state; hence, in
normal unidirectional fault scenarios, it will never transition to
the INIT state.
Allan, et al. Standards Track [Page 16]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
+--+
| | ADMIN DOWN, TIMER, LDI, LKR
| V
DOWN +------+ INIT, UP
+------------| |------------+
| | DOWN | |
| +-------->| |<--------+ |
| | +------+ | |
| | MIS-CONNECTIVITY,| |
| | ADMIN DOWN,| |
| |ADMIN DOWN, TIMER, | |
| |TIMER, DOWN, | |
| |LDI, LDI, | V
V |LKR LKR | |
+------+ +------+
+----| | | |----+
DOWN| | INIT |--------------------->| UP | |INIT, UP
+--->| | INIT, UP | |<---+
+------+ +------+
Figure 9: MPLS CC State Machine for the Sink MEP
for Independent Session Operation
3.7.6. Configuration of MPLS-TP BFD Sessions
The configuration of MPLS-TP BFD session parameters and the
coordination of the same between the source and sink MEPs are out of
scope of this memo.
3.7.7. Discriminator Values
In the BFD control packet, the discriminator values either are local
to the sink MEP or have no significance (when not known).
The My Discriminator field MUST be set to a non-zero value (which can
be a fixed value). The transmitted Your Discriminator value MUST
reflect back the received value of the My Discriminator field or be
set to zero if that value is not known.
Per Section 7 of RFC 5884 [8], a node MUST NOT change the value of
the My Discriminator field for an established BFD session.
Allan, et al. Standards Track [Page 17]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
4. Configuration Considerations
The following is an example set of configuration parameters for a BFD
session:
Mode and Encapsulation
----------------------
RFC 5884 - BFD CC in UDP/IP/LSP
RFC 5885 - BFD CC in G-ACh
RFC 5085 - UDP/IP in G-ACh
MPLS-TP - CC/CV in GAL/G-ACh or G-ACh
For MPLS-TP, the following additional parameters need to be
configured:
1) Session mode, coordinated or independent
2) CC periodicity
3) The MEP-ID for the MEPs at either end of the LSP
4) Whether authentication is enabled (and if so, the associated
parameters)
The discriminators used by each MEP, both bfd.LocalDiscr and
bfd.RemoteDiscr, can optionally be configured or locally assigned.
Finally, a detect multiplier of 3 is directly inferred from the code
points.
5. IANA Considerations
IANA has allocated two channel types from the "Pseudowire Associated
Channel Types" registry in RFC 4385 [15].
0x0022 MPLS-TP CC message
0x0023 MPLS-TP CV message
IANA has created a "CC/CV MEP-ID TLV" registry. The parent registry
is the "Pseudowire Associated Channel Types" registry of RFC 4385
[15]. All code points within this registry shall be allocated
according to the "Standards Action" procedures as specified in [11].
The items tracked in the registry will be the type, associated name,
and reference.
The initial values are:
0 - Section MEP-ID
1 - LSP MEP-ID
2 - PW MEP-ID
Allan, et al. Standards Track [Page 18]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
IANA has assigned the following code point from the "Bidirectional
Forwarding Detection (BFD) Parameters" registry, "BFD Diagnostic
Codes" subregistry [4]:
9 - mis-connectivity defect
6. Security Considerations
The use of CV improves network integrity by ensuring traffic is not
"leaking" between LSPs.
Base BFD foresees an optional authentication section (see Section 6.7
of [4]) that can be applied to this application. Although the Source
MEP-ID TLV is not included in the BFD authentication digest, there is
a chain of trust such that the discriminator associated with the
digest is also associated with the expected MEP-ID; this will prevent
impersonation of CV messages in this application.
This memo specifies the use of globally unique identifiers for MEP-
IDs. This provides absolutely authoritative detection of persistent
leaking of traffic between LSPs. Non-uniqueness can result in
undetected leaking in the scenario where two LSPs with common MEP-IDs
are misconnected. This would be considered undesirable but rare; it
would also be difficult to exploit for malicious purposes as, at a
minimum, both a network end point and a node that was a transit point
for the target MEG would need to be compromised.
7. References
7.1. Normative References
[1] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels", BCP 14, RFC 2119, March 1997.
[2] Bocci, M., Ed., Vigoureux, M., Ed., and S. Bryant, Ed., "MPLS
Generic Associated Channel", RFC 5586, June 2009.
[3] Vigoureux, M., Ed., Ward, D., Ed., and M. Betts, Ed.,
"Requirements for Operations, Administration, and Maintenance
(OAM) in MPLS Transport Networks", RFC 5860, May 2010.
[4] Katz, D. and D. Ward, "Bidirectional Forwarding Detection
(BFD)", RFC 5880, June 2010.
[5] Swallow, G., Ed., Fulignoli, A., Ed., Vigoureux, M., Ed.,
Boutros, S., and D. Ward, "MPLS Fault Management Operations,
Administration, and Maintenance (OAM)", RFC 6427, November
2011.
Allan, et al. Standards Track [Page 19]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
[6] Martini, L., "IANA Allocations for Pseudowire Edge to Edge
Emulation (PWE3)", BCP 116, RFC 4446, April 2006.
[7] Nadeau, T., Ed., and C. Pignataro, Ed., "Bidirectional
Forwarding Detection (BFD) for the Pseudowire Virtual Circuit
Connectivity Verification (VCCV)", RFC 5885, June 2010.
[8] Aggarwal, R., Kompella, K., Nadeau, T., and G. Swallow,
"Bidirectional Forwarding Detection (BFD) for MPLS Label
Switched Paths (LSPs)", RFC 5884, June 2010.
[9] Bocci, M., Swallow, G., and E. Gray, "MPLS Transport Profile
(MPLS-TP) Identifiers", RFC 6370, September 2011.
[10] Nadeau, T., Ed., and C. Pignataro, Ed., "Pseudowire Virtual
Circuit Connectivity Verification (VCCV): A Control Channel for
Pseudowires", RFC 5085, December 2007.
[11] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA
Considerations Section in RFCs", BCP 26, RFC 5226, May 2008.
7.2. Informative References
[12] Bocci, M., Ed., Bryant, S., Ed., Frost, D., Ed., Levrau, L.,
and L. Berger, "A Framework for MPLS in Transport Networks",
RFC 5921, July 2010.
[13] Busi, I., Ed., and D. Allan, Ed., "Operations, Administration,
and Maintenance Framework for MPLS-Based Transport Networks",
RFC 6371, September 2011.
[14] Andersson, L., van Helvoort, H., Bonica, R., Romascanu, D., and
S. Mansfield, "Guidelines for the Use of the "OAM" Acronym in
the IETF", BCP 161, RFC 6291, June 2011.
[15] Bryant, S., Swallow, G., Martini, L., and D. McPherson,
"Pseudowire Emulation Edge-to-Edge (PWE3) Control Word for Use
over an MPLS PSN", RFC 4385, February 2006.
8. Acknowledgments
Nitin Bahadur, Rahul Aggarwal, Tom Nadeau, Nurit Sprecher, and Yaacov
Weingarten also contributed to this document.
Allan, et al. Standards Track [Page 20]
^L
RFC 6428 CC, CV, and RDI for MPLS-TP November 2011
9. Contributing Authors
Annamaria Fulignoli
Ericsson
EMail: annamaria.fulignoli@ericsson.com
Sami Boutros
Cisco Systems, Inc.
EMail: sboutros@cisco.com
Martin Vigoureux
Alcatel-Lucent
EMail: martin.vigoureux@alcatel-lucent.com
Siva Sivabalan
Cisco Systems, Inc.
EMail: msiva@cisco.com
David Ward
Juniper
EMail: dward@juniper.net
Robert Rennison
ECI Telecom
EMail: robert.rennison@ecitele.com
Editors' Addresses
Dave Allan
Ericsson
EMail: david.i.allan@ericsson.com
George Swallow
Cisco Systems, Inc.
EMail: swallow@cisco.com
John Drake
Juniper
EMail: jdrake@juniper.net
Allan, et al. Standards Track [Page 21]
^L
|