2011-02-07 3 views
0

Я могу запустить утилиту регистрации системных вызовов. Теперь количество TCP SYN-пакетов, которые я вижу, не равно количеству системных вызовов connect(), которые я записываю? Что может быть причиной этого? Выполняет ли какие-либо другие вызовы системы внутреннее соединение?Число вызовов connect() = сегменты TCP SYN?

ответ

1

Есть всевозможные причины.

Если соединение() не удается из-за неподъемного адреса, оно никогда не может генерировать пакет SYN вообще (например, время ожидания arp). Аналогично, если соединение сбой происходит с некоторой другой ошибкой (например, недопустимыми параметрами).

SYN пакет может пойти на интерфейс, вы не глядя (например, локальный)

Ядро повторит; если ответа на запрос нет, он попытается снова (вероятно, несколько раз), прежде чем в конечном итоге вернет тайм-аут.

+0

Я вижу сегменты SYN до времени соединения соединения ... В чем причина? – Bruce

Смежные вопросы