Mozilla 解释了 2022 年 1 月 Firefox 中断导致连接受阻
admin
2023-07-31 14:10:18
0
  • 点击进入:ChatGPT工具插件导航大全

2022 年 1 月 13 日,来自世界各地的 Firefox 用户开始报告连接问题。浏览器无法连接到任何站点,用户报告挂起和崩溃。

mozilla-firefox-stuck-diagrammozilla-firefox-stuck-diagram

Mozilla于 2022 年 2 月 2 日在该公司的Mozilla Hacks网站上发布了该事件的详细技术说明。

该组织在 2022 年 1 月 13 日收到有关 Firefox 在连接尝试期间挂起的报告。当时,它看到崩溃报告激增,但没有太多关于导致问题的信息。

Mozilla 工程师发现网络请求导致 Firefox 用户挂起。工程师查看了最近的更改或更新,但没有发现任何可能导致用户遇到问题的内容。

Mozilla 怀疑该问题可能是由其用于负载平衡的云提供商之一最近“不可见”的配置更改引起的。该组织使用多个提供商的基础设施来提供崩溃报告、遥测、更新或证书管理等服务。

检查时设置没有更改,但工程师注意到 Telemetry 服务正在服务 HTTP/3 连接,这是它以前没有做过的。HTTP/3 被 Mozilla 禁用,用户终于可以再次使用 Firefox 连接服务。云提供商的 HTTP/3 设置配置为自动值。

在解决了最紧迫的问题后,Mozilla 对该问题进行了更详细的调查。所有 HTTP/3 连接都通过网络堆栈 Necko,但 Rust 组件使用一个名为 viaduct 的库来调用 Necko。

Necko 检查是否存在标头,如果不存在,将添加它。HTTP/3 依赖标头来确定请求大小。Necko 检查区分大小写。现在碰巧通过高架桥的请求被图书馆自动输入小写;这意味着任何通过高架桥添加内容长度标头的请求都通过了 Necko,但遇到了 HTTP/3 代码问题。

唯一使用网络堆栈并添加内容长度标头的 Rust 组件是 Firefox Web 浏览器的 Telemetry 组件。Mozilla 指出,这就是为什么在 Firefox 中禁用遥测解决了用户端问题的原因。禁用 HTTP/3 也确实解决了它。

根据 Mozilla 的说法,这个问题将导致无限循环,因为“所有网络请求都通过一个套接字线程”,因此阻止了所有进一步的网络通信。

Mozilla 表示,它已经从这个问题中吸取了一些教训。它正在调查所有负载均衡器并审查它们的配置,以便避免未来出现类似的问题。未宣布在有问题的云提供商 Google 部署 HTTP/3。最后,Mozilla 计划在未来使用“不同的 HTTP 版本”运行更多的系统测试。

相关内容

热门资讯

Windows 11 和 10... Windows 11/10 文件夹属性中缺少共享选项卡 – 已修复 1.检查共享选项卡是否可用 右键...
事件 ID 7034:如何通过... 点击进入:ChatGPT工具插件导航大全 服务控制管理器 (SCM) 负责管理系统上运行的服务的活动...
Hive OS LOLMine... 目前不清退的交易所推荐: 1、全球第二大交易所OKX欧意 国区邀请链接: https://www.m...
Radmin VPN Wind... Radmin VPN 是一款免费且用户友好的软件,旨在牢固地连接计算机以创建一个有凝聚力的虚拟专用网...
如何修复 Steam 内容文件... Steam 内容文件锁定是当您的 Steam 文件无法自行更新时出现的错误。解决此问题的最有效方法之...
Hive OS 部署 PXE ... 目前不清退的交易所推荐: 1、全球第二大交易所OKX欧意 国区邀请链接: https://www.m...
如何在Instagram上扫描... 如何在Instagram上扫描名称标签/ QR? 总而言之,您可以通过大约四种不同的方法来扫描这些I...
在 Windows 11 中打... 什么是链路状态电源管理? 您可以在系统控制面板的电源选项中看到链接状态电源管理。它是 PCI Exp...
farols1.1.501.0... faro ls 1.1.501.0(64bit)可以卸载,是一款无需连接外部PC机或笔记本计算机即可...
Hive OS 新建飞行表的方... 目前不清退的交易所推荐: 1、全球第二大交易所OKX欧意 国区邀请链接: https://www.m...