lwip-users
[Top][All Lists]
Advanced

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

Re: [lwip-users] Problem of tcp_write with more then about 20 kBytes


From: Daniel Klingler
Subject: Re: [lwip-users] Problem of tcp_write with more then about 20 kBytes
Date: Mon, 2 Aug 2010 12:36:44 +0200

Hi,

I don't know how I can update in Xilinx to LWIP 1.32.

- MEM_SIZE 524288
- TCP_SND_QUEUELEN  16 * TCP_SND_BUF/TCP_MSS
- MEMP_N_PBUF 16

These are the debug information:
The packet with the length of 1518 Bytes doesn't go out. With wireshark I
don't see it. After a timeout the connection will be closed.

Regards,
Daniel

---
State: ESTABLISHED
tcp_receive: ACK for 19bd, unacked->seqno 19b7:19bd
tcp_receive: removing 19b7:19bd from pcb->unacked
pbuf_free(0x8802ffc0)
pbuf_free: deallocating 0x8802ffc0
tcp_write(pcb=0x880b1800, data=0x8d2785d0, len=14, apiflags=1)
tcp_enqueue(pcb=0x880b1800, arg=0x8d2785d0, len=14, flags=0, apiflags=1)
pbuf_alloc(length=14)
pbuf_alloc(length=14) == 0x8802ffc0
pbuf_header: old 0x88030040 new 0x8803002c (20)
tcp_enqueue: queueing 19bd:19cb (0x0)
tcp_output_segment: 19bd:19cb
pbuf_header: old 0x8803002c new 0x88030018 (20)
pbuf_header: old 0x88030018 new 0x8803000a (14)
tcp_recved: recveived 6 bytes, wnd 8192 (0).
pbuf_free(0x88276080)
pbuf_free: deallocating 0x88276080
tcp_output: nothing to send (0x0)
State: ESTABLISHED
tcp_fasttmr: delayed ACK
pbuf_alloc(length=20)
pbuf_alloc(length=20) == 0x880300c0
tcp_output: sending ACK for f589592a
pbuf_header: old 0x88030140 new 0x8803012c (20)
pbuf_header: old 0x8803012c new 0x8803011e (14)
pbuf_free(0x880300c0)
pbuf_free: deallocating 0x880300c0
pbuf_alloc(length=1518)
pbuf_alloc: allocated pbuf 0x88276080
pbuf_alloc(length=1518) == 0x88276080
pbuf_free(0x88276080)
pbuf_free: deallocating 0x88276080
tcp_slowtmr: processing active pcb
tcp_slowtmr: polling application
tcp_output: nothing to send (0x0)
pbuf_alloc(length=1518)
pbuf_alloc: allocated pbuf 0x88276080
pbuf_alloc(length=1518) == 0x88276080
pbuf_header: old 0x882760c0 new 0x882760ce (-14)
pbuf_header: old 0x882760ce new 0x882760e2 (-20)
pbuf_free(0x88276080)
pbuf_free: deallocating 0x88276080
tcp_slowtmr: processing active pcb
tcp_slowtmr: polling application
tcp_output: nothing to send (0x0)
tcp_slowtmr: processing active pcb
tcp_slowtmr: polling application
tcp_output: nothing to send (0x0)
pbuf_alloc(length=1518)
pbuf_alloc: allocated pbuf 0x88276080
pbuf_alloc(length=1518) == 0x88276080
pbuf_header: old 0x882760c0 new 0x882760ce (-14)
TCP header:
+-------------------------------+
|     4006      |     9999      | (src port, dest port)
+-------------------------------+
|           00f589592a          | (seq no)
+-------------------------------+
|           00000019cb          | (ack no)
+-------------------------------+
|  5 |   |010000|     65455     | (hdrlen, flags (ACK ), win)
+-------------------------------+
|    0x53ea     |         0     | (chksum, urgp)
+-------------------------------+
pbuf_header: old 0x882760ce new 0x882760e2 (-20)
pbuf_header: old 0x882760e2 new 0x882760f6 (-20)
+-+-+-+-+-+-+-+-+-+-+-+-+-+- tcp_input: flags ACK
-+-+-+-+-+-+-+-+-+-+-+-+-+-+
State: ESTABLISHED
tcp_receive: ACK for 19cb, unacked->seqno 19bd:19cb
tcp_receive: removing 19bd:19cb from pcb->unacked
pbuf_free(0x8802ffc0)
pbuf_free: deallocating 0x8802ffc0
tcp_output: nothing to send (0x0)
pbuf_free(0x88276080)
pbuf_free: deallocating 0x88276080
State: ESTABLISHED
pbuf_alloc(length=1518)
pbuf_alloc: allocated pbuf 0x88276080
pbuf_alloc(length=1518) == 0x88276080
pbuf_header: old 0x882760c0 new 0x882760ce (-14)
TCP header:
+-------------------------------+
|     4006      |     9999      | (src port, dest port)
+-------------------------------+
|           00f589592a          | (seq no)
+-------------------------------+
|           00000019cb          | (ack no)
+-------------------------------+
|  5 |   |010001|     65455     | (hdrlen, flags (FIN ACK ), win)
+-------------------------------+
|    0x53e9     |         0     | (chksum, urgp)
+-------------------------------+
pbuf_header: old 0x882760ce new 0x882760e2 (-20)
pbuf_header: old 0x882760e2 new 0x882760f6 (-20)
+-+-+-+-+-+-+-+-+-+-+-+-+-+- tcp_input: flags FIN ACK
-+-+-+-+-+-+-+-+-+-+-+-+-+-+
State: ESTABLISHED
tcp_receive: received FIN.
tcp_close: closing in State: CLOSE_WAIT
---




Gesendet: Montag, 2. August 2010 10:26 Von: address@hidden
>   Hi,
>
> first of all please update to LWIP 1.32. I can only recommend that. 
> Second what's your MEM_SIZE, TCP_SND_QUEUELEN, MEMP_NUM_PBUF?
> Do you have access to the Debug messages, that could really help.
> I think it could be maybe a memory problem.
>
>
>
> On Mon, 2 Aug 2010 10:19:06 +0200, Daniel Klingler wrote:
>> Hi,
>>
>> I am using LWIP 1.3 with Xilinx (SDK).
>>
>> My settings:
>> - TCP_SND_BUF 64240
>> - TCP_MSS 1460
>>
>> My problem:
>> - If I am do tcp_write with 18720 Bytes the transfer is well going.
>> - If I am writing with 19968 Bytes the transfer with some PCs is well
>> going, but with other PCs the return of tcp_write is -1.
>> - If I am writing with 21504 Bytes or more then with all connected PCs I
>> will return -1 of tcp_write.
>>
>> Does anybody know this issue or has any idea to solve this?
>>
>> Thanks for your replies.
>> Regards,
>> Daniel
>>
>>
>>
>>
>>
>> _______________________________________________
>> lwip-users mailing list
>> address@hidden
>> http://lists.nongnu.org/mailman/listinfo/lwip-users
>
> _______________________________________________
> lwip-users mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/lwip-users




reply via email to

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