Wiem, że przerwany błąd rury jest generowany, gdy gniazdo po stronie peer jest zamknięte.Co powoduje błąd zepsutej rury?
Ale w moim teście zauważyłem, że natychmiastowe wywołanie "wyślij" po tej stronie, gdy strona równorzędna jest zamknięta, nie zawsze prowadzi do zerwania błędu rury.
Np
Po zamknięciu gniazda na boku rówieśniczej (Próbowałem czystego zamknięcia wywołując bliskie, a także nieprawidłowe zamknięcie zabijając peer), gdy próbuję wysłać 40 bajtów, to ja nie rozumiem zepsuta rura, ale jeśli spróbuję wysłać 40000 bajtów, natychmiast poda zepsuty błąd rury.
Co dokładnie powoduje uszkodzenie rury i czy można przewidzieć jej zachowanie?
@varevarao: Nie sądzę, że kolejkowanie transmisji i wysyłanie w określonych odstępach czasu jest obejściem problemu. Transmisje w kolejce, dopóki nie zostanie wysłana więcej niż MTU, może być obejściem, jeśli aplikacja może żyć z opóźnieniami. –