摘要

  • Cloudflare 对 2020 年 7 月 17 日的公开事后分析描述了在亚特兰大的网络配置变更、一个 27 分钟的主要中断窗口、高峰期间大约一半的流量丢失,以及全球客户影响,使得内部流量工程控制成为客户可用性问题。
  • 问责问题是:谁控制路由器规则测试、分阶段部署、路由偏好、最大前缀保护、骨干网故障安全行为、客户状态消息传递、回滚速度,以及部署安全性在事件后是否得到了改善。
  • 该案例并非普通的云中断。这是一个网络韧性案例,因为 Cloudflare 的边缘服务、DNS、安全、应用交付和流量引导是其他组织的公共服务和业务连续性堆栈的一部分。
  • 本文将 Cloudflare 的事后分析作为第一方事件描述,并利用 BGP、韧性、SRE、NIST、CISA 和状态来源作为背景,而非私有路由器证据。
  • 持久的教训是,分阶段网络变更必须被证明,而不仅仅是承诺:提供商应展示如何测试、限制、观察、回滚一个路由器规则部署,并防止其转变为共同的客户中断。

为什么此案例属于风险和问责档案

Cloudflare 将路由器规则部署变成了一个网络韧性问责测试,因为 2020 年 7 月 17 日的事件暴露了现代云依赖的一个基本特性:提供商的内部流量工程决策可能成为从未看到该变更的客户的公共可用性事件。Cloudflare 在https://blog.cloudflare.com/cloudflare-outage-on-july-17-2020/的事件说明指出,亚特兰大的配置变更导致骨干网流量被黑洞,主要事件从 21:12 UTC 持续到 21:39 UTC,影响了很大一部分流量。该公开说明提供了足够清晰的事实框架,可以提出问责问题,而无需发明私有路由器日志。

问题不在于 Cloudflare 是否异常脆弱。问题在于 Cloudflare 对许多客户的公共可用性异常重要。Cloudflare 服务可以位于网站、API、DNS 记录、安全过滤、DDoS 保护、Workers 应用程序、零信任访问路径和性能路由之前。当具有这种角色的网络提供商经历骨干网或路由事件时,许多客户会将其视为自己的中断。这使得提供商的部署控制成为客户连续性计划的一部分,即使客户无法控制提供商的路由器。

Cloudflare 的状态页面在https://www.cloudflarestatus.com/和状态历史在https://www.cloudflarestatus.com/history非常重要,因为公共通信成为事件控制的一部分。在提供商中断期间,客户需要决定自己的源是否损坏,DNS 是否牵连,安全控制是否阻止流量,是否存在替代路径,以及是否应告知用户等待。状态页面不仅仅是通信产物。它是影响下游分类的操作信号。

此案例属于风险和问责系列,因为触发因素不是犯罪入侵或自然灾害。它是计划内或授权的提供商侧变更遇到了故障模式。正是这一点使问责最为具体。计划变更可以测试、分阶段、限制、观察、回滚和演练。如果提供商能够发布事后分析解释失败的原因以及将改变什么,公众可以询问修复是否映射到实际的失败路径。

Cloudflare 的学习中心 BGP 背景在https://www.cloudflare.com/learning/security/glossary/what-is-bgp/,RFC 4271 在https://www.rfc-editor.org/rfc/rfc4271.html,NIST SP 800-189 在https://csrc.nist.gov/pubs/sp/800/189/final很有用,因为它们框架性描述了域间路由和弹性流量交换。它们不是关于 2020 年 7 月路由器的发现。它们帮助读者理解为什么局部偏好、路由公告、流量引导和提供商骨干网是控制面而非抽象管道。

公共问责标准应该是实用的。谁批准了路由器规则?部署前如何测试?是部署到一个地点还是多个地点?什么遥测会在客户注意到之前显示黑洞?什么自动保护措施本应阻止过度的流量转移?存在什么回滚路径?谁决定何时回滚?之后改变了哪些最大前缀、局部偏好或分阶段推出控制?哪些客户受到影响,他们能多快区分提供商事件和自己的事件?公开事后分析不需要披露敏感设备细节就可以在有用水平上回答这些问题。

当边缘是共享基础设施时,路由器规则故障变成客户中断

2020 年 7 月的事件很有用,因为它使内部部署边界可见。对于 Cloudflare 工程师来说,路由器规则或流量工程变更可能是一项网络操作。对于客户来说,它是网站可用性、API 可达性或安全控制连续性。这种转换是云依赖的核心。客户可能购买 DDoS 保护、CDN 缓存、DNS、访问控制或边缘计算,但在中断期间,客户体验到一个单一的可用性事实:用户无法可靠地访问服务。

Cloudflare 自己的服务文档在https://developers.cloudflare.com/fundamentals/https://developers.cloudflare.com/dns/展示了客户面对的控制面有多广。Workers 文档在https://developers.cloudflare.com/workers/和网络互连信息在https://www.cloudflare.com/network-interconnect/表明 Cloudflare 不仅仅是网站缓存。它是一个边缘平台、开发者运行时和互连参与者。这些页面不是事件证据。它们解释了为什么客户合理依赖 Cloudflare 的内部网络变更管理。

共享基础设施改变了问责计算。如果客户更改自己的路由器规则并破坏其网络,客户的变更过程是焦点。如果提供商更改内部规则,成千上万客户失去可用性,提供商的变更过程就成为许多客户风险记录的一部分。客户可能不需要每一条路由器命令,但他们需要足够的证据来决定提供商的控件是否与客户的关键性兼容。对于使用云边缘提供商作为公共访问一部分的公共部门、医疗、应急、金融和市政服务尤其如此。

此事件也展示了为什么客户端冗余很困难。客户可以设计多 CDN、辅助 DNS、源故障转移或紧急旁路,但这些控制代价高昂,并且如果管理不善可能会削弱安全态势。许多客户接受提供商集中,因为提供商的可靠性和安全性优于客户自行构建。这种权衡是合理的,但它将证明责任转移给了提供商。如果客户依赖 Cloudflare 吸收攻击和路由流量,Cloudflare 必须证明自己的部署路径不能变成类似攻击的事件。

Google 的 SRE 资料关于处理过载在https://sre.google/sre-book/handling-overload/和管理关键状态在https://sre.google/sre-book/managing-critical-state/是有用的背景,因为它框架了分布式系统在负载、反馈和状态管理问题下如何失败。Cloudflare 事件是一个网络控制事件,而非 Google SRE 案例。但 SRE 词汇帮助提出正确的问题:监控了什么信号,什么阈值重要,存在什么自动响应,需要什么人工决策,以及如何验证修复。

Cloudflare 的 2020 年 7 月公开说明确定了具体的事后改进主题,包括围绕路由配置的保护措施。问责问题是这些主题是否覆盖了从变更创建到客户影响的路径。只检查规则语法的修复可能错过流量行为。只监控一台路由器的修复可能错过全局变化。仅依赖人工注意到客户报告的修复可能为时已晚。在部署前无法模拟或限制爆炸半径的修复仍可能将一个命令变成客户中断。

分阶段部署是问责控制,而非工程细节

分阶段部署常被描述为工程审慎,但对于基础设施提供商,它是问责控制。原因很简单:分阶段部署限制在检测到不良变更之前可能受到损害的客户数量。全局或高爆炸半径的变更可能在操作上高效,但它将局部错误转化为公共事件。Cloudflare 的 2020 年 7 月中断显示了为什么路由器、流量工程系统和骨干网路径应与应用代码相同的发布纪律对待,在某些情况下更严格。

分阶段网络部署应在变更触及广泛流量之前回答几个问题。预期效果是什么?什么指标证明效果?什么指标证明损害?第一个部署单元是什么?单元必须运行多长时间才能扩展?哪个自动门停止扩展?哪个回滚路径已经测试?哪个客户可见信号会触发事件声明?哪个负责工程师或事件指挥官有权停止推出?这些问题不是官僚主义。它们是提供商限制客户损害的方式。

Cloudflare 的事后分析很重要,因为它给客户的不只是一行道歉。它描述了故障路径和后续控制。公众仍然可以询问这些控制是否足够具体。最大前缀限制、局部偏好控制、配置验证和分阶段推出听起来都相关,因为它们映射到路由器规则和流量黑洞故障。映射越强,修复越可信。一般的“网络已更具韧性”声明会较弱,因为它没有显示不良路径如何被阻断。

NIST SP 800-34 Rev. 1 在https://csrc.nist.gov/pubs/sp/800/34/r1/final和 NIST SP 800-160 Vol. 2 Rev. 1 在https://csrc.nist.gov/pubs/sp/800/160/v2/r1/final这里很有用,因为它们定义了应急计划和网络韧性概念。它们不是路由器手册。它们帮助将网络工程转化为韧性职责:预期、承受、恢复、适应和验证。提供商事后分析应展示不仅从一次事件中恢复,而且是适应了允许事件的部署系统。

分阶段部署也有通信对应物。如果提供商将风险变更分单元推出,应有相应的检测和状态分段。受影响区域的客户可能需要与受影响路径外的客户不同的信息。全局状态页面可能掩盖区域差异,而太多细节可能让人不知所措。负责任的平衡是提供客户决策信号:受影响服务、已知受影响区域、开始时间、缓解时间、当前状态以及建议的客户行动或不行动。

经济激励可能反对分阶段。全球提供商重视速度。网络变更可能紧急,因为它们解决拥塞、攻击流量、成本、容量或可靠性。但变更移动得越快,护栏必须越好。2020 年 7 月的事件表明速度不是敌人;无限速度才是。如果系统证明不良变更无法在检测和回滚前造成全球损害,提供商可以快速行动。

回滚速度仅在时间线精确时可见

Cloudflare 的公共事件说明很有用,因为它提供了一个时间窗口。27 分钟的主要事件对于依赖平台的公共服务客户来说不是小事,但也不是无限制的中断。问责问题是时间线证明了什么。它可以显示检测、升级、缓解和恢复。它也可以揭示系统何时依赖人工干预,自动控件何时未触发,或状态通信何时滞后于操作现实。

回滚常被视为是非问题。提供商要么回滚了要么没有。这太粗略了。有用的回滚记录应说明损害何时开始,内部遥测何时显示损害,何时宣布事件指挥,何时做出回滚决定,何时开始回滚行动,何时客户流量改善,以及何时确认完全恢复。这些时间戳使客户能够判断提供商的观察能力和决策速度。

状态页面可以提供部分记录。Cloudflare 的状态资源显示公共通信,但公共状态通常滞后于内部检测,因为提供商在发布前必须验证事实。如果滞后很小且得到解释,可以接受。如果客户在提供商已经知道全局或区域事件正在进行时,仍在调试自己的系统,这就成为问责问题。客户需要足够早的状态信号,以避免浪费关键事件响应时间。

回滚记录还应区分技术恢复和客户恢复。如果 Cloudflare 流量在网络层恢复,一些客户可能仍会经历缓存、会话、DNS、重试、队列或用户支持后果。短暂的提供商中断可能造成更长的客户工作。公开事后分析常报告提供商恢复,但客户影响可能包括支持工单、丢失交易、失败的 API 调用、警报疲劳、紧急通信和信心损失。本文未声称对 2020 年 7 月有一个量化的客户损失数字,因为公开记录不支持。它确实表明提供商时间线只是客户问责的开始。

公共部门连续性提高了风险。CISA 的关键基础设施韧性资料在https://www.cisa.gov/resources-tools/resources/critical-infrastructure-resilience很有用,因为许多公共和关键服务依赖网络可用性、DNS 和安全过滤。提供商中断可能影响公民信息、公共门户、应急通信和基本在线服务,即使提供商本身不是公共机构。这并不意味着每个 Cloudflare 客户都是关键基础设施。而是指提供商的控过程应足够强大,以应对那些确实是关键基础设施的客户。

因此回滚速度是一个证明问题。能够展示精确回滚路径、测试回滚工具、自动护栏和客户可见改进的提供商,比仅声明服务已恢复的提供商获得更多信任。Cloudflare 详细的事后分析为这种证明创造了基础。下一个问责问题是客户能否在后续事件、状态透明度和部署实践变化中看到持续证据。

对等互连、传输和骨干网设计是客户信任的一部分

Cloudflare 的 2020 年 7 月事件位于内部骨干网工程和更广泛互联网生态系统之间的边界。客户很少检查对等互连和传输细节,但这些细节塑造了可达性。PeeringDB 在https://www.peeringdb.com/提供了互连生态系统的公共背景。RIPE RIS 在https://ris.ripe.net/和 RouteViews 在https://www.routeviews.org/routeviews/表明公共路由观察存在,即使它不能揭示每个私有提供商决策。MANRS 运营商行动在https://manrs.org/netops/actions/和 RFC 7908 在https://www.rfc-editor.org/rfc/rfc7908.html提供了与相邻事件相关的路由泄漏和路由安全词汇。

2020 年 7 月事件不应与 2019 年 6 月的路由泄漏混淆,Cloudflare 在https://blog.cloudflare.com/how-verizon-and-a-bgp-optimizer-knocked-large-parts-of-the-internet-offline-today/中分析过。2019 年,Cloudflare 是受影响的提供商,解释了涉及其他网络的路由泄漏。2020 年,Cloudflare 自己的事后分析描述了内部网络配置问题。区别很重要,因为问责地图不同。对于路由泄漏,修复可能涉及源验证、过滤、传输提供商责任和生态系统规范。对于内部路由器规则中断,修复更直接地关注提供商变更管理、测试、局部偏好、最大前缀保护和流量控制爆炸半径。

Cloudflare 发布了 RPKI 和路由安全资料,如https://blog.cloudflare.com/rpki/https://blog.cloudflare.com/rpki-updates-data/。这些来源展示了 Cloudflare 的公共倡导和路由安全技术词汇。它们不自动证明 2020 年 7 月的修复。它们确实帮助读者理解为什么深度参与路由安全的提供商应通过可验证的网络变更纪律以及公共教育来评判。

骨干网设计是客户信任的一部分,因为客户购买的是结果而非拓扑。客户可能不关心流量是否经过亚特兰大、阿什本、芝加哥、伦敦或新加坡,直到路由变化使地理位置变得可见。那时,客户发现提供商拓扑是一个隐含依赖。负责任的提供商不必完全公开敏感拓扑。它应以允许客户理解事件在设计上是局部、区域、系统还是全局的水平解释故障模式。

公共档案也应避免过度声明客户可以独立验证的内容。公共路由收集器可能显示一些 BGP 可见行为,但可能不显示内部流量黑洞、局部路由器策略、私有骨干网细节或应用层影响。客户日志可能显示失败请求但不显示根本原因。状态页面可能显示服务状态但不显示所有私有证据。可信的文章保持这些证据限制可见。

有用的问责模型是分层的。互联网生态系统控件解决路由泄漏和域间信任。提供商骨干网控件解决内部路径安全。产品控件解决边缘服务在网络压力下如何失败或继续。客户控件解决冗余、紧急旁路和事件分类。公共通信连接各层。如果任何一层被描述为整个答案,记录就会产生误导。

客户连续性依赖提供商的证明,而非提供商的信心

对于客户,2020 年 7 月中断后的主要问题不是 Cloudflare 员工是否自信。而是提供商能否展示变更路径已得到纠正。客户连续性依赖证明,因为客户必须决定是否继续依赖提供商用于关键路径,是否构建昂贵的冗余,是否更改架构,是否调整事件手册,以及是否向自己的利益相关者报告中断。

Cloudflare 的 2020 年 10-K 表格在https://www.sec.gov/Archives/edgar/data/1477333/000147733321000023/net-20201231.htm提供了公司的业务风险背景,而 Cloudflare 的信任与合规资料在https://www.cloudflare.com/trust-hub/提供了当前保证背景。投资者文件和信任页面不是事件修复证据。它们表明可用性、安全和客户信任对商业模式是实质性的。这使得详细的事件问责在商业上合理,而不仅仅是道德上可取。

连续性购买者应提出具体的事后问题。提供商是否限制了路由器规则变更的爆炸半径?部署是否包括网络策略的 canary 或基于单元的推出?哪些指标会停止推出?最大前缀和局部偏好控制是否自动化?回滚是否测试?状态消息是否与内部事件状态关联?客户面向的服务是否按关键性分类?内部事后行动是否跟踪到完成?企业客户能否根据合同获得更详细的事件证据?

客户也需要检查自身。他们能否在需要时安全地绕过 Cloudflare?绕过是否会暴露源以受攻击?辅助 DNS 是否配置和测试?应用程序是否对边缘重试行为有韧性?内部支持团队是否知道何时依赖 Cloudflare 状态而不是发起源事件?公共服务通信是否准备好应对第三方边缘中断?提供商中断不消除客户连续性责任,但只有当提供商提供有用证据时,客户责任才公平。

2020 年 7 月事件突出了可用性百分比与中断严重性之间的区别。提供商可能交付高年度正常运行时间,但为用户在此时活跃的客户造成严重的 27 分钟事件。聚合指标可能掩盖集中损害。问责应衡量车队级可靠性和客户时间严重性。对于公共门户,截止日期期间的短暂中断可能比安静期间的更长中断更重要。

因此本文将 Cloudflare 的事后分析视为建设性公共记录,而不仅仅是故障承认。公司给出了具体解释并命名了修复主题。这优于模糊保证。问责负担在发布后继续:后来的部署实践、后来的状态透明度、后来的事件和客户证据决定事后分析是否成为持久控制。事后分析是对未来的承诺,也是对过去的报告。

负面证据是有用网络事后分析的一部分

强大的网络事后分析不应只说发生了什么。它还应说没有发生什么,只要提供商能证明。负面证据很有价值,因为客户需要限制自身响应。如果事件是流量黑洞事件而非 DNS 数据损坏事件,客户可以优先考虑可用性和重试证据而不是区域文件完整性。如果提供商能证明客户配置未被更改,客户可以避免不必要地回滚自己的设置。如果提供商能证明事件未暴露流量内容,客户可以分离保密性审查和可用性审查。重点不是最小化事件。重点是阻止客户在错误的风险通道上做昂贵的工作。

对于 2020 年 7 月的 Cloudflare 中断,有用的负面证据应包括数据完整性、客户配置、安全策略状态、DNS 记录状态、证书状态、Workers 代码状态和源访问的边界。公开事后分析常关注正面故障链,因为那是戏剧所在。客户也需要排除项。他们需要知道路由器规则事件是否更改了内容、泄露了私有数据、绕过了安全策略、修改了 DNS,或仅仅阻止了可达性。如果提供商不能证明排除项,它应说明。如果能证明,应说明依据。

负面证据也有助于采购和审计团队。阅读事后分析的买家可能需要决定是否提交隐私事件、正常时间例外、供应商风险说明、连续性审查或不采取进一步行动。这些决策不同。隐私事件需要数据范围问题。正常时间例外需要可用性和客户通知问题。供应商风险说明询问提供商是否更改了控件。连续性审查询问客户是否需要辅助服务路径。一次中断可能触发多个流程,但精确的事后分析可以防止不必要的升级。

编写负面证据有一个纪律。提供商应避免诸如“除可用性外没有客户影响”的广泛声明,除非有证据覆盖所有客户用例。更好的模式是限定性语言:“我们未观察到受影响系统中客户配置的变化”,或“事件由骨干网内部流量丢弃引起,不涉及客户仪表板访问”,或“客户可能看到失败请求,但无需轮换凭证,因为事件不涉及认证材料”。确切事实取决于事件。负责任的实践是陈述边界。

公开证据只能走这么远。Cloudflare 可能有客户特定数据、私有支持记录、企业事件简报或非公开内部遥测。公开文章不应发明这些事实。但问责标准仍应命名客户会受益的证据。公开负面证据的缺失不是隐藏损害的证明。它是成熟客户在服务关键时向客户团队询问更精确事件声明的原因。

客户运行手册应包括提供商边缘中断决策

Cloudflare 的 2020 年 7 月中断也表明客户需要提供商边缘故障的运行手册,而不仅仅是源故障。许多事件团队训练为在用户报告失败访问时检查自己的应用程序、数据库、云区域、防火墙、认证层和部署历史。如果边缘提供商在服务前端,运行手册还应询问边缘提供商是否有当前状态事件,替代路由或旁路是否安全,源在提供商背后是否健康,以及客户能否在不削弱安全的情况下传达用户影响。

困难在于旁路可能危险。使用 Cloudflare 进行 DDoS 保护、Web 应用防火墙、TLS 终止、机器人缓解、访问控制或源隐藏的客户可能无法绕过提供商,而不将源暴露于攻击或错误配置。适用于一个低风险静态站点的紧急旁路对于高风险 API 或公共部门服务可能不可接受。这意味着提供商边缘中断规划必须在中断前设计。客户应决定哪些服务可以旁路,哪些不可以,哪些需要辅助边缘提供商,哪些需要通信而非技术故障转移。

相同的逻辑适用于辅助 DNS 和多 CDN 设计。冗余可以减少依赖,但增加配置复杂性,并可能创建新的故障路径。如果辅助提供商不镜像安全规则、缓存行为、TLS 配置、源认证和日志记录,故障转移路径可能不如中断安全。提供商责任和客户连续性因此相互影响。Cloudflare 必须使其自身控制强健;客户必须决定哪些服务证明独立回退的成本和复杂性是合理的。

公共部门和关键服务客户应特别明确。城市门户、学校信息网站、健康服务应用、法院归档页面或应急通信渠道可能对中断、旁路风险和公共消息有不同的容忍度。客户运行手册应识别谁可以声明第三方提供商中断,谁可以切换状态消息,谁可以联系提供商,谁可以决定不旁路因为安全风险大于可用性收益,以及谁可以告诉公众已知信息。提供商的状态页面成为这一治理流程的输入。

提供商可以通过在事件期间发布明确的客户行动指导来简化这些运行手册。有时正确的客户行动是无:等待提供商缓解,不要更改源配置。有时正确的行动是暂停部署或抑制重复警报。有时是通过批准的替代路径路由关键用户。状态消息应足够精确,使客户在尝试自助时不会造成额外损害。

事件后,客户应记录自己的监控看到了什么。合成检查是否与提供商状态同时失败?某些区域的用户是否受到更严重影响?支持团队是否误诊了源故障?警报是否淹没了响应人员?重试行为是否放大了源负载?紧急通信是否有效?此客户记录不是 Cloudflare 事后分析的替代品。它是问责档案的下游部分。提供商证据和客户证据共同表明依赖是否被足够理解以维持,或架构是否应改变。

企业客户和公共部门客户也可以要求提供商提供超出公开事后分析的证据包,而不披露敏感网络细节。有用的包不会命名每个路由器或暴露专有拓扑。它会总结受影响服务类别、受影响时间窗口、观察到的客户面向症状、失败的控件、回滚机制、修复负责人以及后续行动已完成的证据。它还会使用限定性语言说明事件是否涉及机密性、完整性或仅可用性。这种证据包让客户用事实关闭自己的供应商风险工单,而不是宽泛的信心。

提供商也从这种纪律中受益。如果没有结构化证据包,每个重要客户都会问相同问题的不同版本,支持团队成为事后分析的翻译。有了结构化包,客户团队、安全团队、法律团队和工程团队可以指向同一记录。记录可以保留敏感细节,同时仍然回答客户内部必须回答的操作问题。这减少了猜测,使公开事后分析更有用,而不是相反。

因此 Cloudflare 的 2020 年 7 月事件应被解读为提供商-客户证据交换的设计提示。提供商的公共博客可以解释核心故障路径。状态页面可以跟踪实时条件。客户证据包可以支持治理收尾。客户遥测可以显示局部影响。所有四个记录都是必需的,因为没有单一记录回答每个问责问题。提供商拥有内部控制证明;客户拥有局部连续性决策;公众拥有期望共享基础设施故障以帮助受影响服务恢复而不必猜测的方式描述。

这种交换也为未来审查者提供了基线,以比较下一次中断与承诺的控制变化,而不是将每个事件视为孤立历史。

相同的基线可用于架构审查。如果后来的 Cloudflare 事件影响不同服务,客户可以询问 2020 年 7 月的控制是否相关,是否出现了新的故障类别,以及提供商的事后分析风格是改进还是削弱了。如果后来事件重复相同的快速爆炸半径增长模式,客户有证据表明先前修复未完全解决依赖。如果后来事件更窄、检测更快、状态消息更清晰,客户有证据表明控制体系成熟了。这种比较用途正是为何事后分析应保留具体控制声明而不是仅使用一般韧性语言的原因。

持久教训是使网络安全变更可观察

Cloudflare 2020 年 7 月路由器规则中断的持久教训是,网络安全变更必须在部署前、部署中和部署后可观察。部署前,提供商应了解预期流量效果、模拟或验证策略行为、识别爆炸半径并选择分阶段路径。部署中,应监控流量、错误、黑洞指示器、路由变更、客户面向健康和扩展门。部署后,应保存证据、发布限定性账户、完成修复并测试修复。

这不是要求完美网络。大型网络会失败。问责问题是它们是否以有限、可观察、可逆的方式失败。提供商可以通过展示一条不良规则不能悄无声息地捕获或丢弃太多流量、金丝雀单元捕获意外行为、自动门停止推出、回滚经过演练以及状态通信在客户浪费时间调试自己源之前到达客户来赢得信任。

Cloudflare 更广泛的路由和可靠性资料,包括https://www.cloudflare.com/learning/security/glossary/what-is-bgp/https://blog.cloudflare.com/rpki/https://blog.cloudflare.com/rpki-updates-data/表明公司理解公共路由是一个问责领域。2020 年 7 月的案例向内应用相同标准。当内部网络变更控制同样可验证时,公共路由倡导最强。客户对域间和域内原因之间的区分体验不如工程师清晰。他们体验的是可达性。

此事件也为所有边缘和云提供商提出了一个买家通用问题:什么类型的内部变更可能产生客户中断,以及该类变更如何被限定?提供商应能回答 DNS 变更、路由变更、防火墙规则变更、证书变更、身份策略变更、缓存策略变更、部署工具和数据库迁移的问题。答案应包括预防和恢复。“我们有专家”不是一个控制。“我们分阶段部署,带自动停止条件和测试回滚”更接近控制。“我们发布带行动跟踪的事后分析”更接近。

公共部门连续性使这种纪律不那么可选。政府、学校、健康服务、应急相关站点和公民组织经常依赖商业云边缘提供商,因为这可以改善安全和性能。这种依赖只有在提供商将内部网络变更视为公共面对风险时才合理。提供商内部的路由器规则变更可能成为提供商外部的公共服务事件。问责链必须承认这一现实。

因此 Cloudflare 的 2020 年 7 月中断属于本系列,因为它是实际控制的干净例子。能够部署路由器规则的操作员有最强责任测试、分阶段、观察和回滚变更。客户有责任理解依赖并规划连续性,但他们不能修复提供商的骨干网。当它明确说:内部提供商控制变成了客户可用性控制,事件已修复,修复必须足够可见,以便客户信任下一次网络变更时,公共记录最强。