2015-03-05 4 views
1

Я пытаюсь показать, как задержки в очереди задерживаются со временем, поэтому я пинговаю свое назначение из своего источника при отправке трафика iperf udp из источника в пункт назначения. Но я заметил, что задержка, которую я вижу из пинга, сразу уменьшается на время iperf, чего я не ожидал. Может кто-нибудь объяснить, почему это происходит? Примечание: я до сих пор не изменил очередь или любого другого параметрПочему уменьшение задержки при запуске iperf с помощью udp?

Iperf трафика на источнике:

iperf -c destination -u -t 10 -b 10mb & 

выхода из пинга (обратите внимание на резкое уменьшение, когда начинается Iperf и снова увеличивается, когда Iperf заканчивается)

64 bytes from Destination-link-1 (10.10.2.2): icmp_req=12 ttl=63 time=1.17 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=13 ttl=63 time=1.16 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=14 ttl=63 time=1.16 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=15 ttl=63 time=1.22 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=16 ttl=63 time=0.770 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=17 ttl=63 time=0.480 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=18 ttl=63 time=0.472 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=19 ttl=63 time=0.530 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=20 ttl=63 time=0.521 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=21 ttl=63 time=0.515 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=22 ttl=63 time=0.585 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=23 ttl=63 time=0.445 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=24 ttl=63 time=0.450 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=25 ttl=63 time=0.514 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=26 ttl=63 time=0.630 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=27 ttl=63 time=0.966 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=28 ttl=63 time=1.09 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=29 ttl=63 time=1.30 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=30 ttl=63 time=0.984 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=31 ttl=63 time=0.908 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=32 ttl=63 time=1.02 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=33 ttl=63 time=1.28 ms 
64 bytes from Destination-link-1 (10.10.2.2): icmp_req=34 ttl=63 time=1.72 ms 

ответ

0

Одна из гипотез заключается в том, что работающий iperf постоянно поддерживает активный компонент вашей системы (например, NIC, CPU и т. Д.). Напротив, когда вы только запускаете ping, эти компоненты могут спать или иметь тенденцию к другим задачам. Пробуждение сетевого адаптера или прерывание ЦП для его обслуживания для обслуживания пингов может занять время, что приведет к чуть большему времени пинга.

Я видел это поведение при работе с разными интервалами между ними. По каналам 1 Гбит/с, sudo ping <ip> -i 0.01 -c 1000 (1000 пинов с интервалом 10 мс между пинами) дает среднее время пинга 0.235 мс. Я получаю аналогичные результаты с большими интервалами. Однако, на интервале 1 мс или меньше, я наблюдаю среднее время пинга 0.099 мс. Меньшие интервалы между пингом дают меньшее время ping, я считаю, по причине, описанной выше.