Lesscode.com 的运行环境经历过 Cloudflare -> 腾讯云 境外CDN加速 -> 腾讯云轻量云服务器 -> CN2 GIA 香港云主机,最后 CN2 GIA 香港云主机 完美符合要求。
接下来介绍下心路历程,也帮助理解了国际线路背后的设计。
1. Cloudflare
1.1 Free Plan
一开始用的 Free Plan,国内访问速度效果很不理想。
但你在香港节点访问速度又很快,基本在几毫秒以内。
原因是国际出口带宽和路由策略。
中国大陆与香港之间的直接国际出口带宽较为紧张,特别是在高峰时段。因此,部分流量可能会被路由到相对带宽充足的线路上,即使这意味着数据包需要经过更远的地理位置。此外,电信运营商会根据自己的路由策略和成本考量,选择不同的路径传输数据。
以下面这个为例,访问香港节点会绕道到美国。
$ ping lesscode.com
PING lesscode.com (104.21.14.200): 56 data bytes
64 bytes from 104.21.14.200: icmp_seq=0 ttl=54 time=233.025 ms
64 bytes from 104.21.14.200: icmp_seq=1 ttl=54 time=256.415 ms
64 bytes from 104.21.14.200: icmp_seq=2 ttl=54 time=216.661 ms
64 bytes from 104.21.14.200: icmp_seq=3 ttl=54 time=297.914 ms
64 bytes from 104.21.14.200: icmp_seq=4 ttl=54 time=317.945 ms
64 bytes from 104.21.14.200: icmp_seq=5 ttl=54 time=217.431 ms
64 bytes from 104.21.14.200: icmp_seq=6 ttl=54 time=257.460 ms
64 bytes from 104.21.14.200: icmp_seq=7 ttl=54 time=280.095 ms
64 bytes from 104.21.14.200: icmp_seq=8 ttl=54 time=301.527 ms
64 bytes from 104.21.14.200: icmp_seq=9 ttl=54 time=324.543 ms
64 bytes from 104.21.14.200: icmp_seq=10 ttl=54 time=240.889 ms
64 bytes from 104.21.14.200: icmp_seq=11 ttl=54 time=259.944 ms
64 bytes from 104.21.14.200: icmp_seq=12 ttl=54 time=281.349 ms
--- lesscode.com ping statistics ---
14 packets transmitted, 13 packets received, 7.1% packet loss
round-trip min/avg/max/stddev = 216.661/268.092/324.543/34.526 ms
Pro Plan
在 Cloudflare 开启 Plus Plan 后, 提供了优质线路,平均延迟降低了 120ms
~$ ping lesscode.com
PING lesscode.com (172.66.43.90): 56 data bytes
64 bytes from 172.66.43.90: icmp_seq=0 ttl=54 time=163.141 ms
64 bytes from 172.66.43.90: icmp_seq=1 ttl=54 time=159.035 ms
64 bytes from 172.66.43.90: icmp_seq=2 ttl=54 time=157.786 ms
64 bytes from 172.66.43.90: icmp_seq=3 ttl=54 time=163.244 ms
64 bytes from 172.66.43.90: icmp_seq=4 ttl=54 time=158.539 ms
64 bytes from 172.66.43.90: icmp_seq=5 ttl=54 time=158.914 ms
64 bytes from 172.66.43.90: icmp_seq=6 ttl=54 time=161.698 ms
64 bytes from 172.66.43.90: icmp_seq=7 ttl=54 time=161.025 ms
64 bytes from 172.66.43.90: icmp_seq=8 ttl=54 time=159.411 ms
64 bytes from 172.66.43.90: icmp_seq=9 ttl=54 time=162.725 ms
64 bytes from 172.66.43.90: icmp_seq=10 ttl=54 time=162.503 ms
64 bytes from 172.66.43.90: icmp_seq=11 ttl=54 time=158.138 ms
64 bytes from 172.66.43.90: icmp_seq=12 ttl=54 time=161.653 ms
64 bytes from 172.66.43.90: icmp_seq=13 ttl=54 time=162.508 ms
64 bytes from 172.66.43.90: icmp_seq=14 ttl=54 time=158.700 ms
64 bytes from 172.66.43.90: icmp_seq=15 ttl=54 time=161.378 ms
64 bytes from 172.66.43.90: icmp_seq=16 ttl=54 time=160.591 ms
--- lesscode.com ping statistics ---
17 packets transmitted, 17 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 157.786/160.646/163.244/1.828 ms
但这仍然慢。
2. 腾讯云 境外CDN加速
于是尝试腾讯云的 境外CDN 加速。
结果失望le,和 Cloudflare 的 Free Plan 差不多,延迟在 250ms 左右。
~$ ping 43.152.25.37
PING 43.152.25.37 (43.152.25.37): 56 data bytes
64 bytes from 43.152.25.37: icmp_seq=0 ttl=48 time=243.899 ms
64 bytes from 43.152.25.37: icmp_seq=1 ttl=48 time=362.718 ms
64 bytes from 43.152.25.37: icmp_seq=2 ttl=48 time=229.517 ms
64 bytes from 43.152.25.37: icmp_seq=3 ttl=48 time=286.996 ms
64 bytes from 43.152.25.37: icmp_seq=4 ttl=48 time=269.014 ms
64 bytes from 43.152.25.37: icmp_seq=5 ttl=48 time=256.452 ms
64 bytes from 43.152.25.37: icmp_seq=6 ttl=48 time=238.001 ms
64 bytes from 43.152.25.37: icmp_seq=7 ttl=48 time=245.014 ms
64 bytes from 43.152.25.37: icmp_seq=8 ttl=48 time=248.697 ms
64 bytes from 43.152.25.37: icmp_seq=9 ttl=48 time=260.318 ms
64 bytes from 43.152.25.37: icmp_seq=10 ttl=48 time=268.746 ms
--- 43.152.25.37 ping statistics ---
11 packets transmitted, 11 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 229.517/264.488/362.718/34.711 ms
通过 traceroute 工具发现国内访问香港节点 43.152.25.37 会取道中国电信国际出口的合作商 NTT.COM 在日本的节点。
3. 腾讯云香港轻量云服务器和云服务器
3.1 腾讯云香港轻量云服务器
于是尝试腾讯云香港轻量云服务器,不过在买的时候腾讯云官方已声明香港专属型套餐无法保障中国内地与香港之间的跨境公网质量。
注意:本套餐无法保障中国内地与香港之间的跨境公网质量,在跨境连接时可能出现较大网络延迟和丢包。推荐面向海外客户且对跨境网络质量要求低的的业务使用。
验证了下,确实如此,丢包比较严重。
~$ ping 43.135.79.12
PING 43.135.79.12 (43.135.79.12): 56 data bytes
64 bytes from 43.135.79.12: icmp_seq=0 ttl=44 time=63.734 ms
64 bytes from 43.135.79.12: icmp_seq=1 ttl=44 time=67.952 ms
64 bytes from 43.135.79.12: icmp_seq=2 ttl=44 time=72.463 ms
64 bytes from 43.135.79.12: icmp_seq=3 ttl=44 time=51.370 ms
64 bytes from 43.135.79.12: icmp_seq=4 ttl=44 time=51.456 ms
64 bytes from 43.135.79.12: icmp_seq=5 ttl=44 time=87.907 ms
64 bytes from 43.135.79.12: icmp_seq=6 ttl=44 time=85.421 ms
64 bytes from 43.135.79.12: icmp_seq=7 ttl=44 time=62.630 ms
64 bytes from 43.135.79.12: icmp_seq=8 ttl=44 time=71.491 ms
64 bytes from 43.135.79.12: icmp_seq=9 ttl=44 time=56.142 ms
64 bytes from 43.135.79.12: icmp_seq=10 ttl=44 time=57.251 ms
64 bytes from 43.135.79.12: icmp_seq=11 ttl=44 time=63.561 ms
64 bytes from 43.135.79.12: icmp_seq=12 ttl=44 time=62.248 ms
64 bytes from 43.135.79.12: icmp_seq=13 ttl=44 time=51.579 ms
64 bytes from 43.135.79.12: icmp_seq=14 ttl=44 time=63.823 ms
64 bytes from 43.135.79.12: icmp_seq=15 ttl=44 time=48.843 ms
64 bytes from 43.135.79.12: icmp_seq=16 ttl=44 time=53.348 ms
Request timeout for icmp_seq 17
64 bytes from 43.135.79.12: icmp_seq=18 ttl=44 time=77.686 ms
64 bytes from 43.135.79.12: icmp_seq=19 ttl=44 time=48.323 ms
64 bytes from 43.135.79.12: icmp_seq=20 ttl=44 time=56.070 ms
64 bytes from 43.135.79.12: icmp_seq=21 ttl=44 time=47.430 ms
64 bytes from 43.135.79.12: icmp_seq=22 ttl=44 time=54.402 ms
64 bytes from 43.135.79.12: icmp_seq=23 ttl=44 time=49.792 ms
Request timeout for icmp_seq 24
64 bytes from 43.135.79.12: icmp_seq=25 ttl=44 time=51.298 ms
64 bytes from 43.135.79.12: icmp_seq=26 ttl=44 time=50.085 ms
64 bytes from 43.135.79.12: icmp_seq=27 ttl=44 time=52.108 ms
64 bytes from 43.135.79.12: icmp_seq=28 ttl=44 time=48.529 ms
64 bytes from 43.135.79.12: icmp_seq=29 ttl=44 time=72.798 ms
^C
--- 43.135.79.12 ping statistics ---
30 packets transmitted, 28 packets received, 6.7% packet loss
round-trip min/avg/max/stddev = 47.430/59.991/87.907/11.225 ms
通过工具在晚上持续 Ping 的结果如下,有一定的丢包。
Traceroute 如下图,电信骨干网连接电信香港节点,这个链路都在 AS4134 这个 AS 中。
-
广州电信 traceroute 香港轻量云服务器
-
上海电信 traceroute 香港轻量云服务器
另外香港轻量云主机遇到的一个问题是,中国内地访问时有限速,在访问图片资源时,速度只有20Kbps左右(使用的 2C2G30Mbps套餐),很慢。
3.2 香港云服务器
除了香港轻量云主机,还体验了香港云服务器。
从晚上批量Ping的工具测试结果来看,也是有不少丢包。
从实际使用情况来看香港云服务器要比腾讯云轻量云香港专属型套餐要好一些,但仍然不稳定有丢包。
Traceroute 如下图,电信骨干网连接电信香港节点,这个链路都在 AS4134 这个 AS 中。
-
广州电信 traceroute 香港云主机
-
上海电信 traceroute 香港云主机
4. CN2 GIA 香港云主机
最后选择了 CN2 GIA 香港云主机,令人满意,在晚高峰无丢包,延迟很低,从深圳过去平均延迟在12ms左右。
Traceroute 如下图,202.97.*.*
网段(AS4134)的电信骨干网通过 CN2线路 59.43.*.*
(AS4809)连接到电信香港节点。
从最终的访问效果来看,非常满意,终于找到一个中国大陆访问速度非常棒的境外云服务器。
附录
- 电信骨干网 AS4134
- CN2 AS4809,提供更高质量的中国电信骨干承载网络而建立的工程,出口点北京、上海、广州、乌鲁木齐
- 从上海电信访问 CN2 GIA 线路香港云服务器,包含
59.43.*.*
,不含202.97.*.*
所以 你这边 用的是哪家服务器
正文第一段中有链接。