Rethinking the TCP-friendly Paradigm


The current Internet fairness paradigm mandates that all protocols have equivalent response to packet loss and other congestion signals, such that relatively simple network devices can attain a weak form of fairness by sending uniform signals to all flows. This "TCP-friendly" paradigm has been the policy of the IETF for quite some time. However we observe two trends that differ from this policy: an increasing number of environments where applications and other circumstances create situations that are "unfair", and ISPs that are responding to these situation by imposing traffic control in the network itself. We now question whether TCP-friendly paradigm is still appropriate for the huge breadth of technology and scale encompassed by today's global Internet. Therefore, we are considering the merits and difficulties of changing IETF policy to embrace these changes by progressively moving the responsibility for capacity allocation from the end-system to the network. Ultimately this policy change would eliminate the requirement that all protocols be "TCP-Friendly".

For a quick introduction read my April 2008 message to the ICCRG list.

The hard problem is how to phase in the changes.
The even harder problem will be expressing the changes in standards track documents.

Short term plan:

Revise the Internet Draft (to -01) in time for ICCRG. (May 20, Tokyo)

The working draft is online: [RFC Formatted .txt] [Formatted .html], and instructions for contributors and other information.

Present Relentless TCP at PFLDnet (May 21-22, Tokyo). This algorithm is positioned to break the TCP friendly paradigm.

Most recent activity:

Publish: draft-mathis-iccrg-unfriendly-00.txt

I made a presentation at TSVAREA meeting, IETF 74: [Slides (pdf)].

At the tail end of my presentation I asked for 2 "hums" of the working group. There was overwhelming support for "moving beyond TCP friendly" and many people indicated that they were willing to "support the draft in some way". In neither case were there any significant objections.

The presentation included an announcement of Relentless TCP, a 1/p Congestion Control Algorithm that is not "TCP-friendly".

Background, Discussion and History

The inspiration to actively advocate reconsidering TCP-friendly congestion control came to me during the "The Future of TCP: Train-wreck or Evolution?" workshop, held at Stanford on April 1, 2008. Following the workshop I drafted what I thought was a rather heretical message to the ICCRG. Much to my surprise I received absolutely zero negative responses from anybody on the ICCRG list. There were several public and private messages of support, and a very long digression about the nature of "fairness". (By hindsight my message should have used the more accurate term "capacity allocation" and avoided the subjective and politically loaded term "fairness").

Based on this idea I wrote a modest research proposal to Cisco, which of course subsequently entails waiting for the review results and funding decision.

Meanwhile, my 1997 paper "The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm" (with Jeff Semke, Jamshid Mahdavi, and Teunis Ott)[1], received the SIGCOMM test of time Award, which is quite ironic, since this paper and two subsequent papers were key to establishing the very TCP-friendly paradigm that I am now proposing to dismantle.

The other two papers were "TCP-friendly Unicast Rate Control"[2], and "Modeling TCP Throughput: A Simple Model and Its Empirical Validation"[3]. The former was an email message to the end-to-end list by my co-author, Jamshid Mahdavi with Sally Floyd, in which the term "TCP-friendly" was first used. The latter paper further strengthened the model and received the test of time award as well.

While discussing the irony of the award with John Byers and others at SIGCOMM'08, it was suggested that I submit an editorial note about my own paper, which I have done. This is a pre-publication of the article, slated to appear in the January CCR.

Funding from Cisco arrived just in time for me to make arrangements to attend IETF 73, where these ideas were presented at the ICCRG and TSVAREA meetings. There was good (non-contentious) discussion and feedback. In the ICCRG there was interest in writing a vision statement, which might become input to the IESG and IAB, and evolve into a future architecture statement.

Presentations at IETF 73, November 16-21, 2008:
ICCRG: [Slides (pdf)] [Minutes] [audio]
TSVAREA: [Slides (pdf)] [Minutes] [audio]


[1] M. Mathis, J. Semke, J. Mahdavi, T. Ott, "The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm", Computer Communication Review, volume 27, number3, July 1997. [Postscript]

[2] J. Mahdavi, S. Floyd, "TCP-friendly unicast rate-based flow control", Note sent to end2end-interest mailing list, Jan, 1997.

[3] J. Padhye, V. Firoiu, D. Towsley, and J. Kurose, "Modeling TCP Throughput: A Simple Model and Its Empirical Validation", Proc. of ACM SIGCOMM 1998.

This page is

For additional information check out these pages: Pittsburgh Supercomputing Center, Network research at PSC, or Matt Mathis. Please send comments and suggestions to