Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 4 Sep 2009 11:02:08 -0600
From:      Manish Vachharajani <manishv@lineratesystems.com>
To:        Willem Jan Withagen <wjw@digiware.nl>
Cc:        net@freebsd.org
Subject:   Re: UDP output performance
Message-ID:  <5bc218350909041002x670460c8nf202a714182d1bf6@mail.gmail.com>
In-Reply-To: <4AA14018.3010102@digiware.nl>
References:  <4AA14018.3010102@digiware.nl>

next in thread | previous in thread | raw e-mail | index | archive | help
Hmm, what version of FreeBSD are you using?  I don't know the solution
but I wonder if it is related to a similar problem we are having with
TCP connection scaling, both under 7.2 and 8.0 over a 10 Gb link.
We've been trying to track it down, and if you see it for UDP as well
that may give some clues.

If you do a netstat -idh what is the output?  Does the recieving
interface show any Ierrs or drops?  If so, you should be able to do a
sysctl dev.em.<interface number>.stats=3D1 and then see some output via
dmesg.  Does this show any missed packets?

Oh, also, what kind of machine are you running on?

Manish

On Fri, Sep 4, 2009 at 10:28 AM, Willem Jan Withagen<wjw@digiware.nl> wrote=
:
> First of: I've been googleing for about a day, but I'll take any suggesti=
ons
> for more info.
>
> What I'm trying to do is get as much 1440 byte UDP packets out of an em
> device. And when tat works, get as much out of the 7 em devices that this
> board has. :)
>
> Currently I run into trouble at 250*174 =3D 43500 packets/sec.
>
> How is the setup:
> =A0 =A0 =A0 =A0em0 gets 1 stream of 174 p/s which is ~ 2Mbit
> this gets repeated to 250 streams
> =A0 =A0 =A0 =A0currently to 2 other servers, 125 streams each.
> =A0 =A0 =A0 =A0each on their own 1 Gbit port
>
> This works uptil 123 streams each, going high gives packet loss.
> So this is at about 500Mbit/sec on a 1Gbit port
>
> And why do I know that the packetloss is not in the network?
> Well there are no errors on
> =A0 =A0 =A0 =A0the output interface
> =A0 =A0 =A0 =A0the ports on the switch
> =A0 =A0 =A0 =A0the input ports on the receivers
> =A0 =A0 =A0 =A0the mib of the switch does not show any signs of dropped p=
ackets, or
> likes.
>
> Also I can change the order of the queing in my repeater, and then the
> packetloss moves to the host which is last the outputlist.
> I tried raising the socketbuffer " sysctl -w net.inet.udp.maxdgram=3D1843=
20"
> in a few steps. But that did not bring anything.
>
> So my guess is that I'm dropping packets somewhere from the output socket=
 to
> the wire.
>
> BTW al stats in systat -vm are close to 0%.
>
> What tunables are there to turn?
>
> And if not tuneable, what parts of the code would be target for closer
> inspection.
>
> Any help is more than welcome
>
> --WjW
>
>
>
> _______________________________________________
> freebsd-net@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"
>



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