2015-04-14 2 views
0

Я использую веб-сервер в localhost:8080, и я пытаюсь использовать dummynet (ipfw) для имитации латентности и низкой пропускной способности для этого сервера, но почему-то я не могу его получить работать.Как имитировать пропускную способность и задержку в localhost с dummynet (ipfw)

Когда я использую команду

sudo ipfw add pipe 1 all from any to any 
sudo ipfw pipe 1 config bw 400Kbit/s delay 100ms 

, а затем свистеть Localhost

ping localhost 

я получаю эти результаты:

PING localhost (127.0.0.1): 56 data bytes 
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=686.512 ms 
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=848.309 ms 
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=409.890 ms 
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=410.988 ms 
64 bytes from 127.0.0.1: icmp_seq=4 ttl=64 time=424.014 ms 
64 bytes from 127.0.0.1: icmp_seq=5 ttl=64 time=411.002 ms 
64 bytes from 127.0.0.1: icmp_seq=6 ttl=64 time=409.175 ms 
64 bytes from 127.0.0.1: icmp_seq=7 ttl=64 time=417.517 ms 

мои проблемы:

  1. Почему время кругового отключения пинга (~ 400 мс) примерно в 4 раза больше, чем моя указанная задержка (100 мс)

  2. Ограничение пропускной способности также не работает. При попытке загрузить тестовый файл 6Mb с адреса http://localhost:8080/Testfile в Chrome, я получаю файл сразу, а не в моей желаемой скорости

ответ

0

Не могу ответить # 1, но для # 2 - вы можете иметь четкие результаты тестирования вашей загрузки с другого компьютера в вашей сети.

Вы установили драйверы dummynet для вашей сетевой карты. Моя теория заключается в том, что ваш браузер обращается к локальному хосту, он может обходить эту сетевую карту (или крючки, в которых dummynet вводит латентность?)

В принципе, я не смог получить dummynet, чтобы ввести латентность на что-либо на тот же сервер. Например, у меня есть две службы, и они мгновенно общаются друг с другом. Все остальное на другой машине получает латентность.

Вы можете попробовать Fiddler - http://helephant.com/2012/07/11/simulating-network-latency-with-fiddler/ - который, как представляется, также обеспечивает латентность на локальном хосте.

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

  • Нет связанных вопросов^_^