How to generate traffic for lab scenarios

  • I'd like to start exploring QoS, and lower level optimizations for things like broadcasts/multicasts within my home lab. I've looked around for ways to generate traffic to and from a box, but haven't found anything to really max out what a given port can handle to really see the effects of QoS etc.

    I'd love to be able to watch in real time via PRTG or some other monitoring tool - a maxed out line or a busy line(s) before implementing QoS and then be able to see the change in real time.

    What tools are availableto assist with these tasks?

    This isn't a great question because it is too open ended and there are far too many possibilities (you could simply FTP a very large file if you wanted). This leads to no real answers but more of a list of products that isn't what SE is looking for on their sites. The question would have to be more specific to limit the options available.

  • Mierdin

    Mierdin Correct answer

    8 years ago

    You can use iperf2 or iperf3 to help generate some traffic. There are quite a few options included that will allow you to accomplish some nice traffic classification.

    You might also check out scapy - specifically a packet former utility. Allows you to define values on each field to get really granular with how traffic is being formed and sent.

    In my lab, I have two virtual machines at opposite ends of a physical network. I use both tools I mentioned to send traffic between the virtual machines, but that traffic goes through my lab topology of Cisco routers/switches/firewalls. This way I can have a reliable flow of traffic that I define ahead of time per the lab scenario.

    Throw WANEM into the mix to add all sorts of jitter to see how your QoS policies are holding up: http://wanem.sourceforge.net/

    FYI, `scapy` is great for low-throughput test scenarios... however, its packet slinging / reading code is terribly slow and AFAIK, you get no warning that packets were dropped inside `scapy`. `iperf` has decent speeds, but if you want truly high throughput (for free), you need to use a linux kernel module such as `pktgen`

    This is great information guys - thanks so much for your feedback, it will obviously take time to put all of these into practice, but I think I've got a really great list to work from!

    with nutTCP you can alson test on QoS

License under CC-BY-SA with attribution


Content dated before 7/24/2021 11:53 AM

Tags used