Demek ki senin sorunun soketlerle ilgili;

1- Linux te hem sistemin genelinde hem de kullanıcının kendisine ait olmak üzere açılabilecek soketlere dair bazı sınırlar vardır, bunları konsoldan "man 7 tcp" yazarak görebilirsin ve sysctl içerisinde değerlerini düzenleyebilirsin.

2- Genellikle keepalive açık ise ve keepalive timeout yüksek ise bu sınırlara dayanabilirsin, bu yüzden keepalive timeout süresini düşürerek tekrar tekrar dene.

Bunlarla beraber loglarda kesin olarak ne olduğunu söyler (dmsg ye bak)