Question

I have an Ethernet based device that I need to do some network connection testing on.

Ideally I would like to both reduce the bandwidth (down to 10s of Kb/s) and if possible introduce lag (a second or so) into the network connection between the device under test and a server.

Any ideas as to how I would do this? I was thinking of perhaps a router with QoS as a starting point, but not sure if I can get one that would introduce lag as well as reduce bandwidth.

Was it helpful?

Solution

You should use a traffic shaper (either directly on the machine, or up-stream). Modern shaping services like dummynet for FreeBSD, or on Linux tc come directly with common OSes, and they should be able to accommodate your needs:

The dummynet system facility permits the control of traffic going through the various network interfaces, by applying bandwidth and queue size lim- itations, implementing different scheduling and queue management poli- cies, and emulating delays and losses.

The big advantage over e.g. the hub is that you can exactly configure different scenarios.

OTHER TIPS

It seems like the easiest way to reduce bandwidth would be to plug an older 10Base-T hub in between the server and the test device.

For introducing lag wiser heads than mine will need to consult.

QOS isn't good enough since it probably won't affect the lag and the bandwidth won't be very controllable as well.

Ideally, you need some kind of SW component inserted in you network stack that will intercept the packets and add the things you require - calculate the throughput on the fly and reject packets if exceeds the needed bandwidth and stall the packets according to the lag you desire. I don't know if such SW is available out there but it worth to search the inet.

It's possible to achieve similar effect with HW device as well that would sit on your physical line. I don't know if such equipment exists on the market.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top