1. 准备阶段:确定测试目标与供应商清单
列出要评测的供应商(至少3家),记录套餐名称、带宽上限说明、价格、节点IP或机房信息。
小分段:准备测试目标(延迟、丢包、抖动、带宽峰值和稳定持续吞吐)。
小分段:为公平比较,选同样地域(新加坡)同等购买周期与付款项。
2. 测试环境搭建:本地与远端工具安装
在本地测试机和每台供应商服务器都安装必要工具:iperf3、mtr、speedtest-cli、ping、tcpdump。
小分段:Linux下安装命令示例:apt-get update && apt-get install -y iperf3 mtr tcpdump python3-pip;pip3 install speedtest-cli。
小分段:确保时钟同步(ntp/chrony),避免时间差影响日志时间戳。
3. 基本单次测试步骤(手动)
步骤1:在服务器端启动iperf3服务:iperf3 -s -p 5201 &
步骤2:在本地执行带宽测试:iperf3 -c <服务器IP> -p 5201 -t 60 -i 10 --logfile test_serverA.csv
步骤3:记录ping与mtr结果:ping -c 50 <服务器IP>;mtr -r -c 100 <服务器IP>。
小分段:每台服务器至少重复3次并取中位数。
4. 自动化脚本与定时采样
编写bash脚本循环调用iperf3/ping/speedtest-cli并输出CSV(示例:每小时跑一次,跑24小时)。
小分段:示例cron:0 * * * * /root/sg_test/run_all.sh >> /var/log/sg_test.log 2>&1。
小分段:脚本中记录时间、上/下行带宽、延迟、丢包率与目标IP。
5. 并发与端口测试(模拟实际流量)
使用iperf3并发连接(-P 参数)测试TCP并发性能:iperf3 -c IP -P 8 -t 60。
小分段:测试不同端口(80/443/22/随机高端口)以观察运营商QoS或端口限速。
小分段:用wrk或siege模拟HTTP并发请求,检测应用场景性能。
6. 长时间稳定性与故障捕获
运行24-72小时持续测试,使用tcpdump抓包在出现丢包或高延迟时分析。
小分段:tcpdump -w dump.pcap host <服务器IP> and (tcp or icmp);通过Wireshark分析RTO、重传等。
小分段:记录丢包时间点与业务影响(断连、慢速)。
7. 日志整理与结果可视化
将采集CSV导入Excel或用Python(pandas+matplotlib)绘图,分别绘制带宽时间序列、延迟分布和丢包率曲线。
小分段:关键指标:平均带宽、95百分位带宽、平均延迟、最大抖动、丢包峰值。
小分段:生成报告说明测试环境与结论。
8. 判断稳定性与速度的客观标准
定义可量化阈值:例如平均延迟< 30ms、丢包率<0.5%、95%带宽>=标称带宽的80%视为优秀。
小分段:结合价格、客服响应与SLA综合评分,形成排序。
9. 实际操作小贴士与陷阱
避免在高峰期仅做一次测试;VPN或CDN会影响测试结果,必要时对比直连与经CDN。
小分段:注意供应商不限量并不等于无限带宽,查看流量管理政策(throttling/burst)。
小分段:多节点对比可检测到机房互联质量差异。
10. 常见问题一:如何保证测试公平性?
保持相同测试时段、相同工具与参数,尽量同时对各台服务器并行执行脚本,记录外部网络变化(如本地出口带宽占用)。
11. 常见问题二:长期监控需要哪些资源?
建议至少一台稳定的监控主机、1个日志存储(如ELK/Prometheus+Grafana),以及cron调度与报警规则(延迟/丢包阈值告警)。
12. 常见问题三:碰到偶发高丢包怎么办?
首先回放tcpdump确认是链路问题还是服务器端负载;如果链路问题,联系供应商并提供mtr/ping/pcap作为证据,要求查路由或口头说明。
来源:对比评测多家供应商不限量新加坡服务器的稳定性与速度