That's what I was thinking about too. Although I don't know if it
needs hacks. It may work as is.
> Choose some
> distribution function for bandwidth and latency for clients and randomly
> generate pipes that accommodate said parameters. Right now, of course,
> shaper only does bandwidth, since no one in RL wants to add latency, but
> it should be doable without too much pain. We can also make shaper do a
> more realistic simulation of congestion to generate stalls, etc.
If Alexey's 2.2 "tc" is anything like Alan's 2.0 "shaper" then I
thought it did the best and only decent way of shaping: dropping
packets on the floor so that TCP treats it like congestion. The other
part of the plan was to use Alexey's new routing stuff to simulate
lots of separate bandwidth-limited clients on one box. Allocate the
whole box a good chunk of the 10/8 network, and use
route-by-source-address to route each one via a separate tc qdisc.
Then the client side of the benchmark consists of forking a lot, each
child creates and binds a socket to its own 10.x.y.z address and the
magic of iproute2+tc will make each one into its own low bandwidth
connection. There's so much that's tweakable in the new routing engine
that I'd guess we could simulate plenty of slow clients fairly
realistically.
--Malcolm
-- Malcolm Beattie <mbeattie@sable.ox.ac.uk> Unix Systems Programmer Oxford University Computing Services- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/