中文

CSnake:通过故障传播因果拼接检测自维持级联故障

分布式、并行与集群计算 2025-10-28 v2 软件工程

摘要

最近的研究表明,分布式系统中的自维持级联故障经常导致大规模宕机,且难以遏制与恢复。现有的故障检测技术难以在部署前暴露此类故障,因为它们通常需要特定条件的复杂组合才能被触发。这一挑战源于级联故障的固有特性,因为它们通常涉及一系列故障传播,每一步均由不同条件激活。本文提出了 CSnake,一个用于暴露分布式系统中自维持级联故障的故障注入框架。CSnake 采用了因果拼接的新思想,将不同测试中的多次单故障注入进行因果连接,以模拟复杂的故障传播链。为了识别这些链,CSnake 设计了对故障传播的反事实因果分析——故障因果分析(FCA):FCA 将故障注入运行的执行轨迹与其对应的基线运行(即无注入的相同测试)进行比较,并识别出任何被触发的额外故障,这些故障被认为与注入的故障具有因果关系。为了应对故障与工作负载组合的庞大搜索空间,CSnake 采用了一种三阶段测试预算分配协议,优先处理具有独特且多样因果后果的故障,从而提高发现条件性故障传播的可能性。此外,为避免从不兼容条件的工作负载中错误地连接故障传播,CSnake 执行局部兼容性检查,以低开销近似检查相连故障传播相关的路径约束的兼容性。CSnake 在五个系统中检测出 15 个导致自维持级联故障的 bug,其中 5 个已被确认,2 个已被修复。

关键词

引用

@article{arxiv.2509.26529,
  title  = {CSnake: Detecting Self-Sustaining Cascading Failure via Causal Stitching of Fault Propagations},
  author = {Shangshu Qian and Lin Tan and Yongle Zhang},
  journal= {arXiv preprint arXiv:2509.26529},
  year   = {2025}
}

备注

Accepted by EuroSys 2026