lwip-users
[Top][All Lists]
Advanced

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

[lwip-users] Dropped Packets on PC receiver with lwip 1.1.0 Transmitter


From: Paul Butler
Subject: [lwip-users] Dropped Packets on PC receiver with lwip 1.1.0 Transmitter
Date: Wed, 28 Mar 2007 19:36:27 -0500

All,
 
It appears many of my earlier problems were due to ADI using version 1.1.0 for the basis of their port (not 0.6.3 as I previously indicated), which had a problem with the Nagle algorithm.  They appear to have corrected that in their port, and my problems regarding throughput have diminished greatly.  I can now get the network utilization reported by windows XP up to around 80% and can sustain that data rate pretty reliably.
 
However, I am still having a problem where the receiver appears to drop perfectly valid data (as seen by ethereal), failing to generate an ACK.  Honestly, it appears as if the receiving socket has closed itself but does not issue a FIN or RST to indicate this.  Is it possible for a receiving socket (utilizing winsock2 on windows XP) to simply stop responding to data reported by ethereal?  Can anyone offer any insight into what could be happening here?  Keep in mind my high bandwidth utilization, can that be causing any problems?  This problem appears to be aggravated when DHCP is used, although again ethereal does not show anything problematic.
 
I have also run an experiment using a PC instead of lwip to generate the data, and there the utilization is 99% sustained, and does not appear to have these issues with ignored packets.  Looking at the log, I noticed that very few packets from the PC have the PSH bit set, where every packet from lwip has PSH set.  Is this intentional?  Could it be related to my problems?
 
If someone can tell me the trick to posting a file to the list I can send some logs of this problem.  I have pasted the summary lines from one log file below.  37 is the lwip device transmitting data, 36 is the PC receiving data.  The listening socket is on the lwip device.  You can see after a series of successful transmits and acknowledgements, the retransmission in segment 151 appears to be ignored, as was the initial transmission of the sequence in segment 150.  I'm open to any suggestions at this point that would allow data received by ethereal to not cause an acknowledgement back to the sender.
 
Thanks,
Paul
 
------------------------------
No.     Time        Source                Destination           Protocol Info
 121 3.399910    192.168.16.37         192.168.16.36         TCP      7010 > 7010 [PSH, ACK] Seq=100741 Ack=1 Win=8192 Len=1460
    122 3.400067    192.168.16.37         192.168.16.36         TCP      7010 > 7010 [PSH, ACK] Seq=102201 Ack=1 Win=8192 Len=1460
    123 3.400095    192.168.16.36         192.168.16.37         TCP      7010 > 7010 [ACK] Seq=1 Ack=103661 Win=65535 [TCP CHECKSUM INCORRECT] Len=0
    124 3.400266    192.168.16.37         192.168.16.36         TCP      7010 > 7010 [PSH, ACK] Seq=103661 Ack=1 Win=8192 Len=1460
    125 3.400409    192.168.16.37         192.168.16.36         TCP      7010 > 7010 [PSH, ACK] Seq=105121 Ack=1 Win=8192 Len=1460
    126 3.400435    192.168.16.36         192.168.16.37         TCP      7010 > 7010 [ACK] Seq=1 Ack=106581 Win=65535 [TCP CHECKSUM INCORRECT] Len=0
    127 3.400573    192.168.16.37         192.168.16.36         TCP      7010 > 7010 [PSH, ACK] Seq=106581 Ack=1 Win=8192 Len=1460
    128 3.400702    192.168.16.37         192.168.16.36         TCP      7010 > 7010 [PSH, ACK] Seq=108041 Ack=1 Win=8192 Len=1460
    129 3.400725    192.168.16.36         192.168.16.37         TCP      7010 > 7010 [ACK] Seq=1 Ack=109501 Win=65535 [TCP CHECKSUM INCORRECT] Len=0
    130 3.400874    192.168.16.37         192.168.16.36         TCP      7010 > 7010 [PSH, ACK] Seq=109501 Ack=1 Win=8192 Len=1460
    131 3.401012    192.168.16.37         192.168.16.36         TCP      7010 > 7010 [PSH, ACK] Seq=110961 Ack=1 Win=8192 Len=1460
    132 3.401036    192.168.16.36         192.168.16.37         TCP      7010 > 7010 [ACK] Seq=1 Ack=112421 Win=65535 [TCP CHECKSUM INCORRECT] Len=0
    133 3.401185    192.168.16.37         192.168.16.36         TCP      7010 > 7010 [PSH, ACK] Seq=112421 Ack=1 Win=8192 Len=1460
    134 3.401309    192.168.16.37         192.168.16.36         TCP      7010 > 7010 [PSH, ACK] Seq=113881 Ack=1 Win=8192 Len=1460
    135 3.401487    192.168.16.37         192.168.16.36         TCP      7010 > 7010 [PSH, ACK] Seq=115341 Ack=1 Win=8192 Len=1460
    136 3.401525    192.168.16.36         192.168.16.37         TCP      [TCP Dup ACK 132#1] 7010 > 7010 [ACK] Seq=1 Ack=112421 Win=65535 [TCP CHECKSUM INCORRECT] Len=0
    137 3.401608    192.168.16.37         192.168.16.36         TCP      7010 > 7010 [PSH, ACK] Seq=116801 Ack=1 Win=8192 Len=1460
    138 3.401622    192.168.16.36         192.168.16.37         TCP      [TCP Dup ACK 132#2] 7010 > 7010 [ACK] Seq=1 Ack=112421 Win=65535 [TCP CHECKSUM INCORRECT] Len=0
    139 3.401934    192.168.16.37         192.168.16.36         TCP      7010 > 7010 [PSH, ACK] Seq=118261 Ack=1 Win=8192 Len=1460
    140 3.401945    192.168.16.36         192.168.16.37         TCP      [TCP Dup ACK 132#3] 7010 > 7010 [ACK] Seq=1 Ack=112421 Win=65535 [TCP CHECKSUM INCORRECT] Len=0
    141 3.402061    192.168.16.37         192.168.16.36         TCP      7010 > 7010 [PSH, ACK] Seq=119721 Ack=1 Win=8192 Len=1460
    142 3.402075    192.168.16.36         192.168.16.37         TCP      [TCP Dup ACK 132#4] 7010 > 7010 [ACK] Seq=1 Ack=112421 Win=65535 [TCP CHECKSUM INCORRECT] Len=0
    143 3.402188    192.168.16.37         192.168.16.36         TCP      7010 > 7010 [PSH, ACK] Seq=121181 Ack=1 Win=8192 Len=1460
    144 3.402200    192.168.16.36         192.168.16.37         TCP      [TCP Dup ACK 132#5] 7010 > 7010 [ACK] Seq=1 Ack=112421 Win=65535 [TCP CHECKSUM INCORRECT] Len=0
    145 3.402354    192.168.16.37         192.168.16.36         TCP      [TCP Fast Retransmission] 7010 > 7010 [PSH, ACK] Seq=112421 Ack=1 Win=8192 Len=1460
    146 3.402612    192.168.16.37         192.168.16.36         TCP      7010 > 7010 [PSH, ACK] Seq=122641 Ack=1 Win=8192 Len=1460
    147 3.402640    192.168.16.36         192.168.16.37         TCP      7010 > 7010 [ACK] Seq=1 Ack=113881 Win=65535 [TCP CHECKSUM INCORRECT] Len=0
    148 4.756081    192.168.16.37         192.168.16.36         TCP      [TCP Retransmission] 7010 > 7010 [PSH, ACK] Seq=113881 Ack=1 Win=8192 Len=1460
    149 4.756213    192.168.16.36         192.168.16.37         TCP      7010 > 7010 [ACK] Seq=1 Ack=124101 Win=65535 [TCP CHECKSUM INCORRECT] Len=0
    150 4.756758    192.168.16.37         192.168.16.36         TCP      7010 > 7010 [PSH, ACK] Seq=124101 Ack=1 Win=8192 Len=1460
    151 6.256042    192.168.16.37         192.168.16.36         TCP      [TCP Retransmission] 7010 > 7010 [PSH, ACK] Seq=124101 Ack=1 Win=8192 Len=1460
    152 8.063536    Dell_ea:aa:9e         Broadcast             ARP      Who has 192.168.16.200?  Tell 192.168.16.2
    153 9.255802    192.168.16.37         192.168.16.36         TCP      [TCP Retransmission] 7010 > 7010 [PSH, ACK] Seq=124101 Ack=1 Win=8192 Len=1460
    154 12.976243   Dell_ea:aa:9e         Broadcast             ARP      Who has 192.168.16.23?  Tell 192.168.16.2
    155 15.256433   192.168.16.37         192.168.16.36         TCP      [TCP Retransmission] 7010 > 7010 [PSH, ACK] Seq=124101 Ack=1 Win=8192 Len=1460
    156 25.543310   Ibm_11:83:a2          Broadcast             ARP      Who has 192.168.16.22?  Tell 192.168.16.32
    157 27.255518   192.168.16.37         192.168.16.36         TCP      [TCP Retransmission] 7010 > 7010 [PSH, ACK] Seq=124101 Ack=1 Win=8192 Len=1460
    158 27.259166   HewlettP_a3:5f:35     CDP/VTP/DTP/PAgP/UDLD CDP      Device ID: HP ProCurve Switch 2626(001185-a35f00)  Port ID: 11 
    159 30.020045   Ibm_11:83:a2          Broadcast             ARP      Who has 192.168.16.40?  Tell 192.168.16.32
    160 34.756319   192.168.16.36         192.168.16.37         TCP      7010 > 7010 [FIN, ACK] Seq=1 Ack=124101 Win=65535 [TCP CHECKSUM INCORRECT] Len=0
    161 34.756501   192.168.16.37         192.168.16.36         TCP      7010 > 7010 [ACK] Seq=125561 Ack=2 Win=8191 Len=0
    162 34.786842   Wistron_34:70:ec      Broadcast             ARP      Who has 192.168.16.40?  Tell 192.168.16.22
    163 38.569883   Dell_ea:aa:9e         Broadcast             ARP      Who has 192.168.16.22?  Tell 192.168.16.2
    164 51.254659   192.168.16.37         192.168.16.36         TCP      [TCP Retransmission] 7010 > 7010 [PSH, ACK] Seq=124101 Ack=2 Win=8191 Len=1460
    165 51.254751   192.168.16.36         192.168.16.37         TCP      7010 > 7010 [RST, ACK] Seq=2 Ack=125561 Win=0 Len=0
    166 60.526906   HewlettP_a3:5f:00     09:00:09:00:00:67     HP       HP Switch Protocol

reply via email to

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