Qual é o significado do erro "conexão redefinida pelo par" em uma conexão TCP? É um erro fatal ou apenas uma notificação ou está relacionado à falha na rede?
Qual é o significado do erro "conexão redefinida pelo par" em uma conexão TCP? É um erro fatal ou apenas uma notificação ou está relacionado à falha na rede?
Respostas:
Isso é fatal. O servidor remoto enviou a você um pacote RST, que indica uma queda imediata da conexão, em vez do handshake usual. Isso ignora a transição normal de estado semi-fechado. Eu gosto desta descrição :
"Conexão redefinida por ponto" é o equivalente TCP / IP de colocar o telefone de volta no gancho. É mais educado do que simplesmente não responder, deixando um pendurado. Mas não é o FIN-ACK esperado do conversador TCP / IP verdadeiramente educado.
Isso significa que um TCP RST foi recebido e a conexão agora está fechada. Isso ocorre quando um pacote é enviado da sua extremidade da conexão, mas a outra extremidade não reconhece a conexão; ele enviará de volta um pacote com o bit RST configurado para fechar a conexão à força.
Isso pode acontecer se o outro lado travar e voltar a funcionar ou se chamar close()
o soquete enquanto houver dados de você em trânsito, e é uma indicação para você de que alguns dos dados que você enviou anteriormente podem não ter sido recebidos.
Depende de você se isso é um erro; se as informações que você estava enviando eram apenas para o benefício do cliente remoto, talvez não importasse a perda de dados finais. No entanto, você deve fechar o soquete e liberar quaisquer outros recursos associados à conexão.