Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 1 Jul 2010 16:54:47 -0700
From:      Pyun YongHyeon <pyunyh@gmail.com>
To:        Garrett Cooper <yanefbsd@gmail.com>
Cc:        net@freebsd.org
Subject:   Re: Poor performance with natd/ipfw and TSO enabled on bce(4) card and 8.1-PRERELEASE
Message-ID:  <20100701235447.GJ7090@michelle.cdnetworks.com>
In-Reply-To: <AANLkTinuucNtKqWscZ9IDjws-NiNcHpKrMElLgd7Sb8r@mail.gmail.com>
References:  <AANLkTinuucNtKqWscZ9IDjws-NiNcHpKrMElLgd7Sb8r@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Jun 30, 2010 at 07:00:53PM -0700, Garrett Cooper wrote:
> Hi,
>     Just an observation I made while transferring a file:
> 
> # time scp floppy.img somehost:
> Password:
> floppy.img                                    100% 1440KB  13.7KB/s   01:45
> 
> real	1m59.400s
> user	0m0.031s
> sys	0m0.028s
> # sysctl net.inet.tcp.tso=0
> net.inet.tcp.tso: 1 -> 0
> # time scp floppy.img somehost:
> floppy.img                                    100% 1440KB   1.4MB/s   00:00
> 
> real	0m0.712s
> user	0m0.018s
> sys	0m0.018s
> 
>     Going ISDN speeds transferring a 1.44MB file is sad when you have
> a gigabit uplink :(... natd seems to be doing a LOT of spinning when
> TSO is enabled (it's going up to 73% CPU on a dual-proc quad-core
> machine).

I would use pf(4) if I have to handle lots of NAT rules.

>     Here are some other details:
> 
> # ipfw list
> 00050 divert 8668 ip4 from any to any via bce1
> 00100 allow ip from any to any via lo0
> 00200 deny ip from any to 127.0.0.0/8
> 00300 deny ip from 127.0.0.0/8 to any
> 00400 deny ip from any to ::1
> 00500 deny ip from ::1 to any
> 00600 allow ipv6-icmp from :: to ff02::/16
> 00700 allow ipv6-icmp from fe80::/10 to fe80::/10
> 00800 allow ipv6-icmp from fe80::/10 to ff02::/16
> 00900 allow ipv6-icmp from any to any ip6 icmp6types 1
> 01000 allow ipv6-icmp from any to any ip6 icmp6types 2,135,136
> 65000 allow ip from any to any
> 65535 deny ip from any to any
> # ls /etc/natd*
> ls: /etc/natd*: No such file or directory
> # uname -a
> FreeBSD tameshi.cisco.com 8.1-PRERELEASE FreeBSD 8.1-PRERELEASE #0
> r209169: Mon Jun 14 12:41:49 PDT 2010
> root@:/usr/obj/data/scratch/src/stable/8/sys/TAMESHI_STABLE  amd64
> # pciconf -lv | grep -A 4 bce
> bce1@pci0:7:0:0:	class=0x020000 card=0x01b21028 chip=0x164c14e4
> rev=0x12 hdr=0x00
>     vendor     = 'Broadcom Corporation'
>     device     = 'Broadcom NetXtreme II Gigabit Ethernet Adapter (BCM5708)'
>     class      = network
>     subclass   = ethernet
> --
> bce0@pci0:3:0:0:	class=0x020000 card=0x01b21028 chip=0x164c14e4
> rev=0x12 hdr=0x00
>     vendor     = 'Broadcom Corporation'
>     device     = 'Broadcom NetXtreme II Gigabit Ethernet Adapter (BCM5708)'
>     class      = network
>     subclass   = ethernet
> 
>     Let me know what other info is required.

Can you reproduce this issue on other TSO capable drivers?
I'm not aware of any TSO issues on bce(4).



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100701235447.GJ7090>