Hi,

I'm having problem setting a proper values for the following #defines

#define MEM_SIZE                        (24 * 1024)

#define MEMP_NUM_PBUF                   16
#define MEMP_NUM_TCP_PCB              8
#define MEMP_NUM_TCP_SEG              16
#define PBUF_POOL_SIZE                     16
#define TCP_WND                                 (8 * 1024)
#define TCP_MSS                                1024
#define TCP_SND_BUF                         (8 * TCP_MSS)
#define TCP_SND_QUEUELEN               (MEMP_NUM_TCP_SEG) *4
#define PBUF_LINK_HLEN                    16
#define PBUF_POOL_BUFSIZE             256
Which of the above are related to TCP Tx and which are Rx?

How do I calculate those values to get an optimum throughput ?

I'm using Luminary Micro LM3S6965 which got 64KB RAM. and I'm opening 2 TCP
port transfering data to PC.

PC <-------> MCU with lwIP 1.3 (2 TCP channel transfering data from 2xUART
using 230Kbps).

When I open only 1 TCP port and transfer the data, the transmission is fast
and smooth.
The problem is,  when 2 TCP port are opened and device is connected to
10Mbps Hub both data transfer starting to slow down significantly and i can
see the data transfer are starting and stopping.

In my firmware, I got sometimes a) snd_queuelen was fulled on one of the
port  b) i got ERR_MEM on tcp_write most of the time c) snd_buf size become
0 or very low and never free up again.
I'm sure my ethernet driver is NOT in promicuous mode.

Am I setting those #define completely wrong?

It would be great if you guys can give me suggestion or thoughts about what
would causing me the issue.

Thank you very much.


-- 
Bandu
[email protected]
_______________________________________________
lwip-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to