No linux o “/ proc / sys / net / ipv4 / tcp_keepalive_time” tem impacto no cliente e no servidor?

2

Temos uma máquina rodando no linux onde estamos expondo o & também consumindo serviços da Web baseados em SOAP que usam as configurações do Keep Alive. Agora, quando alterarmos o valor de tempo de vida do TCP ativo, definindo "/ proc / sys / net / ipv4 / tcp_keepalive_time" no linux, isso afetará os clientes e servidores TCP em execução nesta caixa de Linux?

Informações Adicionais: Usamos terminais apache camel-cxf implementados no apache karaf (servicemix) para expor e serviços web baseados em SOAP do consumidor.

    
por Sanvijaya 22.09.2016 / 20:43

1 resposta

7

O suporte integrado do kernel Linux para keepalive de TCP afeta all sockets TCP ativados pela keepalive.

O TCP keepalive não está habilitado por padrão: os aplicativos devem solicitar explicitamente o controle keepalive para seus soquetes usando a interface setsockopt .

Você pode verificar se o keepalive está habilitado em um soquete específico usando o comando netstat com a opção -o, --timers :

Aqui você pode ver que o mesmo processo pode abrir diferentes soquetes de rede nos dois modos:

# netstat -anpo | grep 8999
tcp        0      0 10.10.171.44:48744         10.10.139.30:8999          ESTABLISHED 18232/java          keepalive (83.39/0/0)

# netstat -anpo | grep 8009
tcp        0      0 10.10.171.44:8009          10.10.171.42:40947         ESTABLISHED 18232/java          off (0.00/0/0)
    
por 14.10.2016 / 16:08

Tags