Co oznacza błąd „resetowanie połączenia przez peer” w połączeniu TCP? Czy to błąd krytyczny, czy tylko powiadomienie lub związany z awarią sieci?
Co oznacza błąd „resetowanie połączenia przez peer” w połączeniu TCP? Czy to błąd krytyczny, czy tylko powiadomienie lub związany z awarią sieci?
Odpowiedzi:
To fatalne. Serwer zdalny wysłał ci pakiet RST, który wskazuje na natychmiastowe zerwanie połączenia, a nie zwykłe uzgadnianie. Pomija to normalne przejście do stanu pół-zamkniętego. Podoba mi się ten opis :
„Resetowanie połączenia przez peer” to odpowiednik protokołu TCP / IP polegający na zrzuceniu telefonu z powrotem na zaczep. Jest to bardziej grzeczne niż zwykłe nie odpowiadanie, pozostawiając jednego zawieszonego. Ale nie jest to FIN-ACK oczekiwany od naprawdę grzecznego konwersatora TCP / IP.
Oznacza to, że odebrano protokół TCP RST i połączenie jest teraz zamknięte. Dzieje się tak, gdy pakiet jest wysyłany z twojego końca połączenia, ale drugi koniec nie rozpoznaje połączenia; odeśle pakiet z ustawionym bitem RST w celu wymuszonego zamknięcia połączenia.
Może się to zdarzyć, jeśli druga strona ulegnie awarii, a następnie wróci do góry lub gdy zadzwoni close()
do gniazda, gdy przesyłane są dane od Ciebie, i oznacza to, że niektóre dane, które wcześniej wysłałeś, mogły nie zostać odebrane.
To od Ciebie zależy, czy to błąd; jeśli wysyłane informacje były przeznaczone wyłącznie na korzyść klienta zdalnego, może nie mieć znaczenia, że mogły zostać utracone jakiekolwiek dane końcowe. Należy jednak zamknąć gniazdo i zwolnić wszelkie inne zasoby związane z połączeniem.