On Mon, Jan 17 2011 at 35:23, Jason Healy wrote: > I had a few hours to play with a hardware traffic generator today, I wanted to > try beating up my OpenBSD setup to see what kind of throughput I could get. > > For the curious, I was able to pulverize it with 64 byte packets and it topped > out at about 165kpps. Throughput was less than physical interface speed > (about 800Mbps). For fun, I cranked the payload size up to 1500 bytes, but I > couldn't get the box to exceed 1Gbps, even though I had several gigabit > interfaces trunked together. At first, it was a switch problem (the switch > was sending all the traffic over a single link). However, after I found out > my switches LACP hash algorithm I was able to spread the traffic out by > randomizing the port numbers. I also played with a traffic generator recently. Here are sone numbers with the tests we've done :
Hardware : Dell R310, 2 Gb of RAM, CPU was a quad core, I didn't wrote the exact model yet. I could bring it in a few days. NIC : Intel gigabit Quad port ET2 (Chipset 82576) Software : 4.8-stable, no patch, no sysctl customisation except ip.forwarding=1 Firewall Ruleset : echo "pass all" > /etc/pf.conf && pfctl -f /etc/pf.conf Max pps =~ 330-340K Test IMIX =~ 1,1 Gb/s We were able to fully route 2Gb/s of traffic with 1024 packet length (1 Gb/s in each direction) without loosing a single packet. Theorically, the box should be able to route 4Gb/s (33*10^4*1518*8) Largely enougth for our use :) > I then confirmed that 4Gbps of traffic was leaving the switch to the OpenBSD > box, but only 1Gbps was coming back. Therefore, I'm guessing that the > load-balancing algorithm for OpenBSD does not behave the same way as my > Juniper switching gear. Does anybody know the LACP hash that the trunk > interface in OpenBSD uses to load-balance the outgoing traffic? I didn't have > time to do more than a cursory test with different port numbers and IP > addresses, so I'm not sure what I might be doing wrong, or if its even > possible to use layer 3/4 info in OpenBSD to hash the traffic. Since I'm > using the box as a router, layer 2 hashing doesn't help me very much since the > source MAC is always the same. > > I took a peek at the source, but I'm definitely not a C hacker, so nothing > jumped out at me for computing the hash... > > Thanks, > > Jason Claer