erroneous Socket Error 10054 / TCP issue
Posted 13 November 2009 - 08:40 AM
I noticed in the forum multiple topics regarding one of these two issues, and here is my analysis.
I could find WAPT 5.0 reporting 10054 when it should not. To reproduce this scenario, just set HTTP keep-alive ON, set a (WAPT timeout + user think time) greater than web server keep-alive timeout. On a standard configuration, that would mean 120 seconds (WAPT default) + user think time, which is greater than the usual 120 second value on server-side, thus explaining why this issue can be avoided by disabling think time. The error then trigger whenever reply delay + next think time is greater than HTTP server keep-alive timeout.
As for the cause, it is due to bad TCP management on WAPT side: when the server closes the connection on his side (sending FIN flag and going FIN_WAIT_2), WAPT first sends the next HTTP request before sending the FIN flag and closing the connection from his side. This is perfectly valid at TCP level, but WAPT is still waiting for the HTTP reply on a closed TCP connection, and goes wild when receiving RST packets on this one. Maybe the server should not close the connections at this point, but WAPT should be aware of the underlying transmission protocol state.
Hope this issue will be solved in a future version, it is pretty diffucult to perform realistic tests without keep-alive or user think time.
Posted 16 November 2009 - 12:16 PM
WAPT Project Manager
Toll-free: 1-888-364-6797 (for US only)
Time zone GMT +6, EST +11
<a href="http://www.loadtestingtool.com" target="_blank">http://www.loadtestingtool.com</a>