今年 6 月 17 日下午,在线服务普遍中断。在澳大利亚,它影响了该国三大银行、国家邮政服务、国家储备银行和一家航空公司。距离澳大利亚更远的地方,停电影响了香港证券交易所和一些美国航空公司。受影响服务的点名似乎达到了大约 500 个服务。
这些问题在澳大利亚东部时间中午左右首次被发现,直到四小时后才完全恢复。问题当然是这500家受影响的企业有什么共同点?这不是蓄意攻击的结果。但这与许多互联网企业(无论大小)用来转移此类攻击的影响的措施有关。答案是他们都是 Akamai 的客户,尤其是 Akamai 的 Prolexic DDoS 保护系统。Akamai 的事后回应是:
“无意中超出了此特定服务使用的路由表值。结果是服务意外中断。”
https://blogs.akamai.com/2021/06/akamai-provides-prolexic-ddos-service-impact-update-status-resolved.html
是的,互联网仍在增长,在 IPv4 网络中,我们正在接近大约 100 万个路由条目,而在 IPv6 中,数量现在接近 150,000 个条目。交换单元以各种方式实现数据包决策结构。有些使用三元内容寻址存储器 (TCAM),有些使用定制的 ASIC。这里的共同目标是基于对数据包的目标地址与从大约 100 万个条目池中提取的路由条目的最佳匹配的查找来做出转发决策。这个查找必须尽可能快。如果我正在构建一个可以处理多个 100G 电路的数据包负载的非常高速的交换机,那么我可能希望我的设备每秒做出大约 100M 左右的切换决策。这意味着我需要设计一个决策系统,该系统可以在 100 万个条目的集合中执行此查找,并且只需 10 纳秒。这是一个非常具有挑战性的目标。相比之下,最快的可用内存周期时间略低于 1 纳秒。然而,事情并没有那么简单。如果我正在构建这样的开关元件,那么我需要对其进行设计,使其能够应对从现在起 1、2 甚至 5 年内我可以预期的峰值开关负载。如果我弄错了并且没有设计足够的容量和速度,那么我的设备将提前报废,这将给网络运营商带来更多成本。如果我过度设计,那么我将在最先进的高速内存上花费太多,我的产品将比我的竞争对手贵得多。每台设备都是以这种设计权衡构建的,这些设备的使用寿命取决于诸如互联网未来增长率之类的不确定因素。关键是我们的网络使用这样的设备,网络运营商的作用是不断升级他们的交换设备能力,以保持领先于这些需求。并且意味着有时它们会滑倒不可避免。Akamai 显然也是如此。当我们处于硅能力的最边缘时,我们不能只是设计这个问题。网络运营商的作用是不断升级他们的交换设备能力,以保持领先于这些需求。并且意味着有时它们会滑倒不可避免。
但这并不是 Akami 独有的问题。所有的网络服务提供商都在追求一个相似的目标,并且所有这些系统有时都可能会切换到过载状态并出现服务中断。这次特定中断的值得注意的是,这次中断影响了大量在线服务提供商。作为在线平台的后端服务提供商的业务并不完全是一个人口稠密且多样化的商业环境。事实上,提供此类服务的企业很少,如果其中任何一家出现运营中断,那么影响将非常明显。
事实证明,这并不是 2021 年 6 月的孤立事件。本月早些时候,我们看到一组热门服务消失了一个小时或更长时间。受影响的服务列表包括 Twitch、Pinterest、Reddit、Spotify、纽约时报和 BBC 等。所有这些服务有什么共同点?他们使用 Fastly。
ABC 关于Fastly停电的新闻报道
“由于有效的客户配置更改于 6 月 8 日出现了一个未被发现的软件错误,我们经历了全球中断。我们在一分钟内检测到中断,然后确定并隔离原因,并禁用配置。在 49 分钟内,我们 95% 的网络正常运行。这次中断是广泛而严重的,我们真的很抱歉对我们的客户和依赖他们的每个人造成的影响。”
https://www.fastly.com/blog/summary-of-june-8-outage
同样,这不是攻击。它更像是一个定时炸弹,特定的客户配置设置可能会触发共享 CDN 平台的故障。所需要做的就是让客户偶然发现该特定配置设置,系统就会失败。
Fastly 建立在一个名为“Varnish”的配置管理平台上。正如 Fastly 报道的那样:
“Fastly 建立在 Varnish 之上,它允许高性能的内容交付,包括能够立即清除其全球网络中的内容。使用 Varnish 配置语言 (VCL),Catch 可以自定义其 Fastly 配置,从而实现更智能的缓存。
“根据请求中的 cookie 等特定内容设置缓存规则,我们通常只会考虑运行我们自己的 Varnish 服务器。能够在 CDN 层执行此操作使我们的设置更加强大和简化。我们还能够确保始终从 Fastly 提供某些文件格式,并且理论上永远不必多次访问我们的来源。
“Varnish 对我们来说非常重要,因为如果我们想对缓存层进行更改,我们可以控制 VCL。对于大多数 CDN,您无法获得那种灵活性,但使用 Fastly 可以获得这种灵活性。”
https://www.fastly.com/customers/catch/
“Varnish 是专门为取代 Squid 而设计的,Squid 是一种客户端代理,可以改编并用作 Web 加速器。它的主要设计目标是提高内容密集型动态网站以及大量消耗 API 的可扩展性和容量。此类站点在 Web 服务器上运行,例如 Apache 或 Nginx,主要是源服务器。创建要提供的 Web 内容。Varnish 的工作不是创建内容,而是让CDN闪电般快速。”
https://info.varnish-software.com/blog/history-varnish-cache-10-years
当挪威在线报纸 VG Multimedia 每周的页面浏览量超过 4500 万时,需要 12 台服务器来处理这些请求。VG 的系统管理员 Anders Berg 认为必须有一种方法可以减少服务器数量,同时加快页面加载速度。他为一个处理这个问题的开源项目编写了一份规范,让球滚动起来。
https://www.varnish-software.com/varnish-history/
因此,Fastly 的主要资产不是某些能够独特高效地执行 CDN 功能的专有软件系统。与许多其他工具一样,Varnish 是一种开源软件工具。或许 Fastly 的特殊之处在于其庞大的客户群,这些客户可能使用 Fastly 来满足他们的 CDN 需求,因为其他人也做出了使用 Fastly 的相同决定。换句话说,使 Fastly 在 CDN 世界中如此特别的原因在于它的规模,而这种规模可能是其他人选择使用 Fastly 并为其进一步增长做出贡献的更令人信服的原因之一。 规模会产生更大的规模。
CDN 市场存在一些问题。
首先,虽然选择一个 CDN 提供商并将其用于整个在线内容和服务组合非常容易,但选择两个或更多这样的 CDN 提供商并将它们一起用于自我修复的互备份设置可能更具挑战性. 对于许多在线服务企业来说,这是一个“选择一个CDN比做出明智的选择更容易!” 从那时起,企业与 CDN 提供商共享命运。
其次,可供选择的 CDN 并不多。如果你追求全球足迹,有足够的能力吸收除最极端的 DDOS 容量攻击之外的所有攻击,甚至吸收所有此类攻击,那么功能性服务接口允许 CDN 优化服务交付,同时让客户控制关键方面服务的安全性和完整性(例如私钥),那么您的比较购物清单并不是很大。Fastly 和 Akamai 与 Amazon CloudFront、google Cloud、微软的 Azure、Cloudflare 和 Limelight 一起出现在大多数最受欢迎的 CDN 列表中。那是七。当然还有更多,一些具有更多区域性,一些具有特定的技术专长,但这七家企业是当今 CDN 提供商世界的核心。
也许这才是真正的问题。在CDN中,现在似乎每个人都以另一种形式使用 CDN,但实际上可供选择的 CDN 很少。这是一个高度集中的空间,体积经济学占主导地位。较大的 CDN 提供商可以以较小的 CDN 企业无法实现的价格提供服务级别。这增加了他们的市场份额,这当然增加了他们的规模并进一步加剧了供应商之间数量经济差异的规模。提供商空间在一小部分“核心”CDN 巨头和一个更大的“光环”之间分叉,后者由更小的 CDN 提供商组成,这些提供商提供各种定制的方法来填补大型提供商的服务配置文件中留下的任何专业空白。大型供应商有效地控制了小型供应商的增长前景,因为他们控制着他们的服务产品中留下的差距。自然的结果是大变大,小变小。必然的结果是,当一个CDN服务提供商遇到服务中断,而且这种中断过去发生过,而且将来无疑还会发生时,那么中断服务的伤亡名单就会非常大。
通常,此类中断会削弱对服务提供的信心,客户会寻找替代方案。结果很可能是公司的投资者会紧张,股价会下跌。一般。但这些 CDN 人似乎很“特别”。Fastly 的股价在整个 6 月份都在上涨,并且在股价方面没有停电的残余影响。
Fastly股价 – 2021 年 6 月
而Akami的股价在6月18日之后大涨!
Akamai 股价 – 2021 年 6 月
泡沫的特征通常是投资者的非理性繁荣,在这种情况下,要求分享尚未实现的未来赏金的喧嚣完全淹没了对市场基本面更为冷静的评论,并且也忽略了关于成本和收入基础的平凡对话。这也是高度中心化市场的问题之一。在高度集中的市场中,完全主导其市场的成功企业所提供的回报实际上是市场上提供的一切,以及垄断溢价的前景作为奖励!在提供此类赏金的情况下,
与互联网的许多其他方面一样,我们看到一个多样化且竞争激烈的环境正在转变为一组高度集中的环境,从而导致现有卡特尔和垄断企业的形成。这种中心化的环境产生了一系列关键的依赖关系,因此当失败发生时,在这个领域是不可避免的,它们将从少数人的小不便转变为以各种方式影响我们所有人的重大事件。规模和中心性不一定只会创建更强大的服务。正如我们在 6 月份的这两次特定中断以及过去的其他中断(例如2016 年 10 月的 DYN)中所看到的那样,规模和中心性也给每个人带来了更大程度的脆弱性。