I'm sick of flows

From: Tom Walsh <tom_at_cs.toronto.edu>
Date: Mon, 2 Oct 2006 21:54:11 -0400

The paper describes yet another flow-based algorithm for router-level
congestion control. The paper reads easily and clearly, and the
algorithm seems generally effective and much more realistic to
implement than previous approaches we looked at, but still seems
unlikely to ever be put into practice.

The algorithm depends upon identifying high-bandwidth flows using a
scheme based upon Random Early Detection, and then using a coin-
flipping approach to drop packets and reduce bandwidth from those
flows while allowing non-monitored low-bandwidth flows to proceed.
Once reductions have occurred on high-bandwidth flows, all data goes
into a FIFO queue.

The algorithm seems reasonable because it only requires monitoring of
a select group of flows and the paper uses the skewed distribution of
bandwidth in the internet to argue that this group is likely to be
quite small.

I believe there are a number of problems with flow-based algorithms.
In attempting to provide fairness among all flows passing through a
given router, it is my belief that the router takes on excessive
responsibility and authority. Attempts should be made to maximize
fairness across the internet rather than through each router, and
flow-based congestion control is not only excessive, but also limits
the ability of ISPs to intelligently manage their traffic: an ISP's
traffic prioritization will be completely overruled by a router
utilizing a flow-based congestion control mechanism.

Flow-based control would also do very little to cut down on
congestion due to what is currently one of the largest users of
internet bandwidth: bittorrent. The distributed nature of downloaded
traffic ensures that my movie downloads will be prioritized over
someone else's VoIP call, because my movie downloads will consist of
hundreds of flows.

A more reasonable alternative is to do flow control based upon the
router's links, trusting upstream and downstream routers to do their
own reasonable prioritization and congestion control, while ensuring
fairness among connecting routers. For instance, the router
connecting a hospital to the outside world might not want to treat
all streams fairly, but would rather drop packets from the
secretaries computers than from a networked piece of medical
equipment. The next router, belonging to the hospital's ISP, might
treat all of its connecting routers fairly, and might drop some
packets from the hospital, but the prioritization of medical
equipment traffic over WWW traffic would continue, even though the
ISP's router would be unaware of it. A router focusing on flows
would degrade the traffic of the medical equipment, while letting the
secretaries' web-browsing (probably a low traffic flow) go through.
Received on Mon Oct 02 2006 - 21:54:24 EDT

This archive was generated by hypermail 2.2.0 : Tue Oct 03 2006 - 06:32:18 EDT