• SeongJae Park's avatar
    selftests: net: Add FIN_ACK processing order related latency spike test · af8c8a45
    SeongJae Park authored
    This commit adds a test for FIN_ACK process races related reconnection
    latency spike issues.  The issue has described and solved by the
    previous commit ("tcp: Reduce SYN resend delay if a suspicous ACK is
    received").
    
    The test program is configured with a server and a client process.  The
    server creates and binds a socket to a port that dynamically allocated,
    listen on it, and start a infinite loop.  Inside the loop, it accepts
    connection, reads 4 bytes from the socket, and closes the connection.
    The client is constructed as an infinite loop.  Inside the loop, it
    creates a socket with LINGER and NODELAY option, connect to the server,
    send 4 bytes data, try read some data from server.  After the read()
    returns, it measure the latency from the beginning of this loop to this
    point and if the latency is larger than 1 second (spike), print a
    message.
    Reviewed-by: default avatarEric Dumazet <edumazet@google.com>
    Signed-off-by: default avatarSeongJae Park <sjpark@amazon.de>
    Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    af8c8a45
fin_ack_lat.c 3.32 KB