1.
准备工作与测试环境说明
- 准备两台测试节点:一台走 CN2(例如中国电信 CN2 GIA/GT),一台走常规 BGP(香港多家提供商),节点要在同一机房或同一城市以减少本地差异。
- 测试端:本地电脑或额外 VPS(Linux 系统优先)用于发起测试。
- 工具:ping, traceroute/tracert, mtr, iperf3, speedtest-cli, curl/wget, tcpdump(可选),以及记录用的 CSV/Excel。
2.
验证路由类型(确认是否真为 CN2 或 BGP)
- 使用 traceroute 查看路由走向:Linux: traceroute -n <目标IP>;Windows: tracert -d <目标IP>。
- 观察中间跳是否出现电信专属 ASN 或 CN2 节点(常见标识如 CHINA TELECOM、CN2)。记录 ASN(可用 whois 命令 whois
)。
3.
基础延迟与丢包测试(10min 采样)
- 命令:ping -c 600 -i 1 <目标IP>(连续 10 分钟,每秒一次)。
- 记录平均延迟、最小、最大、丢包率。建议对多个香港节点(如 HKT、PCCW、香港电讯、CTHK 等)分别测试并保存 CSV。
- 用 mtr -r -c 100 <目标IP> 获取逐跳统计,重点看丢包在哪一段产生。
4.
路由稳定性与路径抖动(24 小时采样)
- 使用定时任务(cron)每 5 分钟跑一次 traceroute 或 mtr,并把输出追加到文件:*/5 * * * * /usr/bin/mtr -r -c 10 <目标IP> >> /root/mtr_log.txt。
- 分析路径是否经常改变、跳数波动和中间节点延迟抖动,若 CN2 路径更稳定通常波动更小。
5.
带宽与吞吐量测试(TCP/UDP)
- 搭建或使用远端 iperf3 服务器:iperf3 -s。
- 客户端测试:iperf3 -c <目标IP> -P 4 -t 60 测试并发流,记录吞吐率(Mbps)。多次测试并在不同时间段(高峰/非高峰)重复。
- 若想测试 UDP:iperf3 -c <目标IP> -u -b 100M -t 60,观察丢包与延迟。
6.
真实应用场景测试(HTTP/游戏/视频)
- 下载测试:curl -o /dev/null -w "%{time_starttransfer} %{speed_download}\n" <大文件URL>,测首字节时间与平均速率。
- 游戏延迟:用游戏自带 ping 或第三方工具(如 pingplotter)测到游戏服务器延迟。
- 视频播放:用不同清晰度播放同一视频,观察缓冲次数与启动延迟。
7.
数据记录与统计分析方法
- 每次测试输出统一格式 CSV:时间, 节点, 类型(CN2/BGP), 平均延迟, 丢包率, 最大带宽, 路由变化数。
- 用 Excel 或 Python pandas 汇总并绘图(延迟时间序列、箱线图、CDF 分布),对比两条链路的中位数、95% 分位等关键指标。
8.
判定优劣的标准(如何看“哪个好”)
- 延迟:以中位数和95%分位为准,低且稳定优先。
- 丢包:持续低丢包 (<0.5%) 明显优于偶发丢包。
- 带宽/吞吐:相同时间段下吞吐高且稳定为好。
- 路由稳定性与故障恢复:路径稳定、少切换、快速恢复者更优。
9.
常见误区与注意事项
- 单次测试不可代表全部:必须多时段、多目标、多次采样。
- 节点位置差异:尽量保证测试节点地理/机房接入相近,否则结果受本地链路影响。
- ICMP 与 TCP 表现差异:ping 丢包不等于 TCP 传输丢包,需用 iperf/tcp 测试真实流量。
10.
问题:CN2 一定比 BGP 好吗?
10.1 答:不一定。CN2(中国电信 CN2 GIA)在通往中国大陆的骨干路由上通常有更优的时延和丢包控制,但实际效果受对端机房、出口链路、ISP 对等关系及时段影响。通过上述实验方法能判断在你关心的目标和时间段内哪条线路更稳定。
11.
问题:我没有远端控制权如何测出真实差异?
11.1 答:可以用第三方公共测速节点和多家 CDN/镜像站做比较(例如 speedtest 节点、各大云商香港节点)。同时请求提供商给出路由告警或做临时对比测试,或使用 WebRTC/p2p 测试工具从浏览器发起多点测试。
12.
问题:测试结果如何快速落地决策?
12.1 答:按优先级排序:如果你重视稳定低延迟(如游戏/实时语音),优先选择延迟与丢包最小且 95% 分位稳定的线路;如果重视大文件传输,重点看吞吐与并发能力。结合成本与 SLA 作最终选择。
来源:测试方法推荐 看清香港cn2和香港bgp哪个好 的真实表现