m0n0wall with its ipfw/Dummynet traffic shaper can also be a nice "IP
Channel Emulator" that is very useful for testing over emulated WAN
channels. For example satellite channels have substantial delay, limited
bandwidth and also drop packets sometimes.
Would it be possible to add a parameter "DropProbability", and
eventually a second "QueueSize", in the Web interface "Firewall: Traffic
shaper: Edit pipe" that match the command
ipfw pipe NNN config bw B delay D queue Q plr P
where queue size in packets or Bytes, plr is the fraction of packets
randomly dropped (according to FreeBSD man page of Dummynet)?
With these minimal additions, m0n0wall implicitely becomes an IP channel
emulator with a very nice and easy-to-use Web interface.
Actually, this takes it back to the roots of Dummynet, which started off
in research as a channel emulator, to become a traffic shaper only later :-)