Re: Udp sending performance in Gbit Ethernet
- From: "m" <m@xxx>
- Date: Wed, 18 Jan 2006 18:08:23 -0500
BTW: did you test with different motherboards?
"JTL" <JTL@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:23EE9A62-AD63-4D10-9D04-65EB3E8C0D6F@xxxxxxxxxxxxxxxx
> "Stephan Wolf [MVP]" wrote:
>> So I am *not* actually suprised by the behaviour you describe. We often
>> saw a sudden drop of perfromance for certain packet (frame) sizes. And
>> there can be just so many reasons like interrupts and DMA.
>>
>> If the number of interrupts increases by a factor of 3 as you describe,
>> then there is probably some limit reached in the driver or in the card
>> such as the maximum DMA block size or alike, which forces the driver to
>> split frames into several DMA transfers. Since some cards generate an
>> interrupt at the end of each DMA transfer, this would be an
>> explanation.
>
> I do not know the internals of the Windows driver model, so I really
> cannot
> make any comments. Your comments seem reasonable, but they still leave the
> following open points:
>
> - Why is it faster to send 3 UDP packets of size 1024 bytes than 1 of size
> 1025?
> - Why is it twice as fast to send one fragmented UDP packet, where both
> fragments are of size 1400+ bytes than two un-fragmented packets of size
> 1400
> bytes?
> - Why there is no such phenomenon with TCP? It sends large packets also.
> (And achieves the same speeds than UDP with 1024 byte datagrams)
> - Why increasing the number of applications (sockets) increase the
> throughput?
> - Why increasing the number of threads with one socket increase the
> throughput?
>
> As I said, I don't know the internals of the windows networking, but the
> points above in my opinion belong to the TCP/IP stack implementation, not
> driver implementation.
>
> Furthermore:
> - I have tested this with at least 4 different cards (see below), each of
> them has the same problem.
> - This problem does not exist in Linux, when run on exactly the same
> hardware.
>
> See also:
> http://www.chch.demon.co.uk/wintest/wintest.html
>
>> 1. Try different versions of the driver for the card (even older ones).
>
> This I have not tried.
>
>> 2. Try some other card (different chipset) along with its driver.
>
> This I have tried.
>
>> 3. Holler at the card vendor's support (don't expect too much).
>
> This I have not tried.
>
>
>> BTW, which chipset does your GigE card use (Marvell, Broadcom, Intel,
>> etc.)?
>
> I had the list in one of the previous posts, but at least:
>
> - 3Com 3c2000
> - Intel PRO/1000 GT
> - Compaq Server NIC
> - NVIDIA NForce chipset (motherboard) NIC
>
> I would be suprised, if each of the manufacturers above would make the
> same
> mistake in their drivers...
>
> Greetings
>
> Juha
>
.
- References:
- Re: Udp sending performance in Gbit Ethernet
- From: Stephan Wolf [MVP]
- Re: Udp sending performance in Gbit Ethernet
- From: JTL
- Re: Udp sending performance in Gbit Ethernet
- From: Stephan Wolf [MVP]
- Re: Udp sending performance in Gbit Ethernet
- From: JTL
- Re: Udp sending performance in Gbit Ethernet
- Prev by Date: Re: Compiling under ddk 3790
- Next by Date: Re: Compiling under ddk 3790
- Previous by thread: Re: Udp sending performance in Gbit Ethernet
- Next by thread: Re: Udp sending performance in Gbit Ethernet
- Index(es):
Relevant Pages
|