summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc8733.txt
blob: 2590bc0926fce56085f3208aebec8ba95f99aa78 (plain) (blame)
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
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
Internet Engineering Task Force (IETF)                     D. Dhody, Ed.
Request for Comments: 8733                           Huawei Technologies
Category: Standards Track                                 R. Gandhi, Ed.
ISSN: 2070-1721                                      Cisco Systems, Inc.
                                                                U. Palle
                                                                R. Singh
                                                  Individual Contributor
                                                                 L. Fang
                                                     Expedia Group, Inc.
                                                           February 2020


 Path Computation Element Communication Protocol (PCEP) Extensions for
    MPLS-TE Label Switched Path (LSP) Auto-Bandwidth Adjustment with
                              Stateful PCE

Abstract

   The Path Computation Element Communication Protocol (PCEP) provides
   mechanisms for Path Computation Elements (PCEs) to perform path
   computations in response to Path Computation Client (PCC) requests.
   Stateful PCE extensions allow stateful control of MPLS-TE Label
   Switched Paths (LSPs) using PCEP.

   The auto-bandwidth feature allows automatic and dynamic adjustment of
   the TE LSP bandwidth reservation based on the volume of traffic
   flowing through the LSP.  This document describes PCEP extensions for
   auto-bandwidth adjustment when employing an active stateful PCE for
   both PCE-initiated and PCC-initiated LSPs.

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
   https://www.rfc-editor.org/info/rfc8733.

Copyright Notice

   Copyright (c) 2020 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
   (https://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
   2.  Conventions Used in This Document
     2.1.  Requirements Language
     2.2.  Abbreviations
     2.3.  Terminology
   3.  Requirements for PCEP Extensions
   4.  Architectural Overview
     4.1.  Auto-Bandwidth Overview
     4.2.  Auto-Bandwidth Theory of Operation
     4.3.  Scaling Considerations
   5.  PCEP Extensions
     5.1.  Capability Advertisement
       5.1.1.  AUTO-BANDWIDTH-CAPABILITY TLV
     5.2.  AUTO-BANDWIDTH-ATTRIBUTES TLV
       5.2.1.  Sample-Interval Sub-TLV
       5.2.2.  Adjustment-Intervals
         5.2.2.1.  Adjustment-Interval Sub-TLV
         5.2.2.2.  Down-Adjustment-Interval Sub-TLV
       5.2.3.  Adjustment-Thresholds
         5.2.3.1.  Adjustment-Threshold Sub-TLV
         5.2.3.2.  Adjustment-Threshold-Percentage Sub-TLV
         5.2.3.3.  Down-Adjustment-Threshold Sub-TLV
         5.2.3.4.  Down-Adjustment-Threshold-Percentage Sub-TLV
       5.2.4.  Minimum and Maximum-Bandwidth Values
         5.2.4.1.  Minimum-Bandwidth Sub-TLV
         5.2.4.2.  Maximum-Bandwidth Sub-TLV
       5.2.5.  Overflow and Underflow Conditions
         5.2.5.1.  Overflow-Threshold Sub-TLV
         5.2.5.2.  Overflow-Threshold-Percentage Sub-TLV
         5.2.5.3.  Underflow-Threshold Sub-TLV
         5.2.5.4.  Underflow-Threshold-Percentage Sub-TLV
     5.3.  BANDWIDTH Object
     5.4.  The PCInitiate Message
     5.5.  The PCUpd Message
     5.6.  The PCRpt Message
     5.7.  The PCNtf Message
   6.  Manageability Considerations
     6.1.  Control of Function and Policy
     6.2.  Information and Data Models
     6.3.  Liveness Detection and Monitoring
     6.4.  Verifying Correct Operations
     6.5.  Requirements for Other Protocols
     6.6.  Impact on Network Operations
   7.  Security Considerations
   8.  IANA Considerations
     8.1.  PCEP TLV Type Indicators
     8.2.  AUTO-BANDWIDTH-CAPABILITY TLV Flag Field
     8.3.  AUTO-BANDWIDTH-ATTRIBUTES Sub-TLV
     8.4.  Error Object
     8.5.  Notification Object
   9.  References
     9.1.  Normative References
     9.2.  Informative References
   Acknowledgments
   Contributors
   Authors' Addresses

1.  Introduction

   [RFC5440] describes the Path Computation Element Protocol (PCEP) as a
   communication mechanism between a Path Computation Client (PCC) and a
   Path Computation Element (PCE), or between a PCE and a PCE, that
   enables computation of MPLS-TE Label Switched Paths (LSPs).

   [RFC8231] specifies extensions to PCEP to enable stateful control of
   MPLS-TE LSPs.  It describes two modes of operation: passive stateful
   PCE and active stateful PCE.  Further, [RFC8281] describes the setup,
   maintenance, and teardown of PCE-initiated LSPs for the stateful PCE
   model.  In this document, the focus is on the active stateful PCE,
   where the LSPs are controlled by the PCE.

   Over time, based on the varying traffic pattern, an LSP established
   with a certain bandwidth may require adjustment of the bandwidth
   reserved in the network dynamically.  The head-end Label Switching
   Router (LSR) monitors the actual bandwidth demand of the established
   LSP and periodically computes new bandwidth.  The head-end LSR
   automatically adjusts the bandwidth reservation of the LSP based on
   the computed bandwidth.  This feature, when available in the head-end
   LSR implementation, is commonly referred to as auto-bandwidth.  The
   auto-bandwidth feature is described in detail in Section 4 of this
   document.

   In the model considered in this document, the PCC (head-end of the
   LSP) collects the traffic rate samples flowing through the LSP and
   calculates the new Adjusted Bandwidth.  The PCC reports the
   calculated bandwidth to be adjusted to the PCE.  This is similar to
   the passive stateful PCE model: while the passive stateful PCE uses a
   path request/reply mechanism, the active stateful PCE uses a report/
   update mechanism.  With a PCE-initiated LSP, the PCC is requested
   during the LSP initiation to monitor and calculate the new Adjusted
   Bandwidth.  [RFC8051] describes the use case for auto-bandwidth
   adjustment for passive and active stateful PCEs.

   Another approach would be to send the measured values themselves to
   the PCE, which is considered out of scope for this document.

   This document defines the PCEP extensions needed to support an auto-
   bandwidth feature in an active stateful PCE model where the LSP
   bandwidth to be adjusted is calculated on the PCC (head-end of the
   LSP).  The use of PCE to calculate the bandwidth to be adjusted is
   out of scope of this document.

2.  Conventions Used in This Document

2.1.  Requirements Language

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in
   BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

2.2.  Abbreviations

   PCC:     Path Computation Client

   PCE:     Path Computation Element

   PCEP:    Path Computation Element Communication Protocol

   TE:      Traffic Engineering

   LSP:     Label Switched Path

2.3.  Terminology

   The reader is assumed to be familiar with the terminology defined in
   [RFC5440], [RFC8231], and [RFC8281].

   In this document, the PCC is considered to be the head-end LSR of the
   LSP.  Other types of PCCs are not in scope.

   The following auto-bandwidth terminology is defined in this document.

   Maximum Average Bandwidth (MaxAvgBw):  The maximum average bandwidth
      represents the current 'measured' traffic bandwidth demand of the
      LSP during a time interval.  This is the maximum value of the
      traffic bandwidth rate samples (Bandwidth-Samples) in a given time
      interval.

   Adjusted Bandwidth:  This is the auto-bandwidth 'computed' bandwidth
      that is used to adjust the bandwidth reservation of the LSP.

   Sample-Interval:  The periodic time interval at which the measured
      traffic rate of the LSP is collected as a Bandwidth-Sample.

   Bandwidth-Sample:  The Bandwidth-Sample of the measured traffic rate
      of the LSP collected at every Sample-Interval.

   Maximum-Bandwidth:  The Maximum-Bandwidth that can be reserved for
      the LSP.

   Minimum-Bandwidth:  The Minimum-Bandwidth that can be reserved for
      the LSP.

   Up-Adjustment-Interval:  The periodic time interval at which the
      bandwidth adjustment should be made using the MaxAvgBw when
      MaxAvgBw is greater than the current bandwidth reservation of the
      LSP.

   Down-Adjustment-Interval:  The periodic time interval at which the
      bandwidth adjustment should be made using the MaxAvgBw when
      MaxAvgBw is less than the current bandwidth reservation of the
      LSP.

   Up-Adjustment-Threshold:  This parameter is used to decide when the
      LSP bandwidth should be adjusted.  If the percentage or absolute
      difference between the current MaxAvgBw and the current bandwidth
      reservation is greater than or equal to the threshold value, the
      LSP bandwidth is adjusted (upsized) to the current bandwidth
      demand (Adjusted Bandwidth) at the Up-Adjustment-Interval expiry.

   Down-Adjustment-Threshold:  This parameter is used to decide when the
      LSP bandwidth should be adjusted.  If the percentage or absolute
      difference between the current bandwidth reservation and the
      current MaxAvgBw is greater than or equal to the threshold value,
      the LSP bandwidth is adjusted (downsized) to the current bandwidth
      demand (Adjusted Bandwidth) at the Down-Adjustment-Interval
      expiry.

   Overflow-Count:  This parameter is used to decide when the LSP
      bandwidth should be adjusted when there is a sudden increase in
      traffic demand.  This value indicates how many times,
      consecutively, that the percentage or absolute difference between
      the current MaxAvgBw and the current bandwidth reservation of the
      LSP needs to be greater than or equal to the Overflow-Threshold
      value in order to meet the overflow condition.

   Overflow-Threshold:  This parameter is used to decide when the LSP
      bandwidth should be adjusted when there is a sudden increase in
      traffic demand.  If the percentage or absolute difference between
      the current MaxAvgBw and the current bandwidth reservation of the
      LSP is greater than or equal to the threshold value, the overflow
      condition is said to be met.  The LSP bandwidth is adjusted to the
      current bandwidth demand, bypassing the Up-Adjustment-Interval if
      the overflow condition is met consecutively for the Overflow-
      Count.  The Overflow-Threshold needs to be greater than or equal
      to the Up-Adjustment-Threshold.

   Underflow-Count:  This parameter is used to decide when the LSP
      bandwidth should be adjusted when there is a sudden decrease in
      traffic demand.  This value indicates how many times,
      consecutively, that the percentage or absolute difference between
      the current MaxAvgBw and the current bandwidth reservation of the
      LSP needs to be greater than or equal to the Underflow-Threshold
      value in order to meet the underflow condition.

   Underflow-Threshold:  This parameter is used to decide when the LSP
      bandwidth should be adjusted when there is a sudden decrease in
      traffic demand.  If the percentage or absolute difference between
      the current MaxAvgBw and the current bandwidth reservation of the
      LSP is greater than or equal to the threshold value, the underflow
      condition is said to be met.  The LSP bandwidth is adjusted to the
      current bandwidth demand, bypassing the Down-Adjustment-Interval
      if the underflow condition is met consecutively for the Underflow-
      Count.  The Underflow-Threshold needs to be greater than or equal
      to the Down-Adjustment-Threshold.

   Minimum-Threshold:  When percentage-based thresholds are in use, they
      are accompanied by this Minimum-Threshold, which is used to ensure
      that the magnitude of deviation of the calculated LSP bandwidth to
      be adjusted from the current bandwidth reservations exceeds a
      specific non-percentage-based criterion (represented as an
      absolute bandwidth value) before any adjustments are made.  This
      serves to suppress unnecessary auto-bandwidth adjustments and
      resignaling of the LSP at low bandwidth values.

3.  Requirements for PCEP Extensions

   The PCEP extensions required for auto-bandwidth are summarized in the
   following table as well as in Figure 1.

    +-------------------------+--------------------------------------+
    | PCC Initiated           | PCE Initiated                        |
    +=========================+======================================+
    | PCC monitors the        | At the time of initiation, the PCE   |
    | traffic and reports the | requests that the PCC monitor the    |
    | calculated bandwidth to | traffic and report the calculated    |
    | be adjusted to the PCE. | bandwidth to be adjusted to the PCE. |
    +-------------------------+--------------------------------------+
    | Extension is needed for | Extension is needed for the PCE to   |
    | the PCC to pass on the  | pass on the adjustment parameters at |
    | adjustment parameters   | the time of LSP initiation.          |
    | at the time of LSP      |                                      |
    | delegation.             |                                      |
    +-------------------------+--------------------------------------+

         Table 1: Requirements for Auto-Bandwidth PCEP Extensions

                             ----------
                            |          |
                            |   PCE    |
                            |          |
                             ----------
                               |    ^
    AUTO-BANDWIDTH CAPABILITY  |    |  AUTO-BANDWIDTH CAPABILITY
                               |    |
    AUTO-BANDWIDTH ATTRIBUTES  |    |  AUTO-BANDWIDTH ATTRIBUTES
                               |    |  (For Delegated LSPs)
                               |    |
                               |    |  REQUESTED BANDWIDTH
                               v    |
                             ----------
                            |          |
                            |   PCC    |
                            |          |
                             ----------

            Figure 1: Overview of Auto-Bandwidth PCEP Extensions

   A PCEP speaker supporting this document must have a mechanism to
   advertise the auto-bandwidth adjustment capability for both PCC-
   initiated and PCE-initiated LSPs.

   Auto-bandwidth deployment considerations for PCEP extensions are
   summarized below:

   *  It is necessary to identify and inform the PCC which LSPs have
      enabled the auto-bandwidth feature.  Not all LSPs in some
      deployments would like their bandwidth to be dependent on real-
      time bandwidth usage; for some LSPs, leaving the bandwidth
      constant as set by the operator is preferred.

   *  In addition, an operator should be able to specify the auto-
      bandwidth adjustment parameters (i.e., configuration knobs) to
      control this feature (e.g., Minimum/Maximum-Bandwidth range).  The
      PCC should be informed about these adjustment parameters.

4.  Architectural Overview

4.1.  Auto-Bandwidth Overview

   The auto-bandwidth feature allows automatic and dynamic adjustment of
   the reserved bandwidth of an LSP over time (i.e., without network
   operator intervention) to accommodate the varying traffic demand of
   the LSP.  If the traffic flowing through the LSP is lower than the
   configured or current reserved bandwidth of the LSP, the extra
   bandwidth is being reserved needlessly and is being wasted.
   Conversely, if the actual traffic flowing through the LSP is higher
   than the configured or current reserved bandwidth of the LSP, it can
   potentially cause congestion or packet loss in the network.  The
   initial LSP bandwidth can be set to an arbitrary value (including
   zero).  In practice, it can be set to an expected value based on
   design and planning.  The head-end LSR monitors the actual traffic
   flowing through the LSP and uses that information to adjust the
   bandwidth reservation of the LSP in the network.

   Bandwidth adjustment must not cause disruption to the traffic flow
   carried by the LSP.  One way to achieve this is to use the make-
   before-break signaling method [RFC3209].

4.2.  Auto-Bandwidth Theory of Operation

   This section describes the auto-bandwidth feature in a general way.
   When the auto-bandwidth feature is enabled, the measured traffic rate
   is periodically sampled at each Sample-Interval by the PCC when the
   PCC is the head-end node of the LSP.  The Sample-Interval can be
   configured by an operator, with a default value of 5 minutes.  A very
   low Sample-Interval could have some undesirable interactions with
   transport protocols (see Section 6.6).

   The traffic rate samples are accumulated over the Adjustment-Interval
   period (in the Up or Down direction).  The period can be configured
   by an operator, with a default value of 24 hours.  The PCC in charge
   of calculating the bandwidth to be adjusted can decide to adjust the
   bandwidth of the LSP to the highest traffic rate sample (MaxAvgBw)
   amongst the set of Bandwidth-Samples collected over the Adjustment-
   Interval period (in the Up or Down direction) depending on the
   operator policy.

   Note that the highest traffic rate sample could be higher or lower
   than the current LSP bandwidth.  The LSP is adjusted (upsized) to the
   current bandwidth demand (MaxAvgBW) only if the difference between
   the current bandwidth demand (MaxAvgBw) and the current bandwidth
   reservation is greater than or equal to the Adjustment-Threshold.
   The Adjustment-Threshold could be an absolute value or a percentage.
   The threshold can be configured by an operator, with a default value
   of 5 percent.  Similarly, if the difference between the current
   bandwidth reservation and the current bandwidth demand (MaxAvgBw) is
   greater than or equal to the Down-Adjustment-Threshold (percentage or
   absolute value), the LSP bandwidth is adjusted (downsized) to the
   current bandwidth demand (MaxAvgBw).  Some LSPs are less eventful,
   while other LSPs may encounter a lot of changes in the traffic
   pattern.  The thresholds and intervals for bandwidth adjustment are
   configured based on the traffic pattern of the LSP.

   In order to avoid frequent resignaling, an operator may set a longer
   Adjustment-Interval value (Up and/or Down).  However, a longer
   Adjustment-Interval can result in the undesirable effect of masking
   sudden changes in the traffic demands of an LSP.  To avoid this, the
   auto-bandwidth feature may force the Adjustment-Interval to
   prematurely expire and adjust the LSP bandwidth to accommodate the
   sudden bursts of increase in traffic demand as an overflow condition
   or decrease in traffic demand as an underflow condition.  An operator
   needs to configure appropriate values for the Overflow-Threshold and/
   or Underflow-Threshold parameters, and they do not have default
   values defined in this document.

   All thresholds in this document could be represented in both absolute
   value and percentage and could be used together.  This is provided to
   accommodate cases where the LSP bandwidth reservation may become very
   large or very small over time.  For example, an operator may use the
   percentage threshold to handle small to large bandwidth values and
   absolute values to handle very large bandwidth values.  The auto-
   bandwidth adjustment is made when either one of the two thresholds,
   the absolute or percentage, is crossed.

   When using the (adjustment/overflow/underflow) percentage thresholds,
   if the LSP bandwidth changes rapidly at very low values, it may
   trigger frequent auto-bandwidth adjustments due to the crossing of
   the percentage thresholds.  This can lead to unnecessary resignaling
   of the LSPs in the network.  This is suppressed by setting the
   Minimum-Threshold parameters along with the percentage thresholds.
   The auto-bandwidth adjustment is only made if the LSP bandwidth
   crosses both the percentage threshold and the Minimum-Threshold
   parameters.

4.3.  Scaling Considerations

   It should be noted that any bandwidth change requires resignaling of
   an LSP, which can further trigger preemption of lower-priority LSPs
   in the network.  When deployed under scale, this can lead to a
   signaling churn in the network.  The auto-bandwidth application
   algorithm is thus advised to take this into consideration before
   adjusting the LSP bandwidth.  Operators are advised to set the values
   of various auto-bandwidth adjustment parameters appropriate for the
   deployed LSP scale.

   If a PCE gets overwhelmed, it can notify the PCC to temporarily
   suspend the reporting of the new LSP bandwidth to be adjusted.
   Similarly, if a PCC gets overwhelmed due to signaling churn, it can
   notify the PCE to temporarily suspend new LSP setup requests.  See
   Section 5.7 of this document.

5.  PCEP Extensions

5.1.  Capability Advertisement

   During the PCEP initialization phase, PCEP speakers (PCE or PCC)
   advertise their support of the auto-bandwidth adjustment feature.  A
   PCEP speaker includes the AUTO-BANDWIDTH-CAPABILITY TLV in the OPEN
   object to advertise its support for PCEP auto-bandwidth extensions.
   The presence of the AUTO-BANDWIDTH-CAPABILITY TLV in the OPEN object
   indicates that the auto-bandwidth feature is supported as described
   in this document.

   *  The PCEP protocol extensions for auto-bandwidth adjustments MUST
      NOT be used if one or both PCEP speakers have not included the
      AUTO-BANDWIDTH-CAPABILITY TLV in their respective OPEN message.

   *  A PCEP speaker that does not recognize the extensions defined in
      this document would simply ignore the TLVs as per [RFC5440].

   *  If a PCEP speaker supports the extensions defined in this document
      but did not advertise this capability, then upon receipt of AUTO-
      BANDWIDTH-ATTRIBUTES TLV in the LSP Attributes (LSPA) object, it
      SHOULD generate a PCErr with Error-Type 19 (Invalid Operation) and
      Error-value 14 (Auto-Bandwidth capability was not advertised) and
      ignore the AUTO-BANDWIDTH-ATTRIBUTES TLV.

5.1.1.  AUTO-BANDWIDTH-CAPABILITY TLV

   The AUTO-BANDWIDTH-CAPABILITY TLV is an optional TLV for use in the
   OPEN Object for auto-bandwidth adjustment via PCEP capability
   advertisement.  Its format is shown in the following figure:

    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=36         |            Length=4           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                             Flag                              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

               Figure 2: AUTO-BANDWIDTH-CAPABILITY TLV Format

   The TLV Type is 36, and it has a fixed Length of 4 octets.

   The value comprises a single field: Flag (32 bits).  No flags are
   defined for this TLV in this document.

   Unassigned bits are considered reserved.  They MUST be set to 0 on
   transmission and MUST be ignored on receipt.

   Advertisement of the AUTO-BANDWIDTH-CAPABILITY TLV implies support of
   auto-bandwidth adjustment, as well as the objects, TLVs, and
   procedures defined in this document.

5.2.  AUTO-BANDWIDTH-ATTRIBUTES TLV

   The AUTO-BANDWIDTH-ATTRIBUTES TLV provides the 'configurable knobs'
   of the feature, and it can be included as an optional TLV in the LSPA
   object (as described in [RFC5440]).

   For a PCE-initiated LSP [RFC8281], this TLV is included in the LSPA
   object with the PCInitiate message.  For the PCC-initiated delegated
   LSPs, this TLV is carried in the Path Computation State Report
   (PCRpt) message in the LSPA object.  This TLV is also carried in the
   LSPA object with the Path Computation Update Request (PCUpd) message
   to direct the PCC (LSP head-end) to make updates to auto-bandwidth
   attributes such as Adjustment-Interval.

   The TLV is encoded in all PCEP messages for the LSP while the auto-
   bandwidth adjustment feature is enabled.  The absence of the TLV
   indicates the PCEP speaker wishes to disable the feature.  This TLV
   includes multiple AUTO-BANDWIDTH-ATTRIBUTES sub-TLVs.  The AUTO-
   BANDWIDTH-ATTRIBUTES sub-TLVs are included if there is a change since
   the last information sent in the PCEP message.  The default values
   for missing sub-TLVs apply for the first PCEP message for the LSP.

   The format of the AUTO-BANDWIDTH-ATTRIBUTES TLV is shown in the
   following figure:

    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=37             |           Length              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   //                            sub-TLVs                          //
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

               Figure 3: AUTO-BANDWIDTH-ATTRIBUTES TLV Format

   Type:  37

   Length:  The Length field defines the length of the value portion in
      bytes as per [RFC5440].

   Value:  This comprises one or more sub-TLVs.

   The following sub-TLVs are defined in this document:

   +------+-----+--------------------------------------+
   | Type | Len | Name                                 |
   +======+=====+======================================+
   | 1    | 4   | Sample-Interval                      |
   +------+-----+--------------------------------------+
   | 2    | 4   | Adjustment-Interval                  |
   +------+-----+--------------------------------------+
   | 3    | 4   | Down-Adjustment-Interval             |
   +------+-----+--------------------------------------+
   | 4    | 4   | Adjustment-Threshold                 |
   +------+-----+--------------------------------------+
   | 5    | 8   | Adjustment-Threshold-Percentage      |
   +------+-----+--------------------------------------+
   | 6    | 4   | Down-Adjustment-Threshold            |
   +------+-----+--------------------------------------+
   | 7    | 8   | Down-Adjustment-Threshold-Percentage |
   +------+-----+--------------------------------------+
   | 8    | 4   | Minimum-Bandwidth                    |
   +------+-----+--------------------------------------+
   | 9    | 4   | Maximum-Bandwidth                    |
   +------+-----+--------------------------------------+
   | 10   | 8   | Overflow-Threshold                   |
   +------+-----+--------------------------------------+
   | 11   | 8   | Overflow-Threshold-Percentage        |
   +------+-----+--------------------------------------+
   | 12   | 8   | Underflow-Threshold                  |
   +------+-----+--------------------------------------+
   | 13   | 8   | Underflow-Threshold-Percentage       |
   +------+-----+--------------------------------------+

       Table 2: Sub-TLV Types of the AUTO-BANDWIDTH-
                       ATTRIBUTES TLV

   Future specifications can define additional sub-TLVs.

   The sub-TLVs are encoded to inform the PCEP peer of the various
   sampling and adjustment parameters.  In the case of a missing sub-
   TLV, as per the local policy, either the default value (as specified
   in this document) or some other operator-configured value is used.

   All sub-TLVs are optional, and any unrecognized sub-TLV MUST be
   ignored.  If a sub-TLV of the same type appears more than once, only
   the first occurrence is processed, and all others MUST be ignored.

   The following subsections describe the sub-TLVs that are currently
   defined as being carried within the AUTO-BANDWIDTH-ATTRIBUTES TLV.

5.2.1.  Sample-Interval Sub-TLV

   The Sample-Interval sub-TLV specifies a time interval in seconds in
   which traffic samples are collected at the PCC.

    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=4            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                         Sample-Interval                       |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                  Figure 4: Sample-Interval Sub-TLV Format

   The Type is 1, the Length is 4 octets, and the value comprises the
   following:

   Sample-Interval:  The 4-octet time interval for the Bandwidth-Sample
      collection.  The valid range is from 1 to 604800 (7 days), in
      seconds.  The default value is 300 seconds.  Due care needs to be
      taken in a case with a very low Sample-Interval, as it can have
      some undesirable interactions with transport protocols (see
      Section 6.6).  The Sample-Interval parameter MUST NOT be greater
      than the (down) Adjustment-Interval.  In the case in which an
      invalid value is present, the sub-TLV MUST be ignored and the
      previous value will be maintained.

5.2.2.  Adjustment-Intervals

   The sub-TLVs in this section are encoded to inform the PCEP peer of
   the Adjustment-Interval parameters.  The Adjustment-Interval sub-TLV
   specifies the time interval for both upward (Up-Adjustment-Interval)
   and downward (Down-Adjustment-Interval) trends.  An implementation
   MAY require that a different Adjustment-Interval value be set when
   the bandwidth usage trend is moving downwards from the one used when
   it is moving upwards.  In that case, the operator could use the Down-
   Adjustment-Interval sub-TLV, which overrides the Adjustment-Interval
   value for Down-Adjustment-Interval.

5.2.2.1.  Adjustment-Interval Sub-TLV

   The Adjustment-Interval sub-TLV specifies a time interval in seconds
   in which a bandwidth adjustment should be made in an upward or
   downward direction.  This sub-TLV specifies the value for Up-
   Adjustment-Interval and Down-Adjustment-Interval when they are the
   same and when the Down-Adjustment-Interval sub-TLV is not included.

    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=4            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                     Adjustment-Interval                       |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                Figure 5: Adjustment-Interval Sub-TLV Format

   The Type is 2, the Length is 4 octets, and the value comprises the
   following:

   Adjustment-Interval:  The 4-octet time interval for bandwidth
      adjustments.  The valid range is from 1 to 604800 (7 days), in
      seconds.  The default value is 86400 seconds (1 day).  The
      Adjustment-Interval parameter MUST NOT be less than the Sample-
      Interval; otherwise, the sub-TLV MUST be ignored, and the previous
      value will be maintained.

5.2.2.2.  Down-Adjustment-Interval Sub-TLV

   The Down-Adjustment-Interval sub-TLV specifies a time interval in
   seconds in which a bandwidth adjustment should be made when MaxAvgBw
   is less than the current bandwidth reservation of the LSP.  This
   parameter overrides the Adjustment-Interval for the downward trend.
   This sub-TLV is used only when there is a need for different
   Adjustment-Intervals in the upward and downward directions.

    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=3              |           Length=4            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                  Down-Adjustment-Interval                     |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

             Figure 6: Down-Adjustment-Interval Sub-TLV Format

   The Type is 3, the Length is 4 octets, and the value comprises the
   following:

   Down-Adjustment-Interval:  The 4-octet time interval for downward
      bandwidth adjustments.  The valid range is from 1 to 604800 (7
      days), in seconds.  The default value equals the Adjustment-
      Interval.  The Down-Adjustment-Interval parameter MUST NOT be less
      than the Sample-Interval; otherwise, the sub-TLV MUST be ignored
      and the previous value will be maintained.

5.2.3.  Adjustment-Thresholds

   The sub-TLVs in this section are encoded to inform the PCEP peer of
   the Adjustment-Threshold parameters.  An implementation MAY include
   both sub-TLVs for the absolute value and the percentage, in which
   case the bandwidth is adjusted when either of the Adjustment-
   Threshold conditions are met.  The Adjustment-Threshold sub-TLV
   specifies the threshold for both upward (Up-Adjustment-Threshold) and
   downward (Down-Adjustment-Threshold) trends.  If the operator would
   like to use a different Adjustment-Threshold during the downward
   trend, the Down-Adjustment-Threshold sub-TLV is included.  Similarly,
   the Adjustment-Threshold-Percentage sub-TLV specifies the threshold
   percentage for both upward and downward trends.  If the operator
   would like to use a different Adjustment-Threshold percentage during
   the downward trend, the Down-Adjustment-Threshold-Percentage sub-TLV
   is included.  It is worth noting that regardless of how the
   thresholds are set, the adjustment will not be made until at least
   one Sample-Interval has passed simply because no sample will be made
   on which to base a comparison with a threshold.

5.2.3.1.  Adjustment-Threshold Sub-TLV

   The Adjustment-Threshold sub-TLV is used to decide when the LSP
   bandwidth should be adjusted in an upward or downward direction.
   This sub-TLV specifies the absolute value for Up-Adjustment-Threshold
   and Down-Adjustment-Threshold when they are the same and when the
   Down-Adjustment-Threshold sub-TLV is not included.

    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=4              |           Length=4            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                     Adjustment-Threshold                      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

               Figure 7: Adjustment-Threshold Sub-TLV Format

   The Type is 4, the Length is 4 octets, and the value comprises the
   following:

   Adjustment-Threshold:  The absolute Adjustment-Threshold bandwidth
      difference value, encoded in IEEE floating point format (see
      [IEEE.754.1985]) and expressed in bytes per second.  The default
      Adjustment-Threshold value is not set.  Refer to Section 3.1.2 of
      [RFC3471] for a table of commonly used values.

   If the modulus of difference between the current MaxAvgBw and the
   current bandwidth reservation is greater than or equal to the
   threshold value, the LSP bandwidth is adjusted to the current
   bandwidth demand (MaxAvgBw).

   In the case in which an invalid value is present, the sub-TLV MUST be
   ignored and the previous value will be maintained.

5.2.3.2.  Adjustment-Threshold-Percentage Sub-TLV

   The Adjustment-Threshold-Percentage sub-TLV is used to decide when
   the LSP bandwidth should be adjusted in an upward or downward
   direction.  This sub-TLV specifies the percentage value for Up-
   Adjustment-Threshold and Down-Adjustment-Threshold when they are the
   same and when the Down-Adjustment-Threshold-Percentage sub-TLV is not
   included.

    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=5              |           Length=8            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                  Reserved                       |  Percentage |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                        Minimum-Threshold                      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

          Figure 8: Adjustment-Threshold-Percentage Sub-TLV Format

   The Type is 5, the Length is 8 octets, and the value comprises the
   following:

   Reserved:  MUST be set to zero on transmission and MUST be ignored on
      receipt.

   Percentage:  The Adjustment-Threshold value (7 bits), encoded in a
      percentage (an integer from 1 to 100).  The value 0 is considered
      to be invalid.  The default value is 5 percent.

   Minimum-Threshold:  The absolute Minimum-Threshold bandwidth value,
      encoded in IEEE floating point format (see [IEEE.754.1985]) and
      expressed in bytes per second.  The increase or decrease of the
      LSP bandwidth MUST be at or above the Minimum-Threshold before the
      bandwidth adjustment is made.  The default value is 0.

   If the percentage absolute difference between the current MaxAvgBw
   and the current bandwidth reservation is greater than or equal to the
   threshold percentage and the difference in the bandwidth is at or
   above the Minimum-Threshold, the LSP bandwidth is adjusted to the
   current bandwidth demand (MaxAvgBw).

   In the case in which an invalid value is present, the sub-TLV MUST be
   ignored and the previous value will be maintained.

5.2.3.3.  Down-Adjustment-Threshold Sub-TLV

   The Down-Adjustment-Threshold sub-TLV is used to decide when the LSP
   bandwidth should be adjusted when MaxAvgBw is less than the current
   bandwidth reservation.  This parameter overrides the Adjustment-
   Threshold for the downward trend.  This sub-TLV is used only when
   there is a need for a different threshold in the upward and downward
   directions.

    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=6              |           Length=4            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                    Down-Adjustment-Threshold                  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

             Figure 9: Down-Adjustment-Threshold Sub-TLV Format

   The Type is 6, the Length is 4 octets, and the value comprises the
   following:

   Down-Adjustment-Threshold:  The absolute Down-Adjustment-Threshold
      bandwidth value, encoded in IEEE floating point format (see
      [IEEE.754.1985]) and expressed in bytes per second.  The default
      value equals the Adjustment-Threshold.  Refer to Section 3.1.2 of
      [RFC3471] for a table of commonly used values.

   If the difference between the current bandwidth reservation and the
   current MaxAvgBw is greater than or equal to the threshold value, the
   LSP bandwidth is adjusted to the current bandwidth demand (MaxAvgBw).

   In the case in which an invalid value is present, the sub-TLV MUST be
   ignored and the previous value will be maintained.

5.2.3.4.  Down-Adjustment-Threshold-Percentage Sub-TLV

   The Down-Adjustment-Threshold-Percentage sub-TLV is used to decide
   when the LSP bandwidth should be adjusted when MaxAvgBw is less than
   the current bandwidth reservation.  This parameter overrides the
   Adjustment-Threshold-Percentage for the downward trend.  This sub-TLV
   is used only when there is a need for a different threshold
   percentage in the upward and downward directions.

    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=7              |           Length=8            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                  Reserved                       |  Percentage |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                        Minimum-Threshold                      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

       Figure 10: Down-Adjustment-Threshold-Percentage Sub-TLV Format

   The Type is 7, the Length is 8 octets, and the value comprises the
   following:

   Reserved:  MUST be set to zero on transmission and MUST be ignored on
      receipt.

   Percentage:  The Down-Adjustment-Threshold value (7 bits), encoded in
      a percentage (an integer from 1 to 100).  The value 0 is
      considered to be invalid.  The default value equals the
      Adjustment-Threshold-Percentage.

   Minimum-Threshold:  The absolute Minimum-Threshold bandwidth value,
      encoded in IEEE floating point format (see [IEEE.754.1985]) and
      expressed in bytes per second.  The decrease of the LSP bandwidth
      MUST be at or above the Minimum-Threshold before the bandwidth
      adjustment is made.  The default value equals the Minimum-
      Threshold for the Adjustment-Threshold-Percentage.

   If the percentage difference between the current bandwidth
   reservation and the current MaxAvgBw is greater than or equal to the
   threshold percentage and the difference in the bandwidth is at or
   above the Minimum-Threshold, the LSP bandwidth is adjusted to the
   current bandwidth demand (MaxAvgBw).

   In the case in which an invalid value is present, the sub-TLV MUST be
   ignored and the previous value will be maintained.

5.2.4.  Minimum and Maximum-Bandwidth Values

5.2.4.1.  Minimum-Bandwidth Sub-TLV

   The Minimum-Bandwidth sub-TLV specifies the Minimum-Bandwidth allowed
   for the LSP and is expressed in bytes per second.  The LSP bandwidth
   cannot be adjusted below the Minimum-Bandwidth value.

    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=8              |           Length=4            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                        Minimum-Bandwidth                      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                Figure 11: Minimum-Bandwidth Sub-TLV Format

   The Type is 8, the Length is 4 octets, and the value comprises the
   following:

   Minimum-Bandwidth:  The 4-octet bandwidth value encoded in IEEE
      floating point format (see [IEEE.754.1985]) and expressed in bytes
      per second.  The default Minimum-Bandwidth value is set to 0.
      Refer to Section 3.1.2 of [RFC3471] for a table of commonly used
      values.

   In the case in which an invalid value is present, the sub-TLV MUST be
   ignored and the previous value will be maintained.

5.2.4.2.  Maximum-Bandwidth Sub-TLV

   The Maximum-Bandwidth sub-TLV specifies the Maximum-Bandwidth allowed
   for the LSP and is expressed in bytes per second.  The LSP bandwidth
   cannot be adjusted above the Maximum-Bandwidth value.

    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=9              |           Length=4            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                        Maximum-Bandwidth                      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                Figure 12: Maximum-Bandwidth Sub-TLV Format

   The Type is 9, the Length is 4 octets, and the value comprises the
   following:

   Maximum-Bandwidth:  The 4-octet bandwidth value encoded in IEEE
      floating point format (see [IEEE.754.1985]) and expressed in bytes
      per second.  The default Maximum-Bandwidth value is not set.
      Refer to Section 3.1.2 of [RFC3471] for a table of commonly used
      values.

   In the case in which an invalid value is present, the sub-TLV MUST be
   ignored and the previous value will be maintained.

5.2.5.  Overflow and Underflow Conditions

   The sub-TLVs in this section are encoded to inform the PCEP peer of
   the overflow and underflow threshold parameters.  An implementation
   MAY include sub-TLVs for an absolute value and/or a percentage for
   the threshold, in which case the bandwidth is immediately adjusted
   when either of the threshold conditions is met consecutively for the
   given count (as long as the difference in the bandwidth is at or
   above the Minimum-Threshold).  By default, the threshold values for
   overflow and underflow conditions are not set.

5.2.5.1.  Overflow-Threshold Sub-TLV

   The Overflow-Threshold sub-TLV is used to decide if the LSP bandwidth
   should be adjusted immediately.

    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=10             |           Length=8            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                       Reserved                      |  Count  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                       Overflow-Threshold                      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                Figure 13: Overflow-Threshold Sub-TLV Format

   The Type is 10, the Length is 8 octets, and the value comprises the
   following:

   Reserved:  MUST be set to zero on transmission and MUST be ignored on
      receipt.

   Count:  The Overflow-Count value (5 bits), encoded in an integer.
      The value 0 is considered to be invalid.  The number of
      consecutive samples for which the overflow condition MUST be met
      for the LSP bandwidth is to be immediately adjusted to the current
      bandwidth demand, bypassing the (up) Adjustment-Interval.

   Overflow-Threshold:  The absolute Overflow-Threshold bandwidth value,
      encoded in IEEE floating point format (see [IEEE.754.1985]) and
      expressed in bytes per second.  Refer to Section 3.1.2 of
      [RFC3471] for a table of commonly used values.  If the difference
      between the current MaxAvgBw and the current bandwidth reservation
      is greater than or equal to the threshold value, the overflow
      condition is met.

   In the case in which an invalid value is present, the sub-TLV MUST be
   ignored and the previous value will be maintained.

5.2.5.2.  Overflow-Threshold-Percentage Sub-TLV

   The Overflow-Threshold-Percentage sub-TLV is used to decide if the
   LSP bandwidth should be adjusted immediately.

    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=11             |           Length=8            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  Percentage |             Reserved                  |  Count  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                        Minimum-Threshold                      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

          Figure 14: Overflow-Threshold-Percentage Sub-TLV Format

   The Type is 11, the Length is 8 octets, and the value comprises the
   following:

   Percentage:  The Overflow-Threshold value (7 bits), encoded in a
      percentage (an integer from 1 to 100).  The value 0 is considered
      to be invalid.  If the percentage increase of the current MaxAvgBw
      from the current bandwidth reservation is greater than or equal to
      the threshold percentage, the overflow condition is met.

   Reserved:  MUST be set to zero on transmission and MUST be ignored on
      receipt.

   Count:  The Overflow-Count value (5 bits), encoded in an integer.
      The value 0 is considered to be invalid.  The number of
      consecutive samples for which the overflow condition MUST be met
      for the LSP bandwidth is to be immediately adjusted to the current
      bandwidth demand, bypassing the (up) Adjustment-Interval.

   Minimum-Threshold:  The absolute Minimum-Threshold bandwidth value,
      encoded in IEEE floating point format (see [IEEE.754.1985]) and
      expressed in bytes per second.  The increase of the LSP bandwidth
      MUST be at or above the Minimum-Threshold before the bandwidth
      adjustment is made.

   In the case in which an invalid value is present, the sub-TLV MUST be
   ignored and the previous value will be maintained.

5.2.5.3.  Underflow-Threshold Sub-TLV

   The Underflow-Threshold sub-TLV is used to decide if the LSP
   bandwidth should be adjusted immediately.

    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=12             |           Length=8            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                      Reserved                       |  Count  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                      Underflow-Threshold                      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

               Figure 15: Underflow-Threshold Sub-TLV Format

   The Type is 12, the Length is 8 octets, and the value comprises the
   following:

   Reserved:  MUST be set to zero on transmission and MUST be ignored on
      receipt.

   Count:  The Underflow-Count value (5 bits), encoded in an integer.
      The value 0 is considered to be invalid.  The number of
      consecutive samples for which the underflow condition MUST be met
      for the LSP bandwidth is to be immediately adjusted to the current
      bandwidth demand, bypassing the Down-Adjustment-Interval.

   Underflow-Threshold:  The absolute Underflow-Threshold bandwidth
      value, encoded in IEEE floating point format (see [IEEE.754.1985])
      and expressed in bytes per second.  Refer to Section 3.1.2 of
      [RFC3471] for a table of commonly used values.  If the difference
      between the current MaxAvgBw and the current bandwidth reservation
      is greater than or equal to the threshold value, the underflow
      condition is met.

   In the case in which an invalid value is present, the sub-TLV MUST be
   ignored and the previous value will be maintained.

5.2.5.4.  Underflow-Threshold-Percentage Sub-TLV

   The Underflow-Threshold-Percentage sub-TLV is used to decide if the
   LSP bandwidth should be adjusted immediately.

    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=13             |           Length=8            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  Percentage |             Reserved                  |  Count  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                        Minimum-Threshold                      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

          Figure 16: Underflow-Threshold-Percentage Sub-TLV Format

   The Type is 13, the Length is 8 octets, and the value comprises the
   following:

   Percentage:  The Underflow-Threshold value (7 bits), encoded in
      percentage (an integer from 1 to 100).  The value 0 is considered
      to be invalid.  If the percentage decrease of the current MaxAvgBw
      from the current bandwidth reservation is greater than or equal to
      the threshold percentage, the underflow condition is met.

   Reserved:  MUST be set to zero on transmission and MUST be ignored on
      receipt.

   Count:  The Underflow-Count value (5 bits), encoded in an integer.
      The value 0 is considered to be invalid.  The number of
      consecutive samples for which the underflow condition MUST be met
      for the LSP bandwidth is to be immediately adjusted to the current
      bandwidth demand, bypassing the Down-Adjustment-Interval.

   Minimum-Threshold:  The absolute Minimum-Threshold bandwidth value,
      encoded in IEEE floating point format (see [IEEE.754.1985]) and
      expressed in bytes per second.  The decrease of the LSP bandwidth
      MUST be at or above the Minimum-Threshold before the bandwidth
      adjustment is made.

   In the case in which an invalid value is present, the sub-TLV MUST be
   ignored and the previous value will be maintained.

5.3.  BANDWIDTH Object

   As per [RFC5440], the BANDWIDTH object (Object-Class value 5) is
   defined with two Object-Type values as follows:

   Requested Bandwidth:  The BANDWIDTH Object-Type value is 1.

   Reoptimization Bandwidth:  The bandwidth of an existing TE LSP for
      which a reoptimization is requested.  The BANDWIDTH Object-Type
      value is 2.

   The PCC reports the calculated bandwidth to be adjusted (MaxAvgBw) to
   the stateful PCE using the existing 'Requested Bandwidth' with the
   BANDWIDTH Object-Type as 1.  The reporting of the 'reoptimization
   bandwidth' with BANDWIDTH Object-Type as 2 is not required as the
   stateful PCE is aware of the existing LSP bandwidth.

5.4.  The PCInitiate Message

   A PCInitiate message is a PCEP message sent by a PCE to a PCC to
   trigger LSP instantiation or deletion [RFC8281].

   For the PCE-initiated LSP with the auto-bandwidth feature enabled,
   AUTO-BANDWIDTH-ATTRIBUTES TLV MUST be included in the LSPA object
   with the PCInitiate message.

   The Routing Backus-Naur Form (RBNF) definition of the PCInitiate
   message [RFC8281] is unchanged by this document.

5.5.  The PCUpd Message

   A PCUpd message is a PCEP message sent by a PCE to a PCC to update
   the LSP parameters [RFC8231].

   For PCE-initiated LSPs with the auto-bandwidth feature enabled, the
   AUTO-BANDWIDTH-ATTRIBUTES TLV MUST be included in the LSPA object
   with the PCUpd message.  The PCE can send this TLV to direct the PCC
   to change the auto-bandwidth parameters.

   The RBNF definition of the PCUpd message [RFC8231] is unchanged by
   this document.

5.6.  The PCRpt Message

   The PCRpt message [RFC8231] is a PCEP message sent by a PCC to a PCE
   to report the status of one or more LSPs.

   For PCE-initiated LSPs [RFC8281], the PCC creates the LSP using the
   attributes communicated by the PCE and the local values for the
   unspecified parameters.  After the successful instantiation of the
   LSP, the PCC automatically delegates the LSP to the PCE and generates
   a PCRpt message to provide the status report for the LSP.

   For both PCE-initiated and PCC-initiated LSPs, when the LSP is
   delegated to a PCE for the very first time as well as after the
   successful delegation, the BANDWIDTH object of type 1 is used to
   specify the requested bandwidth in the PCRpt message.

   The RBNF definition of the PCRpt message [RFC8231] is unchanged by
   this document.

5.7.  The PCNtf Message

   As per [RFC5440], the PCEP Notification message (PCNtf) can be sent
   by a PCEP speaker to notify its peer of a specific event.

   A PCEP speaker (PCE or PCC) SHOULD notify its PCEP peer (PCC or PCE)
   when it is in an overwhelmed state due to the auto-bandwidth feature.
   An implementation needs to make an attempt to send this notification
   (when overwhelmed by auto-bandwidth adjustments) unless sending this
   notification would only serve to increase the load further.  Note
   that when the notification is not received, the PCEP speaker would
   continue to request bandwidth adjustments even when they cannot be
   handled in a timely fashion.

   Upon receipt of an auto-bandwidth overwhelm notification, the peer
   SHOULD NOT send any PCEP messages related to auto-bandwidth
   adjustment.  If a PCEP message related to auto-bandwidth adjustment
   is received while in an overwhelmed state, it MUST be ignored.

   *  When a PCEP speaker is overwhelmed, it SHOULD notify its peer by
      sending a PCNtf message with Notification-type = 5 (Auto-Bandwidth
      Overwhelm State) and Notification-value = 1 (Entering Auto-
      Bandwidth Overwhelm State).  Optionally, an OVERLOADED-DURATION
      TLV [RFC5440] MAY be included to specify the time period during
      which no further PCEP messages related to auto-bandwidth
      adjustment should be sent.

   *  When the PCEP speaker is no longer in the overwhelm state and is
      available to process the auto-bandwidth adjustments, it SHOULD
      notify its peers by sending a PCNtf message with Notification-type
      = 5 (Auto-Bandwidth Overwhelm State) and Notification-value = 2
      (Clearing Auto-Bandwidth Overwhelm State).  A PCEP speaker SHOULD
      send such notification to all peers if a Notification message
      (Notification-type = 5, Notification-value = 1) was sent earlier.
      This message is not sent if an OVERLOADED-DURATION TLV was
      included and the PCEP speakers wishes for the peer to wait for the
      expiration of that period of time before receiving further PCEP
      messages related to auto-bandwidth adjustment.

   When the auto-bandwidth feature is deployed, a PCE can send this
   notification to a PCC when it reports frequent auto-bandwidth
   adjustments.  If a PCC is overwhelmed with resignaling, it can also
   notify the PCE to not adjust the LSP bandwidth while in the overwhelm
   state.

   Some dampening notification procedure (as per [RFC5440]) to avoid
   oscillations of the overwhelm state is RECOMMENDED.  On receipt of an
   auto-bandwidth overwhelm notification from the PCE, a PCC should
   consider the impact on the entire network.  Moving the delegations of
   auto-bandwidth-enabled LSPs to another PCE could cause further
   overloading.

6.  Manageability Considerations

6.1.  Control of Function and Policy

   The auto-bandwidth feature SHOULD be controlled on a per-LSP basis
   (at the PCC (head-end of the LSP) or PCE), and the values for auto-
   bandwidth parameters, e.g., Sample-Interval, Adjustment-Interval (up/
   down), Minimum-Bandwidth, Maximum-Bandwidth, and Adjustment-Threshold
   (up/down), SHOULD be configurable by an operator.

   The Maximum-Bandwidth (and Minimum-Bandwidth) should be set to an
   acceptable limit to avoid having an impact on the rest of the MPLS-TE
   domain.

   The operator should make sure that the Overflow-Threshold is greater
   than or at least equal to the Up-Adjustment-Threshold.  And
   similarly, it is important to ensure that the Underflow-Threshold is
   greater than or at least equal to the Down-Adjustment-Threshold.

6.2.  Information and Data Models

   A MIB module for gathering operational information about the PCEP is
   defined in [RFC7420].  Additionally, the YANG module defined in
   [PCE-PCEP-YANG] provides both configuration of PCEP as well as
   operational management.  These could be enhanced to provide controls
   and indicators for support of the auto-bandwidth feature.  Support
   for various configuration knobs as well as counters of messages sent/
   received containing the TLVs defined in this document could be added.

6.3.  Liveness Detection and Monitoring

   The mechanisms defined in this document do not imply any new liveness
   detection and monitoring requirements in addition to those already
   listed in [RFC5440].

6.4.  Verifying Correct Operations

   The mechanisms defined in this document do not imply any new
   operation verification requirements in addition to those already
   listed in [RFC5440].

   In the case in which an invalid value is present, the sub-TLV would
   get ignored and the previous value will be maintained.  In such a
   case, the implementation SHOULD log the event.

6.5.  Requirements for Other Protocols

   The mechanisms defined in this document do not add any new
   requirements for other protocols.

6.6.  Impact on Network Operations

   In order to avoid any unacceptable impact on network operations, an
   implementation SHOULD allow a limit to be placed on the number of
   LSPs that can be enabled with the auto-bandwidth feature.  For each
   LSP enabled with the auto-bandwidth feature, there is an extra load
   on the PCC, as it needs to monitor the traffic and report the
   calculated bandwidth to be adjusted to the PCE.  The PCE further
   recomputes paths based on the requested bandwidth and updates the
   path to the PCC, which, in turn, triggers the resignaling of the
   path.  All these steps add extra load and churn in the network; thus,
   the operator needs to take due care while enabling these features on
   a number of LSPs.

   An implementation MAY allow a limit to be placed on the rate of auto-
   bandwidth-related messages sent by a PCEP speaker and received by a
   peer.  An implementation SHOULD also allow notifications to be sent
   when a PCEP speaker is overwhelmed or when the rate of messages
   reaches a threshold.

   Due care is required by the operator if a Sample-Interval value
   significantly smaller than the default (5 minutes) is used, as small
   Sample-Interval values, e.g., 1 minute or less, could cause
   undesirable interactions with transport protocols.  These undesirable
   interactions result from providing insufficient time for transport
   protocol reactions to a prior bandwidth adjustment to settle down
   before Bandwidth-Samples are taken for the next bandwidth adjustment.

7.  Security Considerations

   This document defines AUTO-BANDWIDTH-CAPABILITY TLV and AUTO-
   BANDWIDTH-ATTRIBUTES sub-TLVs, which do not add any substantial new
   security concerns beyond those already discussed in [RFC8231] and
   [RFC8281] for stateful PCE operations.  As per [RFC8231], it is
   RECOMMENDED that these PCEP extensions only be activated on
   authenticated and encrypted sessions across PCEs and PCCs belonging
   to the same administrative authority, using Transport Layer Security
   (TLS) [RFC8253], as per the recommendations and best current
   practices in BCP 195 [RFC7525] (unless explicitly set aside in
   [RFC8253]).

   Incorrect auto-bandwidth parameters in the AUTO-BANDWIDTH-ATTRIBUTES
   sub-TLVs could have an adverse effect on the LSP as well as on the
   network.

8.  IANA Considerations

8.1.  PCEP TLV Type Indicators

   This document defines the following new PCEP TLVs; IANA has made the
   following allocations from the "PCEP TLV Type Indicators" subregistry
   of the "Path Computation Element Protocol (PCEP) Numbers" registry as
   follows:

   +-------+---------------------------+-----------+
   | Value | Description               | Reference |
   +=======+===========================+===========+
   | 36    | AUTO-BANDWIDTH-CAPABILITY | [RFC8733] |
   +-------+---------------------------+-----------+
   | 37    | AUTO-BANDWIDTH-ATTRIBUTES | [RFC8733] |
   +-------+---------------------------+-----------+

           Table 3: PCEP TLV Type Indicators

8.2.  AUTO-BANDWIDTH-CAPABILITY TLV Flag Field

   IANA has created a subregistry to manage the Flag field of the AUTO-
   BANDWIDTH-CAPABILITY TLV within the "Path Computation Element
   Protocol (PCEP) Numbers" registry.

   New bit numbers are to be assigned by Standards Action [RFC8126].
   Each bit should be tracked with the following qualities:

   *  Bit number (counting from bit 0 as the most significant bit)

   *  Capability description

   *  Defining RFC

   The initial contents of the subregistry are empty, with all bits
   marked unassigned.

8.3.  AUTO-BANDWIDTH-ATTRIBUTES Sub-TLV

   This document specifies the AUTO-BANDWIDTH-ATTRIBUTES sub-TLVs.  IANA
   has created an "AUTO-BANDWIDTH-ATTRIBUTES Sub-TLV Types" subregistry
   within the "Path Computation Element Protocol (PCEP) Numbers"
   registry to manage the type indicator space for sub-TLVs of the AUTO-
   BANDWIDTH-ATTRIBUTES TLV.  The valid range of values in the registry
   is 0-65535.  IANA has initialized the registry with the following
   values.  All other values in the registry should be marked as
   "Unassigned".

   IANA has set the Registration Procedure for this registry to read as
   follows:

   +-------------+------------------------+
   | Range       | Registration Procedure |
   +=============+========================+
   | 0-65503     | IETF Review            |
   +-------------+------------------------+
   | 65504-65535 | Experimental Use       |
   +-------------+------------------------+

     Table 4: Registration Procedure for
     the "AUTO-BANDWIDTH-ATTRIBUTES Sub-
                TLV" Registry

   This document defines the following types:

   +----------+--------------------------------------+-----------+
   | Type     | Name                                 | Reference |
   +==========+======================================+===========+
   | 0        | Reserved                             | [RFC8733] |
   +----------+--------------------------------------+-----------+
   | 1        | Sample-Interval                      | [RFC8733] |
   +----------+--------------------------------------+-----------+
   | 2        | Adjustment-Interval                  | [RFC8733] |
   +----------+--------------------------------------+-----------+
   | 3        | Down-Adjustment-Interval             | [RFC8733] |
   +----------+--------------------------------------+-----------+
   | 4        | Adjustment-Threshold                 | [RFC8733] |
   +----------+--------------------------------------+-----------+
   | 5        | Adjustment-Threshold-Percentage      | [RFC8733] |
   +----------+--------------------------------------+-----------+
   | 6        | Down-Adjustment-Threshold            | [RFC8733] |
   +----------+--------------------------------------+-----------+
   | 7        | Down-Adjustment-Threshold-Percentage | [RFC8733] |
   +----------+--------------------------------------+-----------+
   | 8        | Minimum-Bandwidth                    | [RFC8733] |
   +----------+--------------------------------------+-----------+
   | 9        | Maximum-Bandwidth                    | [RFC8733] |
   +----------+--------------------------------------+-----------+
   | 10       | Overflow-Threshold                   | [RFC8733] |
   +----------+--------------------------------------+-----------+
   | 11       | Overflow-Threshold-Percentage        | [RFC8733] |
   +----------+--------------------------------------+-----------+
   | 12       | Underflow-Threshold                  | [RFC8733] |
   +----------+--------------------------------------+-----------+
   | 13       | Underflow-Threshold-Percentage       | [RFC8733] |
   +----------+--------------------------------------+-----------+
   | 14-65503 | Unassigned                           | [RFC8733] |
   +----------+--------------------------------------+-----------+

     Table 5: Initial Contents of the "AUTO-BANDWIDTH-ATTRIBUTES
                          Sub-TLV" Registry

8.4.  Error Object

   This document defines a new Error-value for PCErr message of Error-
   Type 19 (Invalid Operation) [RFC8231].  IANA has allocated a new
   Error-value within the "PCEP-ERROR Object Error Types and Values"
   subregistry of the "Path Computation Element Protocol (PCEP) Numbers"
   registry as follows:

   +------------+-----------+--------------------+-----------+
   | Error-Type | Meaning   | Error-value        | Reference |
   +============+===========+====================+===========+
   | 19         | Invalid   | 14: Auto-Bandwidth | [RFC8733] |
   |            | Operation | capability was not |           |
   |            |           | advertised         |           |
   +------------+-----------+--------------------+-----------+

     Table 6: Addition to the "PCEP-ERROR Object Error Types
                       and Values" Registry

8.5.  Notification Object

   IANA has allocated a new Notification-type and Notification-values
   within the "Notification Object" subregistry of the "Path Computation
   Element Protocol (PCEP) Numbers" registry as follows:

   +-------------------+----------------+--------------------+---------+
   | Notification-type | Name           | Notification-value |Reference|
   +===================+================+====================+=========+
   | 5                 | Auto-Bandwidth | 0: Unassigned      |[RFC8733]|
   |                   |Overwhelm State |                    |         |
   +-------------------+----------------+--------------------+---------+
   |                   |                | 1: Entering Auto-  |[RFC8733]|
   |                   |                |Bandwidth Overwhelm |         |
   |                   |                | State              |         |
   +-------------------+----------------+--------------------+---------+
   |                   |                | 2: Clearing Auto-  |[RFC8733]|
   |                   |                |Bandwidth Overwhelm |         |
   |                   |                | State              |         |
   +-------------------+----------------+--------------------+---------+

          Table 7: Additions to the "Notification Object" Registry

9.  References

9.1.  Normative References

   [IEEE.754.1985]
              IEEE, "Standard for Binary Floating-Point Arithmetic",
              DOI 10.1109/IEEESTD.1985.82928, IEEE Standard 754, October
              1985, <https://doi.org/10.1109/IEEESTD.1985.82928>.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC5440]  Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation
              Element (PCE) Communication Protocol (PCEP)", RFC 5440,
              DOI 10.17487/RFC5440, March 2009,
              <https://www.rfc-editor.org/info/rfc5440>.

   [RFC7525]  Sheffer, Y., Holz, R., and P. Saint-Andre,
              "Recommendations for Secure Use of Transport Layer
              Security (TLS) and Datagram Transport Layer Security
              (DTLS)", BCP 195, RFC 7525, DOI 10.17487/RFC7525, May
              2015, <https://www.rfc-editor.org/info/rfc7525>.

   [RFC8126]  Cotton, M., Leiba, B., and T. Narten, "Guidelines for
              Writing an IANA Considerations Section in RFCs", BCP 26,
              RFC 8126, DOI 10.17487/RFC8126, June 2017,
              <https://www.rfc-editor.org/info/rfc8126>.

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

   [RFC8231]  Crabbe, E., Minei, I., Medved, J., and R. Varga, "Path
              Computation Element Communication Protocol (PCEP)
              Extensions for Stateful PCE", RFC 8231,
              DOI 10.17487/RFC8231, September 2017,
              <https://www.rfc-editor.org/info/rfc8231>.

   [RFC8253]  Lopez, D., Gonzalez de Dios, O., Wu, Q., and D. Dhody,
              "PCEPS: Usage of TLS to Provide a Secure Transport for the
              Path Computation Element Communication Protocol (PCEP)",
              RFC 8253, DOI 10.17487/RFC8253, October 2017,
              <https://www.rfc-editor.org/info/rfc8253>.

   [RFC8281]  Crabbe, E., Minei, I., Sivabalan, S., and R. Varga, "Path
              Computation Element Communication Protocol (PCEP)
              Extensions for PCE-Initiated LSP Setup in a Stateful PCE
              Model", RFC 8281, DOI 10.17487/RFC8281, December 2017,
              <https://www.rfc-editor.org/info/rfc8281>.

9.2.  Informative References

   [PCE-PCEP-YANG]
              Dhody, D., Hardwick, J., Beeram, V., and J. Tantsura, "A
              YANG Data Model for Path Computation Element
              Communications Protocol (PCEP)", Work in Progress,
              Internet-Draft, draft-ietf-pce-pcep-yang-13, 31 October
              2019,
              <https://tools.ietf.org/html/draft-ietf-pce-pcep-yang-13>.

   [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,
              <https://www.rfc-editor.org/info/rfc3209>.

   [RFC3471]  Berger, L., Ed., "Generalized Multi-Protocol Label
              Switching (GMPLS) Signaling Functional Description",
              RFC 3471, DOI 10.17487/RFC3471, January 2003,
              <https://www.rfc-editor.org/info/rfc3471>.

   [RFC7420]  Koushik, A., Stephan, E., Zhao, Q., King, D., and J.
              Hardwick, "Path Computation Element Communication Protocol
              (PCEP) Management Information Base (MIB) Module",
              RFC 7420, DOI 10.17487/RFC7420, December 2014,
              <https://www.rfc-editor.org/info/rfc7420>.

   [RFC8051]  Zhang, X., Ed. and I. Minei, Ed., "Applicability of a
              Stateful Path Computation Element (PCE)", RFC 8051,
              DOI 10.17487/RFC8051, January 2017,
              <https://www.rfc-editor.org/info/rfc8051>.

Acknowledgments

   The authors would like to thank Robert Varga, Venugopal Reddy, Reeja
   Paul, Sandeep Boina, Avantika, JP Vasseur, Himanshu Shah, Jonathan
   Hardwick, and Adrian Farrel for their useful comments and
   suggestions.

   Thanks to Daniel Franke, Joe Clarke, David Black, and Erik Kline for
   the directorate reviews.

   Thanks to Mirja Kühlewind, Barry Leiba, Benjamin Kaduk, and Roman
   Danyliw for the IESG review.

Contributors

   He Zekun
   Tencent Holdings Ltd.
   Shenzhen
   China

   Email: kinghe@tencent.com


   Xian Zhang
   Huawei Technologies
   Research Area F3-1B
   Huawei Industrial Base,
   Shenzhen
   518129
   China

   Phone: +86-755-28972645
   Email: zhang.xian@huawei.com


   Young Lee
   Samsung

   Email: younglee.tx@gmail.com


Authors' Addresses

   Dhruv Dhody (editor)
   Huawei Technologies
   Divyashree Techno Park, Whitefield
   Bangalore 560066
   Karnataka
   India

   Email: dhruv.ietf@gmail.com


   Rakesh Gandhi (editor)
   Cisco Systems, Inc.
   Canada

   Email: rgandhi@cisco.com


   Udayasree Palle
   Individual Contributor

   Email: udayasreereddy@gmail.com


   Ravi Singh
   Individual Contributor

   Email: ravi.singh.ietf@gmail.com


   Luyuan Fang
   Expedia Group, Inc.
   United States of America

   Email: luyuanf@gmail.com