Subject: new paper on TCP congestion control vulnerabilities

From: Stefan Savage <[email-masked]>
Date: Mon, 18 Oct 1999 18:04:40 PDT

This is to announce the availability of a short paper describing how
TCP's current congestion control mechanisms can be easily defeated by
a greedy receiver.  The potential danger here is that
performance-motivated users will modify their TCP stacks accordingly
-- producing a "tragedy of the commons" effect.  We suggest some
sender-side implementation modifications to mitigate the impact of
these vulnerabilities and, perhaps more academically, some simple
end-to-end verification algorithms that remove the need to trust the
receiver's behavior at all (for the purposes of congestion control).

- Stefan

(I've sent this to both end2end and tcp-impl because it seems like it
may be of interest to both communities)

TCP Congestion Control with a Misbehaving Receiver
Stefan Savage, Neal Cardwell, David Wetherall, and Tom Anderson,
ACM Computer Communications Review, October 1999.
http://www.cs.washington.edu/homes/savage/papers/CCR99.ps 
(CCR99.pdf also works for the Postscript-challenged)

Abstract: 

In this paper, we explore the operation of TCP congestion control when
the receiver can misbehave, as might occur with a greedy Web
client. We first demonstrate that there are simple attacks that allow a
misbehaving receiver to drive a standard TCP sender arbitrarily fast,
without losing end-to-end reliability. These attacks are widely
applicable because they stem from the sender behavior specified in RFC 2581
rather than implementation bugs. We then show that it is possible
to modify TCP to eliminate this undesirable behavior
entirely, without requiring assumptions of any kind about receiver
behavior. This is a strong result: with our solution a receiver can
only reduce the data transfer rate by misbehaving, thereby eliminating
the incentive to do so.