1. 测评目的与总体要求
测试目标:评估新加坡电信CN2链路的实际吞吐量(TCP/UDP)与抖动(jitter)并记录可复现数据。
要求:可重复的命令行步骤、明确的记录模板、测试期间尽量排除干扰流量、记录测试时间与节点信息。
2. 测评前准备(设备与账号)
准备硬件:一台Linux或Windows(WSL)终端作为客户端,一台位于
新加坡CN2网络中的服务器(或云主机)作服务端。
必要账号:服务器root或sudo权限,能够安装iperf3、mtr、tcpdump等工具;具备控制路由器或交换机QoS的权限(若需)。
3. 软件工具与安装命令
工具清单:iperf3(吞吐量)、mtr(路径和丢包趋势)、ping(延迟与抖动)、tcpdump(抓包验证)。
安装示例(Ubuntu):sudo apt update && sudo apt install -y iperf3 mtr-tiny iputils-ping tcpdump。
4. 网络环境校验与基线测量
步骤:1) 从客户端ping到服务器:ping -c 10
,记录平均延迟和丢包。2) 使用mtr -r -c 100 查看每跳丢包与延迟分布。
目的:确认路径稳定、首次识别可能的瓶颈跳和路由变动。
5. iperf3 测试准备与常用参数说明
说明:iperf3 支持TCP/UDP测试,默认TCP。关键参数:-c 客户端模式,-s 服务端,-t 测试时长(秒),-P 并发流数,-u UDP模式,-b 设定带宽(UDP)。
建议:初次用-t 60保证稳定结果,-P 4模拟并发,UDP用-b 指定略高于预期带宽。
6. 在服务端启动 iperf3 服务
命令:在服务端执行:iperf3 -s -i 1。说明:-i 1 每秒输出统计,用于实时观察。
后台运行示例:nohup iperf3 -s -i 1 > /var/log/iperf3_server.log 2>&1 &,并记录进程ID。
7. 客户端执行TCP吞吐量测试(单向)
命令示例:iperf3 -c -t 60 -P 4 -i 1 > tcp_test_client.log。
记录项:每秒带宽、重传次数、最终汇总(sender/receiver),保存日志并截取关键行供后续分析。
8. 客户端执行UDP吞吐量与抖动测试
UDP命令示例:iperf3 -c -u -b 200M -t 60 -P 4 -i 1 > udp_test_client.log。
注意:iperf3 UDP会报告丢包与jitter(服务端与客户端均输出),根据丢包率判断是否达到线路极限,逐步调高-b直至丢包明显上升为止。
9. 精确测量抖动(jitter)与延迟分布
使用ping进行抖动观测:ping -c 1000 -i 0.01 > ping_jitter.log(1万毫秒分辨率取决于系统限制)。
分析:从ping日志计算每次延迟差值的标准差作为粗略jitter;或用iperf3 UDP输出中的jitter字段做参考。
10. 连续多时间段测试与时间同步
建议在不同时间段(工作时段/非工作时段)各执行3轮测试,记录测试开始时间(UTC)与服务器时钟(date)。
如果需要精确对比,启用NTP同步(sudo apt install -y ntp; sudo systemctl enable --now ntp)。
11. 抓包验证与深度分析
当发现异常(高丢包/抖动)时,使用tcpdump抓包:tcpdump -i eth0 host and udp -w jitter_test.pcap -c 100000。
导出到Wireshark检查序列、间隔、重传、MTU碎片等,确认是否为链路或主机端限速导致。
12. 数据记录模板与结果计算方法
记录表项:测试编号、时间(UTC)、客户端IP、服务端IP、协议(TCP/UDP)、-P 并发数、-b 带宽、平均吞吐、最大吞吐、丢包率、jitter(ms)、备注。
计算建议:TCP取receiver吞吐为最终值;UDP以server端接收率与丢包率并列,jitter取iperf3或ping的标准差。
13. 常见问题与排错要点
排错清单:1) 若TCP低吞吐,检查TCP窗口(sysctl net.ipv4.tcp_rmem/tcp_wmem)与NIC offload。2) 若UDP高丢包,确认中间链路限速或防火墙策略。3) 路由变动用mtr长时间追踪。
14. 结论与报告编写要点
结论写法:按测试目的先给出结论摘要(比如峰值吞吐、平均抖动区间、异常时段),随后附上原始日志片段与抓包证据,提出优化建议(调整MTU、开启TFO、调整QoS)。
报告要求:附上命令清单、环境说明和可复现步骤。
15. 问:如何用iperf3精确测量CN2链路的峰值吞吐?
答:在服务端启动iperf3 -s -i 1,客户端使用iperf3 -c -t 120 -P 8(或更多并发)逐步增加并发和-b(UDP)直到丢包或TCP重传明显,记录receiver端稳定峰值并在不同时段复测以确认稳定性。
16. 问:抖动(jitter)怎么可靠量化,使用哪种工具最合适?
答:最直接是iperf3的UDP模式会报告jitter,同时用大量样本的ping(短间隔)计算延迟的标准差作为补充;必要时抓包并在Wireshark用IO图或RTT差分精确计算抖动分布。
17. 问:测试过程中如何避免误判由于本地机器限制造成的瓶颈?
答:检查本地网卡速率、CPU占用、NIC中断和offload设置;在高带宽测试时用多核并发(-P)并监控top、iftop或nload,必要时换更高性能机器或直连光纤接口以排除本地瓶颈。
来源:新加坡电信cn2 网络测评 吞吐量与抖动数据实录