RE: [squid-users] Squid delay pools using DS/Precedence field to limit BW

From: David Wilson <>
Date: Fri, 23 Nov 2001 08:29:35 +0200

Serious !! ??? Aaah yea !!!
Cool, that's fantastic !! Lettme try it out, I'll let you know how it goes.

Thanks for the guidance !

-----Original Message-----
From: Adrian Chadd []
Sent: 23 November 2001 03:08
To: David Wilson
Subject: Re: [squid-users] Squid delay pools using DS/Precedence field
to limit BW

On Thu, Nov 22, 2001, David Wilson wrote:
> Hi Pedro & all
> Well done on your Squid patches! They look great.

I believe ths upcoming squid-2.5 release has support for ACLs
matching/manipulating the TOS bits in the IP header.

Do you want to take a look at the latest squid-2.5 snapshot and
give it a go?


> I've desperately been looking for some answers for about 2 years now
> regarding setting up Squid ACL's to match on IP DS/Precedence bit fields
> that I can apply them to Squid's delay pools.
> Please have a look at my posts below if you have time.
> If you could help in anyway possible I'd really appreciate it.
> Another possibility of course is that if I could get Squid not to reset
> original DS/precedence bit field I could put a Packeteer between our
> and our Squid proxy. At the moment Squid resets the original value so it
> shows up as marked with a 0, "no value" so that doesn't work to well, if
> anyone can think of a patch that well tell Squid to keep the original
> DS/Precedence bit value please let me know.
> Anyone that can help on squid-users is welcome to mail me back, I'd
> appreciate it.
> Many thanks.
> Here is my original posting:
> >Hi guys, howzit going ?
> >
> >We limit all our clients international bandwidth usage based on what
> package
> >they purchase from us. i.e. a client pays for a limited 32K of
> international
> >bandwidth but has unlimited Local (South African) bandwidth.
> >We limit the clients International bandwidth based on their subnet range
> >using a Packeteer Packet shaper.
> >
> >When we started selling these "Limit international bandwidth" packages we
> >had to ditch our transparent Squid proxy, because the proxy would
> >fetch everything on behalf of the client at what ever bandwidth was
> >available on our main pipe, and thus the client was not getting limited
> >whatever bandwidth was specified for that clients subnet range.
> >Putting our transparent proxy back would be a really great idea as long
> >we can limit the bandwidth which our "bandwidth limited" clients use.
> >I have seen that delay pools would be perfect for the task, the problem
> >that we would have to enter in every local IP range to discriminate
> >local and international websites.
> >At the moment our upstream bandwidth provider "colors" or marks the
> >TOS/Precedent bit field of all our incoming international traffic, which
> our
> >packeteer then picks up and utilizes to discriminate between
> >and local traffic.
> >
> >Is there any way to patch Squid or use some external utility along with
> >Squid to recognize TOS/IP precedence fields and make delay pool decisions
> on
> >it ?
> >If this is possible then our transparent proxy will then be implemented
> >again. ;-)
> >Thanks.
> Another posting:
> >Hi guys, howzit going ? ;-)
> >
> >A nice juicy question:
> >
> >We are an ISP and we allocate our leased line clients subnets of IP's.
> >At the moment we use a Packeteer traffic shaper to limit our each of
> clients
> >international bandwidth to 16K international & 64K Local.
> >The Packeteer is able to distinguish between local & international
> >because our bandwidth provider marks our incoming packets "precedence"
> >fields of all international traffic with a "2" and all local traffic with
> >"0".
> >
> >Obviously because of this we cannot run a transparent Squid cache because
> it
> >all allows our clients to request that our Cache fetches web content on
> >behalf of each client, thus their HTTP traffic is not limited to that set
> by
> >the Packeteer.
> >To use transparent caching we need to setup "delay pools" in Squid that
> >would limit each client to their allocated bandwidth, we also need Squid
> >distinguish between local & international traffic by looking at the
> >"precedence" fields in each incoming packet so that each client is
> >to their 16K international & 64K local bandwidth allowances.
> >
> >I have looked around and cannot find any info on how to do this, except
> >going for an integrated hardware cache/traffic shaper.
> >Surely there is away to do this... even if we get our router to split the
> >international & local traffic and apply "Cisco route maps, based on
> >precedence bit" to forward the HTTP traffic to 2 separate transparent
> caches
> >(1 Squid for international traffic & 1 Squid for local), then on each we
> >implement "delay pools" for each client ?
> >
> >Surely someone has done this before to enable Squid to limit bandwidth
> based
> >on precedence bit ?
> >Thanks, any guidance would be most appreciated.
> Regards
> David Wilson
> Technical Support Centre
> The S.A Internet
> 0860 100 869
Received on Thu Nov 22 2001 - 23:29:50 MST

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 17:04:27 MST