2024-06-13 04:09 AM
Hello,
I am using an STM32H5 series processor in my project and running Azure RTOS NetX on it. I have enabled the Keep Alive feature as shown in the image below. However, when I checked with Wireshark, I could not see the Keep Alive packets as expected.
To assist with troubleshooting, I am sharing the debug values and an image showing that Keep Alive is enabled.
Do you think the Keep Alive feature is working correctly? If not, what could be the reason?
Solved! Go to Solution.
2024-06-26 02:28 AM
Hello @Eakyo.1
A shorter keep alive timeout means the system will send keep alive probes more often.
However, keep in mind that TCP keep-alive packets are not easily distinguishable in Wireshark because they are essentially empty TCP packets with no data payload. They might not even be captured unless there is an issue with the connection, you can use filters in Wireshark to show only TCP packets with the ACK flag set and no data payload, which may help identify keep-alive packets. I can think also of Keep alive settings because they are often configured at the system level and may require administrative privileges to change so, ensure that the settings are correctly applied and that the system is configured to allow keep alive packets to be sent.
Finlay If you've adjusted the Keep Alive Timeout and are monitoring with Wireshark but not seeing the keep-alive packets, ensure that the keep alive settings are correctly applied at both ends of the connection and the connection is truly idle Link.
2024-06-25 07:21 AM
Hello @Eakyo.1 ,
This issue was addressed in this thread How to tune azure netxduo to receive more incoming... - STMicroelectronics Community.
Regards
2024-06-25 08:26 AM
Hello @Eakyo.1
If Keep Alive is enabled, periodic Keep Alive packets are sent to check the connection. If there is no response after a certain number of probes, the connection is considered dead and the local socket is closed.
You must consider that Keep Alive packets are not sent continuously: they are sent after a period of inactivity defined by the Keep Alive interval, make sure that you have waited long enough for the Keep Alive packets to be sent according to your configuration. Another point, sometimes network equipment or firewalls can drop Keep Alive packets. Make sure your network setup is free of such interference.
2024-06-25 11:08 PM
2024-06-25 11:29 PM
@Hello @nouirakh ,
Thank you very much for your response.
If we reduce the Keep Alive Timeout value to seconds (currently it is 7200, which is 2 hours), would we expect the Keep Alive messages to drop more quickly? I can monitor TCP packets with Wireshark, but I can't see the Keep Alive messages.
Regards
2024-06-26 02:28 AM
Hello @Eakyo.1
A shorter keep alive timeout means the system will send keep alive probes more often.
However, keep in mind that TCP keep-alive packets are not easily distinguishable in Wireshark because they are essentially empty TCP packets with no data payload. They might not even be captured unless there is an issue with the connection, you can use filters in Wireshark to show only TCP packets with the ACK flag set and no data payload, which may help identify keep-alive packets. I can think also of Keep alive settings because they are often configured at the system level and may require administrative privileges to change so, ensure that the settings are correctly applied and that the system is configured to allow keep alive packets to be sent.
Finlay If you've adjusted the Keep Alive Timeout and are monitoring with Wireshark but not seeing the keep-alive packets, ensure that the keep alive settings are correctly applied at both ends of the connection and the connection is truly idle Link.
2024-07-02 11:18 PM
2024-07-03 01:08 AM
Hello @Eakyo.1
If this solves your problem, please mark my answer as "Best Answer" by clicking on the "Select as Best" button, this can be helpful for Community users to find this solution faster.