Макс. Время отклика пинга?
Мне интересно, какое максимальное (практическое) время отклика может быть. Насколько я знаю, нигде не определен максимум (TTL, но это прыжки, а не время). Когда я думаю об этом, я не уверен, что когда-либо видел время отклика пинга больше секунды или около того. Но, насколько я знаю, ничто не мешает удаленному хосту ждать (или быть действительно занятым) и не отправлять ответ в течение нескольких секунд.
В качестве простой точки данных я просто пинговал несколько серверов по всему миру, и худшее время, которое я мог найти, было 350 мс.
5 ответов
Мне интересно, какое максимальное (практическое) время отклика может быть. Насколько я знаю, нигде не определен максимум (TTL, но это прыжки, а не время).
Теоретически, время между эхо-запросом и ответом может быть долгим. С первого взгляда на RFC 1122 я не вижу здесь никаких формальных ограничений.
Однако на практике существует пороговое значение, после которого отсутствие ответа будет рассматриваться как отсутствие ответа вообще (тайм-аут). Конкретное значение зависит от реализации:
- В Windows это 4 секунды.
В iputils реализация ping кажется 10 секунд - не уверен, так как это не указано на странице руководства, но код говорит что-то вроде этого:
#define MAXWAIT 10 /* max seconds to wait for response */
Пинг-ответы длиннее, чем это, равносильны отсутствию ответов вообще. Так что я думаю, что можно с уверенностью предположить, что это практический предел.
Следует отметить одну вещь - я говорю только о ICMP. Если вы имели в виду какой-то другой "пинг" (например, задержка между запросами / ответами для конкретного приложения), он, вероятно, будет полностью отличаться.
Стоит отметить, что реализация RFC1149 достигла этого времени пинга:
64 bytes from 10.0.3.1: icmp_seq=0 ttl=255 time=6165731.1 ms
... что составляет около 102 минут. Я еще не видел больше времени отклика.
Максимальное желаемое время отклика эхо-запроса зависит от распространения приложения. VoIP может обрабатывать только 200 мс или около того (в зависимости от кодека), но большинство HTTP-приложений созданы для обработки гораздо большего. Вы также должны помнить, что поставщик услуг (или ваши сетевые администраторы) может реализовать QoS, который поместит ping в корзину с более низким приоритетом.
Когда я думаю об этом, я не уверен, что когда-либо видел время отклика пинга больше секунды или около того.
В Linux ping
Команда имеет интервал между эхо-запросами в 1 секунду. Если эхо-ответ не получен в этот интервал времени, пакет считается потерянным. Ручка -i команды ping может использоваться для увеличения интервала времени.
По умолчанию для Windows может быть 4 секунды, но это может быть дольше. Я знаю, что vbforums отказывается от трафика ICMP. Каждый тайм-аут занимал 10 секунд.
C:\Users\FredFlintstone>ping www.vbforums.com -w 10000 -n 2
Pinging www.vbforums.com [63.236.73.220] with 32 bytes of data:
Request timed out.
Request timed out.
Ping statistics for 63.236.73.220:
Packets: Sent = 2, Received = 0, Lost = 2 (100% loss),
Учитывая следующее
ПК --- RTRA --- RTRb --- RTRC --- RTRd --- Сервер
Время ответа зависит от времени прохождения между каждым переходом, при условии, что все каналы активны, все маршрутизаторы принимают / пересылают ICMP, а сервер принимает и отвечает на ICMP.
Если на сервере имеется код, который перехватывает трафик ICMP и помещает его в очередь ответов для последующей отправки, теоретически время ответа может быть любым. В этот момент ПК, отправляющий пинг, будет зависеть от своего внутреннего тайм-аута.
В целом MHO заключается в том, что пинги практически ничего не стоят. Это похоже на просмотр картинок "Где находится Уолдо" в течение 1 мс. каждый думает, что вы что-то знаете.
Пинги, как правило, с низким приоритетом трафика на магистрали. Последовательные эхо-запросы, и в этом отношении большая часть трафика и связанные ответы могут или не могут идти по тому же маршруту. Как я уже писал в своем комментарии выше, развлекательный пинг и ping-then-do приближают нас к тому дню, когда провайдер смотрит на свою статистику трафика и говорит: "Эй, я могу восстановить 2% (или больше) своей пропускной способности отключив ICMP".