My networking skills are quite poor and I am trying to understand the following netstat -ton meaning.

We have redis server and a client with a thread connecting to it via PUB/SUB. The client SUBSCRIBE to a Redis channel.

This, I guess, creates a long lived TCP link between both and the server sends data to the client when something happens on the channel.

However, from time to time (a month to three months) the client stops receiving anything, yet does not crash or raise any errors.

In this state I see the following:

A stalled Recv Q with ESTABLISHED off.

enter image description here

I read around a little bit and it could be related to many things including TCP keep alive parameters?

Any tips and ideas of how to debug such a state?

Restarting the client solves everything.


It seems to me, that problem is within your client, because Recv-Q for established connections is the count of bytes not copied by the user program connected to this socket. It means, your application does not read data from socket.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.