
随着拨号上网和可怜的2G数据连接的时代早已离我们大多数人远去,我们似乎很容易就不再关心最终用户需要从那个又大又宽的宽带管道中消耗多少数据。如果你的管道恰好是一根细吸管,而你又位于南极洲的某个基地,那么这就会是个问题。以保罗·科尔德伦为例,他从2022年8月起,作为IT专家在多个南极科考站驻扎了总共14.5个月。
准备好承受数小时的痛苦和反复下载吧。(图片来源:Paul Coldren)
正如[保罗]所描述的,这些基地的互联网接入主要通过卫星互联网,而卫星互联网实际上只是中继站而已。像麦克默多站这样的基地,在某些时候会有超过一千人驻守,互联网带宽非常宝贵,延迟自然也就高了。
这种低带宽场景会导致一些极其恼人的情况,例如,[Paul] 的 Web 应用在下载一个 20 MB 的 JavaScript 文件时,仅仅因为速度太慢就超时了。超时后,它会清除缓存,重定向到错误页面,然后 [Paul] 会不断重试,试图挤进超时窗口。下载过程原本只需大约 15 分钟就能完成,但为了 [Paul] 能在通讯应用中发送几 KB 的文本,下载过程却耗费了近半个小时。
除了这些人为的超时(尽管下载进度仍在继续)之外,还有自动更新应用程序的问题,其下载程序不允许您安排、暂停、恢复或执行任何其他操作,从而无法下载大规模更新。另一个问题是分布式下载,例如,当上述南极科考站的数百人同时尝试更新 MacOS 时。在这种情况下,[Paul] 最终只能——痛苦而缓慢地——下载整个 12 GB 的 MacOS ISO 文件,并将其分发到整个科考站,但无论如何,Mac 可能仍会尝试下载几 GB 的更新。
微软让南极的 Mac 版 Office 更新变得轻松便捷。(图片来源:Paul Coldren)
这种痛苦在智能手机更新中仍然存在,因为智能手机更新通常不允许从本地映像更新手机的操作系统,并且为了让手机恢复更新映像下载,[Paul] 必须在互联网连接中断时关闭手机(由于卫星失去对准),并在第二天恢复连接时重新打开手机。
有点令人惊讶的是,Microsoft Office for Mac 更新程序至少在某种程度上展现了它的成功之处;它能够暂停和取消下载,查看下载进度,并轻松恢复中断的下载。除了无法访问底层更新文件(例如通过 Sneakernet 下载和分发)之外,这仍然是一次愉快的体验,相比之下,许多现代硬件和软件在看到以 kB/s 为单位的网速后就放弃了。
尽管 [Paul] 并不主张每个开发人员都应该针对那些被困在远程站点的 ISDN 等效网络中或漂浮在地球海洋某处的浴缸中的可怜虫优化他们的应用程序和更新程序,但他确实坚持认为,如果可以通过消息应用程序发送简短的短信而不必与超时和其他令人烦恼的“功能”作斗争,那就太好了。
自 [保罗] 于 2024 年从南极洲最后一次部署返回以来,似乎至少有一些站点已经升级到Starlink 卫星互联网,但这不应成为不认真对待他的请求的借口。
原文: https://hackaday.com/2025/09/05/engineering-for-slow-internet-even-when-not-stuck-in-antarctica/