|
From: | Sam Jansen |
Subject: | Re: [lwip-users] performance |
Date: | Thu, 29 Jul 2004 09:53:45 +1200 |
User-agent: | Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7) Gecko/20040616 |
Leon Woestenberg wrote:
(I think the major part of what determines the performance on such configurations is the device driver and processor plus bus, not so much lwIP itself. (Although our TCP stack may not scale to very low network round-trip latencies, not sure there).
I agree with the hardware/driver issue; to me this is the biggest problem. As a TCP stack, lwIP doesn't seem to have any problem with filling up the receivers window; it does slow start correctly and so on. This means that given sufficient buffer size and perfect network conditions (100MBit network) it will do a pretty good job of filling the pipe.
Where lwIP doesn't shine is when the network coniditions are not so perfect. It's my belief that the granularity of the timers hurts it here, having to wait a minimum 500ms for a retransmit timeout can be seriously detrimental to TCP performance.
I'm unsure exactly how well it copes with a somewhat congested network; but as far as I can tell it lacks the sophistication of the congestion control mechanisms present in modern OSs today (FreeBSD/Linux/OpenBSD are all I have tested against).
But the original question was "does it perform well on a high speed network" and I'll answer that with: if it's buffer size is large enough, then yes. It wont get as much throughput as FreeBSD, but you'll probably find the difference isn't so great. Of course, this is all assuming perfect hardware and device drivers.
-- Sam Jansen address@hidden Wand Network Research Group http://www.wand.net.nz/~stj2
[Prev in Thread] | Current Thread | [Next in Thread] |