tcp/udp performance

Jack Vogel jfvogel at gmail.com
Wed Aug 30 18:45:03 UTC 2006


On 8/30/06, Danny Braniss <danny at cs.huji.ac.il> wrote:
>
> ever since 6.1 I've seen fluctuations in the performance of
> the em (Intel(R) PRO/1000 Gigabit Ethernet).
>
>             motherboard                 OBN (On Board NIC)
>             ----------------            ------------------
>         1- Intel SE7501WV2S             Intel 82546EB::2.1
>         2- Intel SE7320VP2D2            INTEL 82541
>         3- Sun Fire X4100 Server        Intel(R) PRO/1000
>
> test 1: writing to a NetApp filer via NFS/UDP
>            FreeBSD              Linux
>                       MegaBytes/sec
>         1- Average: 18.48       32.61
>         2- Average: 15.69       35.72
>         3- Average: 16.61       29.69
> (interstingly, doing NFS/TCP instead of NFS/UDP shows an increase in speed of
> around 60% on FreeBSD but none on Linux)
>
> test2: iperf using 1 as server:
>                 FreeBSD(*)      Linux
>                      Mbits/sec
>         1-      926             905 (this machine was busy)
>         2-      545             798
>         3-      910             912
>  *: did a 'sysctl net.inet.tcp.sendspace=65536'
>
>
> So, it seems to me something is not that good in the UDP department, but
> I can't find what to tweek.
>
> Any help?
>
>         danny

Have discussed this some internally, the best idea I've heard is that
UDP is not giving us the interrupt rate that TCP would, so we end up
not cleaning up as often, and thus descriptors might not be as quickly
available.. Its just speculation at this point.

Try this: the default is only to have 256 descriptors, try going for the MAX
which is 4K.

Cheers,

Jack


More information about the freebsd-stable mailing list