VPS评测示范

现在市面上的 VPS 评测大多就是几张去程回程图,打上 aff 链接,恰饭恰得也敷衍了事,这篇文章俺就教教那些 affman 怎么优雅地恰饭!
借用朋友的一个 VPS 来评测一下,主要从线路、性能、价格、消费者角度、affman 视角等方面分析一下,希望此文能作为一个评测 VPS 的范例。废话不多说,开讲。

概览

首先还是请出秋水的 bench.sh 脚本,这个脚本可以查看 Linux 系统信息,还可以测试网络带宽及硬盘读写速率。

wget -qO- bench.sh | bash

运行后如图:

vpstest

上图第一部分就是 Linux 的详细信息,可以看到 CPU 型号、4核心、内存4G、硬盘20G、虚拟方式 KVM、ColoCrossing机房,机房位置亚特兰大等信息。

第二部分也就是硬盘读写速率,硬盘一般分为 HHD、SSD、NVMe 三类, 正常 SSD 硬盘的 IO 一般在 300MB/S 左右,差一点 200MB/S 左右,100MB/S 以下这种的就是石头盘了,没法用。

第三部分就是上传下载速率了,这个可以看出 VPS 的带宽,国内电信商上传下载的速率,CU 表示中国联通,CT 指的是中国电信,其实俺的这个 VPS 是 10G 口的,但是 Speed 还跑不满G口,所以 10G 口也就是噱头多于实用,一般G口也就够用了。

总结一下,上面大家要注意的几个点:

1、虚拟方式一定注意是不是 KVM?因为有些商家用的 OpenVZ 虚拟技术而故意不说明,OpenVZ 的缺点是不能修改内核也就不能开启 BBR 和可以随意超售。

2、硬盘的 IO 差,一般是因为母鸡超售过多造成了,看 IO 数值就可以看出 VPS 有没有超售。

3、Speed 测速可以直观地看出 VPS 的带宽,一般G口就是超过 100MB/S,百兆口也就是低于 100MB/S,10G 口也就是高于1000MB/S

线路测试

线路测试包括去程和回程,去程是针对的上传数据,回程一般是指下载数据也就是 VPS 回传数据。因此一个 IP 的路由好坏,看回程才有参考价值,去程反而不是那么重要了。下面就讲讲回程路由:

回程测试

回程多地区测试脚本:

wget -qO- git.io/besttrace | bash

此脚本在 VPS 上跑完后会有类似下面的路由跳转详情,针对三大运营商,下面一个个讲:

  • 中国电信
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
上海电信
traceroute to 101.95.120.109 (101.95.120.109), 30 hops max, 60 byte packets
1 10.8.2.13 13.33 ms * 局域网
2 10.8.32.93 0.82 ms * 局域网
3 10.8.43.9 0.75 ms * 局域网
4 10.8.25.197 0.59 ms * 局域网
5 buf-b1-link.telia.net (62.115.59.97) 0.70 ms AS1299 美国 纽约州 布法罗 telia.com
6 nyk-bb3-link.ip.twelve99.net (80.91.246.37) 10.09 ms AS1299 美国 纽约州 纽约 telia.com
7 nyk-b3-link.ip.twelve99.net (62.115.140.223) 10.93 ms AS1299 美国 纽约州 纽约 telia.com
8 218.30.54.104 18.20 ms AS4134 美国 纽约州 纽约 电信
9 202.97.97.178 73.68 ms AS4134 美国 加利福尼亚州 洛杉矶 电信
10 *
11 *
12 202.97.62.61 208.40 ms AS4134 中国 上海 电信
13 101.95.88.13 196.47 ms AS4812 中国 上海 电信
14 101.95.120.109 207.76 ms AS4812 中国 上海 电信

中国电信目前拥有两条线路,一条是 163 骨干网(ChinaNet)AS4134,另一条就是 CN2 网络 AS4809。

163 网是中国电信建设的最早的一个承载包括连往境外的骨干网络,因为用户数众多,在晚上连接境外网络会非常卡顿,丢包高,大家一起挤,线路就炸了。

CN2 是电信为了替代 163 网成为未来新骨干网的网络,CN2 网络能够同时承载语音、数据、视频、全球互联等业务,尤其是全球互联方面,相对于 163 网而言,CN2 网络的低丢包、低延时、轻负载,让众多用户趋之若鹜,就是价格昂贵。

说回正题,上面的路由前面的序号是节点跳转数,这个跳转自然是越少越好,其中看到10和11号节点显示两个 * 号,说明这两个节点没有解析出来,或者说丢包了。针对上海电信的回程,可以看到在国外是从纽约跳转到洛杉矶 163 骨干,然后回国到骨干 163 的 AS4134,再跳转到本地电信。线路看起来平平无奇,其实 163 骨干根本没法用,且国外绕,国内跳,所以实际体验肯定不太好。

然后,大家所说的 CN2 GIA 并没有在这个线路上体现,一般 GIA 的表现就是国外 AS4809 跳转到国内 AS4809,然后再跳转到本地电信。当然 affman 会有另一套说辞,看,有 59.43 就是GIA。其实不然,如果是 AS4809 跳转到 163 的 AS4134,就不是 GIA 了,而是 CN2 GT 了,所以注意分辨。

  • 中国联通
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
重庆联通
traceroute to 113.207.25.138 (113.207.25.138), 30 hops max, 60 byte packets
1 10.8.2.13 1.44 ms * 局域网
2 10.8.32.93 1.00 ms * 局域网
3 10.8.43.13 0.57 ms * 局域网
4 10.8.5.101 5.96 ms * 局域网
5 te0-0-0-7.rcr21.buf02.atlas.cogentco.com (38.122.37.113) 1.93 ms AS174 美国 纽约州 布法罗 cogentco.com
6 be3156.ccr21.cle04.atlas.cogentco.com (154.54.29.201) 6.01 ms AS174 美国 俄亥俄州 克里夫兰 cogentco.com
7 be2717.ccr41.ord01.atlas.cogentco.com (154.54.6.221) 13.44 ms AS174 美国 伊利诺伊州 芝加哥 cogentco.com
8 be2765.ccr41.ord03.atlas.cogentco.com (154.54.45.18) 13.09 ms AS174 美国 伊利诺伊州 芝加哥 cogentco.com
9 verizon.ord03.atlas.cogentco.com (154.54.11.82) 11.88 ms AS174 美国 伊利诺伊州 芝加哥 cogentco.com
10 0.ae2.GW8.SJC7.ALTER.NET (140.222.2.25) 58.51 ms * 美国 加利福尼亚州 圣何塞 verizon.com
11 204.148.55.106 143.75 ms AS701 美国 加利福尼亚州 圣何塞 verizon.com
12 219.158.97.177 301.29 ms AS4837 中国 上海 联通
13 219.158.113.122 294.59 ms AS4837 中国 上海 联通
14 219.158.113.101 284.41 ms AS4837 中国 上海 联通
15 219.158.106.254 312.53 ms AS4837 中国 重庆 联通
16 113.207.25.138 330.80 ms AS4837 中国 重庆 联通

中国联通目前也有两条线路,一条是 169 骨干网 AS4837,另一条是它所谓的精品网 AS9929。

联通因为其拥有全国仅次于电信用户的国际总出口带宽,这就意味着中国联通用户访问外网遭遇的烦心事儿比电信和/移动用户要少很多,带宽大、负载小,以至于 169 骨干网并不是传说中的那么差,所以联通也被大家戏称为万金油网络,3毛机照样起飞。

AS9929 俗称A网,以前网通时代的骨干网,后来联通实在没有拿得出手的精品线路,只好拿它来充数啦,优势是用户少,负荷小,代表 IP 218.105。其实相较于联通的 169 骨干网(AS4837)并没有绝对优势,而且严重依赖 169 网,169 网代表 IP 219.158。

说回正题,看上面联通回程,纽约跳转芝加哥再跳转到圣何塞,然后跳回国内 169 骨干网,这条线看着在国外跳了好几跳,其实基本算是内网跳转,主要还得看国内跳转,经上海骨干,跳转到重庆骨干,因为一路都是 AS4837,直接市级跳转所以联通这线路可以说是可用状态。速度肯定比上面的电信好,属于基本可用型。

至于 AS9929 网,表现形式是国外 AS9929 跳转到国内 AS9929,然后和 169 联合组网,这种其实属于伪精品网,也就是 affman 拿来骗小白钱的。

  • 中国移动
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
成都移动
traceroute to 183.221.253.100 (183.221.253.100), 30 hops max, 60 byte packets
1 10.8.2.13 1.47 ms * 局域网
2 10.8.29.93 1.11 ms * 局域网
3 10.8.43.1 2.91 ms * 局域网
4 10.8.13.33 3.80 ms * 局域网
5 buf-b1-link.telia.net (62.115.146.150) 0.60 ms AS1299 美国 纽约州 布法罗 telia.com
6 *
7 sjo-b21-link.ip.twelve99.net (62.115.119.229) 80.89 ms AS1299 美国 加利福尼亚州 圣何塞 telia.com
8 chinamobile-ic-342121-sjo-b21c.telia.net (62.115.171.215) 73.77 ms AS1299 美国 加利福尼亚州 圣何塞 telia.com
9 223.120.6.69 72.65 ms AS58453 美国 加利福尼亚州 圣何塞 移动
10 223.120.13.170 252.08 ms AS58453 中国 广东 广州 移动
11 221.183.55.58 230.24 ms AS9808 中国 广东 广州 移动
12 221.183.25.122 236.21 ms AS9808 中国 广东 广州 移动
13 221.176.22.157 248.94 ms AS9808 中国 广东 广州 移动
14 221.176.20.138 298.82 ms AS9808 中国 四川 成都 移动
15 111.24.8.122 272.58 ms AS9808 中国 四川 成都 移动
16 111.9.130.38 274.37 ms AS9808 中国 四川 成都 移动
17 223.87.85.50 291.88 ms AS9808 中国 四川 成都 移动
18 183.221.253.100 295.26 ms AS9808 中国 四川 成都 移动

中国移动进出国际网络,在国内经过的绝大部分流量,均由 AS9808 网络承载,近年移动出现了一个移动 CMI 线路 AS58453,简单讲也就是广州移动国际出口,代表 IP 223.120,这条线算是后起之秀,所谓广移拉万物,说的就是它,可以和 GIA 媲美,甚至有些时候还优于 GIA,这条线拉联通,电信速度很好,但还是带不动自家的移动,你看移动墙中墙果然不是白叫的,连自家人都嫌弃。

说回上面移动的线路,路由经由纽约跳转到圣何塞 AS58453,注意延时较高,然后再跳转到广移,广移再跳转到广东省级骨干,再跳转到四川省级骨干、市级骨干。线路跳转正常,延时高,属于可用状态。注意,这个只针对上面的成都移动,因为移动的出口总带宽小,用户量大,导致 AS9808 骨干网访问质量堪忧,其它地方的移动未必有这种线路。

移动没啥好说的,就一句,大家套 CF 吧!

回程测试,各地区的差异也比较大,有些 affman 为了恰饭,故意拿一些表现比较好的地区来测试,所以线路跳转只供参考,以实际连接速度为准。

去程测试

上面说完了三网回程,下面讲讲去程,一般来说流量是不对等的,回复流量基本上是请求流量的数倍。

就比如,你浏览本博的文章,点击一个网址就可以了,电脑把网址发到本博位于国外的服务器,数据一般小于 1KB。但是本博回复你文章内容,里面的文字、图片、脚本等各种资源,压缩后至少也是几十KB,这个过程中去程和回程数据有数倍的差异。如果你看的是油管的视频,出国的流量可能就几兆,但是传过来的视频可能上G,数据相差上百倍。

所以你应该明白了俺上面为什么说去程没啥参考价值,因为它压根就不堵。当然,既然写到了去程这个话题,还是留下测试去程的方法:

打开下面的网址,左边选择你附近的服务器,然后右边填上你的 VPS IP 就可以查看去程路由了:

https://tools.ipip.net/traceroute.php

ping值查询

当然,不能忘了各运营商的 ping 值查询,这算是一个直观且简单的查询方式,如图,如果下面国内部分全线飘红,说明丢包严重,ping 值亚洲 VPS 在 100ms 左右属正常范围,美帝 VPS 在 250ms 左右属正常范围。

当然,这些数值受时段的影响比较大,建议北京时间 22:00 - 23:00 高峰期测试。

网址:https://ping.pe

pingtest

上图可见,在非高峰期国内也是飘红一片,且延时较高,可以轻易得出此线路差的结论。

CPU性能测试

还是请出秋水的 UnixBench 脚本来测试。

UnixBench 是一个类 Unix 系(Unix,BSD,Linux)统下的性能测试工具,一个开源工具,被广泛用与测试 Linux 系统主机的性能。UnixBench 的主要测试项目有:系统调用、读写、进程、管道、运算、C库等系统基准性能提供测试数据。

wget --no-check-certificate https://github.com/teddysun/across/raw/master/unixbench.sh && chmod +x unixbench.sh && ./unixbench.sh

上面脚本运行需要1个小时左右,运行完会显示类似下面的数据:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
------------------------------------------------------------------------
Benchmark Run: Wed Jan 27 2021 02:51:19 - 03:19:31
4 CPUs in system; running 1 parallel copy of tests

Dhrystone 2 using register variables 24200491.2 lps (10.0 s, 7 samples)
Double-PrecisIOn Whetstone 3329.3 MWIPS (9.8 s, 7 samples)
Execl Throughput 1871.3 lps (29.7 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 294037.9 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 72363.8 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 751298.6 KBps (30.0 s, 2 samples)
Pipe Throughput 466754.5 lps (10.0 s, 7 samples)
Pipe-based Context Switching 20932.2 lps (10.0 s, 7 samples)
Process CreatIOn 3645.8 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 4202.6 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 1159.0 lpm (60.0 s, 2 samples)
System Call Overhead 434122.5 lps (10.0 s, 7 samples)

System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 24200491.2 2073.7
Double-PrecisIOn Whetstone 55.0 3329.3 605.3
Execl Throughput 43.0 1871.3 435.2
File Copy 1024 bufsize 2000 maxblocks 3960.0 294037.9 742.5
File Copy 256 bufsize 500 maxblocks 1655.0 72363.8 437.2
File Copy 4096 bufsize 8000 maxblocks 5800.0 751298.6 1295.3
Pipe Throughput 12440.0 466754.5 375.2
Pipe-based Context Switching 4000.0 20932.2 52.3
Process CreatIOn 126.0 3645.8 289.3
Shell Scripts (1 concurrent) 42.4 4202.6 991.2
Shell Scripts (8 concurrent) 6.0 1159.0 1931.7
System Call Overhead 15000.0 434122.5 289.4
========
System Benchmarks Index Score 547.4

------------------------------------------------------------------------
Benchmark Run: Wed Jan 27 2021 03:19:31 - 03:47:54
4 CPUs in system; running 4 parallel copies of tests

Dhrystone 2 using register variables 69292533.8 lps (10.0 s, 7 samples)
Double-PrecisIOn Whetstone 11978.5 MWIPS (9.0 s, 7 samples)
Execl Throughput 4209.0 lps (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 324882.7 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 83784.4 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 796669.0 KBps (30.0 s, 2 samples)
Pipe Throughput 1428886.7 lps (10.0 s, 7 samples)
Pipe-based Context Switching 139100.8 lps (10.0 s, 7 samples)
Process CreatIOn 7474.5 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 8073.7 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 1228.0 lpm (60.1 s, 2 samples)
System Call Overhead 1323168.7 lps (10.0 s, 7 samples)

System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 69292533.8 5937.7
Double-PrecisIOn Whetstone 55.0 11978.5 2177.9
Execl Throughput 43.0 4209.0 978.8
File Copy 1024 bufsize 2000 maxblocks 3960.0 324882.7 820.4
File Copy 256 bufsize 500 maxblocks 1655.0 83784.4 506.2
File Copy 4096 bufsize 8000 maxblocks 5800.0 796669.0 1373.6
Pipe Throughput 12440.0 1428886.7 1148.6
Pipe-based Context Switching 4000.0 139100.8 347.8
Process CreatIOn 126.0 7474.5 593.2
Shell Scripts (1 concurrent) 42.4 8073.7 1904.2
Shell Scripts (8 concurrent) 6.0 1228.0 2046.7
System Call Overhead 15000.0 1323168.7 882.1
========
System Benchmarks Index Score 1159.1

======= Script descriptIOn and score comparison completed! =======

上部分是单核跑分数据,下部分是多核跑分数据。单核跑分有500分以上属于正常水平,低于500分就属于性能很弱了。当然你不能和 AMD X3900 这种单核跑分接近2000分的性能怪兽比。双核跑分接近1000分属于正常水平,像俺上面这个4核1159分就属于不正常了,太差。

总结一下上面的小鸡,线路就联通可用,其它稀烂;性能偏弱,也就是干啥啥不行。好在20刀左右年付还算便宜,另外一个不太算得上优点的地方是它的 10G 口。

购买建议

最后说说俺的购买建议,首先要明确自己的用途,是主要用于翻墙,还是用于建站,或者运行小型项目之类。

如果用于翻墙,建议选择国内商家,因国内商家对于线路方面还是很有研究和路子的,配置倒是其次,一个 256M 内存小鸡就足够你跑起一些代理软件了。

如果用于建站对配置有一定要求的话,还是建议选择国外商家,毕竟便宜量足,线路套上 CF 都一样嘛!如果,想要安全、匿名也建议选择国外商家,毕竟支持 BTC 付款的国外商家一大把。