Eu tenho a seguinte configuração de rede: um monte de dispositivos embarcados que visam se conectar a uma porta TCP usando nodejs no Debian 8.
Estes dispositivos tentam se conectar e, em seguida, eles mantêm a conexão TCP ativa durante o tempo em que são alimentados (meses), durante a conexão, geralmente a cada 5 minutos e 31 bytes são transmitidos.
Além disso, os dispositivos incorporados usam uma porta TCP de origem estática, definida durante a configuração.
O problema parece ser que, em algum momento, o dispositivo incorporado tenta se reconectar (reenviar um pacote SYN) e o servidor o rejeita por causa do número da porta TCP reutilizado:
Na imagem você pode ver um PUSH com dados e ACKed, um keep-alive ACKed e o SYN com números de porta reutilizados é o primeiro de uma tonelada de pacotes que o servidor ignora ...
A solução estaria ativando o tcp_tw_reuse ou o tcp_tw_recycle?