1) 目标:验证美国cn2服务器59的延迟、丢包、带宽与可用性;2) 准备:一台测试机(Linux),root权限或sudo;安装工具:ping,traceroute/mtr,iperf3,tcpdump,ethtool,curl。命令:sudo apt update && sudo apt install -y mtr iperf3 traceroute tcpdump ethtool curl
1) 在服务器上启动iperf3服务:ssh到服务器,运行:sudo iperf3 -s -D(后台);2) 在测试端确认时间同步:sudo apt install -y chrony && sudo systemctl enable --now chrony;3) 确认防火墙开放端口:sudo ufw allow 5201/tcp
1) 基础Ping:ping -c 100 -i 0.2 SERVER_IP,记录平均、最小、最大;2) 跳点分析:mtr -rwz -c 100 SERVER_IP,保存CSV:mtr -rwz -c 100 --report-csv SERVER_IP > mtr.csv;3) 分析:若单跳丢包高但后续稳定,可能是ICMP限速;关注最后几跳丢包与延迟抖动。
1) TCP traceroute(更贴合业务):traceroute -T -p 80 SERVER_IP;2) 使用公开Looking Glass:访问 bgp.he.net 或 ISP 的 looking glass,查询到达SERVER的AS路径;3) 若跨国段延迟异常,记录涉事AS并与带宽提供方沟通。
1) 单流测试:iperf3 -c SERVER_IP -t 60 -i 10;2) 并发流测试:iperf3 -c SERVER_IP -P 8 -t 60;3) 双向测试:在两端分别启动iperf3 -s与iperf3 -c,或使用--reverse选项:iperf3 -c SERVER_IP -R;4) 注意结果单位与重试,若远低于承诺带宽,抓包分析TCP窗口与重传:sudo tcpdump -i any host SERVER_IP -w cap.pcap
1) 查看网卡与开启卸载:sudo ethtool -k eth0;2) 关闭/开启卸载测试:sudo ethtool -K eth0 gso off gro off tso off(做对比);3) 调整TCP栈(临时生效):sudo sysctl -w net.ipv4.tcp_congestion_control=bbr && sudo sysctl -w net.core.rmem_max=67108864 net.core.wmem_max=67108864;4) MTU调整:sudo ip link set dev eth0 mtu 1500 或 9000(与运营商协商后设置)。
1) 部署Prometheus+node_exporter+blackbox_exporter,blackbox用于HTTP/TCP/ICMP探测,配置targets为SERVER_IP;2) 设置Grafana Dashboard并配置告警:延迟>200ms或丢包>1%触发告警;3) 合理SLA指标:记录30天可用率与平均修复时间,生成周报并保留原始mtr/iperf日志便于申诉。
答:通过多点测试判断来源:从不同地域(本地、云、同城机房)同时对服务器做mtr/iperf,如果各地到达某一跳(相同AS)开始出现问题,通常是运营商或国际链路;若仅某客户/端出现且同城其他节点正常,可能是机房交换或主机配置问题。结合Looking Glass与BGP路由信息可进一步定位。
答:优先抓取tcp流量tcpdump,分析重传、延迟与窗口:tcpdump -w cap.pcap host CLIENT_IP and port 80,然后用Wireshark查看TCP重传与SYN/ACK时序;同时评估中间网络是否存在队列(AQM、缓冲区),尝试调整TCP拥塞控制(BBR/Cubic)与NIC卸载设置进行对比测试。
答:建议建立多线出口与备份BGP策略、启用CN2 GIA直连优选路径、部署主动监控(黑盒探测+流量镜像)、定期做跨域链路健康检查并与上游运营商约定SLA与告警联动;同时在服务器端保持合理MTU、开启合适的TCP拥塞控制并记录基线数据以便回溯。
