Kieran Mansley wrote:
I should have explained - 192.168.2.2 is lwIP. At line 32 of Wireshark, a concatenated number of requests are sent which the MCU responds individually, echoing the request prior to sending the response data. This explains the multiple packets from lwIP to the client (192.168.2.3).On Mon, 2009-09-07 at 14:58 +1000, [email protected] wrote:Perhaps others have encountered this and would offer comments and perhaps comments could be offered in general.That is weird. It's hard to tell which end is lwIP and which is WinXP in your packet capture, but at the point at which things go wrong I notice the direction of the traffic changes. Until then, 192.168.2.2 is sending to 192.168.2.3, at that point ...2.3 starts sending to ...2.2 Is there anything in the lwIP stats that might explain why packets are dropped? Could it be that your board just gets very busy (perhaps with something like debug output?) and takes a very long time to respond? Kieran _______________________________________________ lwip-users mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/lwip-users
At line 103 the request to enter binary mode is sent with the request echoed at line 105 and the acceptance response at line 106.
I have attached a file which shows the stats just prior to entering binary mode and just after returning to text mode. All seems to be ok there.
There should be no delay due to the MCU being busy (other than task switching) as all that is done is to partially load and internal buffer which once filled, is written to an SD card Flash sector.
A question: When the debug output "tcp_recved: recveived 46 bytes, wnd 2048 (0)" is delivered, should an ACK already have been sent by lwIP, or does that occur later?
At a later time I should put a debug breakpoint on the receipt of the 46 byte packet and trace through the internals of lwIP.
And by the way, thank you for your input. If nothing else I'm honing my skills in the finer art of lwIP debugging.
Regards - davidm .
Before After
----------- ------------
LINK LINK
xmit: 117 xmit: 133
rexmit: 0 rexmit: 0
recv: 81 recv: 96
fw: 0 fw: 0
drop: 0 drop: 0
chkerr: 0 chkerr: 0
lenerr: 0 lenerr: 0
memerr: 0 memerr: 0
rterr: 0 rterr: 0
proterr: 0 proterr: 0
opterr: 0 opterr: 0
err: 0 err: 0
cachehit: 0 cachehit: 0
ETHARP ETHARP
xmit: 3 xmit: 3
rexmit: 0 rexmit: 0
recv: 10 recv: 10
fw: 0 fw: 0
drop: 0 drop: 0
chkerr: 0 chkerr: 0
lenerr: 0 lenerr: 0
memerr: 0 memerr: 0
rterr: 0 rterr: 0
proterr: 0 proterr: 0
opterr: 0 opterr: 0
err: 0 err: 0
cachehit: 109 cachehit: 125
IP IP
xmit: 112 xmit: 128
rexmit: 0 rexmit: 0
recv: 71 recv: 86
fw: 0 fw: 0
drop: 0 drop: 0
chkerr: 0 chkerr: 0
lenerr: 0 lenerr: 0
memerr: 0 memerr: 0
rterr: 0 rterr: 0
proterr: 0 proterr: 0
opterr: 0 opterr: 0
err: 0 err: 0
cachehit: 0 cachehit: 0
ICMP ICMP
xmit: 0 xmit: 0
rexmit: 0 rexmit: 0
recv: 0 recv: 0
fw: 0 fw: 0
drop: 0 drop: 0
chkerr: 0 chkerr: 0
lenerr: 0 lenerr: 0
memerr: 0 memerr: 0
rterr: 0 rterr: 0
proterr: 0 proterr: 0
opterr: 0 opterr: 0
err: 0 err: 0
cachehit: 0 cachehit: 0
UDP UDP
xmit: 2 xmit: 2
rexmit: 0 rexmit: 0
recv: 2 recv: 2
fw: 0 fw: 0
drop: 0 drop: 0
chkerr: 0 chkerr: 0
lenerr: 0 lenerr: 0
memerr: 0 memerr: 0
rterr: 0 rterr: 0
proterr: 0 proterr: 0
opterr: 0 opterr: 0
err: 0 err: 0
cachehit: 0 cachehit: 0
TCP TCP
xmit: 95 xmit: 105
rexmit: 0 rexmit: 0
recv: 69 recv: 84
fw: 0 fw: 0
drop: 0 drop: 0
chkerr: 0 chkerr: 0
lenerr: 0 lenerr: 0
memerr: 0 memerr: 0
rterr: 0 rterr: 0
proterr: 0 proterr: 0
opterr: 0 opterr: 0
err: 0 err: 0
cachehit: 0 cachehit: 0
MEM HEAP MEM HEAP
avail: 4096 avail: 4096
used: 548 used: 548
max: 1568 max: 1568
err: 0 err: 0
MEM RAW_PCB MEM RAW_PCB
avail: 4 avail: 4
used: 0 used: 0
max: 0 max: 0
err: 0 err: 0
MEM UDP_PCB MEM UDP_PCB
avail: 4 avail: 4
used: 1 used: 1
max: 1 max: 1
err: 0 err: 0
MEM TCP_PCB MEM TCP_PCB
avail: 5 avail: 5
used: 1 used: 1
max: 1 max: 1
err: 0 err: 0
MEM TCP_PCB_LISTEN MEM TCP_PCB_LISTEN
avail: 8 avail: 8
used: 1 used: 1
max: 1 max: 1
err: 0 err: 0
MEM TCP_SEG MEM TCP_SEG
avail: 32 avail: 32
used: 1 used: 1
max: 9 max: 9
err: 0 err: 0
MEM ARP_QUEUE MEM ARP_QUEUE
avail: 30 avail: 30
used: 0 used: 0
max: 0 max: 0
err: 0 err: 0
MEM PBUF_REF/ROM MEM PBUF_REF/ROM
avail: 16 avail: 16
used: 0 used: 0
max: 0 max: 0
err: 0 err: 0
MEM PBUF_POOL MEM PBUF_POOL
avail: 32 avail: 32
used: 0 used: 0
max: 2 max: 2
err: 0 err: 0
_______________________________________________ lwip-users mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/lwip-users
