Markus-Go / bonesi

BoNeSi - the DDoS Botnet Simulator
Apache License 2.0
659 stars 198 forks source link

16 cores but packet generation is too slow #19

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Hello. How can I use all cores in Linux for optimizing packet generation?

CPU:2xIntel(R) Xeon(R) CPU E5620  @ 2.40GHz
PREMIUM NETWORK: 100 mb/s

129583 packets in 1.000517 seconds too slow...

Original issue reported on code.google.com by mzeyna...@gmail.com on 12 Dec 2012 at 9:40

GoogleCodeExporter commented 9 years ago
Hello,

Bonesi is only single threaded. If you want to send more packets in parallel, 
just start it multiple times.

Please note, that you need to send very small packets in order to not fill up 
your bandwidth.

Also note that performance does not only depend on your CPU but also on network 
hardware, motherboard I/O and so on.

For example, if I run bonesi on a single core of my PC (AMD Phenom II X6 1100T) 
I can get up to 150,000 pps (ICMP, 1 byte). If I run it on 2 cores I can 
transmit up to 300,000 pps and then there will be no improvement using 3,4,5 or 
all 6 cores.

If you want more packets you should consider using more physical hardware, this 
scales usually better, even if you are using old machines (even 5-10 year old 
machines can generate up to 100,000 pps).

Original comment by Markus-Go on 15 Dec 2012 at 10:52

GoogleCodeExporter commented 9 years ago
Thank you very much, sir! Also I learned how to use all cores in Linux with 
"taskset" command. During 1 sec it generates 676.000 pps. 

Original comment by mzeyna...@gmail.com on 15 Dec 2012 at 1:45