Subject: Re: Slow UDP traffic
To: Perry E. Metzger <firstname.lastname@example.org>
From: Steven M. Bellovin <email@example.com>
Date: 06/05/2004 08:49:42
In message <firstname.lastname@example.org>, "Perry E. Metzger" writes:
>Schamil Wackenhut <email@example.com> writes:
>> I did some benchmarking in my private network today, and i saw that
>> the udp transferrate between my server(NetBSD 1.6.2/GENERIC/ipf
>> disabled) and my firewall(OpenBSD 3.5/GENERIC/pf disabled) (both
>> have 100mbit ethernet link) is down to only ~25MBit/s. TCP transferrate
>> is ok (90MBit/s). What can be a reason for such slow udp traffic?
>I'd read TCP/IP Illustrated, volume 1, to learn the answer, but
>in general UDP tends to be pretty slow unless you implement all the
>nice things TCP does, at which point you have TCP.
ttcp doesn't do any acks for udp, so that's not it. But I've noticed
the same thing. I suspect it's an artifact of ttcp -- perhaps, when
the queue is full, it blocks and then doesn't wake up quite soon enough
to send more, since there's nothing buffered.
The real question is what Schamil is trying to test. The tcp test
shows that the link is working well. For actual application use, Perry
is right -- there are things you need to do that slow you down a lot.
tcp is really *very* efficient these days; claims of its inefficiency
are either mythology or based on *very* old implementations.
--Steve Bellovin, http://www.research.att.com/~smb