lwip-devel
[Top][All Lists]
Advanced

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

[lwip-devel] TCP errors going from 1.4.1 to 2.0.3


From: Bill Auerbach
Subject: [lwip-devel] TCP errors going from 1.4.1 to 2.0.3
Date: Tue, 31 Oct 2017 15:12:55 +0000

Hello,

 

I have a Telnet like debug connection on my lwIP-based controller. This is raw API (NO_SYS=1) simply calling tcp_write (with TCP_WRITE_FLAG_COPY) and tcp_output when nothing is left to send (which occurs on a line by line basis).  TCP_SND_BUF is 32k and nothing sent out in multiple calls will ever exceed this.

 

I build lwip and my “port” driver as LIBs and only had to change struct ip_addr to the typedef.  lwIP 1.4.1 shows no errors in wireshark while lwip 2.0.3 shows dup acks and retransmissions on every packet.  I see these errors on another binary connection using 2.0.3 that I didn’t have on 1.4.1.  With Telnet, this showed as a long pause (1S or so) in the middle of a few lines of output.  But simply sending 3 lines causes errors.

 

Attached is a PCAP of just the port 23 connect and the 3 ASCII lines returned from the controller – the PC is 172.16.0.1.  Use tcp.stream==2 as the filter.  With the code in the driver and in the application that is sending the telnet data being unchanged from 1.4.1 to 2.0.3, I don’t know what to look for.  I can only think maybe somehow TCP/IP worked in 1.4.1 but has a problem that didn’t show.  Makes no sense but if you write software long enough, sometimes it doesn’t.  Since we updated some of our user base to 2.0.3 to get around a problem in 1.4.1 that didn’t happen in 2.0.3, I’m trying to go forward and not back to 1.4.1 to try to fix the problem.  Or try to fix this problem in 2.0.3 but I don’t know where to begin.

 

Thanks to anyone who can comment,

Bill

Attachment: lwip_2_0_3_dup_ack_retran_errors.pcap
Description: lwip_2_0_3_dup_ack_retran_errors.pcap


reply via email to

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