I'd like to perform network tests on my game in the most realistic way possible. This means having to deal with players who are on crappy wireless connections, who might even be playing on cellphones.
Short of having a friend living in a far away country with a copy of the game and a cellphone testing platform, what's a good way to stress-test your networking gudgeons?
Are there virtual Ethernet adaptors that can be configured to drop a percentage of packets, corrupt them, delay them, send them out-of-order?
Maybe some sort of firmware that can be loaded onto an external router which would sit in between two testing machines?
And, is there any sort of standard for robustness that I should aim for, like supporting 300ms ping delays, 30% packet loss before things go wonky, dealing with timeouts, etc?