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
  
     | 
    
      <pre>Network Working Group                                   D. Papadimitriou
Request for Comments: 4974                                       Alcatel
Updates: <a href="./rfc3473">3473</a>                                                  A. Farrel
Category: Standards Track                             Old Dog Consulting
                                                             August 2007
         <span class="h1">Generalized MPLS (GMPLS) RSVP-TE Signaling Extensions</span>
                          <span class="h1">in Support of Calls</span>
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 IETF Trust (2007).
Abstract
   In certain networking topologies, it may be advantageous to maintain
   associations between endpoints and key transit points to support an
   instance of a service.  Such associations are known as Calls.
   A Call does not provide the actual connectivity for transmitting user
   traffic, but only builds a relationship by which subsequent
   Connections may be made.  In Generalized MPLS (GMPLS) such
   Connections are known as Label Switched Paths (LSPs).
   This document specifies how GMPLS Resource Reservation Protocol -
   Traffic Engineering (RSVP-TE) signaling may be used and extended to
   support Calls.  These mechanisms provide full and logical
   Call/Connection separation.
   The mechanisms proposed in this document are applicable to any
   environment (including multi-area), and for any type of interface:
   packet, layer-2, time-division multiplexed, lambda, or fiber
   switching.
<span class="grey">Papadimitriou & Farrel      Standards Track                     [Page 1]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-2" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
Table of Contents
   <a href="#section-1">1</a>. Introduction ....................................................<a href="#page-3">3</a>
      <a href="#section-1.1">1.1</a>. Applicability to ASON ......................................<a href="#page-4">4</a>
   <a href="#section-2">2</a>. Conventions Used in This document ...............................<a href="#page-4">4</a>
   <a href="#section-3">3</a>. Requirements ....................................................<a href="#page-4">4</a>
      <a href="#section-3.1">3.1</a>. Basic Call Function ........................................<a href="#page-4">4</a>
      <a href="#section-3.2">3.2</a>. Call/Connection Separation .................................<a href="#page-5">5</a>
      <a href="#section-3.3">3.3</a>. Call Segments ..............................................<a href="#page-5">5</a>
   <a href="#section-4">4</a>. Concepts and Terms ..............................................<a href="#page-5">5</a>
      <a href="#section-4.1">4.1</a>. What Is a Call? ............................................<a href="#page-5">5</a>
      <a href="#section-4.2">4.2</a>. A Hierarchy of Calls, Connections, Tunnels, and LSPs .......<a href="#page-6">6</a>
      <a href="#section-4.3">4.3</a>. Exchanging Access Link Capabilities ........................<a href="#page-6">6</a>
           <a href="#section-4.3.1">4.3.1</a>. Network-Initiated Calls .............................<a href="#page-7">7</a>
           <a href="#section-4.3.2">4.3.2</a>. User-Initiated Calls ................................<a href="#page-7">7</a>
           <a href="#section-4.3.3">4.3.3</a>. Utilizing Call Setup ................................<a href="#page-8">8</a>
   <a href="#section-5">5</a>. Protocol Extensions for Calls and Connections ...................<a href="#page-8">8</a>
      <a href="#section-5.1">5.1</a>. Call Setup and Teardown ....................................<a href="#page-8">8</a>
      <a href="#section-5.2">5.2</a>. Call Identification ........................................<a href="#page-9">9</a>
           <a href="#section-5.2.1">5.2.1</a>. Long Form Call Identification .......................<a href="#page-9">9</a>
           <a href="#section-5.2.2">5.2.2</a>. Short Form Call Identification ......................<a href="#page-9">9</a>
           <a href="#section-5.2.3">5.2.3</a>. Short Form Call ID Encoding ........................<a href="#page-10">10</a>
      <a href="#section-5.3">5.3</a>. LINK_CAPABILITY Object ....................................<a href="#page-11">11</a>
      <a href="#section-5.4">5.4</a>. Revised Message Formats ...................................<a href="#page-12">12</a>
           <a href="#section-5.4.1">5.4.1</a>. Notify Message .....................................<a href="#page-12">12</a>
      <a href="#section-5.5">5.5</a>. ADMIN_STATUS Object .......................................<a href="#page-13">13</a>
   <a href="#section-6">6</a>. Procedures in Support of Calls and Connections .................<a href="#page-14">14</a>
      <a href="#section-6.1">6.1</a>. Call/Connection Setup Procedures ..........................<a href="#page-14">14</a>
      <a href="#section-6.2">6.2</a>. Call Setup ................................................<a href="#page-14">14</a>
           <a href="#section-6.2.1">6.2.1</a>. Accepting Call Setup ...............................<a href="#page-16">16</a>
           <a href="#section-6.2.2">6.2.2</a>. Call Setup Failure and Rejection ...................<a href="#page-16">16</a>
      <a href="#section-6.3">6.3</a>. Adding a Connections to a Call ............................<a href="#page-17">17</a>
           <a href="#section-6.3.1">6.3.1</a>. Adding a Reverse Direction LSP to a Call ...........<a href="#page-18">18</a>
      <a href="#section-6.4">6.4</a>. Call-Free Connection Setup ................................<a href="#page-18">18</a>
      <a href="#section-6.5">6.5</a>. Call Collision ............................................<a href="#page-18">18</a>
      <a href="#section-6.6">6.6</a>. Call/Connection Teardown ..................................<a href="#page-19">19</a>
           <a href="#section-6.6.1">6.6.1</a>. Removal of a Connection from a Call ................<a href="#page-20">20</a>
           <a href="#section-6.6.2">6.6.2</a>. Removal of the Last Connection from a Call .........<a href="#page-20">20</a>
           <a href="#section-6.6.3">6.6.3</a>. Teardown of an "Empty" Call ........................<a href="#page-20">20</a>
           6.6.4. Attempted Teardown of a Call with Existing
                  Connections ........................................<a href="#page-20">20</a>
           <a href="#section-6.6.5">6.6.5</a>. Teardown of a Call from the Egress .................<a href="#page-21">21</a>
      <a href="#section-6.7">6.7</a>. Control Plane Survivability ...............................<a href="#page-21">21</a>
   <a href="#section-7">7</a>. Applicability of Call and Connection Procedures ................<a href="#page-22">22</a>
      <a href="#section-7.1">7.1</a>. Network-Initiated Calls ...................................<a href="#page-22">22</a>
      <a href="#section-7.2">7.2</a>. User-Initiated Calls ......................................<a href="#page-23">23</a>
      <a href="#section-7.3">7.3</a>. External Call Managers ....................................<a href="#page-23">23</a>
           <a href="#section-7.3.1">7.3.1</a>. Call Segments ......................................<a href="#page-23">23</a>
<span class="grey">Papadimitriou & Farrel      Standards Track                     [Page 2]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-3" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   <a href="#section-8">8</a>. Non-Support of Call ID .........................................<a href="#page-24">24</a>
      <a href="#section-8.1">8.1</a>. Non-Support by External Call Managers .....................<a href="#page-24">24</a>
      <a href="#section-8.2">8.2</a>. Non-Support by Transit Node ...............................<a href="#page-24">24</a>
      <a href="#section-8.3">8.3</a>. Non-Support by Egress Node ................................<a href="#page-25">25</a>
   <a href="#section-9">9</a>. Security Considerations ........................................<a href="#page-25">25</a>
      <a href="#section-9.1">9.1</a>. Call and Connection Security Considerations ...............<a href="#page-25">25</a>
   <a href="#section-10">10</a>. IANA Considerations ...........................................<a href="#page-26">26</a>
      <a href="#section-10.1">10.1</a>. RSVP Objects .............................................<a href="#page-26">26</a>
      <a href="#section-10.2">10.2</a>. RSVP Error Codes and Error Values ........................<a href="#page-27">27</a>
      <a href="#section-10.3">10.3</a>. RSVP ADMIN_STATUS Object Bits ............................<a href="#page-27">27</a>
   <a href="#section-11">11</a>. Acknowledgements ..............................................<a href="#page-27">27</a>
   <a href="#section-12">12</a>. References ....................................................<a href="#page-28">28</a>
      <a href="#section-12.1">12.1</a>. Normative References .....................................<a href="#page-28">28</a>
      <a href="#section-12.2">12.2</a>. Informative References ...................................<a href="#page-29">29</a>
<span class="h2"><a class="selflink" id="section-1" href="#section-1">1</a>.  Introduction</span>
   This document defines protocol procedures and extensions to support
   Calls within Generalized MPLS (GMPLS).
   A Call is an association between endpoints and possibly between key
   transit points (such as network boundaries) in support of an instance
   of a service.  The end-to-end association is termed a "Call", and the
   association between two transit points or between an endpoint and a
   transit point is termed a "Call Segment".  An entity that processes a
   Call or Call Segment is called a "Call Manager".
   A Call does not provide the actual connectivity for transmitting user
   traffic, but only builds a relationship by which subsequent
   Connections may be made.  In GMPLS, such Connections are known as
   Label Switched Paths (LSPs).  This document does not modify
   Connection setup procedures defined in [<a href="./rfc3473" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions"">RFC3473</a>], [<a href="./rfc4208" title=""Generalized Multiprotocol Label Switching (GMPLS) User- Network Interface (UNI): Resource ReserVation Protocol- Traffic Engineering (RSVP-TE) Support for the Overlay Model"">RFC4208</a>], and
   [<a href="#ref-STITCH" title=""Label Switched Path Stitching with Generalized Multiprotocol Label Switching Traffic Engineering (GMPLS TE)"">STITCH</a>].  Connections set up as part of a Call follow the rules
   defined in these documents.
   A Call may be associated with zero, one, or more than one Connection,
   and a Connection may be associated with zero or one Call.  Thus, full
   and logical Call/Connection separation is needed.
   An example of the requirements for Calls can be found in the ITU-T's
   Automatically Switched Optical Network (ASON) architecture [<a href="#ref-G.8080" title=""Architecture for the Automatically Switched Optical Network (ASON),"">G.8080</a>]
   and specific requirements for support of Calls in this context can be
   found in [<a href="./rfc4139" title=""Requirements for Generalized MPLS (GMPLS) Signaling Usage and Extensions for Automatically Switched Optical Network (ASON)"">RFC4139</a>].  Note, however, that while the mechanisms
   described in this document meet the requirements stated in [<a href="./rfc4139" title=""Requirements for Generalized MPLS (GMPLS) Signaling Usage and Extensions for Automatically Switched Optical Network (ASON)"">RFC4139</a>],
   they have wider applicability.
<span class="grey">Papadimitriou & Farrel      Standards Track                     [Page 3]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-4" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   The mechanisms defined in this document are equally applicable to any
   packet (PSC) interface, layer-2 interfaces (L2SC), TDM capable
   interfaces, LSC interfaces, or FSC interfaces.  The mechanisms and
   protocol extensions are backward compatible, and can be used for Call
   management where only the Call Managers need to be aware of the
   protocol extensions.
<span class="h3"><a class="selflink" id="section-1.1" href="#section-1.1">1.1</a>.  Applicability to ASON</span>
   [<a id="ref-RFC4139">RFC4139</a>] details the requirements on GMPLS signaling to satisfy the
   ASON architecture described in [<a href="#ref-G.8080" title=""Architecture for the Automatically Switched Optical Network (ASON),"">G.8080</a>].  The mechanisms described in
   this document meet the requirements for Calls as described in
   Sections <a href="#section-4.2">4.2</a> and <a href="#section-4.3">4.3</a> of [<a href="./rfc4139" title=""Requirements for Generalized MPLS (GMPLS) Signaling Usage and Extensions for Automatically Switched Optical Network (ASON)"">RFC4139</a>] and the additional Call-related
   requirements in Sections <a href="#section-4.4">4.4</a>, <a href="#section-4.7">4.7</a>, <a href="#section-5">5</a>, and <a href="#section-6">6</a> of [<a href="./rfc4139" title=""Requirements for Generalized MPLS (GMPLS) Signaling Usage and Extensions for Automatically Switched Optical Network (ASON)"">RFC4139</a>].
   [<a id="ref-ASON-APPL">ASON-APPL</a>] describes the applicability of GMPLS protocols to the
   ASON architecture.
<span class="h2"><a class="selflink" id="section-2" href="#section-2">2</a>.  Conventions Used in This document</span>
   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 [<a href="./rfc2119" title=""Key words for use in RFCs to Indicate Requirement Levels"">RFC2119</a>].
   In addition, the reader is assumed to be familiar with the
   terminology used in [<a href="./rfc3471" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description"">RFC3471</a>], [<a href="./rfc3473" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions"">RFC3473</a>], [<a href="./rfc3477" title=""Signalling Unnumbered Links in Resource ReSerVation Protocol - Traffic Engineering (RSVP-TE)"">RFC3477</a>], and [<a href="./rfc3945" title=""Generalized Multi-Protocol Label Switching (GMPLS) Architecture"">RFC3945</a>].
<span class="h2"><a class="selflink" id="section-3" href="#section-3">3</a>.  Requirements</span>
<span class="h3"><a class="selflink" id="section-3.1" href="#section-3.1">3.1</a>.  Basic Call Function</span>
   The Call concept is used to deliver the following capabilities:
   -  Verification and identification of the Call initiator (prior to
      LSP setup).
   -  Support of virtual concatenation with diverse path component LSPs.
   -  Association of multiple LSPs with a single Call (note aspects
      related to recovery are detailed in [<a href="./rfc4426" title=""Generalized Multi-Protocol Label Switching (GMPLS) Recovery Functional Specification"">RFC4426</a>] and [<a href="#ref-GMPLS-E2E" title=""RSVP-TE Extensions in Support of End-to-End Generalized Multi-Protocol Label Switching (GMPLS) Recovery"">GMPLS-E2E</a>]).
   -  Facilitation of control plane operations by allowing an
      operational status change of the associated LSP.
   Procedures and protocol extensions to support Call setup, and the
   association of Calls with Connections are described in <a href="#section-5">Section 5</a> and
   onwards of this document.
<span class="grey">Papadimitriou & Farrel      Standards Track                     [Page 4]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-5" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
<span class="h3"><a class="selflink" id="section-3.2" href="#section-3.2">3.2</a>.  Call/Connection Separation</span>
   Full and logical Call and Connection separation is required.  That
   is:
   -  It MUST be possible to establish a Connection without dependence
      on a Call.
   -  It MUST be possible to establish a Call without any associated
      Connections.
   -  It MUST be possible to associate more than one Connection with a
      Call.
   -  Removal of the last Connection associated with a Call SHOULD NOT
      result in the automatic removal of the Call except as a matter of
      local policy at the ingress of the Call.
   -  Signaling of a Connection associated with a Call MUST NOT require
      the distribution or retention of Call-related information (state)
      within the network.
<span class="h3"><a class="selflink" id="section-3.3" href="#section-3.3">3.3</a>.  Call Segments</span>
   Call Segment capabilities MUST be supported.
   Procedures and (GMPLS) RSVP-TE signaling protocol extensions to
   support Call Segments are described in <a href="#section-7.3.1">Section 7.3.1</a> of this
   document.
<span class="h2"><a class="selflink" id="section-4" href="#section-4">4</a>. Concepts and Terms</span>
   The concept of a Call and a Connection are also discussed in the ASON
   architecture [<a href="#ref-G.8080" title=""Architecture for the Automatically Switched Optical Network (ASON),"">G.8080</a>] and [<a href="./rfc4139" title=""Requirements for Generalized MPLS (GMPLS) Signaling Usage and Extensions for Automatically Switched Optical Network (ASON)"">RFC4139</a>].  This section is not intended as
   a substitute for those documents, but is a brief summary of the key
   terms and concepts.
<span class="h3"><a class="selflink" id="section-4.1" href="#section-4.1">4.1</a>.  What Is a Call?</span>
   A Call is an agreement between endpoints possibly in cooperation with
   the nodes that provide access to the network.  Call setup may include
   capability exchange, policy, authorization, and security.
   A Call is used to facilitate and manage a set of Connections that
   provide end-to-end data services.  While Connections require state to
   be maintained at nodes along the data path within the network, Calls
   do not involve the participation of transit nodes except to forward
   the Call management requests as transparent messages.
<span class="grey">Papadimitriou & Farrel      Standards Track                     [Page 5]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-6" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   A Call may be established and maintained independently of the
   Connections that it supports.
<span class="h3"><a class="selflink" id="section-4.2" href="#section-4.2">4.2</a>.  A Hierarchy of Calls, Connections, Tunnels, and LSPs</span>
   Clearly, there is a hierarchical relationship between Calls and
   Connections.  One or more Connections may be associated with a Call.
   A Connection may not be part of more than one Call.  A Connection
   may, however, exist without a Call.
   In GMPLS RSVP-TE [<a href="./rfc3473" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions"">RFC3473</a>], a Connection is identified with a GMPLS
   TE Tunnel.  Commonly, a Tunnel is identified with a single LSP, but
   it should be noted that for protection, load balancing, and many
   other functions, a Tunnel may be supported by multiple parallel LSPs.
   The following identification reproduces this hierarchy.
   -  Call IDs are unique within the context of the pair of addresses
      that are the source and destination of the Call.
   -  Tunnel IDs are unique within the context of the Session (that is
      the destination of the Tunnel).  Applications may also find it
      convenient to keep the Tunnel ID unique within the context of a
      Call.
   -  LSP IDs are unique within the context of a Tunnel.
   Note that the Call_ID value of zero is reserved and MUST NOT be used
   during LSP-independent Call establishment.
   Throughout the remainder of this document, the terms LSP and Tunnel
   are used interchangeably with the term Connection.  The case of a
   Tunnel that is supported by more than one LSP is covered implicitly.
<span class="h3"><a class="selflink" id="section-4.3" href="#section-4.3">4.3</a>.  Exchanging Access Link Capabilities</span>
   In an overlay model, it is useful for the ingress node of an LSP to
   know the link capabilities of the link between the network and the
   remote overlay network.  In the language of [<a href="./rfc4208" title=""Generalized Multiprotocol Label Switching (GMPLS) User- Network Interface (UNI): Resource ReserVation Protocol- Traffic Engineering (RSVP-TE) Support for the Overlay Model"">RFC4208</a>], the ingress
   node can make use of information about the link between the egress
   core node (CN) and the remote edge node (EN).  We call this link the
   egress network link.  This information may allow the ingress node to
   tailor its LSP request to fit those capabilities and to better
   utilize network resources with regard to those capabilities.
   For example, this might be used in transparent optical networks to
   supply information on lambda availability on egress network links,
   or, where the egress CN is capable of signal regeneration, it might
   provide a mechanism for negotiating signal quality attributes (such
<span class="grey">Papadimitriou & Farrel      Standards Track                     [Page 6]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-7" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   as bit error rate).  Similarly, in multi-domain routing environments,
   it could be used to provide end-to-end selection of component links
   (i.e., spatial attribute negotiation) where TE links have been
   bundled based on technology specific attributes.
   In some circumstances, the Traffic Engineering Database (TED) may
   contain sufficient information for decisions to be made about which
   egress network link to use.  In other circumstances, the TED might
   not contain this information and Call setup may provide a suitable
   mechanism to exchange information for this purpose.  The Call-
   responder may use the Call parameters to select a subset of the
   available egress network links between the egress CN and the remote
   EN, and may report these links and their capabilities on the Call
   response so that the Call-initiator may select a suitable link.
   The sections that follow indicate the cases where the TED may be
   used, and those where Call parameter exchange may be appropriate.
<span class="h4"><a class="selflink" id="section-4.3.1" href="#section-4.3.1">4.3.1</a>.  Network-Initiated Calls</span>
   Network-initiated Calls arise when the ingress (and correspondingly
   the egress) lie within the network and there may be no need to
   distribute additional link capability information over and above the
   information distributed by the TE and GMPLS extensions to the IGP.
   Further, it is possible that future extensions to these IGPs will
   allow the distribution of more detailed information including optical
   impairments.
<span class="h4"><a class="selflink" id="section-4.3.2" href="#section-4.3.2">4.3.2</a>.  User-Initiated Calls</span>
   User-initiated Calls arise when the ingress (and correspondingly the
   egress) lie outside the network.  Edge link information may not be
   visible within the core network, nor (and specifically) at other edge
   nodes.  This may prevent an ingress from requesting suitable LSP
   characteristics to ensure successful LSP setup.
   Various solutions to this problem exist, including the definition of
   static TE links (that is, not advertised by a routing protocol)
   between the CNs and ENs.  Nevertheless, special procedures may be
   necessary to advertise to the edge nodes outside of the network
   information about egress network links without also advertising the
   information specific to the contents of the network.
   In the future, when the requirements on the information that needs to
   be supported are better understood, TE extensions to EGPs may be
   defined to provide this function, and new rules for leaking TE
   information between routing instances may be used.
<span class="grey">Papadimitriou & Farrel      Standards Track                     [Page 7]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-8" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
<span class="h4"><a class="selflink" id="section-4.3.3" href="#section-4.3.3">4.3.3</a>.  Utilizing Call Setup</span>
   When IGP and EGP solutions are not available at the User-to-Network
   Interface (UNI), there is still a requirement to have the knowledge
   of the remote edge link capabilities at the local edge nodes.
   The Call setup procedure provides an opportunity to discover edge
   link capabilities of remote edge nodes before LSP setup is attempted.
   -  The Call-responder can return information on one or more egress
      network links.  The Call-responder could return a full list of the
      available links with information about the link capabilities, or
      it could filter the list to return information about only those
      links that might be appropriate to support the Connections needed
      by the Call.  To do this second option, the Call-responder must
      determine such appropriate links from information carried in the
      Call request including destination of the Call, and the level of
      service (bandwidth, protection, etc.) required.
   -  On receiving a Call response, the Call-initiator must determine
      paths for the Connections (LSPs) that it will set up.  The way
      that it does this is out of scope for this document since it is an
      implementation-specific, algorithmic process.  However, it can
      take as input the information about the available egress network
      links as supplied in the Call response.
   The LINK_CAPABILITY object is defined to allow this information to be
   exchanged.  The information that is included in this object is
   similar to that distributed by GMPLS-capable IGPs (see [<a href="./rfc4202" title=""Routing Extensions in Support of Generalized Multi-Protocol Label Switching (GMPLS)"">RFC4202</a>]).
<span class="h2"><a class="selflink" id="section-5" href="#section-5">5</a>.  Protocol Extensions for Calls and Connections</span>
   This section describes the protocol extensions needed in support of
   Call identification and management of Calls and Connections.
   Procedures for the use of these protocol extensions are described in
   <a href="#section-6">Section 6</a>.
<span class="h3"><a class="selflink" id="section-5.1" href="#section-5.1">5.1</a>.  Call Setup and Teardown</span>
   Calls are established independently of Connections through the use of
   the Notify message.  The Notify message is a targeted message and
   does not need to follow the path of LSPs through the network.
   Simultaneous Call and Connection establishment (sometimes referred to
   as piggybacking) is not supported.
<span class="grey">Papadimitriou & Farrel      Standards Track                     [Page 8]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-9" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
<span class="h3"><a class="selflink" id="section-5.2" href="#section-5.2">5.2</a>.  Call Identification</span>
   As soon as the concept of a Call is introduced, it is necessary to
   support some means of identifying the Call.  This becomes
   particularly important when Calls and Connections are separated and
   Connections must contain some reference to the Call.
   A Call may be identified by a sequence of bytes that may have
   considerable (but not arbitrary) length.  A Call ID of 40 bytes would
   not be unreasonable.  It is not the place of this document to supply
   rules for encoding or parsing Call IDs, but it must provide a
   suitable means to communicate Call IDs within the protocol.  The full
   Call identification is referred to as the long Call ID.
   The Call_ID is only relevant at the sender and receiver nodes.
   Maintenance of this information in the signaling state is not
   mandated at any intermediate node.  Thus, no change in [<a href="./rfc3473" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions"">RFC3473</a>]
   transit implementations is required and there are no backward
   compatibility issues.  Forward compatibility is maintained by using
   the existing default values to indicate that no Call processing is
   required.
   Further, the long Call ID is not required as part of the Connection
   (LSP) state even at the sender and receiver nodes so long as some
   form of correlation is available.  This correlation is provided
   through the short Call ID.
<span class="h4"><a class="selflink" id="section-5.2.1" href="#section-5.2.1">5.2.1</a>.  Long Form Call Identification</span>
   The long Call ID is only required on the Notify message used to
   establish the Call.  It is carried in the "Session Name" field of the
   SESSION_ATTRIBUTE object on the Notify message.
   A unique value per Call is inserted in the "Session Name" field by
   the initiator of the Call.  Subsequent core nodes MAY inspect this
   object and MUST forward this object transparently across network
   interfaces until reaching the egress node.  Note that the structure
   of this field MAY be the object of further formatting depending on
   the naming convention(s).  However, [<a href="./rfc3209" title=""RSVP-TE: Extensions to RSVP for LSP Tunnels"">RFC3209</a>] defines the "Session
   Name" field as a Null padded display string, so any formatting
   conventions for the Call ID must be limited to this scope.
<span class="h4"><a class="selflink" id="section-5.2.2" href="#section-5.2.2">5.2.2</a>.  Short Form Call Identification</span>
   The Connections (LSPs) associated with a Call need to carry a
   reference to the Call - the short Call ID.  A new field is added to
   the signaling protocol to identify an individual LSP with the Call to
   which it belongs.
<span class="grey">Papadimitriou & Farrel      Standards Track                     [Page 9]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-10" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   The new field is a 16-bit identifier (unique within the context of
   the address pairing provided by the Tunnel_End_Point_Address and the
   Sender_Address of the SENDER_TEMPLATE object) that MUST be exchanged
   on the Notify message during Call initialization and is used on all
   subsequent LSP messages that are associated with the Call.  This
   identifier is known as the short Call ID and is encoded as described
   in <a href="#section-5.2.3">Section 5.2.3</a>.  The Call ID MUST NOT be used as part of the
   processing to determine the session to which an RSVP signaling
   message applies.  This does not generate any backward compatibility
   issue since the reserved field of the SESSION object defined in
   [<a href="./rfc3209" title=""RSVP-TE: Extensions to RSVP for LSP Tunnels"">RFC3209</a>] MUST NOT be examined on receipt.
   In the unlikely case of short Call_ID exhaustion, local node policy
   decides upon specific actions to be taken, but might include the use
   of second Sender_Address.  Local policy details are outside of the
   scope of this document.
<span class="h4"><a class="selflink" id="section-5.2.3" href="#section-5.2.3">5.2.3</a>.  Short Form Call ID Encoding</span>
   The short Call ID is carried in a 16-bit field in the SESSION object
   carried on the Notify message used during Call setup, and on all
   messages during LSP setup and management.  The field used was
   previously reserved (MUST be set to zero on transmission and ignored
   on receipt).  This ensures backward compatibility with nodes that do
   not utilize Calls.
   The figure below shows the new version of the object.
   Class = SESSION, Class-Num = 1, C-Type = 7(IPv4)/8(IPv6)
       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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      ~               IPv4/IPv6 Tunnel End Point Address              ~
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |            Call_ID            |           Tunnel ID           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                       Extended Tunnel ID                      |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   IPv4/IPv6 Tunnel End Point Address: 32 bits/128 bits (see [<a href="./rfc3209" title=""RSVP-TE: Extensions to RSVP for LSP Tunnels"">RFC3209</a>])
   Call_ID: 16 bits
      A 16-bit identifier used in the SESSION object that remains
      constant over the life of the Call.  The Call_ID value MUST be set
      to zero when there is no corresponding Call.
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 10]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-11" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   Tunnel ID: 16 bits (see [<a href="./rfc3209" title=""RSVP-TE: Extensions to RSVP for LSP Tunnels"">RFC3209</a>])
   Extended Tunnel ID: 32 bits/128 bits (see [<a href="./rfc3209" title=""RSVP-TE: Extensions to RSVP for LSP Tunnels"">RFC3209</a>])
<span class="h3"><a class="selflink" id="section-5.3" href="#section-5.3">5.3</a>.  LINK_CAPABILITY Object</span>
   The LINK_CAPABILITY object is introduced to support link capability
   exchange during Call setup and MAY be included in a Notify message
   used for Call setup.  This optional object includes the link-local
   capabilities of a link joining the Call-initiating node (or Call-
   terminating node) to the network.  The specific node is indicated by
   the source address of the Notify message.
   The link reported can be a single link or can be a bundled link
   [<a href="./rfc4201" title=""Link Bundling in MPLS Traffic Engineering (TE)"">RFC4201</a>].
   The Class Number is selected so that the nodes that do not recognize
   this object drop it silently.  That is, the top bit is set and the
   next bit is clear.
   This object has the following format:
   Class-Num = 133 (form 10bbbbbb), C_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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                                                               |
      //                        (Subobjects)                         //
      |                                                               |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   The contents of the LINK_CAPABILITY object is defined as a series of
   variable-length data items called subobjects.  The subobject format
   is defined in [<a href="./rfc3209" title=""RSVP-TE: Extensions to RSVP for LSP Tunnels"">RFC3209</a>].
   The following subobjects are currently defined.
   -  Type 1: the link local IPv4 address of a link or a numbered bundle
      using the format defined in [<a href="./rfc3209" title=""RSVP-TE: Extensions to RSVP for LSP Tunnels"">RFC3209</a>].
   -  Type 2: the link local IPv6 address of a link or a numbered bundle
      using the format defined in [<a href="./rfc3209" title=""RSVP-TE: Extensions to RSVP for LSP Tunnels"">RFC3209</a>].
   -  Type 4: the link local identifier of an unnumbered link or bundle
      using the format defined in [<a href="./rfc3477" title=""Signalling Unnumbered Links in Resource ReSerVation Protocol - Traffic Engineering (RSVP-TE)"">RFC3477</a>].
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 11]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-12" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   -  Type 64: the Maximum Reservable Bandwidth corresponding to this
      link or bundle (see [<a href="./rfc4201" title=""Link Bundling in MPLS Traffic Engineering (TE)"">RFC4201</a>]).
   -  Type 65: the interface switching capability descriptor (see
      [<a href="./rfc4202" title=""Routing Extensions in Support of Generalized Multi-Protocol Label Switching (GMPLS)"">RFC4202</a>]) corresponding to this link or bundle (see also
      [<a href="./rfc4201" title=""Link Bundling in MPLS Traffic Engineering (TE)"">RFC4201</a>]).
   Note: future revisions of this document may extend the above list.
   A single instance of this object MAY be used to exchange capability
   information relating to more than one link or bundled link.  In this
   case, the following ordering MUST be used:
   -  each link MUST be identified by an identifier subobject (Type 1,
      2, or 4)
   -  capability subobjects (Type 64 or 65, and future subobjects) MUST
      be placed after the identifier subobject for the link or bundle to
      which they refer.
   Multiple instances of the LINK_CAPABILITY object within the same
   Notify message are not supported by this specification.  In the event
   that a Notify message contains multiple LINK_CAPABILITY objects, the
   receiver SHOULD process the first one as normal and SHOULD ignore
   subsequent instances of the object.
<span class="h3"><a class="selflink" id="section-5.4" href="#section-5.4">5.4</a>.  Revised Message Formats</span>
   The Notify message is enhanced to support Call establishment and
   teardown of Calls.  See <a href="#section-6">Section 6</a> for a description of the
   procedures.
<span class="h4"><a class="selflink" id="section-5.4.1" href="#section-5.4.1">5.4.1</a>.  Notify Message</span>
   The Notify message is modified in support of Call establishment by
   the optional addition of the LINK_CAPABILITY object.  Further, the
   SESSION_ATTRIBUTE object is added to the <notify session> sequence to
   carry the long Call ID.  The presence of the SESSION_ATTRIBUTE object
   MAY be used to distinguish a Notify message used for Call management,
   but see <a href="#section-5.5">Section 5.5</a> for another mechanism.  The <notify session list>
   MAY be used to simultaneously set up multiple Calls.
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 12]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-13" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   The format of the Notify Message is as follows:
   <Notify message>  ::= <Common Header> [ <INTEGRITY> ]
                         [[ <MESSAGE_ID_ACK> | <MESSAGE_ID_NACK>]...]
                         [ <MESSAGE_ID> ]
                         <ERROR_SPEC>
                         <notify session list>
   <notify session list> ::= [ <notify session list> ] <notify session>
   <notify session>  ::= <SESSION> [ <ADMIN_STATUS> ]
                         [ <POLICY_DATA>...]
                         [ <LINK_CAPABILITY> ]
                         [ <SESSION_ATTRIBUTE> ]
                         [ <sender descriptor> | <flow descriptor> ]
   <sender descriptor> ::= see [<a href="./rfc3473" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions"">RFC3473</a>]
   <flow descriptor> ::= see [<a href="./rfc3473" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions"">RFC3473</a>]
<span class="h3"><a class="selflink" id="section-5.5" href="#section-5.5">5.5</a>.  ADMIN_STATUS Object</span>
   Notify messages exchanged for Call control and management purposes
   carry a specific new bit (the Call Management or C bit) in the
   ADMIN_STATUS object.
   [<a id="ref-RFC3473">RFC3473</a>] indicates that the format and contents of the ADMIN_STATUS
   object are as defined in [<a href="./rfc3471" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description"">RFC3471</a>].  The new "C" bit is added for
   Call control as shown below.
       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |R|                        Reserved                     |C|T|A|D|
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
         Reflect (R): 1 bit - see [<a href="./rfc3471" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description"">RFC3471</a>]
         Testing (T): 1 bit - see [<a href="./rfc3471" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description"">RFC3471</a>]
         Administratively down (A): 1 bit - see [<a href="./rfc3471" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description"">RFC3471</a>]
         Deletion in progress (D): 1 bit - see [<a href="./rfc3471" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description"">RFC3471</a>]
         Call Management (C): 1 bit
            This bit is set when the message is being used to control
            and manage a Call.
   The procedures for the use of the C bit are described in <a href="#section-6">Section 6</a>.
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 13]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-14" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
<span class="h2"><a class="selflink" id="section-6" href="#section-6">6</a>.  Procedures in Support of Calls and Connections</span>
<span class="h3"><a class="selflink" id="section-6.1" href="#section-6.1">6.1</a>.  Call/Connection Setup Procedures</span>
   This section describes the processing steps for Call and Connection
   setup.
   There are three cases considered:
   -  A Call is set up without any associated Connection.  It is assumed
      that Connections will be added to the Call at a later time, but
      this is neither a requirement nor a constraint.
   -  A Connection may be added to an existing Call.  This may happen if
      the Call was set up without any associated Connections, or if
      another Connection is added to a Call that already has one or more
      associated Connections.
   -  A Connection may be established without any reference to a Call
      (see <a href="#section-6.4">Section 6.4</a>).  This encompasses the previous LSP setup
      procedure.
   Note that a Call MUST NOT be imposed upon a Connection that is
   already established.  To do so would require changing the short Call
   ID in the SESSION object of the existing LSPs and this would
   constitute a change in the Session Identifier.  This is not allowed
   by existing protocol specifications.
   Call and Connection teardown procedures are described later in
   <a href="#section-6.6">Section 6.6</a>.
<span class="h3"><a class="selflink" id="section-6.2" href="#section-6.2">6.2</a>.  Call Setup</span>
   A Call is set up before, and independent of, LSP (i.e., Connection)
   setup.
   Call setup MAY necessitate verification of the link status and link
   capability negotiation between the Call ingress node and the Call
   egress node.  The procedure described below is applied only once for
   a Call and hence only once for the set of LSPs associated with a
   Call.
   The Notify message (see [<a href="./rfc3473" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions"">RFC3473</a>]) is used to signal the Call setup
   request and response.  The new Call Management (C) bit in the
   ADMIN_STATUS object is used to indicate that this Notify is managing
   a Call.  The Notify message is sent with source and destination
   IPv4/IPv6 addresses set to any of the routable ingress/egress node
   addresses respectively.
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 14]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-15" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   At least one session MUST be listed in the <notify session list> of
   the Notify message.  In order to allow for long identification of the
   Call, the SESSION_ATTRIBUTE object is added as part of the <notify
   session list>.  Note that the ERROR_SPEC object is not relevant in
   Call setup and MUST carry the Error Code zero ("Confirmation") to
   indicate that there is no error.
   During Call setup, the ADMIN_STATUS object is sent with the following
   bits set.  Bits not listed MUST be set to zero.
   R - to cause the egress to respond
   C - to indicate that the Notify message is managing a Call.
   The SESSION, SESSION_ATTRIBUTE, SENDER_TEMPLATE, SENDER_TSPEC objects
   included in the <notify session> of the Notify message are built as
   follows.
   -  The SESSION object includes as Tunnel_End_Point_Address any of the
      Call-terminating (egress) node's IPv4/IPv6 routable addresses.
      The Call_ID is set to a non-zero value unique within the context
      of the address pairing provided by the Tunnel_End_Point_Address
      and the Sender_Address from the SENDER_TEMPLATE object (see
      below).  This value will be used as the short Call ID carried on
      all messages for LSPs associated with this Call.
      Note that the Call_ID value of zero is reserved and MUST NOT be
      used since it will be present in SESSION objects of LSPs that are
      not associated with Calls.  The Tunnel_ID of the SESSION object is
      not relevant for this procedure and SHOULD be set to zero.  The
      Extended_Tunnel_ID of the SESSION object is not relevant for this
      procedure and MAY be set to zero or to an address of the ingress
      node.
   -  The SESSION_ATTRIBUTE object contains priority flags.  Currently
      no use of these flags is envisioned, however, future work may
      identify value in assigning priorities to Calls; accordingly the
      Priority fields MAY be set to non-zero values.  None of the Flags
      in the SESSION_ATTRIBUTE object is relevant to this process and
      this field SHOULD be set to zero.  The Session Name field is used
      to carry the long Call Id as described in <a href="#section-5">Section 5</a>.
   -  The SENDER_TEMPLATE object includes as Sender Address any of the
      Call-initiating (ingress) node's IPv4/IPv6 routable addresses.
      The LSP_ID is not relevant and SHOULD be set to zero.
   -  The bandwidth value inserted in the SENDER_TSPEC and FLOWSPEC
      objects MUST be ignored upon receipt and SHOULD be set to zero
      when sent.
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 15]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-16" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   Additionally, ingress/egress nodes that need to communicate their
   respective link local capabilities may include a LINK_CAPABILITY
   object in the Notify message.
   The receiver of a Notify message may identify whether it is part of
   Call management or reporting an error by the presence or absence of
   the SESSION_ATTRIBUTE object in the <notify session list>.  Full
   clarity, however, may be achieved by inspection of the new Call
   Management (C) bit in the ADMIN_STATUS object.
   Note that the POLICY_DATA object may be included in the <notify
   session list> and MAY be used to identify requestor credentials,
   account numbers, limits, quotas, etc.  This object is opaque to RSVP,
   which simply passes it to policy control when required.
   Message IDs MUST be used during Call setup.
<span class="h4"><a class="selflink" id="section-6.2.1" href="#section-6.2.1">6.2.1</a>.  Accepting Call Setup</span>
   A node that receives a Notify message carrying the ADMIN_STATUS
   object with the R and C bits set is being requested to set up a Call.
   The receiver MAY perform authorization and policy according to local
   requirements.
   If the Call is acceptable, the receiver responds with a Notify
   message reflecting the information from the Call request with two
   exceptions.
   -  The responder removes any LINK_CAPABLITY object that was received
      and MAY insert a LINK_CAPABILITY object that describes its own
      access link.
   -  The ADMIN_STATUS object is sent with only the C bit set.  All
      other bits MUST be set to zero.
   The responder MUST use the Message ID object to ensure reliable
   delivery of the response.  If no Message ID Acknowledgement is
   received after the configured number of retries, the responder SHOULD
   continue to assume that the Call was successfully established.  Call
   liveliness procedures are covered in <a href="#section-6.7">Section 6.7</a>.
<span class="h4"><a class="selflink" id="section-6.2.2" href="#section-6.2.2">6.2.2</a>.  Call Setup Failure and Rejection</span>
   Call setup may fail or be rejected.
   If the Notify message can not be delivered, no Message ID
   acknowledgement will be received by the sender.  In the event that
   the sender has retransmitted the Notify message a configurable number
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 16]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-17" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   of times without receiving a Message ID Acknowledgement (as described
   in [<a href="./rfc2961" title=""RSVP Refresh Overhead Reduction Extensions"">RFC2961</a>]), the initiator SHOULD declare the Call failed and
   SHOULD send a Call teardown request (see <a href="#section-6.6">Section 6.6</a>).
   It is also possible that a Message ID Acknowledgement is received but
   no Call response Notify message is received.  In this case, the
   initiator MAY re-send the Call setup request a configurable number of
   times (see <a href="#section-6.7">Section 6.7</a>) before declaring that the Call has failed.
   At this point, the initiator MUST send a Call teardown request (see
   <a href="#section-6.6">Section 6.6</a>).
   If the Notify message cannot be parsed or is in error, it MAY be
   responded to with a Notify message carrying the error code 13
   ("Unknown object class") or 14 ("Unknown object C-Type") if
   appropriate to the error detected.
   The Call setup MAY be rejected by the receiver because of security,
   authorization, or policy reasons.  Suitable error codes already exist
   [<a href="./rfc2205" title=""Resource ReSerVation Protocol (RSVP) -- Version 1 Functional Specification"">RFC2205</a>] and can be used in the ERROR_SPEC object included in the
   Notify message sent in response.
   Error response Notify messages SHOULD also use the Message ID object
   to achieve reliable delivery.  No action should be taken on the
   failure to receive a Message ID Acknowledgement after the configured
   number of retries.
<span class="h3"><a class="selflink" id="section-6.3" href="#section-6.3">6.3</a>.  Adding a Connections to a Call</span>
   Once a Call has been established, LSPs can be added to the Call.
   Since the short Call ID is part of the SESSION object, any LSP that
   has the same Call ID value in the SESSION object belongs to the same
   Call, and the Notify message used to establish the Call carried the
   same Call ID in its SESSION object.
   There will be no confusion between LSPs that are associated with a
   Call and those which are not, since the Call ID value MUST be equal
   to zero for LSPs that are not associated with a Call, and MUST NOT be
   equal to zero for a valid Call ID.
   LSPs for different Calls can be distinguished because the Call ID is
   unique within the context of the source address (in the
   SENDER_TEMPLATE object) and the destination address (in the SESSION
   object).
   Ingress and egress nodes MAY group together LSPs associated with the
   same Call and process them as a group according to implementation
   requirements.  Transit nodes need not be aware of the association of
   multiple LSPs with the same Call.
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 17]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-18" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   The ingress node MAY choose to set the "Session Name" of an LSP to
   match the long Call ID of the associated Call.
   The C bit of the ADMIN_STATUS object MUST NOT be set on LSP messages
   including on Notify messages that pertain to the LSP and MUST be
   ignored.
<span class="h4"><a class="selflink" id="section-6.3.1" href="#section-6.3.1">6.3.1</a>.  Adding a Reverse Direction LSP to a Call</span>
   Note that once a Call has been established, it is symmetric.  That
   is, either end of the Call may add LSPs to the Call.
   Special care is needed when managing LSPs in the reverse direction
   since the addresses in the SESSION and SENDER_TEMPLATE are reversed.
   However, since the short Call ID is unique in the context of a given
   ingress-egress address pair, it may safely be used to associate the
   LSP with the Call.
   Note that since Calls are defined here to be symmetrical, the issue
   of potential Call ID collision arises.  This is discussed in <a href="#section-6.5">Section</a>
   <a href="#section-6.5">6.5</a>.
<span class="h3"><a class="selflink" id="section-6.4" href="#section-6.4">6.4</a>.  Call-Free Connection Setup</span>
   It continues to be possible to set up LSPs as per [<a href="./rfc3473" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions"">RFC3473</a>] without
   associating them with a Call.  If the short Call ID in the SESSION
   object is set to zero, there is no associated Call and the Session
   Name field in the SESSION_ATTRIBUTE object MUST be interpreted simply
   as the name of the session (see [<a href="./rfc3209" title=""RSVP-TE: Extensions to RSVP for LSP Tunnels"">RFC3209</a>]).
   The C bit of the ADMIN_STATUS object MUST NOT be set on messages for
   LSP control, including on Notify messages that pertain to LSPs, and
   MUST be ignored when received on such messages.
<span class="h3"><a class="selflink" id="section-6.5" href="#section-6.5">6.5</a>.  Call Collision</span>
   Since Calls are symmetrical, it is possible that both ends of a Call
   will attempt to establish Calls with the same long Call IDs at the
   same time.  This is only an issue if the source and destination
   address pairs match.  This situation can be avoided by applying some
   rules to the contents of the long Call ID, but such mechanisms are
   outside the scope of this document.
   If a node that has sent a Call setup request and has not yet received
   a response itself receives a Call setup request with the same long
   Call ID and matching source/destination addresses, it SHOULD process
   as follows:
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 18]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-19" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   -  If its source address is numerically greater than the remote
      source address, it MUST discard the received message and continue
      to wait for a response to its setup request.
   -  If its source address is numerically smaller than the remote
      source address, it MUST discard state associated with the Call
      setup that it initiated, and MUST respond to the received Call
      setup.
   If a node receives a Call setup request carrying an address pair and
   long Call ID that match an existing Call, the node MUST return an
   error message (Notify message) with the new Error Code "Call
   Management" and the new Error Value "Duplicate Call" in response to
   the new Call request, and MUST NOT make any changes to the existing
   Call.
   A further possibility for contention arises when short Call IDs are
   assigned by a pair of nodes for two distinct Calls that are set up
   simultaneously using different long Call IDs.  In this event, a node
   receives a Call setup request carrying a short Call ID that matches
   one that it previously sent for the same address pair.  The following
   processing MUST be followed:
   -  If the receiver's source address is numerically greater than the
      remote source address, the receiver returns an error (Notify
      message) with the new Error Code "Call Management" and the new
      Error Value "Call ID Contention".
   -  If the receiver's source address is numerically less than the
      remote source address, the receiver accepts and processes the Call
      request.  It will receive an error message sent as described
      above, and at that point, it selects a new short Call ID and re-
      sends the Call setup request.
<span class="h3"><a class="selflink" id="section-6.6" href="#section-6.6">6.6</a>.  Call/Connection Teardown</span>
   As with Call/Connection setup, there are several cases to consider.
   -  Removal of a Connection from a Call
   -  Removal of the last Connection from a Call
   -  Teardown of an "empty" Call
   The case of tearing down an LSP that is not associated with a Call
   does not need to be examined as it follows exactly the procedures
   described in [<a href="./rfc3473" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions"">RFC3473</a>].
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 19]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-20" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
<span class="h4"><a class="selflink" id="section-6.6.1" href="#section-6.6.1">6.6.1</a>.  Removal of a Connection from a Call</span>
   An LSP that is associated with a Call may be deleted using the
   standard procedures described in [<a href="./rfc3473" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions"">RFC3473</a>].  No special procedures
   are required.
   Note that it is not possible to remove an LSP from a Call without
   deleting the LSP.  It is not valid to change the short Call ID from
   non-zero to zero since this involves a change to the SESSION object,
   which is not allowed.
<span class="h4"><a class="selflink" id="section-6.6.2" href="#section-6.6.2">6.6.2</a>.  Removal of the Last Connection from a Call</span>
   When the last LSP associated with a Call is deleted, the question
   arises as to what happens to the Call.  Since a Call may exist
   independently of Connections, it is not always acceptable to say that
   the removal of the last LSP from a Call removes the Call.
   The removal of the last LSP does not remove the Call and the
   procedures described in the next Section MUST be used to delete the
   Call.
<span class="h4"><a class="selflink" id="section-6.6.3" href="#section-6.6.3">6.6.3</a>.  Teardown of an "Empty" Call</span>
   When all LSPs have been removed from a Call, the Call may be torn
   down or left for use by future LSPs.
   Deletion of Calls is achieved by sending a Notify message just as for
   Call setup, but the ADMIN_STATUS object carries the R, D, and C bits
   on the teardown request and the D and C bits on the teardown
   response.  Other bits MUST be set to zero.
   When a Notify message is sent for deleting a Call and the initiator
   does not receive the corresponding reflected Notify message (or
   possibly even the Message ID Ack), the initiator MAY retry the
   deletion request using the same retry procedures as used during Call
   establishment.  If no response is received after full retry, the node
   deleting the Call MAY declare the Call deleted, but under such
   circumstances the node SHOULD avoid re-using the long or short Call
   IDs for at least five times the Notify refresh period.
<span class="h4"><a class="selflink" id="section-6.6.4" href="#section-6.6.4">6.6.4</a>.  Attempted Teardown of a Call with Existing Connections</span>
   If a Notify request with the D bit of the ADMIN_STATUS object set is
   received for a Call for which LSPs still exist, the request MUST be
   rejected with the Error Code "Call Management" and Error Value
   "Connections Still Exist".  The state of the Call MUST NOT be
   changed.
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 20]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-21" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
<span class="h4"><a class="selflink" id="section-6.6.5" href="#section-6.6.5">6.6.5</a>.  Teardown of a Call from the Egress</span>
   Since Calls are symmetric, they may be torn down from the ingress or
   egress.
   When the Call is "empty" (has no associated LSPs), it may be deleted
   by the egress sending a Notify message just as described above.
   Note that there is a possibility that both ends of a Call initiate
   Call deletion at the same time.  In this case, the Notify message
   acting as teardown request MAY be interpreted by its recipient as a
   teardown response.  But since the Notify messages acting as teardown
   requests carry the R bit in the ADMIN_STATUS object, they MUST be
   responded to anyway.  If a teardown request Notify message is
   received for an unknown Call ID, it is, nevertheless, responded to in
   the affirmative.
<span class="h3"><a class="selflink" id="section-6.7" href="#section-6.7">6.7</a>.  Control Plane Survivability</span>
   Delivery of Notify messages is secured using Message ID
   Acknowledgements as described in previous sections.
   Notify messages provide end-to-end communication that does not rely
   on constant paths through the network.  Notify messages are routed
   according to IGP routing information.  No consideration is,
   therefore, required for network resilience (for example, make-
   before-break, protection, fast re-route), although end-to-end
   resilience is of interest for node restart and completely disjoint
   networks.
   Periodic Notify messages SHOULD be sent by the initiator and
   terminator of the Call to keep the Call alive and to handle ingress
   or egress node restart.  The time period for these retransmissions is
   a local matter, but it is RECOMMENDED that this period should be
   twice the shortest refresh period of any LSP associated with the
   Call.  When there are no LSPs associated with a Call, an LSR is
   RECOMMENDED to use a refresh period of no less than one minute.  The
   Notify messages are identical to those sent as if establishing the
   Call for the first time, except for the LINK_CAPABILITY object, which
   may have changed since the Call was first established, due to, e.g.,
   the establishment of Connections, link failures, or the addition of
   new component links.  The current link information is useful for the
   establishment of subsequent Connections.  A node that receives a
   refresh Notify message carrying the R bit in the ADMIN_STATUS object
   MUST respond with a Notify response.  A node that receives a refresh
   Notify message (response or request) MAY reset its timer - thus, in
   normal processing, Notify refreshes involve a single exchange once
   per time period.
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 21]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-22" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   A node (sender or receiver) that is unsure of the status of a Call
   MAY immediately send a Notify message as if establishing the Call for
   the first time.
   Failure to receive a refresh Notify request has no specific meaning.
   A node that fails to receive a refresh Notify request MAY send its
   own refresh Notify request to establish the status of the Call.  If a
   node receives no response to a refresh Notify request (including no
   Message ID Acknowledgement), a node MAY assume that the remote node
   is unreachable or unavailable.  It is a local policy matter whether
   this causes the local node to teardown associated LSPs and delete the
   Call.
   In the event that an edge node restarts without preserved state, it
   MAY relearn LSP state from adjacent nodes and Call state from remote
   nodes.  If a Path or Resv message is received with a non-zero Call ID
   but without the C bit in the ADMIN_STATUS, and for a Call ID that is
   not recognized, the receiver is RECOMMENDED to assume that the Call
   establishment is delayed and ignore the received message.  If the
   Call setup never materializes, the failure by the restarting node to
   refresh state will cause the LSPs to be torn down.  Optionally, the
   receiver of such an LSP message for an unknown Call ID may return an
   error (PathErr or ResvErr message) with the error code "Call
   Management" and Error Value "Unknown Call ID".
<span class="h2"><a class="selflink" id="section-7" href="#section-7">7</a>.  Applicability of Call and Connection Procedures</span>
   This section considers the applicability of the different Call
   establishment procedures at the NNI and UNI reference points.  This
   section is informative and is not intended to prescribe or prevent
   other options.
<span class="h3"><a class="selflink" id="section-7.1" href="#section-7.1">7.1</a>.  Network-Initiated Calls</span>
   Since the link properties and other traffic-engineering attributes
   are likely known through the IGP, the LINK_CAPABILITY object is not
   usually required.
   In multi-domain networks, it is possible that access link properties
   and other traffic-engineering attributes are not known since the
   domains do not share this sort of information.  In this case, the
   Call setup mechanism may include the LINK_CAPABILITY object.
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 22]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-23" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
<span class="h3"><a class="selflink" id="section-7.2" href="#section-7.2">7.2</a>.  User-Initiated Calls</span>
   It is possible that the access link properties and other traffic-
   engineering attributes are not shared across the core network.  In
   this case, the Call setup mechanism may include the LINK_CAPABILITY
   object.
   Further, the first node within the network may be responsible for
   managing the Call.  In this case, the Notify message that is used to
   set up the Call is addressed by the user network edge node to the
   first node of the core network.  Moreover, neither the long Call ID
   nor the short Call ID is supplied (the Session Name Length is set to
   zero and the Call ID value is set to zero).  The Notify message is
   passed to the first core node, which is responsible for generating
   the long and short Call IDs before dispatching the message to the
   remote Call end point (which is known from the SESSION object).
   Further, when used in an overlay context, the first core node is
   allowed (see [<a href="./rfc4208" title=""Generalized Multiprotocol Label Switching (GMPLS) User- Network Interface (UNI): Resource ReserVation Protocol- Traffic Engineering (RSVP-TE) Support for the Overlay Model"">RFC4208</a>]) to replace the Session Name assigned by the
   ingress node and passed in the Path message.  In the case of Call
   management, the first core node:
      1) MAY insert a long Call ID in the Session Name of a Path
         message.
      2) MUST replace the Session Name with that originally issued by
         the user edge node when it returns the Resv message to the
         ingress node.
<span class="h3"><a class="selflink" id="section-7.3" href="#section-7.3">7.3</a>.  External Call Managers</span>
   Third party Call management agents may be used to apply policy and
   authorization at a point that is neither the initiator nor terminator
   of the Call.  The previous example is a particular case of this, but
   the process and procedures are identical.
<span class="h4"><a class="selflink" id="section-7.3.1" href="#section-7.3.1">7.3.1</a>.  Call Segments</span>
   Call Segments exist between a set of default and configured External
   Call Managers along a path between the ingress and egress nodes, and
   use the protocols described in this document.
   The techniques that are used by a given service provider to identify
   which External Call Managers within its network should process a
   given Call are beyond the scope of this document.
   An External Call Manager uses normal IP routing to route the Notify
   message to the next External Call Manager.  Notify messages (requests
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 23]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-24" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   and responses) are therefore encapsulated in IP packets that identify
   the sending and receiving External Call Managers, but the addresses
   used to identify the Call (the Sender Address in the SENDER_TEMPLATE
   object and the Tunnel Endpoint Address in the SESSION object)
   continue to identify the endpoints of the Call.
<span class="h2"><a class="selflink" id="section-8" href="#section-8">8</a>.  Non-Support of Call ID</span>
   It is important that the procedures described above operate as
   seamlessly as possible with legacy nodes that do not support the
   extensions described.
   Clearly, there is no need to consider the case where the Call
   initiator does not support Call setup initiation.
<span class="h3"><a class="selflink" id="section-8.1" href="#section-8.1">8.1</a>.  Non-Support by External Call Managers</span>
   It is unlikely that a Call initiator will be configured to send Call
   establishment Notify requests to an external Call manager, including
   the first core node, if that node does not support Call setup.
   A node that receives an unexpected Call setup request will fall into
   one of the following categories.
   -  Node does not support RSVP.  The message will fail to be delivered
      or responded to.  No Message ID Acknowledgement will be sent.  The
      initiator will retry and then give up.
   -  Node supports RSVP or RSVP-TE but not GMPLS.  The message will be
      delivered but not understood.  It will be discarded.  No Message
      ID Acknowledgement will be sent.  The initiator will retry and
      then give up.
   -  Node supports GMPLS but not Call management.  The message will be
      delivered, but parsing will fail because of the presence of the
      SESSION_ATTRIBUTE object.  A Message ID Acknowledgement may be
      sent before the parse fails.  When the parse fails, the Notify
      message may be discarded in which case the initiator will retry
      and then give up; alternatively, a parse error may be generated
      and returned in a Notify message which will indicate to the
      initiator that Call management is not supported.
<span class="h3"><a class="selflink" id="section-8.2" href="#section-8.2">8.2</a>.  Non-Support by Transit Node</span>
   Transit nodes SHOULD NOT examine Notify messages that are not
   addressed to them.  However, they will see short Call IDs in all
   messages for all LSPs associated with Calls.
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 24]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-25" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   Previous specifications state that these fields SHOULD be ignored on
   receipt and MUST be transmitted as zero.  This might be interpreted
   by some implementations as meaning that the fields should be zeroed
   before the objects are forwarded.  If this happens, LSP setup will
   not be possible.  If either of the fields is zeroed either on the
   Path or the Resv message, the Resv message will reach the initiator
   with the field set to zero - this is an indication to the initiator
   that some node in the network is preventing Call management.  Use of
   Explicit Routes may help to mitigate this issue by avoiding such
   nodes.  Ultimately, however, it may be necessary to upgrade the
   offending nodes to handle these protocol extensions.
<span class="h3"><a class="selflink" id="section-8.3" href="#section-8.3">8.3</a>.  Non-Support by Egress Node</span>
   It is unlikely that an attempt will be made to set up a Call to a
   remote node that does not support Calls.
   If the egress node does not support Call management through the
   Notify message, it will react (as described in <a href="#section-8.1">Section 8.1</a>) in the
   same way as an External Call Manager.
<span class="h2"><a class="selflink" id="section-9" href="#section-9">9</a>.  Security Considerations</span>
   Please refer to each of the documents referenced in the following
   sections for a description of the security considerations applicable
   to the features that they provide.
<span class="h3"><a class="selflink" id="section-9.1" href="#section-9.1">9.1</a>.  Call and Connection Security Considerations</span>
   Call setup is vulnerable to attacks both of spoofing and denial of
   service.  Since Call setup uses Notify messages, the process can be
   protected by the use of the INTEGRITY object to secure those messages
   as described in [<a href="./rfc2205" title=""Resource ReSerVation Protocol (RSVP) -- Version 1 Functional Specification"">RFC2205</a>] and [<a href="./rfc3473" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions"">RFC3473</a>].  Deployments where security
   is a concern SHOULD use this mechanism.
   Implementations and deployments MAY additionally protect the Call
   setup exchange using end-to-end security mechanisms such as those
   provided by IPsec (see [<a href="./rfc4302" title=""IP Authentication Header"">RFC4302</a>] and [<a href="./rfc4303" title=""IP Encapsulating Security Payload (ESP)"">RFC4303</a>]), or using RSVP
   security [<a href="./rfc2747" title=""RSVP Cryptographic Authentication"">RFC2747</a>].
   Note, additionally, that it would be desirable to use the process of
   independent Call establishment, where the Call is set up separately
   from the LSPs, to apply an extra level of authentication and policy
   for the end-to-end LSPs above that which is available with Call-less,
   hop-by-hop LSP setup.  However doing so will require additional work
   to set up security associations between the peer and the call manager
   that meet the requirements of [<a href="./rfc4107" title=""Guidelines for Cryptographic Key Management"">RFC4107</a>].  The mechanism described in
   this document is expected to meet this use case when combined with
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 25]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-26" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   this additional work.  Application of this mechanism to the
   authentication and policy use case prior to standardization of a
   security solution is inappropriate and outside the current
   applicability of the mechanism.
   The frequency of Call establishment is application dependent and hard
   to generalize.  Key exchange for Call-related message exchanges is
   therefore something that should be configured or arranged dynamically
   in different deployments according to the advice in [<a href="./rfc4107" title=""Guidelines for Cryptographic Key Management"">RFC4107</a>].  Note
   that the remote RSVP-TE signaling relationship between Call endpoints
   is no different from the signaling relationship between LSRs that
   establish an LSP.  That is, the LSRs are not necessarily IP-adjacent
   in the control plane in either case.  Thus, key exchange should be
   regarded as a remote procedure, not a single hop procedure.  There
   are several procedures for automatic remote exchange of keys, and
   IKEv2 [<a href="./rfc4306" title=""Internet Key Exchange (IKEv2) Protocol"">RFC4306</a>] is particularly suggested in [<a href="./rfc3473" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions"">RFC3473</a>].
<span class="h2"><a class="selflink" id="section-10" href="#section-10">10</a>.  IANA Considerations</span>
<span class="h3"><a class="selflink" id="section-10.1" href="#section-10.1">10.1</a>.  RSVP Objects</span>
   A new RSVP object is introduced.  IANA has made an assignment from
   the "RSVP Parameters" registry using the sub-registry "Class Names,
   Class Numbers, and Class Types".
   o  LINK_CAPABILITY object
      Class-Num = 133 (form 10bbbbbb)
      The Class Number is selected so that nodes not recognizing this
      object drop it silently.  That is, the top bit is set and the next
      bit is cleared.
      C-Type = 1 (TE Link Capabilities)
      The LINK_CAPABILITY object is only defined for inclusion on Notify
      messages.
      Refer to <a href="#section-5.3">Section 5.3</a> of this document.
      IANA maintains a list of subobjects that may be carried in this
      object.  This list is maintained in the registry entry for the
      LINK_CAPABILITY object as is common practice for the subobjects of
      other RSVP objects.  For each subobject, IANA lists:
         - subobject type number
         - subobject name
         - reference indicating where subobject is defined.
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 26]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-27" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
      The initial list of subobjects is provided in <a href="#section-5.3">Section 5.3</a> of this
      document.
<span class="h3"><a class="selflink" id="section-10.2" href="#section-10.2">10.2</a>.  RSVP Error Codes and Error Values</span>
   A new RSVP Error Code and new Error Values are introduced.  IANA has
   made assignments from the "RSVP Parameters" registry using the sub-
   registry "Error Codes and Globally-Defined Error Value Sub-Codes".
   o  Error Codes:
      - Call Management (value 32)
   o  Error Values:
      - Call Management/Call ID Contention      (value 1)
      - Call Management/Connections Still Exist (value 2)
      - Call Management/Unknown Call ID         (value 3)
      - Call Management/Duplicate Call          (value 4)
<span class="h3"><a class="selflink" id="section-10.3" href="#section-10.3">10.3</a>.  RSVP ADMIN_STATUS Object Bits</span>
   [<a id="ref-GMPLS-E2E">GMPLS-E2E</a>] requested that IANA manage the bits of the RSVP
   ADMIN_STATUS object.  A new "Administrative Status Information Flags"
   sub-registry of the "GMPLS Signaling Parameters" registry was
   created.
   This document defines one new bit, the C bit, to be tracked in that
   sub-registry.  Bit number 28 has been assigned.  See <a href="#section-5.5">Section 5.5</a> of
   this document.
<span class="h2"><a class="selflink" id="section-11" href="#section-11">11</a>.  Acknowledgements</span>
   The authors would like to thank George Swallow, Yakov Rekhter, Lou
   Berger, Jerry Ash, and Kireeti Kompella for their very useful input
   to, and comments on, an earlier revision of this document.
   Thanks to Lyndon Ong and Ben Mack-Crane for lengthy discussions
   during and after working group last call, and to Deborah Brungard for
   a final, detailed review.
   Thanks to Suresh Krishnan for the GenArt review, and to Magnus
   Nystrom for discussions about security.
   Useful comments were received during IESG review from Brian
   Carpenter, Lars Eggert, Ted Hardie, Sam Hartman, and Russ Housley.
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 27]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-28" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
<span class="h2"><a class="selflink" id="section-12" href="#section-12">12</a>.  References</span>
<span class="h3"><a class="selflink" id="section-12.1" href="#section-12.1">12.1</a>.  Normative References</span>
   [<a id="ref-GMPLS-E2E">GMPLS-E2E</a>] Lang, J., Ed., Rekhter, Y., Ed., and D. Papadimitriou,
               Ed., "RSVP-TE Extensions in Support of End-to-End
               Generalized Multi-Protocol Label Switching (GMPLS)
               Recovery", <a href="./rfc4872">RFC 4872</a>, May 2007.
   [<a id="ref-RFC2119">RFC2119</a>]   Bradner, S., "Key words for use in RFCs to Indicate
               Requirement Levels", <a href="https://www.rfc-editor.org/bcp/bcp14">BCP 14</a>, <a href="./rfc2119">RFC 2119</a>, March 1997.
   [<a id="ref-RFC2205">RFC2205</a>]   Braden, R., Ed., Zhang, L., Berson, S., Herzog, S., and
               S. Jamin, "Resource ReSerVation Protocol (RSVP) --
               Version 1 Functional Specification", <a href="./rfc2205">RFC 2205</a>, September
               1997.
   [<a id="ref-RFC2747">RFC2747</a>]   Baker, F., Lindell, B., and M. Talwar, "RSVP
               Cryptographic Authentication", <a href="./rfc2747">RFC 2747</a>, January 2000.
   [<a id="ref-RFC2961">RFC2961</a>]   Berger, L., Gan, D., Swallow, G., Pan, P., Tommasi, F.,
               and S. Molendini, "RSVP Refresh Overhead Reduction
               Extensions", <a href="./rfc2961">RFC 2961</a>, April 2001.
   [<a id="ref-RFC3209">RFC3209</a>]   Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V.,
               and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP
               Tunnels", <a href="./rfc3209">RFC 3209</a>, December 2001.
   [<a id="ref-RFC3471">RFC3471</a>]   Berger, L., Ed., "Generalized Multi-Protocol Label
               Switching (GMPLS) Signaling Functional Description", <a href="./rfc3471">RFC</a>
               <a href="./rfc3471">3471</a>, January 2003.
   [<a id="ref-RFC3473">RFC3473</a>]   Berger, L., Ed., "Generalized Multi-Protocol Label
               Switching (GMPLS) Signaling Resource ReserVation
               Protocol-Traffic Engineering (RSVP-TE) Extensions", <a href="./rfc3473">RFC</a>
               <a href="./rfc3473">3473</a>, January 2003.
   [<a id="ref-RFC3477">RFC3477</a>]   Kompella, K. and Y. Rekhter, "Signalling Unnumbered Links
               in Resource ReSerVation Protocol - Traffic Engineering
               (RSVP-TE)", <a href="./rfc3477">RFC 3477</a>, January 2003.
   [<a id="ref-RFC3945">RFC3945</a>]   Mannie, E., Ed., "Generalized Multi-Protocol Label
               Switching (GMPLS) Architecture", <a href="./rfc3945">RFC 3945</a>, October 2004.
   [<a id="ref-RFC4201">RFC4201</a>]   Kompella, K., Rekhter, Y., and L. Berger, "Link Bundling
               in MPLS Traffic Engineering (TE)", <a href="./rfc4201">RFC 4201</a>, October
               2005.
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 28]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-29" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   [<a id="ref-RFC4202">RFC4202</a>]   Kompella, K., Ed., and Y. Rekhter, Ed., "Routing
               Extensions in Support of Generalized Multi-Protocol Label
               Switching (GMPLS)", <a href="./rfc4202">RFC 4202</a>, October 2005.
   [<a id="ref-RFC4208">RFC4208</a>]   Swallow, G., Drake, J., Ishimatsu, H., and Y. Rekhter,
               "Generalized Multiprotocol Label Switching (GMPLS) User-
               Network Interface (UNI): Resource ReserVation Protocol-
               Traffic Engineering (RSVP-TE) Support for the Overlay
               Model", <a href="./rfc4208">RFC 4208</a>, October 2005.
   [<a id="ref-RFC4302">RFC4302</a>]   Kent, S., "IP Authentication Header", <a href="./rfc4302">RFC 4302</a>, December
               2005.
   [<a id="ref-RFC4303">RFC4303</a>]   Kent, S., "IP Encapsulating Security Payload (ESP)", <a href="./rfc4303">RFC</a>
               <a href="./rfc4303">4303</a>, December 2005.
   [<a id="ref-RFC4306">RFC4306</a>]   Kaufman, C., Ed., "Internet Key Exchange (IKEv2)
               Protocol", <a href="./rfc4306">RFC 4306</a>, December 2005.
   [<a id="ref-RFC4426">RFC4426</a>]   Lang, J., Ed., Rajagopalan, B., Ed., and D.
               Papadimitriou, Ed., "Generalized Multi-Protocol Label
               Switching (GMPLS) Recovery Functional Specification", <a href="./rfc4426">RFC</a>
               <a href="./rfc4426">4426</a>, March 2006.
<span class="h3"><a class="selflink" id="section-12.2" href="#section-12.2">12.2</a>.  Informative References</span>
   [<a id="ref-ASON-APPL">ASON-APPL</a>] Drake, J., Papadimitriou, D., Farrel, A., Brungard, D.,
               Ali, Z., Ayyangar, A., Ould-Brahim, H., and D. Fedyk,
               "Generalized MPLS (GMPLS) RSVP-TE Signalling in support
               of Automatically Switched Optical Network (ASON), Work in
               Progress, July 2005.
   [<a id="ref-RFC4107">RFC4107</a>]   Bellovin, S. and R. Housley, "Guidelines for
               Cryptographic Key Management", <a href="https://www.rfc-editor.org/bcp/bcp107">BCP 107</a>, <a href="./rfc4107">RFC 4107</a>, June
               2005.
   [<a id="ref-RFC4139">RFC4139</a>]   Papadimitriou, D., Drake, J., Ash, J., Farrel, A., and L.
               Ong, "Requirements for Generalized MPLS (GMPLS) Signaling
               Usage and Extensions for Automatically Switched Optical
               Network (ASON)", <a href="./rfc4139">RFC 4139</a>, July 2005.
   [<a id="ref-STITCH">STITCH</a>]    Ayyangar, A., Kompella, K., Vasseur, JP., and A. Farrel,
               "Label Switched Path Stitching with Generalized
               Multiprotocol Label Switching Traffic Engineering (GMPLS
               TE)", Work in Progress, April 2007.
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 29]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-30" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
   For information on the availability of the following document, please
   see <a href="http://www.itu.int">http://www.itu.int</a>.
   [<a id="ref-G.8080">G.8080</a>]      ITU-T, "Architecture for the Automatically Switched
               Optical Network (ASON)," Recommendation G.8080/ Y.1304,
               November 2001 (and Revision, January 2003).
Authors' Addresses
   John Drake
   Boeing Satellite Systems
   2300 East Imperial Highway
   El Segundo, CA 90245
   EMail: John.E.Drake2@boeing.com
   Deborah Brungard (AT&T)
   Rm. D1-3C22 - 200 S. Laurel Ave.
   Middletown, NJ 07748, USA
   EMail: dbrungard@att.com
   Zafar Ali (Cisco)
   100 South Main St. #200
   Ann Arbor, MI 48104, USA
   EMail: zali@cisco.com
   Arthi Ayyangar (Nuova Systems)
   2600 San Tomas Expressway
   Santa Clara, CA 95051
   EMail: arthi@nuovasystems.com
   Don Fedyk (Nortel Networks)
   600 Technology Park Drive
   Billerica, MA, 01821, USA
   EMail: dwfedyk@nortel.com
Contact Addresses
   Dimitri Papadimitriou
   Alcatel-Lucent,
   Fr. Wellesplein 1,
   B-2018 Antwerpen, Belgium
   Phone: +32 3 240-8491
   EMail: dimitri.papadimitriou@alcatel-lucent.be
   Adrian Farrel
   Old Dog Consulting
   Phone: +44 (0) 1978 860944
   EMail: adrian@olddog.co.uk
<span class="grey">Papadimitriou & Farrel      Standards Track                    [Page 30]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-31" ></span>
<span class="grey"><a href="./rfc4974">RFC 4974</a>           GMPLS RSVP-TE Signaling Extensions        August 2007</span>
Full Copyright Statement
   Copyright (C) The IETF Trust (2007).
   This document is subject to the rights, licenses and restrictions
   contained in <a href="https://www.rfc-editor.org/bcp/bcp78">BCP 78</a>, 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, THE IETF TRUST 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 <a href="https://www.rfc-editor.org/bcp/bcp78">BCP 78</a> and <a href="https://www.rfc-editor.org/bcp/bcp79">BCP 79</a>.
   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
   <a href="http://www.ietf.org/ipr">http://www.ietf.org/ipr</a>.
   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.
Papadimitriou & Farrel      Standards Track                    [Page 31]
</pre>
 
     |