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
|
Network Working Group S. Floyd
Request for Comments: 5290 M. Allman
Category: Informational ICSI
July 2008
Comments on the Usefulness of Simple Best-Effort Traffic
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.
IESG Note
The content of this RFC was at one time considered by the IETF, and
therefore it may resemble a current IETF work in progress or a
published IETF work.
This RFC is not a candidate for any level of Internet Standard. The
IETF disclaims any knowledge of the fitness of this RFC for any
purpose and notes that the decision to publish is not based on IETF
review apart from IESG review for conflict with IETF work. The RFC
Editor has chosen to publish this document at its discretion. See
RFC 3932 for more information.
Abstract
This document presents some observations on "simple best-effort
traffic", defined loosely for the purposes of this document as
Internet traffic that is not covered by Quality of Service (QOS)
mechanisms, congestion-based pricing, cost-based fairness, admissions
control, or the like. One observation is that simple best-effort
traffic serves a useful role in the Internet, and is worth keeping.
While differential treatment of traffic can clearly be useful, we
believe such mechanisms are useful as *adjuncts* to simple best-
effort traffic, not as *replacements* of simple best-effort traffic.
A second observation is that for simple best-effort traffic, some
form of rough flow-rate fairness is a useful goal for resource
allocation, where "flow-rate fairness" is defined by the goal of
equal flow rates for different flows over the same path.
Floyd & Allman Informational [Page 1]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
Table of Contents
1. Introduction ....................................................2
2. On Simple Best-Effort Traffic ...................................3
2.1. The Usefulness of Simple Best-Effort Traffic ...............4
2.2. The Limitations of Simple Best-Effort Traffic ..............4
2.2.1. Quality of Service (QoS) ............................4
2.2.2. The Avoidance of Congestion Collapse and the
Enforcement of Fairness..............................6
2.2.3. Control of Traffic Surges ...........................6
3. On Flow-Rate Fairness for Simple Best-Effort Traffic ............6
3.1. The Usefulness of Flow-Rate Fairness .......................7
3.2. The Limitations of Flow-Rate Fairness ......................8
3.2.1. The Enforcement of Flow-Rate Fairness ...............8
3.2.2. The Precise Definition of Flow-Based Fairness .......9
4. On the Difficulties of Incremental Deployment ..................11
5. Related Work ...................................................12
5.1. From the IETF .............................................12
5.2. From Elsewhere ............................................13
6. Security Considerations ........................................14
7. Conclusions ....................................................14
8. Acknowledgements ...............................................14
9. Informative References .........................................14
1. Introduction
This document gives some observations on the role of simple best-
effort traffic in the Internet. For the purposes of this document,
we define "simple best-effort traffic" as traffic that does not
*rely* on the *differential treatment* of flows either in routers or
in policers, enforcers, or other middleboxes along the path and that
does not use admissions control. We define the term "simple best-
effort traffic" to avoid unproductive semantic discussions about what
the phrase "best-effort traffic" does or does not include. We note
that our definition of "simple best-effort traffic" includes traffic
that is not necessarily "simple", including mechanisms common in the
current Internet such as pairwise agreements between ISPs, volume-
based pricing, firewalls, and a wide range of mechanisms in
middleboxes.
"Simple best-effort traffic" in the current Internet uses end-to-end
transport protocols (e.g., TCP, UDP, or others), with minimal
requirements of the network in terms of resource allocation.
However, other implementations of simple best-effort service would be
possible, including those that would rely on Fair Queueing or some
other form of per-flow scheduling in congested routers. Our
intention is to define "simple best-effort traffic" to include the
dominant traffic class in the current Internet.
Floyd & Allman Informational [Page 2]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
In contrast to "simple best-effort traffic", intserv- or diffserv-
enabled traffic relies on differential scheduling mechanisms at
congested routers, with packets from different intserv or diffserv
classes receiving different treatment. Similarly, in contrast to
"simple best-effort traffic", cost-based fairness [B07] would most
likely require the deployment of traffic marking (e.g., Explicit
Congestion Notification (ECN)) at congested routers, along with
policing mechanisms near the two ends of the connection providing
differential treatment for packets in different flows or in different
traffic classes. Intserv/diffserv, cost-based fairness, and
congestion-based pricing could also require more complex pairwise
economic relationships among Internet Service Providers (ISPs), and
between end-users and ISPs.
This document suggests that it is important to retain the class of
"simple best-effort traffic" (though hopefully augmented by a wider
deployment of other classes of service). Further, this document
suggests that some form of rough flow-rate fairness is an appropriate
goal for simple best-effort traffic. We do not argue in this
document that flow-rate fairness is the *only possible* or *only
desirable* resource allocation goal for simple best-effort traffic.
We maintain, however, that it is an appropriate resource allocation
goal for simple best-effort traffic in the current Internet, evolving
from the Internet's past of end-point congestion control.
This document was motivated by [B07], a paper titled "Flow Rate
Fairness: Dismantling a Religion" that asserts in the abstract that
"comparing flow rates should never again be used for claims of
fairness in production networks." This document does not attempt to
be a rebuttal to [B07], or to answer any or all of the issues raised
in [B07], or to give the "intellectual heritage" for flow-based
fairness in philosophy or social science, or to commit the authors of
this document to an extended dialogue with the author of [B07]. This
document is simply a separate viewpoint on some related topics.
2. On Simple Best-Effort Traffic
This section makes some observations on the usefulness and
limitations of the class of simple best-effort traffic, in comparison
with traffic receiving differential treatment.
Floyd & Allman Informational [Page 3]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
2.1. The Usefulness of Simple Best-Effort Traffic
We now list some useful aspects of simple best-effort traffic.
Minimal technical demands on the network infrastructure:
Simple best-effort traffic, as implemented in the current
Internet, makes minimal technical demands on the infrastructure.
There are no technical requirements for scheduling, queue
management, or enforcement mechanisms in routers.
Minimal demands in terms of economic infrastructure:
Simple best-effort traffic makes minimal demands in terms of
economic infrastructure, relying on fairly simple pair-wise
economic relationships among ISPs, and between a user and its
immediate ISP. In contrast, Section 4 discusses some of the
difficulties in the incremental deployment of infrastructure for
additional classes of service.
Usefulness in the real world:
Simple best-effort traffic has been shown to work in the Internet
for the past 20 years, however imperfectly. Simple best-effort
traffic has supported everything from simple file and e-mail
transfer and web traffic to video and audio streaming and voice
communications.
As discussed below, simple best-effort traffic is not optimal.
However, experience in the Internet has shown that there has been
significant value in the mechanism of simple best-effort traffic,
generally allowing all users to get a portion of the resources
while still preventing congestion collapse.
2.2. The Limitations of Simple Best-Effort Traffic
We now discuss some limitations of simple best-effort traffic.
2.2.1. Quality of Service (QoS)
Some users would be happy to pay for more bandwidth, less delay, less
jitter, or fewer packet drops. It is desirable to accommodate such
goals within the Internet architecture while preserving a sufficient
amount of bandwidth for simple best-effort traffic.
One of the obvious dangers of simple differential traffic treatment
implementations that do not take steps to protect simple best-effort
traffic would be that the users with more money *could* starve users
Floyd & Allman Informational [Page 4]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
with less money in times of congestion. There seems to be fairly
widespread agreement that this would not be a desirable goal. As a
sample of the range of positions, the Internet Society's Internet
2020 Initiative, titled "The Internet is (still) for Everyone",
states that "we remain committed to the openness that ensures equal
access and full participation for every user" [Internet2020].
The wide-ranging discussion of "network neutrality" in the United
States includes advocates of several positions, including that of
"absolute non-discrimination" (with no QoS considerations), "limited
discrimination without QoS tiering" (no fees charged for higher-
quality service), and "limited discrimination and tiering" (including
higher fees allowed for QoS) [NetNeutral]. The proponents of
"network neutrality" are opposed to charging based on content (e.g.,
based on applications or the content provider).
As the "network neutrality" discussion makes clear, there are many
voices in the discussion that would disagree with a resource
allocation goal of maximizing the combined aggregate utility
(advocated in [B07a]), particularly where a user's utility is
measured by the user's willingness to pay. "You get what you pay
for" ([B07], page 5) does not appear to be the consensus goal for
resource allocation in the community or in the commercial or
political realms of the Internet. However, there is a reasonable
agreement that higher-priced services, as an adjunct to simple best-
effort traffic, can play an important role in helping to finance the
Internet infrastructure.
Briscoe argues for cost-fairness [B07], so that senders are made
accountable for the congestion they cause. There are, of course,
differences of opinion about how well cost-based fairness could be
enforced, and how well it fits the commercial reality of the
Internet, with [B07] presenting an optimistic view. Another point of
view, e.g., from an earlier paper by Roberts titled "Internet
Traffic, QoS, and Pricing", is that "many proposed schemes are overly
concerned with congestion control to the detriment of the primary
pricing function of return on investment" [R04].
With *only* simple best-effort traffic, there would be fundamental
limitations to the performance that real-time applications could
deliver to users. In addition to the obvious needs for high
bandwidth, low delay or jitter, or low packet drop rates, some
applications would like a fast start-up, or to be able to resume
their old high sending rate after a relatively long idle period, or
to be able to rely on a call-setup procedure so that the application
is not even started if network resources are not sufficient. There
are severe limitations to how effectively these requirements can be
accommodated by simple best-effort service in a congested
Floyd & Allman Informational [Page 5]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
environment. Of course, Quality of Service architectures for the
Internet have their own limitations and difficulties, as discussed in
[RFC2990] and elsewhere. We are not going to discuss these
difficulties further here.
2.2.2. The Avoidance of Congestion Collapse and the Enforcement of
Fairness
As discussed in Section 3.2 below, there are well-known problems with
the enforcement of fairness and the avoidance of congestion collapse
[RFC2914] with simple best-effort traffic. In the current Internet,
end-to-end congestion control is relied upon to deal with these
concerns; this use of end-to-end congestion control essentially
requires cooperation from end-hosts.
2.2.3. Control of Traffic Surges
Simple best-effort traffic can suffer from sudden aggregate
congestion from traffic surges (e.g., Distributed Denial of Service
(DDoS) attacks, flash crowds), resulting in degraded performance for
all simple best-effort traffic sharing the path. A wide range of
approaches for detecting and responding to sudden aggregate
congestion in the network has been proposed and used, including deep
packet inspection and rate-limiting traffic aggregates. There are
many open questions about both the goals and mechanisms of dealing
with aggregates within simple best-effort traffic on congested links.
3. On Flow-Rate Fairness for Simple Best-Effort Traffic
This section argues that rough flow-rate fairness is an acceptable
goal for simple best-effort traffic. We do not, however, claim that
flow-rate fairness is necessarily an *optimal* fairness goal or
resource allocation mechanism for simple best-effort traffic. Simple
best-effort traffic and flow-rate fairness are in general not about
optimality, but instead are about a low-overhead service (best-effort
traffic) along with a rough, simple fairness model (flow-rate
fairness).
Within simple best-effort traffic, it would be possible to have
explicit fairness mechanisms that are implemented by the end-hosts in
the network (as in proportional fairness or TCP fairness), explicit
fairness mechanisms enforced by the routers (as in max-min fairness
with Fair Queueing), or a traffic class with no explicit fairness
mechanisms at all (as in the Internet before TCP congestion control).
This document does *not* address the issues about the implementation
of flow-rate fairness. In the current Internet, rough flow-rate
fairness is achieved by the fact that *most* of the traffic in the
Floyd & Allman Informational [Page 6]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
Internet uses TCP, and *most* of the TCP connections in fact use
conformant TCP congestion control [MAF05]. However, rough flow-rate
fairness could also be achieved by the use of per-flow scheduling at
congested routers [DKS89] [LLSZ96], by related router mechanisms
[SSZ03], or by congestion-controlled transport protocols other than
TCP. This document does not address the pros and cons of TCP-
friendly congestion control, equation-based congestion control
[FHPW00], or any of the myriad of other issues concerning mechanisms
for approximating flow-rate fairness. Le Boudec's tutorial on rate
adaption, congestion control, and fairness gives an introduction to
some of these issues [B00].
3.1. The Usefulness of Flow-Rate Fairness
We note that the limitations of flow-rate fairness are many, with a
long history in the literature. We discuss these limitations in the
next section. While the benefits of simple best-effort traffic and
rough flow-rate fairness are rarely discussed, this does *not* mean
that benefits do not exist. In this section, we discuss the benefits
of flow-rate fairness. We note that many of the useful aspects of
simple best-effort traffic discussed above also qualify as useful
aspects of rough flow-rate fairness. For simple best-effort traffic
with rough flow-rate fairness, the quote from Winston Churchill about
democracy comes to mind: "Democracy is the worst form of government
except all those other forms that have been tried from time to time"
[C47].
Minimal technical demands on the network infrastructure:
First, the rough flow-rate fairness for best-effort traffic
provided by TCP or other transport protocols makes minimal
technical demands on the infrastructure, as TCP's congestion
control algorithms are wholly implemented in the end-hosts.
However, mechanisms for *enforcement* of the flow-rate fairness
*would* require some support from the infrastructure.
Minimal demands in terms of economic infrastructure:
A system based on rough flow-rate fairness for simple best-effort
traffic makes minimal demands in terms of economic relationships
among ISPs or between users and ISPs. In contrast, Section 4
discusses some of the difficulties in the incremental deployment
of infrastructure for cost-based fairness or other fairness
mechanisms.
Floyd & Allman Informational [Page 7]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
Usefulness in the real world:
The current system -- based on rough flow-rate fairness and simple
best-effort traffic -- has shown its usefulness in the real world.
Getting a share of the available bandwidth:
A system based on rough flow-rate fairness and simple best-effort
traffic gives all users a reasonable chance of getting a share of
the available bandwidth. This seems to be a quality that is much
appreciated by today's Internet users (as discussed above).
3.2. The Limitations of Flow-Rate Fairness
This section discusses some of the limitations of flow-rate fairness
for simple best-effort traffic.
3.2.1. The Enforcement of Flow-Rate Fairness
One of the limitations of rough flow-rate fairness is the difficulty
of enforcement. One possibility for implementing flow-rate fairness
would be an infrastructure designed from the start with a requirement
for ubiquitous per-flow scheduling in routers. However, when
starting with an infrastructure such as the current Internet with
best-effort traffic largely served by First-In First-Out (FIFO)
scheduling in routers and a design preference for intelligence at the
ends, enforcement of flow-rate fairness is difficult at best.
Further, a transition to an infrastructure that provides actual
flow-rate fairness for best-effort traffic enforced in routers would
be difficult.
A second possibility, which is largely how the current Internet is
operated, would be simple best-effort traffic where most of the
connections, packets, and bytes belong to connections using similar
congestion-control mechanisms (in this case, those of TCP congestion
control), with few if any enforcement mechanisms. Of course, when
this happens, the result is a rough approximation of flow-rate
fairness, with no guarantees that the simple best-effort traffic will
continue to be dominated by connections using similar congestion-
control mechanisms or that users or applications cannot game the
system for their benefit. That is our current state of affairs. The
good news is that the current Internet continues to successfully
carry traffic for many users. In particular, we are not aware of
reports of frequent congestion collapse, or of the Internet being
dominated by severe congestion or intolerable unfairness.
Floyd & Allman Informational [Page 8]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
A third possibility would be simple best-effort traffic with flow-
rate fairness provided by the congestion control mechanisms in the
transport protocols, with some level of enforcement, either in
congested routers, in middleboxes, or by other mechanisms [MBFIPS01]
[MF01] [SSZ03]. There seems to us to be considerable promise that
incentives among the various players (ISPs, vendors, customers,
standards bodies, political entities, etc.) will align somewhat, and
that further progress will be made on the deployment of various
enforcement mechanisms for flow-rate fairness for simple best-effort
traffic. Of course, this is not likely to turn in to a fully
reliable and ubiquitous enforcement of flow-rate fairness, or of any
related fairness goals, for simple best-effort traffic, so this is
not likely to be satisfactory to purists in this area. However, it
may be enough to continue to encourage most systems to use standard
congestion control.
3.2.2. The Precise Definition of Flow-Based Fairness
A second limitation of flow-based fairness is that there is seemingly
no consensus within the research, standards, or technical communities
about the precise form of flow-based fairness that should be desired
for simple best-effort traffic. This area is very much still in
flux, as applications, transport protocols, and the Internet
infrastructure evolve.
Some of the areas where there is a range of opinions about the
desired goals for rough flow-based fairness for simple best-effort
traffic include the following:
* Granularity: What is the appropriate fairness granularity? That
is, for flow-based fairness, what is the definition of a 'flow'?
(This question has been explicitly posed in [RFC2309], [RFC2914],
and many other places.) Should fairness be assessed on a per-
connection basis? Should fairness take into account multiple
connections between a pair of end-hosts (e.g., as suggested by
[RFC3124])? If congestion control applies to each individual
connection, what controls (if any) should constrain the number of
connections opened between a pair of end-hosts? As an example,
RFC 2616 specifies that with HTTP 1.1, a single-user client SHOULD
NOT maintain more than two persistent connections with any server
or proxy [RFC2616] (Section 8.1.4). For peer-to-peer traffic,
different operating systems have different limitations on the
maximum number of peer-to-peer connections; Windows XP Pro has a
limit of ten simultaneous peer-to-peer connections, Windows XP
Home (for the client) has a limit of five, and an OS X client has
a limit of ten [P2P].
Floyd & Allman Informational [Page 9]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
* RTT fairness: What is the desired relationship between flow
bandwidth and round-trip times, for simple best-effort traffic?
As shown in Section 3.3 of [FJ92], it would be straightforward to
modify TCP's congestion control algorithms so that flows with
similar packet drop rates but different round-trip times would
receive roughly the same throughput. This question is further
studied in [HSMK98]. It remains an open question what would be
the desired relationship between throughput and round-trip times
for simple best-effort traffic, particularly for applications or
transport protocols using some form of feedback-based congestion
control.
* Multiple congested routers: What is the desired relationship
between flow bandwidth and the number of congested routers along
the path, for simple best-effort traffic? It is well established
that for TCP traffic in particular, flows that traverse multiple
congested routers receive a higher packet drop rate, and therefore
lower throughput, than flows with the same round-trip time that
traverse only one congested router [F91]. There is also a long-
standing debate between max-min fairness [HG86] and proportional
fairness [KMT98], and no consensus within the research community
on the desired fairness goals in this area.
* Bursty vs. smooth traffic: What is the desired relationship
between flow bandwidth and the burstiness in the sending rate of
the flow? Is it a goal for a bursty flow to receive the same
average or maximum bandwidth as a flow with a smooth sending rate?
How does the goal depend on the time scale of the burstiness of
the flow [K96]? For instance, a flow that is bursty on time
scales of less than a round-trip time has different dynamics than
a flow that is bursty on a time scale of seconds or minutes.
* Packets or bytes: Should the rough fairness goals be in terms of
packets per second or bytes per second [RFC3714]? And if the
fairness goals are in terms of bytes per second, does this include
the bandwidth used by packet headers (e.g., TCP and IP headers)?
* Different transport protocols: Should the transport protocol used
(e.g., UDP, TCP, SCTP, DCCP) or the application affect the rough
fairness goals for simple best-effort traffic?
* Unicast vs. multicast: What should the fairness goals be between
unicast and multicast traffic [FD04] [ZOX05]?
* Precision of fairness: How precise should the fairness goals be?
Is the precision that is possible from per-flow scheduling the
right benchmark? Or, is a better touchstone the rough fairness
over multiple round-trip times achieved by TCP flows over FIFO
Floyd & Allman Informational [Page 10]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
scheduling? Or, is a goal of even more rough fairness of an order
of magnitude or more between flows using different transport
protocols right?
There is a range of literature for each of these topics, and we
have not attempted to cite it all above. Rough flow-based
fairness for simple best-effort traffic could evolve with a range
of possibilities for fairness in terms of round-trip times, the
number of congested routers, packet size, or the number of
receivers per flow. (Further discussion can be found in
[RFC5166].)
Fairness over time:
One issue raised in [B07] concerns how fairness should be
integrated over time. For example, for simple best-effort
traffic, should long flows receive less bandwidth in bits per
second than short flows? For cost-based fairness or for QoS-based
traffic, it seems perfectly viable for there to be some scenarios
where the cost is a function of flow or session lifetime. It also
seems viable for there to be some scenarios where the cost of
QoS-enabled traffic is independent of flow or session lifetime
(e.g., for a private Intranet that is measured only by the
bandwidth of the access link, but where any traffic sent on that
Intranet is guaranteed to receive a certain QoS).
However, for simple best-effort traffic, the current form of rough
fairness seems acceptable, with fairness that is independent of
session length. That is, in the current Internet, a user who
opens a single TCP connection for ten hours *might* receive the
same average throughput in bits per second, during that TCP
connection, as a user who opens a single TCP connection for ten
minutes and then goes off-line. Similarly, a user who is online
for ten hours each day *might* receive the same throughput in bits
per second, and pay roughly the same cost, as a user who is online
for ten minutes each day. That seems acceptable to us. Other
pricing mechanisms between users and ISPs seem acceptable also.
The current Internet includes a wide range of pricing mechanisms
between users and ISPs for best-effort traffic.
4. On the Difficulties of Incremental Deployment
One of the advantages of simple best-effort service is that it is
currently operational in the Internet, along with the rough flow-rate
fairness that results from the dominance of TCP's congestion control.
Floyd & Allman Informational [Page 11]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
While additional classes of service would clearly be of use in the
Internet, the deployment difficulties of such mechanisms have been
non-trivial [B03]. The problems of deploying interlocking changes to
the infrastructure do not necessarily have an easy fix as they stem
in part from the underlying architecture of the Internet. As
explained in RFC 1958 titled "Architectural Principles of the
Internet": "Fortunately, nobody owns the Internet, there is no
centralized control, and nobody can turn it off" [RFC1958]. Some of
the difficulties of making changes in the Internet infrastructure,
including the difficulties imposed by the political and economic
context, have been discussed elsewhere (e.g., [CMB07]). The
difficulty of making changes to the Internet infrastructure is in
contrast to the comparative ease in making changes in Internet
applications.
The difficulties of deployment for end-to-end intserv or diffserv
mechanisms are well-known, having in part to do with the difficulties
of deploying the required economic infrastructure [B03]. It seems
likely that cost-based schemes based on re-ECN could also have a
difficult deployment path, involving the deployment of ECN-marking at
routers, policers at both ends of a connection, and a change in
pairwise economic relationships to include a congestion metric [B07].
Some infrastructure deployment problems are sufficiently difficult
that they have their own working groups in the IETF [MBONED].
5. Related Work
5.1. From the IETF
This section discusses IETF documents relating to simple best-effort
service and flow-rate fairness.
RFC 896 on congestion control: Nagle's RFC 896 titled "Congestion
Control in IP/TCP", from 1984, raises the issue of congestion
collapse, and says that "improved handling of congestion is now
mandatory" [RFC896]. RFC 896 was written in the context of a heavily
loaded network, the only private TCP/IP long-haul network in
existence at the time (that of Ford Motor Company, in 1984). In
addition to introducing the Nagle algorithm for minimizing the
transmission of small packets in TCP, RFC 896 considers the
effectiveness of ICMP Source Quench for congestion control, and
comments that future gateways should be capable of defending
themselves against obnoxious or malicious hosts. However, RFC 896
does not raise the question of fairness between competing users or
flows.
Floyd & Allman Informational [Page 12]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
RFC 2309 on unresponsive flows: RFC 2309, an Informational document
from the End-to-End Research Group titled "Recommendations on Queue
Management and Congestion Avoidance in the Internet" from 2000,
contains the following recommendation: "It is urgent to begin or
continue research, engineering, and measurement efforts contributing
to the design of mechanisms to deal with flows that are unresponsive
to congestion notification or are responsive but more aggressive than
TCP" [RFC2309].
RFC 2616 on opening multiple connections: RFC 2616, the standards-
track document for HTTP/1.1, specifies that "clients that use
persistent connections SHOULD limit the number of simultaneous
connections that they maintain to a given server" (Section 8.1.4 of
[RFC2616]).
RFC 2914 on congestion control principles: RFC 2914, a Best Current
Practice document, from 2000 titled "Congestion Control Principles",
discusses the issues of preventing congestion collapse, maintaining
some form of fairness for best-effort traffic, and optimizing a
flow's performance in terms of throughput, delay, and loss for the
flow in question. In the discussion of fairness, RFC 2914 outlines
policy issues concerning the appropriate granularity of a "flow", and
acknowledges that end nodes can easily open multiple concurrent flows
to the same destination. RFC 2914 also discusses open issues
concerning fairness between reliable unicast, unreliable unicast,
reliable multicast, and unreliable multicast transport protocols.
RFC 3714 on the amorphous problem of fairness: Section 3.3 of RFC
3714, an Informational document from the IAB (Internet Architecture
Board) discussing congestion control for best-effort voice traffic,
has a discussion of "the amorphous problem of fairness", discussing
complicating issues of packet sizes, round-trip times, application-
level functionality, and the like [RFC3714].
RFCs on QoS: There is a long history in the IETF of the development
of QoS mechanisms for integrated and differentiated services
[RFC2212, RFC2475]. These include lower effort per-domain behaviors
that could be used to protect best-effort traffic from lower-priority
traffic [RFC3662].
5.2. From Elsewhere
This section briefly mentions some of the many papers in the
literature on best-effort traffic or on fairness for competing flows
or users. [B07] also has a section on some of the literature
regarding fairness in the Internet.
Floyd & Allman Informational [Page 13]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
Fairness with AIMD: Fairness with AIMD (Additive Increase
Multiplicative Decrease) congestion control was studied by Chiu and
Jain in 1987, where fairness is maximized when each user or flow gets
equal allocations of the bottleneck bandwidth [CJ89]. Van Jacobson's
1988 paper titled "Congestion Avoidance and Control" defined TCP's
AIMD-based congestion control mechanisms [J88].
Fair Queueing: The 1989 paper on Fair Queueing by Demers et al.
promoted Fair Queueing scheduling at routers as providing fair
allocation of bandwidth, lower delay for low-bandwidth traffic, and
protection from ill-behaved sources [DKS89].
Congestion-based pricing: One of the early papers on congestion-based
pricing in networks is the 1993 paper titled "Pricing the Internet"
by MacKie-Mason and Varian [MV93]. This paper proposed a "Smart
Market" to price congestion in real time, with a per-packet charge
reflecting marginal congestion costs. Frank Kelly's web page at
[Proportional] has citations to papers on proportional fairness,
including [K97] titled "Charging and Rate Control for Elastic
Traffic".
Other papers on pricing in computer networks include [SCEH96], which
is in part a critique of some of the pricing proposals in the
literature at the time. [SCEH96] argues that usage charges must
remain at significant levels even if congestion is extremely low.
6. Security Considerations
This document does not propose any new mechanisms for the Internet,
and so does not require any security considerations.
7. Conclusions
This document represents the views of the two authors on the role of
simple best-effort traffic in the Internet.
8. Acknowledgements
We thank Ran Atkinson, Roland Bless, Bob Briscoe, Mitchell Erblich,
Ted Faber, Frank Kelly, Tim Shephard, and members of the Transport
Area Working Group for feedback on this document.
9. Informative References
[B00] J.-Y. Le Boudec, Rate adaptation, Congestion Control and
Fairness: A Tutorial, 2000. URL
"http://citeseer.ist.psu.edu/boudec00rate.html" or
"http://ica1www.epfl.ch/PS_files/LEB3132.pdf".
Floyd & Allman Informational [Page 14]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
[B03] G. Bell, Failure to Thrive: QoS and the Culture of
Operational Networking, Proceedings of the ACM SIGCOMM
Workshop on Revisiting IP QoS: What Have We Learned, Why Do
We Care?, pp. 115-120, 2003, URL
"http://doi.acm.org/10.1145/944592.944595".
[B07] B. Briscoe, Flow Rate Fairness: Dismantling a Religion, ACM
SIGCOMM Computer Communication Review, V.37 N.2, April
2007.
[B07a] B. Briscoe, "Flow Rate Fairness: Dismantling a Religion",
Work in Progress, July 2007.
[CJ89] Chiu, D.-M., and Jain, R., Analysis of the Increase and
Decrease Algorithms for Congestion Avoidance in Computer
Networks, Computer Networks and ISDN Systems, V. 17, pp.
1-14, 1989. [The DEC Technical Report DEC-TR-509 was in
1987.]
[CMB07] kc claffy, Sascha D. Meinrath, and Scott O. Bradner, The
(un)Economic Internet?, IEEE Internet Computing, vol. 11,
no. 3, pp. 53--58, May 2007. URL
"http://www.caida.org/publications/papers/2007/ieeecon/".
[C47] Churchill, W., speech, House of Commons, November 11, 1947.
URL
"http://www.askoxford.com/quotations/827?view=uk".
[DKS89] A. Demers, S. Keshav, and S. Shenker, Analysis and
Simulation of a Fair Queueing Algorithm, SIGCOMM, 1989.
[F91] Floyd, S., Connections with Multiple Congested Gateways in
Packet-Switched Networks Part 1: One-way Traffic, Computer
Communication Review, Vol.21, No.5, October 1991.
[FD04] F. Filali and W. Dabbous, Fair Bandwidth Sharing between
Unicast and Multicast Flows in Best-Effort Networks,
Computer Communications, V.27 N.4, pp. 330-344, March 2004.
[FHPW00] Floyd, S., Handley, M., Padhye, J., and Widmer, J,
Equation-Based Congestion Control for Unicast Applications,
SIGCOMM, August 2000.
[FJ92] On Traffic Phase Effects in Packet-Switched Gateways,
Floyd, S. and Jacobson, V., Internetworking: Research and
Experience, V.3 N.3, September 1992.
Floyd & Allman Informational [Page 15]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
[HG86] E. Hahne and R. Gallager, Round Robin Scheduling for Fair
Flow Control in Data Communications Networks, IEEE
International Conference on Communications, June 1986.
[HSMK98] Henderson, T.R., E. Sahouria, S. McCanne, and R.H. Katz,
On Improving the Fairness of TCP Congestion Avoidance,
Globecom, November 1998.
[Internet2020]
Internet Society, An Internet 2020 Initiative: The Internet
is (still) for Everyone, 2007. URL "http://
www.isoc.org/orgs/ac/cms/uploads/docs/2020_vision.pdf".
[J88] V. Jacobson, Congestion Avoidance and Control, SIGCOMM '88,
August 1988.
[K96] F. Kelly, Charging and Accounting for Bursty Connections,
In L. W. McKnight and J. P. Bailey, editors, Internet
Economics. MIT Press, 1997.
[K97] F. Kelly, Charging and Rate Control for Elastic Traffic,
European Transactions on Telecommunications, 8:33--37,
1997.
[KMT98] F. Kelly, A. Maulloo and D. Tan, Rate Control in
Communication Networks: Shadow Prices, Proportional
Fairness and Stability. Journal of the Operational
Research Society 49, pp. 237-252, 1998. URL
"http://citeseer.ist.psu.edu/kelly98rate.html".
[LLSZ96] C. Lefelhocz, B. Lyles, S. Shenker, and L. Zhang,
Congestion Control for Best-effort Service: Why We Need a
New Paradigm, IEEE Network, vol. 10, pp. 10-19, Jan. 1996.
[MAF05] A. Medina, M. Allman, and S. Floyd, Measuring the Evolution
of Transport Protocols in the Internet, Computer
Communications Review, April 2005.
[MBFIPS01]
R. Manajan, S. Bellovin, S. Floyd, J. Ioannidis, V.
Paxson, and S. Shenker, Controlling High Bandwidth
Aggregates in the Network, Computer Communications Review,
V.32 N.3, July 2002.
[MBONED] MBONE Deployment Working Group, URL
"http://www.ietf.org/html.charters/mboned-charter.html".
Floyd & Allman Informational [Page 16]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
[MF01] Mahajan, R., and Floyd, S., Controlling High-Bandwidth
Flows at the Congested Router, ICNP 2001, November 2001.
[MV93] J. K. MacKie-Mason and H. Varian, Pricing the Internet, in
the conference on Public Access to the Internet, JFK School
of Government, May 1993.
[NetNeutral]
Network Neutrality, Wikipedia. URL
"http://en.wikipedia.org/wiki/Net_neutrality".
[P2P] "Maximum Number of Peer-to-Peer Connections", MAC OS X
Hints web site, February 2007, URL
"http://forums.macosxhints.com/showthread.php?t=67237".
[Proportional]
Kelly, F., papers on Proportional Fairness. URL
"http://www.statslab.cam.ac.uk/~frank/pf/".
[R04] J. Roberts, Internet Traffic, QoS, and Pricing, Proceedings
of the IEEE, V.92 N.9, September 2004.
[RFC896] Nagle, J., "Congestion control in IP/TCP internetworks",
RFC 896, January 1984.
[RFC1958] Carpenter, B., Ed., "Architectural Principles of the
Internet", RFC 1958, June 1996.
[RFC2212] Shenker, S., Partridge, C., and R. Guerin, "Specification
of Guaranteed Quality of Service", RFC 2212, September
1997.
[RFC2309] 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.
[RFC2475] Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z.,
and W. Weiss, "An Architecture for Differentiated Service",
RFC 2475, December 1998.
[RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter,
L., Leach, P., and T. Berners-Lee, "Hypertext Transfer
Protocol -- HTTP/1.1", RFC 2616, June 1999.
Floyd & Allman Informational [Page 17]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
[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.
[RFC3124] Balakrishnan, H. and S. Seshan, "The Congestion Manager",
RFC 3124, June 2001.
[RFC3662] Bless, R., K. Nichols, and K. Wehrle, "A Lower Effort Per-
Domain Behavior (PDB) for Differentiated Services", RFC
3662, December 2003.
[RFC3714] Floyd, S., Ed., and J. Kempf, Ed., "IAB Concerns Regarding
Congestion Control for Voice Traffic in the Internet", RFC
3714, March 2004.
[RFC5166] Floyd, S., Ed., "Metrics for the Evaluation of Congestion
Control Mechanisms", RFC 5166, March 2008.
[SCEH96] Shenker, D. D. Clark, D. Estrin, and S. Herzog, Pricing in
Computer Networks: Reshaping the Research Agenda, ACM
Computer Communication Review, vol. 26, April 1996.
[SSZ03] I. Stoica, S. Shenker, and H. Zhang, Core-Stateless Fair
Queueing: a Scalable Architecture to Approximate Fair
Bandwidth Allocations in High-speed Networks, IEEE/ACM
Transactions on Networking 11(1): 33-46, 2003.
[ZOX05] Zhang, T., P. Osterberg, and Youzhi Xu, Multicast-
favorable Max-Min Fairness - a General Definition of
Multicast Fairness, Distributed Frameworks for Multimedia
Applications, February 2005.
Floyd & Allman Informational [Page 18]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
Authors' Addresses
Sally Floyd
ICSI Center for Internet Research
1947 Center Street, Suite 600
Berkeley, CA 94704
USA
EMail: floyd@icir.org
URL: http:/www.icir.org/floyd/
Mark Allman
International Computer Science Institute
1947 Center Street, Suite 600
Berkeley, CA 94704-1198
Phone: (440) 235-1792
EMail: mallman@icir.org
URL: http://www.icir.org/mallman/
Floyd & Allman Informational [Page 19]
^L
RFC 5290 Simple Best-Effort Traffic July 2008
Full Copyright Statement
Copyright (C) The IETF Trust (2008).
This document is subject to the rights, licenses and restrictions
contained in BCP 78 and at http://www.rfc-editor.org/copyright.html,
and except as set forth therein, the authors retain all their rights.
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Intellectual Property
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be
found in 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.
Floyd & Allman Informational [Page 20]
^L
|