How are you benchmarking it? Each TCP connection only uses one member of a lagg port. So if you want to see > 1 Gbps, you'll need to benchmark with multiple TCP connections. You may also need multiple systems; I don't know the full details of LACP.
On Thu, Jul 11, 2013 at 11:32 AM, isp <ml...@ukr.net> wrote: > > > > Hi! I have a problem with my FreeBSD router, I can't get more than 1 Gbps > throught it, but I have 2 Gbps LAGG on it. There are only 27 IPFW rules > (NAT+Shaping). IPoE only. > lagg0 (VLAN's + shaping) - two 'igb' adapters > lagg1 (NAT, tso if off) - two 'em' adapters > > I tried to switch off dummynet, but it doesn't helps. > > # uname -a > [code]FreeBSD router 9.1-RELEASE-p3 FreeBSD 9.1-RELEASE-p3 #0: Tue Apr 30 > 20:02:00 EEST 2013 root@south:/usr/obj/usr/src/sys/ROUTER amd64 > > # top -aSPHI > last pid: 91712; load averages: 2.18, 2.06, > 1.97 > up 20+22:28:36 17:40:22 > 120 processes: 7 running, 87 sleeping, 26 waiting > CPU 0: 0.0% user, 0.0% nice, 1.6% system, 38.6% interrupt, 59.8% idle > CPU 1: 0.0% user, 0.0% nice, 7.1% system, 37.0% interrupt, 55.9% idle > CPU 2: 0.0% user, 0.0% nice, 3.9% system, 38.6% interrupt, 57.5% idle > CPU 3: 0.0% user, 0.0% nice, 15.7% system, 26.8% interrupt, 57.5% idle > Mem: 59M Active, 1102M Inact, 942M Wired, 800M Buf, 5529M Free > Swap: 16G Total, 16G Free > > PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU COMMAND > 12 root -72 - 0K 448K RUN 1 153:39 72.22% [intr{swi1: > netisr 0}] > 11 root 155 ki31 0K 64K RUN 1 494.2H 65.19% [idle{idle: > cpu1}] > 11 root 155 ki31 0K 64K CPU2 2 494.3H 64.65% [idle{idle: > cpu2}] > 11 root 155 ki31 0K 64K RUN 0 493.3H 63.38% [idle{idle: > cpu0}] > 11 root 155 ki31 0K 64K CPU3 3 496.4H 62.55% [idle{idle: > cpu3}] > 12 root -92 - 0K 448K WAIT 2 58:49 9.38% [intr{irq266: > igb0:que}] > 12 root -92 - 0K 448K WAIT 2 59:32 9.03% [intr{irq271: > igb1:que}] > 12 root -92 - 0K 448K CPU1 1 59:09 8.94% [intr{irq265: > igb0:que}] > 12 root -92 - 0K 448K WAIT 3 57:52 8.01% [intr{irq272: > igb1:que}] > 12 root -92 - 0K 448K WAIT 1 59:32 7.96% [intr{irq270: > igb1:que}] > 12 root -92 - 0K 448K WAIT 3 55:47 7.81% [intr{irq267: > igb0:que}] > 12 root -92 - 0K 448K WAIT 0 55:24 7.23% [intr{irq264: > igb0:que}] > 12 root -92 - 0K 448K WAIT 0 56:57 6.69% [intr{irq269: > igb1:que}] > 12 root -92 - 0K 448K WAIT 3 203:34 4.74% [intr{irq275: > em1:rx 0}] > 0 root -92 0 0K 336K - 2 427:03 2.64% > [kernel{dummynet}] > 0 root -92 0 0K 336K - 3 206:57 2.54% [kernel{em0 > que}] > 86278 root 20 0 33348K 8588K select 0 8:35 0.54% > /usr/local/sbin/snmpd -p /var/run/net_snmpd.pid -r > 12 root -92 - 0K 448K WAIT 2 7:56 0.20% [intr{irq276: > em1:tx 0}] > > # cat /etc/sysctl.conf > dev.igb.0.rx_processing_limit=4096 > dev.igb.1.rx_processing_limit=4096 > dev.em.0.rx_int_delay=200 > dev.em.0.tx_int_delay=200 > dev.em.0.rx_abs_int_delay=4000 > dev.em.0.tx_abs_int_delay=4000 > dev.em.0.rx_processing_limit=4096 > dev.em.1.rx_int_delay=200 > dev.em.1.tx_int_delay=200 > dev.em.1.rx_abs_int_delay=4000 > dev.em.1.tx_abs_int_delay=4000 > dev.em.1.rx_processing_limit=4096 > net.inet.ip.forwarding=1 > net.inet.ip.fastforwarding=1 > net.inet.tcp.blackhole=2 > net.inet.udp.blackhole=0 > net.inet.ip.redirect=0 > net.inet.tcp.delayed_ack=0 > net.inet.tcp.recvbuf_max=4194304 > net.inet.tcp.sendbuf_max=4194304 > net.inet.tcp.sack.enable=0 > net.inet.tcp.drop_synfin=1 > net.inet.tcp.nolocaltimewait=1 > net.inet.ip.ttl=255 > net.inet.ip.sourceroute=0 > net.inet.ip.accept_sourceroute=0 > net.inet.udp.recvspace=64080 > net.inet.ip.rtmaxcache=1024 > net.inet.ip.intr_queue_maxlen=5120 > kern.ipc.nmbclusters=824288 > kern.ipc.maxsockbuf=83886080 > kern.ipc.maxsockets=102400 > net.inet.tcp.recvspace=95536 > net.inet.tcp.sendspace=95536 > net.local.stream.recvspace=32768 > net.local.stream.sendspace=32768 > kern.ipc.somaxconn=32768 > net.inet.tcp.maxtcptw=65535 > net.inet.ip.fw.one_pass=1 > net.inet.ip.fw.dyn_max=65535 > net.inet.ip.fw.dyn_buckets=2048 > net.inet.ip.fw.dyn_syn_lifetime=10 > net.inet.ip.fw.dyn_ack_lifetime=120 > net.inet.ip.fw.verbose=0 > net.inet.ip.dummynet.io_fast=1 > net.inet.ip.dummynet.hash_size=65536 > net.inet.ip.dummynet.pipe_slot_limit=1000 > net.inet.icmp.icmplim=3000 > net.inet.icmp.drop_redirect=1 > net.inet.icmp.log_redirect=0 > net.inet.icmp.bmcastecho=0 > net.inet.icmp.maskrepl=0 > kern.random.sys.harvest.ethernet=0 > kern.random.sys.harvest.point_to_point=0 > kern.random.sys.harvest.interrupt=0 > net.inet.raw.maxdgram=16384 > net.inet.raw.recvspace=16384 > net.route.netisr_maxqlen=8192 > net.inet.ip.intr_queue_maxlen=10240 > net.isr.dispatch=deferred > > # cat /boot/loader.conf > loader_logo="beastie" > autoboot_delay=3 > geom_mirror_load="YES" > hw.igb.rxd=4096 > hw.igb.txd=4096 > hw.igb.rx_process_limit=4096 > hw.igb.max_interrupt_rate=32000 > hw.igb.num_queues=4 > hw.igb.fc_setting=0 > hw.igb.lro=0 > hw.em.rxd=4096 > hw.em.txd=4096 > hw.em.rx_process_limit=4096 > hw.em.fc_setting=0 > dev.em.0.rx_int_delay=200 > dev.em.0.tx_int_delay=200 > dev.em.0.rx_abs_int_delay=4000 > dev.em.0.tx_abs_int_delay=4000 > dev.em.1.rx_int_delay=200 > dev.em.1.tx_int_delay=200 > dev.em.1.rx_abs_int_delay=4000 > dev.em.1.tx_abs_int_delay=4000 > net.isr.maxthreads=4 > net.isr.bindthreads=0 > net.inet.tcp.tcbhashsize=32000 > net.link.ifqmaxlen=10240 > net.isr.defaultqlimit=8192 > > # vmstat -i > interrupt total rate > irq20: ehci1 4171628 2 > irq21: atapci0 1561194 0 > irq22: ehci0+ 2713150 1 > cpu0:timer 14622957598 8082 > irq264: igb0:que 0 515616328 284 > irq265: igb0:que 1 738456087 408 > irq266: igb0:que 2 711371660 393 > irq267: igb0:que 3 462738813 255 > irq268: igb0:link 3 0 > irq269: igb1:que 0 656044816 362 > irq270: igb1:que 1 546931002 302 > irq271: igb1:que 2 617173223 341 > irq272: igb1:que 3 644295672 356 > irq273: igb1:link 4 0 > irq274: em0 557400132 308 > irq275: em1:rx 0 424252744 234 > irq276: em1:tx 0 708469817 391 > irq277: em1:link 2 0 > cpu3:timer 678408141 374 > cpu1:timer 674674076 372 > cpu2:timer 621495291 343 > Total 23188731381 12816 > > # netstat -w1 > input (Total) output > packets errs idrops bytes packets errs bytes colls > 442k 0 0 304M 457k 0 393M 0 > 449k 0 0 308M 463k 0 395M 0 > 445k 0 0 304M 461k 0 393M 0 > 439k 0 0 303M 456k 0 393M 0 > 434k 0 0 297M 450k 0 387M 0 > 440k 0 0 301M 456k 0 392M 0 > 438k 0 0 300M 455k 0 391M 0 > > # ifconfig lagg0 (internal, 500 VLAN's) > lagg0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu > 1500 > options=401bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,VLAN_HWTSO> > ether a0:36:9f:16:d0:9c > media: Ethernet autoselect > status: active > laggproto lacp lagghash l2,l3,l4 > laggport: igb1 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING> > laggport: igb0 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING> > > # ifconfig lagg1 - (external, NAT) > lagg1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu > 1500 > options=4209b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC,VLAN_HWTSO> > ether 00:1e:67:59:ea:89 > inet ХХХ.ХХХ.ХХХ.14 netmask 0xffffffe0 broadcast > ХХХ.ХХХ.ХХХ.31 > inet ХХХ.ХХХ.ХХХ.70 netmask 0xffffffff broadcast > ХХХ.ХХХ.ХХХ.70 > inet ХХХ.ХХХ.ХХХ.71 netmask 0xffffffff broadcast > ХХХ.ХХХ.ХХХ.71 > inet ХХХ.ХХХ.ХХХ.72 netmask 0xffffffff broadcast > ХХХ.ХХХ.ХХХ.72 > inet ХХХ.ХХХ.ХХХ.73 netmask 0xffffffff broadcast > ХХХ.ХХХ.ХХХ.73 > inet ХХХ.ХХХ.ХХХ.74 netmask 0xffffffff broadcast > ХХХ.ХХХ.ХХХ.74 > inet ХХХ.ХХХ.ХХХ.75 netmask 0xffffffff broadcast > ХХХ.ХХХ.ХХХ.75 > inet ХХХ.ХХХ.ХХХ.76 netmask 0xffffffff broadcast > ХХХ.ХХХ.ХХХ.76 > inet ХХХ.ХХХ.ХХХ.77 netmask 0xffffffff broadcast > ХХХ.ХХХ.ХХХ.77 > inet ХХХ.ХХХ.ХХХ.78 netmask 0xffffffff broadcast > ХХХ.ХХХ.ХХХ.78 > inet ХХХ.ХХХ.ХХХ.79 netmask 0xffffffff broadcast > ХХХ.ХХХ.ХХХ.79 > inet ХХХ.ХХХ.ХХХ.33 netmask 0xfffffff0 broadcast > ХХХ.ХХХ.ХХХ.47 > media: Ethernet autoselect > status: active > laggproto lacp lagghash l2,l3,l4 > laggport: em1 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING> > laggport: em0 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING> > > # netstat -w1 -I em0 > input (em0) output > packets errs idrops bytes packets errs bytes colls > 101k 0 0 111M 36k 0 13M 0 > 101k 0 0 112M 36k 0 13M 0 > 100k 0 0 112M 37k 0 13M 0 > > # netstat -w1 -I em1 > [code] input (em1) output > packets errs idrops bytes packets errs bytes colls > 100k 0 0 111M 37k 0 9.1M 0 > 102k 0 0 113M 39k 0 10M 0 > 91k 0 0 101M 38k 0 9.7M 0 > > # netstat -w1 -I igb0 > input (igb0) output > packets errs idrops bytes packets errs bytes colls > 39k 0 0 9.1M 51k 0 57M 0 > 38k 0 0 9.1M 49k 0 54M 0 > 39k 0 0 9.4M 51k 0 56M 0 > > # netstat -w1 -I igb1 > input (igb1) output > packets errs idrops bytes packets errs bytes colls > 36k 0 0 14M 48k 0 56M 0 > 35k 0 0 14M 50k 0 59M 0 > 34k 0 0 13M 48k 0 57M 0 > > # netstat -w1 -I lagg0 > input (lagg0) output > packets errs idrops bytes packets errs bytes colls > 75k 0 0 23M 98k 0 113M 0 > 73k 0 0 21M 98k 0 113M 0 > 73k 0 0 23M 98k 0 112M 0 > > # netstat -w1 -I lagg1 > input (lagg1) output > packets errs idrops bytes packets errs bytes colls > 100k 0 0 112M 74k 0 24M 0 > 101k 0 0 113M 73k 0 24M 0 > 102k 0 0 114M 74k 0 24M 0 > >> > _______________________________________________ > freebsd-net@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-net > To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org" _______________________________________________ freebsd-net@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"