We need to simulate an unstable network connection to try to debug some connectivity issues in our server/client application and I was wondering if there are any programs out there that can simulate those conditions such as on a faint wireless network.
I'm not just referring to reducing bandwidth, but also reducing reliability, frequent on and off, short bursts of disconnectedness, etc.
I used a tool called netem that runs on linux. It allows you to increase packet loss at a given percentage, introduce delays within packets and handle packet re-ordering. Basically it's designed to emulate different networks.
All you need to get it up and running is a spare machine to install Linux on with a couple of Ethernet cards. Hook it up as a bridge, and run netem between them. Should be quite simple to do. I used it for my University project having no Linux experience, but I've probably still got all the setup instructions somewhere.
Ian's solution seems like a pretty good long term solution, but sounded a little involved for just some quick testing. (finding another machine, hooking it up, possibly setting up router stuff etc)
I ended up just using Net Limiter and randomly set the limit to something stupidly low manually (like 1 byte/sec) and that seems to be sufficient for our needs.
http://snad.ncsl.nist.gov/nistnet/
It's a little complicated to setup, but works very well.
来源:https://stackoverflow.com/questions/654915/are-there-any-programs-that-can-simulate-an-unstable-network-connection