Re: [p2pi] One more proposed definition of fairness...
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [p2pi] One more proposed definition of fairness...
On Jun 8, 2008, at 10:39 AM, Joe Touch wrote:
> Nicholas Weaver wrote:
>> (Buried in a previous mail, but I'd like comments on this separately)
>> How does the following sound as one possible ideal goal for user-
>> fairness:
>> "Mechanisms to enable the network to enforce traffic such that, in
>> the presence of congestion, a user's congestion control response
>> becomes equivalent to aggregating all traffic from that user into
>> a single TCP stream."
>
> See the Congestion Manager or RFC2140 ;-)
>
> This is easy to do at the end system, but, AFAICT, impossible to
> accomplish anywhere else (users will just grab multiple IP
> addresses, e.g.) - or worse, involves violating TCP (or,
> equivalently, won't work on encrypted/authenticated streams).
I'm a security person. I have to assume the end systems don't behave
right. But I actually don't think it is impossible to enforce in the
network for the local users' ISP.
EG, the ISP can at a single bidirectional point in the network
(admittedly keeping lots of state, but...) for a large group of users
infer the congestion on each TCP flow, and correlate across multiple
flows on multiple users to see
a) There is common congestion affecting a large group of flows
b) What the available bottleneck bandwidth for the common point of
congestion
and then
c) ECN mark/drop packets from the user's flows at the common point of
congestion, so that when a user has multiple TCP flows they experience
the same throughput they would if they just had one TCP flow.
Yes, this is a LOT of engineering work to get right [1], but I believe
it is doable, and could accomplish the stated definition of fairness
(or something very close to it).
Furthermore, you can resist the attacks you mentioned. Because the
ISP can prevent the user from minting new IP addresses (as they
control the point of attachment), this prevents address forging.
And because the ISP is forcing the flows to drop packets remote of the
point of congestion to maintain the target flow, if the end host is
doing ANY congestion control at all, it will be forced to conform to
the allocated fair share. [2]
It was also pointed out to me that http://www.anagran.com/ actually
claims to be targeting this ability, or something similar, managing
congestion that is remote from the point of management, although their
web site literature is pretty shy on information on how they are doing
it.
[1] note, however, it doesn't have to be perfect: sampling and other
approximations can allow you to bound state at the cost of complete
accuracy. And it only has to work at 1 Gbps to be deployable in many
networks today (well within the range of a commodity PC) and there is
enough available parallelism that you could probably implement at 10
Gbps on a Tilera-based system or other highly parallel programmable
system.
[2] And even completely unresponsive flows can be shaped as long as
the actual bottleneck is downstream of the point of management and, if
upstream, this could easily be considered an attack on the network and
an ACL block would probably be appropriate.
_______________________________________________
p2pi mailing list
p2pi at ietf.org
https://www.ietf.org/mailman/listinfo/p2pi
Note: Messages sent to this list are the opinions of the senders and do not imply endorsement by the IETF.