
Используя MTR (используя TCP, а не ICMP), я постоянно вижу потерю пакетов на одном маршрутизаторе, который выполняет обычное ограничение ICMP-флуда. UDP делает то же самое — я все еще вижу потерю.
Однако при использовании других инструментов, например TCPing.exe, hping3, PRTG QOS, я редко вижу потери (за исключением обычных потерь ICMP).
Чем можно объяснить тот факт, что MTR постоянно показывает результаты, отличающиеся от результатов других инструментов?
Переход 2 — маршрутизатор Cisco с ограничением потока ICMP: и посмотрите на время мс в MTR:
mtr -P 445 -T -rn 172.31.xx.5
Start: 2020-09-02T11:54:26+0800
HOST: xxxx Loss% Snt Last Avg Best Wrst StDev
1.|-- 172.20.x.254 0.0% 10 0.6 0.7 0.5 1.9 0.4
2.|-- 172.18.x.239 10.0% 10 7014. 3339. 0.2 7018. 3506.6
3.|-- 172.31.x.32 0.0% 10 4.3 2.4 2.0 4.3 0.7
4.|-- 172.18.x.211 0.0% 10 2.4 2.5 2.4 2.6 0.0
5.|-- 172.31.x.5 0.0% 10 81.4 81.7 81.4 82.5 0.4
хпинг:
sudo hping3 -q --fast -n -c 100 172.31.x.5 -p 445 -T
HPING 172.31.x.5 (ens160 172.31.x.5): NO FLAGS are set, 40 headers + 0 data bytes
hop=1 TTL 0 during transit from ip=172.20.x.254
hop=1 hoprtt=0.9 ms
hop=2 TTL 0 during transit from ip=172.18.x.239
hop=2 hoprtt=0.8 ms
hop=3 TTL 0 during transit from ip=172.31.x.32
hop=3 hoprtt=2.8 ms
hop=4 TTL 0 during transit from ip=172.18.x.211
hop=4 hoprtt=2.8 ms
--- 172.31.x.5 hping statistic ---
100 packets transmitted, 100 packets received, 0% packet loss
round-trip min/avg/max = 0.8/78.7/86.4 ms
TCPing.exe:
./tcping -i .1 -p 445 -n 50 172.31.x.5
Probing 172.31.x.5:445/tcp - Port is open - time=81.423ms
Probing 172.31.x.5:445/tcp - Port is open - time=81.375ms
Probing 172.31.x.5:445/tcp - Port is open - time=81.246ms
Ping statistics for 172.31.x.5:445
50 probes sent.
50 successful, 0 failed. (0.00% fail)
Approximate trip times in milli-seconds:
Minimum = 81.246ms, Maximum = 85.690ms, Average = 81.628ms
решение1
Не уверен насчет других инструментов, которые вы использовали, но mtr при использовании TCP отправляет пакет TCP SYN в пункт назначения и увеличивает TTL с 1 до тех пор, пока он не достигнет пункта назначения. Таким образом, маршрутизаторы на пути все еще отправляют обратно ICMP типа 11 - превышено время жизни, когда они являются теми, где пакет достигает TTL 0. Это может потенциально объяснить воспринимаемую потерю на маршрутизаторе, если на нем действовала политика плоскости управления.
Если вам интересно, вы можете немного почитать о контроле плоскости управления здесь:https://nwmichl.net/2021/02/03/coping-with-copp-why-icmp-drops-happen/