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
|
Network Working Group G. Montenegro
Request for Comments: 2757 Sun Microsystems, Inc.
Category: Informational S. Dawkins
Nortel Networks
M. Kojo
University of Helsinki
V. Magret
Alcatel
N. Vaidya
Texas A&M University
January 2000
Long Thin Networks
Status of this Memo
This memo provides information for the Internet community. It does
not specify an Internet standard of any kind. Distribution of this
memo is unlimited.
Copyright Notice
Copyright (C) The Internet Society (2000). All Rights Reserved.
Abstract
In view of the unpredictable and problematic nature of long thin
networks (for example, wireless WANs), arriving at an optimized
transport is a daunting task. We have reviewed the existing
proposals along with future research items. Based on this overview,
we also recommend mechanisms for implementation in long thin
networks.
Our goal is to identify a TCP that works for all users, including
users of long thin networks. We started from the working
recommendations of the IETF TCP Over Satellite Links (tcpsat) working
group with this end in mind.
We recognize that not every tcpsat recommendation will be required
for long thin networks as well, and work toward a set of TCP
recommendations that are 'benign' in environments that do not require
them.
Montenegro, et al. Informational [Page 1]
^L
RFC 2757 Long Thin Networks January 2000
Table of Contents
1 Introduction ................................................. 3
1.1 Network Architecture .................................... 5
1.2 Assumptions about the Radio Link ........................ 6
2 Should it be IP or Not? ..................................... 7
2.1 Underlying Network Error Characteristics ................ 7
2.2 Non-IP Alternatives ..................................... 8
2.2.1 WAP ................................................ 8
2.2.2 Deploying Non-IP Alternatives ...................... 9
2.3 IP-based Considerations ................................. 9
2.3.1 Choosing the MTU [Stevens94, RFC1144] .............. 9
2.3.2 Path MTU Discovery [RFC1191] ....................... 10
2.3.3 Non-TCP Proposals .................................. 10
3 The Case for TCP ............................................. 11
4 Candidate Optimizations ...................................... 12
4.1 TCP: Current Mechanisms ................................. 12
4.1.1 Slow Start and Congestion Avoidance ................ 12
4.1.2 Fast Retransmit and Fast Recovery .................. 12
4.2 Connection Setup with T/TCP [RFC1397, RFC1644] .......... 14
4.3 Slow Start Proposals .................................... 14
4.3.1 Larger Initial Window .............................. 14
4.3.2 Growing the Window during Slow Start ............... 15
4.3.2.1 ACK Counting .................................. 15
4.3.2.2 ACK-every-segment ............................. 16
4.3.3 Terminating Slow Start ............................. 17
4.3.4 Generating ACKs during Slow Start .................. 17
4.4 ACK Spacing ............................................. 17
4.5 Delayed Duplicate Acknowlegements ....................... 18
4.6 Selective Acknowledgements [RFC2018] .................... 18
4.7 Detecting Corruption Loss ............................... 19
4.7.1 Without Explicit Notification ...................... 19
4.7.2 With Explicit Notifications ........................ 20
4.8 Active Queue Management ................................. 21
4.9 Scheduling Algorithms ................................... 21
4.10 Split TCP and Performance-Enhancing Proxies (PEPs) ..... 22
4.10.1 Split TCP Approaches .............................. 23
4.10.2 Application Level Proxies ......................... 26
4.10.3 Snoop and its Derivatives ......................... 27
4.10.4 PEPs to handle Periods of Disconnection ........... 29
4.11 Header Compression Alternatives ........................ 30
4.12 Payload Compression .................................... 31
4.13 TCP Control Block Interdependence [Touch97] ............ 32
5 Summary of Recommended Optimizations ......................... 33
6 Conclusion ................................................... 35
7 Acknowledgements ............................................. 35
8 Security Considerations ...................................... 35
Montenegro, et al. Informational [Page 2]
^L
RFC 2757 Long Thin Networks January 2000
9 References ................................................... 36
Authors' Addresses ............................................. 44
Full Copyright Statement ....................................... 46
1 Introduction
Optimized wireless networking is one of the major hurdles that Mobile
Computing must solve if it is to enable ubiquitous access to
networking resources. However, current data networking protocols have
been optimized primarily for wired networks. Wireless environments
have very different characteristics in terms of latency, jitter, and
error rate as compared to wired networks. Accordingly, traditional
protocols are ill-suited to this medium.
Mobile Wireless networks can be grouped in W-LANs (for example,
802.11 compliant networks) and W-WANs (for example, CDPD [CDPD],
Ricochet, CDMA [CDMA], PHS, DoCoMo, GSM [GSM] to name a few). W-WANs
present the most serious challenge, given that the length of the
wireless link (expressed as the delay*bandwidth product) is typically
4 to 5 times as long as that of its W-LAN counterparts. For example,
for an 802.11 network, assuming the delay (round-trip time) is about
3 ms. and the bandwidth is 1.5 Mbps, the delay*bandwidth product is
4500 bits. For a W-WAN such as Ricochet, a typical round-trip time
may be around 500 ms. (the best is about 230 ms.), and the sustained
bandwidth is about 24 Kbps. This yields a delay*bandwidth product
roughly equal to 1.5 KB. In the near future, 3rd Generation wireless
services will offer 384Kbps and more. Assuming a 200 ms round-trip,
the delay*bandwidth product in this case is 76.8 Kbits (9.6 KB). This
value is larger than the default 8KB buffer space used by many TCP
implementations. This means that, whereas for W-LANs the default
buffer space is enough, future W-WANs will operate inefficiently
(that is, they will not be able to fill the pipe) unless they
override the default value. A 3rd Generation wireless service
offering 2 Mbps with 200-millisecond latency requires a 50 KB buffer.
Most importantly, latency across a link adversely affects
throughput. For example, [MSMO97] derives an upper bound on TCP
throughput. Indeed, the resultant expression is inversely related to
the round-trip time.
The long latencies also push the limits (and commonly transgress
them) for what is acceptable to users of interactive applications.
As a quick glance to our list of references will reveal, there is a
wealth of proposals that attempt to solve the wireless networking
problem. In this document, we survey the different solutions
available or under investigation, and issue the corresponding
recommendations.
Montenegro, et al. Informational [Page 3]
^L
RFC 2757 Long Thin Networks January 2000
There is a large body of work on the subject of improving TCP
performance over satellite links. The documents under development by
the tcpsat working group of the IETF [AGS98, ADGGHOSSTT98] are very
relevant. In both cases, it is essential to start by improving the
characteristics of the medium by using forward error correction (FEC)
at the link layer to reduce the BER (bit error rate) from values as
high as 10-3 to 10-6 or better. This makes the BER manageable. Once
in this realm, retransmission schemes like ARQ (automatic repeat
request) may be used to bring it down even further. Notice that
sometimes it may be desirable to forego ARQ because of the additional
delay it implies. In particular, time sensitive traffic (video,
audio) must be delivered within a certain time limit beyond which the
data is obsolete. Exhaustive retransmissions in this case merely
succeed in wasting time in order to deliver data that will be
discarded once it arrives at its destination. This indicates the
desirability of augmenting the protocol stack implementation on
devices such that the upper protocol layers can inform the link and
MAC layer when to avoid such costly retransmission schemes.
Networks that include satellite links are examples of "long fat
networks" (LFNs or "elephants"). They are "long" networks because
their round-trip time is quite high (for example, 0.5 sec and higher
for geosynchronous satellites). Not all satellite links fall within
the LFN regime. In particular, round-trip times in a low-earth
orbiting (LEO) satellite network may be as little as a few
milliseconds (and never extend beyond 160 to 200 ms). W-WANs share
the "L" with LFNs. However, satellite networks are also "fat" in the
sense that they may have high bandwidth. Satellite networks may often
have a delay*bandwidth product above 64 KBytes, in which case they
pose additional problems to TCP [TCPHP]. W-WANs do not generally
exhibit this behavior. Accordingly, this document only deals with
links that are "long thin pipes", and the networks that contain them:
"long thin networks". We call these "LTNs".
This document does not give an overview of the API used to access the
underlying transport. We believe this is an orthogonal issue, even
though some of the proposals below have been put forth assuming a
given interface. It is possible, for example, to support the
traditional socket semantics without fully relying on TCP/IP
transport [MOWGLI].
Our focus is on the on-the-wire protocols. We try to include the most
relevant ones and briefly (given that we provide the references
needed for further study) mention their most salient points.
Montenegro, et al. Informational [Page 4]
^L
RFC 2757 Long Thin Networks January 2000
1.1 Network Architecture
One significant difference between LFNs and LTNs is that we assume
the W-WAN link is the last hop to the end user. This allows us to
assume that a single intermediate node sees all packets transferred
between the wireless mobile device and the rest of the Internet.
This is only one of the topologies considered by the TCP Satellite
community.
Given our focus on mobile wireless applications, we only consider a
very specific architecture that includes:
- a wireless mobile device, connected via
- a wireless link (which may, in fact comprise several hops at
the link layer), to
- an intermediate node (sometimes referred to as a base station)
connected via
- a wireline link, which in turn interfaces with
- the landline Internet and millions of legacy servers and web
sites.
Specifically, we are not as concerned with paths that include two
wireless segments separated by a wired one. This may occur, for
example, if one mobile device connects across its immediate wireless
segment via an intermediate node to the Internet, and then via a
second wireless segment to another mobile device. Quite often,
mobile devices connect to a legacy server on the wired Internet.
Typically, the endpoints of the wireless segment are the intermediate
node and the mobile device. However, the latter may be a wireless
router to a mobile network. This is also important and has
applications in, for example, disaster recovery.
Our target architecture has implications which concern the
deployability of candidate solutions. In particular, an important
requirement is that we cannot alter the networking stack on the
legacy servers. It would be preferable to only change the networking
stack at the intermediate node, although changing it at the mobile
devices is certainly an option and perhaps a necessity.
We envision mobile devices that can use the wireless medium very
efficiently, but overcome some of its traditional constraints. That
is, full mobility implies that the devices have the flexibility and
agility to use whichever happens to be the best network connection
Montenegro, et al. Informational [Page 5]
^L
RFC 2757 Long Thin Networks January 2000
available at any given point in time or space. Accordingly, devices
could switch from a wired office LAN and hand over their ongoing
connections to continue on, say, a wireless WAN. This type of agility
also requires Mobile IP [RFC2002].
1.2 Assumptions about the Radio Link
The system architecture described above assumes at most one wireless
link (perhaps comprising more than one wireless hop). However, this
is not enough to characterize a wireless link. Additional
considerations are:
- What are the error characteristics of the wireless medium? The
link may present a higher BER than a wireline network due to
burst errors and disconnections. The techniques below usually
do not address all the types of errors. Accordingly, a complete
solution should combine the best of all the proposals.
Nevertheless, in this document we are more concerned with (and
give preference to solving) the most typical case: (1) higher
BER due to random errors (which implies longer and more
variable delays due to link-layer error corrections and
retransmissions) rather than (2) an interruption in service due
to a handoff or a disconnection. The latter are also important
and we do include relevant proposals in this survey.
- Is the wireless service datagram oriented, or is it a virtual
circuit? Currently, switched virtual circuits are more common,
but packet networks are starting to appear, for example,
Metricom's Starmode [CB96], CDPD [CDPD] and General Packet
Radio Service (GPRS) [GPRS],[BW97] in GSM.
- What kind of reliability does the link provide? Wireless
services typically retransmit a packet (frame) until it has
been acknowledged by the target. They may allow the user to
turn off this behavior. For example, GSM allows RLP [RLP]
(Radio Link Protocol) to be turned off. Metricom has a
similar "lightweight" mode. In GSM RLP, a frame is
retransmitted until the maximum number of retransmissions
(protocol parameter) is reached. What happens when this limit
is reached is determined by the telecom operator: the physical
link connection is either disconnected or a link reset is
enforced where the sequence numbers are resynchronized and the
transmit and receive buffers are flushed resulting in lost
data. Some wireless services, like CDMA IS95-RLP [CDMA,
Karn93], limit the latency on the wireless link by
retransmitting a frame only a couple of times. This decreases
the residual frame error rate significantly, but does not
provide fully reliable link service.
Montenegro, et al. Informational [Page 6]
^L
RFC 2757 Long Thin Networks January 2000
- Does the mobile device transmit and receive at the same time?
Doing so increases the cost of the electronics on the mobile
device. Typically, this is not the case. We assume in this
document that mobile devices do not transmit and receive
simultaneously.
- Does the mobile device directly address more than one peer on
the wireless link? Packets to each different peer may traverse
spatially distinct wireless paths. Accordingly, the path to
each peer may exhibit very different characteristics. Quite
commonly, the mobile device addresses only one peer (the
intermediate node) at any given point in time. When this is
not the case, techniques such as Channel-State Dependent Packet
Scheduling come into play (see the section "Packet Scheduling"
below).
2 Should it be IP or Not?
The first decision is whether to use IP as the underlying network
protocol or not. In particular, some data protocols evolved from
wireless telephony are not always -- though at times they may be --
layered on top of IP [MOWGLI, WAP]. These proposals are based on the
concept of proxies that provide adaptation services between the
wireless and wireline segments.
This is a reasonable model for mobile devices that always communicate
through the proxy. However, we expect many wireless mobile devices to
utilize wireline networks whenever they are available. This model
closely follows current laptop usage patterns: devices typically
utilize LANs, and only resort to dial-up access when "out of the
office."
For these devices, an architecture that assumes IP is the best
approach, because it will be required for communications that do not
traverse the intermediate node (for example, upon reconnection to a
W-LAN or a 10BaseT network at the office).
2.1 Underlying Network Error Characteristics
Using IP as the underlying network protocol requires a certain (low)
level of link robustness that is expected of wireless links.
IP, and the protocols that are carried in IP packets, are protected
end-to-end by checksums that are relatively weak [Stevens94,
Paxson97] (and, in some cases, optional). For much of the Internet,
these checksums are sufficient; in wireless environments, the error
characteristics of the raw wireless link are much less robust than
the rest of the end-to-end path. Hence for paths that include
Montenegro, et al. Informational [Page 7]
^L
RFC 2757 Long Thin Networks January 2000
wireless links, exclusively relying on end-to-end mechanisms to
detect and correct transmission errors is undesirable. These should
be complemented by local link-level mechanisms. Otherwise, damaged IP
packets are propagated through the network only to be discarded at
the destination host. For example, intermediate routers are required
to check the IP header checksum, but not the UDP or TCP checksums.
Accordingly, when the payload of an IP packet is corrupted, this is
not detected until the packet arrives at its ultimate destination.
A better approach is to use link-layer mechanisms such as FEC,
retransmissions, and so on in order to improve the characteristics of
the wireless link and present a much more reliable service to IP.
This approach has been taken by CDPD, Ricochet and CDMA.
This approach is roughly analogous to the successful deployment of
Point-to-Point Protocol (PPP), with robust framing and 16-bit
checksumming, on wireline networks as a replacement for the Serial
Line Interface Protocol (SLIP), with only a single framing byte and
no checksumming.
[AGS98] recommends the use of FEC in satellite environments.
Notice that the link-layer could adapt its frame size to the
prevalent BER. It would perform its own fragmentation and reassembly
so that IP could still enjoy a large enough MTU size [LS98].
A common concern for using IP as a transport is the header overhead
it implies. Typically, the underlying link-layer appears as PPP
[RFC1661] to the IP layer above. This allows for header compression
schemes [IPHC, IPHC-RTP, IPHC-PPP] which greatly alleviate the
problem.
2.2 Non-IP Alternatives
A number of non-IP alternatives aimed at wireless environments have
been proposed. One representative proposal is discussed here.
2.2.1 WAP
The Wireless Application Protocol (WAP) specifies an application
framework and network protocols for wireless devices such as mobile
telephones, pagers, and PDAs [WAP]. The architecture requires a proxy
between the mobile device and the server. The WAP protocol stack is
layered over a datagram transport service. Such a service is
provided by most wireless networks; for example, IS-136, GSM
SMS/USSD, and UDP in IP networks like CDPD and GSM GPRS. The core of
Montenegro, et al. Informational [Page 8]
^L
RFC 2757 Long Thin Networks January 2000
the WAP protocols is a binary HTTP/1.1 protocol with additional
features such as header caching between requests and a shared state
between client and server.
2.2.2 Deploying Non-IP Alternatives
IP is such a fundamental element of the Internet that non-IP
alternatives face substantial obstacles to deployment, because they
do not exploit the IP infrastructure. Any non-IP alternative that is
used to provide gatewayed access to the Internet must map between IP
addresses and non-IP addresses, must terminate IP-level security at a
gateway, and cannot use IP-oriented discovery protocols (Dynamic Host
Configuration Protocol, Domain Name Services, Lightweight Directory
Access Protocol, Service Location Protocol, etc.) without translation
at a gateway.
A further complexity occurs when a device supports both wireless and
wireline operation. If the device uses IP for wireless operation,
uninterrupted operation when the device is connected to a wireline
network is possible (using Mobile IP). If a non-IP alternative is
used, this switchover is more difficult to accomplish.
Non-IP alternatives face the burden of proof that IP is so ill-suited
to a wireless environment that it is not a viable technology.
2.3 IP-based Considerations
Given its worldwide deployment, IP is an obvious choice for the
underlying network technology. Optimizations implemented at this
level benefit traditional Internet application protocols as well as
new ones layered on top of IP or UDP.
2.3.1 Choosing the MTU [Stevens94, RFC1144]
In slow networks, the time required to transmit the largest possible
packet may be considerable. Interactive response time should not
exceed the well-known human factors limit of 100 to 200 ms. This
should be considered the maximum time budget to (1) send a packet and
(2) obtain a response. In most networking stack implementations, (1)
is highly dependent on the maximum transmission unit (MTU). In the
worst case, a small packet from an interactive application may have
to wait for a large packet from a bulk transfer application before
being sent. Hence, a good rule of thumb is to choose an MTU such that
its transmission time is less than (or not much larger than) 200 ms.
Montenegro, et al. Informational [Page 9]
^L
RFC 2757 Long Thin Networks January 2000
Of course, compression and type-of-service queuing (whereby
interactive data packets are given a higher priority) may alleviate
this problem. In particular, the latter may reduce the average wait
time to about half the MTU's transmission time.
2.3.2 Path MTU Discovery [RFC1191]
Path MTU discovery benefits any protocol built on top of IP. It
allows a sender to determine what the maximum end-to-end transmission
unit is to a given destination. Without Path MTU discovery, the
default IPv4 MTU size is 576. The benefits of using a larger MTU are:
- Smaller ratio of header overhead to data
- Allows TCP to grow its congestion window faster, since it
increases in units of segments.
Of course, for a given BER, a larger MTU has a correspondingly larger
probability of error within any given segment. The BER may be reduced
using lower level techniques like FEC and link-layer retransmissions.
The issue is that now delays may become a problem due to the
additional retransmissions, and the fact that packet transmission
time increases with a larger MTU.
Recommendation: Path MTU discovery is recommended. [AGS98] already
recommends its use in satellite environments.
2.3.3 Non-TCP Proposals
Other proposals assume an underlying IP datagram service, and
implement an optimized transport either directly on top of IP
[NETBLT] or on top of UDP [MNCP]. Not relying on TCP is a bold move,
given the wealth of experience and research related to it. It could
be argued that the Internet has not collapsed because its main
protocol, TCP, is very careful in how it uses the network, and
generally treats it as a black box assuming all packet losses are due
to congestion and prudently backing off. This avoids further
congestion.
However, in the wireless medium, packet losses may also be due to
corruption due to high BER, fading, and so on. Here, the right
approach is to try harder, instead of backing off. Alternative
transport protocols are:
- NETBLT [NETBLT, RFC1986, RFC1030]
- MNCP [MNCP]
Montenegro, et al. Informational [Page 10]
^L
RFC 2757 Long Thin Networks January 2000
- ESRO [RFC2188]
- RDP [RFC908, RFC1151]
- VMTP [VMTP]
3 The Case for TCP
This is one of the most hotly debated issues in the wireless arena.
Here are some arguments against it:
- It is generally recognized that TCP does not perform well in
the presence of significant levels of non-congestion loss. TCP
detractors argue that the wireless medium is one such case, and
that it is hard enough to fix TCP. They argue that it is easier
to start from scratch.
- TCP has too much header overhead.
- By the time the mechanisms are in place to fix it, TCP is very
heavy, and ill-suited for use by lightweight, portable devices.
and here are some in support of TCP:
- It is preferable to continue using the same protocol that the
rest of the Internet uses for compatibility reasons. Any
extensions specific to the wireless link may be negotiated.
- Legacy mechanisms may be reused (for example three-way
handshake).
- Link-layer FEC and ARQ can reduce the BER such that any losses
TCP does see are, in fact, caused by congestion (or a sustained
interruption of link connectivity). Modern W-WAN technologies
do this (CDPD, US-TDMA, CDMA, GSM), thus improving TCP
throughput.
- Handoffs among different technologies are made possible by
Mobile IP [RFC2002], but only if the same protocols, namely
TCP/IP, are used throughout.
- Given TCP's wealth of research and experience, alternative
protocols are relatively immature, and the full implications of
their widespread deployment not clearly understood.
Overall, we feel that the performance of TCP over long-thin networks
can be improved significantly. Mechanisms to do so are discussed in
the next sections.
Montenegro, et al. Informational [Page 11]
^L
RFC 2757 Long Thin Networks January 2000
4 Candidate Optimizations
There is a large volume of work on the subject of optimizing TCP for
operation over wireless media. Even though satellite networks
generally fall in the LFN regime, our current LTN focus has much to
benefit from it. For example, the work of the TCP-over-Satellite
working group of the IETF has been extremely helpful in preparing
this section [AGS98, ADGGHOSSTT98].
4.1 TCP: Current Mechanisms
A TCP sender adapts its use of bandwidth based on feedback from the
receiver. The high latency characteristic of LTNs implies that TCP's
adaptation is correspondingly slower than on networks with shorter
delays. Similarly, delayed ACKs exacerbate the perceived latency on
the link. Given that TCP grows its congestion window in units of
segments, small MTUs may slow adaptation even further.
4.1.1 Slow Start and Congestion Avoidance
Slow Start and Congestion Avoidance [RFC2581] are essential the
Internet's stability. However there are two reasons why the wireless
medium adversely affects them:
- Whenever TCP's retransmission timer expires, the sender assumes
that the network is congested and invokes slow start. This is
why it is important to minimize the losses caused by
corruption, leaving only those caused by congestion (as
expected by TCP).
- The sender increases its window based on the number of ACKs
received. Their rate of arrival, of course, is dependent on the
RTT (round-trip-time) between sender and receiver, which
implies long ramp-up times in high latency links like LTNs. The
dependency lasts until the pipe is filled.
- During slow start, the sender increases its window in units of
segments. This is why it is important to use an appropriately
large MTU which, in turn, requires requires link layers with
low loss.
4.1.2 Fast Retransmit and Fast Recovery
When a TCP sender receives several duplicate ACKs, fast retransmit
[RFC2581] allows it to infer that a segment was lost. The sender
retransmits what it considers to be this lost segment without waiting
for the full timeout, thus saving time.
Montenegro, et al. Informational [Page 12]
^L
RFC 2757 Long Thin Networks January 2000
After a fast retransmit, a sender invokes the fast recovery [RFC2581]
algorithm. Fast recovery allows the sender to transmit at half its
previous rate (regulating the growth of its window based on
congestion avoidance), rather than having to begin a slow start. This
also saves time.
In general, TCP can increase its window beyond the delay-bandwidth
product. However, in LTN links the congestion window may remain
rather small, less than four segments, for long periods of time due
to any of the following reasons:
1. Typical "file size" to be transferred over a connection is
relatively small (Web requests, Web document objects, email
messages, files, etc.) In particular, users of LTNs are not
very willing to carry out large transfers as the response time
is so long.
2. If the link has high BER, the congestion window tends to stay
small
3. When an LTN is combined with a highly congested wireline
Internet path, congestion losses on the Internet have the same
effect as 2.
4. Commonly, ISPs/operators configure only a small number of
buffers (even as few as for 3 packets) per user in their dial-
up routers
5. Often small socket buffers are recommended with LTNs in order
to prevent the RTO from inflating and to diminish the amount of
packets with competing traffic.
A small window effectively prevents the sender from taking advantage
of Fast Retransmits. Moreover, efficient recovery from multiple
losses within a single window requires adoption of new proposals
(NewReno [RFC2582]). In addition, on slow paths with no packet
reordering waiting for three duplicate ACKs to arrive postpones
retransmission unnecessarily.
Recommendation: Implement Fast Retransmit and Fast Recovery at this
time. This is a widely-implemented optimization and is currently at
Proposed Standard level. [AGS98] recommends implementation of Fast
Retransmit/Fast Recovery in satellite environments. NewReno
[RFC2582] apparently does help a sender better handle partial ACKs
and multiple losses in a single window, but at this point is not
recommended due to its experimental nature. Instead, SACK [RFC2018]
is the preferred mechanism.
Montenegro, et al. Informational [Page 13]
^L
RFC 2757 Long Thin Networks January 2000
4.2 Connection Setup with T/TCP [RFC1397, RFC1644]
TCP engages in a "three-way handshake" whenever a new connection is
set up. Data transfer is only possible after this phase has
completed successfully. T/TCP allows data to be exchanged in
parallel with the connection set up, saving valuable time for short
transactions on long-latency networks.
Recommendation: T/TCP is not recommended, for these reasons:
- It is an Experimental RFC.
- It is not widely deployed, and it has to be deployed at both ends
of a connection.
- Security concerns have been raised that T/TCP is more vulnerable
to address-spoofing attacks than TCP itself.
- At least some of the benefits of T/TCP (eliminating three-way
handshake on subsequent query-response transactions, for instance)
are also available with persistent connections on HTTP/1.1, which
is more widely deployed.
[ADGGHOSSTT98] does not have a recommendation on T/TCP in satellite
environments.
4.3 Slow Start Proposals
Because slow start dominates the network response seen by interactive
users at the beginning of a TCP connection, a number of proposals
have been made to modify or eliminate slow start in long latency
environments.
Stability of the Internet is paramount, so these proposals must
demonstrate that they will not adversely affect Internet congestion
levels in significant ways.
4.3.1 Larger Initial Window
Traditional slow start, with an initial window of one segment, is a
time-consuming bandwidth adaptation procedure over LTNs. Studies on
an initial window larger than one segment [RFC2414, AHO98] resulted
in the TCP standard supporting a maximum value of 2 [RFC2581]. Higher
values are still experimental in nature.
Montenegro, et al. Informational [Page 14]
^L
RFC 2757 Long Thin Networks January 2000
In simulations with an increased initial window of three packets
[RFC2415], this proposal does not contribute significantly to packet
drop rates, and it has the added benefit of improving initial
response times when the peer device delays acknowledgements during
slow start (see next proposal).
[RFC2416] addresses situations where the initial window exceeds the
number of buffers available to TCP and indicates that this situation
is no different from the case where the congestion window grows
beyond the number of buffers available.
[RFC2581] now allows an initial congestion window of two segments. A
larger initial window, perhaps as many as four segments, might be
allowed in the future in environments where this significantly
improves performance (LFNs and LTNs).
Recommendation: Implement this on devices now. The research on this
optimization indicates that 3 segments is a safe initial setting, and
is centering on choosing between 2, 3, and 4. For now, use 2
(following RFC2581), which at least allows clients running query-
response applications to get an initial ACK from unmodified servers
without waiting for a typical delayed ACK timeout of 200
milliseconds, and saves two round-trips. An initial window of 3
[RFC2415] looks promising and may be adopted in the future pending
further research and experience.
4.3.2 Growing the Window during Slow Start
The sender increases its window based on the flow of ACKs coming back
from the receiver. Particularly during slow start, this flow is very
important. A couple of the proposals that have been studied are (1)
ACK counting and (2) ACK-every-segment.
4.3.2.1 ACK Counting
The main idea behind ACK counting is:
- Make each ACK count to its fullest by growing the window based
on the data being acknowledged (byte counting) instead of the
number of ACKs (ACK counting). This has been shown to cause
bursts which lead to congestion. [Allman98] shows that Limited
Byte Counting (LBC), in which the window growth is limited to 2
segments, does not lead to as much burstiness, and offers some
performance gains.
Recommendation: Unlimited byte counting is not recommended. Van
Jacobson cautions against byte counting [TCPSATMIN] because it leads
to burstiness, and recommends ACK spacing [ACKSPACING] instead.
Montenegro, et al. Informational [Page 15]
^L
RFC 2757 Long Thin Networks January 2000
ACK spacing requires ACKs to consistently pass through a single ACK-
spacing router. This requirement works well for W-WAN environments
if the ACK-spacing router is also the intermediate node.
Limited byte counting warrants further investigation before we can
recommend this proposal, but it shows promise.
4.3.2.2 ACK-every-segment
The main idea behind ACK-every-segment is:
- Keep a constant stream of ACKs coming back by turning off
delayed ACKs [RFC1122] during slow start. ACK-every-segment
must be limited to slow start, in order to avoid penalizing
asymmetric-bandwidth configurations. For instance, a low
bandwidth link carrying acknowledgements back to the sender,
hinders the growth of the congestion window, even if the link
toward the client has a greater bandwidth [BPK99].
Even though simulations confirm its promise (it allows receivers to
receive the second segment from unmodified senders without waiting
for a typical delayed ACK timeout of 200 milliseconds), for this
technique to be practical the receiver must acknowledge every segment
only when the sender is in slow start. Continuing to do so when the
sender is in congestion avoidance may have adverse effects on the
mobile device's battery consumption and on traffic in the network.
This violates a SHOULD in [RFC2581]: delayed acknowledgements SHOULD
be used by a TCP receiver.
"Disabling Delayed ACKs During Slow Start" is technically
unimplementable, as the receiver has no way of knowing when the
sender crosses ssthresh (the "slow start threshold") and begins using
the congestion avoidance algorithm. If receivers follow
recommendations for increased initial windows, disabling delayed ACKs
during an increased initial window would open the TCP window more
rapidly without doubling ACK traffic in general. However, this
scheme might double ACK traffic if most connections remain in slow-
start.
Recommendation: ACK only the first segment on a new connection with
no delay.
Montenegro, et al. Informational [Page 16]
^L
RFC 2757 Long Thin Networks January 2000
4.3.3 Terminating Slow Start
New mechanisms [ADGGHOSSTT98] are being proposed to improve TCP's
adaptive properties such that the available bandwidth is better
utilized while reducing the possibility of congesting the network.
This results in the closing of the congestion window to 1 segment
(which precludes fast retransmit), and the subsequent slow start
phase.
Theoretically, an optimum value for slow-start threshold (ssthresh)
allows connection bandwidth utilization to ramp up as aggressively as
possible without "overshoot" (using so much bandwidth that packets
are lost and congestion avoidance procedures are invoked).
Recommendation: Estimating the slow start threshold is not
recommended. Although this would be helpful if we knew how to do it,
rough consensus on the tcp-impl and tcp-sat mailing lists is that in
non-trivial operational networks there is no reliable method to probe
during TCP startup and estimate the bandwidth available.
4.3.4 Generating ACKs during Slow Start
Mitigations that inject additional ACKs (whether "ACK-first-segment"
or "ACK-every-segment-during-slow-start") beyond what today's
conformant TCPs inject are only applicable during the slow-start
phases of a connection. After an initial exchange, the connection
usually completes slow-start, so TCPs only inject additional ACKs
when (1) the connection is closed, and a new connection is opened, or
(2) the TCPs handle idle connection restart correctly by performing
slow start.
Item (1) is typical when using HTTP/1.0, in which each request-
response transaction requires a new connection. Persistent
connections in HTTP/1.1 help in maintaining a connection in
congestion avoidance instead of constantly reverting to slow-start.
Because of this, these optimizations which are only enabled during
slow-start do not get as much of a chance to act. Item (2), of
course, is independent of HTTP version.
4.4 ACK Spacing
During slow start, the sender responds to the incoming ACK stream by
transmitting N+1 segments for each ACK, where N is the number of new
segments acknowledged by the incoming ACK. This results in data
being sent at twice the speed at which it can be processed by the
network. Accordingly, queues will form, and due to insufficient
buffering at the bottleneck router, packets may get dropped before
the link's capacity is full.
Montenegro, et al. Informational [Page 17]
^L
RFC 2757 Long Thin Networks January 2000
Spacing out the ACKs effectively controls the rate at which the
sender will transmit into the network, and may result in little or no
queueing at the bottleneck router [ACKSPACING]. Furthermore, ack
spacing reduces the size of the bursts.
Recommendation: No recommendation at this time. Continue monitoring
research in this area.
4.5 Delayed Duplicate Acknowlegements
As was mentioned above, link-layer retransmissions may decrease the
BER enough that congestion accounts for most of packet losses; still,
nothing can be done about interruptions due to handoffs, moving
beyond wireless coverage, etc. In this scenario, it is imperative to
prevent interaction between link-layer retransmission and TCP
retransmission as these layers duplicate each other's efforts. In
such an environment it may make sense to delay TCP's efforts so as to
give the link-layer a chance to recover. With this in mind, the
Delayed Dupacks [MV97, Vaidya99] scheme selectively delays duplicate
acknowledgements at the receiver. It is preferable to allow a local
mechanism to resolve a local problem, instead of invoking TCP's end-
to-end mechanism and incurring the associated costs, both in terms of
wasted bandwidth and in terms of its effect on TCP's window behavior.
The Delayed Dupacks scheme can be used despite IP encryption since
the intermediate node does not need to examine the TCP headers.
Currently, it is not well understood how long the receiver should
delay the duplicate acknowledgments. In particular, the impact of
wireless medium access control (MAC) protocol on the choice of delay
parameter needs to be studied. The MAC protocol may affect the
ability to choose the appropriate delay (either statically or
dynamically). In general, significant variabilities in link-level
retransmission times can have an adverse impact on the performance of
the Delayed Dupacks scheme. Furthermore, as discussed later in
section 4.10.3, Delayed Dupacks and some other schemes (such as Snoop
[SNOOP]) are only beneficial in certain types of network links.
Recommendation: Delaying duplicate acknowledgements may be useful in
specific network topologies, but a general recommendation requires
further research and experience.
4.6 Selective Acknowledgements [RFC2018]
SACK may not be useful in many LTNs, according to Section 1.1 of
[TCPHP]. In particular, SACK is more useful in the LFN regime,
especially if large windows are being used, because there is a
Montenegro, et al. Informational [Page 18]
^L
RFC 2757 Long Thin Networks January 2000
considerable probability of multiple segment losses per window. In
the LTN regime, TCP windows are much smaller, and burst errors must
be much longer in duration in order to damage multiple segments.
Accordingly, the complexity of SACK may not be justifiable, unless
there is a high probability of burst errors and congestion on the
wireless link. A desire for compatibility with TCP recommendations
for non-LTN environments may dictate LTN support for SACK anyway.
[AGS98] recommends use of SACK with Large TCP Windows in satellite
environments, and notes that this implies support for PAWS
(Protection Against Wrapped Sequence space) and RTTM (Round Trip Time
Measurement) as well.
Berkeley's SNOOP protocol research [SNOOP] indicates that SACK does
improve throughput for SNOOP when multiple segments are lost per
window [BPSK96]. SACK allows SNOOP to recover from multi-segment
losses in one round-trip. In this case, the mobile device needs to
implement some form of selective acknowledgements. If SACK is not
used, TCP may enter congestion avoidance as the time needed to
retransmit the lost segments may be greater than the retransmission
timer.
Recommendation: Implement SACK now for compatibility with other TCPs
and improved performance with SNOOP.
4.7 Detecting Corruption Loss
4.7.1 Without Explicit Notification
In the absence of explicit notification from the network, some
researchers have suggested statistical methods for congestion
avoidance [Jain89, WC91, VEGAS]. A natural extension of these
heuristics would enable a sender to distinguish between losses caused
by congestion and other causes. The research results on the
reliability of sender-based heuristics is unfavorable [BV97, BV98].
[BV98a] reports better results in constrained environments using
packet inter-arrival times measured at the receiver, but highly-
variable delay - of the type encountered in wireless environments
during intercell handoff - confounds these heuristics.
Recommendation: No recommendation at this time - continue to monitor
research results.
Montenegro, et al. Informational [Page 19]
^L
RFC 2757 Long Thin Networks January 2000
4.7.2 With Explicit Notifications
With explicit notification from the network it is possible to
determine when a loss is due to congestion. Several proposals along
these lines include:
- Explicit Loss Notification (ELN) [BPSK96]
- Explicit Bad State Notification (EBSN) [BBKVP96]
- Explicit Loss Notification to the Receiver (ELNR), and Explicit
Delayed Dupack Activation Notification (EDDAN) (notifications
to mobile receiver) [MV97]
- Explicit Congestion Notification (ECN) [ECN]
Of these proposals, Explicit Congestion Notification (ECN) seems
closest to deployment on the Internet, and will provide some benefit
for TCP connections on long thin networks (as well as for all other
TCP connections).
Recommendation: No recommendation at this time. Schemes like ELNR and
EDDAN [MV97], in which the only systems that need to be modified are
the intermediate node and the mobile device, are slated for adoption
pending further research. However, this solution has some
limitations. Since the intermediate node must have access to the TCP
headers, the IP payload must not be encrypted.
ECN uses the TOS byte in the IP header to carry congestion
information (ECN-capable and Congestion-encountered). This byte is
not encrypted in IPSEC, so ECN can be used on TCP connections that
are encrypted using IPSEC.
Recommendation: Implement ECN. In spite of this, mechanisms for
explicit corruption notification are still relevant and should be
tracked.
Note: ECN provides useful information to avoid deteriorating further
a bad situation, but has some limitations for wireless applications.
Absence of packets marked with ECN should not be interpreted by ECN-
capable TCP connections as a green light for aggressive
retransmissions. On the contrary, during periods of extreme network
congestion routers may drop packets marked with explicit notification
because their buffers are exhausted - exactly the wrong time for a
host to begin retransmitting aggressively.
Montenegro, et al. Informational [Page 20]
^L
RFC 2757 Long Thin Networks January 2000
4.8 Active Queue Management
As has been pointed out above, TCP responds to congestion by closing
down the window and invoking slow start. Long-delay networks take a
particularly long time to recover from this condition. Accordingly,
it is imperative to avoid congestion in LTNs. To remedy this, active
queue management techniques have been proposed as enhancements to
routers throughout the Internet [RED]. The primary motivation for
deployment of these mechanisms is to prevent "congestion collapse" (a
severe degradation in service) by controlling the average queue size
at the routers. As the average queue length grows, Random Early
Detection [RED] increases the possibility of dropping packets.
The benefits are:
- Reduce packet drops in routers. By dropping a few packets
before severe congestion sets in, RED avoids dropping bursts of
packets. In other words, the objective is to drop m packets
early to prevent n drops later on, where m is less than n.
- Provide lower delays. This follows from the smaller queue
sizes, and is particularly important for interactive
applications, for which the inherent delays of wireless links
already push the user experience to the limits of the non-
acceptable.
- Avoid lock-outs. Lack of resources in a router (and the
resultant packet drops) may, in effect, obliterate throughput
on certain connections. Because of active queue management, it
is more probable for an incoming packet to find available
buffer space at the router.
Active Queue Management has two components: (1) routers detect
congestion before exhausting their resources, and (2) they provide
some form of congestion indication. Dropping packets via RED is only
one example of the latter. Another way to indicate congestion is to
use ECN [ECN] as discussed above under "Detecting Corruption Loss:
With Explicit Notifications."
Recommendation: RED is currently being deployed in the Internet, and
LTNs should follow suit. ECN deployment should complement RED's.
4.9 Scheduling Algorithms
Active queue management helps control the length of the queues.
Additionally, a general solution requires replacing FIFO with other
scheduling algorithms that improve:
Montenegro, et al. Informational [Page 21]
^L
RFC 2757 Long Thin Networks January 2000
1. Fairness (by policing how different packet streams utilize the
available bandwidth), and
2. Throughput (by improving the transmitter's radio channel
utilization).
For example, fairness is necessary for interactive applications (like
telnet or web browsing) to coexist with bulk transfer sessions.
Proposals here include:
- Fair Queueing (FQ) [Demers90]
- Class-based Queueing (CBQ) [Floyd95]
Even if they are only implemented over the wireless link portion of
the communication path, these proposals are attractive in wireless
LTN environments, because new connections for interactive
applications can have difficulty starting when a bulk TCP transfer
has already stabilized using all available bandwidth.
In our base architecture described above, the mobile device typically
communicates directly with only one wireless peer at a given time:
the intermediate node. In some W-WANs, it is possible to directly
address other mobiles within the same cell. Direct communication
with each such wireless peer may traverse a spatially distinct path,
each of which may exhibit statistically independent radio link
characteristics. Channel State Dependent Packet Scheduling (CSDP)
[BBKT96] tracks the state of the various radio links (as defined by
the target devices), and gives preferential treatment to packets
destined for radio links in a "good" state. This avoids attempting to
transmit to (and expect acknowledgements from) a peer on a "bad"
radio link, thus improving throughput.
A further refinement of this idea suggests that both fairness and
throughput can be improved by combining a wireless-enhanced CBQ with
CSDP [FSS98].
Recommendation: No recommendation at this time, pending further
study.
4.10 Split TCP and Performance-Enhancing Proxies (PEPs)
Given the dramatic differences between the wired and the wireless
links, a very common approach is to provide some impedance matching
where the two different technologies meet: at the intermediate node.
Montenegro, et al. Informational [Page 22]
^L
RFC 2757 Long Thin Networks January 2000
The idea is to replace an end-to-end TCP connection with two clearly
distinct connections: one across the wireless link, the other across
its wireline counterpart. Each of the two resulting TCP sessions
operates under very different networking characteristics, and may
adopt the policies best suited to its particular medium. For
example, in a specific LTN topology it may be desirable to modify TCP
Fast Retransmit to resend after the first duplicate ack and Fast
Recovery to not shrink the congestion window if the LTN link has an
extremely long RTT, is known to not reorder packets, and is not
subject to congestion. Moreover, on a long-delay link or on a link
with a relatively high bandwidth-delay product it may be desirable to
"slow-start" with a relatively large initial window, even larger than
four segments. While these kinds of TCP modifications can be
negotiated to be employed over the LTN link, they would not be
deployed end-to-end over the global Internet. In LTN topologies where
the underlying link characteristics are known, a various similar
types of performance enhancements can be employed without endangering
operations over the global Internet.
In some proposals, in addition to a PEP mechanism at the intermediate
node, custom protocols are used on the wireless link (for example,
[WAP], [YB94] or [MOWGLI]).
Even if the gains from using non-TCP protocols are moderate or
better, the wealth of research on optimizing TCP for wireless, and
compatibility with the Internet are compelling reasons to adopt TCP
on the wireless link (enhanced as suggested in section 5 below).
4.10.1 Split TCP Approaches
Split-TCP proposals include schemes like I-TCP [ITCP] and MTCP [YB94]
which achieve performance improvements by abandoning end-to-end
semantics.
The Mowgli architecture [MOWGLI] proposes a split approach with
support for various enhancements at all the protocol layers, not only
at the transport layer. Mowgli provides an option to replace the
TCP/IP core protocols on the LTN link with a custom protocol that is
tuned for LTN links [KRLKA97]. In addition, the protocol provides
various features that are useful with LTNs. For example, it provides
priority-based multiplexing of concurrent connections together with
shared flow control, thus offering link capacity to interactive
applications in a timely manner even if there are bandwidth-intensive
background transfers. Also with this option, Mowgli preserves the
socket semantics on the mobile device so that legacy applications can
be run unmodified.
Montenegro, et al. Informational [Page 23]
^L
RFC 2757 Long Thin Networks January 2000
Employing split TCP approaches have several benefits as well as
drawbacks. Benefits related to split TCP approaches include the
following:
- Splitting the end-to-end TCP connection into two parts is a
straightforward way to shield the problems of the wireless link
from the wireline Internet path, and vice versa. Thus, a split TCP
approach enables applying local solutions to the local problems on
the wireless link. For example, it automatically solves the
problem of distinguishing congestion related packet losses on the
wireline Internet and packet losses due to transmission error on
the wireless link as these occur on separate TCP connections.
Even if both segments experience congestion, it may be of a
different nature and may be treated as such. Moreover, temporary
disconnections of the wireless link can be effectively shielded
from the wireline Internet.
- When one of the TCP connections crosses only a single hop wireless
link or a very limited number of hops, some or all link
characteristics for the wireless TCP path are known. For example,
with a particular link we may know that the link provides reliable
delivery of packets, packets are not delivered out of order, or
the link is not subject to congestion. Having this information for
the TCP path one could expect that defining the TCP mitigations to
be employed becomes a significantly easier task. In addition,
several mitigations that cannot be employed safely over the global
Internet, can be successfully employed over the wireless link.
- Splitting one TCP connection into two separate ones allows much
earlier deployment of various recent proposals to improve TCP
performance over wireless links; only the TCP implementations of
the mobile device and intermediate node need to be modified, thus
allowing the vast number of Internet hosts to continue running the
legacy TCP implementations unmodified. Any mitigations that would
require modification of TCP in these wireline hosts may take far
too long to become widely deployed.
- Allows exploitation of various application level enhancements
which may give significant performance gains (see section 4.10.2).
Drawbacks related to split TCP approaches include the following:
- One of the main criticisms against the split TCP approaches is
that it breaks TCP end-to-end semantics. This has various
drawbacks some of which are more severe than others. The most
detrimental drawback is probably that splitting the TCP connection
disables end-to-end usage of IP layer security mechanisms,
precluding the application of IPSec to achieve end-to-end
Montenegro, et al. Informational [Page 24]
^L
RFC 2757 Long Thin Networks January 2000
security. Still, IPSec could be employed separately in each of the
two parts, thus requiring the intermediate node to become a party
to the security association between the mobile device and the
remote host. This, however, is an undesirable or unacceptable
alternative in most cases. Other security mechanisms above the
transport layer, like TLS [RFC2246] or SOCKS [RFC1928], should be
employed for end-to-end security.
- Another drawback of breaking end-to-end semantics is that crashes
of the intermediate node become unrecoverable resulting in
termination of the TCP connections. Whether this should be
considered a severe problem depends on the expected frequency of
such crashes.
- In many occasions claims have been stated that if TCP end-to-end
semantics is broken, applications relying on TCP to provide
reliable data delivery become more vulnerable. This, however, is
an overstatement as a well-designed application should never fully
rely on TCP in achieving end-to-end reliability at the application
level. First, current APIs to TCP, such as the Berkeley socket
interface, do not allow applications to know when an TCP
acknowledgement for previously sent user data arrives at TCP
sender. Second, even if the application is informed of the TCP
acknowledgements, the sending application cannot know whether the
receiving application has received the data: it only knows that
the data reached the TCP receive buffer at the receiving end.
Finally, in order to achieve end-to-end reliability at the
application level an application level acknowledgement is required
to confirm that the receiver has taken the appropriate actions on
the data it received.
- When a mobile device moves, it is subject to handovers by the
serving base station. If the base station acts as the intermediate
node for the split TCP connection, the state of both TCP endpoints
on the previous intermediate node must be transferred to the new
intermediate node to ensure continued operation over the split TCP
connection. This requires extra work and causes overhead. However,
in most of the W-WAN wireless networks, unlike in W-LANs, the W-
WAN base station does not provide the mobile device with the
connection point to the wireline Internet (such base stations may
not even have an IP stack). Instead, the W-WAN network takes care
of the mobility and retains the connection point to the wireline
Internet unchanged while the mobile device moves. Thus, TCP state
handover is not required in most W-WANs.
- The packets traversing through all the protocol layers up to
transport layer and again down to the link layer result in extra
overhead at the intermediate node. In case of LTNs with low
Montenegro, et al. Informational [Page 25]
^L
RFC 2757 Long Thin Networks January 2000
bandwidth, this extra overhead does not cause serious additional
performance problems unlike with W-LANs that typically have much
higher bandwidth.
- Split TCP proposals are not applicable to networks with asymmetric
routing. Deploying a split TCP approach requires that traffic to
and from the mobile device be routed through the intermediate
node. With some networks, this cannot be accomplished, or it
requires that the intermediate node is located several hops away
from the wireless network edge which in turn is unpractical in
many cases and may result in non-optimal routing.
- Split TCP, as the name implies, does not address problems related
to UDP.
It should noted that using split TCP does not necessarily exclude
simultaneous usage of IP for end-to-end connectivity. Correct usage
of split TCP should be managed per application or per connection and
should be under the end-user control so that the user can decide
whether a particular TCP connection or application makes use of split
TCP or whether it operates end-to-end directly over IP.
Recommendation: Split TCP proposals that alter TCP semantics are not
recommended. Deploying custom protocols on the wireless link, such as
MOWGLI proposes is not recommended, because this note gives
preference to (1) improving TCP instead of designing a custom
protocol and (2) allowing end-to-end sessions at all times.
4.10.2 Application Level Proxies
Nowadays, application level proxies are widely used in the Internet.
Such proxies include Web proxy caches, relay MTAs (Mail Transfer
Agents), and secure transport proxies (e.g., SOCKS). In effect,
employing an application level proxy results in a "split TCP
connection" with the proxy as the intermediary. Hence, some of the
problems present with wireless links, such as combining of a
congested wide-area Internet path with a wireless LTN link, are
automatically alleviated to some extent.
The application protocols often employ plenty of (unnecessary) round
trips, lots of headers and inefficient encoding. Even unnecessary
data may get delivered over the wireless link in regular application
protocol operation. In many cases a significant amount of this
overhead can be reduced by simply running an application level proxy
on the intermediate node. With LTN links, significant additional
improvement can be achieved by introducing application level proxies
with application-specific enhancements. Such a proxy may employ an
enhanced version of the application protocol over the wireless link.
Montenegro, et al. Informational [Page 26]
^L
RFC 2757 Long Thin Networks January 2000
In an LTN environment enhancements at the application layer may
provide much more notable performance improvements than any transport
level enhancements.
The Mowgli system provides full support for adding application level
agent-proxy pairs between the client and the server, the agent on the
mobile device and the proxy on the intermediate node. Such a pair may
be either explicit or fully transparent to the applications, but it
is, at all times, under the end-user control. Good examples of
enhancements achieved with application-specific proxies include
Mowgli WWW [LAKLR95], [LHKR96] and WebExpress [HL96], [CTCSM97].
Recommendation: Usage of application level proxies is conditionally
recommended: an application must be proxy enabled and the decision of
employing a proxy for an application must be under the user control
at all times.
4.10.3 Snoop and its Derivatives
Berkeley's SNOOP protocol [SNOOP] is a hybrid scheme mixing link-
layer reliability mechanisms with the split connection approach. It
is an improvement over split TCP approaches in that end-to-end
semantics are retained. SNOOP does two things:
1. Locally (on the wireless link) retransmit lost packets, instead
of allowing TCP to do so end-to-end.
2. Suppress the duplicate acks on their way from the receiver back
to the sender, thus avoiding fast retransmit and congestion
avoidance at the latter.
Thus, the Snoop protocol is designed to avoid unnecessary fast
retransmits by the TCP sender, when the wireless link layer
retransmits a packet locally. Consider a system that does not use the
Snoop agent. Consider a TCP sender S that sends packets to receiver R
via an intermediate node IN. Assume that the sender sends packet A,
B, C, D, E (in that order) which are forwarded by IN to the wireless
receiver R. Assume that the intermediate node then retransmits B
subsequently, because the first transmission of packet B is lost due
to errors on the wireless link. In this case, receiver R receives
packets A, C, D, E and B (in that order). Receipt of packets C, D and
E triggers duplicate acknowledgements. When the TCP sender receives
three duplicate acknowledgements, it triggers fast retransmit (which
results in a retransmission, as well as reduction of congestion
window). The fast retransmit occurs despite the link level
retransmit on the wireless link, degrading throughput.
Montenegro, et al. Informational [Page 27]
^L
RFC 2757 Long Thin Networks January 2000
SNOOP [SNOOP] deals with this problem by dropping TCP dupacks
appropriately (at the intermediate node). The Delayed Dupacks (see
section 4.5) attempts to approximate Snoop without requiring
modifications at the intermediate node. Such schemes are needed only
if the possibility of a fast retransmit due to wireless errors is
non-negligible. In particular, if the wireless link uses a stop-and-
go protocol (or otherwise delivers packets in-order), then these
schemes are not very beneficial. Also, if the bandwidth-delay
product of the wireless link is smaller than four segments, the
probability that the intermediate node will have an opportunity to
send three new packets before a lost packet is retransmitted is
small. Since at least three dupacks are needed to trigger a fast
retransmit, with a wireless bandwidth-delay product less than four
packets, schemes such as Snoop and Delayed Dupacks would not be
necessary (unless the link layer is not designed properly).
Conversely, when the wireless bandwidth-delay product is large
enough, Snoop can provide significant performance improvement
(compared with standard TCP). For further discussion on these topics,
please refer to [Vaidya99].
The Delayed Dupacks scheme tends to provide performance benefit in
environments where Snoop performs well. In general, performance
improvement achieved by the Delayed Dupacks scheme is a function of
packet loss rates due to congestion and transmission errors. When
congestion-related losses occur, the Delayed Dupacks scheme
unnecessarily delays retransmission. Thus, in the presence of
congestion losses, the Delayed Dupacks scheme cannot achieve the same
performance improvement as Snoop. However, simulation results
[Vaidya99] indicate that the Delayed Dupacks can achieve a
significant improvement in performance despite moderate congestion
losses.
WTCP [WTCP] is similar to SNOOP in that it preserves end-to-end
semantics. In WTCP, the intermediate node uses a complex scheme to
hide the time it spends recovering from local errors across the
wireless link (this typically includes retransmissions due to error
recovery, but may also include time spent dealing with congestion).
The idea is for the sender to derive a smooth estimate of round-trip
time. In order to work effectively, it assumes that the TCP
endpoints implement the Timestamps option in RFC 1323 [TCPHP].
Unfortunately, support for RFC 1323 in TCP implementations is not yet
widespread. Beyond this, WTCP requires changes only at the
intermediate node.
SNOOP and WTCP require the intermediate node to examine and operate
on the traffic between the portable wireless device and the TCP
server on the wired Internet. SNOOP and WTCP do not work if the IP
traffic is encrypted, unless, of course, the intermediate node shares
Montenegro, et al. Informational [Page 28]
^L
RFC 2757 Long Thin Networks January 2000
the security association between the mobile device and its end-to-end
peer. They also require that both the data and the corresponding
ACKs traverse the same intermediate node. Furthermore, if the
intermediate node retransmits packets at the transport layer across
the wireless link, this may duplicate efforts by the link-layer.
SNOOP has been described by its designers as a TCP-aware link-layer.
This is the right approach: the link and network layers can be much
more aware of each other than traditional OSI layering suggests.
Encryption of IP packets via IPSEC's ESP header (in either transport
or tunnel mode) renders the TCP header and payload unintelligible to
the intermediate node. This precludes SNOOP (and WTCP) from working,
because it needs to examine the TCP headers in both directions.
Possible solutions involve:
- making the SNOOP (or WTCP) intermediate node a party to the
security association between the client and the server
- IPSEC tunneling mode, terminated at the SNOOPing intermediate node
However, these techniques require that users trust intermediate
nodes. Users valuing both privacy and performance should use SSL or
SOCKS for end-to-end security. These, however, are implemented above
the transport layer, and are not as resistant to some security
attacks (for example, those based on guessing TCP sequence numbers)
as IPSEC.
Recommendation: Implement SNOOP on intermediate nodes now. Research
results are encouraging, and it is an "invisible" optimization in
that neither the client nor the server needs to change, only the
intermediate node (for basic SNOOP without SACK). However, as
discussed above there is little or no benefit from implementing SNOOP
if:
1. The wireless link provides reliable, in-order packet delivery,
or,
2. The bandwidth-delay product of the wireless link is smaller
than four segments.
4.10.4 PEPs to handle Periods of Disconnection
Periods of disconnection are very common in wireless networks, either
during handoff, due to lack of resources (dropped connections) or
natural obstacles. During these periods, a TCP sender does not
receive the expected acknowledgements. Upon expiration of the
retransmit timer, this causes TCP to close its congestion window
with all the related drawbacks. Re-transmitting packets is useless
Montenegro, et al. Informational [Page 29]
^L
RFC 2757 Long Thin Networks January 2000
since the connection is broken. [M-TCP] aims at enabling TCP to
better handle handoffs and periods of disconnection, while preserving
end-to-end semantics. M-TCP adds an element: supervisor host (SH-
TCP) at the edge of the wireless network.
This intermediate node monitors the traffic coming from the sender to
the mobile device. It does not break end-to-end semantics because the
ACKs sent from the intermediate node to the sender are effectively
the ones sent by the mobile node. The principle is to generally leave
the last byte unacknowledged. Hence, SH-TCP could shut down the
sender's window by sending the ACK for the last byte with a window
set to zero. Thus the sender will go to persist mode.
The second optimization is done on both the intermediate node and the
mobile host. On the latter, TCP is aware of the current state of the
connection. In the event of a disconnection, it is capable of
freezing all timers. Upon reconnection, the mobile sends a specially
marked ACK with the number of the highest byte received. The
intermediate node assumes that the mobile is disconnected because it
monitors the flow on the wireless link, so in the absence of
acknowledgments from the mobile, it will inform SH-TCP, which will
send the ACK closing the sender window as described in the previous
paragraph. The intermediate node learns that the mobile is again
connected when it receives a duplicate acknowledgment marked as
reconnected. At this point it sends a duplicate ACK to the sender
and grows the window. The sender exits persist mode and resumes
transmitting at the same rate as before. It begins by retransmitting
any data previously unacknowledged by the mobile node. Non
overlapping or non soft handoffs are lightweight because the previous
intermediate system can shrink the window, and the new one modifies
it as soon as it has received an indication from the mobile.
Recommendation: M-TCP is not slated for adoption at this moment,
because of the highly experimental nature of the proposal, and the
uncertainty that TCP/IP implementations handle zero window updates
correctly. Continue tracking developments in this space.
4.11 Header Compression Alternatives
Because Long Thin Networks are bandwidth-constrained, compressing
every byte out of over-the-air segments is worth while.
Mechanisms for TCP and IP header compression defined in [RFC1144,
IPHC, IPHC-RTP, IPHC-PPP] provide the following benefits:
- Improve interactive response time
- Allow using small packets for bulk data with good line efficiency
Montenegro, et al. Informational [Page 30]
^L
RFC 2757 Long Thin Networks January 2000
- Allow using small packets for delay sensitive low data-rate
traffic
- Decrease header overhead (for a common TCP segment size of 512
the header overhead of IPv4/TCP within a Mobile IP tunnel can
decrease from 11.7 to less than 1 per cent.
- Reduce packet loss rate over lossy links (because of the
smaller cross-section of compressed packets).
Van Jacobson (VJ) header compression [RFC1144] describes a Proposed
Standard for TCP Header compression that is widely deployed. It uses
TCP timeouts to detect a loss of synchronization between the
compressor and decompressor. [IPHC] includes an explicit request for
transmission of uncompressed headers to allow resynchronization
without waiting for a TCP timeout (and executing congestion avoidance
procedures).
Recommendation: Implement [IPHC], in particular as it relates to IP-
in-IP [RFC2003] and Minimal Encapsulation [RFC2004] for Mobile IP, as
well as TCP header compression for lossy links and links that
reorder packets. PPP capable devices should implement [IPHC-PPP]. VJ
header compression may optionally be implemented as it is a widely
deployed Proposed Standard. However, it should only be enabled when
operating over reliable LTNs, because even a single bit error most
probably would result in a full TCP window being dropped, followed by
a costly recovery via slow-start.
4.12 Payload Compression
Compression of IP payloads is also desirable. "IP Payload Compression
Protocol (IPComp)" [IPPCP] defines a framework where common
compression algorithms can be applied to arbitrary IP segment
payloads. IP payload compression is something of a niche
optimization. It is necessary because IP-level security converts IP
payloads to random bitstreams, defeating commonly-deployed link-layer
compression mechanisms which are faced with payloads that have no
redundant "information" that can be more compactly represented.
However, many IP payloads are already compressed (images, audio,
video, "zipped" files being FTPed), or are already encrypted above
the IP layer (SSL/TLS, etc.). These payloads will not "compress"
further, limiting the benefit of this optimization.
HTTP/1.1 already supports compression of the message body. For
example, to use zlib compression the relevant directives are:
"Content-Encoding: deflate" and "Accept-Encoding: deflate" [HTTP-
PERF].
Montenegro, et al. Informational [Page 31]
^L
RFC 2757 Long Thin Networks January 2000
HTTP-NG is considering supporting compression of resources at the
HTTP level, which would provide equivalent benefits for common
compressible MIME types like text/html. This will reduce the need for
IPComp. If IPComp is deployed more rapidly than HTTP-NG, IPComp
compression of HTML and MIME headers would be beneficial.
In general, application-level compression can often outperform
IPComp, because of the opportunity to use compression dictionaries
based on knowledge of the specific data being compressed.
Recommendation: IPComp may optionally be implemented. Track HTTP-NG
standardization and deployment for now. Implementing HTTP/1.1
compression using zlib SHOULD is recommended.
4.13 TCP Control Block Interdependence [Touch97]
TCP maintains per-connection information such as connection state,
current round-trip time, congestion control or maximum segment size.
Sharing information between two consecutive connections or when
creating a new connection while the first is still active to the same
host may improve performance of the latter connection. The principle
could easily be extended to sharing information amongst systems in a
LAN not just within a given system. [Touch97] describes cache update
for both cases.
Users of W-WAN devices frequently request connections to the same
servers or set of servers. For example, in order to read their email
or to initiate connections to other servers, the devices may be
configured to always use the same email server or WWW proxy. The
main advantage of this proposal is that it relieves the application
of the burden of optimizing the transport layer. In order to improve
the performance of TCP connections, this mechanism only requires
changes at the wireless device.
In general, this scheme should improve the dynamism of connection
setup without increasing the cost of the implementation.
Recommendation: This mechanism is recommended, although HTTP/1.1 with
its persistent connections may partially achieve the same effect
without it. Other applications (even HTTP/1.0) may find it useful.
Continue monitoring research on this. In particular, work on a
"Congestion Manager" [CM] may generalize this concept of sharing
information among protocols and applications with a view to making
them more adaptable to network conditions.
Montenegro, et al. Informational [Page 32]
^L
RFC 2757 Long Thin Networks January 2000
5 Summary of Recommended Optimizations
The table below summarizes our recommendations with regards to the
main proposals mentioned above.
The first column, "Stability of the Proposal," refers to the maturity
of the mechanism in question. Some proposals are being pursued
within the IETF in a somewhat open fashion. An IETF proposal is
either an Internet Drafts (I-D) or a Request for Comments (RFC). The
former is a preliminary version. There are several types of RFCs. A
Draft Standards (DS) is standards track, and carries more weight than
a Proposed Standard (PS), which may still undergo revisions.
Informational or Experimental RFCs do not specify a standard. Other
proposals are isolated efforts with little or no public review, and
unknown chances of garnering industry backing.
"Implemented at" indicates which participant in a TCP session must be
modified to implement the proposal. Legacy servers typically cannot
be modified, so this column indicates whether implementation happens
at either or both of the two nodes under some control: mobile device
and intermediate node. The symbols used are: WS (wireless sender,
that is, the mobile device's TCP send operation must be modified), WR
(wireless receiver, that is, the mobile device's TCP receive
operation must be modified), WD (wireless device, that is,
modifications at the mobile device are not specific to either TCP
send or receive), IN (intermediate node) and NI (network
infrastructure). These entities are to be understood within the
context of Section 1.1 ("Network Architecture"). NA simply means "not
applicable."
The "Recommendation" column captures our suggestions. Some
mechanisms are endorsed for immediate adoption, others need more
evidence and research, and others are not recommended.
Name Stability of Implemented Recommendation
the Proposal at
==================== ============= =========== =================
Increased Initial RFC 2581 (PS) WS Yes
Window (initial_window=2)
Disable delayed ACKs NA WR When stable
during slow start
Byte counting NA WS No
instead of ACK
counting
Montenegro, et al. Informational [Page 33]
^L
RFC 2757 Long Thin Networks January 2000
TCP Header RFC 1144 (PS) WD Yes
compression for PPP IN (see 4.11)
IP Payload RFC 2393 (PS) WD Yes
Compression (simultaneously
(IPComp) needed on Server)
Header RFC 2507 (PS), WD Yes
Compression RFC 2509 (PS) IN (For IPv4, TCP and
Mobile IP, PPP)
SNOOP plus SACK In limited use IN Yes
WD (for SACK)
Fast retransmit/fast RFC 2581 (PS) WD Yes (should be
recovery there already)
Transaction/TCP RFC 1644 WD No
(Experimental) (simultaneously
needed on Server)
Estimating Slow NA WS No
Start Threshold
(ssthresh)
Delayed Duplicate Not stable WR When stable
Acknowledgements IN (for
notifications)
Class-based Queuing NA WD When stable
on End Systems
Explicit Congestion RFC 2481 (EXP) WD Yes
Notification NI
TCP Control Block RFC 2140 WD Yes
Interdependence (Informational) (Track research)
Of all the optimizations in the table above, only SNOOP plus SACK and
Delayed duplicate acknowledgements are currently being proposed only
for wireless networks. The others are being considered even for non-
wireless applications. Their more general applicability attracts more
attention and analysis from the research community.
Of the above mechanisms, only Header Compression (for IP and TCP) and
"SNOOP plus SACK" cease to work in the presence of IPSec.
Montenegro, et al. Informational [Page 34]
^L
RFC 2757 Long Thin Networks January 2000
6 Conclusion
In view of the unpredictable and problematic nature of long thin
networks, arriving at an optimized transport is a daunting task. We
have reviewed the existing proposals along with future research
items. Based on this overview, we also recommend mechanisms for
implementation in long thin networks (LTNs).
7 Acknowledgements
The authors are deeply indebted to the IETF tcpsat and tcpimpl
working groups. The following individuals have also provided valuable
feedback: Mark Allman (NASA), Vern Paxson (ACIRI), Raphi Rom
(Technion/Sun), Charlie Perkins (Nokia), Peter Stark (Phone.com).
8 Security Considerations
The mechanisms discussed and recommended in this document have been
proposed in previous publications. The security considerations
outlined in the original discussions apply here as well. Several
security issues are also discussed throughout this document.
Additionally, we present below a non-exhaustive list of the most
salient issues concerning our recommended mechanisms:
- Larger Initial TCP Window Size
No known security issues [RFC2414, RFC2581].
- Header Compression
May be open to some denial of service attacks. But any attacker in
a position to launch these attacks would have much stronger
attacks at his disposal [IPHC, IPHC-RTP].
- Congestion Control, Fast Retransmit/Fast Recovery
An attacker may force TCP connections to grind to a halt, or, more
dangerously, behave more aggressively. The latter possibility may
lead to congestion collapse, at least in some regions of the
network [RFC2581].
- Explicit Congestion Notification
It does not appear to increase the vulnerabilities in the network.
On the contrary, it may reduce them by aiding in the
identification of flows unresponsive to or non-compliant with TCP
congestion control [ECN].
Montenegro, et al. Informational [Page 35]
^L
RFC 2757 Long Thin Networks January 2000
- Sharing of Network Performance Information (TCP Control Block
Sharing and Congestion Manager module)
Some information should not be shared. For example, TCP sequence
numbers are used to protect against spoofing attacks. Even
limiting the sharing to performance values leaves open the
possibility of denial-of-service attacks [Touch97].
- Performance Enhancing Proxies
These systems are men-in-the-middle from the point of view of
their security vulnerabilities. Accordingly, they must be used
with extreme care so as to prevent their being hijacked and
misused.
This last point is not to be underestimated: there is a general
security concern whenever an intermediate node performs operations
different from those carried out in an end-to-end basis. This is not
specific to performance-enhancing proxies. In particular, there may
be a tendency to forego IPSEC-based privacy in order to allow, for
example, a SNOOP module, header compression (TCP, UDP, RTP, etc), or
HTTP proxies to work.
Adding end-to-end security at higher layers (for example via RTP
encryption, or via TLS encryption of the TCP payload) alleviates the
problem. However, this still leaves protocol headers in the clear,
and these may be exploited for traffic analysis and denial-of-service
attacks.
9 References
[ACKSPACING] Partridge, C., "ACK Spacing for High Delay-Bandwidth
Paths with Insufficient Buffering", Work in Progress.
[ADGGHOSSTT98] Allman, M., Dawkins, S., Glover, D., Griner, J.,
Henderson, T., Heidemann, J., Kruse, H., Osterman, S.,
Scott, K., Semke, J., Touch, J. and D. Tran, "Ongoing
TCP Research Related to Satellites", Work in Progress.
[AGS98] Allman, M., Glover, D. and L. Sanchez, "Enhancing TCP
Over Satellite Channels using Standard Mechanisms",
BCP 28, RFC 2488, January 1999.
Montenegro, et al. Informational [Page 36]
^L
RFC 2757 Long Thin Networks January 2000
[Allman98] Mark Allman. On the Generation and Use of TCP
Acknowledgments. ACM Computer Communication Review,
28(5), October 1998.
[AHO98] Allman, M., Hayes, C., Ostermann, S., "An Evaluation
of TCP with Larger Initial Windows," Computer
Communication Review, 28(3), July 1998.
[BBKT96] Bhagwat, P., Bhattacharya, P., Krishna, A., Tripathi,
S., "Enhancing Throughput over Wireless LANs Using
Channel State Dependent Packet Scheduling," in Proc.
IEEE INFOCOM'96, pp. 1133-40, March 1996.
[BBKVP96] Bakshi, B., P., Krishna, N., Vaidya, N., Pradhan,
D.K., "Improving Performance of TCP over Wireless
Networks," Technical Report 96-014, Texas A&M
University, 1996.
[BPSK96] Balakrishnan, H., Padmanabhan, V., Seshan, S., Katz,
R., "A Comparison of Mechanisms for Improving TCP
Performance over Wireless Links," in ACM SIGCOMM,
Stanford, California, August 1996.
[BPK99] Balakrishnan, H., Padmanabhan, V., Katz, R., "The
effects of asymmetry on TCP performance," ACM Mobile
Networks and Applications (MONET), Vol. 4, No. 3,
1999, pp. 219-241.
[BV97] S. Biaz and N. H. Vaidya, "Distinguishing Congestion
Losses from Wireless Transmission Losses: A Negative
Result," Seventh International Conference on Computer
Communications and Networks (IC3N), New Orleans,
October 1998.
[BV98] Biaz, S., Vaidya, N., "Sender-Based heuristics for
Distinguishing Congestion Losses from Wireless
Transmission Losses," Texas A&M University, Technical
Report 98-013, June 1998.
[BV98a] Biaz, S., Vaidya, N., "Discriminating Congestion
Losses from Wireless Losses using Inter-Arrival Times
at the Receiver," Texas A&M University, Technical
Report 98-014, June 1998.
[BW97] Brasche, G., Walke, B., "Concepts, Services, and
Protocols of the New GSM Phase 2+ general Packet Radio
Service," IEEE Communications Magazine, Vol. 35, No.
8, August 1997.
Montenegro, et al. Informational [Page 37]
^L
RFC 2757 Long Thin Networks January 2000
[CB96] Cheshire, S., Baker, M., "Experiences with a Wireless
Network in MosquitoNet," IEEE Micro, February 1996.
Available online as:
http://rescomp.stanford.edu/~cheshire/papers
/wireless.ps.
[CDMA] Electronic Industry Alliance(EIA)/Telecommunications
Industry Association (TIA), IS-95: Mobile Station-Base
Station Compatibility Standard for Dual-Mode Wideband
Spread Spectrum Cellular System, 1993.
[CDPD] Wireless Data Forum, CDPD System Specification,
Release 1.1, 1995.
[CM] Hari Balakrishnan and Srinivasan Seshan, "The
Congestion Manager," Work in Progress.
[CTCSM97] Chang, H., Tait, C., Cohen, N., Shapiro, M.,
Mastrianni, S., Floyd, R., Housel, B., Lindquist, D.,
"Web Browsing in a Wireless Environment: Disconnected
and Asynchronous Operation in ARTour Web Express," in
Proc. MobiCom'97, Budapest, Hungary, September 1997.
[Demers90] Demers, A., Keshav, S., and Shenker, S., Analysis and
Simulation of a Fair Queueing Algorithm,
Internetworking: Research and Experience, Vol. 1,
1990, pp. 3-26.
[ECN] Ramakrishnan, K. and S. Floyd, "A Proposal to add
Explicit Congestion Notification (ECN) to IP", RFC
2481, January 1999.
[Floyd95] Floyd, S., and Jacobson, V., Link-sharing and Resource
Management Models for Packet Networks. IEEE/ACM
Transactions on Networking, Vol. 3 No. 4, pp. 365-386,
August 1995.
[FSS98] Fragouli, C., Sivaraman, V., Srivastava, M.,
"Controlled Multimedia Wireless Link Sharing via
Enhanced Class-Based Queueing with Channel-State-
Dependent Packet Scheduling," Proc. IEEE INFOCOM'98,
April 1998.
[GPRS] ETSI, "General Packet Radio Service (GPRS): Service
Description, Stage 2," GSM03.60, v.6.1.1 August 1998.
Montenegro, et al. Informational [Page 38]
^L
RFC 2757 Long Thin Networks January 2000
[GSM] Rahnema, M., "Overview of the GSM system and protocol
architecture," IEEE Communications Magazine, vol. 31,
pp 92-100, April 1993.
[HL96] Hausel, B., Lindquist, D., "WebExpress: A System for
Optimizing Web Browsing in a Wireless Environment," in
Proc. MobiCom'96, Rye, New York, USA, November 1996.
[HTTP-PERF] Henrik Frystyk Nielsen (W3C, MIT), Jim Gettys (W3C,
Digital), Anselm Baird-Smith (W3C, INRIA), Eric
Prud'hommeaux (W3C, MIT), Hon Lie (W3C, INRIA), Chris
Lilley (W3C, INRIA), "Network Performance Effects of
HTTP/1.1, CSS1, and PNG," ACM SIGCOMM '97, Cannes,
France, September 1997. Available at:
http://www.w3.org/Protocols/HTTP/Performance
/Pipeline.html
[IPPCP] Shacham, A., Monsour, R., Pereira, R. and M. Thomas,
"IP Payload Compression Protocol (IPComp)", RFC 2393,
December 1998.
[IPHC] Degermark, M., Nordgren, B. and S. Pink, "IP Header
Compression", RFC 2507, February 1999.
[IPHC-RTP] Casner, S. and V. Jacobson, "Compressing IP/UDP/RTP
Headers for Low-Speed Serial Links", RFC 2508,
February 1999.
[IPHC-PPP] Engan, M., Casner, S. and C. Bormann, "IP Header
Compression over PPP", RFC 2509, February 1999.
[ITCP] Bakre, A., Badrinath, B.R., "Handoff and Systems
Support for Indirect TCP/IP. In Proceedings of the
Second USENIX Symposium on Mobile and Location-
Independent Computing, Ann Arbor, Michigan, April 10-
11, 1995.
[Jain89] Jain, R., "A Delay-Based Approach for Congestion
Avoidance in Interconnected Heterogeneous Computer
Networks," Digital Equipment Corporation, Technical
Report DEC-TR-566, April 1989.
[Karn93] Karn, P., "The Qualcomm CDMA Digital Cellular System"
Proc. USENIX Mobile and Location-Independent Computing
Symposium, USENIX Association, August 1993.
Montenegro, et al. Informational [Page 39]
^L
RFC 2757 Long Thin Networks January 2000
[KRLKA97] Kojo, M., Raatikainen, K., Liljeberg, M., Kiiskinen,
J., Alanko, T., "An Efficient Transport Service for
Slow Wireless Telephone Links," in IEEE Journal on
Selected Areas of Communication, volume 15, number 7,
September 1997.
[LAKLR95] Liljeberg, M., Alanko, T., Kojo, M., Laamanen, H.,
Raatikainen, K., "Optimizing World-Wide Web for
Weakly-Connected Mobile Workstations: An Indirect
Approach," in Proc. 2nd Int. Workshop on Services in
Distributed and Networked Environments, Whistler,
Canada, pp. 132-139, June 1995.
[LHKR96] Liljeberg, M., Helin, H., Kojo, M., Raatikainen, K.,
"Mowgli WWW Software: Improved Usability of WWW in
Mobile WAN Environments," in Proc. IEEE Global
Internet 1996 Conference, London, UK, November 1996.
[LS98] Lettieri, P., Srivastava, M., "Adaptive Frame Length
Control for Improving Wireless Link Throughput, Range,
and Energy Efficiency," Proc. IEEE INFOCOM'98, April
1998.
[MNCP] Piscitello, D., Phifer, L., Wang, Y., Hovey, R.,
"Mobile Network Computing Protocol (MNCP)", Work in
Progress.
[MOWGLI] Kojo, M., Raatikainen, K., Alanko, T., "Connecting
Mobile Workstations to the Internet over a Digital
Cellular Telephone Network," in Proc. Workshop on
Mobile and Wireless Information Systems (MOBIDATA),
Rutgers University, NJ, November 1994. Available at:
http://www.cs.Helsinki.FI/research/mowgli/. Revised
version published in Mobile Computing, pp. 253-270,
Kluwer, 1996.
[MSMO97] Mathis, M., Semke, J., Mahdavi, J., Ott, T., "The
Macroscopic Behavior of the TCP Congestion Avoidance
Algorithm," in Computer Communications Review, a
publication of ACM SIGCOMM, volume 27, number 3, July
1997.
[MTCP] Brown, K. Singh, S., "A Network Architecture for
Mobile Computing," Proc. IEEE INFOCOM'96, pp. 1388-
1396, March 1996. Available at
ftp://ftp.ece.orst.edu/pub/singh/papers
/transport.ps.gz
Montenegro, et al. Informational [Page 40]
^L
RFC 2757 Long Thin Networks January 2000
[M-TCP] Brown, K. Singh, S., "M-TCP: TCP for Mobile Cellular
Networks," ACM Computer Communications Review Vol.
27(5), 1997. Available at
ftp://ftp.ece.orst.edu/pub/singh/papers/mtcp.ps.gz
[MV97] Mehta, M., Vaidya, N., "Delayed Duplicate-
Acknowledgements: A Proposal to Improve Performance
of TCP on Wireless Links," Texas A&M University,
December 24, 1997. Available at
http://www.cs.tamu.edu/faculty/vaidya/mobile.html
[NETBLT] White, J., "NETBLT (Network Block Transfer Protocol)",
Work in Progress.
[Paxson97] V. Paxson, "End-to-End Internet Packet Dynamics,"
Proc. SIGCOMM '97. Available at
ftp://ftp.ee.lbl.gov/papers/vp-pkt-dyn-sigcomm97.ps.Z
[RED] Braden, B., Clark, D., Crowcroft, J., Davie, B.,
Deering, S., Estrin, D., Floyd, S., Jacobson, V.,
Minshall, G., Partridge, C., Peterson, L.,
Ramakrishnan, K., Shenker, S., Wroclawski, J. and L.
Zhang, "Recommendations on Queue Management and
Congestion Avoidance in the Internet", RFC 2309, April
1998.
[RLP] ETSI, "Radio Link Protocol for Data and Telematic
Services on the Mobile Station - Base Station System
(MS-BSS) interface and the Base Station System -
Mobile Switching Center (BSS-MSC) interface," GSM
Specification 04.22, Version 3.7.0, February 1992.
[RFC908] Velten, D., Hinden, R. and J. Sax, "Reliable Data
Protocol", RFC 908, July 1984.
[RFC1030] Lambert, M., "On Testing the NETBLT Protocol over
Divers Networks", RFC 1030, November 1987.
[RFC1122] Braden, R., "Requirements for Internet Hosts --
Communication Layers", STD 3, RFC 1122, October 1989.
[RFC1144] Jacobson, V., "Compressing TCP/IP Headers for Low-
Speed Serial Links", RFC 1144, February 1990.
[RFC1151] Partridge, C., Hinden, R., "Version 2 of the Reliable
Data Protocol (RDP)", RFC 1151, April 1990.
Montenegro, et al. Informational [Page 41]
^L
RFC 2757 Long Thin Networks January 2000
[RFC1191] Mogul, J. and S. Deering, "Path MTU Discovery", RFC
1191, November 1990.
[RFC1397] Braden, R., "Extending TCP for Transactions --
Concepts", RFC 1397, November 1992.
[RFC1644] Braden, R., "T/TCP -- TCP Extensions for Transactions
Functional Specification", RFC 1644, July 1994.
[RFC1661] Simpson, W., "The Point-To-Point Protocol (PPP)", STD
51, RFC 1661, July 1994.
[RFC1928] Leech, M., Ganis, M., Lee, Y., Kuris, R., Koblas, D.
and L. Jones, "SOCKS Protocol Version 5", RFC 1928,
March 1996.
[RFC1986] Polites, W., Wollman, W., Woo, D. and R. Langan,
"Experiments with a Simple File Transfer Protocol for
Radio Links using Enhanced Trivial File Transfer
Protocol (ETFTP)", RFC 1986, August 1996.
[RFC2002] Perkins, C., "IP Mobility Support", RFC 2002, October
1996.
[RFC2003] Perkins, C., "IP Encapsulation within IP", RFC 2003,
October 1996.
[RFC2004] Perkins, C., "Minimal Encapsulation within IP", RFC
2004, October 1996.
[RFC2018] Mathis, M., Mahdavi, J., Floyd, S. and A. Romanow,
"TCP Selective Acknowledgment Options", RFC 2018,
October 1996.
[RFC2188] Banan, M., Taylor, M. and J. Cheng, "AT&T/Neda's
Efficient Short Remote Operations (ESRO) Protocol
Specification Version 1.2", RFC 2188, September 1997.
[RFC2246] Dierk, T. and E. Allen, "TLS Protocol Version 1", RFC
2246, January 1999.
[RFC2414] Allman, M., Floyd, S. and C. Partridge. "Increasing
TCP's Initial Window", RFC 2414, September 1998.
[RFC2415] Poduri, K.and K. Nichols, "Simulation Studies of
Increased Initial TCP Window Size", RFC 2415,
September 1998.
Montenegro, et al. Informational [Page 42]
^L
RFC 2757 Long Thin Networks January 2000
[RFC2416] Shepard, T. and C. Partridge, "When TCP Starts Up With
Four Packets Into Only Three Buffers", RFC 2416,
September 1998.
[RFC2581] Allman, M., Paxson, V. and W. Stevens, "TCP Congestion
Control", RFC 2581, April 1999.
[RFC2582] Floyd, S. and T. Henderson, "The NewReno Modification
to TCP's Fast Recovery Algorithm", RFC 2582, April
1999.
[SNOOP] Balakrishnan, H., Seshan, S., Amir, E., Katz, R.,
"Improving TCP/IP Performance over Wireless Networks,"
Proc. 1st ACM Conf. on Mobile Computing and Networking
(Mobicom), Berkeley, CA, November 1995.
[Stevens94] R. Stevens, "TCP/IP Illustrated, Volume 1," Addison-
Wesley, 1994 (section 2.10 for MTU size considerations
and section 11.3 for weak checksums).
[TCPHP] Jacobson, V., Braden, R. and D. Borman, "TCP
Extensions for High Performance", RFC 1323, May 1992.
[TCPSATMIN] TCPSAT Minutes, August, 1997. Available at:
http://tcpsat.lerc.nasa.gov/tcpsat/meetings/munich-
minutes.txt.
[Touch97] Touch, T., "TCP Control Block Interdependence", RFC
2140, April 1997.
[Vaidya99] N. H. Vaidya, M. Mehta, C. Perkins, G. Montenegro,
"Delayed Duplicate Acknowledgements: A TCP-Unaware
Approach to Improve Performance of TCP over Wireless,"
Technical Report 99-003, Computer Science Dept., Texas
A&M University, February 1999.
[VEGAS] Brakmo, L., O'Malley, S., "TCP Vegas, New Techniques
for Congestion Detection and Avoidance," SIGCOMM'94,
London, pp 24-35, October 1994.
[VMTP] Cheriton, D., "VMTP: Versatile Message Transaction
Protocol", RFC 1045, February 1988.
[WAP] Wireless Application Protocol Forum.
http://www.wapforum.org/
Montenegro, et al. Informational [Page 43]
^L
RFC 2757 Long Thin Networks January 2000
[WC91] Wang, Z., Crowcroft, J., "A New Congestion Control
Scheme: Slow Start and Search," ACM Computer
Communication Review, vol 21, pp 32-43, January 1991.
[WTCP] Ratnam, K., Matta, I., "WTCP: An Efficient
Transmission Control Protocol for Networks with
Wireless Links," Technical Report NU-CCS-97-11,
Northeastern University, July 1997. Available at:
http://www.ece.neu.edu/personal/karu/papers/WTCP-
NU.ps.gz
[YB94] Yavatkar, R., Bhagawat, N., "Improving End-to-End
Performance of TCP over Mobile Internetworks," Proc.
Workshop on Mobile Computing Systems and Applications,
IEEE Computer Society Press, Los Alamitos, California,
1994.
Authors' Addresses
Questions about this document may be directed at:
Gabriel E. Montenegro
Sun Labs Networking and Security Group
Sun Microsystems, Inc.
901 San Antonio Road
Mailstop UMPK 15-214
Mountain View, California 94303
Phone: +1-650-786-6288
Fax: +1-650-786-6445
EMail: gab@sun.com
Spencer Dawkins
Nortel Networks
P.O. Box 833805
Richardson, Texas 75083-3805
Phone: +1-972-684-4827
Fax: +1-972-685-3292
EMail: sdawkins@nortel.com
Montenegro, et al. Informational [Page 44]
^L
RFC 2757 Long Thin Networks January 2000
Markku Kojo
Department of Computer Science
University of Helsinki
P.O. Box 26 (Teollisuuskatu 23)
FIN-00014 HELSINKI
Finland
Phone: +358-9-1914-4179
Fax: +358-9-1914-4441
EMail: kojo@cs.helsinki.fi
Vincent Magret
Corporate Research Center
Alcatel Network Systems, Inc
1201 Campbell
Mail stop 446-310
Richardson Texas 75081 USA
M/S 446-310
Phone: +1-972-996-2625
Fax: +1-972-996-5902
EMail: vincent.magret@aud.alcatel.com
Nitin Vaidya
Dept. of Computer Science
Texas A&M University
College Station, TX 77843-3112
Phone: 979-845-0512
Fax: 979-847-8578
EMail: vaidya@cs.tamu.edu
Montenegro, et al. Informational [Page 45]
^L
RFC 2757 Long Thin Networks January 2000
Full Copyright Statement
Copyright (C) The Internet Society (2000). All Rights Reserved.
This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph are
included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of
developing Internet standards in which case the procedures for
copyrights defined in the Internet Standards process must be
followed, or as required to translate it into languages other than
English.
The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided on an
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Acknowledgement
Funding for the RFC Editor function is currently provided by the
Internet Society.
Montenegro, et al. Informational [Page 46]
^L
|