Hi, Having won my small fight with the iproute2 userspace tools, I've managed to set up a script that does roughly what I want in the way of traffic shaping. However, what I have at the moment is something of a sledgehammer solution to a nut problem, and I'm wondering if anyone has any suggestions as to how to streamline things. What I would like to be able to do, for benchmarking purposes, is to rate-limit the outgoing traffic on each TCP connection. What I'm doing now is using one filter and one (TBF) qdisc for each port, with an associated tree of CBQ classes. Naturally, when you want to do something like limit all your ephemeral ports, forking tc this many times takes quite a while (not to mention going all the way round my pid numbers :)). It also feels clunky. All the qdiscs have exactly the same parameters, but I need loads of separate ones because, as I understand it, qdiscs limit the total flow of traffic passing through them, whereas I want to limit each individual connection (and just multiplying up the rate isn't good enough, since I lose bounding and isolation that way). If I could have a connection-oriented qdisc (or class), then I could just have a single filter matching the relevant port range pointing to a single qdisc, and my kernel would probably be a lot happier about it all. Does such a thing exist? If so, could someone point me at the relevant bit of documentation or source code and I'll go off and do some reading? Thanks, -- Colin Watson <cjw44@flatline.org.uk> - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org