Использование TCP Acks для измерения задержки на сервере?
Я пытаюсь измерить задержку на сервере, который я не контролирую. Это в условиях совместного размещения, поэтому задержка составляет порядка 500 мкс (0,5 мс).
Я понимаю, что механизм Cisco часто лишает приоритета ICMP-трафик, делая время пинга ненадежным. Есть ли способ для меня, чтобы сказать, если это дело на передаче, которую я пересекаю?
Могу ли я использовать подтверждения TCP для определения минимальной задержки для удаленного сервера? Чтобы сделать это, мне нужно как-то заставить удаленный сервер отправлять TCP-подтверждение сразу после получения моих данных.
2 ответа
Вы можете попробовать использовать arping
, который делает пинг с использованием ARP.
Попробуйте hping. Вы можете отправить подтверждение и измерить задержку:
hping -A -p 80 host
или с SYN:
hping -S -p 80 host
Также обратите внимание, что удаление приоритетов на канале уровня 2 маловероятно (но возможно). Кроме того, то, что ARP медленнее, чем ICMP, не обязательно означает, что ICMP не депориоризован - это может означать, что пропускная способность недостаточна для достижения порогового значения.
ARP почти всегда будет медленнее, потому что он вещает и может перенести очереди портов на коммутаторе. Вы можете сделать одноадресную ARP, но это может показаться подозрительным, если кто-то ее ищет.