1.
准备工作与前提确认
- 确认测试来源与目标:例如国内机房 -> 日本 AWS(Tokyo)实例;确认是否需要走 CN2 专线或运营商提供的 CN2 路由。
- 收集业务特性:并发用户数、单用户平均带宽、峰值并发、会话持续时间、是否有大文件上传/下载或实时音视频。
2.
带宽估算基础公式与示例
- 基本公式:所需带宽(Mbps) = 平均每用户带宽(Mbps) × 同时在线用户数 × 冗余系数(1.2–1.5)。
- 示例:每用户 0.5Mbps,峰值并发 200 人,冗余 1.3 → 0.5×200×1.3=130Mbps,建议选择 ≥150Mbps 计划。
3.
选择测试工具与版本安装
- 推荐工具:iperf3(带宽/并发测量)、mtr(路由/丢包/延迟)、ping、curl/wrk(HTTP 并发)、speedtest-cli(参考)。
- 安装命令(Ubuntu):sudo apt update && sudo apt install iperf3 mtr curl -y;wrk 可从源码或包安装。
4.
搭建测试环境:发端与收端操作步骤
- 在日本 AWS 创建实例(Tokyo):选择支持 25Gb/s 或 10Gb/s 网络的实例类型(如 c5n/znx 视需求)。开通 Security Group:放行 iperf 端口 5201 和 HTTP 测试端口。
- 在国内测试机(或客户机房)准备同样工具,确保测试时间段非带宽受限时段。
5.
iperf3 基准测试实操流程
- 服务器端(日本实例)启动:iperf3 -s -p 5201 -D(后台);或不加 -D 观察实时。
- 客户端(国内)执行:iperf3 -c <服务器IP> -p 5201 -P 10 -t 60 -w 256k 记录平均带宽;其中 -P 并发流数,-t 测试秒数,重复 3–5 次取均值。
6.
链路质量检测:延迟、丢包与抖动
- 延迟与抖动:使用 ping -c 100 <服务器IP>,读取平均 RTT 与抖动(jitter)。
- 路由与丢包:mtr -r -c 100 <服务器IP>,观察每跳丢包是否在源头或中间发生;必要时使用 iperf3 -u 做 UDP 丢包测试并设置带宽限制。
7.
并发与业务层压力测试(HTTP/视频等)
- HTTP 并发:使用 wrk -t4 -c200 -d60s http://<服务器>/test 来模拟 200 并发请求,观察吞吐与 95/99 百分位延迟。
- 长时稳定性:做 1-2 小时的持续压测,监控实例网络带宽上限、CPU、socket 等资源,确认无突发瓶颈。
8.
测试数据记录与日志规范
- 每次测试记录:时间、测试命令、发端/收端公网 IP、测得平均/峰值带宽、丢包率、延迟百分位(p50/p95/p99)。
- 建议保存 iperf 输出到文件:iperf3 ... > result_20250601.txt,用表格整理多次测试结果便于对比。
9.
结果分析与带宽选型建议
- 汇总平均值并应用公式:取峰值并发×每用户峰值带宽×1.2 安全系数;若业务敏感实时性(语音/视频)再留 30% 余量。
- 若测得链路在高并发下丢包或 RTT 急升,应优先考虑走 CN2 或专线,或提升实例网络能力与 CDN 边缘分发。
10.
测试注意事项与调优点
- 避免误判:先排除实例限制(ENI/ENA、实例 EBS/网络 限制),使用官方推荐实例。
- TCP 参数调优:必要时调整 TCP 窗口(-w)、MTU、拥塞控制算法(例如 BBR)来改善高带宽高延迟链路表现。
11.
Q1:我如何确认是否需要走 CN2 路由?
11.1 问:如何确认是否需要走 CN2 路由?
11.2 答:通过 mtr/ping 多次测试比较走普通公网与运营商提供的 CN2 路由的 RTT、丢包与稳定性。若普通链路丢包高或 p95 延迟不达标,且业务对稳定性敏感,优先选择 CN2 或专线。
12.
Q2:iperf3 测试结果出现抖动或不稳定,如何排查?
12.1 问:iperf3 测试结果抖动大,怎么排查?
12.2 答:先确认实例类型网络上限、CPU 是否瓶颈;然后用单流/多流对比(-P),用 mtr 定位中间跳是否丢包,再做长时稳定性测试以排除瞬时波动。
13.
Q3:如何把测试结论转为采购带宽的决策?
13.1 问:如何把测试结论转为采购带宽建议?
13.2 答:取测试到的峰值并发带宽需求,乘以安全系数(1.2–1.5),并结合 SLA 要求与预算选择实际带宽档位;若跨境且敏感实时,优先采购带 CN2 支持或专线服务。
来源:选择日本 aws cn2前需要准备的带宽需求评估与测试方法