摘要

  • 11 月 1 日的个人草案让配置代理掌管 MoQ 负载均衡器的路由表、中继池和健康状态。每台均衡器要保留上一次有效快照,并报告当前版本与配置年龄。
  • 一旦超过运营方设定的最长年龄,依赖过期健康状态的新请求必须被拒绝。回退旧内容也要发布更高版本,并有经认证的运营操作。
  • 代理模式可尝试迁移订阅;重定向模式不持有请求,中继故障后由客户端回到均衡器重新选择。

一张旧地图不该决定下一位观众去哪儿

直播间已有发布者和观众,下一位观众刚点开播放。普通 QUIC 负载均衡只看连接,分不清哪个 Track Namespace 该把发布和订阅放在同一中继。MoQ-LB 草案要求均衡器读取命名空间,按共同路由表逐个安置请求。作者 11 月 2 日在 MoQ 邮件列表说明了设计。草案假设中继之间能互通,选择同一中继主要是为了减少跨中继搬运与延迟。

配置代理有权决定路由表、池成员和健康状态。它向各台均衡器分发完整、经过认证的快照。均衡器先验证,再原子切换到更高版本,留下最近一次有效版本,并上报正在使用的版本和年龄。部署方必须定一个最长年龄。超过界限后,均衡器 MUST NOT 为依赖旧健康状态的新请求选中继,而是拒绝它。磁盘里还有地图,地图却失去了这次放行的权力。

这是一笔明账:门口的观众会立即看到失败。若把他悄悄送往健康状态已无把握的中继,故障可能拖到播放途中才露面。草案没有给所有运营商统一规定几分钟。评估一个实际服务,需要它设置的年龄上限和更新抵达每个入口的真实耗时。

版本号还挡住了“把昨天文件复制回来”的捷径。均衡器不能接受低于或等于当前版本的快照。要恢复旧内容,运营人员须用更高版本重新发布,并对回退操作作认证。

代理模式另有短暂分歧:某台均衡器先收到后端中继的 GOAWAY,或者后端会话突然断开,便先在本地改变健康判断。其他均衡器尚未收到配置代理的新状态,可能把同一命名空间选到别处。该实例应向代理报告变化。重定向模式没有后端会话,完全依赖代理分发的健康状态。这份文件仍是计划进入 Standards Track 的个人 Internet-Draft。