Internet Congestion Control                                   M. Mathis
Research Group                          Pittsburgh Supercomputing Center
Internet-Draft                                             March 1, 2009
Intended status: Informational
Expires: September 2, 2009


                        Rethinking TCP Friendly
                    draft-mathis-iccrg-unfriendly-00

Status of this Memo

   This Internet-Draft is submitted to IETF in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on September 2, 2009.

Copyright Notice

   Copyright (c) 2009 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.

   This document may contain material from IETF Documents or IETF
   Contributions published or made publicly available before November
   10, 2008.  The person(s) controlling the copyright in some of this



Mathis                  Expires September 2, 2009               [Page 1]


Internet-Draft           Rethinking TCP Friendly              March 2009


   material may not have granted the IETF Trust the right to allow
   modifications of such material outside the IETF Standards Process.
   Without obtaining an adequate license from the person(s) controlling
   the copyright in such materials, this document may not be modified
   outside the IETF Standards Process, and derivative works of it may
   not be created outside the IETF Standards Process, except to format
   it for publication as an RFC or to translate it into languages other
   than English.

Abstract

   The current Internet fairness paradigm mandates that all protocols
   have equivalent response to packet loss, 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 nearly two decades.  Although it was only an
   informal policy in the beginning, it progressively became more formal
   following the publication of RFC 2001 in 1997.

   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.

   This note explores the question of whether TCP-friendly paradigm is
   still appropriate for the huge breadth of technology and scale
   encompassed by today's global Internet.  It considers 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 might
   eliminate or redefine the requirement that all protocols be "TCP-
   Friendly".

   This note is intended foster discussion in the community and
   eventually become input to the IESG and IAB, where it might evolve
   into a future architecture statement.


1.  Parable

   We have built a global village, with no explicit traffic control, no
   stop lights or stop signs, only implicit yield signs at every
   intersection.  This works, because for the most part we have
   carefully trained the traffic to have a calibrated sense of fairness,
   and to take turns at all bottlenecks.  This approach was optimal when
   the Internet was a club of friends, who believed in serving the
   common good.



Mathis                  Expires September 2, 2009               [Page 2]


Internet-Draft           Rethinking TCP Friendly              March 2009


   Now that the Internet has become truly global, encompassing all of
   the best and worst of mankind, it is not too surprising that we are
   finding that we need traffic control.  Furthermore, there are more
   and more situations where the "one-size-fits-all" approach to
   congestion control doesn't work well enough.  In some parts of the
   world the infrastructure is under utilized because the prescribed
   fairness makes the traffic too timid to effectively fill the
   available capacity, either due to adverse conditions along the path
   or due to the scale of the available capacity.  In addition, in some
   contexts the users or applications are simply being greedy, without
   regard to their impact on others.

   If we embrace traffic controls, then we can permit traffic to be less
   timid, which will eventually raise overall network utilization and
   efficiency.

1.1.  [[Instructions to contributors

   Everyone is welcome to contribute!  Be especially careful to note any
   issues that I may have overlooked.  Our goal is to be complete as
   possible, covering the potential good, bad and ugly consequences of
   changing the TCP-friendly paradigm.

   Please use the ICCRG list for discussion: iccrg@cs.ucl.ac.uk.  If you
   have simple document additions or fixes you can send them directly to
   me at mathis@psc.edu.

   Word counts are only advisory (none yet).  An RFC page is about 400
   words.

   Ellipsis (...) indicate text still needing to be written.  Generally
   a sentience fragment ending with ellipsis is likely to become a full
   paragraph, if not more.

   Text in double square brackets, such as this entire section, are
   notes to authors and will be removed prior to being submitted for RFC
   publication.

   Additional author information and document revision history will be
   posted on a document management page at
   http://staff.psc.edu/mathis/unfriendly/drafts/

   ]]


2.  Introduction

   The current Internet fairness model is based on separate



Mathis                  Expires September 2, 2009               [Page 3]


Internet-Draft           Rethinking TCP Friendly              March 2009


   principles.....

   First, that bottlenecks can send "independent signals" (drops or
   marks) to all flows....

   Second, that all protocols and application have "uniform response" to
   these .....

   Third, that the congestion response has to be "AIMD like".....

   This paradigm approximates "window fairness" [CJ89 - Chiu and Jain,
   Analysis of AIMD for Congestion Control...]

   Our position is that we should consider explicitly inverting the
   first principle: require that the network be able to isolate flows
   and send different congestion signals to each, according to some
   explicit capacity allocation mechanism.

   As the network progressively takes on more responsibility for
   capacity allocation, we can progressively relax both of the other
   assumptions.... which can solve a number of other long standing
   problems...

   Section 3 describes some of the problems with the current
   paradigm....

   Section 4 describes some of the problems that need to be overcome to
   implement the new paradigm....

   Section 5 describes a plausible path forward....


3.  Reasons to Change the TCP-friendly paradigm

   The motivation to change the Internet fairness model comes from a
   number problems with the current model.  They fall into two broad
   categories: situations where the Internet fails to attain a
   reasonable definition of fair, and scaling problems associated with
   the AIMD algorithm itself.  These are discussed seperatly in sections
   Section 3.1 and Section 3.2 respectively.

3.1.  TCP-friendly isn't fair enough

   The current Internet fairness model is based on the assumption that
   fairness can be achieved by sending independent signals to different
   flows.  This assumption fails in a number of very common situations
   in todays internet.  Part of the difficulty is that "fairness" itself
   is sometimes subjective in the sense that what is fair from one point



Mathis                  Expires September 2, 2009               [Page 4]


Internet-Draft           Rethinking TCP Friendly              March 2009


   of view may be quite unfair from other points of view.  However, in
   many situations the Internet fairness model fails to attain fairness
   by any definition of fairness.

   [[Consider pulling additional examples and text from
   draft-briscoe-tsvwg-relax-fairness-01.txt..]]

3.1.1.  Multiple Connections

   Applications that open many connections...

3.1.2.  Non-standard protocols

   Non-IETF protocols (typically UDP based) that don't try to be fair...

3.1.3.  Drop-tail queues

   Lockout and other problems with drop tail queues, as documented in
   RFC 2309 [1]...

3.1.4.  Wildy Different Round Trip Times

   If the RTTs are very different then window fair becomes egregiously
   rate unfair...

3.1.5.  Instantaneous and Average Fairness

   The distinction between instantaneous and average fairness...

3.2.  AIMD is not suitable for the entire Internet

   The current TCP-friendly model assumes that the AIMD algorithm is
   suitable for all parts of the Internet.....

   AMID performance goes as 1/sqrt(p) [[Review math, including E(loss),
   E(period)]].....

   These are problems that follow from AIMD....

3.2.1.  AIMD requires excessivly small loss rates

   Wireless and LFNs requires excessively small loss....... (cite work)

3.2.2.  Long convergence times

   LFNs require extremely long convergence time......  (Mention S. Low
   scalability work)




Mathis                  Expires September 2, 2009               [Page 5]


Internet-Draft           Rethinking TCP Friendly              March 2009


3.2.3.  A new standard congestion control?

   Note that we might pick a new reference congestion control algorithm
   to replace AIMD.  This would require breaking all three fairness
   principles during a transition, but would asymptotically reestablish
   the second principle that protocols have uniform response to
   congestion signals.

   Such an approach would mitigate a number of the problems discussed
   int Section 4, however it requires reestablishing a new standard one-
   size-fits-all congestion algorithm.  Given the likely extended debate
   to come to consensus on such a standard and the very long deployment
   cycle, we take the position that the transition itself should be
   viewed as the long term steady state, with diverse congestion control
   algorithms co-existing in the operational Internet.

   This in not to say that a new, better standard congestion control
   might not emerge in the future, but it is a not a goal at this time.

3.2.4.  No provider input

   Providers want to be able to make business policy re-traffic....

   Are moving away from "independent signals" anyhow...

   We are not proposing to break net neutrality...

   [[This entire section may belong elsewhere]]


4.  Difficulties to be Overcome

   Reasons not to change and/or problems we must solve first....

4.1.  The Transition

   Must avoid new CC into old bottlenecks...

4.2.  Risk of Congestion Collapse

   TCP-friendly was used as a proxy for preventing congestion collapse.
   We need new methods for assuring that protocols are not subject to
   congestion collapse....

4.3.  Loss of Appropriate Economic Incentives

   Current TCP provides window fair....




Mathis                  Expires September 2, 2009               [Page 6]


Internet-Draft           Rethinking TCP Friendly              March 2009


   Current network based techniques are likely enforce rate fair....

   ...causes loss of incentive for traffic locality....

   No incentive for CDN and other techniques for content providers to
   move data closer to clients ...

   No incentives for clients to choose close data....  No incentives for
   ALTO...

4.4.  Loss of Implicit Fairness

   Even if it the existing models only provide weak fairness, there are
   many situations where this is important...

   In particular the independent congestion signal assumption does not
   depend on flow classification.  The new paradigm requires explicit
   flow classification.  If the flow granularity is too large (more than
   one concurrent micro-flow), then we would like to have implicit
   fairness within the large flow.  This requires uniform congestion
   response within the larger flow, but does not require that the
   individual micro-flows have AIMD like response...

4.5.  Scale Limitations

   We do not know if the Internet core will be protected well enough
   from congestion....

   It has been observed that congestion at the edges tends to protect
   the core...

   AFD works at very large scale, but is it large enough....

4.6.  Our Research May be off Base

   Much CC research has been influenced by one of more of the
   assumptions underlying TCP-Friendly.  If we abandon TCP-Friendly,
   then some large portion of past research may no longer be
   relevant.....

4.7.  Many IETF Standards may need to be revised

   Roughly a half dozen have definitional language about TCP-Friendly
   and TCP-Friendly Rate Control.

   Roughly 60 RFC contain references to TCP-Friendly.





Mathis                  Expires September 2, 2009               [Page 7]


Internet-Draft           Rethinking TCP Friendly              March 2009


5.  A Plausable Path Forward

   [[TBD.  Don't start yet.]]


6.  Security Considerations

   Traffic controls in the network can only improve the overall
   protection from DDoS.....


7.  References

   [1]  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.


Appendix A.  Acknowledgments

   Thank you everyone...


Author's Address

   Matthew Mathis
   Pittsburgh Supercomputing Center
   300 S. Craig St.
   Pittsburgh, PA  15213

   Email: mathis@psc.edu


















Mathis                  Expires September 2, 2009               [Page 8]