lwip-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lwip-users] Works with Win7, not Windows XP?


From: Niall Donovan
Subject: Re: [lwip-users] Works with Win7, not Windows XP?
Date: Fri, 1 Nov 2013 09:04:16 +0000

One simple reason will be not enough pbufs allocated. Each received segment will take at lease one pbuf. Depending on the memory allocation scheme you have used each pbuf might be a pre-allocated size (say 1518 + header). In such a case each received segment in the win XP case will use a 1518 pbuf to store a 128 byte segment...it's easy to run out! For Win 7 you are less likely to run out since each segment is 536 so fewer pbufs are need to save the full payload.

(at lease this is my understanding of how TCP works in lwip - someone please correct me if I'm wrong!)

You can have dynamic pbuf allocation - slow but possibly better use of memory.
Pre-allocated fixed size pbufs pools - good performance but sizing pbufs to give optimal memory use is tricky.
custom pools i.e. varying size pre-allocated pbufs, picked based on best fit.

Which you select depends on your needs and sometimes the capability if the device driver (if it uses DMA then dynamic pbuf allocation may not be possible)

Niall.



On 1 November 2013 07:17, ThomasJ <address@hidden> wrote:
Hi

I see. Thanks for reply.

But I also wonder, why the lwip crashes when the same amount of data comes
in segments of 128 from WindowsXP. But do not crash when the same data comes
from Win7 in 536 bytes chunks?

There is enough memory to receive the data (it can be received when send
from Win7).

I have changed the MSS to 536 and increased the MEM_SIZE a bit. Seems to
have helped.

Thomas



--
View this message in context: http://lwip.100.n7.nabble.com/Works-with-Win7-not-Windows-XP-tp22003p22020.html
Sent from the lwip-users mailing list archive at Nabble.com.

_______________________________________________
lwip-users mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/lwip-users


reply via email to

[Prev in Thread] Current Thread [Next in Thread]