Take a setup as follows:
Clients---->[eth0]Proxy/Firewall[eth1]---->Internet
The clients are using the proxy/firewall for various client like activities like browsing, email, ftp etc. Most of the traffic is "download" traffic, i.e. clients send very small requests and recieve very large replies.
I want to do the most common thing...configure download limits/fairness of use among the clients.
I understand that I can achieve this by traffic shaping the *outgoing* traffic on eth0, but that is a less than optimal solution. The problem is that the link to the Internet can still get choked, if too many clients start pulling too much data. Traffic shaping on eth0 would limit the bandwidth each client sees and TCPs congestion control mechanisms *might* indeed slow down the download requests from clients, but this does not seem like a elegant way to achieve the result.
I am wondering if there is any implementation [or planned project] for TCP based rate control, like that provided by commercial solutions like PacketShaper and Sitara.
Regards, -Varun