1.
目标与验收范围定义
在开始测试前,明确验收目标:网络带宽(上行/下行)是否达到100Mbps标称值;延迟、抖动与丢包是否在可接受阈值内;长期稳定性与并发连接能力满足业务需求。
小分段:定义业务关键指标(KPI),例如平均延迟<50ms、丢包<0.1%、持续吞吐≥90Mbps等;列出测试时间窗口与责任人。
2.
测试前的必备条件与权限
确认具备对托管机房服务器的root/管理员权限、对端测试主机权限(可在内网或客户机房),以及交换机端口和防火墙策略的查看或协助权限。
小分段:准备好公网对端IP或本地测试机;确保运营商不会在测试时限速;提前预约机房工程师协助排查物理链路。
3.
测试环境与网络拓扑确认
记录服务器网络接口、交换机端口、链路类型(光纤/电口)、SFP型号、直连或通过上游汇聚设备情况。
小分段:使用命令查看接口信息(Linux:ip addr show / ethtool eth0 / ethtool -i eth0),确认双工与速率(1000/100/10 auto);记录MTU值(ip link show dev eth0)。
4.
基础连通性检查(先行)
先做简单连通性与DNS检查,排除基础问题。
小分段:执行 ping -c 10 <对端IP> 检查丢包与平均RTT;nslookup/ dig 检查域名解析是否正常;traceroute/ tracert 确认路径中是否有异常跳点。
5.
选择测试工具与安装
推荐工具:iperf3(吞吐)、ping(延迟/丢包)、mtr(路径+丢包)、tcpdump(抓包)、ethtool(链路能力)、vnstat/iftop/ntop(流量监控)。
小分段:在Linux上安装示例:apt-get update && apt-get install -y iperf3 mtr-tiny tcpdump ethtool;确认两端iperf3版本一致。
6.
基线吞吐测试(单连接)
在被测服务器上启动iperf3服务端:iperf3 -s;在测试端客户端运行:iperf3 -c <服务器IP> -t 60 -P 1 -R(-R用于反向测试)。
小分段:记录平均带宽、抖动与丢包;如果单连接无法达到目标,继续检查TCP窗口与网卡卸载。
7.
多流并发吞吐测试
百兆通常受并发流数影响,使用-P参数模拟并发:iperf3 -c <服务器IP> -t 120 -P 8。
小分段:从P=1、2、4、8、16逐步增加,记录吞吐随流数变化曲线,找到稳定达到或接近100Mbps的最小流数。
8.
双向与方向性验证
分别测试上行(服务器->客户端)和下行(客户端->服务器):用iperf3的-R或者在服务器和客户端互换角色跑测试。
小分段:注意托管机房往外方向(到互联网)与回流方向(到客户机房)的能力可能不同,分别评估并记录。
9.
长时稳定性与波动测试
进行长时测试以验证波动与抖动,例如iperf3 -c
-t 3600 -P 4记录1小时内带宽曲线;同时运行mtr -z -c 1000 <目标>每分钟检查路径丢包。
小分段:保存测试日志(iperf3 --logfile)、并绘制分钟级吞吐图,观察是否有间歇性掉速。
10.
延迟、丢包与抖动综合测试
使用ping -c 1000 -i 0.1 <目标>获取高密度延迟样本;用mtr收集路径中各跳的丢包与延迟;若需实时抖动测量,可使用iperf3的UDP模式:iperf3 -c -u -b 90M -t 60。
小分段:注意UDP测试需在对端允许UDP并设置合适带宽参数;记录最大/最小/平均/中位延迟与丢包率。
11.
MTU与分片测试
确认是否支持标准1500或需要更改为9000(jumbo frames):在两端设置相同MTU后测试吞吐。
小分段:修改示例:ip link set dev eth0 mtu 9000;之后重跑iperf3对比差异;若链路中间有设备不支持jumbo,则无法生效。
12.
网卡与系统参数优化检查
检查并调整TCP窗口与中断分配以达到更高吞吐:查看当前TCP缓冲区 sysctl net.core.rmem_max / net.core.wmem_max / net.ipv4.tcp_rmem / tcp_wmem;调整示例:sysctl -w net.core.rmem_max=16777216。
小分段:检查网卡卸载(ethtool -k eth0),若导致测试问题可临时关闭gro/tsc/tx/rx offload以排查。
13.
抓包定位问题
当出现丢包或重传时,用tcpdump在两端抓包:tcpdump -i eth0 host <对端IP> and tcp -w /tmp/capture.pcap,然后用Wireshark分析重传、RST、延迟重传等。
小分段:关注TCP三次握手时间、重传原因(dup ACK或SACK)、窗口缩小等信息以判断瓶颈在服务器、链路还是对端。
14.
交换机/端口与物理链路排查
与机房工程师核实交换机端口统计(errors, drops)、光模块(SFP)参数与链路光功率,查看是否有CRC或对齐错误。
小分段:若发现物理错误,要求更换光纤、SFP或重插表查;确认交换机端口没有被限速或配置了QoS限流策略。
15.
验收标准与报告模板
根据预先定义的KPI生成验收报告,内容包含测试时间、测试工具与版本、拓扑图、关键命令输出(iperf3日志、ping统计、mtr结果)、异常点与建议整改项。
小分段:示例验收标准:连续1小时平均吞吐≥90Mbps;丢包率≤0.1%;中位RTT≤50ms;若不达标,列明整改时限。
16.
整改建议与复测流程
如测试未通过,先定位是否属于机房侧(物理/端口/上游)或服务器侧(配置/驱动/参数),分别列出修复项并安排复测。
小分段:整改后复测需使用相同脚本与版本,保存新旧日志以便比较并形成最终验收记录。
17.
Q1:如果iperf3单连接无法达到100Mbps,我该怎么办?
回答:先尝试增加并发流数(-P 2/4/8)查看整体吞吐是否提升;检查TCP窗口大小(sysctl net.core.rmem_max/wmem_max 与 tcp_*),禁用或调整网卡卸载特性(ethtool -K eth0 gro off gso off rx off tx off)排查;若仍然低,抓包查重传并与机房确认上游是否限速。
18.
Q2:如何判定是链路质量问题还是服务器配置问题?
回答:通过在服务器和同机房另一台已知良好连接的机器之间互测可快速定位;若本机到机房内其它节点均良好,问题可能在公网或上游;同时抓包(tcpdump)查看是否有大量重传/错误,可判断为配置或驱动问题。
19.
Q3:验收报告中哪些数据最关键需要保存?
回答:保存完整的iperf3原始日志、ping/mtr输出、测试时的sysctl与ethtool输出、抓包文件(若有问题)以及测试拓扑截图;这些能作为后续争议或故障定位的证据。
来源:如何测试与验收百兆香港服务器托管的网络稳定性与吞吐能力