I've been lurking for a while, trying to figure out this traffic control stuff. We have 3 ADSL modems upstream, with 2, 2, and 1 megabit total bandwidth, 1/4 of it up, 3/4 down. We also have about 200 workstations downstream, connected through wifi. We are presently using tc to create about 200 buckets with HTB and SFQ. It seems like this is too many buckets, since usually only about 80 of the 200 are active, meaning the bucket size for each workstation is small. We have trouble with P2P uploads, but the P2P solutions I have seen, if I understand them, get rather unwieldy if you have to keep a couple hundred clients separate rather than grouping them by protocol, etc. We absolutely need to be able to keep RRD stats on bandwidth usage per client, but we also need to switch from IP to MAC-based access. It would really help if I could get a few comments on my feeble attempts to develop a strategy here: Does it sound feasible to keep a database of MAC addresses and client numbers and flush/regenerate tc buckets about every other minute? First, iptables would check authorized MAC addresses and mark packets with a client number. This client number would be the basis for throttling uploads. I would run a Perl script that would fetch the ARP table to see what MAC addresses are on, and pair them with a client number and an IP number. In some cases there would be multiple IPs with the same MAC, or multiple IPs and MACs that are the same client, depending on the router/bridge in use. The Perl script would run maybe once every other minute and flush/recreate HTB/SFQ buckets for all current active clients, plus one "misc" bucket, that would get freshly logged on clients, and the occasional client who swapped their wifi card without telling us. Does this strategy seem ... reasonable? Other solutions? Thanks lots. -- Jan Wilson, SysAdmin _/*]; jan@xxxxxxxxxxx Corozal Junior College | |:' corozal.com corozal.bz Corozal Town, Belize | /' chetumal.com & linux.bz Reg. Linux user #151611 |_/ Network, PHP, Perl, HTML _______________________________________________ LARTC mailing list / LARTC@xxxxxxxxxxxxxxx http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/