Я эмулирую сеть с помощью netem. Я написал скрипт, который изменяет сетевую задержку в соответствии с линейной функцией от 1 до 50 мс каждые 15 секунд (с нормальной дисперсией = 5%). Потеря пакетов составляет 1%.
Как может случиться так, что при использовании эхо-запроса между двумя машинами коэффициент потери пакетов будет следовать кривой задержки? Разве это не должно быть постоянным?
это команда ping:
sudo ping 192.168.0.1 -i 0.01 -w 1 -n -q
здесь график скорости потери пакетов во времени.
Более того, хотя я установил -c 100
, количество переданных пакетов чуть больше такого порога, а полученных пакетов - ровно 100. Почему? Тем не менее, на ping man он говорит:
-c счет : Остановить после отправки счетчика ECHO_REQUEST пакеты.
здесь график для пакета, переданного во времени
--- РЕДАКТИРОВАТЬ Я заметил, что если я установил потерю пакетов на 0%, это явление все еще присутствует. Таким образом, убытки связаны с задержкой, внесенной netem. Возможно, потерянные пакеты - это опоздавшие?