Tell me more ×
Network Engineering Stack Exchange is a question and answer site for network engineers. It's 100% free, no registration required.

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?

share|improve this question
2  
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. – YLearn May 28 at 18:27

6 Answers

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.

share|improve this answer
Throw WANEM into the mix to add all sorts of jitter to see how your QoS policies are holding up: wanem.sourceforge.net – mellowd May 28 at 18:41
2  
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 – Mike Pennington May 28 at 18:52
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! – user1353 May 28 at 19:02
with nutTCP you can alson test on QoS – Bulki May 28 at 19:52

I have also used netperf in some situations. It seems to perform better with UDP-tests.

share|improve this answer

Short and sweet: use tcpdump to record and make sure you have enough space to store the PCAP. Then, use tcpreplay (http://tcpreplay.synfin.net/) to play it back.

To get a PCAP with real traffic, you could ask your colleagues politely to allow you to record all of their traffic one day for just an hour (or until the pcap is X-GB in size). If you're at work, hopefully there won't be a huge objection to it since it should be work-related stuff and your company owns the network, etc. Offer to destroy all DHCP leases, spoof mac-addresses, and change hostnames if anybody is unsure about what you might see so you can't track it down later. Whatever.

If nothing else, get real traffic from your home network using tcpdump.

share|improve this answer

If you are looking to max out line rate traffic such as a GigE port, look at netsniff-ng toolkit or the Linux kernel module pktgen. I personally used pktgen on a mid range commodity server and was able to push GigE speeds with ease.

share|improve this answer

We use Ixia IxChariot for this use. It's a widely used commercial product and can definitely do what you're looking for.

share|improve this answer

Netperf and scapy are good options if you looking for a simple open-source solution. If you need more complete you would consider agilent N2x and Spirent.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.