本文摘自PHP中文网,作者坏嘻嘻,侵删。
本篇文章给大家带来的内容是关于如何使用 iPerf 测试并排查 UDP 丢包问题,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。使用 iPerf 测试并排查 UDP 丢包问题
现象描述
使用高速通道打通同一个地域(Region)下的两台 VPC 网络类型的 ECS 实例后,通过 iPerf 测试两台实例内网之间 UDP 丢包率,测试带宽达到 50 Mbps 以上时出现了丢包现象,且随着带宽的增加,丢包率出现增长趋势。如下图:
问题分析
假设两台网络类型的 ECS 实例的私有 IP 为 VPC ECS A(192.168.104.235) 与 ECS B(10.182.83.13),并用 Netcat(NC)监听并发送 UDP 数据封包,则网络类型的 ECS 实例 A 与实例 B 通信链路图如下:
其数据流走向为:
1 |
|
我们需要对其链路进行排查分析,找出丢包的最终原因。
解决方法
注意:由于只看到了源 Netcat (即 NC 1) 和目的 Netcat (即 NC 2) 之前的通信,抓包排查要避免误区,即随意判断是 Netcat (NC) 之间的直接通信丢包。
排查时会发现源端 eth0 的抓包发给了 VGW,但是在目的端抓包发现外壳封装了目的 NC 2 IP,如示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
确认数据包通过 VGW 后,开始统计抓包信息:
相关阅读 >>
使用installcloudassistant为一台或多台实例安装云助手客户端
更多相关阅读请进入《Linux》频道 >>