TCP: Сервер отправляет [RST, ACK] сразу после получения [SYN] от клиента

Host_A пытается отправить некоторые данные Host_B по TCP. Host_B прослушивает порт 8181. Оба Host_A и Host_B являются Linux-компьютерами (Red Hat Enterprise). Уровень TCP реализован с использованием Java NIO API.

Что бы ни отправлял Host_A, Host_B не может получить. Обнюхивание данных на проводе с помощью WireShark привело к следующему журналу:

1) Host_A (33253) > Host_B (8181): [SYN] Seq=0 Win=5840 Len=0 MSS=1460 TSV=513413781 TSER=0 WS=7
. 2) Host_B (8181) > Host_A (33253): [RST, ACK] Seq=1 Ack=1 Win=0 Len=0

Журналы показывают, что Host_A посылает флаг [SYN] Host_B, чтобы установить соединение. Но вместо [SYN, ACK] Host_B отвечает [RST, ACK], который сбрасывает/закрывает соединение. Такое поведение наблюдается всегда.

Мне интересно, при каких обстоятельствах TCP-приемник посылает [RST,ACK] в ответ на [SYN]?

21
задан Riyaz 11 March 2011 в 10:56
поделиться