Хочу разобрать все случаи когда ОС(т.е. инициатор не приложение и не другой хост) может перевести TCP-коннект в состояние из ESTABLISHED в другое.
Считаем, что TCP keepalive выключен.
Вариант 1. Соединение установлено(ESTABLISHED), все корректно, но никто не собирается передавать данные. Разорвется ли такое соединение когда-нибудь?
Вариант 2. Тоже самое, но перерубился кабель где-то по середине, по факту 100% потерть пакетов. Один из процессов активно пишет в сокет. Разорвет ли такое соединение операционка? На каком хосте?
Глобальный вопрос: а сколько может висеть неактивный, но ESTABLISHED сокет?
Пруфы и ссылки разделы rfc очень бы помогли.