1. 指标列表:带宽(Gbps);包每秒(PPS)能力;并发连接数;丢包率/延迟;清洗(scrubbing)容量与延迟;SLA/可用性。
2. 优先级建议:对实时服务优先看延迟和PPS,对静态大流量看带宽与清洗容量。
1. 准备:在被测服务器上运行 iperf3 -s;在本地或测试机上运行 iperf3 -c <目标IP> -P 10 -t 60。
2. 观察:记录吞吐峰值,重复三次取中位,若提供商承诺“抗DDoS 100Gbps”,实际应接近且稳定。
1. 工具:使用 hping3 或 pktgen。示例:hping3 --flood -S -p 80 <目标IP> 用于压力测试(需授权)。
2. 统计:同时在目标机执行 tcpdump -i eth0 -nn -c 10000 查看到达包速率;用 ifstat 或 sar 监控网卡中断与CPU负载。
1. 测试并发:使用 wrk 或 tsung 模拟大量并发HTTP连接,记录 500/502 错误率。
2. 常用sysctl:在/etc/sysctl.conf加入并生效:net.core.somaxconn=65535;net.ipv4.tcp_max_syn_backlog=65536;net.ipv4.tcp_syncookies=1;net.core.netdev_max_backlog=250000;然后 sysctl -p。
1. 验证流程:与服务商约定一次清洗演练,在正常流量下触发模拟攻击(授权后)。
2. 监测点:记录从触发到流量被重定向到清洗中心的时间、清洗后合法流量恢复时间、清洗后丢包和延迟变化。
1. 检查:用 mtr/traceroute 比较不同地点到达路径是否进入 Anycast 节点;查看 AS 路由公告。
2. 验证步骤:在各地节点同时 traceroute 到目标IP,确认是否路由到最近清洗POP;咨询提供商POP数量与日本本地节点分布。
1. 栈:部署 Prometheus+Grafana,采集 netdata、node_exporter 的带宽、PPS、conntrack 使用量、CPU 中断。
2. 告警:设置阈值(PPS、conntrack接近上限、丢包)并做自动告警,定期导出 pcap 用于事后分析。
1. 合法性:所有压力测试必须书面授权,避免误伤他人网络。
2. 备份与回滚:在修改sysctl或iptables前保存当前配置(sysctl -a > before.sysctl),若故障用 sysctl -p before恢复。
Q: 面对不同业务如何选择关键指标?
A: 实时交互类优先低延迟与PPS,静态大文件优先带宽与清洗容量;同时关注SLA、清洗延迟与POP分布。
Q: 我如何确认服务商清洗真实有效?
A: 与服务商安排清洗演练,授权下用模拟攻击工具(如 hping3)发起攻击,测量切换延迟、清洗后丢包与延迟并保存流量抓包作为证据。
Q: 上线前必须调整哪些内核参数?
A: 建议设置 somaxconn、tcp_max_syn_backlog、tcp_syncookies=1、netdev_max_backlog、调整 conntrack 最大值并提升文件描述符限制(/etc/security/limits.conf)并验证在压力下无异常。