送给工作上总有客户办理家庭宽带用于办公然后卡,或者想了解自家fttr有多么优秀的朋友,或者找出路由器的极限是多少。
简单来说,这就像一次"压力测试":你在阿里云ECS上搭建一个服务端(用来接受连接),然后在你家里的Windows电脑上运行客户端(用来主动建立大量连接到服务端),通过观察能成功建立并稳定保持的连接数量,来判断你的互联网线路能承受的连接数上限。建立TCP连接后,不进行大数据流量传输,只保持连接活跃状态。这样每个连接只消耗极少的带宽(主要是TCP握手和保活包)
测试工具:选用 Python,可以作为一个非常方便的网络性能测试工具,它能很好地生成和控制大量的TCP连接,并且Windows和Linux都支持
服务端:阿里云ECS(Ubuntu 22.04),选用ECS抢占式服务器,配置拉高一些,测完就释放
客户端:你家里的Windows 11电脑,至少要一张百兆网卡,无线环境请近距离靠近路由器并5.8G连接
sudo apt update
sudo apt install python3-pip -y
pip3 install --user asyncio
python3 server.py
Windows客户端配置
安装Python:
从官网 https://python.org/downloads 下载Python 3.8+
下载python测试客户端脚本:
1、在ECS启动服务端:(上SSH然后执行)
python3 server.py
2、在Windows运行客户端:(拿掉其他上网设备)
cmd窗口
python client.py <你的ECS公网IP> 8888 3000
3000为连接数,请根据你自身宽带运营商情况预估数值,不同地区不同运营商的家庭连接数均有区别,这个数字可以自行放大,例如10000,最终测试结果能看到你家真实数值
3、逐步增加连接数测试:
python client.py <你的ECS公网IP> 8888 5000
python client.py <你的ECS公网IP> 8888 8000
python client.py <你的ECS公网IP> 8888 11000
在服务端,你可以实时监控:
# 查看当前连接数
ss -tn | grep :8888 | wc -l
注意:客户端测试的同时,FinalShell保持原窗口运行,再开新窗口登录这台ECS服务器,观察ECS服务器当前连接数
几乎零流量:只建立TCP连接,不传输业务数据
精确控制:可以精确控制要建立的连接数量
实时监控:服务端实时显示连接数变化
稳定性测试:保持连接一段时间,测试连接的稳定性