如何全面测试VPS的网络性能?说是CN2 GIA 专门优化过,到底速度怎么样?
现在购买一台 VPS 已经是很容易的事情,到处都是几美金一个月的,甚至几美金一年的VPS. 服务的特色也从当初的全SSD, 大内存等等升级到针对国内线路专门优化等等,比如CN2 或者 GIA, 可真正的表现如何呢?
首先,我们来简单分析一下影响VPS的网络性能的几个关键因素。
- 路由,现在互联网基于包转发传送模式,所有的网络数据包都是通过一个节点接一个节点有如接力一般传递到目的地。所以,你的信息发出去,其实只有一个目的地址,路上经过哪里,完全看经过的网络节点的心情了。它们可以帮你直接送到目的地,也可以绕大半个地球才送到目的地。比如下面两张图的结果就是天壤之别。绕得越远,往往延迟就越大。用户的体验就是做了一个操作,可能要等待半秒钟,甚至一两秒钟才有反应,那就是延迟。
第一张图是从内蒙古电信到香港谷歌云的路由,可以看到,所有流量先接入到广州的电信节点,然后直接到达了香港谷歌云的机房,整个过程延迟仅70毫秒
第二张图是天津联通到同样是香港谷歌云的路由,结果先跑到美国西海岸绕了一圈。然后才到香港,整个过程延迟将近500毫秒
- 基于路由的因素影响下,对于用户最直观的感受就是带宽了,这个直接决定了下载速度,或者打开整个网页的耗时。很简单的逻辑,整个路由上最窄的那部分带宽就是最终带宽的结果。比如上图中,可能从美国西海岸到香港的网速可以达到1Gbps, 但是从天津联通到美国西海岸网速最高3Mbps, 那用户能够享受到的速度最高只能是3Mbps了。所以,一般路由越简单直接,网速可能就越快。但是,实际情况是,有些路由上的流量可能比较贵,所以运营商会进行限速。比如从大陆去香港的这段,流量往往比较贵,所以经常会有网络提供商主动限制速度。所以还要用专门的工具来测试网速。
本文就是介绍对VPS网络性能,尤其是针对国内访问的性能进行综合测试的方法。将要介绍到几个测试工具:
- 服务器端测试路由的脚本,用来测试从目标VPS访问国内运营商的路由,往往也被称为回程路由。
- 服务器端测试连接到国内不同地点及运营商速度的脚本,测试服务器到国内不同运营商的上传和下载速度。
- 网页端的 TraceRoute 工具,用来测试从国内到目标VPS的路由
- 网页端测试连接速度以及连接可用性的工具,用来测试从国内各个地区的不同运营商到目标VPS的连接可用性,和打开页面的最短时间。
有了这些工具,你就可以清楚的知道一款VPS的真实网络性能,细致到针对不同运营商的性能都能测得非常清楚了。
既然都已经有了VPS了,那如何部署VPS就是初级课程了,这里就不提及了。直接上脚本了。
wget -qO- git.io/besttrace | bash
这里要用到 wget 工具,一般VPS的Linux系统都默认会安装这个工具,如果没有的话也没关系
输入下面的命令安装,Debian 或者 Ubuntu 用下面的命令:
sudo apt install wget
CentOS 用下面的命令:
sudo yum install wget
结果一般大致如下:
厦门电信
traceroute to 117.28.254.129 (117.28.254.129), 30 hops max, 60 byte packets
1 *
2 *
3 *
4 59.43.182.102 173.58 ms http: error China Guangdong Guangzhou ChinaTelecom
5 59.43.187.109 146.24 ms http: error China Guangdong Guangzhou ChinaTelecom
6 59.43.130.121 154.69 ms * China Guangdong Guangzhou ChinaTelecom
7 59.43.98.206 156.56 ms http: error China Fujian Xiamen ChinaTelecom
8 27.159.81.254 151.24 ms http: error China Fujian Xiamen ChinaTelecom
9 27.159.81.210 163.34 ms http: error China Fujian Xiamen ChinaTelecom
10 117.25.141.110 168.25 ms AS133775 China Fujian Xiamen ChinaTelecom
11 *
12 117.28.254.129 175.54 ms AS133775 China Fujian Xiamen ChinaTelecom
上面这个是GigsGigsCloud 的洛杉矶线路,这个线路看起来似乎不错,因为你能看到大量的 59.43开头的IP节点,一般被认为是该线路针对电信CN2 GIA 精品网络优化过的,即使在晚上高峰期,速度也会有保证。
厦门电信
traceroute to 117.28.254.129 (117.28.254.129), 30 hops max, 60 byte packets
1 *
2 vl199-ds1-j2-yd39.sjc1.choopa.net (45.63.81.1) 18.51 ms AS20473 United States California San Jose choopa.com
3 *
4 xe-0-0-14-2.a00.snjsca04.us.bb.gin.ntt.net (129.250.207.197) 0.66 ms AS2914 United States California San Jose ntt.com
5 ae-1.r02.snjsca04.us.bb.gin.ntt.net (129.250.3.59) 0.91 ms AS2914 United States California San Jose ntt.com
6 ae-11.r23.snjsca04.us.bb.gin.ntt.net (129.250.6.118) 3.34 ms AS2914 United States California San Jose ntt.com
7 ae-21.r30.tokyjp05.jp.bb.gin.ntt.net (129.250.5.77) 107.63 ms AS2914 Japan Tokyo ntt.com
8 ae-2.r00.tokyjp08.jp.bb.gin.ntt.net (129.250.6.127) 107.88 ms AS2914 Japan Tokyo ntt.com
9 ae-1.a01.tokyjp03.jp.bb.gin.ntt.net (129.250.2.250) 108.60 ms AS2914 Japan Tokyo ntt.com
10 xe-0-0-29-0.a01.tokyjp03.jp.ce.gin.ntt.net (117.103.177.106) 166.81 ms AS2914 Japan Tokyo ntt.com
11 59.43.186.185 182.54 ms * China Shanghai ChinaTelecom
12 *
13 59.43.138.45 189.46 ms * China Shanghai ChinaTelecom
14 59.43.17.202 187.96 ms * China Fujian Fuzhou ChinaTelecom
15 59.43.100.54 195.54 ms * China Fujian Xiamen ChinaTelecom
16 27.159.81.254 155.54 ms AS133775 China Fujian Xiamen ChinaTelecom
17 27.159.81.210 170.84 ms AS133775 China Fujian Xiamen ChinaTelecom
18 117.25.141.110 164.26 ms AS133775 China Fujian Xiamen ChinaTelecom
19 *
20 117.28.254.129 192.15 ms AS133775 China Fujian Xiamen ChinaTelecom
上面这个是 Vultr Silicon Valley的节点到厦门电信的结果,可以看到,从美国西海岸,先要绕道日本,然后到上海电信,最后才能落地到厦门,估计厦门电信的用户体验不会很好。
而这个路由检测的方向是从VPS向国内的,所以,一般也被认为是回程路由,而一般认为,这个对客户的体验影响是比去程路由要大的。
下面的是测试去程路由的网页工具。
https://tools.ipip.net/tracer...
这个网站提供了大量的测试节点,包括从南到北,从电信,移动到联通,都涵盖了。
选择你要测试的国内节点,然后填入你的VPS的IP地址,点击 查看,就可以获取去程路由了。
上图的结果来自anyNode的美国西海岸节点,可以看到,尽管是从沈阳铁通出发,这个网络在跨大洋的时候还是使用了电信的CN2 GIA线路。理论讲用户体验应该还不错。
点击查看地图,还可以更直观的查看结果:
当然,仅仅线路好不等于最终的下载速度就够快,要知道,想撸油管1080P至少要有3Mbps的带宽。下面就是测网速的脚本
wget https://raw.githubusercontent.com/FunctionClub/ZBench/master/ZBench-CN.sh bash ZBench-CN.sh
这个测速基本上能拿到非常有说服力的结果,即该VPS到国内各地不同运营商的上传和下载速度。这里的长传速度,对应用户的应该就是下载速度,下图是臭名昭著的080host的测试结果。
从上图可以看到,这家提供商的服务器虽然在香港,估计线路不错,所以延迟测试很好,但是网速却非常差,从国内下载速度基本都在4Mbps以下,很明确的应该是故意的限速。这样的单用户看1080p油管估计都够呛。
而下图的结果来自饱受好评的香港阿里云,速度明显就好太多了,尤其是电信用户和联通用户的表现。
原版的脚本能测的节点很有限,你可以根据自己的需求修改脚本:
nano ZBench-CN.sh
在这一部分添加自己想要测试的节点:
至于节点号码ID,可以到下面的网站查到
https://www.speedtestserver.com/
搜索 China 就能找到所有国内的节点。
最后一个工具可以用来测试用VPS建立网站的访问速度。
在这里直接输入你的VPS地址是不行的,因为该VPS还没有能力处理http的请求,需要在服务器端安装一个nginx:
sudo apt install nginx reboot
上面是 Debian/Ubuntu的命令,如果是CentOS:
sudo yum install nginx reboot
这样你在前面的网站里输入自己的VPS IP,就能看到http访问的响应时间了。有时候担心自己的VPS在国内无法访问,也可以用这个测试一下。
以上就是一些常见的测试VPS网络性能的网站或者脚本的使用方法,希望大家都能找到适合自己的高性价比的VPS.
当然如果你嫌麻烦的话,也可以试试把这些资源都整合好,根据你使用的运营商自行选择线路的现成工具 "梯子Z" 免费试用