summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc3714.txt
blob: 32f11c208100c78ccc7e1e13baa2793d8322645a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
Network Working Group                                      S. Floyd, Ed.
Request for Comments: 3714                                 J. Kempf, Ed.
Category: Informational                                      March 2004


             IAB Concerns Regarding Congestion Control for
                     Voice Traffic in the Internet

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 (2004).  All Rights Reserved.

Abstract

   This document discusses IAB concerns about effective end-to-end
   congestion control for best-effort voice traffic in the Internet.
   These concerns have to do with fairness, user quality, and with the
   dangers of congestion collapse.  The concerns are particularly
   relevant in light of the absence of a widespread Quality of Service
   (QoS) deployment in the Internet, and the likelihood that this
   situation will not change much in the near term.  This document is
   not making any recommendations about deployment paths for Voice over
   Internet Protocol (VoIP) in terms of QoS support, and is not claiming
   that best-effort service can be relied upon to give acceptable
   performance for VoIP.  We are merely observing that voice traffic is
   occasionally deployed as best-effort traffic over some links in the
   Internet, that we expect this occasional deployment to continue, and
   that we have concerns about the lack of effective end-to-end
   congestion control for this best-effort voice traffic.

Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  2
   2.  An Example of the Potential for Trouble. . . . . . . . . . . .  4
   3.  Why are Persistent, High Drop Rates a Problem? . . . . . . . .  6
       3.1.  Congestion Collapse. . . . . . . . . . . . . . . . . . .  6
       3.2.  User Quality . . . . . . . . . . . . . . . . . . . . . .  7
       3.3.  The Amorphous Problem of Fairness. . . . . . . . . . . .  8
   4.  Current efforts in the IETF. . . . . . . . . . . . . . . . . . 10
       4.1.  RTP. . . . . . . . . . . . . . . . . . . . . . . . . . . 10
       4.2.  TFRC . . . . . . . . . . . . . . . . . . . . . . . . . . 11
       4.3.  DCCP . . . . . . . . . . . . . . . . . . . . . . . . . . 12



Floyd & Kempf                Informational                      [Page 1]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


       4.4.  Adaptive Rate Audio Codecs . . . . . . . . . . . . . . . 12
       4.5.  Differentiated Services and Related Topics . . . . . . . 13
   5.  Assessing Minimum Acceptable Sending Rates . . . . . . . . . . 13
       5.1.  Drop Rates at 4.75 kbps Minimum Sending Rate . . . . . . 17
       5.2.  Drop Rates at 64 kbps Minimum Sending Rate . . . . . . . 18
       5.3.  Open Issues. . . . . . . . . . . . . . . . . . . . . . . 18
       5.4.  A Simple Heuristic . . . . . . . . . . . . . . . . . . . 19
   6. Constraints on VoIP Systems . . . . . . . . . . . . . . . . . . 20
   7.  Conclusions and Recommendations. . . . . . . . . . . . . . . . 20
   8.  Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 21
   9.  References . . . . . . . . . . . . . . . . . . . . . . . . . . 21
       9.1.  Normative References . . . . . . . . . . . . . . . . . . 21
       9.2.  Informative References . . . . . . . . . . . . . . . . . 22
   10. Appendix - Sending Rates with Packet Drops . . . . . . . . . . 26
   11. Security Considerations. . . . . . . . . . . . . . . . . . . . 29
   12. IANA Considerations. . . . . . . . . . . . . . . . . . . . . . 29
   13. Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 30
   14. Full Copyright Statement . . . . . . . . . . . . . . . . . . . 31

1.  Introduction

   While many in the telephony community assume that commercial VoIP
   service in the Internet awaits effective end-to-end QoS, in reality
   voice service over best-effort broadband Internet connections is an
   available service now with growing demand.  While some ISPs deploy
   QoS on their backbones, and some corporate intranets offer end-to-end
   QoS internally, end-to-end QoS is not generally available to
   customers in the current Internet.  Given the current commercial
   interest in VoIP on best-effort media connections, it seems prudent
   to examine the potential effect of real time flows on congestion.  In
   this document, we perform such an analysis.  Note, however, that this
   document is not making any recommendations about deployment paths for
   VoIP in terms of QoS support, and is not claiming that best-effort
   service can be relied upon to give acceptable performance for VoIP.
   This document is also not discussing signalling connections for VoIP.
   However, voice traffic is in fact occasionally deployed as best
   effort traffic over some links in the Internet today, and we expect
   this occasional deployment to continue.  This document expresses our
   concern over the lack of effective end-to-end congestion control for
   this best-effort voice traffic.

   Assuming that VoIP over best-effort Internet connections continues to
   gain popularity among consumers with broadband connections, the
   deployment of end-to-end QoS mechanisms in public ISPs may be slow.
   The IETF has developed standards for QoS mechanisms in the Internet
   [DIFFSERV, RSVP] and continues to be active in this area [NSIS,COPS].
   However, the deployment of technologies requiring change to the
   Internet infrastructure is subject to a wide range of commercial as



Floyd & Kempf                Informational                      [Page 2]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   well as technical considerations, and technologies that can be
   deployed without changes to the infrastructure enjoy considerable
   advantages in the speed of deployment.  RFC 2990 outlines some of the
   technical challenges to the deployment of QoS architectures in the
   Internet [RFC2990].  Often, interim measures that provide support for
   fast-growing applications are adopted, and are successful enough at
   meeting the need that the pressure for a ubiquitous deployment of the
   more disruptive technologies is reduced.  There are many examples of
   the slow deployment of infrastructure that are similar to the slow
   deployment of QoS mechanisms, including IPv6, IP multicast, or of a
   global PKI for IKE and IPsec support.

   Interim QoS measures that can be deployed most easily include
   single-hop or edge-only QoS mechanisms for VoIP traffic on individual
   congested links, such as edge-only QoS mechanisms for cable access
   networks.  Such local forms of QoS could be quite successful in
   protecting some fraction of best-effort VoIP traffic from congestion.
   However, these local forms of QoS are not directly visible to the
   end-to-end VoIP connection.  A best-effort VoIP connection could
   experience high end-to-end packet drop rates, and be competing with
   other best-effort traffic, even if some of the links along the path
   might have single-hop QoS mechanisms.

   The deployment of IP telephony is likely to include best-effort
   broadband connections to public-access networks, in addition to other
   deployment scenarios of dedicated IP networks, or as an alternative
   to band splitting on the last mile of ADSL deployments or QoS
   mechanisms on cable access networks.  There already exists a
   rapidly-expanding deployment of VoIP services intended to operate
   over residential broadband access links (e.g., [FWD, Vonage]).  At
   the moment, many public-access IP networks are uncongested in the
   core, with low or moderate levels of link utilization, but this is
   not necessarily the case on last hop links.  If an IP telephony call
   runs completely over the Internet, the connection could easily
   traverse congested links on both ends.  Because of economic factors,
   the growth rate of Internet telephony is likely to be greatest in
   developing countries, where core links are more likely to be
   congested, making congestion control an especially important topic
   for developing countries.

   Given the possible deployment of IP telephony over congested best-
   effort networks, some concerns arise about the possibilities of
   congestion collapse due to a rapid growth in real-time voice traffic
   that does not practice end-to-end congestion control.  This document
   raises some concerns about fairness, user quality, and the danger of
   congestion collapse that would arise from a rapid growth in best-
   effort telephony traffic on best-effort networks.  We consider best-
   effort telephony connections that have a minimum sending rate and



Floyd & Kempf                Informational                      [Page 3]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   that compete directly with other best-effort traffic on a path with
   at least one congested link, and address the specific question of
   whether such traffic should be required to terminate, or to suspend
   sending temporarily, in the face of a persistent, high packet drop
   rate, when reducing the sending rate is not a viable alternative.

   The concerns in this document about fairness and the danger of
   congestion collapse apply not only to telephony traffic, but also to
   video traffic and other best-effort real-time traffic with a minimum
   sending rate.  RFC 2914 already makes the point that best-effort
   traffic requires end-to-end congestion control [RFC2914].  Because
   audio traffic sends at such a low rate, relative to video and other
   real-time traffic, it is sometimes claimed that audio traffic doesn't
   require end-to-end congestion control.  Thus, while the concerns in
   this document are general, the document focuses on the particular
   issue of best-effort audio traffic.

   Feedback can be sent to the IAB mailing list at iab@ietf.org, or to
   the editors at floyd@icir.org and kempf@docomolabs-usa.com.  Feedback
   can also be sent to the end2end-interest mailing list [E2E].

2.  An Example of the Potential for Trouble

   At the November, 2002, IEPREP Working Group meeting in Atlanta, a
   brief demonstration was made of VoIP over a shared link between a
   hotel room in Atlanta, Georgia, USA, and Nairobi, Kenya.  The link
   ran over the typical uncongested Internet backbone and access links
   to peering points between either endpoint and the Internet backbone.
   The voice quality on the call was very good, especially in comparison
   to the typical quality obtained by a circuit-switched call with
   Nairobi.  A presentation that accompanied the demonstration described
   the access links (e.g., DSL, T1, T3, dialup, and cable modem links)
   as the primary source of network congestion, and described VoIP
   traffic as being a very small percentage of the packets in commercial
   ISP traffic [A02].  The presentation further stated that VoIP
   received good quality in the presence of packet drop rates of 5-40%
   [AUT].  The VoIP call used an ITU-T G.711 codec, plus proprietary FEC
   encoding, plus RTP/UDP/IP framing.  The resulting traffic load over
   the Internet was substantially more than the 64 kbps required by the
   codec.  The primary congestion point along the path of the
   demonstration was a 128 kbps access link between an ISP in Kenya and
   several of its subscribers in Nairobi.  So the single VoIP call
   consumed more than half of the access link capacity, capacity that is
   shared across several different users.

   Note that this network configuration is not a particularly good one
   for VoIP.  In particular, if there are data services running TCP on
   the link with a typical packet size of 1500 bytes, then some voice



Floyd & Kempf                Informational                      [Page 4]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   packets could be delayed an additional 90 ms, which might cause an
   increase in the end to end delay above the ITU-recommended time of
   150 ms [G.114] for speech traffic.  This would result in a delay
   noticeable to users, with an increased variation in delay, and
   therefore in call quality, as the bursty TCP traffic comes and goes.
   For a call that already had high delay, such as the Nairobi call from
   the previous paragraph, the increased jitter due to competing TCP
   traffic also increases the requirements on the jitter buffer at the
   receiver.  Nevertheless, VoIP usage over congested best-effort links
   is likely to increase in the near future, regardless of VoIP's
   superior performance with "carrier class" service.  A best-effort
   VoIP connection that persists in sending packets at 64 Kbps,
   consuming half of a 128 Kbps access link, in the face of a drop rate
   of 40%, with the resulting user-perceptible degradation in voice
   quality, is not behaving in a way that serves the interests of either
   the VoIP users or the other concurrent users of the network.

   As the Nairobi connection demonstrates, prescribing universal
   overprovisioning (or more precisely, provisioning sufficient to avoid
   persistent congestion) as the solution to the problem is not an
   acceptable generic solution.  For example, in regions of the world
   where circuit-switched telephone service is poor and expensive, and
   Internet access is possible and lower cost, provisioning all Internet
   links to avoid congestion is likely to be impractical or impossible.

   In particular, an over-provisioned core is not by itself sufficient
   to avoid congestion collapse all the way along the path, because an
   over-provisioned core can not address the common problem of
   congestion on the access links.  Many access links routinely suffer
   from congestion.  It is important to avoid congestion collapse along
   the entire end-to-end path, including along the access links (where
   congestion collapse would consist of congested access links wasting
   scarce bandwidth carrying packets that will only be dropped
   downstream).  So an over-provisioned core does not by itself
   eliminate or reduce the need for end-to-end congestion avoidance and
   control.

   There are two possible mechanisms for avoiding this congestion
   collapse: call rejection during busy periods, or the use of end-to-
   end congestion control.  Because there are currently no
   acceptance/rejection mechanisms for best-effort traffic in the
   Internet, the only alternative is the use of end-to-end congestion
   control.  This is important even if end-to-end congestion control is
   invoked only in those very rare scenarios with congestion in
   generally-uncongested access links or networks.  There will always be
   occasional periods of high demand, e.g., in the two hours after an
   earthquake or other disaster, and this is exactly when it is
   important to avoid congestion collapse.



Floyd & Kempf                Informational                      [Page 5]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   Best-effort traffic in the Internet does not include mechanisms for
   call acceptance or rejection.  Instead, a best-effort network itself
   is largely neutral in terms of resource management, and the
   interaction of the applications' transport sessions mutually
   regulates network resources in a reasonably fair fashion.  One way to
   bring voice into the best-effort environment in a non-disruptive
   manner is to focus on the codec and look at rate adaptation measures
   that can successfully interoperate with existing transport protocols
   (e.g., TCP), while at the same time preserving the integrity of a
   real-time, analog voice signal; another way is to consider codecs
   with fixed sending rates.  Whether the codec has a fixed or variable
   sending rate, we consider the appropriate response when the codec is
   at its minimum data rate, and the packet drop rate experienced by the
   flow remains high.  This is the key issue addressed in this document.

3.  Why are Persistent, High Drop Rates a Problem?

   Persistent, high packet drop rates are rarely seen in the Internet
   today, in the absence of routing failures or other major disruptions.
   This happy situation is due primarily to low levels of link
   utilization in the core, with congestion typically found on lower-
   capacity access links, and to the use of end-to-end congestion
   control in TCP.  Most of the traffic on the Internet today uses TCP,
   and TCP self-corrects so that the two ends of a connection reduce the
   rate of packet sending if congestion is detected.  In the sections
   below, we discuss some of the problems caused by persistent, high
   packet drop rates.

3.1.  Congestion Collapse

   One possible problem caused by persistent, high packet drop rates is
   that of congestion collapse.  Congestion collapse was first observed
   during the early growth phase of the Internet of the mid 1980s
   [RFC896], and the fix was provided by Van Jacobson, who developed the
   congestion control mechanisms that are now required in TCP
   implementations [Jacobson88, RFC2581].

   As described in RFC 2914, congestion collapse occurs in networks with
   flows that traverse multiple congested links having persistent, high
   packet drop rates [RFC2914].  In particular, in this scenario packets
   that are injected onto congested links squander scarce bandwidth
   since these packets are only dropped later, on a downstream congested
   link.  If congestion collapse occurs, all traffic slows to a crawl
   and nobody gets acceptable packet delivery or acceptable performance.
   Because congestion collapse of this form can occur only for flows
   that traverse multiple congested links, congestion collapse is a





Floyd & Kempf                Informational                      [Page 6]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   potential problem in VoIP networks when both ends of the VoIP call
   are on an congested broadband connection such as DSL, or when the
   call traverses a congested backbone or transoceanic link.

3.2.  User Quality

   A second problem with persistent, high packet drop rates concerns
   service quality seen by end users.  Consider a network scenario where
   each flow traverses only one congested link, as could have been the
   case in the Nairobi demonstration above.  For example, imagine N VoIP
   flows sharing a 128 Kbps link, with each flow sending at least 64
   Kbps.  For simplicity, suppose the 128 Kbps link is the only
   congested link, and there is no traffic on that link other than the N
   VoIP calls.  We will also ignore for now the extra bandwidth used by
   the telephony traffic for FEC and packet headers, or the reduced
   bandwidth (often estimated as 70%) due to silence suppression.  We
   also ignore the fact that the two streams composing a bidirectional
   VoIP call, one for each direction, can in practice add to the load on
   some links of the path.  Given these simplified assumptions, the
   arrival rate to that link is at least N*64 Kbps.  The traffic
   actually forwarded is at most 2*64 Kbps (the link bandwidth), so at
   least (N-2)*64 Kbps of the arriving traffic must be dropped.  Thus, a
   fraction of at least (N-2)/N of the arriving traffic is dropped, and
   each flow receives on average a fraction 1/N of the link bandwidth.
   An important point to note is that the drops occur randomly, so that
   no one flow can be expected statistically to present better quality
   service to users than any other.  Everybody's voice quality therefore
   suffers.

   It seems clear from this simple example that the quality of best-
   effort VoIP traffic over congested links can be improved if each VoIP
   flow uses end-to-end congestion control, and has a codec that can
   adapt the bit rate to the bandwidth actually received by that flow.
   The overall effect of these measures is to reduce the aggregate
   packet drop rate, thus improving voice quality for all VoIP users on
   the link.  Today, applications and popular codecs for Internet
   telephony attempt to compensate by using more FEC, but controlling
   the packet flow rate directly should result in less redundant FEC
   information, and thus less bandwidth, thereby improving throughput
   even further.  The effect of delay and packet loss on VoIP in the
   presence of FEC has been investigated in detail in the literature
   [JS00, JS02, JS03, MTK03].  One rule of thumb is that when the packet
   loss rate exceeds 20%, the audio quality of VoIP is degraded beyond
   usefulness, in part due to the bursty nature of the losses [S03].  We
   are not aware of measurement studies of whether VoIP users in
   practice tend to hang up when packet loss rates exceed some limit.





Floyd & Kempf                Informational                      [Page 7]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   The simple example in this section considered only voice flows, but
   in reality, VoIP traffic will compete with other flows, most likely
   TCP.  The response of VoIP traffic to congestion works best by taking
   into account the congestion control response of TCP, as is discussed
   in the next subsection.

3.3.  The Amorphous Problem of Fairness

   A third problem with persistent, high packet drop rates is fairness.
   In this document we consider fairness with regard to best-effort VoIP
   traffic competing with other best-effort traffic in the Internet.
   That is, we are explicitly not addressing the issues raised by
   emergency services, or by QoS-enabled traffic that is known to be
   treated separately from best-effort traffic at a congested link.

   While fairness is a bit difficult to quantify, we can illustrate the
   effect by adding TCP traffic to the congested link discussed in the
   previous section.  In this case, the non-congestion-controlled
   traffic and congestion-controlled TCP traffic [RFC2914] share the
   link, with the congestion-controlled traffic's sending rate
   determined by the packet drop rate experienced by those flows.  As in
   the previous section, the 128 Kbps link has N VoIP connections each
   sending 64 Kbps, resulting in packet drop rate of at least (N-2)/N on
   the congested link.  Competing TCP flows will experience the same
   packet drop rates.  However, a TCP flow experiencing the same packet
   drop rates will be sending considerably less than 64 Kbps.  From the
   point of view of who gets what amount of bandwidth, the VoIP traffic
   is crowding out the TCP traffic.

   Of course, this is only one way to look at fairness.  The relative
   fairness between VoIP and TCP traffic can be viewed several different
   ways, depending on the assumptions that one makes on packet sizes and
   round-trip times.  In the presence of a fixed packet drop rate, for
   example, a TCP flow with larger packets sends more (in Bps, bytes per
   second) than a TCP flow with smaller packets, and a TCP flow with a
   shorter round-trip time sends more (in Bps) than a TCP flow with a
   larger round-trip time.  In environments with high packet drop rates,
   TCP's sending rate depends on the algorithm for setting the
   retransmit timer (RTO) as well, with a TCP implementation having a
   more aggressive RTO setting sending more than a TCP implementation
   having a less aggressive RTO setting.

   Unfortunately, there is no obvious canonical round-trip time for
   judging relative fairness of flows in the network.  Agreement in the
   literature is that the majority of packets on most links in the
   network experience round-trip times between 10 and 500 ms [RTTWeb].





Floyd & Kempf                Informational                      [Page 8]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   (This does not include satellite links.)  As a result, if there was a
   canonical round-trip for judging relative fairness, it would have to
   be within that range.  In the absence of a single representative
   round-trip time, the assumption of this paper is that it is
   reasonable to consider fairness between a VoIP connection and a TCP
   connection with the same round-trip time.

   Similarly, there is no canonical packet size for judging relative
   fairness between TCP connections.  However, because the most common
   packet size for TCP data packets is 1460 bytes [Measurement], we
   assume that it is reasonable to consider fairness between a VoIP
   connection, and a TCP connection sending 1460-byte data packets.
   Note that 1460 bytes is considerably larger than is typically used
   for VoIP packets.

   In the same way, while RFC 2988 specifies TCP's algorithm for setting
   TCP's RTO, there is no canonical value for the minimum RTO, and the
   minimum RTO heavily affects TCP's sending rate in times of high
   congestion [RFC2988].  RFC 2988 specifies that TCP's RTO must be set
   to SRTT + 4*RTTVAR, for SRTT the smoothed round-trip time, and for
   RTTVAR the mean deviation of recent round-trip time measurements.
   RFC 2988 further states that the RTO "SHOULD" have a minimum value of
   1 second.  However, it is not uncommon in practice for TCP
   implementations to have a minimum RTO as low as 100 ms.  For the
   purposes of this document, in considering relative fairness, we will
   assume a minimum RTO of 100 ms.

   As an additional complication, TCP connections that use fine-grained
   timestamps can have considerably higher sending rates than TCP
   connections that do not use timestamps, in environments with high
   packet drop rates.  For TCP connections with fine-grained timestamps,
   a valid round-trip time measurement is obtained when a retransmitted
   packet is successfully received and acknowledged by the receiver; in
   this case a backed-off retransmit timer can be un-backed-off as well.
   For TCP connections without timestamps, a valid round-trip time
   measurement is only obtained when the transmission of a new packet is
   received and acknowledged by the receiver.  This limits the
   opportunities for the un-backing-off of a backed-off retransmit
   timer.  In this document, in considering relative fairness, we use a
   TCP connection without timestamps, since this is the dominant use of
   TCP in the Internet.

   A separate claim that has sometimes been raised in terms of fairness
   is that best-effort VoIP traffic is inherently more important that
   other best-effort traffic (e.g., web surfing, peer-to-peer traffic,
   or multi-player games), and therefore merits a larger share of the
   bandwidth in times of high congestion.  Our assumption in this
   document is that TCP traffic includes pressing email messages,



Floyd & Kempf                Informational                      [Page 9]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   business documents, and emergency information downloaded from web
   pages, as well as the more recreational uses cited above.  Thus, we
   do not agree that best-effort VoIP traffic should be exempt from
   end-to-end congestion control due to any claims of inherently more
   valuable content.  (One could equally logically argue that because
   email and instant messaging are more efficient forms of communication
   than VoIP in terms of bandwidth usage, as a result email and instant
   messaging are more valuable uses of scarce bandwidth in times of high
   congestion.)  In fact, the network is incapable of making a judgment
   about the relative user value of traffic.  The default assumption is
   that all best-effort traffic has equal value to the network provider
   and to the user.

   We note that this discussion of relative fairness does not in any way
   challenge the right of ISPs to allocate bandwidth on congested links
   to classes of traffic in any way that they choose.  (For example,
   administrators rate-limit the bandwidth used by peer-to-peer traffic
   on some links in the network, to ensure that bandwidth is also
   available for other classes of traffic.)  This discussion merely
   argues that there is no reason for entire classes of best-effort
   traffic to be exempt from end-to-end congestion control.

4.  Current efforts in the IETF

   There are four efforts currently underway in IETF to address issues
   of congestion control for real time traffic: an upgrade of the RTP
   specification, TFRC, DCCP, and work on audio codecs.

4.1.  RTP

   RFC 1890, the original RTP Profile for Audio and Video Control, does
   not discuss congestion control [RFC1890].  The revised document on
   "RTP Profile for Audio and Video Conferences with Minimal Control"
   [RFC3551] discusses congestion control in Section 2.  [RFC3551] says
   the following:

      "If best-effort service is being used, RTP receivers SHOULD
      monitor packet loss to ensure that the packet loss rate is within
      acceptable parameters.  Packet loss is considered acceptable if a
      TCP flow across the same network path and experiencing the same
      network conditions would achieve an average throughput, measured
      on a reasonable timescale, that is not less than the RTP flow is
      achieving.  This condition can be satisfied by implementing
      congestion control mechanisms to adapt the transmission rate (or
      the number of layers subscribed for a layered multicast session),
      or by arranging for a receiver to leave the session if the loss
      rate is unacceptably high."




Floyd & Kempf                Informational                     [Page 10]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


      "The comparison to TCP cannot be specified exactly, but is
      intended as an "order-of-magnitude" comparison in timescale and
      throughput.  The timescale on which TCP throughput is measured is
      the round-trip time of the connection.  In essence, this
      requirement states that it is not acceptable to deploy an
      application (using RTP or any other transport protocol) on the
      best-effort Internet which consumes bandwidth arbitrarily and does
      not compete fairly with TCP within an order of magnitude."

   Note that [RFC3551] says that receivers "SHOULD" monitor packet loss.
   [RFC3551] does not explicitly say that the RTP senders and receivers
   "MUST" detect and respond to a persistent high loss rate.  Since
   congestion collapse can be considered a "danger to the Internet" the
   use of "MUST" would be appropriate for RTP traffic in the best-effort
   Internet, where the VoIP traffic shares a link with other traffic,
   since "danger to the Internet" is one of two criteria given in RFC
   2119 for the use of "MUST" [RFC2119].  Different requirements may
   hold for a private best-effort IP network provisioned solely for
   VoIP, where the VoIP traffic does not interact with the wider
   Internet.

4.2.  TFRC

   As mentioned in RFC 3267, equation-based congestion control is one of
   the possibilities for VoIP.  TCP Friendly Rate Control (TFRC) is the
   equation-based congestion control mechanism that has been
   standardized in the IETF.  The TFRC specification, "TCP Friendly Rate
   Control (TFRC): Protocol Specification" [RFC3448], says the
   following:

      "TFRC ... is reasonably fair when competing for bandwidth with TCP
      flows, but has a much lower variation of throughput over time
      compared with TCP, making it more suitable for applications such
      as telephony or streaming media where a relatively smooth sending
      rate is of importance.  ...  TFRC is designed for applications
      that use a fixed packet size, and vary their sending rate in
      packets per second in response to congestion.  Some audio
      applications require a fixed interval of time between packets and
      vary their packet size instead of their packet rate in response to
      congestion.  The congestion control mechanism in this document
      cannot be used by those applications; TFRC-PS (for TFRC-
      PacketSize) is a variant of TFRC for applications that have a
      fixed sending rate but vary their packet size in response to
      congestion.  TFRC-PS will be specified in a later document."

   There is no draft available for TFRC-PS yet, unfortunately, but
   several researchers are still working on these issues.




Floyd & Kempf                Informational                     [Page 11]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


4.3.  DCCP

   The Datagram Congestion Control Protocol (DCCP) is a transport
   protocol being standardized in the IETF for unreliable flows, with
   the application being able to specify either TCP-like or TFRC
   congestion control [DCCP03].

   DCCP currently has two Congestion Control IDentifiers or CCIDs; these
   are CCID 2 for TCP-like congestion control and CCID 3 for TFRC
   congestion control.  As TFRC-PS becomes available and goes through
   the standards process, we would expect DCCP to create a new CCID,
   CCID 4, for use with TFRC-PS congestion control.

4.4.  Adaptive Rate Audio Codecs

   A critical component in the design of any real-time application is
   the selection of appropriate codecs, specifically codecs that operate
   at a low sending rate, or that will reduce the sending rate as
   throughput decreases and/or packet loss increases.  Absent this, and
   in the absence of the response to congestion recommended in this
   document, the real-time application is likely to significantly
   increase the risk of Internet congestion collapse, thereby adversely
   impacting the health of the deployed Internet.  If the codec is
   capable of reducing its bit rate in response to congestion, this
   improves the scaling of the number of VoIP or TCP sessions capable of
   sharing a congested link while still providing acceptable performance
   to users.  Many current audio codecs are capable of sending at a low
   bit rate, in some cases adapting their sending rate in response to
   congestion indications from the network.

   RFC 3267 describes RTP payload formats for use with the Adaptive
   Multi-Rate (AMR) and Adaptive Multi-Rate Wideband (AMR-WB) audio
   codecs [RFC 3267].  The AMR codec supports eight speech encoding
   modes having bit rates between 4.75 and 12.2 kbps, with the speech
   encoding performed on 20 ms speech frames, and is able to reduce the
   transmission rate during silence periods.  The payload format
   specified in RFC 3267 includes forward error correction (FEC) and
   frame interleaving to increase robustness against packet loss
   somewhat.  The AMR codec was chosen by the Third Generation
   Partnership Project (3GPP) as the mandatory codec for third
   generation (3G) cellular systems, and RFC 3267 recommends that AMR or
   AMR-WB applications using the RTP payload format specified in RFC
   3267 use congestion control, though no specific mechanism is
   recommended.  RFC 3267 gives "Equation-Based Congestion Control for
   Unicast Applications" as an example of a congestion control mechanism
   suitable for real-time flows [FHPW00].





Floyd & Kempf                Informational                     [Page 12]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   The "Internet Low Bit Rate Codec", iLBC, is an IETF effort to develop
   an IPR-free codec for robust voice communication over IP [ILBRC].
   The codec is designed for graceful speech quality degradation in the
   case of lost packets, and has a payload bit rate of 13.33 kbps for 30
   ms frames or 15.20 kbps for 20 ms frames.

   There are several unencumbered low-rate codec algorithms in Ivox (the
   Interactive VOice eXchange) [IVOX], with plans to add additional
   variable rate codecs.  For example, LPC2400 (a.k.a. LQ2400) is a 2400
   bps LPC based codec with an enhancement to permit "silence
   detection".  The 2400 bps codec is reported to have a "slight robotic
   quality" [A03] (even without the additional complications of packet
   loss).  The older multirate codec described in [KFK79, KF82] is an
   LPC codec that works at two rates, 2.4 kbps and 9.6 kbps, and can
   optionally send additional "residual" bits for enhanced quality at a
   higher bit rate.

   Off-the-shelf ITU-T vocoders such as G.711 were generally designed
   explicitly for circuit-switched networks and are not as well-adapted
   for Internet use, even with the addition of FEC on top.

4.5.  Differentiated Services and Related Topics

   The Differentiated Services Working Group [DIFFSERV], which concluded
   in 2003, completed standards for the Differentiated Services Field
   (DS Field) in the IPv4 and IPv6 Headers [RFC2474], including several
   per-hop forwarding behaviors [RFC2597, RFC3246].  The Next Steps in
   Signaling Working Group [NSIS] is developing an optimized signalling
   protocol for QoS, based in part on earlier work of the Resource
   Reservation Setup Protocol Working Group [RSVP].  We do not discuss
   these and related efforts further in this document, since this
   document concerns only that VoIP traffic that might be carried as
   best-effort traffic over some congested link in the Internet.

5.  Assessing Minimum Acceptable Sending Rates

   Current IETF work in the DCCP and AVT working groups does not
   consider the problem of applications that have a minimum sending rate
   and are not able to go below that sending rate.  This clearly must be
   addressed in the TFRC-PS draft.  As suggested in the RTP document, if
   the loss rate is persistently unacceptably high relative to the
   current sending rate, and the best-effort application is unable to
   lower its sending rate, then the only acceptable answer is for that
   flow to discontinue sending on that link.  For a multicast session,
   this could be accomplished by the receiver withdrawing from the
   multicast group.  For a unicast session, this could be accomplished
   by the unicast connection terminating, at least for a period of time.




Floyd & Kempf                Informational                     [Page 13]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   We can formulate a problem statement for the minimum sending rate in
   the following way.  Consider a best-effort, adaptive audio
   application that is able to adapt down to a minimum sending rate of N
   Bps (bytes per second) of application data, sending M packets per
   second.  Is this a sufficiently low sending rate that the best-effort
   flow is never required to terminate due to congestion, or to reduce
   its sending rate in packets per second still further? In other words,
   is N Bps an acceptable minimum sending rate for the application,
   which can be continued in the face of congestion without terminating
   or suspending the application?

   We assume, generously for VoIP, that the limitation of the network is
   in bandwidth in bytes per second (Bps), and not in CPU cycles or in
   packets per second (pps).  If the limitation in the network is in
   bandwidth, this is a limitation in Bps, while if the limitation is in
   router processing capacity in packets, this would be a limitation in
   pps.  We note that TCP sends fixed-size data packets, and reduces its
   sending rate in pps when it adapts to network congestion, thus
   reducing the load on the forward path both in Bps and in pps.  In
   contrast, for adaptive VoIP applications, the adaption is sometimes
   to keep the same sending rate in pps, but to reduce the packet size,
   reducing the sending rate in Bps.  This fits the needs of audio as an
   application, and is a good response on a network path where the
   limitation is in Bps.  Such behavior would be a less appropriate
   response for a network path where the limitation is in pps.

   If the network limitation in fact is in Bps, then all that matters in
   terms of congestion is a flow's sending rate on the wire in Bps.  If
   this assumption of a network limitation in Bps is false, then the
   sending rate in pps could contribute to congestion even when the
   sending rate in Bps is quite moderate.  While the ideal would be to
   have a transport protocol that is able to detect whether the
   bottleneck links along the path are limited in Bps or in pps, and to
   respond appropriately when the limitation is in pps, such an ideal is
   hard to achieve. We would not want to delay the deployment of
   congestion control for telephony traffic until such an ideal could be
   accomplished.  In addition, we note that the current TCP congestion
   control mechanisms are themselves not very effective in an
   environment where there is a limitation along the reverse path in
   pps.  While the TCP mechanisms do provide an incentive to use large
   data packets, TCP does not include any effective congestion control
   mechanisms for the stream of small acknowledgement packets on the
   reverse path.  Given the arguments above, it seems acceptable to us
   to assume a network limitation in Bps rather than in pps in
   considering the minimum sending rate of telephony traffic.






Floyd & Kempf                Informational                     [Page 14]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   Assuming 40-byte packet headers (IP, RTP, and UDP or DCCP), the
   application data sending rate of N Bps and M pps translates to a
   sending rate on the wire of B = N+40M Bps.  If the application uses
   additional FEC (Forward Error Correction), the FEC bits must be added
   in as well.  In our example, we ignore bandwidth adjustments that are
   needed to take into account the additional overhead for FEC or the
   reduced sending rate for silence periods.  We also are not taking
   into account the possible role of header compression on congested
   edge links, which can reduce significantly the number of bytes used
   for headers on those links.

   Now, consider an equivalent-rate TCP connection with data packets of
   P bytes and a round-trip time of R seconds.  Taking into account
   header size, such a TCP connection with a sending rate on the wire of
   B Bps is sending B/(P+40) pps, or, equivalently, BR/(P+40) ppr
   (packets per round-trip time).

   Restating the question in terms of the above expressions for VoIP and
   TCP: if the best-effort VoIP connection is experiencing a persistent
   packet drop rate of D, and is at its minimum sending rate on the wire
   of B Bps, when should the application or transport protocol terminate
   or suspend the VoIP connection?

   One answer to this question is to find the sending rate in ppr for a
   TCP connection sending at the same rate on the wire in Bps, and to
   use the TCP response function to determine whether a conformant TCP
   connection would be able to maintain a sending rate close to that
   sending rate with the same persistent drop rate D.  If the sending
   rate of the VoIP connection is significantly higher than the sending
   rate of a conformant TCP connection under the same conditions, and
   the VoIP connection is unable to reduce its sending rate on the wire,
   then the VoIP connection should terminate or suspend.

   As discussed above, there are two reasons for requiring the
   application to terminate:

      1) Avoiding congestion collapse, given the possibility of multiple
         congested links,

      2) Fairness for congestion-controlled TCP traffic sharing the
         link.

   In addition, if an application requires a minimum service level from
   the network in order to operate, and that service level is
   consistently not achieved, then the application should terminate or
   suspend sending.





Floyd & Kempf                Informational                     [Page 15]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   One counter-argument is that users will just hang up anyway with a
   high packet drop rate so there is no point in enforcing a minimum
   acceptable rate.  Users might hang up, but they might also just keep
   on talking, with the occasional noise getting though, for minutes or
   longer waiting for a short period of clarity.  Another counter-
   argument is that nobody really benefits from VoIP connections being
   terminated or suspended when persistent packet drop rates exceed the
   allowable packet drop rate for the configured minimum sending rate.
   This is untrue, since the termination of these VoIP connections could
   allow competing TCP and VoIP traffic to make some progress.

   In the next section, we illustrate the approach outlined above for
   VoIP flows with minimum sending rates of 4.75 and 64 kbps
   respectively, and show that in practice such an approach would not
   seem too burdensome for VoIP traffic.  This approach implies that the
   VoIP traffic would terminate or suspend when the packet drop rate
   significantly exceeds 40% for a VoIP flow with a minimum sending rate
   of 4.75 kbps.  If VoIP is to deliver "carrier quality" or even near
   "carrier quality" on best-effort links, conditioning deployment on
   the ability to maintain maximum sending rates during periods of
   persistent packet drops rates exceeding 40% does not suggest a
   service model that will see widespread acceptance among consumers, no
   matter what the price differential.  Good packet throughput is vital
   for the delivery of acceptable VoIP service.

   For a VoIP flow that stops sending because its minimum sending rate
   is too high for the steady-state packet drop rate, we have not
   addressed the question of when a VoIP flow might be able to start
   sending again, to see if the congestion on the end-to-end path has
   changed.  This issue has been addressed in a proposal for
   Probabilistic Congestion Control [PCC].

   We note that if the congestion indications are in the form of ECN-
   marked packets (Explicit Congestion Notification), as opposed to
   dropped packets, then the answers about when a flow with a minimum
   sending rate would have to stop sending are somewhat different.  ECN
   allows routers to explicitly notify end-nodes of congestion by ECN-
   marking instead of dropping packets [RFC3168].  If packets are ECN-
   marked instead of dropped in the network, then there are no concerns
   of congestion collapse or of user quality (for the ECN-capable
   traffic, at any rate), and what remains are concerns of fairness with
   competing flows.  Second, in regimes with very high congestion, TCP
   has a higher sending rate with ECN-marked than with dropped packets,
   in part because of different dynamics in terms of un-backing-off a
   backed-off retransmit timer.






Floyd & Kempf                Informational                     [Page 16]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


5.1.  Drop Rates at 4.75 kbps Minimum Sending Rate

   Consider an adaptive audio application with an RTT of R=0.1 seconds
   that is able to adapt down to a minimum sending rate of 4.75 kbps
   application data, sending M=20 packets per second.  This sending rate
   translates to N=593 Bps of application data, for a sending rate on
   the wire of B=1393 Bps.  An equivalent-rate TCP connection with data
   packets of P=1460 bytes and a round-trip time of R=0.1 seconds would
   be sending BR/(P+40) = 0.09 ppr.

   Table 1 in the Appendix looks at the packet drop rate experienced by
   a TCP connection with the RTO set to twice the RTT, and gives the
   corresponding sending rate of the TCP connection in ppr.  The second
   column gives the sending rate estimated by the standard analytical
   approach, and the third, fourth, and fifth columns give the average
   sending rate from simulations with random packet drops or marks.  The
   sixth column gives the sending rates from experiments on a 4.8-
   RELEASE FreeBSD machine.  The analytical approaches require an RTO
   expressed as a multiple of the RTT, and Table 1 shows the results for
   the RTO set to 2 RTT.  In the simulations, the minimum RTO is set to
   twice the RTT.  See the Appendix for more details.

   For a sending rate of 0.09 ppr and an RTO set to 2 RTT, Table 1 shows
   that the analytical approach gives a corresponding packet drop rate
   of roughly 50%, while the simulations in the fifth column and the
   experiments in the sixth column give a packet drop rate of between
   35% and 40% to maintain a sending rate of 0.09 ppr.  (For a reference
   TCP connection using timestamps, shown in the fourth column, the
   simulations give a packet drop rate of 55% to maintain a sending rate
   of 0.09 ppr.)  Of the two approaches for determining TCP's
   relationship between the sending rate and the packet drop rate, the
   analytic approach and the use of simulations, we consider the
   simulations to be the most realistic, for reasons discussed in the
   Appendix.  This suggests a packet drop rate of 40% would be
   reasonable for a TCP connection with an average sending rate of 0.09
   ppr.  As a result, a VoIP connection with an RTT of 0.1 sec and a
   minimum sending rate of 4.75 kbps would be required to terminate or
   suspend when the persistent packet drop rate significantly exceeds
   40%.

   These estimates are sensitive to the assumed round-trip time of the
   TCP connection.  If we assumed instead that the equivalent-rate TCP
   connection had a round-trip time of R=0.01 seconds, the equivalent-
   rate TCP connection would be sending BR/(P+40) = 0.009 ppr.  However,
   we have also assumed a minimum RTO for TCP connections of 0.1
   seconds, which in this case would mean an RTO of at least 10 RTT.
   For this setting of the RTO, we would use Table 2 from the appendix
   to determine the average TCP sending rate for a particular packet



Floyd & Kempf                Informational                     [Page 17]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   drop rate.  The simulations in the fifth column of Table 2 suggest
   that a TCP connection with an RTT of 0.01 sec and an RTO of 10 RTT
   would be able to send 0.009 ppr with a packet drop rate of 45%.  (For
   the same TCP connection using timestamps, shown in the fourth column,
   the simulations give a packet drop rate of 60-65% to maintain a
   sending rate of 0.009 ppr.)

   Thus, for a VoIP connection with an RTT of 0.01 sec and a minimum
   sending rate of 4.75 kbps, the VoIP connection would be required to
   terminate or suspend when the persistent packet drop rate exceeded
   45%.

5.2.  Drop Rates at 64 kbps Minimum Sending Rate

   The effect of increasing the minimum acceptable sending rate to 64
   kbps is effectively to decrease the packet drop rate at which the
   application should terminate or suspend sending.  For this section,
   consider a codec with a minimum sending rate of 64 kbps, or N=8000
   Bps, and a packet sending rate of M=50 pps.  (This would be
   equivalent to 160-byte data packets, with 20 ms. per packet.)  The
   sending rate on the wire is B = N+40M Bps, including headers, or
   10000 Bps.  A TCP connection having that sending rate, with packets
   of size P=1460 bytes and a round-trip time of R=0.1 seconds, sends
   BR/(P+40) = 0.66 ppr.  From the fifth column of Table 1, for an RTO
   of 2 RTT, this corresponds to a packet drop rate between 20 and 25%.
   [For a TCP connection using fine-grained timestamps, as shown in the
   fourth column of Table 1, this sending rate corresponds to a packet
   drop rate between 25% and 35%.]  As a result, a VoIP connection with
   an RTT of 0.1 sec and a minimum sending rate of 64 kbps would be
   required to terminate or suspend when the persistent packet drop rate
   significantly exceeds 25%.

   For an equivalent-rate TCP connection with a round-trip time of
   R=0.01 seconds and a minimum RTO of 0.1 seconds (giving an RTO of 10
   RTT), we use the fifth column of Table 2, which shows that a sending
   rate of 0.066 ppr corresponds to a packet drop rate of roughly 30%.
   [For a TCP connection using fine-grained timestamps, as shown in the
   fourth column of Table 2, this sending rate corresponds to a packet
   drop rate of roughly 45%.]  Thus, for a VoIP connection with an RTT
   of 0.01 sec and a minimum sending rate of 64 kbps, the VoIP
   connection would be required to terminate or suspend when the
   persistent packet drop rate exceeded 30%.

5.3.  Open Issues

   This document does not attempt to specify a complete protocol.  For
   example, this document does not specify the definition of a
   persistent packet drop rate.  The assumption would be that a



Floyd & Kempf                Informational                     [Page 18]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   "persistent packet drop rate" would refer to the packet drop rate
   over a significant number of round-trip times, e.g., at least five
   seconds.  Another possibility would be that the time interval for
   measuring the persistent drop rate is a function of the lifetime of
   the connection, with longer-lived connections using longer time
   intervals for measuring the persistent drop rate.

   The time period for detecting persistent congestion also affects the
   potential synchronization of VoIP sessions all terminating or
   suspending at the same time in response to shared congestion.  If
   flows use some randomization in setting the time interval for
   detecting persistent congestion, or use a time interval that is a
   function of the connection lifetime, this could help to prevent all
   VoIP flows from terminating at the same time.

   Another design issue for a complete protocol concerns whether a flow
   terminates when the packet drop rate is too high, or only suspends
   temporarily.  For a flow that suspends temporarily, there is an issue
   of how long it should wait before resuming transmission.  At the very
   least, the sender should wait long enough so that the flow's overall
   sending rate doesn't exceed the allowed sending rate for that packet
   drop rate.

   The recommendation of this document is that VoIP flows with minimum
   sending rates should have corresponding configured packet drop rates,
   such that the flow terminates or suspends when the persistent packet
   drop rate of the flow exceeds the configured rate.  If the persistent
   packet drop rate increases over time, flows with higher minimum
   sending rates would have to suspend sending before flows with lower
   minimum sending rates.  If VoIP flows terminate when the persistent
   packet drop rate is too high, this could lead to scenarios where VoIP
   flows with lower minimum sending rates essentially receive all of the
   link bandwidth, while the VoIP flows with higher minimum sending
   rates are required to terminate.  However, if VoIP flows suspend
   sending for a time when the persistent packet drop rate is too high,
   instead of terminating entirely, then the bandwidth could end up
   being shared reasonably fairly between VoIP flows with different
   minimum sending rates.

5.4.  A Simple Heuristic

   One simple heuristic for estimating congestion would be to use the
   RTCP reported loss rate as an indicator.  For example, if the RTCP-
   reported lost rate is greater than 30%, or N back-to-back RTCP
   reports are missing, the application could assume that the network is
   too congested, and terminate or suspend sending.





Floyd & Kempf                Informational                     [Page 19]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


6.  Constraints on VoIP Systems

   Ultimately, attempting to run VoIP on congested links, even with
   adaptive rate codecs and minimum packet rates, is likely to run into
   hard constraints due to the nature of real time traffic in heavily
   congested scenarios.  VoIP systems exhibit a limited ability to scale
   their packet rate.  If the number of packets decreases, the amount of
   audio per packet is greater and error concealment at the receiver
   becomes harder.  Any error longer than phoneme length, which is
   typically 40 to 100 ms depending on the phoneme and speaker, is
   unrecoverable.  Ideally, applications want sub 30ms packets and this
   is what most voice codecs provide.  In addition, voice media streams
   exhibit greater loss sensitivity at lower data rates.  Lower-data
   rate codecs maintain more end-to-end state and as a result are
   generally more sensitive to loss.

   We note that very-low-bit-rate codecs have proved useful, although
   with some performance degradation, in very low bandwidth, high noise
   environments (e.g., 2.4 kbps HF radio).  For example, 2.4 kbps codecs
   "produce speech which although intelligible is far from natural
   sounding" [W98].  Figure 5 of [W98] shows how the speech quality with
   several forms of codecs varies with the bit rate of the codec.

7.  Conclusions and Recommendations

   In the near term, VoIP services are likely to be deployed, at least
   in part, over broadband best-effort connections.  Current real time
   media encoding and transmission practice ignores congestion
   considerations, resulting in the potential for trouble should VoIP
   become a broadly deployed service in the near to intermediate term.
   Poor user quality, unfairness to other VoIP and TCP users, and the
   possibility of sporadic episodes of congestion collapse are some of
   the potential problems in this scenario.

   These problems can be mitigated in applications that use fixed-rate
   codecs by requiring the best-effort VoIP application to specify its
   minimum bit throughput rate.  This minimum bit rate can be used to
   estimate a packet drop rate at which the application would terminate.

   This document specifically recommends the following:

   (1) In IETF standards for protocols regarding best-effort flows with
   a minimum sending rate, a packet drop rate must be specified, such
   that the best-effort flow terminates, or suspends sending
   temporarily, when the steady-state packet drop rate significantly
   exceeds the specified drop rate.





Floyd & Kempf                Informational                     [Page 20]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   (2) The specified drop rate for the minimum sending rate should be
   consistent with the use of Tables 1 and 2 as illustrated in this
   document.

   We note that this is a recommendation to the IETF community, as a
   specific follow-up to RFC 2914 on Congestion Control Principles.

   This is not a specific or complete protocol specification.

   Codecs that are able to vary their bit rate depending on estimates of
   congestion can be even more effective in providing good quality
   service while maintaining network efficiency under high load
   conditions.  Adaptive variable-bit-rate codecs are therefore
   preferable as a means of supporting VOIP sessions on shared use
   Internet environments.

   Real-time traffic such as VoIP could derive significant benefits from
   the use of ECN, where routers may indicate congestion to end-nodes by
   marking packets instead of dropping them.  However, ECN is only
   standardized to be used with transport protocols that react
   appropriately to marked packets as indications of congestion.  VoIP
   traffic that follows the recommendations in this document could
   satisfy the congestion-control requirements for using ECN, while VoIP
   traffic with no mechanism for terminating or suspending when the
   packet dropping and marking rate was too high would not.  However, we
   repeat that this document is not a complete protocol specification.
   In particular, additional mechanisms would be required before it was
   safe for applications running over UDP to use ECN.  For example,
   before using ECN, the sending application would have to ensure that
   the receiving application was capable of receiving ECN-related
   information from the lower-layer UDP stack, and of interpreting this
   ECN information as a congestion indication.

8.  Acknowledgements

   We thank Brian Adamson, Ran Atkinson, Fred Baker, Jon Crowcroft,
   Christophe Diot, Alan Duric, Jeremy George, Mark Handley, Orion
   Hodson, Geoff Huston, Eddie Kohler, Simon Leinen, David Meyer, Jean-
   Francois Mule, Colin Perkins, Jon Peterson, Mike Pierce, Cyrus
   Shaoul, and Henning Schulzrinne for feedback on this document.  (Of
   course, these people do not necessarily agree with all of the
   document.)  Ran Atkinson and Geoff Huston contributed to the text of
   the document.

   The analysis in Section 6.0 resulted from a session at the whiteboard
   with Mark Handley.  We also thank Alberto Medina for the FreeBSD
   experiments showing TCP's sending rate as a function of the packet
   drop rate.



Floyd & Kempf                Informational                     [Page 21]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


9.  References

9.1.  Normative References

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

   [RFC2988]     Paxson, V. and M. Allman, "Computing TCP's
                 Retransmission Timer", RFC 2988, November 2000.

   [RFC3267]     Sjoberg, J., Westerlund, M., Lakaniemi, A. and Q. Xie,
                 "Real-Time Transport Protocol (RTP) Payload Format and
                 File Storage Format for the Adaptive Multi-Rate (AMR)
                 and Adaptive Multi-Rate Wideband (AMR-WB) Audio
                 Codecs", RFC 3267, June 2002.

9.2.  Informative References

   [A02]         Ran Atkinson, An ISP Reality Check, Presentation to
                 ieprep, 55th IETF Meeting, November 2002.  URL
                 "http://www.ietf.cnri.reston.va.us/proceedings/
                 02nov/219.htm#slides".

   [A03]         Brian Adamson, private communication, June 2003.

   [BBFS01]      Deepak Bansal, Hari Balakrishnan, Sally Floyd, and
                 Scott Shenker, Dynamic Behavior of Slowly-Responsive
                 Congestion Control Algorithms, SIGCOMM 2001.

   [COPS]        Durham, D., Ed., Boyle, J., Cohen, R., Herzog, S.,
                 Rajan, R. and A. Sastry, "The COPS (Common Open Policy
                 Service) Protocol", RFC 2748, January 2000.

   [DCCP03]      Eddie Kohler, Mark Handley, Sally Floyd, and Jitendra
                 Padhye, Datagram Congestion Control Protocol (DCCP),
                 internet-draft Work in Progress, March 2003.  URL
                 "http://www.icir.org/kohler/dcp/".

   [DIFFSERV]    Differentiated Services (diffserv), Concluded Working
                 Group, URL
                 "http://www.ietf.cnri.reston.va.us/html.charters/
                 OLD/diffserv-charter.html".

   [E2E]         The end2end-interest mailing list, URL
                 "http://www.postel.org/mailman/listinfo/end2end-
                 interest".





Floyd & Kempf                Informational                     [Page 22]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   [FHPW00]      S. Floyd, M. Handley, J. Padhye, J. Widmer, "Equation-
                 Based Congestion Control for Unicast Applications", ACM
                 SIGCOMM 2000.

   [FM03]        S. Floyd and R. Mahajan, Router Primitives for
                 Protection Against High-Bandwidth Flows and Aggregates,
                 internet draft (not yet submitted).

   [FWD]         Free World Dialup, URL "www.pulver.com/fwd/".

   [IEPREP02]    Internet Emergency Preparedness (ieprep), Minutes, 55th
                 IETF Meeting, November 2002.  URL
                 "http://www.ietf.cnri.reston.va.us/proceedings/
                 02nov/219.htm#cmr".

   [ILBRC]       S.V. Andersen, et. al., Internet Low Bit Rate Codec,
                 Work in Progress, March 2003.

   [G.114]       Recommendation G.114 - One-way Transmission Time, ITU,
                 May 2003.  URL "http://www.itu.int/itudoc/itu-
                 t/aap/sg12aap/recaap/g.114/".

   [IVOX]        The Interactive VOice eXchange, URL
                 "http://manimac.itd.nrl.navy.mil/IVOX/".

   [Jacobson88]  V. Jacobson, Congestion Avoidance and Control, ACM
                 SIGCOMM '88, August 1988.

   [AUT]         The maximum feasible drop rate for VoIP traffic depends
                 on the codec.  These numbers are a range for a variety
                 of codecs; voice quality begins to deteriorate for many
                 codecs around a 10% drop rate. Note from authors.

   [JS00]        Wenyu Jiang and Henning Schulzrinne, Modeling of Packet
                 Loss and Delay and Their Effect on Real-Time Multimedia
                 Service Quality, NOSSDAV, 2000.  URL
                 "http://citeseer.nj.nec.com/jiang00modeling.html".

   [JS02]        Wenyu Jiang and Henning Schulzrinne, Comparison and
                 Optimization of Packet Loss Repair Methods on VoIP
                 Perceived Quality under Bursty Loss, NOSSDAV, 2002.
                 URL "http://www1.cs.columbia.edu/~wenyu/".

   [JS03]        Wenyu Jiang, Kazummi Koguchi, and Henning Schulzrinne,
                 QoS Evaluation of VoIP End-points, ICC 2003.  URL
                 "http://www1.cs.columbia.edu/~wenyu/".





Floyd & Kempf                Informational                     [Page 23]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   [KFK79]       G.S. Kang, L.J. Fransen, and E.L. Kline, "Multirate
                 Processor (MRP) for Digital Voice Communications", NRL
                 Report 8295, Naval Research Laboratory, Washington DC,
                 March 1979.

   [KF82]        G.S. Kang and L.J. Fransen, "Second Report of the
                 Multirate Processor (MRP) for Digital Voice
                 Communications", NRL Report 8614, Naval Research
                 Laboratory, Washington DC, September 1982.

   [Measurement] Web page on "Measurement Studies of End-to-End
                 Congestion Control in the Internet", URL
                 "http://www.icir.org/floyd/ccmeasure.html".  The
                 section on "Network Measurements at Specific Sites"
                 includes measurement data about the distribution of
                 packet sizes on various links in the Internet.

   [MTK03]       A. P. Markopoulou, F. A. Tobagi, and M. J. Karam,
                 "Assessing the Quality of Voice Communications Over
                 Internet Backbones", IEEE/ACM Transactions on
                 Networking, V. 11 N. 5, October 2003.

   [NSIS]        Next Steps in Signaling (nsis), IETF Working Group, URL
                 "http://www.ietf.cnri.reston.va.us/html.charters/nsis-
                 charter.html".

   [PCC]         Joerg Widmer, Martin Mauve, and Jan Peter Damm.
                 Probabilistic Congestion Control for Non-Adaptable
                 Flows.  Technical Report 3/2001, Department of
                 Mathematics and Computer Science, University of
                 Mannheim.  URL "http://www.informatik.uni-
                 mannheim.de/informatik/pi4/projects/
                 CongCtrl/pcc/index.html".

   [PFTK98]      J. Padhye, V. Firoiu, D. Towsley, J. Kurose, Modeling
                 TCP Throughput: A Simple Model and its Empirical
                 Validation, Tech Report TF 98-008, U. Mass, February
                 1998.

   [RFC896]      Nagle, J., "Congestion Control in IP/TCP", RFC 896,
                 January 1984.

   [RFC1890]     Schulzrinne, H., "RTP Profile for Audio and Video
                 Conferences with Minimal Control", RFC 1890, January
                 1996.






Floyd & Kempf                Informational                     [Page 24]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   [RFC2474]     Nichols, K., Blake, S., Baker, F. and D. Black,
                 "Definition of the Differentiated Services Field (DS
                 Field) in the IPv4 and IPv6 Headers", RFC 2474,
                 December 1998.

   [RFC2581]     Allman, M., Paxson, V. and W. Stevens, "TCP Congestion
                 Control", RFC 2581, April 1999.

   [RFC2597]     Heinanen, J., Baker, F., Weiss, W. and J. Wroclawski,
                 "Assured Forwarding PHB Group, RFC 2597, June 1999.

   [RFC2914]     Floyd, S., "Congestion Control Principles", BCP 41, RFC
                 2914, September 2000.

   [RFC2990]     Huston, G., "Next Steps for the IP QoS Architecture",
                 RFC 2990, November 2000.

   [RFC3042]     Allman, M., Balakrishnan, H. and S., Floyd, "Enhancing
                 TCP's Loss Recovery Using Limited Transmit", RFC 3042,
                 January 2001.

   [RFC3168]     Ramakrishnan, K., Floyd, S. and D. Black, "The Addition
                 of Explicit Congestion Notification (ECN) to IP", RFC
                 3168, September 2001.

   [RFC3246]     Davie, B., Charny, A., Bennet, J.C.R., Benson, K., Le
                 Boudec, J.Y., Courtney, W., Davari, S., Firoiu, V. and
                 D. Stiliadis, "An Expedited Forwarding PHB (Per-Hop
                 Behavior)", RFC 3246, March 2002.

   [RFC3448]     Handley, M., Floyd, S., Pahdye, J. and J. Widmer, "TCP
                 Friendly Rate Control (TFRC): Protocol Specification",
                 RFC 3448, January 2003.

   [RSVP]        Resource Reservation Setup Protocol (rsvp), Concluded
                 Working Group, URL
                 "http://www.ietf.cnri.reston.va.us/html.charters/
                 OLD/rsvp-charter.html".

   [RTTWeb]      Web Page on Round-Trip Times in the Internet, URL
                 "http://www.icir.org/floyd/rtt-questions.html"

   [S03]         H. Schulzrinne, private communication, 2003.

   [RFC3551]     Schulzrinne, H. and S. Casner, "RTP Profile for Audio
                 and Video Conferences with Minimal Control", RFC 3551,
                 July 2003.




Floyd & Kempf                Informational                     [Page 25]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   [Vonage]      Vonage, URL "www.vonage.com".

   [W98]         J. Woodward, Speech Coding, Communications Research
                 Group, University of Southampton, 1998.  URL
                 "http://www-mobile.ecs.soton.ac.uk/speech_codecs/",














































Floyd & Kempf                Informational                     [Page 26]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


10.  Appendix - Sending Rates with Packet Drops

   The standard way to estimate TCP's average sending rate S in packets
   per round-trip as a function of the packet drop rate would be to use
   the TCP response function estimated in [PFTK98]:

      S = 1/(sqrt(2p/3) + K min(1,3 sqrt(3p/8)) p (1 + 32 p^2))   (1)

   for acks sent for every data packet, and the RTO set to K*RTT.

   The results from Equation (1) are given in the second column in
   Tables 1 and 2 below.  However, Equation (1) overestimates TCP's
   sending rate in the regime with heavy packet drop rates (e.g., of 30%
   or more).  The analysis behind Equation (1) assumes that once a
   single packet is successfully transmitted, TCP's retransmit timer is
   no longer backed-off.  This might be appropriate for an environment
   with ECN, or for a TCP connection using fine-grained timestamps, but
   this is not necessarily the case for a non-ECN-capable TCP connection
   without timestamps.  As specified in [RFC2988], if TCP's retransmit
   timer is backed-off, this back-off should only be removed when TCP
   successfully transmits a new packet (as opposed to a retransmitted
   packet), in the absence of timestamps.

   When the packet drop rate is 50% or higher, for example, many of the
   successful packet transmissions can be of retransmitted packets, and
   the retransmit timer can remain backed-off for significant periods of
   time, in the absence of timestamps.  In this case, TCP's throughput
   is determined largely by the maximum backoff of the retransmit timer.
   For example, in the NS simulator the maximum backoff of the
   retransmit timer is 64 times the un-backed-off value.  RFC 2988
   specifies that "a maximum value MAY be placed on RTO provided it is
   at least 60 seconds."  [Although TCP implementations vary, many TCP
   implementations have a maximum of 45 seconds for the backed-off RTO
   after dropped SYN packets.]

   Another limitation of Equation (1) is that it models Reno TCP, and
   therefore underestimates the sending rate of a modern TCP connection
   that used SACK and Limited Transmit.

   The table below shows estimates of the average sending rate S in
   packets per RTT, for TCP connections with the RTO set to 2 RTT for
   Equation (1).

   These estimates are compared with simulations in the third, fourth,
   and fifth columns, with ECN, packet drops for TCP with fine-grained
   timestamps, and packet drops for TCP without timestamps respectively.
   (The simulation scripts are available from
   http://www.icir.org/floyd/VoIP/sims.)  Each simulation computes the



Floyd & Kempf                Informational                     [Page 27]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   average sending rate over the second half of a 10,000-second
   simulation, and for each packet drop rate, the average is given over
   50 simulations.  For the simulations with very high packet drop
   rates, it is sometimes the case that the SYN packet is repeatedly
   dropped, and the TCP sender never successfully transmits a packet.
   In this case, the TCP sender also never gets a measurement of the
   round-trip time.












































Floyd & Kempf                Informational                     [Page 28]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   The sixth column of Table 1 shows the average sending rate S in
   packets per RTT for an experiment using a 4.8-RELEASE FreeBSD
   machine.  For the low packet drop rates of 0.1 and 0.2, the sending
   rate in the simulations is higher than the sending rate in the
   experiments; this is probably because the TCP implementation in the
   simulations uses Limited Transmit [RFC3042].  With Limited Transmit,
   the TCP sender can sometimes avoid a retransmit timeout when a packet
   is dropped and the congestion window is small.  With high packet drop
   rates of 0.65 and 0.7, the sending rate in the simulations is
   somewhat lower than the sending rate in the experiments.  For these
   high packet drop rates, the TCP connections in the experiments would
   often abort prematurely, after a sufficient number of successive
   packet drops.

   We note that if the ECN marking rate exceeds a locally-configured
   threshold, then a router is advised to switch from marking to
   dropping.  As a result, we do not expect to see high steady-state
   marking rates in the Internet, even if ECN is in fact deployed.

    Drop
   Rate p  Eq(1)  Sims:ECN  Sims:TimeStamp  Sims:Drops  Experiments
   ------  -----  --------  --------------  ----------  -----------
     0.1   2.42    2.92      2.38            2.32       0.72
     0.2    .89    1.82      1.26            0.82       0.29
     0.25   .55    1.52       .94             .44       0.22
     0.35   .23    .99        .51             .11       0.10
     0.4    .16    .75        .36             .054      0.068
     0.45   .11    .55        .24             .029      0.050
     0.5    .10    .37        .16             .018      0.036
     0.55   .060   .25        .10             .011      0.024
     0.6    .045   .15        .057            .0068     0.006
     0.65   .051   .          .033            .0034     0.008
     0.7    .041   .06        .018            .0022     0.007
     0.75   .034   .04        .0099           .0011
     0p.8    .028   .027       .0052           .00072
     0.85   .023   .015       .0021           .00034
     0.9    .020   .011       .0011           .00010
     0.95   .017   .0079      .00021          .000037

   Table 1: Sending Rate S as a Function of the Packet Drop Rate p,
            for RTO set to 2 RTT, and S in packets per RTT.










Floyd & Kempf                Informational                     [Page 29]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


   The table below shows the average sending rate S, for TCP connections
   with the RTO set to 10 RTT.

    Drop
   Rate p  Eq(1)  Sims:ECN  Sims:TimeStamp  Sims:Drops
   ------  -----  --------  --------------  ----------
    0.1    0.97    2.92       1.67          1.64
    0.2    0.23    1.82        .56           .31
    0.25   0.13     .88        .36           .13
    0.3    0.08     .61        .23           .059
    0.35   0.056    .41        .15           .029
    0.4    0.040    .28        .094          .014
    0.45   0.029    .18        .061          .0080
    0.5    0.021    .11        .038          .0053
    0.55   0.016    .077       .022          .0030
    0.6    0.013    .045       .013          .0018
    0.65   0.010    .          .0082         .0013
    0.7    0.0085   .018       .0042
    0.75   0.0069   .012       .0025         .00071
    0.8    0.0057   .0082      .0014         .00030
    0.85   0.0046   .0047      .00057        .00014
    0.9    0.0041   .0034      .00026        .000025
    0.95   0.0035   .0024      .000074       .000013

   Table 2: Sending Rate as a Function of the Packet Drop Rate,
            for RTO set to 10 RTT, and S in packets per RTT.

11.  Security Considerations

   This document does not itself create any new security issues for the
   Internet community.

12.  IANA Considerations

   There are no IANA considerations regarding this document.
















Floyd & Kempf                Informational                     [Page 30]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


13.  Authors' Addresses

   Internet Architecture Board
   EMail:  iab@iab.org

   Internet Architecture Board Members
   at the time this document was published were:

   Bernard Aboba
   Harald Alvestrand (IETF chair)
   Rob Austein
   Leslie Daigle (IAB chair)
   Patrik Faltstrom
   Sally Floyd
   Jun-ichiro Itojun Hagino
   Mark Handley
   Geoff Huston (IAB Executive Director)
   Charlie Kaufman
   James Kempf
   Eric Rescorla
   Mike St. Johns

   This document was created in January 2004.




























Floyd & Kempf                Informational                     [Page 31]
^L
RFC 3714       IAB Concerns Regarding Congestion Control      March 2004


14.  Full Copyright Statement

   Copyright (C) The Internet Society (2004).  This document is subject
   to the rights, licenses and restrictions contained in BCP 78 and
   except as set forth therein, the authors retain all their rights.

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

Intellectual Property

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

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

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

Acknowledgement

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









Floyd & Kempf                Informational                     [Page 32]
^L