У меня проблема с простым TCP-соединением между двумя компьютерами (оба Windows XP SP3), соединенными друг с другом прямым соединением. Эти ПК имеют IP-адрес 10.10.10.1 (сервер) и 10.10.10.2 на сетевых адаптерах, используемых для прямой связи.
Ниже вы можете увидеть снимки экрана Wireshark, на которых показаны проблемы, которые мы видим после отправки ARP-трансляции с клиента. Это вызывает ошибку Windows Socket 10035 на нашем неблокирующем соединении, и только примерно через 1 или более секунд мы получаем событие FD_WRITE, сообщающее нам, что мы можем отправить его снова, например, на клиенте.
Такое поведение не подходит для нашего сценария, но почему общение так долго зависает? И какие есть решения? Помимо добавления статической записи в ARP-кеш, чего мы хотели бы избежать.