summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc4124.txt
blob: 97ecf71f0e61e5c70798dd60ae8c675ba90ec336 (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
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
Network Working Group                                F. Le Faucheur, Ed.
Request for Comments: 4124                           Cisco Systems, Inc.
Category: Standards Track                                      June 2005


                  Protocol Extensions for Support of
                Diffserv-aware MPLS Traffic Engineering

Status of This Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2005).

Abstract

   This document specifies the protocol extensions for support of
   Diffserv-aware MPLS Traffic Engineering (DS-TE).  This includes
   generalization of the semantics of a number of Interior Gateway
   Protocol (IGP) extensions already defined for existing MPLS Traffic
   Engineering in RFC 3630, RFC 3784, and additional IGP extensions
   beyond those.  This also includes extensions to RSVP-TE signaling
   beyond those already specified in RFC 3209 for existing MPLS Traffic
   Engineering.  These extensions address the requirements for DS-TE
   spelled out in RFC 3564.

Table of Contents

   1. Introduction ....................................................3
      1.1. Specification of Requirements ..............................3
   2. Contributing Authors ............................................4
   3. Definitions .....................................................5
   4. Configurable Parameters .........................................5
      4.1. Link Parameters ............................................5
           4.1.1. Bandwidth Constraints (BCs) .........................5
           4.1.2. Overbooking .........................................6
      4.2. LSR Parameters .............................................7
           4.2.1. TE-Class Mapping ....................................7
      4.3. LSP Parameters .............................................8
           4.3.1. Class-Type ..........................................8
           4.3.2. Setup and Holding Preemption Priorities .............8
           4.3.3. Class-Type/Preemption Relationship ..................8



Le Faucheur                 Standards Track                     [Page 1]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


      4.4. Examples of Parameters Configuration .......................9
           4.4.1. Example 1 ...........................................9
           4.4.2. Example 2 ...........................................9
           4.4.3. Example 3 ..........................................10
           4.4.4. Example 4 ..........................................11
           4.4.5. Example 5 ..........................................11
   5. IGP Extensions for DS-TE .......................................12
      5.1. Bandwidth Constraints .....................................12
      5.2. Unreserved Bandwidth ......................................14
   6. RSVP-TE Extensions for DS-TE ...................................15
      6.1. DS-TE-Related RSVP Messages Format ........................15
           6.1.1. Path Message Format ................................16
      6.2. CLASSTYPE Object ..........................................16
           6.2.1. CLASSTYPE object ...................................16
      6.3. Handling CLASSTYPE Object .................................17
      6.4. Non-support of the CLASSTYPE Object .......................20
      6.5. Error Codes for Diffserv-aware TE .........................20
   7. DS-TE Support with MPLS Extensions .............................21
      7.1. DS-TE Support and References to Preemption Priority .......22
      7.2. DS-TE Support and References to Maximum Reservable
           Bandwidth .................................................22
   8. Constraint-Based Routing .......................................22
   9. Diffserv Scheduling ............................................23
   10. Existing TE as a Particular Case of DS-TE .....................23
   11. Computing "Unreserved TE-Class [i]" and Admission
       Control Rules .................................................23
       11.1. Computing "Unreserved TE-Class [i]" .....................23
       11.2. Admission Control Rules .................................24
   12. Security Considerations .......................................24
   13. IANA Considerations ...........................................25
       13.1. A New Name Space for Bandwidth Constraints Model
             Identifiers .............................................25
       13.2. A New Name Space for Error Values under the
             "Diffserv-aware TE ......................................25
       13.3. Assignments Made in This Document .......................26
             13.3.1. Bandwidth Constraints sub-TLV for
                     OSPF Version 2 ..................................26
             13.3.2. Bandwidth Constraints sub-TLV for ISIS ..........26
             13.3.3. CLASSTYPE Object for RSVP .......................26
             13.3.4. "Diffserv-aware TE Error" Error Code ............27
             13.3.5. Error Values for "Diffserv-aware TE Error" ......27
   14. Acknowledgements ..............................................28
   Appendix A: Prediction for Multiple Path Computation ..............29
   Appendix B: Solution Evaluation ...................................29
   Appendix C: Interoperability with non DS-TE capable LSRs ..........31
   Normative References ..............................................34
   Informative References ............................................35




Le Faucheur                 Standards Track                     [Page 2]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


1.  Introduction

   [DSTE-REQ] presents the Service Provider requirements for support of
   Differentiated-Service (Diffserv)-aware MPLS Traffic Engineering
   (DS-TE).  This includes the fundamental requirement to be able to
   enforce different bandwidth constraints for different classes of
   traffic.

   This document specifies the IGP and RSVP-TE signaling extensions
   (beyond those already specified for existing MPLS Traffic Engineering
   [OSPF-TE][ISIS-TE][RSVP-TE]) for support of the DS-TE requirements
   spelled out in [DSTE-REQ] including environments relying on
   distributed Constraint-Based Routing (e.g., path computation
   involving head-end Label Switching Routers).

   [DSTE-REQ] provides a definition and examples of Bandwidth
   Constraints models.  The present document does not specify nor assume
   a particular Bandwidth Constraints model.  Specific Bandwidth
   Constraints models are outside the scope of this document.  Although
   the extensions for DS-TE specified in this document may not be
   sufficient to support all the conceivable Bandwidth Constraints
   models, they do support the Russian Dolls Model specified in
   [DSTE-RDM], the Maximum Allocation Model specified in [DSTE-MAM], and
   the Maximum Allocation with Reservation Model specified in
   [DSTE-MAR].

   There may be differences between the quality of service expressed and
   obtained with Diffserv without DS-TE and with DS-TE.  Because DS-TE
   uses Constraint-Based Routing, and because of the type of admission
   control capabilities it adds to Diffserv, DS-TE has capabilities for
   traffic that Diffserv does not:  Diffserv does not indicate
   preemption, by intent, whereas DS-TE describes multiple levels of
   preemption for its Class-Types.  Also, Diffserv does not support any
   means of explicitly controlling overbooking, while DS-TE allows this.
   When considering a complete quality of service environment, with
   Diffserv routers and DS-TE, it is important to consider these
   differences carefully.

1.1.  Specification of Requirements

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].








Le Faucheur                 Standards Track                     [Page 3]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


2.  Contributing Authors

   This document was the collective work of several authors.  The text
   and content were contributed by the editor and the co-authors listed
   below.  (The contact information for the editor appears in the
   Editor's Address section.)

   Jim Boyle                               Kireeti Kompella
   Protocol Driven Networks, Inc.          Juniper Networks, Inc.
   1381 Kildaire Farm Road #288            1194 N. Mathilda Ave.
   Cary, NC 27511, USA                     Sunnyvale, CA 94099

   Phone: (919) 852-5160                   EMail: kireeti@juniper.net
   EMail: jboyle@pdnets.com


   William Townsend                        Thomas D. Nadeau
   Tenor Networks                          Cisco Systems, Inc.
   100 Nagog Park                          250 Apollo Drive
   Acton, MA 01720                         Chelmsford, MA 01824

   Phone: +1-978-264-4900                  Phone: +1-978-244-3051
   EMail: btownsend@tenornetworks.com      EMail: tnadeau@cisco.com


   Darek Skalecki
   Nortel Networks
   3500 Carling Ave,
   Nepean K2H 8E9

   Phone: +1-613-765-2252
   EMail: dareks@nortelnetworks.com



















Le Faucheur                 Standards Track                     [Page 4]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


3.  Definitions

   For readability, a number of definitions from [DSTE-REQ] are repeated
   here:

   Traffic Trunk:   an aggregation of traffic flows of the same class
                    (i.e., treated equivalently from the DS-TE
                    perspective), which is placed inside a Label
                    Switched Path (LSP).

   Class-Type (CT): the set of Traffic Trunks crossing a link that is
                    governed by a specific set of bandwidth constraints.
                    CT is used for the purposes of link bandwidth
                    allocation, constraint-based routing and admission
                    control.  A given Traffic Trunk belongs to the same
                    CT on all links.

   TE-Class:        A pair of:
                    i.  a Class-Type
                    ii. a preemption priority allowed for that Class-
                    Type.  This means that an LSP transporting a Traffic
                    Trunk from that Class-Type can use that preemption
                    priority as the setup priority, the holding
                    priority, or both.

   Definitions for a number of MPLS terms are not repeated here.  They
   can be found in [MPLS-ARCH].

4.  Configurable Parameters

   This section only discusses the differences with the configurable
   parameters supported for MPLS Traffic Engineering as per [TE-REQ],
   [ISIS-TE], [OSPF-TE], and [RSVP-TE].  All other parameters are
   unchanged.

4.1.  Link Parameters

4.1.1.  Bandwidth Constraints (BCs)

   [DSTE-REQ] states that "Regardless of the Bandwidth Constraints
   Model, the DS-TE solution MUST allow support for up to 8 BCs."

   For DS-TE, the existing "Maximum Reservable link bandwidth" parameter
   is retained, but its semantics is generalized and interpreted as the
   aggregate bandwidth constraint across all Class-Types, so that,
   independently of the Bandwidth Constraints Model in use:





Le Faucheur                 Standards Track                     [Page 5]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


      SUM (Reserved (CTc)) <= Max Reservable Bandwidth,

   where the SUM is across all values of "c" in the range 0 <= c <= 7.

   Additionally, on every link, a DS-TE implementation MUST provide for
   configuration of up to 8 additional link parameters which are the
   eight potential BCs, i.e., BC0, BC1, ... BC7.  The LSR MUST interpret
   these BCs in accordance with the supported Bandwidth Constraints
   Model (i.e., what BC applies to what Class-Type, and how).

   Where the Bandwidth Constraints Model imposes some relationship among
   the values to be configured for these BCs, the LSR MUST enforce those
   at configuration time.  For example, when the Russian Dolls Bandwidth
   Constraints Model ([DSTE-RDM]) is used, the LSR MUST ensure that BCi
   is configured smaller than or equal to BCj, where i is greater than
   j, and ensure that BC0 is equal to the Maximum Reservable Bandwidth.
   As another example, when the Maximum Allocation Model ([DSTE-MAM]) is
   used, the LSR MUST ensure that all BCi are configured smaller or
   equal to the Maximum Reservable Bandwidth.

4.1.2.  Overbooking

   DS-TE enables a network administrator to apply different overbooking
   (or underbooking) ratios for different CTs.

   The principal methods to achieve this are the same as those
   historically used in existing TE deployment:

   (i)    To take into account the overbooking/underbooking ratio
          appropriate for the Ordered Aggregate (OA) or CT associated
          with the considered LSP at the time of establishing the
          bandwidth size of a given LSP.  We refer to this method as the
          "LSP Size Overbooking" method.  AND/OR
   (ii)   To take into account the overbooking/underbooking ratio at the
          time of configuring the Maximum Reservable Bandwidth/BCs and
          use values that are larger (overbooking) or smaller
          (underbooking) than those actually supported by the link.  We
          refer to this method as the "Link Size Overbooking" method.

   The "LSP Size Overbooking" and "Link Size Overbooking" methods are
   expected to be sufficient in many DS-TE environments and require no
   additional configurable parameters.  Other overbooking methods may
   involve such additional configurable parameters, but are beyond the
   scope of this document.







Le Faucheur                 Standards Track                     [Page 6]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


4.2.  LSR Parameters

4.2.1.  TE-Class Mapping

   In line with [DSTE-REQ], the preemption attributes defined in
   [TE-REQ] are retained with DS-TE and applicable within, and across,
   all CTs.  The preemption attributes of setup priority and holding
   priority retain existing semantics, and in particular these semantics
   are not affected by the LSP CT.  This means that if LSP1 contends
   with LSP2 for resources, LSP1 may preempt LSP2 if LSP1 has a higher
   setup preemption priority (i.e., lower numerical priority value) than
   LSP2 holding preemption priority, regardless of LSP1 CT and LSP2 CT.

   DS-TE LSRs MUST allow configuration of a TE-Class mapping whereby the
   Class-Type and preemption level are configured for each of (up to) 8
   TE-Classes.

   This mapping is referred to as :

      TE-Class[i]  <-->  < CTc , preemption p >

   where 0 <= i <= 7, 0 <= c <= 7, 0 <= p <= 7

   Two TE-Classes MUST NOT be identical (i.e., have both the same
   Class-Type and the same preemption priority).

   There are no other restrictions on how any of the 8 Class-Types can
   be paired up with any of the 8 preemption priorities to form a TE-
   Class.  In particular, one given preemption priority can be paired up
   with two (or more) different Class-Types to form two (or more) TE-
   Classes.  Similarly, one Class-Type can be paired up with two (or
   more) different preemption priorities to form two (or more) TE-
   Classes.  Also, there is no mandatory ordering relationship between
   the TE-Class index (i.e., "i" above) and the Class-Type (i.e., "c"
   above) or the preemption priority (i.e., "p" above) of the TE-Class.

   Where the network administrator uses less than 8 TE-Classes, the DS-
   TE LSR MUST allow remaining ones to be configured as "Unused".  Note
   that configuring all the 8 TE-Classes as "Unused" effectively results
   in disabling TE/DS-TE since no TE/DS-TE LSP can be established (nor
   even configured, since as described in Section 4.3.3 below, the CT
   and preemption priorities configured for an LSP MUST form one of the
   configured TE-Classes).

   To ensure coherent DS-TE operation, the network administrator MUST
   configure exactly the same TE-Class mapping on all LSRs of the DS-TE
   domain.




Le Faucheur                 Standards Track                     [Page 7]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   When the TE-Class mapping needs to be modified in the DS-TE domain,
   care ought to be exercised during the transient period of
   reconfiguration during which some DS-TE LSRs may be configured with
   the new TE-Class mapping while others are still configured with the
   old TE-Class mapping.  It is recommended that active tunnels do not
   use any of the TE-Classes that are being modified during such a
   transient reconfiguration period.

4.3.  LSP Parameters

4.3.1.  Class-Type

   With DS-TE, LSRs MUST support, for every LSP, an additional
   configurable parameter that indicates the Class-Type of the Traffic
   Trunk transported by the LSP.

   There is one and only one Class-Type configured per LSP.

   The configured Class-Type indicates, in accordance with the supported
   Bandwidth Constraints Model, the BCs that MUST be enforced for that
   LSP.

4.3.2.  Setup and Holding Preemption Priorities

   As per existing TE, DS-TE LSRs MUST allow every DS-TE LSP to be
   configured with a setup and holding priority, each with a value
   between 0 and 7.

4.3.3.  Class-Type/Preemption Relationship

   With DS-TE, the preemption priority configured for the setup priority
   of a given LSP and the Class-Type configured for that LSP MUST be
   such that, together, they form one of the (up to) 8 TE-Classes
   configured in the TE-Class mapping specified in Section 4.2.1 above.

   The preemption priority configured for the holding priority of a
   given LSP and the Class-Type configured for that LSP MUST also be
   such that, together, they form one of the (up to) 8 TE-Classes
   configured in the TE-Class mapping specified in Section 4.2.1 above.

   The LSR MUST enforce these two rules at configuration time.










Le Faucheur                 Standards Track                     [Page 8]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


4.4.  Examples of Parameters Configuration

   For illustration purposes, we now present a few examples of how these
   configurable parameters may be used.  All these examples assume that
   different BCs need to be enforced for different sets of Traffic
   Trunks (e.g., for Voice and for Data) so that two or more Class-Types
   need to be used.

4.4.1.  Example 1

   The network administrator of a first network using two CTs (CT1 for
   Voice and CT0 for Data) may elect to configure the following TE-Class
   mapping to ensure that Voice LSPs are never driven away from their
   shortest path because of Data LSPs:

        TE-Class[0]  <-->  < CT1 , preemption 0 >
        TE-Class[1]  <-->  < CT0 , preemption 1 >
        TE-Class[i]  <-->  unused, for 2 <= i <= 7

   Voice LSPs would then be configured with:
        CT = CT1, setup priority = 0, holding priority = 0

   Data LSPs would then be configured with:
        CT = CT0, setup priority = 1, holding priority = 1

   A new Voice LSP would then be able to preempt an existing Data LSP in
   case they contend for resources.  A Data LSP would never preempt a
   Voice LSP.  A Voice LSP would never preempt another Voice LSP.  A
   Data LSP would never preempt another Data LSP.

4.4.2.  Example 2

   The network administrator of another network may elect to configure
   the following TE-Class mapping in order to optimize global network
   resource utilization by favoring placement of large LSPs closer to
   their shortest path:

        TE-Class[0]  <-->  < CT1 , preemption 0 >
        TE-Class[1]  <-->  < CT0 , preemption 1 >
        TE-Class[2]  <-->  < CT1 , preemption 2 >
        TE-Class[3]  <-->  < CT0 , preemption 3 >
        TE-Class[i]  <-->  unused, for 4 <= i <= 7

   Large-size Voice LSPs could be configured with:
        CT = CT1, setup priority = 0, holding priority = 0

   Large-size Data LSPs could be configured with:
        CT = CT0, setup priority = 1, holding priority = 1



Le Faucheur                 Standards Track                     [Page 9]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   Small-size Voice LSPs could be configured with:
        CT = CT1, setup priority = 2, holding priority = 2

   Small-size Data LSPs could be configured with:
        CT = CT0, setup priority = 3, holding priority = 3

   A new large-size Voice LSP would then be able to preempt a small-size
   Voice LSP or any Data LSP in case they contend for resources.  A new
   large-size Data LSP would then be able to preempt a small-size Data
   LSP or a small-size Voice LSP in case they contend for resources, but
   it would not be able to preempt a large-size Voice LSP.

4.4.3.  Example 3

   The network administrator of another network may elect to configure
   the following TE-Class mapping in order to ensure that Voice LSPs are
   never driven away from their shortest path because of Data LSPs.
   This also achieves some optimization of global network resource
   utilization by favoring placement of large LSPs closer to their
   shortest path:

        TE-Class[0]  <-->  < CT1 , preemption 0 >
        TE-Class[1]  <-->  < CT1 , preemption 1 >
        TE-Class[2]  <-->  < CT0 , preemption 2 >
        TE-Class[3]  <-->  < CT0 , preemption 3 >
        TE-Class[i]  <-->  unused, for 4 <= i <= 7

   Large-size Voice LSPs could be configured with:
        CT = CT1, setup priority = 0, holding priority = 0.

   Small-size Voice LSPs could be configured with:
        CT = CT1, setup priority = 1, holding priority = 1.

   Large-size Data LSPs could be configured with:
        CT = CT0, setup priority = 2, holding priority = 2.

   Small-size Data LSPs could be configured with:
        CT=CT0, setup priority = 3, holding priority = 3.

   A Voice LSP could preempt a Data LSP if they contend for resources.
   A Data LSP would never preempt a Voice LSP.  A large-size Voice LSP
   could preempt a small-size Voice LSP if they contend for resources.
   A large-size Data LSP could preempt a small-size Data LSP if they
   contend for resources.







Le Faucheur                 Standards Track                    [Page 10]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


4.4.4.  Example 4

   The network administrator of another network may elect to configure
   the following TE-Class mapping in order to ensure that no preemption
   occurs in the DS-TE domain:

        TE-Class[0]  <-->  < CT1 , preemption 0 >
        TE-Class[1]  <-->  < CT0 , preemption 0 >
        TE-Class[i]  <-->  unused,   for 2 <= i <= 7

   Voice LSPs would then be configured with:
        CT = CT1, setup priority =0, holding priority = 0

   Data LSPs would then be configured with:
        CT = CT0, setup priority = 0, holding priority = 0

   No LSP would then be able to preempt any other LSP.

4.4.5.  Example 5

   The network administrator of another network may elect to configure
   the following TE-Class mapping in view of increased network stability
   through a more limited use of preemption:

        TE-Class[0]  <-->  < CT1 , preemption 0 >
        TE-Class[1]  <-->  < CT1 , preemption 1 >
        TE-Class[2]  <-->  < CT0 , preemption 1 >
        TE-Class[3]  <-->  < CT0 , preemption 2 >
        TE-Class[i]  <-->  unused, for 4 <= i <= 7

   Large-size Voice LSPs could be configured with: CT = CT1, setup
        priority = 0, holding priority = 0.

   Small-size Voice LSPs could be configured with: CT = CT1, setup
        priority = 1, holding priority = 0.

   Large-size Data LSPs could be configured with: CT = CT0, setup
        priority = 2, holding priority = 1.

   Small-size Data LSPs could be configured with: CT = CT0, setup
        priority = 2, holding priority = 2.

   A new large-size Voice LSP would be able to preempt a Data LSP in
   case they contend for resources, but it would not be able to preempt
   any Voice LSP even a small-size Voice LSP.






Le Faucheur                 Standards Track                    [Page 11]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   A new small-size Voice LSP would be able to preempt a small-size Data
   LSP in case they contend for resources, but it would not be able to
   preempt a large-size Data LSP or any Voice LSP.

   A Data LSP would not be able to preempt any other LSP.

5.  IGP Extensions for DS-TE

   This section only discusses the differences with the IGP
   advertisement supported for (aggregate) MPLS Traffic Engineering as
   per [OSPF-TE] and [ISIS-TE].  The rest of the IGP advertisement is
   unchanged.

5.1.  Bandwidth Constraints

   As detailed above in Section 4.1.1, up to 8 BCs (BCb, 0 <= b <= 7)
   are configurable on any given link.

   With DS-TE, the existing "Maximum Reservable Bandwidth" sub-TLV
   ([OSPF-TE], [ISIS-TE]) is retained with a generalized semantics so
   that it MUST now be interpreted as the aggregate bandwidth constraint
   across all Class-Types; i.e., SUM (Reserved (CTc)) <= Max Reservable
   Bandwidth, independently of the Bandwidth Constraints Model.

   This document also defines the following new optional sub-TLV to
   advertise the eight potential BCs (BC0 to BC7):

   "Bandwidth Constraints" sub-TLV:

        - Bandwidth Constraints Model Id (1 octet)
        - Reserved (3 octets)
        - Bandwidth Constraints (N x 4 octets)

   Where:
        - With OSPF, the sub-TLV is a sub-TLV of the "Link TLV" and its
          sub-TLV type is 17.

        - With ISIS, the sub-TLV is a sub-TLV of the "extended IS
          reachability TLV" and its sub-TLV type is 22.

        - Bandwidth Constraints Model Id: a 1-octet identifier for the
          Bandwidth Constraints Model currently in use by the LSR
          initiating the IGP advertisement.  See the IANA Considerations
          section for assignment of values in this name space.

        - Reserved: a 3-octet field.  This field should be set to zero
          by the LSR generating the sub-TLV and should be ignored by the
          LSR receiving the sub-TLV.



Le Faucheur                 Standards Track                    [Page 12]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


        - Bandwidth Constraints: contains BC0, BC1,... BC(N-1).  Each BC
          is encoded on 32 bits in IEEE floating point format.  The
          units are bytes (not bits!) per second.  Where the configured
          TE-Class mapping and the Bandwidth Constraints model in use
          are such that BCh+1, BCh+2, ...and BC7 are not relevant to any
          of the Class-Types associated with a configured TE-Class, it
          is RECOMMENDED that only the Bandwidth Constraints from BC0 to
          BCh be advertised, in order to minimize the impact on IGP
          scalability.

   All relevant generic TLV encoding rules (including TLV format,
   padding and alignment, as well as IEEE floating point format
   encoding) defined in [OSPF-TE] and [ISIS-TE] are applicable to this
   new sub-TLV.

   The "Bandwidth Constraints" sub-TLV format is illustrated 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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     | BC Model Id   |           Reserved                            |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                       BC0 value                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     //                       . . .                                 //
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                       BCh value                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   A DS-TE LSR MAY optionally advertise BCs.

   A DS-TE LSR, which does advertise BCs, MUST use the new "Bandwidth
   Constraints" sub-TLV (in addition to the existing Maximum Reservable
   Bandwidth sub-TLV) to do so.  For example, in the case where a
   service provider deploys DS-TE with TE-Classes associated with CT0
   and CT1 only, and where the Bandwidth Constraints Model is such that
   only BC0 and BC1 are relevant to CT0 and CT1, a DS-TE LSR which does
   advertise BCs would include in the IGP advertisement the Maximum
   Reservable Bandwidth sub-TLV, as well as the "Bandwidth Constraints"
   sub-TLV.  The former should contain the aggregate bandwidth
   constraint across all CTs, and the latter should contain BC0 and BC1.

   A DS-TE LSR receiving the "Bandwidth Constraints" sub-TLV with a
   Bandwidth Constraints Model Id that does not match the Bandwidth
   Constraints Model it currently uses SHOULD generate a warning to the
   operator/management system, reporting the inconsistency between
   Bandwidth Constraints Models used on different links.  Also, in that
   case, if the DS-TE LSR does not support the Bandwidth Constraints



Le Faucheur                 Standards Track                    [Page 13]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   Model designated by the Bandwidth Constraints Model Id, or if the
   DS-TE LSR does not support operations with multiple simultaneous
   Bandwidth Constraints Models, the DS-TE LSR MAY discard the
   corresponding TLV.  If the DS-TE LSR does support the Bandwidth
   Constraints Model designated by the Bandwidth Constraints Model Id,
   and if the DS-TE LSR does support operations with multiple
   simultaneous Bandwidth Constraints Models, the DS-TE LSR MAY accept
   the corresponding TLV and allow operations with different Bandwidth
   Constraints Models used in different parts of the DS-TE domain.

5.2.  Unreserved Bandwidth

   With DS-TE, the existing "Unreserved Bandwidth" sub-TLV is retained
   as the only vehicle to advertise dynamic bandwidth information
   necessary for Constraint-Based Routing on head-ends, except that it
   is used with a generalized semantics.  The Unreserved Bandwidth sub-
   TLV still carries eight bandwidth values, but they now correspond to
   the unreserved bandwidth for each of the TE-Classes (instead of for
   each preemption priority, as per existing TE).

   More precisely, a DS-TE LSR MUST support the Unreserved Bandwidth
   sub-TLV with a definition that is generalized into the following:

   The Unreserved Bandwidth sub-TLV specifies the amount of bandwidth
   not yet reserved for each of the eight TE-Classes, in IEEE floating
   point format arranged in increasing order of TE-Class index.
   Unreserved bandwidth for TE-Class [0] occurs at the start of the
   sub-TLV, and unreserved bandwidth for TE-Class [7] at the end of the
   sub-TLV.  The unreserved bandwidth value for TE-Class [i] ( 0 <= i <=
   7) is referred to as "Unreserved TE-Class [i]".  It indicates the
   bandwidth that is available, for reservation, to an LSP that:

   - transports a Traffic Trunk from the Class-Type of TE-Class[i], and

   - has a setup priority corresponding to the preemption priority of
     TE-Class[i].

   The units are bytes per second.

   Because the bandwidth values are now ordered by TE-class index and
   thus can relate to different CTs with different BCs and to any
   arbitrary preemption priority, a DS-TE LSR MUST NOT assume any
   ordered relationship among these bandwidth values.

   With existing TE, because all preemption priorities reflect the same
   (and only) BCs and bandwidth values are advertised in preemption
   priority order, the following relationship is always true, and is
   often assumed by TE implementations:



Le Faucheur                 Standards Track                    [Page 14]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


      If i < j, then "Unreserved Bw [i]" >= "Unreserved Bw [j]"

   With DS-TE, no relationship is to be assumed such that:

      If i < j, then any of the following relationships may be true:
                "Unreserved TE-Class [i]" = "Unreserved TE-Class [j]"
                    OR
                "Unreserved TE-Class [i]" > "Unreserved TE-Class [j]"
                    OR
                "Unreserved TE-Class [i]" < "Unreserved TE-Class [j]".

   Rules for computing "Unreserved TE-Class [i]" are specified in
   Section 11.

   If TE-Class[i] is unused, the value advertised by the IGP in
   "Unreserved TE-Class [i]" MUST be set to zero by the LSR generating
   the IGP advertisement, and MUST be ignored by the LSR receiving the
   IGP advertisement.

6.  RSVP-TE Extensions for DS-TE

   In this section, we describe extensions to RSVP-TE for support of
   Diffserv-aware MPLS Traffic Engineering.  These extensions are in
   addition to the extensions to RSVP defined in [RSVP-TE] for support
   of (aggregate) MPLS Traffic Engineering and to the extensions to RSVP
   defined in [DIFF-MPLS] for support of Diffserv over MPLS.

6.1.  DS-TE-Related RSVP Messages Format

   One new RSVP object is defined in this document: the CLASSTYPE
   object.  Detailed description of this object is provided below.  This
   new object is applicable to Path messages.  This specification only
   defines the use of the CLASSTYPE object in Path messages used to
   establish LSP Tunnels in accordance with [RSVP-TE] and thus
   containing a session object with a CT equal to LSP_TUNNEL_IPv4 and
   containing a LABEL_REQUEST object.

   Restrictions defined in [RSVP-TE] for support of establishment of LSP
   Tunnels via RSVP-TE are also applicable to the establishment of LSP
   Tunnels supporting DS-TE.  For instance, only unicast LSPs are
   supported, and multicast LSPs are for further study.

   This new CLASSTYPE object is optional with respect to RSVP so that
   general RSVP implementations not concerned with MPLS LSP setup do not
   have to support this object.

   An LSR supporting DS-TE MUST support the CLASSTYPE object.




Le Faucheur                 Standards Track                    [Page 15]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


6.1.1.  Path Message Format

   The format of the Path message is as follows:

   <Path Message> ::=      <Common Header> [ <INTEGRITY> ]
                           <SESSION> <RSVP_HOP>
                           <TIME_VALUES>
                           [ <EXPLICIT_ROUTE> ]
                           <LABEL_REQUEST>
                           [ <SESSION_ATTRIBUTE> ]
                           [ <DIFFSERV> ]
                           [ <CLASSTYPE> ]
                           [ <POLICY_DATA> ... ]
                           [ <sender descriptor> ]

   <sender descriptor> ::=  <SENDER_TEMPLATE> [ <SENDER_TSPEC> ]
                           [ <ADSPEC> ]
                           [ <RECORD_ROUTE> ]


6.2.  CLASSTYPE Object

   The CLASSTYPE object Class Name is CLASSTYPE.  Its Class Number is
   66.  Currently, there is only one defined C-Type which is C-Type 1.
   The CLASSTYPE object format is shown below.

6.2.1.  CLASSTYPE object

   Class Number = 66
   Class-Type = 1

    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |        Reserved                                         |  CT |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Reserved: 29 bits
       This field is reserved.  It MUST be set to zero on transmission
       and MUST be ignored on receipt.

   CT: 3 bits
       Indicates the Class-Type.  Values currently allowed are
       1, 2, ... , 7.  Value of 0 is Reserved.







Le Faucheur                 Standards Track                    [Page 16]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


6.3.  Handling CLASSTYPE Object

   To establish an LSP tunnel with RSVP, the sender LSR creates a Path
   message with a session type of LSP_Tunnel_IPv4 and with a

   LABEL_REQUEST object as per [RSVP-TE].  The sender LSR may also
   include the DIFFSERV object as per [DIFF-MPLS].

   If the LSP is associated with Class-Type 0, the sender LSR MUST NOT
   include the CLASSTYPE object in the Path message.  This allows
   backward compatibility with non-DSTE-configured or non-DSTE-capable
   LSRs as discussed below in Section 10 and Appendix C.

   If the LSP is associated with Class-Type N (1 <= N <=7), the sender
   LSR MUST include the CLASSTYPE object in the Path message with the
   Class-Type (CT) field set to N.

   If a Path message contains multiple CLASSTYPE objects, only the first
   one is meaningful; subsequent CLASSTYPE object(s) MUST be ignored and
   MUST NOT be forwarded.

   Each LSR along the path MUST record the CLASSTYPE object, when it is
   present, in its path state block.

   If the CLASSTYPE object is not present in the Path message, the LSR
   MUST associate the Class-Type 0 to the LSP.

   The destination LSR responding to the Path message by sending a Resv
   message MUST NOT include a CLASSTYPE object in the Resv message
   (whether or not the Path message contained a CLASSTYPE object).

   During establishment of an LSP corresponding to the Class-Type N, the
   LSR MUST perform admission control over the bandwidth available for
   that particular Class-Type.

   An LSR that recognizes the CLASSTYPE object and that receives a Path
   message that:

         - contains the CLASSTYPE object, but

         - does not contain a LABEL_REQUEST object or does not have a
           session type of LSP_Tunnel_IPv4,

   MUST send a PathErr towards the sender with the error code
   "Diffserv-aware TE Error" and an error value of "Unexpected CLASSTYPE
   object".  These codes are defined in Section 6.5.





Le Faucheur                 Standards Track                    [Page 17]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   An LSR receiving a Path message with the CLASSTYPE object that:

         - recognizes the CLASSTYPE object, but

         - does not support the particular Class-Type,

   MUST send a PathErr towards the sender with the error code
   "Diffserv-aware TE Error" and an error value of "Unsupported Class-
   Type".  These codes are defined in Section 6.5.

   An LSR receiving a Path message with the CLASSTYPE object that:

         - recognizes the CLASSTYPE object, but

         - determines that the Class-Type value is not valid (i.e.,
           Class-Type value 0),

   MUST send a PathErr towards the sender with the error code
   "Diffserv-aware TE Error" and an error value of "Invalid Class-Type
   value".  These codes are defined in Section 6.5.

   An LSR receiving a Path message with the CLASSTYPE object, which:

         - recognizes the CLASSTYPE object and

         - supports the particular Class-Type, but

         - determines that the tuple formed by (i) this Class-Type and
           (ii) the setup priority signaled in the same Path message, is
           not one of the eight TE-Classes configured in the TE-class
           mapping,

   MUST send a PathErr towards the sender with the error code
   "Diffserv-aware TE Error" and an error value of "CT and setup
   priority do not form a configured TE-Class".  These codes are defined
   in Section 6.5.

   An LSR receiving a Path message with the CLASSTYPE object that:

         - recognizes the CLASSTYPE object and

         - supports the particular Class-Type, but

         - determines that the tuple formed by (i) this Class-Type and
           (ii) the holding priority signaled in the same Path message,
           is not one of the eight TE-Classes configured in the TE-class
           mapping,




Le Faucheur                 Standards Track                    [Page 18]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   MUST send a PathErr towards the sender with the error code
   "Diffserv-aware TE Error" and an error value of "CT and holding
   priority do not form a configured TE-Class".  These codes are defined
   in Section 6.5.

   An LSR receiving a Path message with the CLASSTYPE object that:

         - recognizes the CLASSTYPE object and

         - supports the particular Class-Type, but

         - determines that the tuple formed by (i) this Class-Type and
           (ii) the setup priority signaled in the same Path message, is
           not one of the eight TE-Classes configured in the TE-class
           mapping, AND

         - determines that the tuple formed by (i) this Class-Type and
           (ii) the holding priority signaled in the same Path message,
           is not one of the eight TE-Classes configured in the TE-class
           mapping

   MUST send a PathErr towards the sender with the error code
   "Diffserv-aware TE Error" and an error value of "CT and setup
   priority do not form a configured TE-Class AND CT and holding
   priority do not form a configured TE-Class".  These codes are defined
   in Section 6.5.

   An LSR receiving a Path message with the CLASSTYPE object and with
   the DIFFSERV object for an L-LSP that:

         - recognizes the CLASSTYPE object,

         - has local knowledge of the relationship between Class-Types
           and Per Hop Behavior (PHB) Scheduling Class, e.g., via
           configuration, and

         - determines, based on this local knowledge, that the PHB
           Scheduling Class (PSC) signaled in the DIFFSERV object is
           inconsistent with the Class-Type signaled in the CLASSTYPE
           object,

   MUST send a PathErr towards the sender with the error code
   "Diffserv-aware TE Error" and an error value of "Inconsistency
   between signaled PSC and signaled CT".  These codes are defined below
   in Section 6.5.






Le Faucheur                 Standards Track                    [Page 19]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   An LSR receiving a Path message with the CLASSTYPE object and with
   the DIFFSERV object for an E-LSP that:

         - recognizes the CLASSTYPE object,

         - has local knowledge of the relationship between Class-Types
           and PHBs (e.g., via configuration)

         - determines, based on this local knowledge, that the PHBs
           signaled in the MAP entries of the DIFFSERV object are
           inconsistent with the Class-Type signaled in the CLASSTYPE
           object,

   MUST send a PathErr towards the sender with the error code
   "Diffserv-aware TE Error" and an error value of "Inconsistency
   between signaled PHBs and signaled CT".  These codes are defined in
   Section 6.5.

   An LSR MUST handle situations in which the LSP cannot be accepted for
   reasons other than those already discussed in this section, in
   accordance with [RSVP-TE] and [DIFF-MPLS] (e.g., a reservation is
   rejected by admission control, and a label cannot be associated).

6.4.  Non-support of the CLASSTYPE Object

   An LSR that does not recognize the CLASSTYPE object Class-Num MUST
   behave in accordance with the procedures specified in [RSVP] for an
   unknown Class-Num whose format is 0bbbbbbb (i.e., it MUST send a
   PathErr with the error code "Unknown object class" toward the
   sender).

   An LSR that recognizes the CLASSTYPE object Class-Num but that does
   not recognize the CLASSTYPE object C-Type, MUST behave in accordance
   with the procedures specified in [RSVP] for an unknown C-type (i.e.,
   it MUST send a PathErr with the error code "Unknown object C-Type"
   toward the sender).

   Both of the above situations cause the path setup to fail.  The
   sender SHOULD notify the operator/management system that an LSP
   cannot be established and might take action to retry reservation
   establishment without the CLASSTYPE object.

6.5.  Error Codes for Diffserv-aware TE

   In the procedures described above, certain errors are reported as a
   "Diffserv-aware TE Error".  The value of the "Diffserv-aware TE
   Error" error code is 28.




Le Faucheur                 Standards Track                    [Page 20]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   The following table defines error values for the Diffserv-aware TE
   Error:

      Value     Error

      1      Unexpected CLASSTYPE object
      2      Unsupported Class-Type
      3      Invalid Class-Type value
      4      Class-Type and setup priority do not form a configured
                TE-Class
      5      Class-Type and holding priority do not form a
                configured TE-Class
      6      Class-Type and setup priority do not form a configured
                TE-Class AND Class-Type and holding priority do not form
             a configured TE-Class
      7      Inconsistency between signaled PSC and signaled
                Class-Type
      8      Inconsistency between signaled PHBs and signaled
                Class-Type

   See the IANA Considerations section for allocation of additional
   values.

7.  DS-TE Support with MPLS Extensions

   There are a number of extensions to the initial base specification
   for signaling [RSVP-TE] and IGP support for TE [OSPF-TE][ISIS-TE].
   Those include enhancements for generalization ([GMPLS-SIG] and
   [GMPLS-ROUTE]), as well as for additional functionality, such as LSP
   hierarchy [HIERARCHY], link bundling [BUNDLE], and fast restoration
   [REROUTE].  These specifications may reference how to encode
   information associated with certain preemption priorities, how to
   treat LSPs at different preemption priorities, or they may otherwise
   specify encodings or behavior that have a different meaning for a
   DS-TE router.

   In order for an implementation to support both this specification for
   Diffserv-aware TE and a given MPLS enhancement, such as those listed
   above (but not limited to those), it MUST treat references to
   "preemption priority" and to "Maximum Reservable Bandwidth" in a
   generalized manner, i.e., the manner in which this specification uses
   those terms.

   Additionally, current and future MPLS enhancements may include more
   precise specification for how they interact with Diffserv-aware TE.






Le Faucheur                 Standards Track                    [Page 21]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


7.1.  DS-TE Support and References to Preemption Priority

   When a router supports both Diffserv-aware TE and one of the MPLS
   protocol extensions such as those mentioned above, encoding of values
   of preemption priority in signaling or encoding of information
   associated with preemption priorities in IGP defined for the MPLS
   extension, MUST be considered an encoding of the same information for
   the corresponding TE-Class.  For instance, if an MPLS enhancement
   specifies advertisement in IGP of a parameter for routing information
   at preemption priority N, in a DS-TE environment it MUST actually be
   interpreted as specifying advertisement of the same routing
   information but for TE-Class [N].  On receipt, DS-TE routers MUST
   also interpret it as such.

   When there is discussion on how to comparatively treat LSPs of
   different preemption priority, a DS-TE LSR MUST treat the preemption
   priorities in this context as those associated with the TE-Classes of
   the LSPs in question.

7.2.  DS-TE Support and References to Maximum Reservable Bandwidth

   When a router supports both Diffserv-aware TE and MPLS protocol
   extensions such as those mentioned above, advertisements of Maximum
   Reservable Bandwidth MUST be done with the generalized interpretation
   defined in Section 4.1.1 as the aggregate bandwidth constraint across
   all Class-Types.  It MAY also allow the optional advertisement of all
   BCs.

8.  Constraint-Based Routing

   Let us consider the case where a path needs to be computed for an LSP
   whose Class-Type is configured to CTc and whose setup preemption
   priority is configured to p.

   Then the pair of CTc and p will map to one of the TE-Classes defined
   in the TE-Class mapping.  Let us refer to this TE-Class as TE-
   Class[i].

   The Constraint-Based Routing algorithm of a DS-TE LSR is still only
   required to perform path computation satisfying a single BC which is
   to fit in "Unreserved TE-Class [i]" as advertised by the IGP for
   every link.  Thus, no changes to the existing TE Constraint-Based
   Routing algorithm itself are required.

   The Constraint-Based Routing algorithm MAY also take into account,
   when used, the optional additional information advertised in IGP such
   as the BCs and the Maximum Reservable Bandwidth.  For example, the




Le Faucheur                 Standards Track                    [Page 22]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   BCs MIGHT be used as tie-breaker criteria in situations where
   multiple paths, otherwise equally attractive, are possible.

9.  Diffserv Scheduling

   The Class-Type signaled at LSP establishment MAY optionally be used
   by DS-TE LSRs to dynamically adjust the resources allocated to the
   Class-Type by the Diffserv scheduler.  In addition, the Diffserv
   information (i.e., the PSC) signaled by the TE-LSP signaling
   protocols as specified in [DIFF-MPLS], if used, MAY optionally be
   used by DS-TE LSRs to dynamically adjust the resources allocated by
   the Diffserv scheduler to a PSC/OA within a CT.

10.  Existing TE as a Particular Case of DS-TE

   We observe that existing TE can be viewed as a particular case of
   DS-TE where:

      (i)   a single Class-Type is used,
      (ii)  all 8 preemption priorities are allowed for that Class-Type,
            and
      (iii) the following TE-Class mapping is used:
                  TE-Class[i]  <-->  < CT0 , preemption i >
                  Where 0 <= i <= 7.

   In that case, DS-TE behaves as existing TE.

   As with existing TE, the IGP advertises:
        - Unreserved Bandwidth for each of the 8 preemption priorities.

   As with existing TE, the IGP may advertise:
        - Maximum Reservable Bandwidth containing a BC applying across
          all LSPs .

   Because all LSPs transport traffic from CT0, RSVP-TE signaling is
   done without explicit signaling of the Class-Type (which is only used
   for Class-Types other than CT0, as explained in Section 6) as with
   existing TE.

11.  Computing "Unreserved TE-Class [i]" and Admission Control Rules

11.1.  Computing "Unreserved TE-Class [i]"

   We first observe that, for existing TE, details on admission control
   algorithms for TE LSPs, and consequently details on formulas for
   computing the unreserved bandwidth, are outside the scope of the
   current IETF work.  This is left for vendor differentiation.  Note
   that this does not compromise interoperability across various



Le Faucheur                 Standards Track                    [Page 23]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   implementations because the TE schemes rely on LSRs to advertise
   their local view of the world in terms of Unreserved Bw to other
   LSRs.  This way, regardless of the actual local admission control
   algorithm used on one given LSR, Constraint-Based Routing on other
   LSRs can rely on advertised information to determine whether an
   additional LSP will be accepted or rejected by the given LSR.  The
   only requirement is that an LSR advertises unreserved bandwidth
   values that are consistent with its specific local admission control
   algorithm and take into account the holding preemption priority of
   established LSPs.

   In the context of DS-TE, again, details on admission control
   algorithms are left for vendor differentiation, and formulas for
   computing the unreserved bandwidth for TE-Class[i] are outside the
   scope of this specification.  However, DS-TE places the additional
   requirement on the LSR that the unreserved bandwidth values
   advertised MUST reflect all the BCs relevant to the CT associated
   with TE-Class[i] in accordance with the Bandwidth Constraints Model.
   Thus, formulas for computing "Unreserved TE-Class [i]" depend on the
   Bandwidth Constraints Model in use and MUST reflect how BCs apply to
   CTs.  Example formulas for computing "Unreserved TE-Class [i]" Model
   are provided for the Russian Dolls Model and Maximum Allocation Model
   respectively in [DSTE-RDM] and [DSTE-MAM].

   As with existing TE, DS-TE LSRs MUST consider the holding preemption
   priority of established LSPs (as opposed to their setup preemption
   priority) for the purpose of computing the unreserved bandwidth for
   TE-Class [i].

11.2.  Admission Control Rules

   A DS-TE LSR MUST support the following admission control rule:

   Regardless of how the admission control algorithm actually computes
   the unreserved bandwidth for TE-Class[i] for one of its local links,
   an LSP of bandwidth B, of setup preemption priority p and of Class-
   Type CTc is admissible on that link if, and only if,:

        B <= Unreserved Bandwidth for TE-Class[i]

   where TE-Class [i] maps to  < CTc , p > in the TE-Class mapping
   configured on the LSR.

12.  Security Considerations

   This document does not introduce additional security threats beyond
   those described for Diffserv ([DIFF-ARCH]) and MPLS Traffic
   Engineering ([TE-REQ], [RSVP-TE], [OSPF-TE], [ISIS-TE]) and the same



Le Faucheur                 Standards Track                    [Page 24]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   security measures and procedures described in these documents apply
   here.  For example, the approach for defense against theft- and
   denial-of-service attacks discussed in [DIFF-ARCH], which consists of
   the combination of traffic conditioning at DS boundary nodes along
   with security and integrity of the network infrastructure within a
   Diffserv domain, may be followed when DS-TE is in use.  Also, as
   stated in [TE-REQ], it is specifically important that manipulation of
   administratively configurable parameters (such as those related to
   DS-TE LSPs) be executed in a secure manner by authorized entities.

13.  IANA Considerations

   This document creates two new name spaces that are to be managed by
   IANA.  Also, a number of assignments from existing name spaces have
   been made by IANA in this document.  They are discussed below.

13.1.  A New Name Space for Bandwidth Constraints Model Identifiers

   This document defines in Section 5.1 a "Bandwidth Constraints Model
   Id" field (name space) within the "Bandwidth Constraints" sub-TLV,
   both for OSPF and ISIS.  The new name space has been created by the
   IANA and they will maintain this new name space.  The field for this
   namespace is 1 octet, and IANA guidelines for assignments for this
   field are as follows:

         o values in the range 0-239 are to be assigned according to the
           "Specification Required" policy defined in [IANA-CONS].

         o values in the range 240-255 are reserved for "Private Use" as
           defined in [IANA-CONS].

13.2.  A New Name Space for Error Values under the "Diffserv-aware TE
       Error"

   An Error Code is an 8-bit quantity defined in [RSVP] that appears in
   an ERROR_SPEC object to define an error condition broadly.  With each
   Error Code there may be a 16-bit Error Value (which depends on the
   Error Code) that further specifies the cause of the error.

   This document defines in Section 6.5 a new RSVP error code, the
   "Diffserv-aware TE Error" (see Section 13.3.4).  The Error Values for
   the "Diffserv-aware TE Error" constitute a new name space to be
   managed by IANA.

   This document defines, in Section 6.5, values 1 through 7 in that
   name space (see Section 13.3.5).





Le Faucheur                 Standards Track                    [Page 25]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   Future allocations of values in this name space are to be assigned by
   IANA using the "Specification Required" policy defined in
   [IANA-CONS].

13.3.  Assignments Made in This Document

13.3.1.  Bandwidth Constraints sub-TLV for OSPF Version 2

   [OSPF-TE] creates a name space for the sub-TLV types within the "Link
   TLV" of the Traffic Engineering Link State Advertisement (LSA) and
   rules for management of this name space by IANA.

   This document defines in Section 5.1 a new sub-TLV, the "Bandwidth
   Constraints" sub-TLV, for the OSPF "Link" TLV.  In accordance with
   the IANA considerations provided in [OSPF-TE], a sub-TLV type in the
   range 10 to 32767 was requested, and the value 17 has been assigned
   by IANA for the "Bandwidth Constraints" sub-TLV.

13.3.2.  Bandwidth Constraints sub-TLV for ISIS

   [ISIS-TE] creates a name space for the sub-TLV types within the ISIS
   "Extended IS Reachability" TLV and rules for management of this name
   space by IANA.

   This document defines in Section 5.1 a new sub-TLV, the "Bandwidth
   Constraints" sub-TLV, for the ISIS "Extended IS Reachability" TLV.
   In accordance with the IANA considerations provided in [ISIS-TE], a
   sub-TLV type was requested, and the value 22 has been assigned by
   IANA for the "Bandwidth Constraints" sub-TLV.

13.3.3.  CLASSTYPE Object for RSVP

   [RSVP] defines the Class Number name space for RSVP object, which is
   managed by IANA.  Currently allocated Class Numbers are listed at
   http://www.iana.org/assignments/rsvp-parameters.

   This document defines in Section 6.2.1 a new RSVP object, the
   CLASSTYPE object.  IANA has assigned a Class Number for this RSVP
   object from the range defined in Section 3.10 of [RSVP] for objects
   that, if not understood, cause the entire RSVP message to be rejected
   with an error code of "Unknown Object Class".  Such objects are
   identified by a zero in the most significant bit of the class number
   (i.e., Class-Num = 0bbbbbbb).

   IANA assigned Class-Number 66 to the CLASSTYPE object.  C_Type 1 is
   defined in this document for the CLASSTYPE object.





Le Faucheur                 Standards Track                    [Page 26]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


13.3.4.  "Diffserv-aware TE Error" Error Code

   [RSVP] defines the Error Code name space and rules for management of
   this name space by IANA.  Currently allocated Error Codes are listed
   at http://www.iana.org/assignments/rsvp-parameters.

   This document defines in Section 6.5 a new RSVP Error Code, the
   "Diffserv-aware TE Error".  In accordance with the IANA
   considerations provided in [RSVP], Error Code 28 was assigned by IANA
   to the "Diffserv-aware TE Error".

13.3.5.  Error Values for "Diffserv-aware TE Error"

   An Error Code is an 8-bit quantity defined in [RSVP] that appears in
   an ERROR_SPEC object to define an error condition broadly.  With each
   Error Code there may be a 16-bit Error Value (which depends on the
   Error Code) that further specifies the cause of the error.

   This document defines in Section 6.5 a new RSVP error code, the
   "Diffserv-aware TE Error" (see Section 13.3.4).  The Error Values for
   the "Diffserv-aware TE Error" constitute a new name space to be
   managed by IANA.

   This document defines, in Section 6.5, the following Error Values for
   the "Diffserv-aware TE Error":

      Value     Error

      1      Unexpected CLASSTYPE object
      2      Unsupported Class-Type
      3      Invalid Class-Type value
      4      Class-Type and setup priority do not form a configured
                TE-Class
      5      Class-Type and holding priority do not form a configured
                TE-Class
      6      Class-Type and setup priority do not form a configured
                TE-Class AND Class-Type and holding priority do not
                form a configured TE-Class
      7      Inconsistency between signaled PSC and signaled
                Class-Type
      8      Inconsistency between signaled PHBs and signaled
                Class-Type

   See Section 13.2 for allocation of other values in that name space.







Le Faucheur                 Standards Track                    [Page 27]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


14.  Acknowledgements

   We thank Martin Tatham, Angela Chiu, and Pete Hicks for their earlier
   contribution in this work.  We also thank Sanjaya Choudhury for his
   thorough review and suggestions.














































Le Faucheur                 Standards Track                    [Page 28]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


Appendix A: Prediction for Multiple Path Computation

   There are situations where a head-end needs to compute paths for
   multiple LSPs over a short period of time.  There are potential
   advantages for the head-end in trying to predict the impact of the
   n-th LSP on the unreserved bandwidth when computing the path for the
   (n+1)-th LSP, before receiving updated IGP information.  For example,
   better load-distribution of the multiple LSPs would be performed
   across multiple paths.  Also, when the (n+1)-th LSP would no longer
   fit on a link after establishment of the n-th LSP, the head-end would
   avoid Connection Admission Control (CAC) rejection.  Although there
   are a number of conceivable scenarios where worse situations might
   result, doing such predictions is more likely to improve situations.
   As a matter of fact, a number of network administrators have elected
   to use such predictions when deploying existing TE.

   Such predictions are local matters, are optional, and are outside the
   scope of this specification.

   Where such predictions are not used, the optional BC sub-TLV and the
   optional Maximum Reservable Bandwidth sub-TLV need not be advertised
   in IGP for the purpose of path computation, since the information
   contained in the Unreserved Bw sub-TLV is all that is required by
   Head-Ends to perform Constraint-Based Routing.

   Where such predictions are used on head-ends, the optional BCs sub-
   TLV and the optional Maximum Reservable Bandwidth sub-TLV MAY be
   advertised in IGP.  This is in order for the head-ends to predict as
   accurately as possible how an LSP affects unreserved bandwidth values
   for subsequent LSPs.

   Remembering that actual admission control algorithms are left for
   vendor differentiation, we observe that predictions can only be
   performed effectively when the head-end LSR predictions are based on
   the same (or a very close) admission control algorithm as that used
   by other LSRs.

Appendix B: Solution Evaluation

B.1.  Satisfying Detailed Requirements

   This DS-TE Solution addresses all the scenarios presented in
   [DSTE-REQ].

   It also satisfies all the detailed requirements presented in
   [DSTE-REQ].





Le Faucheur                 Standards Track                    [Page 29]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   The objective set out in the last paragraph of Section 4.7 of
   [DSTE-REQ], "Overbooking", is only partially addressed by this DS-TE
   solution.  Through support of the "LSP size Overbooking" and "Link
   Size Overbooking" methods, this DS-TE solution effectively allows CTs
   to have different overbooking ratios and simultaneously allows
   overbooking to be tweaked differently (collectively across all CTs)
   on different links.  But, in a general sense, it does not allow the
   effective overbooking ratio of every CT to be tweaked differently in
   different parts of the network independently of other CTs, while
   maintaining accurate bandwidth accounting of how different CTs
   mutually affect each other through shared BCs (such as the Maximum
   Reservable Bandwidth).

B.2.  Flexibility

   This DS-TE solution supports 8 CTs.  It is entirely flexible as to
   how Traffic Trunks are grouped together into a CT.

B.3.  Extendibility

   A maximum of 8 CTs is considered more than comfortable by the authors
   of this document.  A maximum of 8 TE-Classes is considered sufficient
   by the authors of this document.  However, this solution could be
   extended to support more CTs or more TE-Classes if deemed necessary
   in the future; this would necessitate additional IGP extensions
   beyond those specified in this document.

   Although the prime objective of this solution is support of
   Diffserv-aware Traffic Engineering, its mechanisms are not tightly
   coupled with Diffserv.  This makes the solution amenable, or more
   easily extendable, for support of potential other future Traffic
   Engineering applications.

B.4.  Scalability

   This DS-TE solution is expected to have a very small scalability
   impact compared to that of existing TE.

   From an IGP viewpoint, the amount of mandatory information to be
   advertised is identical to that of existing TE.  One additional sub-
   TLV has been specified, but its use is optional, and it only contains
   a limited amount of static information (at most 8 BCs).

   We expect no noticeable impact on LSP Path computation because, as
   with existing TE, this solution only requires Constrained Shortest
   Path First (CSPF) to consider a single unreserved bandwidth value for
   any given LSP.




Le Faucheur                 Standards Track                    [Page 30]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   From a signaling viewpoint, we expect no significant impact due to
   this solution because it only requires processing of one additional
   item of information (the Class-Type) and does not significantly
   increase the likelihood of CAC rejection.  Note that DS-TE has some
   inherent impact on LSP signaling in that it assumes that different
   classes of traffic are split over different LSPs so that more LSPs
   need to be signaled.  However, this is due to the DS-TE concept
   itself and not to the actual DS-TE solution discussed here.

B.5.  Backward Compatibility/Migration

   This solution is expected to allow smooth migration from existing TE
   to DS-TE.  This is because existing TE can be supported as a
   particular configuration of DS-TE.  This means that an "upgraded" LSR
   with a DS-TE implementation can directly interwork with an "old" LSR
   supporting existing TE only.

   This solution is expected to allow smooth migration when the number
   of CTs actually deployed is increased, as it only requires
   configuration changes.  However, these changes need to be performed
   in a coordinated manner across the DS-TE domain.

Appendix C: Interoperability with Non-DS-TE Capable LSRs

   This DSTE solution allows operations in a hybrid network where some
   LSRs are DS-TE capable and some are not, as may occur during
   migration phases.  This appendix discusses the constraints and
   operations in such hybrid networks.

   We refer to the set of DS-TE-capable LSRs as the DS-TE domain.  We
   refer to the set of non-DS-TE-capable (but TE-capable) LSRs as the
   TE-domain.

   Hybrid operations require that the TE-Class mapping in the DS-TE
   domain be configured so that:

         - a TE-Class exists for CT0 for every preemption priority
           actually used in the TE domain, and

         - the index in the TE-class mapping for each of these TE-
           Classes is equal to the preemption priority.










Le Faucheur                 Standards Track                    [Page 31]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   For example, imagine the TE domain uses preemption 2 and 3.  Then,
   DS-TE can be deployed in the same network by including the following
   TE-Classes in the TE-Class mapping:

           i   <--->       CT      preemption
         ====================================
           2               CT0     2
           3               CT0     3

   Another way to look at this is to say that although the whole TE-
   class mapping does not have to be consistent with the TE domain, the
   subset of this TE-Class mapping applicable to CT0 effectively has to
   be consistent with the TE domain.

   Hybrid operations also require that:

         - non-DS-TE-capable LSRs be configured to advertise the Maximum
           Reservable Bandwidth, and

         - DS-TE-capable LSRs be configured to advertise BCs (using the
           Max Reservable Bandwidth sub-TLV as well as the BCs sub-TLV,
           as specified in Section 5.1).

   This allows DS-TE-capable LSRs to identify non-DS-TE-capable LSRs
   unambiguously.

   Finally, hybrid operations require that non-DS-TE-capable LSRs be
   able to accept Unreserved Bw sub-TLVs containing non decreasing
   bandwidth values (i.e., with Unreserved [p] < Unreserved [q] with p <
   q).

   In such hybrid networks, the following apply:

         - CT0 LSPs can be established by both DS-TE-capable LSRs and
           non-DS-TE-capable LSRs.

         - CT0 LSPs can transit via (or terminate at) both DS-TE-capable
           LSRs and non-DS-TE-capable LSRs.

         - LSPs from other CTs can only be established by DS-TE-capable
           LSRs.

         - LSPs from other CTs can only transit via (or terminate at)
           DS-TE-capable LSRs.







Le Faucheur                 Standards Track                    [Page 32]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   Let us consider the following example to illustrate operations:

      LSR0--------LSR1----------LSR2
           Link01       Link12

      where:
         LSR0 is a non-DS-TE-capable LSR
         LSR1 and LSR2 are DS-TE-capable LSRs

   Let's assume again that preemptions 2 and 3 are used in the TE-domain
   and that the following TE-Class mapping is configured on LSR1 and
   LSR2:
           i   <--->       CT      preemption
         ====================================
           0               CT1     0
           1               CT1     1
           2               CT0     2
           3               CT0     3
           rest            unused

   LSR0 is configured with a Max Reservable Bandwidth = m01 for Link01.
   LSR1 is configured with a BC0 = x0, a BC1 = x1 (possibly = 0), and a
   Max Reservable Bandwidth = m10 (possibly = m01) for Link01.

   In IGP for Link01, LSR0 will advertise:

         - Max Reservable Bw sub-TLV = <m01>

         - Unreserved Bw sub-TLV = <CT0/0, CT0/1, CT0/2, CT0/3, CT0/4,
           CT0/5, CT0/6, CT0/7>

   On receipt of such advertisement, LSR1 will:

         - understand that LSR0 is not DS-TE-capable because it
           advertised a Max Reservable Bw sub-TLV and no Bandwidth
           Constraints sub-TLV, and

         - conclude that only CT0 LSPs can transit via LSR0 and that
           only the values CT0/2 and CT0/3 are meaningful in the
           Unreserved Bw sub-TLV.  LSR1 may effectively behave as if the
           six other values contained in the Unreserved Bw sub-TLV were
           set to zero.









Le Faucheur                 Standards Track                    [Page 33]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   In IGP for Link01, LSR1 will advertise:

         - Max Reservable Bw sub-TLV = <m10>

         - Bandwidth Constraints sub-TLV = <BC Model ID, x0, x1>

         - Unreserved Bw sub-TLV =
           <CT1/0, CT1/1, CT0/2, CT0/3, 0, 0, 0, 0>

   On receipt of such advertisement, LSR0 will:

         - ignore the Bandwidth Constraints sub-TLV (unrecognized)

         - correctly process CT0/2 and CT0/3 in the Unreserved Bw sub-
           TLV and use these values for CTO LSP establishment

         - incorrectly believe that the other values contained in the
           Unreserved Bw sub-TLV relate to other preemption priorities
           for CT0; but it will actually never use those since we assume
           that only preemptions 2 and 3 are used in the TE domain.

Normative References

   [DSTE-REQ]    Le Faucheur, F. and W. Lai, "Requirements for Support
                 of Differentiated Services-aware MPLS Traffic
                 Engineering", RFC 3564, July 2003.

   [MPLS-ARCH]   Rosen, E., Viswanathan, A. and R. Callon,
                 "Multiprotocol Label Switching Architecture", RFC 3031,
                 January 2001.

   [TE-REQ]      Awduche, D., Malcolm, J., Agogbua, J., O'Dell, M. and
                 J. McManus, "Requirements for Traffic Engineering Over
                 MPLS", RFC 2702, September 1999.

   [OSPF-TE]     Katz, D., Kompella, K. and D. Yeung, "Traffic
                 Engineering (TE) Extensions to OSPF Version 2", RFC
                 3630, September 2003.

   [ISIS-TE]     Smit, H. and T. Li, "Intermediate System to
                 Intermediate System (IS-IS) Extensions for Traffic
                 Engineering (TE)", RFC 3784, June 2004.

   [RSVP-TE]     Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan,
                 V. and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP
                 Tunnels", RFC 3209, December 2001.





Le Faucheur                 Standards Track                    [Page 34]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   [RSVP]        Braden, R., Zhang, L., Berson, S., Herzog, S. and S.
                 Jamin, "Resource ReSerVation Protocol (RSVP) -- Version
                 1 Functional Specification", RFC 2205, September 1997.

   [DIFF-MPLS]   Le Faucheur, F., Wu, L., Davie, B., Davari, S.,
                 Vaananen, P., Krishnan, R., Cheval, P. and J. Heinanen,
                 "Multi-Protocol Label Switching (MPLS) Support of
                 Differentiated Services", RFC 3270, May 2002.

   [RFC2119]     Bradner, S., "Key words for use in RFCs to Indicate
                 Requirement Levels", BCP 14, RFC 2119, March 1997.

   [IANA-CONS]   Narten, T. and H. Alvestrand, "Guidelines for Writing
                 an IANA Considerations Section in RFCs", BCP 26, RFC
                 2434, October 1998.

Informative References

   [DIFF-ARCH]   Blake, S., Black, D., Carlson, M., Davies, E., Wang,
                 Z., and W. Weiss, "An Architecture for Differentiated
                 Service", RFC 2475, December 1998.

   [DSTE-RDM]    Le Faucheur,F., Ed., "Russian Dolls Bandwidth
                 Constraints Model for Diffserv-aware MPLS Traffic
                 Engineering", RFC 4127, June 2005.

   [DSTE-MAM]    Le Faucheur, F. and W. Lai, "Maximum Allocation
                 Bandwidth Constraints Model for Diffserv-aware Traffice
                 Engineering", RFC 4125, June 2005.

   [DSTE-MAR]    Ash, J., "Max Allocation with Reservation Bandwidth
                 Constraints Model for DiffServ-aware MPLS Traffic
                 Engineering & Performance Comparisons", RFC 4126, June
                 2005.

   [GMPLS-SIG]   Berger, L., "Generalized Multi-Protocol Label Switching
                 (GMPLS) Signaling Functional Description", RFC 3471,
                 January 2003.

   [GMPLS-ROUTE] Kompella, et al., "Routing Extensions in Support of
                 Generalized MPLS", Work in Progress.

   [BUNDLE]      Kompella, Rekhter, Berger, "Link Bundling in MPLS
                 Traffic Engineering", Work in Progress.

   [HIERARCHY]   Kompella, Rekhter, "LSP Hierarchy with Generalized MPLS
                 TE", Work in Progress.




Le Faucheur                 Standards Track                    [Page 35]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


   [REROUTE]     Pan, P., Swallow, G., and A. Atlas, "Fast Reroute
                 Extensions to RSVP-TE for LSP Tunnels", RFC 4090, May
                 2005.

Editor's Address

   Francois Le Faucheur
   Cisco Systems, Inc.
   Village d'Entreprise Green Side - Batiment T3
   400, Avenue de Roumanille
   06410 Biot-Sophia Antipolis
   France

   Phone: +33 4 97 23 26 19
   EMail: flefauch@cisco.com




































Le Faucheur                 Standards Track                    [Page 36]
^L
RFC 4124            Protocols for Diffserv-aware TE            June 2005


Full Copyright Statement

   Copyright (C) The Internet Society (2005).

   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
   ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
   INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
   INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at ietf-
   ipr@ietf.org.

Acknowledgement

   Funding for the RFC Editor function is currently provided by the
   Internet Society.







Le Faucheur                 Standards Track                    [Page 37]
^L