У меня такой вопрос. Есть написанный мной сервер TCP на линуксе. Есть чужая программа-клиент на QNX. Клиент устанавливает TCP соединение с нами. Протокол обмена поддерживает свою собственную проверку работоспособности связи (т.е посылается посылка на которую должен быть ответ в течении 5 секунд). В какой-то момент Х что-то происходит с клиентом (наверное он глухо падает) и он не отвечает. Мой сервер разрывает соединение посредством close(). НО сокет остается в состоянии LAST-ACK. И он находится в таком состоянии (вроде бы) неограниченно долго. Оживший клиент через некоторое время создает новое соединение и ситуация повторяется. В итоге образуется большое количество соединений, находящихся в состоянии LAST-ACK, которые доставляют мне много радости. Кто-нибудь сможет объяснить ЧТО ЧЕРТ ВОЗЬМИ ПРОИСХОДИТ? И как с этим бороться?