Temos duas caixas AIX, uma para o sistema de produção e outra para testes.
ambos os sistemas estão executando comutadores de máquina ATM, onde o dispositivo ATM é conectado via soquete TCP.
tivemos um problema no sistema de produção em que a máquina desligava ou ficava desconectada, mas o netstat -na | grep <IP of machine >
ainda mencionava que o soquete estava ativo
quando simulou aquele caso no ambiente UAT, o problema não aconteceu, onde o socket terminaria em 3 a 5 minutos.
quando farejou o tráfego entre a máquina e o caixa eletrônico, descobrimos que nenhum tráfego ocorre na produção enquanto houver algum tipo de pulsação no UAT. mas não é iniciado pela aplicação.
$>tcpdump | grep -v "10.2.2.71" | grep -v "HSRP" | grep "10.3.1.30"
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on en6, link-type 1, capture size 96 bytes
09:08:13.323421 IP server073.afs3-callback > 10.3.1.30.impera: . 278204201:278204202(1) ack 3307884029 win 164
09:08:13.335334 IP 10.3.1.30.impera > server073.afs3-callback: . ack 1 win 64180
09:08:23.425771 IP 10.3.1.30.impera > server073.afs3-callback: . 1:2(1) ack 1 win 64180
09:08:23.425789 IP server073.afs3-callback > 10.3.1.30.impera: . ack 2 win 65535
09:09:13.628985 IP server073.afs3-callback > 10.3.1.30.impera: . 0:1(1) ack 1 win 164
09:09:13.633900 IP 10.3.1.30.impera > server073.afs3-callback: . ack 1 win 64180
09:09:23.373634 IP 10.3.1.30.impera > server073.afs3-callback: . 1:2(1) ack 1 win 64180
09:09:23.373647 IP server073.afs3-callback > 10.3.1.30.impera: . ack 2 win 65535
enquanto em produção, esse tráfego não está lá.
queremos saber de onde esse tráfego é iniciado para implementar na produção para detectar a desconexão
nossos parâmetros de comunicação são:
tcp_keepcnt = 2
tcp_keepidle = 100
tcp_keepinit = 150
tcp_keepintvl = 150
tcp_finwait2 = 1200
alguém pode ajudar?
Pergunta de edição: Um ponto que perdi porque estava correndo para uma reunião. A diferença entre o Production e o UAT na configuração é que na Production temos um aplicativo chamado F5 trabalhando como balanceador de carga entre os ATMs e a caixa AIX, enquanto é uma conexão direta através de MPLS no caso do UAT.
observação: tivemos um ATM com conexão MPLS e um GPRS no UAT, e ambas as conexões terminaram quando desconectadas em cerca de 4 minutos
Editar 2
o comando no -o tcp_timewait
retorna 1 na produção e no UAT