Description
During development of a TCP application, I stumbled across intermittent network failures. After some time the network activity is interrupted for approximately 1 minute and is resumed afterwards. I can see re-transmit attempts from my PC (10.0.0.2) to the ESP32C6 (10.0.0.1), but no ACK is produced by the ESP32 during the outage. The code on the ESP32C6 still runs during the outage as I can see timeouts of ppoll() waiting for input data being reported on serial console. See below printscreen of one such session.
Application is fairly simple for demonstrative purposes. There is a server part which accepts connection from PC running the client code. After connection is established, client sends ping command and expects same response from server. (In hex the command is 0xfa1a00), then client waits 2 seconds and repeats the cycle. On server side there is ppoll() which waits for input data from client.
I'm not sure where the problem comes from. If it is some issue with configuring the TCP stack or if there is an issue in NuttX.
The code to reproduce the issue is on github.com and here is the defconfig which I'm using.
If need be, I can provide complete PCAP and logs from one such attempt.
cc: @ppisa
Verification
Description
During development of a TCP application, I stumbled across intermittent network failures. After some time the network activity is interrupted for approximately 1 minute and is resumed afterwards. I can see re-transmit attempts from my PC (10.0.0.2) to the ESP32C6 (10.0.0.1), but no ACK is produced by the ESP32 during the outage. The code on the ESP32C6 still runs during the outage as I can see timeouts of
ppoll()waiting for input data being reported on serial console. See below printscreen of one such session.Application is fairly simple for demonstrative purposes. There is a server part which accepts connection from PC running the client code. After connection is established, client sends ping command and expects same response from server. (In hex the command is 0xfa1a00), then client waits 2 seconds and repeats the cycle. On server side there is
ppoll()which waits for input data from client.I'm not sure where the problem comes from. If it is some issue with configuring the TCP stack or if there is an issue in NuttX.
The code to reproduce the issue is on github.com and here is the
defconfigwhich I'm using.If need be, I can provide complete PCAP and logs from one such attempt.
cc: @ppisa
Verification