Just completed the low-cost packet generator for Comspec Engineering LLC. The requirement was for a mini form factor device that would generate packets at different sites on a wide area network and test both throughput and goodput.
I used a device called a Cubox that was sourced from Israel. Installed Ubuntu 12.4 (would have preferred Redhat 6.4 but doesn't support the hardware). Leveraged iperf for the packet generator. Initially I had added a GUI written in PHP for ease of configuration and management but decided to use a CONF file on a microSD card instead. Unintended consequence of the SD card was it's red LED light that flickers when you write to it. I intend to use that as a "visual cue" for the technicians to know when something has occurred. Think Morse Code. For instance, write several small files to the SD card with 1 second spacing between them to signal a "dot-pause-dot-pause-dot-pause" which could mean the client does not see the server (no layer 1/2/3 connectivity). Or use a large file write for a looooooong red light to signal the fact that connectivity was established and the data was sent and received (uni- or bi-directionally) and that stats were written to the SD card. User would pull SD card and retrieve stats from it for review.
Future additions may include ostinato to be able to custom craft packets with TOS/DiffServ, COS (802.1p), VLAN (802.1q) among other things. Also considering adding TCPreplay with PCAPs of voice (G.711 and G.729) and video with several threads activating to simulate real-world triple-play traffic generation on the wire.
