要复现PqS台湾CN2测评,首要准备是明确测试目标并搭建相同的网络拓扑与软硬件环境。包括:选择位于台湾的测试节点(VPS或物理服务器)、选择国内出口承载CN2链路的网络接入、统一操作系统版本与内核、同步时钟(NTP)以及固定的MTU与网卡驱动配置。
检查点应包括:确认台湾端节点的公网IP与带宽配额、国内出发端的ISP是否走CN2(可通过Looking Glass或运营商确认)、确保两端时间同步、以及记录测试时段(避免高峰影响)。
建议将测试机系统、内核参数(如net.ipv4.tcp_*)、MTU、以及网卡的offload设置记录成脚本以便复现。常见命令有ethtool、sysctl持久化配置。
如果需严格复现,请保留并分享原始配置与日志,避免使用路由变更敏感的跨ASN路径。
验证所用链路是否为CN2需要使用多种手段:路由追踪(traceroute / mtr)查看中间跳跃信息、查询BGP路由与AS路径、使用运营商的Looking Glass或路由查询工具确认出口路径中是否包含CN2/GIA相关节点。
使用traceroute -n / mtr -n可以快速看到IP跳数与延迟;使用bgp.he.net或各ISP的Looking Glass可查看BGP路径;结合WHOIS或AS查询确认涉及的AS号即可初步判断是否为CN2。
推荐命令:traceroute -n 目标IP、mtr -r -c 100 目标IP、并记录每跳RTT分布。若能从ISP提供的文档或线路说明确认“CN2/GIA”即可更有把握。
同一路径很难保证长期一致,复现时记录测试时间与路由快照(traceroute输出)非常关键,以便对比时判断路由变化对结果的影响。
核心工具包括:iperf3(吞吐与并发)、ping/psping(时延与丢包)、mtr/traceroute(路径与抖动分布)、tcpdump/wireshark(包级抓取)。保证可比性的关键在于固定参数,如报文大小、并发流数、测试时长与采样间隔。
例如使用iperf3:iperf3 -c SERVER -t 60 -P 8 -i 1 -w 256K;使用ping:ping -c 200 -s 64 SERVER;使用mtr:mtr -r -c 1000 SERVER。将这些参数写入脚本便于重复执行。
所有测试端均需开启时间同步(ntpd或chrony),并保存原始输出(文本与pcap)。对吞吐测量建议多次取中位数与置信区间,而非单次峰值。
定义并记录PqS要素(如Packet quality score、延迟分布、丢包率、抖动)计算方法,使不同测试者能用相同公式得出一致结果。
记录要做到可追溯:保存原始日志(iperf3输出、ping/mtr结果、traceroute快照)、抓包文件(pcap)、系统与网络配置快照(sysctl、ethtool、路由表)、以及测试脚本与时间戳。使用标准化格式(CSV/JSON)导出关键指标以利后续分析。
先用脚本提取关键数值(延迟分位数、丢包率、吞吐中位数);再绘制时间序列与CDF分布;对异常点结合traceroute与pcap回溯,找出丢包或延迟突增的跳点。
可用tcpdump -w capture.pcap过滤目标IP;用tshark或Wireshark解析;用python/pandas处理CSV并生成图表;用iperf3-json功能直接输出结构化数据。
建议将所有文件打包成复现包(脚本、配置、原始日志、pcap、结果CSV)并附上执行顺序与环境说明,方便第三方复现。
常见陷阱包括:未禁用网卡硬件加速导致测量偏差、不同MTU引起分片与性能差异、路由在测试过程中改变、测试时间恰逢网络高峰或维护期。优化建议是提前做小规模预跑、固定并记录环境变量、并多次复测取稳定统计结果。
建议在Linux上临时关闭TCP拥塞控制变更、关闭GSO/TSO/LRO(ethtool -K eth0 tso off gso off lro off)、固定TCP窗口与缓冲区(sysctl net.ipv4.tcp_rmem/tcp_wmem),并记录这些改动。
采用多点并发测量避免单次抖动误判;设置合理测试间隔与恢复时间,避免探测本身影响链路;在不同时段多次采样以估计波动范围。
所有改动都应可回退、可复用并记录版本号(OS、内核、工具版本),这样别人根据你的复现包能尽可能得到相近的PqS台湾CN2测评结果。