1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
|
Internet Engineering Task Force (IETF) F. Le Faucheur
Request for Comments: 5945 Cisco
Category: Informational J. Manner
ISSN: 2070-1721 Aalto University
D. Wing
Cisco
A. Guillou
SFR
October 2010
Resource Reservation Protocol (RSVP) Proxy Approaches
Abstract
The Resource Reservation Protocol (RSVP) can be used to make end-to-
end resource reservations in an IP network in order to guarantee the
quality of service required by certain flows. RSVP assumes that both
the data sender and receiver of a given flow take part in RSVP
signaling. Yet, there are use cases where resource reservation is
required, but the receiver, the sender, or both, is not RSVP-capable.
This document presents RSVP proxy behaviors allowing RSVP routers to
initiate or terminate RSVP signaling on behalf of a receiver or a
sender that is not RSVP-capable. This allows resource reservations
to be established on a critical subset of the end-to-end path. This
document reviews conceptual approaches for deploying RSVP proxies and
discusses how RSVP reservations can be synchronized with application
requirements, despite the sender, receiver, or both not participating
in RSVP. This document also points out where extensions to RSVP (or
to other protocols) may be needed for deployment of a given RSVP
proxy approach. However, such extensions are outside the scope of
this document. Finally, practical use cases for RSVP proxy are
described.
Le Faucheur, et al. Informational [Page 1]
^L
RFC 5945 RSVP Proxy Approaches October 2010
Status of This Memo
This document is not an Internet Standards Track specification; it is
published for informational purposes.
This document is a product of the Internet Engineering Task Force
(IETF). It represents the consensus of the IETF community. It has
received public review and has been approved for publication by the
Internet Engineering Steering Group (IESG). Not all documents
approved by the IESG are a candidate for any level of Internet
Standard; see Section 2 of RFC 5741.
Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
http://www.rfc-editor.org/info/rfc5945.
Copyright Notice
Copyright (c) 2010 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
This document may contain material from IETF Documents or IETF
Contributions published or made publicly available before November
10, 2008. The person(s) controlling the copyright in some of this
material may not have granted the IETF Trust the right to allow
modifications of such material outside the IETF Standards Process.
Without obtaining an adequate license from the person(s) controlling
the copyright in such materials, this document may not be modified
outside the IETF Standards Process, and derivative works of it may
not be created outside the IETF Standards Process, except to format
it for publication as an RFC or to translate it into languages other
than English.
Le Faucheur, et al. Informational [Page 2]
^L
RFC 5945 RSVP Proxy Approaches October 2010
Table of Contents
1. Introduction ....................................................3
2. RSVP Proxy Behaviors ............................................6
2.1. RSVP Receiver Proxy ........................................6
2.2. RSVP Sender Proxy ..........................................7
3. Terminology .....................................................7
4. RSVP Proxy Approaches ...........................................9
4.1. Path-Triggered Receiver Proxy ..............................9
4.1.1. Mechanisms for Maximizing the Reservation Span .....11
4.2. Path-Triggered Sender Proxy for Reverse Direction .........15
4.3. Inspection-Triggered Proxy ................................18
4.4. STUN-Triggered Proxy ......................................21
4.5. Application_Entity-Controlled Proxy .......................23
4.5.1. Application_Entity-Controlled Sender Proxy
Using "RSVP over GRE" ..............................26
4.5.2. Application_Entity-Controlled Proxy via Co-Location 28
4.6. Policy_Server-Controlled Proxy ............................29
4.7. RSVP-Signaling-Triggered Proxy ............................32
4.8. Reachability Considerations ...............................33
5. Security Considerations ........................................34
6. Acknowledgments ................................................36
7. References .....................................................36
7.1. Normative References ......................................36
7.2. Informative References ....................................37
Appendix A. Use Cases for RSVP Proxies ...........................40
A.1. RSVP-Based VoD Admission Control in Broadband
Aggregation Networks ......................................40
A.2. RSVP-Based Voice/Video Connection Admission Control
(CAC) in Enterprise WAN ...................................43
A.3. RSVP Proxies for Mobile Access Networks ...................44
A.4. RSVP Proxies for Reservations in the Presence of IPsec
Gateways ..................................................46
1. Introduction
Guaranteed Quality of Service (QoS) for some applications with tight
requirements (such as voice or video) may be achieved by reserving
resources in each node on the end-to-end path. The main IETF
protocol for these resource reservations is the Resource Reservation
Protocol (RSVP), as specified in [RFC2205]. RSVP does not require
that all intermediate nodes support RSVP; however, it assumes that
both the sender and the receiver of the data flow support RSVP.
There are environments where it would be useful to be able to reserve
resources for a flow on at least a subset of the flow path even when
the sender or the receiver (or both) is not RSVP-capable (for
example, from the sender to the network edge, or from edge to edge,
or from the network edge to the receiver).
Le Faucheur, et al. Informational [Page 3]
^L
RFC 5945 RSVP Proxy Approaches October 2010
Since the data sender or receiver may be unaware of RSVP, there are
two types of RSVP proxies. When the sender is not using RSVP, an
entity in the network must operate on behalf of the data sender, and
in particular, generate RSVP Path messages, and eventually receive,
process, and sink Resv messages. We refer to this entity as the RSVP
Sender Proxy. When the receiver is not using RSVP, an entity in the
network must receive Path messages sent by a data sender (or by an
RSVP Sender Proxy), sink those, and return Resv messages on behalf of
the data receiver(s). We refer to this entity as the RSVP Receiver
Proxy. The RSVP proxies need to be on the data path in order to
establish the RSVP reservation; note, however, that some of the
approaches described in this document allow the RSVP proxies to be
controlled/triggered by an off-path entity.
The flow sender and receiver generally have at least some (if not
full) awareness of the application producing or consuming that flow.
Hence, the sender and receiver are in a natural position to
synchronize the establishment, maintenance, and teardown of the RSVP
reservation with the application requirements. Similarly, they are
in a natural position to determine the characteristics of the
reservation (bandwidth, QoS service, etc.) that best match the
application requirements. For example, before completing the
establishment of a multimedia session, the endpoints may decide to
establish RSVP reservations for the corresponding flows. Similarly,
when the multimedia session is torn down, the endpoints may decide to
tear down the corresponding RSVP reservations. For instance,
[RFC3312] discusses how RSVP reservations can be very tightly
synchronized by endpoints that uses the Session Initiation Protocol
(SIP) ([RFC3261]) for session control.
When RSVP reservation establishment, maintenance, and teardown are to
be handled by RSVP proxies on behalf of an RSVP sender or receiver, a
key challenge for the RSVP proxy is to determine when the RSVP
reservations need to be established, maintained, and torn down, and
to determine what the characteristics are (bandwidth, QoS, etc.) of
the required RSVP reservations matching the application requirements.
We refer to this problem as the synchronization of RSVP reservations
with application-level requirements.
The IETF Next Steps in Signaling (NSIS) working group has specified a
new QoS signaling protocol: the QoS NSIS Signaling Layer Protocol
(NSLP) ([RFC5974]). This protocol also includes the notion of proxy
operation, and terminating QoS signaling on nodes that are not the
actual data senders or receivers (see Section 4.8, "Proxy Mode", of
[RFC5974]. This is the same concept as the proxy operation for RSVP
discussed in this document. One difference, though, is that the NSIS
framework does not consider multicast resource reservations, which
RSVP provides today.
Le Faucheur, et al. Informational [Page 4]
^L
RFC 5945 RSVP Proxy Approaches October 2010
Section 2 introduces the notion of RSVP Sender Proxy and RSVP
Receiver Proxy. Section 3 defines useful terminology. Section 4
then presents several fundamental RSVP proxy approaches, discussing
how they achieve the necessary synchronization of RSVP reservations
with application-level requirements. Appendix A includes more
detailed use cases for the proxies in various real-life deployment
environments.
It is important to keep in mind that the strongly recommended RSVP
deployment model remains end-to-end as assumed in [RFC2205] with RSVP
support on the sender and the receiver. The end-to-end model allows
the most effective synchronization between the reservation and
application requirements. Also, when compared to the end-to-end RSVP
model, the use of RSVP proxies involves additional operational burden
and/or imposes some topological constraints. The additional
operational burden comes in particular from additional configuration
needed to activate the RSVP proxies and to help them identify for
which senders/receivers a proxy behavior is required and for which
senders/receivers it is not (so that an RSVP proxy does not perform
establishment of reservations on behalf of devices that are capable
of doing so themselves but would then be prevented -- without
notification -- from doing so by the RSVP proxy). The additional
topological constraints come in particular from the requirement to
have one RSVP Receiver Proxy on the path from any sender to every
non-RSVP-capable device (so that a non-RSVP-capable device is always
taken care of by an RSVP proxy) and the objective to have only one
such Receiver Proxy on the path from any sender to every non-RSVP-
capable device (so that an RSVP Receiver Proxy does not short-circuit
another RSVP Receiver Proxy closer to the non-RSVP-capable device,
thereby reducing the span of the RSVP reservation and the associated
benefits). In the case of the Path-Triggered Receiver Proxy
approach, the operational burden and topological constraints can be
significantly alleviated using the mechanisms discussed in
Section 4.1.1.
It is also worth noting that RSVP operations on end-systems are
considerably simpler than on a router, and consequently that RSVP
implementations on end-systems are very lightweight (particularly
considering modern end-systems' capabilities, including mobile and
portable devices). For example, end-system RSVP implementations are
reported to only consume low tens of kilobytes of code space. Hence,
this document should not be seen as an encouragement to depart from
the end-to-end RSVP model. Its purpose is only to allow RSVP
deployment in special environments where RSVP just cannot be used on
some senders and/or some receivers for reasons specific to the
environment.
Le Faucheur, et al. Informational [Page 5]
^L
RFC 5945 RSVP Proxy Approaches October 2010
2. RSVP Proxy Behaviors
This section discusses the two types of proxies: the RSVP Sender
Proxy operating on behalf of data senders, and the RSVP Receiver
Proxy operating for data receivers. The concepts presented in this
document are not meant to deprecate the traditional [RFC2205] RSVP
end-to-end model: end-to-end RSVP reservations are still expected to
be used whenever possible. However, RSVP proxies are intended to
facilitate RSVP deployment where end-to-end RSVP signaling is not
possible.
2.1. RSVP Receiver Proxy
With conventional end-to-end RSVP operations, RSVP reservations are
controlled by receivers of data. After a data sender has sent an
RSVP Path message towards the intended recipient(s), each recipient
that requires a reservation generates a Resv message. If, however, a
data receiver is not running the RSVP protocol, the last-hop RSVP
router will still send the Path message to the data receiver, which
will silently drop this message as an IP packet with an unknown
protocol number.
In order for reservations to be made in such a scenario, one of the
RSVP routers on the data path determines that the data receiver will
not be participating in the resource reservation signaling and
performs RSVP Receiver Proxy functionality on behalf of the data
receiver. This is illustrated in Figure 1. Various mechanisms by
which the RSVP proxy router can gain the required information are
discussed later in the document.
|****| *** *** |**********| |----|
| S |---------*r*----------*r*---------| RSVP |----------| R |
|****| *** *** | Receiver | |----|
| Proxy |
|**********|
===================RSVP==============>
***********************************************************>
|****| RSVP-capable |----| non-RSVP-capable ***
| S | Sender | R | Receiver *r* regular RSVP
|****| |----| *** router
***> unidirectional media flow
==> segment of flow path protected by RSVP reservation
Figure 1: RSVP Receiver Proxy
Le Faucheur, et al. Informational [Page 6]
^L
RFC 5945 RSVP Proxy Approaches October 2010
2.2. RSVP Sender Proxy
With conventional end-to-end RSVP operations, if a data sender is not
running the RSVP protocol, a resource reservation cannot be set up; a
data receiver alone cannot reserve resources without Path messages
first being received. Thus, even if the data receiver is running
RSVP, it still needs some node on the data path to send a Path
message towards the data receiver.
In that case, an RSVP node on the data path determines that it should
generate Path messages to allow the receiver to set up the resource
reservation. This node is referred to as the RSVP Sender Proxy and
is illustrated in Figure 2. This case presents additional challenges
over the Receiver Proxy case, since the RSVP Sender Proxy must be
able to generate all the information in the Path message (such as the
SENDER_TSPEC object) without the benefit of having previously
received any RSVP message. An RSVP Receiver Proxy, by contrast, only
needs to formulate an appropriate Resv message in response to an
incoming Path message. Mechanisms to operate an RSVP Sender Proxy
are discussed later in this document.
|----| |**********| *** *** |****|
| S |---------| RSVP |---------*r*----------*r*----------| R |
|----| | Sender | *** *** |****|
| Proxy |
|**********|
================RSVP==================>
***********************************************************>
|----| non-RSVP-capable |****| RSVP-capable ***
| S | Sender | R | Receiver *r* regular RSVP
|----| |****| *** router
***> unidirectional media flow
==> segment of flow path protected by RSVP reservation
Figure 2: RSVP Sender Proxy
3. Terminology
o On-Path: located on the data path of the actual flow of
application data (regardless of where it is located with respect
to the application-level signaling path).
Le Faucheur, et al. Informational [Page 7]
^L
RFC 5945 RSVP Proxy Approaches October 2010
o Off-Path: not On-Path.
o RSVP-capable (or RSVP-aware): supporting the RSVP protocol as per
[RFC2205].
o RSVP Receiver Proxy: an RSVP-capable router performing, on behalf
of a receiver, the RSVP operations that would normally be
performed by an RSVP-capable receiver if end-to-end RSVP signaling
were used. Note that while RSVP is used upstream of the RSVP
Receiver Proxy, RSVP is not used downstream of the RSVP Receiver
Proxy.
o RSVP Sender Proxy: an RSVP-capable router performing, on behalf of
a sender, the RSVP operations that would normally be performed by
an RSVP-capable sender if end-to-end RSVP signaling were used.
Note that while RSVP is used downstream of the RSVP Sender Proxy,
RSVP is not used upstream of the RSVP Sender Proxy.
o Regular RSVP Router: an RSVP-capable router that is not behaving
as an RSVP Receiver Proxy or as an RSVP Sender Proxy.
o Application-level signaling: signaling between entities operating
above the IP layer and that are aware of the QoS requirements for
actual media flows. SIP ([RFC3261]) and the Real Time Streaming
Protocol (RTSP) ([RFC2326]) are examples of application-level
signaling protocols. The Session Description Protocol (SDP)
([RFC4566]) is an example of a protocol that can be used by the
application-level signaling protocol and from which some of the
RSVP reservation parameters (addresses, ports, and bandwidth)
might be derived. RSVP is clearly not an application-level
signaling protocol.
The roles of the RSVP Receiver Proxy, RSVP Sender Proxy, and regular
RSVP router are all relative to a given unidirectional flow. A given
router may act as the RSVP Receiver Proxy for a flow, as the RSVP
Sender Proxy for another flow, and as a regular RSVP router for yet
another flow.
Some application-level signaling protocols support negotiation of QoS
reservations for a media stream. For example, with [RFC3312],
resource reservation requirements are explicitly signaled during
session establishment using SIP and SDP. Also, [RFC5432] defines a
mechanism to negotiate which resource reservation mechanism is to be
used for a particular media stream. Clearly, these reservation
negotiation mechanisms can be invoked and operate effectively when
both ends support RSVP (and obviously RSVP proxies are not used).
When both ends do not support RSVP (and RSVP proxies are used at both
ends), these mechanisms will simply not be invoked. In the case
Le Faucheur, et al. Informational [Page 8]
^L
RFC 5945 RSVP Proxy Approaches October 2010
where one end supports RSVP and the other does not (and is helped by
an RSVP proxy), the application-level signaling entity supporting the
non-RSVP-capable end might use the reservation negotiation mechanisms
in such a way that the non-RSVP-capable end (helped by an RSVP proxy)
appears to the remote end as an RSVP-capable device. This will
ensure that the RSVP-capable end is not discouraged from using RSVP
because the remote end is not RSVP-capable. In the case of SIP, the
application-level entity may achieve this by taking advantage of the
"segmented" status type of [RFC3312] and/or by taking advantage of a
SIP [RFC3261] Back-to-Back User Agent (B2BUA).
4. RSVP Proxy Approaches
This section discusses fundamental RSVP proxy approaches.
4.1. Path-Triggered Receiver Proxy
In this approach, it is assumed that the sender is RSVP-capable and
takes full care of the synchronization between application
requirements and RSVP reservations. With this approach, the RSVP
Receiver Proxy uses the RSVP Path messages generated by the sender as
the cue for establishing the RSVP reservation on behalf of the
receiver. The RSVP Receiver Proxy is effectively acting as a slave
making reservations (on behalf of the receiver) under the sender's
control. This changes somewhat the usual RSVP reservation model
where reservations are normally controlled by receivers. Such a
change greatly facilitates operations in the scenario of interest
here, which is where the receiver is not RSVP-capable. Indeed, it
allows the RSVP Receiver Proxy to remain application-unaware by
taking advantage of the application awareness and RSVP awareness of
the sender.
With the Path-Triggered RSVP Receiver Proxy approach, the RSVP router
may be configured to use receipt of a regular RSVP Path message as
the trigger for RSVP Receiver Proxy behavior.
On receipt of the RSVP Path message, the RSVP Receiver Proxy:
1. establishes the RSVP Path state as per regular RSVP processing.
2. identifies the downstream interface towards the receiver.
3. sinks the Path message.
4. behaves as if a Resv message (whose details are discussed below)
was received on the downstream interface. This includes
performing admission control on the downstream interface,
establishing a Resv state (in case of successful admission
Le Faucheur, et al. Informational [Page 9]
^L
RFC 5945 RSVP Proxy Approaches October 2010
control), and forwarding the Resv message upstream, sending
periodic refreshes of the Resv message and tearing down the
reservation if the Path state is torn down.
In order to build the Resv message, the RSVP Receiver Proxy can take
into account information received in the Path message. For example,
the RSVP Receiver Proxy may compose a FLOWSPEC object for the Resv
message that mirrors the SENDER_TSPEC object in the received Path
message (as an RSVP-capable receiver would typically do).
Operation of the Path-Triggered Receiver Proxy in the case of a
successful reservation is illustrated in Figure 3.
|****| *** *** |**********| |----|
| S |---------*r*----------*r*---------| RSVP |----------| R |
|****| *** *** | Receiver | |----|
| Proxy |
|**********|
---Path---> ----Path----> ---Path---->
<--Resv---> <---Resv----- <--Resv----
==================RSVP===============>
**********************************************************>
|****| RSVP-capable |----| Non-RSVP-capable ***
| S | Sender | R | Receiver *r* regular RSVP
|****| |----| *** router
***> media flow
==> segment of flow path protected by RSVP reservation
Figure 3: Path-Triggered RSVP Receiver Proxy
In case the reservation establishment is rejected (for example,
because of an admission control failure on a regular RSVP router on
the path between the RSVP-capable sender and the RSVP Receiver
Proxy), a ResvErr message will be generated as per conventional RSVP
operations and will travel downstream towards the RSVP Receiver
Proxy. While this ensures that the RSVP Receiver Proxy is aware of
the reservation failure, conventional RSVP procedures do not cater to
the notification of the sender of the reservation failure. Operation
of the Path-Triggered RSVP Receiver Proxy in the case of an admission
control failure is illustrated in Figure 4.
Le Faucheur, et al. Informational [Page 10]
^L
RFC 5945 RSVP Proxy Approaches October 2010
|****| *** *** |**********| |----|
| S |---------*r*----------*r*---------| RSVP |----------| R |
|****| *** *** | Receiver | |----|
| Proxy |
|**********|
---Path---> ----Path----> ---Path---->
<---Resv----- <--Resv------
---ResvErr---> --ResvErr--->
===================RSVP===============>
**********************************************************>
|****| RSVP-capable |----| Non-RSVP-capable ***
| S | Sender | R | Receiver *r* regular RSVP
|****| |----| *** router
***> media flow
==> segment of flow path protected by RSVP reservation
Figure 4: Path-Triggered RSVP Receiver Proxy with Failure
Since, as explained above, in this scenario involving the RSVP
Receiver Proxy, synchronization between an application and an RSVP
reservation is generally performed by the sender, notifying the
sender of reservation failure is needed. [RFC5946] specifies RSVP
extensions allowing such sender notification in the case of
reservation failure in the presence of a Path-Triggered RSVP Receiver
Proxy.
4.1.1. Mechanisms for Maximizing the Reservation Span
The presence in the flow path of a Path-Triggered RSVP Receiver Proxy
(for a given flow) that strictly behaves as described previously
would cause the Path message to be terminated and a Resv message to
be generated towards the sender. When the receiver is indeed not
RSVP-capable and there is no other RSVP Receiver Proxy downstream on
the flow path, this achieves the best achievable result of
establishing an RSVP reservation as far downstream as the RSVP
Receiver Proxy.
Le Faucheur, et al. Informational [Page 11]
^L
RFC 5945 RSVP Proxy Approaches October 2010
However, if the eventual receiver was in fact RSVP-capable, it would
be prevented from participating in RSVP signaling, since it does not
receive any Path message. As a result, the RSVP reservation would
only span a subset of the path it could actually span. A similar
sub-optimality would exist with multiple Receiver Proxies in the path
of the flow: the first Receiver Proxy may prevent the Path message
from reaching the second one and therefore prevent the reservation
from extending down to the second Receiver Proxy.
It is desirable that, in the presence of Path-Triggered RSVP Receiver
Proxies and of a mix of RSVP-capable and non-RSVP-capable receivers,
the RSVP reservation spans as much of the flow path as possible.
This can be achieved dynamically (avoiding tedious specific
configuration), using the mechanisms described in Sections 4.1.1.1
and 4.1.1.2.
4.1.1.1. Dynamic Discovery of Downstream RSVP Functionality
When generating a proxy Resv message upstream, a Receiver Proxy may
be configured to perform dynamic discovery of downstream RSVP
functionality. To that end, when generating the proxy Resv message
upstream, the Receiver Proxy forwards the Path message downstream
instead of terminating it. This allows an RSVP-capable receiver (or
a downstream Receiver Proxy) to respond to the Path with an upstream
Resv message. On receipt of a Resv message, the Receiver Proxy
internally converts its state from a proxied reservation to a regular
midpoint RSVP behavior. From then on, everything proceeds as if the
RSVP router had behaved as a regular RSVP router at reservation
establishment (as opposed to having behaved as an RSVP Receiver Proxy
for that flow).
The RSVP Receiver Proxy behavior for dynamic discovery of downstream
RSVP functionality is illustrated in Figure 5 and is also discussed
in Section 4.1 of [RFC5946].
Le Faucheur, et al. Informational [Page 12]
^L
RFC 5945 RSVP Proxy Approaches October 2010
|****| *** |**********| |----|
| S |---------*r*---------| RSVP |---| R1 |
|****| *** | Receiver | |----|
| Proxy |
| |
| | |****|
| |------------| R2 |
|**********| |****|
---Path---> --Path--->
(R1) (R1) \-------Path-->
/ (R1)
<--Resv--- <---Resv---
================RSVP===>
**************************************>
---Path---> --Path--->
(R2) (R2) \-------------Path---->
/ (R2)
<--Resv--- <---Resv---
<----Resv---
================RSVP===========================>
***********************************************>
|****| RSVP-capable |----| non-RSVP-capable |****| RSVP-capable
| S | Sender | R | Receiver | R | Receiver
|****| |----| |****|
***
*r* regular RSVP
*** router
(R1) = Path message contains a Session object whose destination is R1
***> media flow
==> segment of flow path protected by RSVP reservation
Figure 5: Dynamic Discovery of Downstream RSVP Functionality
This dynamic discovery mechanism has the benefit that new (or
upgraded) RSVP endpoints will automatically and seamlessly be able to
take advantage of end-to-end reservations, without impacting the
Le Faucheur, et al. Informational [Page 13]
^L
RFC 5945 RSVP Proxy Approaches October 2010
ability of a Receiver Proxy to proxy RSVP for other, non-RSVP-capable
endpoints. This mechanism also achieves the goal of automatically
discovering the longest possible RSVP-supporting segment in a network
with multiple Receiver Proxies along the path. This mechanism
dynamically adjusts to any topology and routing change. Also, this
mechanism dynamically handles the situation in which a receiver was
RSVP-capable and for some reason (e.g., software downgrade) no longer
is. Finally, this approach requires no new RSVP protocol extensions
and no configuration changes to the Receiver Proxy as new RSVP-
capable endpoints come and go.
The only identified drawbacks to this approach are:
o If admission control fails on the segment between the Receiver
Proxy and the RSVP-capable receiver, the receiver will get a
ResvErr and can take application-level signaling steps to
terminate the call. However, the Receiver Proxy has already sent
a Resv upstream for this flow, so the sender will see a "false"
reservation that is not truly end-to-end. The actual admission
control status will resolve itself in a short while, but the
sender will need to roll back any permanent action (such as
billing) that may have been taken on receipt of the phantom Resv.
Note that if the second receiver is also a Receiver Proxy that is
not participating in application signaling, it will convert the
received ResvErr into a PathErr that will be received by the
sender.
o If there is no RSVP-capable receiver (or other Receiver Proxy)
downstream of the Receiver Proxy, then the Path messages sent by
the Receiver Proxy every RSVP refresh interval (e.g., 30 seconds
by default) will never be responded to. However, these messages
consume a small amount of bandwidth, and in addition would install
some RSVP state on RSVP-capable midpoint nodes downstream of the
first Receiver Proxy. This is seen as a very minor sub-
optimality. We also observe that such resources would be consumed
anyways if the receiver was RSVP-capable. Still, if deemed
necessary, to mitigate this, the Receiver Proxy can tear down any
unanswered downstream Path state and stop sending Path messages
for the flow (or only send them at much lower frequency) as
further discussed in [RFC5946].
4.1.1.2. Selective Receiver Proxy and Sender Control of Receiver Proxy
An RSVP Receiver Proxy can be selective about the sessions that it
terminates, based on local policy decision. For example, an edge
router functioning as a Receiver Proxy may behave as a proxy only for
Path messages that are actually going to exit the domain in question,
and not for Path messages that are transiting through it but stay
Le Faucheur, et al. Informational [Page 14]
^L
RFC 5945 RSVP Proxy Approaches October 2010
within the domain. As another example, the Receiver Proxy may be
configurable to only proxy for flows addressed to a given destination
address or destination address ranges (for which end devices are
known to not be RSVP-capable).
The decision to proxy a Resv for a Path may also be based on
information signaled from the sender in the Path message. For
example, the sender may identify the type of application or flow in
the Application Identity policy element ([RFC2872]) in the Path, and
the Receiver Proxy may be configured to proxy for only certain types
of flows. Or, if the sender knows (for example, through application
signaling) that the receiver is RSVP-capable, the sender can include
an indication in a policy element to any Receiver Proxy that it ought
not to terminate the Path (or conversely, if the receiver is known
not to support RSVP, the sender could include an indication to
Receiver Proxies that they ought to generate a proxy Resv message).
The Receiver Proxy Control policy element specified in Section 4.2 of
[RFC5946] can be used for that purpose.
4.2. Path-Triggered Sender Proxy for Reverse Direction
In this approach, it is assumed that one endpoint is RSVP-capable and
takes full care of the synchronization between application
requirements and RSVP reservations. This endpoint is the sender for
one flow direction (which we refer to as the "forward" direction) and
is the receiver for the flow in the opposite direction (which we
refer to as the "reverse" direction).
With the Path-Triggered Sender Proxy for Reverse Direction approach,
the RSVP proxy uses the RSVP signaling generated by the receiver (for
the reverse direction) as the cue for initiating RSVP signaling for
the reservation in the reverse direction. More precisely, the RSVP
proxy can take the creation (or maintenance or teardown) of a Path
state by the receiver as the cue to create (or maintain or tear down,
respectively) a Path state towards the receiver. Thus, the RSVP
proxy is effectively acting as a Sender Proxy for the reverse
direction under the control of the receiver (for the reverse
direction). Note that this assumes a degree of symmetry, for
example, in terms of bandwidth for the two directions of the flow (as
is currently typical for IP telephony).
The signaling flow for the Path-Triggered Sender Proxy for Reverse
Direction is illustrated in Figure 6.
Path messages generated by the receiver need to transit via the RSVP
Sender Proxy that is on the path from the sender to the receiver. In
some topologies, this will always be the case: for example, where the
sender is on a stub network hanging off the RSVP Sender Proxy or
Le Faucheur, et al. Informational [Page 15]
^L
RFC 5945 RSVP Proxy Approaches October 2010
where there is no asymmetric routing (such that if an RSVP Sender
Proxy is on the path from receiver to sender, then it is also on the
path from sender to receiver). In some topologies (such as those
involving asymmetric routing), this may not always happen naturally.
Measures to ensure this does happen in these topologies are outside
the scope of this document.
|****| *** *** |**********| |----|
| R |---------*r*----------*r*---------| RSVP |----------| S |
|****| *** *** | Sender | |----|
| Proxy |
|**********|
---Path---> ----Path----> ---Path---->
<--Path---> <---Path----- <--Path----
---Resv---> ----Resv----> ---Resv---->
<================RSVP==================
<**********************************************************
|****| RSVP-capable |----| Non-RSVP-capable ***
| R | Receiver for | S | Sender for *r* regular RSVP
|****| reverse direction |----| reverse direction *** router
***> media flow
==> segment of flow path protected by RSVP reservation
in reverse direction
Figure 6: Path-Triggered Sender Proxy for Reverse Direction
Of course, the RSVP proxy may simultaneously (and typically will)
also act as the Path-Triggered Receiver Proxy for the forward
direction, as defined in Section 4.1. Such an approach is most
useful in situations involving RSVP reservations in both directions
for symmetric flows. This is illustrated in Figure 7.
Le Faucheur, et al. Informational [Page 16]
^L
RFC 5945 RSVP Proxy Approaches October 2010
|****| *** *** |----------| |----|
|S/R |---------*r*----------*r*---------| RSVP |----------|S/R |
|****| *** *** | Receiver | |----|
| & Sender |
| Proxy |
|----------|
---Path---> ----Path----> ---Path---->
<--Resv---> <---Resv----- <--Resv----
<--Path---> <---Path----- <--Path----
---Resv---> ----Resv----> ---Resv---->
================RSVP==================>
<================RSVP==================
**********************************************************>
<**********************************************************
|****| RSVP-capable |----| Non-RSVP-capable ***
|S/R | Sender and |S/R | Sender and *r* regular RSVP
|****| Receiver |----| Receiver *** router
***> media flow
==> segment of flow path protected by RSVP reservation
in forward and in reverse direction
Figure 7: Path Triggered Receiver and Sender Proxy
With the Path-Triggered Sender Proxy for Reverse Direction approach,
the RSVP router may be configurable to use receipt of a regular RSVP
Path message as the trigger for Sender Proxy for Reverse Direction
behavior.
On receipt of the RSVP Path message for the forward direction, the
RSVP Sender Receiver Proxy:
1. sinks the Path message.
2. behaves as if a Path message for the reverse direction (whose
details are discussed below) had been received by the Sender
Proxy. This includes establishing the corresponding Path state,
forwarding the Path message downstream, sending periodic
Le Faucheur, et al. Informational [Page 17]
^L
RFC 5945 RSVP Proxy Approaches October 2010
refreshes of the Path message, and tearing down the Path in the
reverse direction when the Path state in the forward direction is
torn down.
In order to build the Path message for the reverse direction, the
RSVP Sender Proxy can take into account information in the received
Path message for the forward direction. For example, the RSVP Sender
Proxy may mirror the SENDER_TSPEC object in the received Path
message.
We observe that this approach does not require any extensions to the
existing RSVP protocol.
In the case where reservations are required in both directions (as
shown in Figure 7), the RSVP-capable device simply needs to behave as
a regular RSVP sender and RSVP receiver. It need not be aware that
an RSVP proxy happens to be used, and the Path message it sent for
the forward reservation also acts as the trigger for establishment of
the reverse reservation. However, in the case where a reservation is
only required in the reverse direction (as shown in Figure 6), the
RSVP-capable device has to generate Path messages in order to trigger
the reverse-direction reservation even if no reservation is required
in the forward direction. Although this is not in violation of
[RFC2205], it may not be the default behavior of an RSVP-capable
device and therefore may need a behavioral change specifically to
facilitate operation of the Path-Triggered Sender Proxy for Reverse
Direction.
4.3. Inspection-Triggered Proxy
In this approach, it is assumed that the RSVP proxy is on the data
path of "packets of interest", that it can inspect such packets on
the fly as they transit through it, and that it can infer information
from these packets of interest to determine what RSVP reservations
need to be established, as well as when and with what characteristics
(possibly also using some configured information).
One example of "packets of interest" could be application-level
signaling. An RSVP proxy capable of inspecting SIP signaling for a
multimedia session or RTSP signaling for video streaming can obtain
from such signaling information about when a multimedia session is up
or when a video is going to be streamed. It can also identify the
addresses and ports of senders and receivers and can determine the
bandwidth of the corresponding flows. It can also determine when the
reservation is no longer needed and tear it down. Thus, such an RSVP
proxy can determine all necessary information to synchronize RSVP
reservations to application requirements. This is illustrated in
Figure 8.
Le Faucheur, et al. Informational [Page 18]
^L
RFC 5945 RSVP Proxy Approaches October 2010
|-------------|
| Application |
| Signaling |
| Entity |
|-------------|
/ \
/ \
/ \
</////////////////////// \\\\\\\\\\\\\\\\\\\\\\\\>
|----| |********| *** |********| |----|
| S |--------| RSVP |------*r*--------| RSVP |----------| R |
|----| | Proxy | *** | Proxy | |----|
|********| |********|
=======RSVP=======>
********************************************************>
|----| Non-RSVP-capable |----| Non-RSVP-capable ***
| S | Sender | R | Receiver *r* regular RSVP
|----| |----| *** router
</\> application-level signaling
***> media flow
==> segment of flow path protected by RSVP reservation
Figure 8: Inspection-Triggered RSVP Proxy
Another example of "packets of interest" could be transport control
messages (e.g., the Real-time Transport Control Protocol (RTCP)
[RFC3550]) traveling alongside the application flow itself (i.e.,
media packets). An RSVP proxy capable of detecting the transit of
packets from a particular flow can attempt to establish a reservation
corresponding to that flow. Characteristics of the reservation may
be derived by various methods such as from configuration, flow
measurement, or a combination of those. However, these methods
usually come with their respective operational drawbacks:
configuration involves an operational cost and may hinder
introduction of new applications, and measurement is reactive so that
accurate reservation may lag actual traffic.
In the case of reservation failure, the Inspection-Triggered RSVP
Proxy does not have a direct mechanism for notifying the application
(since it is not participating itself actively in application
Le Faucheur, et al. Informational [Page 19]
^L
RFC 5945 RSVP Proxy Approaches October 2010
signaling) so that the application is not in a position to take
appropriate action (for example, terminate the corresponding
session). To mitigate this problem, the Inspection-Triggered RSVP
Proxy may differently mark the Differentiated Services codepoint
(DSCP) ([RFC2474]) of flows for which an RSVP reservation has been
successfully proxied from the flows for which a reservation is not in
place. In some situations, the Inspection-Triggered Proxy might be
able to modify the "packets of interest" (e.g., application signaling
messages) to convey some hint to applications that the corresponding
flows cannot be guaranteed by RSVP reservations.
With the Inspection-Triggered Proxy approach, the RSVP proxy is
effectively required to attempt to build application awareness by
traffic inspection and then is somewhat limited in the actions it can
take in case of reservation failure. Depending on the "packets of
interest" used by the RSVP proxy to trigger the reservation, there is
a risk that the RSVP proxy will end up establishing a reservation for
a media flow that actually never starts. However, this can be
mitigated by the timing out and tearing down of an unnecessary
reservation by the RSVP proxy when no corresponding media flow is
observed. This flow observation and timeout approach can also be
used to tear down reservations that were rightfully established for a
flow but are no longer needed because the flow stopped.
The Inspection-Triggered approach is also subject to the general
limitations associated with data inspection. This includes being
impeded by encryption or tunneling, or being dependent on some
topology constraints such as relying on the fact that both the
packets of interest and the corresponding flow packets always transit
through the same RSVP proxy.
Nonetheless, this may be a useful approach in specific environments.
Note also that this approach does not require any change to the RSVP
protocol.
With the Inspection-Triggered RSVP Proxy approach, the RSVP router
may be configurable to use and interpret some specific packets of
interest as the trigger for RSVP Receiver Proxy behavior.
When operating off signaling traffic, the Inspection-Triggered RSVP
Proxy may be able to detect from the signaling that the endpoint is
capable of establishing an RSVP reservation (e.g., in the case of
SIP, via the inspection of the [RFC3312]/[RFC4032] precondition), in
which case it would not behave as a proxy for that endpoint. Also,
the Inspection-Triggered RSVP Proxy may inspect RSVP signaling, and
if it sees RSVP signaling for the flow of interest, it can disable
its Sender Proxy behavior for that flow (or that sender).
Optionally, through RSVP signaling inspection, the Sender Proxy might
Le Faucheur, et al. Informational [Page 20]
^L
RFC 5945 RSVP Proxy Approaches October 2010
also gradually "learn" (possibly with some timeout) which sender is
RSVP-capable and which is not. These mechanisms can facilitate
gradual and dynamic migration from the proxy model towards the end-
to-end RSVP model as more and more endpoints become RSVP-capable.
4.4. STUN-Triggered Proxy
In this approach, the RSVP proxy takes advantage of the application
awareness provided by the Session Traversal Utilities for NAT (STUN)
([RFC5389]) signaling to synchronize RSVP reservations with
application requirements. The STUN signaling is sent from endpoint
to endpoint. This is illustrated in Figure 9. In this approach, a
STUN message triggers the RSVP proxy.
|----| |********| *** |********| |----|
| S |--------| RSVP |------*r*--------| RSVP |----------| R |
|----| | Proxy | *** | Proxy | |----|
|********| |********|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^>
=======RSVP=======>
********************************************************>
|----| Non-RSVP-capable |----| Non-RSVP-capable ***
| S | Sender | R | Receiver *r* regular RSVP
|----| |----| *** router
^^^> STUN message flow (over same UDP ports as media flow)
==> segment of flow path protected by RSVP reservation
***> RTP media flow
Figure 9: STUN-Triggered Proxy
For unicast flows, [RFC5245] is a widely adopted approach for Network
Address Translator (NAT) traversal. For our purposes of triggering
RSVP proxy behavior, we rely on the Interactive Connectivity
Establishment (ICE) protocol's connectivity check, which is based on
the exchange of STUN Binding Request messages between hosts to verify
connectivity (see Section 2.2 of [RFC5245]). The STUN message could
also include (yet to be specified) STUN attributes to indicate
information such as the bandwidth and application requesting the
flow, which would allow the RSVP proxy agent to create an
Le Faucheur, et al. Informational [Page 21]
^L
RFC 5945 RSVP Proxy Approaches October 2010
appropriately sized reservation for each flow. Including such new
STUN attributes in the ICE connectivity check messages would
facilitate operation of the RSVP proxy. To ensure RSVP reservations
are only established when needed, the RSVP proxy needs to
distinguish, among all the STUN messages, the ones that reflect (with
high likelihood) an actual upcoming media flow. This can be achieved
by identifying the STUN messages associated with an ICE connectivity
check. In turn, this can be achieved through (some combination of)
the following checks:
o if, as discussed above, new STUN attributes (e.g., conveying the
flow bandwidth) are indeed defined in the future in view of
facilitating STUN-Triggered reservations, then the presence of
these attributes would reveal that the STUN message is part of an
ICE connectivity check.
o the presence of the PRIORITY, USE-CANDIDATE, ICE-CONTROLLED, or
ICE-CONTROLLING attributes reveals that the STUN message is part
of an ICE connectivity check.
o the RSVP proxy may wait for a STUN message containing the USE-
CANDIDATE attribute indicating the selected ICE "path" to trigger
reservation only for the selected "path". This allows the RSVP
proxy to only trigger a reservation for the "path" actually
selected and therefore for the media flow that will actually be
established (for example, when ICE is being used for IPv4/v6 path
selection).
o the RSVP proxy configuration could contain some information
facilitating determination of when to perform RSVP proxy
reservation and when not to. For example, the RSVP proxy
configuration could contain the IP addresses of the STUN servers
such that STUN messages to/from those addresses are known to not
be part of an ICE connectivity check. As another example, the
RSVP proxy configuration could contain information identifying the
set of Differentiated Services codepoint (DSCP) values that the
media flows requiring reservation use, so that STUN messages not
using one of these DSCP values are known to not be part of an ICE
connectivity check.
Despite these checks, there is always a potential risk that the RSVP
proxy will end up establishing a reservation for a media flow that
actually never starts. However, this is limited to situations in
which the end-systems are interested enough in establishing
connectivity for a flow but never transmit. Also, this can be
mitigated by timing out and tear down of an unnecessary reservation
by the RSVP proxy when no corresponding media flow is observed.
Le Faucheur, et al. Informational [Page 22]
^L
RFC 5945 RSVP Proxy Approaches October 2010
The RSVP proxy agent can inform endpoints of an RSVP reservation
failure implicitly by dropping the ICE connectivity check message or
explicitly by sending ICMP messages back to the endpoint. This
allows reasonably effective synchronization between RSVP reservations
handled by the RSVP proxies and the application running on non-RSVP-
capable endpoints. It also has the benefits of operating through
NATs.
For multicast flows (or certain kinds of unicast flows that don't or
can't use ICE), a STUN Indication message [RFC5389] could be used to
carry the (yet to be defined) STUN attributes mentioned earlier to
indicate the flow bandwidth, thereby providing a benefit similar to
the ICE connectivity check. STUN Indication messages are not
acknowledged by the receiver and have the same scalability as the
underlying multicast flow.
The corresponding extensions to ICE and STUN for such a STUN-
Triggered RSVP Proxy approach are beyond the scope of this document.
They may be defined in the future in a separate document. As the
STUN-Triggered RSVP Proxy approach uses STUN in a way (i.e., to
trigger reservations) that is beyond its initial intended purpose,
the potential security implications need to be considered by the
operator.
ICE connectivity checks are not always used for all flows. When the
STUN-Triggered RSVP Proxy approach is used, it can establish RSVP
reservations for flows for which ICE connectivity is performed.
However, the STUN-Triggered RSVP Proxy will not establish a
reservation for flows for which an ICE connectivity check is not
performed. Those flows either will not benefit from an RSVP
reservation or can benefit from an RSVP reservation established
through other means (end-to-end RSVP, other forms of RSVP proxy).
The STUN-Triggered approach relies on interception and inspection of
STUN messages. Thus, this approach may be impeded by encryption or
tunneling.
4.5. Application_Entity-Controlled Proxy
In this approach, it is assumed that an entity involved in the
application-level signaling controls an RSVP proxy that is located in
the data path of the application flows (i.e., "on-path"). With this
approach, the RSVP proxy does not itself attempt to determine the
application reservation requirements. Instead, the RSVP proxy is
instructed by the entity participating in application-level signaling
to establish, maintain, and tear down reservations as needed by the
application flows. In other words, with this approach, the solution
for synchronizing RSVP signaling with application-level requirements
Le Faucheur, et al. Informational [Page 23]
^L
RFC 5945 RSVP Proxy Approaches October 2010
is to rely on an application-level signaling entity that controls an
RSVP proxy function that sits in the flow data path. This approach
allows control of an RSVP Sender Proxy, an RSVP Receiver Proxy, or
both.
Operation of the Application_Entity-Controlled Proxy is illustrated
in Figure 10.
|---------| |---------|
/////////| App |////\\\\| App |\\\\\\\\
/ | Entity | | Entity | \
/ |---------| |---------| \
/ // \\ \
/ // \\ \
/ // \\ \
/ // \\ \
/ // \\ \
|----| |********| *** |*********| |----|
| S |----------| |------*r*-------| |---------| R |
|----| | RSVP | *** | RSVP | |----|
| Sender | | Receiver|
| Proxy | | Proxy |
|********| |*********|
=======RSVP=======>
********************************************************>
|----| Non-RSVP-capable |----| Non-RSVP-capable ***
| S | Sender | R | Receiver *r* regular RSVP
|----| |----| *** router
***> media flow
==> segment of flow path protected by RSVP reservation
/\ Application signaling (e.g., SIP)
// RSVP proxy control interface
Figure 10: Application_Entity-Controlled Proxy
As an example, the Application_Entity-Controlled Proxy may be used in
the context of SIP servers ([RFC3261]) or Session Border Controllers
(SBCs) (see [RFC5853] for a description of SBCs) to establish RSVP
reservations for multimedia sessions. In that case, the application
entity may be the signaling component of the SBC.
Le Faucheur, et al. Informational [Page 24]
^L
RFC 5945 RSVP Proxy Approaches October 2010
This RSVP proxy approach does not require any extension to the RSVP
protocol. However, it relies on an RSVP proxy control interface
allowing control of the RSVP proxy by an application signaling
entity. This RSVP proxy control interface is beyond the scope of
this document. Candidate protocols for realizing such an interface
include the IETF Network Configuration (NETCONF) Protocol ([RFC4741],
[RFC5277]), the Web Services protocol ([W3C]), the QoS Policy
Information Model (QPIM) ([RFC3644]), and Diameter ([RFC3588]). This
interface can rely on soft states or hard states. Clearly, when hard
states are used, those need to be converted appropriately by the RSVP
proxy entities into the corresponding RSVP soft states. As an
example, [RFC5866] is intended to allow control of RSVP proxy via
Diameter.
In general, the application entity is not expected to maintain
awareness of which RSVP Receiver Proxy is on the path to which
destination. However, in the particular cases where it does so
reliably, we observe that the application entity could control the
RSVP Sender Proxy and Receiver Proxy so that aggregate RSVP
reservations are used between those, instead of one reservation per
flow. For example, these aggregate reservations could be of the
RSVP-AGGREGATE type, as specified in [RFC3175], or of the GENERIC-
AGGREGATE type, as specified in [RFC4860]. Such aggregate
reservations could be used so that a single reservation can be used
for multiple (possibly all) application flows transiting via the same
RSVP Sender Proxy and the same RSVP Receiver Proxy.
For situations in which only the RSVP Sender Proxy has to be
controlled by this interface, the interface may be realized through
the simple use of RSVP itself, over a Generic Routing Encapsulation
(GRE) tunnel from the application entity to the RSVP Sender Proxy.
This particular case is further discussed in Section 4.5.1. Another
particular case of interest is where the application signaling entity
resides on the same device as the RSVP proxy. In that case, this
interface may be trivially realized as an internal API. An example
environment based on this particular case is illustrated in
Section 4.5.2.
The application entity controlling the RSVP proxy (e.g., a SIP Call
Agent) would often be aware of a number of endpoint capabilities, and
it has to be aware of which endpoint can be best "served" by which
RSVP proxy anyways. So it is reasonable to assume that such an
application is aware of whether a given endpoint is RSVP-capable or
not. The application may also consider the QoS preconditions and QoS
mechanisms signaled by an endpoint as per [RFC3312]/[RFC4032] and
[RFC5432]. The information about endpoint RSVP capability can then
be used by the application to decide whether to trigger proxy
behavior or not for a given endpoint. This can facilitate gradual
Le Faucheur, et al. Informational [Page 25]
^L
RFC 5945 RSVP Proxy Approaches October 2010
and dynamic migration from the proxy model towards the end-to-end
RSVP model as more and more endpoints become RSVP-capable.
In some environments, the application entities (e.g., SIP back-to-
back user agents) that need to control the RSVP proxies would already
be deployed independently of the use, or not, of the
Application_Entity-Controlled Proxy approach. In this case, the
activation of the RSVP proxy approach should not introduce
significant disruption in the application signaling path. In some
environments, additional application entities may need to be deployed
to control the RSVP proxies. In this case, the network operator
needs to consider the associated risks of disruption to the
application signaling path.
4.5.1. Application_Entity-Controlled Sender Proxy Using "RSVP over GRE"
This approach is simply a particular case of the more general
Application_Entity-Controlled Proxy, but where only RSVP Sender
Proxies need to be controlled by the application, and where RSVP is
effectively used as the control protocol between the application-
signaling entity and the RSVP Sender Proxy.
In this approach, the RSVP messages (e.g., RSVP Path message) are
effectively generated by the application entity and logically
"tunneled" to the RSVP Sender Proxy via GRE tunneling. This is to
ensure that the RSVP messages follow the exact same path as the flow
they protect (as required by RSVP operations) on the segment of the
end-to-end path that is to be subject to RSVP reservations.
Figure 11 illustrates such an environment.
Le Faucheur, et al. Informational [Page 26]
^L
RFC 5945 RSVP Proxy Approaches October 2010
|-------------|
////////////| Application |\\\\\\\\\
/ | Entity | \
/ |-------------| \
/ /=/ \
/ /=/ \
/ /=/ \
/ /=/ \
/ /=/ \
/ /=/ \
/ /=/ \
/ /=/ \
|----| |********| *** |****|
| S |-----------| RSVP |-----------*r*-----------------| R |
|----| | Sender | *** |****|
| Proxy |
|********|
=========RSVP====================>
*****************************************************>
|----| non-RSVP-capable |----| RSVP-capable ***
| S | Sender | R | Receiver *r* regular RSVP
|----| |----| *** router
***> media flow
==> segment of flow path protected by RSVP reservation
/\ Application-level signaling
/=/ GRE-tunneled RSVP (Path messages)
Figure 11: Application_Entity-Controlled Sender Proxy via
"RSVP over GRE"
With the Application_Entity-Controlled Sender Proxy using "RSVP Over
GRE", the application entity:
o generates a Path message on behalf of the sender, corresponding to
the reservation needed by the application, and maintains the
corresponding Path state. The Path message built by the
application entity is exactly the same as would be built by the
actual sender (if it was RSVP-capable), with one single exception,
which is that the application entity puts its own IP address as
the RSVP previous hop. In particular, it is recommended that the
Le Faucheur, et al. Informational [Page 27]
^L
RFC 5945 RSVP Proxy Approaches October 2010
source address of the Path message built by the application entity
be set to the IP address of the sender (not of the application
entity). This helps ensure that, in the presence of non-RSVP
routers and of load-balancing in the network where the load-
balancing algorithm takes into account the source IP address, the
Path message generated by the application entity follows the exact
same path as the actual stream sourced by the sender.
o encapsulates the Path message into a GRE tunnel whose destination
address is the RSVP Sender Proxy, i.e., an RSVP router sitting on
the data path for the flow (and upstream of the segment that
requires QoS guarantees via RSVP reservation).
o processes the corresponding received RSVP messages (including Resv
messages) as per regular RSVP.
o synchronizes the RSVP reservation state with application-level
requirements and signaling.
Note that since the application entity encodes its own IP address as
the previous RSVP hop inside the [RFC2205] RSVP_HOP object of the
Path message, the RSVP router terminating the GRE tunnel naturally
addresses all the RSVP messages traveling upstream hop-by-hop (such
as Resv messages) to the application entity (without having to
encapsulate those in a reverse-direction GRE tunnel towards the
application entity).
4.5.2. Application_Entity-Controlled Proxy via Co-Location
This approach is simply a particular case of the more general
Application_Entity-Controlled Proxy, but where the application entity
is co-located with the RSVP proxy. As an example, Session Border
Controllers (SBCs) with on-board SIP agents could implement RSVP
proxy functions and make use of such an approach to achieve session
admission control over the SBC-to-SBC segment using RSVP signaling.
Figure 12 illustrates operations of the Application_Entity-Controlled
RSVP Proxy via co-location.
Le Faucheur, et al. Informational [Page 28]
^L
RFC 5945 RSVP Proxy Approaches October 2010
|---------| |---------|
////////| App |////////\\\\\\\| App |\\\\\\\\\
/ | Entity | | Entity | \
/ | | | | \
|----| |*********| *** |*********| |----|
| S |--------| RSVP |------*r*------| RSVP |---------| R |
|----| | Sender | *** | Receiver| |----|
| Proxy | | Proxy |
|*********| |*********|
=======RSVP======>
*******************************************************>
|----| Non-RSVP-capable |----| Non-RSVP-capable ***
| S | Sender | R | Receiver *r* regular RSVP
|----| |----| *** router
***> media flow
==> segment of flow path protected by RSVP reservation
/\ Application-level signaling
Figure 12: Application_Entity-Controlled Proxy via Co-Location
This RSVP proxy approach does not require any protocol extensions.
We also observe that when multiple sessions are to be established on
paths sharing the same RSVP Sender Proxy and the same RSVP Receiver
Proxy, the RSVP proxies have the option to establish aggregate RSVP
reservations (as defined in ([RFC3175] or [RFC4860]) for a group of
sessions, instead of establishing one RSVP reservation per session.
4.6. Policy_Server-Controlled Proxy
In this approach, it is assumed that a policy server, which is
located in the control plane of the network, controls an RSVP proxy
that is located in the data path of the application flows (i.e., "on-
path"). In turn, the policy server is triggered by an entity
involved in the application-level signaling. With this approach, the
RSVP proxy does not itself attempt to determine the application
reservation requirements, but instead is instructed by the policy
server to establish, maintain, and tear down reservations as needed
by the application flows. Moreover, the entity participating in
application-level signaling does not attempt to understand the
specific reservation mechanism (i.e., RSVP) or the topology of the
network layer, but instead it simply asks the policy server to
Le Faucheur, et al. Informational [Page 29]
^L
RFC 5945 RSVP Proxy Approaches October 2010
perform (or tear down) a reservation. In other words, with this
approach, the solution for synchronizing RSVP signaling with
application-level requirements is to rely on an application-level
entity that controls a policy server that, in turn, controls an RSVP
proxy function that sits in the flow data path. This approach allows
control of an RSVP Sender Proxy, an RSVP Receiver Proxy, or both.
Operation of the Policy_Server-Controlled proxy is illustrated in
Figure 13.
Le Faucheur, et al. Informational [Page 30]
^L
RFC 5945 RSVP Proxy Approaches October 2010
|---------|
/////////////| App |\\\\\\\\\\\\\\
/ | Entity | \
/ |---------| \
/ I \
/ I \
/ |----------| \
/ | Policy | \
/ | Server | \
/ |----------| \
/ // \\ \
/ // \\ \
/ // \\ \
|----| |********| *** |*********| |----|
| S |-----------| |------*r*-----| |----------| R |
|----| | RSVP | *** | RSVP | |----|
| Sender | | Receiver|
| Proxy | | Proxy |
|********| |*********|
=====RSVP========>
**********************************************************>
|----| Non-RSVP-capable |----| Non-RSVP-capable ***
| S | Sender | R | Receiver *r* regular RSVP
|----| |----| *** router
***> media flow
==> segment of flow path protected by RSVP reservation
/\ Application signaling (e.g., SIP)
// RSVP proxy control interface
I Interface between application entity and policy server
Figure 13: Policy_Server-Controlled Proxy
This RSVP proxy approach does not require any extension to the RSVP
protocol. However, as with the Application_Entity-Controlled Proxy
approach presented in Figure 10, this approach relies on an RSVP
proxy control interface allowing control of the RSVP proxy (by the
policy server in this case). This RSVP proxy control interface is
beyond the scope of this document. Considerations about candidate
protocols for realizing such an interface can be found in
Le Faucheur, et al. Informational [Page 31]
^L
RFC 5945 RSVP Proxy Approaches October 2010
Section 4.5. Again, for situations in which only the RSVP Sender
Proxy has to be controlled by this interface, the interface may be
realized through the simple use of RSVP itself, over a GRE tunnel
from the policy server to the RSVP Sender Proxy. This is similar to
what is presented in Section 4.5.1, except that the "RSVP over GRE"
interface is used in this case by the policy server (instead of the
application entity).
The interface between the application entity and the policy server is
beyond the scope of this document.
4.7. RSVP-Signaling-Triggered Proxy
An RSVP proxy can also be triggered and controlled through extended
RSVP signaling from the remote end that is RSVP-capable (and supports
these RSVP extensions for proxy control). For example, an RSVP-
capable sender could send a new or extended RSVP message explicitly
requesting an RSVP proxy on the path towards the receiver to behave
as an RSVP Receiver Proxy and also to trigger a reverse-direction
reservation, thus also behaving as an RSVP Sender Proxy. The new or
extended RSVP message sent by the sender could also include
attributes (e.g., bandwidth) for the reservations to be signaled by
the RSVP proxy.
The challenges in these explicit signaling schemes include the
following:
o How can the nodes determine when a reservation request ought to be
proxied and when it should not, and accordingly invoke appropriate
signaling procedures?
o How does the node sending the messages explicitly triggering the
proxy know where the proxy is located, e.g., determine an IP
address of the proxy that should reply to the signaling?
o How is all the information needed by a Sender Proxy to generate a
Path message actually communicated to the proxy?
An example of such a mechanism is presented in [QOS-MOBILE]. This
scheme is primarily targeted to local access network reservations
whereby an end host can request resource reservations for both
incoming and outgoing flows only over the access network. This may
be useful in environments where the access network is typically the
bottleneck while the core is comparatively over-provisioned, as may
be the case with a number of radio access technologies. In this
proposal, messages targeted to the proxy are flagged with one bit in
all RSVP messages. Similarly, all RSVP messages sent back by the
proxy are also flagged. The use of such a flag allows
Le Faucheur, et al. Informational [Page 32]
^L
RFC 5945 RSVP Proxy Approaches October 2010
differentiating between proxied and end-to-end reservations. For
triggering an RSVP Receiver Proxy, the sender of the data sends a
Path message that is marked with the mentioned flag. The Receiver
Proxy is located on the signaling and data path, eventually gets the
Path message, and replies back with a Resv message. A node triggers
an RSVP Sender Proxy with a newly defined Path_Request message, which
instructs the proxy to send Path messages towards the triggering
node. The node then replies back with a Resv. More details can be
found in [QOS-MOBILE].
Such an RSVP-Signaling-Triggered Proxy approach would require RSVP
signaling extensions (that are outside the scope of this document).
However, it could provide more flexibility in the control of the
proxy behavior (e.g., control of reverse reservation parameters) than
would the Path-Triggered approaches defined in Section 4.1 and
Section 4.2.
Through potential corresponding protocol extensions, an RSVP-
Signaling-Triggered Proxy approach could facilitate operation (e.g.,
reduce or avoid the need for associated configuration) in hybrid
environments involving both reservations established end-to-end and
reservations established via RSVP proxies. For example, [QOS-MOBILE]
proposed a mechanism allowing an end-system to control whether a
reservation can be handled by an RSVP proxy on the path, or is to be
established end-to-end.
4.8. Reachability Considerations
There may be situations in which the RSVP Receiver Proxy is reachable
by the sender, while the receiver itself is not. In such situations,
it is possible that the RSVP Receiver Proxy is not always aware that
the receiver is unreachable, and consequently may accept to establish
an RSVP reservation on behalf of that receiver. This would result in
unnecessary reservation establishment and unnecessary network
resource consumption.
This is not considered a significant practical concern for a number
of reasons. First, in many cases, if the receiver is not reachable
from the sender, it will not be reachable for application signaling
either, and so application-level session establishment will not be
possible in the first place. Secondly, where the receiver is
unreachable from the sender but is reachable for application-level
signaling (say, because session establishment is performed through an
off-path SIP agent that uses a different logical topology to
communicate with the receiver), then the sender may detect that the
receiver is unreachable before attempting reservation establishment.
This may be achieved through mechanisms such as ICE's connectivity
check ([RFC5245]). Finally, even if the sender does not detect that
Le Faucheur, et al. Informational [Page 33]
^L
RFC 5945 RSVP Proxy Approaches October 2010
the receiver is unreachable before triggering the RSVP reservation
establishment, it is very likely that the application will quickly
realize this lack of connectivity (e.g., the human accepting the
phone call on the receiver side will not hear the human's voice on
the sender side) and therefore tear down the session (e.g., hang up
the phone), which in turn will trigger RSVP reservation release.
Nonetheless, it is recommended that network administrators consider
the above in light of their particular environment when deploying
RSVP proxies.
The mirror considerations apply for situations involving an RSVP
Sender Proxy and where the sender cannot reach the destination while
the RSVP Sender Proxy can.
5. Security Considerations
In the environments of concern for this document, RSVP messages are
used to control resource reservations on a segment of the end-to-end
path of flows. The general security considerations associated with
[RFC2205] apply. To ensure the integrity of the associated
reservation and admission control mechanisms, the RSVP cryptographic
authentication mechanisms defined in [RFC2747] and [RFC3097] can be
used. Those protect RSVP messages integrity hop-by-hop and provide
node authentication, thereby protecting against corruption, spoofing
of RSVP messages, and replay. [RSVP-SEC-KEY] discusses key types and
key provisioning methods, as well as their respective applicability
to RSVP authentication.
[RSVP-SEC-KEY] also discusses applicability of IPsec mechanisms
([RFC4302][RFC4303]) and associated key provisioning methods for
security protection of RSVP. This discussion applies to the
protection of RSVP in the presence of RSVP proxies as defined in this
document.
A subset of RSVP messages are signaled with the IP router alert
option ([RFC2113], [RFC2711]). Based on the current security
concerns associated with the use of the IP router alert option, the
applicability of RSVP (and therefore of the RSVP proxy approaches
discussed in this document) is limited to controlled environments
(i.e., environments where the security risks associated with the use
of the IP router alert option are understood and protected against).
The security aspects and common practices around the use of the
current IP router alert option, and consequences of using the IP
router alert option by applications such as RSVP, are discussed in
detail in [RTR-ALERT].
Le Faucheur, et al. Informational [Page 34]
^L
RFC 5945 RSVP Proxy Approaches October 2010
A number of additional security considerations apply to the use of
RSVP proxies and are discussed below.
With some RSVP proxy approaches, the RSVP proxy operates autonomously
inside an RSVP router. This is the case for the Path-Triggered Proxy
approaches defined in Section 4.1 and in Section 4.2, for the
Inspection-Triggered Proxy approach defined in Section 4.3, for the
STUN-Triggered Proxy approach defined in Section 4.4, and for the
RSVP-Signaling-Triggered approach defined in Section 4.7. Proper
reservation operation assumes that the RSVP proxy can be trusted to
behave correctly in order to control the RSVP reservation as required
and expected by the end-systems. Since the basic RSVP operation
already assumes a trust model where end-systems trust RSVP nodes to
appropriately perform RSVP reservations, the use of an RSVP proxy
that behaves autonomously within an RSVP router is not seen as
introducing any significant additional security threat or as
fundamentally modifying the RSVP trust model.
With some RSVP proxy approaches, the RSVP proxy operates under the
control of another entity. This is the case for the
Application_Entity-Controlled Proxy approach defined in Section 4.5
and for the Policy_Server-Controlled Proxy approach defined in
Section 4.6. This introduces additional security risks since the
entity controlling the RSVP proxy needs to be trusted for proper
reservation operation and also introduces additional authentication
and confidentiality requirements. The exact mechanisms to establish
such trust, authentication, and confidentiality are beyond the scope
of this document, but they may include security mechanisms inside the
protocol used as the control interface between the RSVP proxy and the
entity controlling it, as well as security mechanisms for all the
interfaces involved in the reservation control chain (e.g., inside
the application signaling protocol between the end-systems and the
application entity, and, in the case of the Policy_Server-Controlled
Proxy approach, in the protocol between the application entity and
the policy server).
In some situations, the use of RSVP proxy to control reservations on
behalf of end-systems may actually reduce the security risk (at least
from the network operator viewpoint). This could be the case, for
example, because the routers where the RSVP proxy functionality runs
are less exposed to tampering than end-systems. Such a case is
further discussed in Section 4 of [RFC5946]. This could also be the
case because the use of RSVP proxy allows localization of RSVP
operation within the boundaries of a given administrative domain
(thus easily operating as a controlled environment) while the end-to-
end flow path spans multiple administrative domains.
Le Faucheur, et al. Informational [Page 35]
^L
RFC 5945 RSVP Proxy Approaches October 2010
6. Acknowledgments
This document benefited from earlier work on the concept of RSVP
proxy including the one documented by Silvano Gai, Dinesh Dutt,
Nitsan Elfassy, and Yoram Bernet. It also benefited from discussions
with Pratik Bose, Chris Christou, and Michael Davenport. Tullio
Loffredo and Massimo Sassi provided the base material for
Section 4.6. Thanks to James Polk, Magnus Westerlund, Dan Romascanu,
Ross Callon, Cullen Jennings, and Jari Arkko for their thorough
review and comments.
7. References
7.1. Normative References
[RFC2205] Braden, B., Zhang, L., Berson, S., Herzog, S., and S.
Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1
Functional Specification", RFC 2205, September 1997.
[RFC2210] Wroclawski, J., "The Use of RSVP with IETF Integrated
Services", RFC 2210, September 1997.
[RFC2475] Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z.,
and W. Weiss, "An Architecture for Differentiated
Services", RFC 2475, December 1998.
[RFC2747] Baker, F., Lindell, B., and M. Talwar, "RSVP Cryptographic
Authentication", RFC 2747, January 2000.
[RFC3097] Braden, R. and L. Zhang, "RSVP Cryptographic
Authentication -- Updated Message Type Value", RFC 3097,
April 2001.
[RFC5245] Rosenberg, J., "Interactive Connectivity Establishment
(ICE): A Protocol for Network Address Translator (NAT)
Traversal for Offer/Answer Protocols", RFC 5245,
April 2010.
[RFC5389] Rosenberg, J., Mahy, R., Matthews, P., and D. Wing,
"Session Traversal Utilities for NAT (STUN)", RFC 5389,
October 2008.
Le Faucheur, et al. Informational [Page 36]
^L
RFC 5945 RSVP Proxy Approaches October 2010
7.2. Informative References
[QOS-MOBILE] Manner, J., "Provision of Quality of Service in IP-
based Mobile Access Networks", Doctoral
dissertation, University of Helsinki, 2003,
<http://ethesis.helsinki.fi>.
[RFC1633] Braden, B., Clark, D., and S. Shenker, "Integrated
Services in the Internet Architecture: an Overview",
RFC 1633, June 1994.
[RFC2113] Katz, D., "IP Router Alert Option", RFC 2113,
February 1997.
[RFC2326] Schulzrinne, H., Rao, A., and R. Lanphier, "Real Time
Streaming Protocol (RTSP)", RFC 2326, April 1998.
[RFC2474] Nichols, K., Blake, S., Baker, F., and D. Black,
"Definition of the Differentiated Services Field (DS
Field) in the IPv4 and IPv6 Headers", RFC 2474,
December 1998.
[RFC2711] Partridge, C. and A. Jackson, "IPv6 Router Alert
Option", RFC 2711, October 1999.
[RFC2872] Bernet, Y. and R. Pabbati, "Application and Sub
Application Identity Policy Element for Use with
RSVP", RFC 2872, June 2000.
[RFC2961] Berger, L., Gan, D., Swallow, G., Pan, P., Tommasi,
F., and S. Molendini, "RSVP Refresh Overhead
Reduction Extensions", RFC 2961, April 2001.
[RFC3175] Baker, F., Iturralde, C., Le Faucheur, F., and B.
Davie, "Aggregation of RSVP for IPv4 and IPv6
Reservations", RFC 3175, September 2001.
[RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G.,
Johnston, A., Peterson, J., Sparks, R., Handley, M.,
and E. Schooler, "SIP: Session Initiation Protocol",
RFC 3261, June 2002.
[RFC3312] Camarillo, G., Marshall, W., and J. Rosenberg,
"Integration of Resource Management and Session
Initiation Protocol (SIP)", RFC 3312, October 2002.
Le Faucheur, et al. Informational [Page 37]
^L
RFC 5945 RSVP Proxy Approaches October 2010
[RFC3550] Schulzrinne, H., Casner, S., Frederick, R., and V.
Jacobson, "RTP: A Transport Protocol for Real-Time
Applications", STD 64, RFC 3550, July 2003.
[RFC3588] Calhoun, P., Loughney, J., Guttman, E., Zorn, G., and
J. Arkko, "Diameter Base Protocol", RFC 3588,
September 2003.
[RFC3644] Snir, Y., Ramberg, Y., Strassner, J., Cohen, R., and
B. Moore, "Policy Quality of Service (QoS)
Information Model", RFC 3644, November 2003.
[RFC4032] Camarillo, G. and P. Kyzivat, "Update to the Session
Initiation Protocol (SIP) Preconditions Framework",
RFC 4032, March 2005.
[RFC4301] Kent, S. and K. Seo, "Security Architecture for the
Internet Protocol", RFC 4301, December 2005.
[RFC4302] Kent, S., "IP Authentication Header", RFC 4302,
December 2005.
[RFC4303] Kent, S., "IP Encapsulating Security Payload (ESP)",
RFC 4303, December 2005.
[RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP:
Session Description Protocol", RFC 4566, July 2006.
[RFC4741] Enns, R., "NETCONF Configuration Protocol", RFC 4741,
December 2006.
[RFC4860] Le Faucheur, F., Davie, B., Bose, P., Christou, C.,
and M. Davenport, "Generic Aggregate Resource
ReSerVation Protocol (RSVP) Reservations", RFC 4860,
May 2007.
[RFC4923] Baker, F. and P. Bose, "Quality of Service (QoS)
Signaling in a Nested Virtual Private Network",
RFC 4923, August 2007.
[RFC5277] Chisholm, S. and H. Trevino, "NETCONF Event
Notifications", RFC 5277, July 2008.
[RFC5432] Polk, J., Dhesikan, S., and G. Camarillo, "Quality of
Service (QoS) Mechanism Selection in the Session
Description Protocol (SDP)", RFC 5432, March 2009.
Le Faucheur, et al. Informational [Page 38]
^L
RFC 5945 RSVP Proxy Approaches October 2010
[RFC5853] Hautakorpi, J., Camarillo, G., Penfield, R.,
Hawrylyshen, A., and M. Bhatia, "Requirements from
Session Initiation Protocol (SIP) Session Border
Control (SBC) Deployments", RFC 5853, April 2010.
[RFC5866] Sun, D., McCann, P., Tschofenig, H., Tsou, T., Doria,
A., and G. Zorn, "Diameter Quality-of-Service
Application", RFC 5866, May 2010.
[RFC5946] Le Faucheur, F., Manner, J., Narayanan, A., Guillou,
A., and H. Malik, "Resource Reservation Protocol
(RSVP) Extensions for Path-Triggered RSVP Receiver
Proxy", RFC 5946, October 2010.
[RFC5974] Manner, J., Karagiannis, G., and A. McDonald, "NSIS
Signaling Layer Protocol (NSLP) for Quality-of-
Service Signaling", RFC 5974, October 2010.
[RSVP-SEC-KEY] Behringer, M. and F. Le Faucheur, "Applicability of
Keying Methods for RSVP Security", Work in Progress,
June 2009.
[RTR-ALERT] Le Faucheur, F., "IP Router Alert Considerations and
Usage", Work in Progress, October 2009.
[W3C] "World Wide Web Consortium (W3C) - Web Services
Architecture", <http://www.w3.org/TR/ws-arch/>.
Le Faucheur, et al. Informational [Page 39]
^L
RFC 5945 RSVP Proxy Approaches October 2010
Appendix A. Use Cases for RSVP Proxies
A.1. RSVP-Based VoD Admission Control in Broadband Aggregation Networks
As broadband services for residential customers are becoming more and
more prevalent, next-generation aggregation networks are being
deployed in order to aggregate traffic from broadband users (whether
attached via Digital Subscriber Line technology, aka DSL; Fiber To
The Home/Curb, aka FTTx; Cable; or other broadband access
technology). Video on Demand (VoD) services, which may be offered to
broadband users, present significant capacity planning challenges for
the aggregation network for a number of reasons. First, each VoD
stream requires significant dedicated sustained bandwidth (typically
2-4 Mb/s in Standard Definition TV and 6-12 Mb/s in High Definition
TV). Secondly, the VoD codec algorithms are very sensitive to packet
loss. Finally, the load resulting from such services is very hard to
predict (e.g., it can vary quite suddenly with blockbuster titles
made available as well as with promotional offerings). As a result,
transport of VoD streams on the aggregation network usually translate
into a strong requirement for admission control. The admission
control solution protects the quality of established VoD sessions by
rejecting the additional excessive session attempts during
unpredictable peaks, during link or node failures, or a combination
of those factors.
RSVP can be used in the aggregation network for admission control of
the VoD sessions. However, since customer premises equipment such as
Set Top Boxes (STBs) (which behave as the receiver for VoD streams)
often do not support RSVP, the last IP hop in the aggregation network
can behave as an RSVP Receiver Proxy. This way, RSVP can be used
between VoD pumps and the last IP hop in the aggregation network to
perform accurate admission control of VoD streams over the resources
set aside for VoD in the aggregation network (typically a certain
percentage of the bandwidth of any link). As VoD streams are
unidirectional, a simple Path-Triggered RSVP Receiver Proxy (as
described in Section 4.1) is all that is required in this use case.
Figure 14 illustrates operation of RSVP-based admission control of
VoD sessions in an aggregation network involving RSVP support on the
VoD pump (the senders) and the RSVP Receiver proxy on the last IP hop
of the aggregation network. All the customer premises equipment
remains RSVP-unaware.
Le Faucheur, et al. Informational [Page 40]
^L
RFC 5945 RSVP Proxy Approaches October 2010
|-------------|
| VoD SRM |
| |
////////| |\\\\\\\\\\\\\\
/ |-------------| \
/ \
/ \
/ \
/ \
/ \
|****| *** *** *** |********| |-----| |---|
|VoD |---*r*---*r*---*r*---|RSVP |---|DSLAM|~~~~|STB|--TV
|Pump| *** *** *** |Receiver| |-----| |---|
|****| |Proxy |
|********|
<---Aggregation Net----------->
************************************************>
==============RSVP================>
SRM Session Resource Manager
*** |---|
*r* regular RSVP |STB| Set Top Box
*** router |---|
***> VoD media flow
==> segment of flow path protected by RSVP reservation
/\ VoD Application-level signaling (e.g., RTSP)
Figure 14: VoD Use Case with Receiver Proxy
In the case where the VoD pumps are not RSVP-capable, an
Application_Entity-Controlled Sender Proxy via the "RSVP over GRE"
approach (as described in Section 4.5.1) can also be implemented on
the VoD Controller or Session Resource Manager (SRM) devices
typically involved in VoD deployments. Figure 15 illustrates
operation of RSVP-based admission control of VoD sessions in an
aggregation network involving such an Application_Entity-Controlled
Source Proxy combined with an RSVP Receiver Proxy on the last IP hop
of the aggregation network. All the customer premises equipment, as
well as the VoD pumps, remain RSVP-unaware.
Le Faucheur, et al. Informational [Page 41]
^L
RFC 5945 RSVP Proxy Approaches October 2010
|-------------|
////| VoD SRM |\\\\\\\\\\\
/ | | \
/ | + | \
/ | RSVP Sender | \
/ |Proxy Control| \
/ |-------------| \
/ /=/ \
/ /=/ \
/ /=/ \
/ /=/ \
/ /=/ \
|----| |******| *** *** |********| |-----| |---|
| VoD|--|RSVP |----*r*--*r*--|RSVP |--|DSLAM|~~~~|STB|--TV
|Pump| |Sender| *** *** |Receiver| |-----| |---|
|----| |Proxy | |Proxy |
|******| |********|
<---Aggregation Net------------->
************************************************>
=========RSVP==============>
SRM Systems Resource Manager
*** |---|
*r* regular RSVP |STB| Set Top Box
*** router |---|
***> VoD media flow
==> segment of flow path protected by RSVP reservation
/ VoD Application-level signaling (e.g., RTSP)
/=/ GRE-tunneled RSVP (Path messages)
Figure 15: VoD Use Case with Receiver Proxy
and SRM-Based Sender Proxy
The RSVP proxy entities specified in this document play a significant
role here since they allow immediate deployment of an RSVP-based
admission control solution for VoD without requiring any upgrade to
the huge installed base of non-RSVP-capable customer premises
equipment. In one mode described above, they also avoid upgrade of
non-RSVP-capable VoD pumps. In turn, this means that the benefits of
Le Faucheur, et al. Informational [Page 42]
^L
RFC 5945 RSVP Proxy Approaches October 2010
on-path admission control can be offered to VoD services over
broadband aggregation networks without network or VoD pump upgrade.
Those include accurate bandwidth accounting regardless of topology
(hub-and-spoke, ring, mesh, star, arbitrary combinations) and dynamic
adjustment to any change in topology (such as failure, routing
change, additional links, etc.).
A.2. RSVP-Based Voice/Video Connection Admission Control (CAC) in
Enterprise WAN
More and more enterprises are migrating their telephony and
videoconferencing applications onto IP. When doing so, there is a
need for retaining admission control capabilities of existing TDM-
based (Time-Division Multiplexing) systems to ensure the QoS of these
applications is maintained even when transiting through the
enterprise's Wide Area Network (WAN). Since many of the endpoints
already deployed (such as IP phones or videoconferencing terminals)
are not RSVP-capable, RSVP proxy approaches are very useful: they
allow deployment of an RSVP-based admission control solution over the
WAN without requiring upgrade of the existing terminals.
A common deployment architecture for such environments relies on the
Application_Entity-Controlled Proxy approach as defined in
Section 4.5. Routers sitting at the edges of the WAN are naturally
"on-path" for all inter-campus calls (or sessions) and behave as RSVP
proxies. The RSVP proxies establish, maintain, and tear down RSVP
reservations over the WAN segment for the calls (or sessions) under
the control of the SIP server/proxy. The SIP server/proxy
synchronizes the RSVP reservation status with the status of end-to-
end calls. For example, the called IP phone will only be instructed
to play a ring tone if the RSVP reservation over the corresponding
WAN segment has been successfully established.
This architecture allowing RSVP-based admission control of voice and
video on the enterprise WAN is illustrated in Figure 16.
Le Faucheur, et al. Informational [Page 43]
^L
RFC 5945 RSVP Proxy Approaches October 2010
|---------|
//////////////| SIP |\\\\\\\\\\\\
/ | Server/ | \
/ | Proxy | \
/ |---------| \
/ // \\ \
/ // \\ \
/ // \\ \
/ // \\ \
/ // \\ \
|-----| |********| *** *** |********| |-----|
| IP |------| Media |---*r*---*r*---| Media |-------|IP |
|Phone| | Relay | *** *** | Relay | |Phone|
|-----| | + | | + | |-----|
| RSVP | | RSVP |
| Proxy | | Proxy |
|********| |********|
<--campus--> <--campus-->
network network
<---------WAN----------->
<*************> <***********************> <**************>
<=========RSVP===========>
***
*r* Regular RSVP router
***
<***> media flow
<==> segment of flow path protected by RSVP reservation
/\ SIP signaling
// control interface between the SIP server/proxy and
RSVP proxy
Figure 16: CAC on Enterprise WAN Use Case
A.3. RSVP Proxies for Mobile Access Networks
Mobile access networks are increasingly based on IP technology. This
implies that, on the network layer, all traffic, both traditional
data and streamed data like audio or video, is transmitted as
Le Faucheur, et al. Informational [Page 44]
^L
RFC 5945 RSVP Proxy Approaches October 2010
packets. Increasingly popular multimedia applications would benefit
from better than best-effort service from the network, a forwarding
service with strict Quality of Service (QoS) with guaranteed minimum
bandwidth and bounded delay. Other applications, such as electronic
commerce, network control and management, and remote-login
applications, would also benefit from a differentiated treatment.
The IETF has two main models for providing differentiated treatment
of packets in routers. The Integrated Services (IntServ) model
[RFC1633], together with the Resource Reservation Protocol (RSVP)
[RFC2205], [RFC2210], [RFC2961] provides per-flow guaranteed end-to-
end transmission service. The Differentiated Services (Diffserv)
framework [RFC2475] provides non-signaled flow differentiation that
usually provides, but does not guarantee, proper transmission
service.
However, these architectures have potential weaknesses for deployment
in Mobile Access Networks. For example, RSVP requires support from
both communication endpoints, and the protocol may have potential
performance issues in mobile environments. Diffserv can only provide
statistical guarantees and is not well suited for dynamic
environments.
Let us consider a scenario, where a fixed network correspondent node
(CN) would be sending a multimedia stream to an end host behind a
wireless link. If the correspondent node does not support RSVP, it
cannot signal its traffic characteristics to the network and request
specific forwarding services. Likewise, if the correspondent node is
not able to mark its traffic with a proper Differentiated Services
codepoint (DSCP) to trigger service differentiation, the multimedia
stream will get only best-effort service, which may result in poor
visual and audio quality in the receiving application. Even if the
connecting wired network is over-provisioned, an end host would still
benefit from local resource reservations, especially in wireless
access networks, where the bottleneck resource is most probably the
wireless link.
RSVP proxies would be a very beneficial solution to this problem. It
would allow distinguishing local network reservations from the end-
to-end reservations. The end host does not need to know the access
network topology or the nodes that will reserve the local resources.
The access network would do resource reservations for both incoming
and outgoing flows based on certain criteria, e.g., filters based on
application protocols. Another option is that the mobile end host
makes an explicit reservation that identifies the intention, and the
access network will find the correct local access network node(s) to
respond to the reservation. RSVP proxies would, thus, allow resource
reservation over the segment that is the most likely bottleneck, the
Le Faucheur, et al. Informational [Page 45]
^L
RFC 5945 RSVP Proxy Approaches October 2010
wireless link. If the wireless access network uses a local mobility
management mechanism, where the IP address of the mobile node does
not change during handover, RSVP reservations would follow the mobile
node movement.
A.4. RSVP Proxies for Reservations in the Presence of IPsec Gateways
[RFC4923] discusses how resource reservation can be supported end-to-
end in a nested VPN environment. At each VPN level, VPN routers
behave as [RFC4301] security gateways between a plaintext domain and
a ciphertext domain. To achieve end-to-end resource reservation, the
VPN routers process RSVP signaling on the plaintext side, perform
aggregation of plaintext reservations, and maintain the corresponding
aggregate RSVP reservations on the ciphertext side. Each aggregate
reservation is established on behalf of multiple encrypted end-to-end
sessions sharing the same ingress and egress VPN routers. These
aggregate reservations can be as specified in [RFC3175] or [RFC4860].
Section 3 of [RFC4923] discusses the necessary data flows within a
VPN router to achieve the behavior described in the previous
paragraph. Two mechanisms are described to achieve such data flows.
Section 3.1 presents the case where the VPN router carries data
across the cryptographic boundary. Section 3.2 discusses the case
where the VPN router uses a Network Guard.
Where such mechanisms are not supported by the VPN routers, the
approach for end-to-end reservations presented in [RFC4923] cannot be
deployed. An alternative approach to support resource reservations
within the ciphertext core is to use the Application_Entity-
Controlled Proxy approach (as defined in Section 4.5) in the
following way:
o the RSVP proxies are located inside the ciphertext domain and use
aggregate RSVP reservations.
o the application entity exchange application-level signaling with
the end-systems in the plaintext domain.
o the application entity controls the RSVP proxies in the ciphertext
domain via an RSVP proxy control interface.
This is illustrated in Figure 17 in the case where the application is
SIP-based multimedia communications.
Le Faucheur, et al. Informational [Page 46]
^L
RFC 5945 RSVP Proxy Approaches October 2010
|-------| |-------|
|SIP |///////////////////\\\\\\\\\\\\\\\\\|SIP |
/|Server/| |Server/|\
/ |Proxy | |Proxy | \
/ |-------| |-------| \
/ ^ \\ // ^ \
/ ^ \\ // ^ \
/ ^ \\ // ^ \
|***| |------| |********| *** *** |********| |------| |***|
| S |---|IPsec |--| ARSVP |---*r*---*r*---| ARSVP |--|IPsec |---| R |
|***| | GW | | Sender | *** *** |Receiver| | GW | |***|
|------| | Proxy | | Proxy | |------|
|********| |********|
***PT*****> **********************CT****************> ****PT***>
=====> =====>
=====ARSVP======>
|****| RSVP-capable |****| RSVP-capable ***
| S | Sender | R | Receiver *r* regular RSVP
|****| |****| *** router
|------|
|IPsec | IPsec security gateway
| GW |
|------|
ARSVP Aggregate RSVP
***> media flow
==> segment of flow path protected by RSVP reservation
/ \ SIP signaling
^ Network management interface between SIP server/proxy
and IPsec security gateway
// control interface between SIP server/proxy and ARSVP proxy
PT Plaintext network
CT Ciphertext network
Figure 17: RSVP Proxies for Reservations in the Presence of
IPsec Gateways
Le Faucheur, et al. Informational [Page 47]
^L
RFC 5945 RSVP Proxy Approaches October 2010
Where the sender and receiver are RSVP-capable, they may also use
RSVP signaling. This achieves resource reservation on the plaintext
segments of the end-to-end, i.e.,
o from the sender to the ingress IPsec gateway, and
o from the egress IPsec gateway to the receiver.
In this use case, because the VPN routers do not support any RSVP-
specific mechanism, the end-to-end RSVP signaling is effectively
hidden by the IPsec gateways on the ciphertext segment of the end-to-
end path.
As with the Application_Entity-Controlled Proxy approach (defined in
Section 4.5), the solution here for synchronizing RSVP signaling with
application-level signaling is to rely on an application-level
signaling device that controls an on-path RSVP proxy function.
However, in this use case, the RSVP proxies are a component of a
ciphertext network where all user (bearer) traffic is IPsec
encrypted. This has a number of implications, including the
following:
1. encrypted flows cannot be identified in the ciphertext domain so
that network nodes can only classify traffic based on IP address
and Differentiated Services codepoints (DSCPs). As a result,
only aggregate RSVP reservations (such as those specified in
[RFC3175] or [RFC4860]) can be used. This is similar to
[RFC4923].
2. Determining the RSVP Sender Proxy and RSVP Receiver Proxy to be
used for aggregation of a given flow from sender to receiver
creates a number of challenges. Details on how this may be
achieved are beyond the scope of this document. We observe that,
as illustrated in Figure 17, this may be facilitated by a network
management interface between the application entity and the IPsec
gateways. For example, this interface may be used by the
application entity to obtain information about which IPsec
gateway is on the path of a given end-to-end flow. Then, the
application entity may maintain awareness of which RSVP proxy is
on the ciphertext path between a given pair of IPsec gateways.
How such awareness is achieved is beyond the scope of this
document. We simply observe that such awareness can be easily
achieved through simple configuration in the particular case
where a single (physical or logical) RSVP proxy is fronting a
given IPsec gateway. We also observe that when awareness of the
RSVP Receiver Proxy for a particular egress IPsec gateway (or
Le Faucheur, et al. Informational [Page 48]
^L
RFC 5945 RSVP Proxy Approaches October 2010
end-to-end flow) is not available, the aggregate reservation may
be signaled by the RSVP Sender Proxy to the destination address
of the egress IPsec gateway and then proxied by the RSVP Receiver
Proxy.
Different flavors of operations are possible in terms of aggregate
reservation sizing. For example, the application entity can initiate
an aggregate reservation of fixed size a priori and then simply keep
count of the bandwidth used by sessions and reject sessions that
would result in excess usage of an aggregate reservation. The
application entity could also re-size the aggregate reservations on a
session-by-session basis. Alternatively, the application entity
could re-size the aggregate reservations in step increments typically
corresponding to the bandwidth requirement of multiple sessions.
Le Faucheur, et al. Informational [Page 49]
^L
RFC 5945 RSVP Proxy Approaches October 2010
Authors' Addresses
Francois Le Faucheur
Cisco Systems
Greenside, 400 Avenue de Roumanille
Sophia Antipolis 06410
France
Phone: +33 4 97 23 26 19
EMail: flefauch@cisco.com
Jukka Manner
Aalto University
Department of Communications and Networking (Comnet)
P.O. Box 13000
FIN-00076 Aalto
Finland
Phone: +358 9 470 22481
EMail: jukka.manner@tkk.fi
URI: http://www.netlab.tkk.fi/~jmanner/
Dan Wing
Cisco Systems
170 West Tasman Drive
San Jose, CA 95134
United States
EMail: dwing@cisco.com
Allan Guillou
SFR
40-42 Quai du Point du Jour
Boulogne-Billancourt 92659
France
EMail: allan.guillou@sfr.com
Le Faucheur, et al. Informational [Page 50]
^L
|