✨ 要点🔬 技术摘要
想象这样一个世界:维持我们灯光亮起、水质清洁和工厂运转的机器不再仅仅是笨拙、硬连线的黑匣子,而是运行在计算机集群上的智能、灵活的软件程序。这就是工业边缘计算 的前沿领域。但这里有一个棘手的难题:在过去,如果一个控制器坏了,备份会自动接管。但在新的软件世界里,如果一台计算机崩溃并重启,它可能会尝试与刚刚苏醒的那台计算机同时向现实世界的机器发送指令。如果两台计算机同时告诉一个巨大的阀门“打开”,混乱就会随之而来。这篇论文探讨了一个非常具体且高风险的问题:我们如何让软件在多台计算机上运行以实现高速与安全,同时又绝不让其中两台计算机在不经意间同时按下同一个物理按钮? 这就像是一群厨师都在烹饪同一道菜,但要确保在任何给定时刻,只有一个人被允许去打开炉灶。
这项研究背后的研究人员来自润典能源科技股份有限公司(Rundian Energy Science and Technology Co., Ltd.),他们构建了一个名为 VICP (虚拟化工业控制平台)的系统来解开这个谜题。他们意识到,虽然我们可以轻松地复制和同步数字数据(比如食谱或温度读数),但我们无法在物理按钮被按下后将其“撤回”。因此,他们将问题一分为二。首先,他们让集群中的每台计算机都保留一份本地的、最新的数据副本,以便能够快速思考。其次,他们创建了一套严格的“准许证”制度。要向物理世界发送指令(例如打开阀门),计算机必须持有由多数派支持的租约(majority-backed lease) 。你可以把它想象成一张“金票”,只有当该组中的大多数计算机都同意其仍然有效且未过期时,这张票才有效。如果网络发生分裂,或者某台计算机崩溃后尝试重新启动,它不能直接开始发布命令;它必须等待,直到它能够向多数派证明这样做是安全的。
在实验中,团队在一个运行基于 Go 语言原型的三台计算机小型集群上测试了这个想法。他们通过人为制造网络故障并关闭计算机来观察发生了什么。结果非常令人振奋:当一台计算机失效时,VICP 成功地将控制权切换到了备份机,平均耗时仅为 1,039.061 毫秒 (约 1 秒)。这是一个巨大的进步——比传统的“主备(active-standby)”设置快了约 50.54% ,后者恢复时间超过了 2,100.614 毫秒 。更重要的是,在 30 次模拟网络分裂的测试中,他们检测到零 次出现两台计算机试图同时输出指令的情况。他们还使用真实的物理硬件测试了该系统,通过一个充当最后安全卫士的“围栏网关(fencing gateway)”发送 4–20 mA 电信号(工业传感器的标准语言)。该系统保持了极高的信号精度,最大误差仅为 0.02078 mA 。
然而,作者谨慎地指出,不要将此视为解决所有安全关键型场景的“万灵药”。他们明确表示,他们的系统并非 经过认证的安全设备或独立紧急停机逻辑的替代品。它是一种让控制 层变得更加灵活和高可用性的方法,但最终的安全网仍然需要存在。他们还指出,其结果是基于模拟和特定的硬件设置(使用虚拟机和特定的 I/O 卡),因此虽然其数学逻辑在实验室中成立,但在实际部署时仍需进行更严苛的测试。该论文建议,通过将“思考”(可以被到处复制)与“行动”(需要严格的多数投票)分离,我们可以构建出既极具灵活性又极其安全的工业系统,前提是我们要遵守租约和围栏的规则。这是迈向未来工业基础设施的一步,使其像鸟群一样具有韧性:如果一只鸟落单了,其他的鸟依然能保持完美的同步飞行,而绝不会互相碰撞。
技术摘要:VICP —— 一种面向高可用工业边缘集群的多数派租约运行时
1. 问题陈述
工业自动化正日益向云原生架构迁移,利用通用服务器和容器来托管高级控制功能(例如模型预测控制)。然而,标准的云原生故障恢复机制(如进程重调度或流量重定向)解决了服务可用性问题,却未能解决物理输出安全性 问题。
在传统的分布式控制系统(DCS)中,现场通信、执行状态和输出权限都与专用硬件绑定。相比之下,虚拟化环境允许同时存在多个控制器副本。如果发生网络分区或副本之间出现分歧,标准的最终一致性模型可能会允许多个节点同时发出不可逆的物理指令(例如执行器动作)。这造成了关键的安全隐患:虽然点值(传感器数据)可以在稍后进行协调,但物理动作一旦执行便无法“撤回”。本文确定了核心系统问题:如何使小型工业边缘集群在节点发生故障时仍能保持本地控制能力,同时严格防止孤立副本产生并发的物理输出?
2. 方法论与系统设计
作者提出了 VICP (虚拟工业控制平台),一种将可逆的点状态复制 与不可逆的物理输出权限 解耦的运行时架构。
2.1 核心架构
本地优先状态: 控制任务在本地副本上运行,使用内存中的点表。高频控制回路访问本地状态,无需进行网络往返。通过异步传播使对等副本保持“热备”状态。
确定性收敛: 点更新以包含时间戳、优先级、源 ID 和序列号的元组形式表示。副本使用字典序比较进行确定性冲突解决,确保所有节点在无需为每次读取进行共识的情况下,都能收敛到相同的状态值。
多数派租约输出权限: 物理输出由受时间限制的租约进行门控。
节点必须持有由多数派法定人数(Q = f + 1 Q = f+1 Q = f + 1 )支持且未过期的租约,才能发出物理指令。
租约包含一个纪元(epoch)、持有者身份和过期截止时间。
如果节点失去与多数派的连接,其租约将过期,并被禁止进行输出。
“单生存者”模式是可能的,但需要显式的外部授权(例如硬件仲裁器或操作员程序),而非仅仅依靠网络观察。
2.2 恢复与隔离
阶段化恢复: 重启的节点不会立即重新加入控制回路。它通过一个状态机进行演进:启动 (Starting) → 发现 (Discovering) → 追赶 (Catching-Up) → 验证 (Validating) → 预服务 (Pre-Serving) → 服务 (Serving) 。这确保了陈旧的本地更新不会覆盖较新的对等体数值。
资源隔离: 关键任务(现场通信、控制回路、租约卫士)被绑定到特定的 CPU 核心,并与管理任务(日志、历史、配置)隔离。在资源压力下,非关键任务会被降级或暂停。
围栏网关(Fencing Gateway): 持久化的 I/O 网关在将指令转发至物理设备前,会验证围栏令牌(租约纪元和持有者)。即使运行时进程在暂停后恢复,它也会拒绝带有陈旧纪元的指令。
3. 主要贡献
本文做出了四个主要贡献:
拆分正确性模型: 它定义了一个模型,将用于可逆点状态的确定性收敛与用于不可逆物理输出的多数派租约要求区分开来。
本地优先运行时架构: 它展示了一种具有明确点所有权、确定性冲突解决、租约纪元、输出围栏和阶段化恢复状态机的架构。
集成可用性与资源管理: 它演示了计算组边界和 CPU/存储隔离如何保护关键控制路径免受管理平面负载的影响。
可复现的原型与评估: 它提供了一个基于 Go 的原型,并进行了涵盖故障转移、分区行为、同步规模、资源干扰以及双向硬件在环验证的全面评估。
4. 实验结果
作者在 openEuler 上使用 Docker 容器评估了一个运行在三个节点上的 Go 原型。
4.1 故障转移性能
中断时间: VICP 实现的平均输出中断时间为 1039.061 ms (95% 置信区间:1024.492–1053.631 ms)。
对比: 与配置好的主备(active-standby)基准(2100.614 ms)相比,这代表了 50.54% 的减少 。
安全性: 在 30 次故障转移运行中,未检测到跨节点执行重叠。
4.2 分区行为
在 30 次分区运行(将一个节点从其他两个节点中隔离)中,未检测到重复的输出候选者。
被隔离的节点在本地权限过期前执行了 5–9 个周期,而多数派侧继续运行。最后一个隔离输出与第一个多数派输出之间的间隔平均为 944.081 ms 。
根据伯努利解释,0/30 的事件率得出了精确的单侧 95% 上界,即单次运行事件概率为 9.5%。
4.3 同步与规模
系统成功同步了 50,000 个点 ,平均吞吐量约为 18,363 点/秒。
组内样本的平均同步延迟为 8.192 ms。
4.4 资源干扰
CPU 隔离: 被隔离核心上的 CPU 压力对控制周期抖动的影响微乎其微。然而,共享运行时核心上的压力使 P99 抖动增加到 4.981 ms。
磁盘 I/O: 运行时主机上的同步磁盘 I/O 显著增加了 P99 抖动至 28.542 ms ,这表明仅靠容器边界并不能隔离磁盘干扰。
4.5 硬件在环 (HIL) 验证
系统通过一个经过围栏处理的 Modbus/TCP 网关处理了 1,200 个物理 4–20 mA 样本(600 个模拟输入,600 个模拟输出)。
精度: 最大设定值-平均值偏差(AI)为 0.01764 mA (AO)为 0.02078 mA 。
线性度: R 2 R^2 R 2 值超过 0.999999。
安全性: 未记录到坏质量或离线样本。
5. 重要性与声明
本文将 VICP 定位为一项可行性研究 和可复现的原型 ,而非经过安全认证的产品。
范围: 作者明确指出,该原型并不 声称具备硬实时保证、拜占庭容错或符合安全完整性等级(如 SIL)。
主要成就: 该工作证明了将输出权限与状态复制分离在通用基础设施上是可实现的。它证明了基于多数派的租约可以有效地门控不可逆的物理输出,在减少故障转移中断时间方面比标准的主备配置缩短了约一半,同时在分区期间防止了并发输出。
工程边界: 论文强调,安全性取决于租约计时假设以及在物理 I/O 边界实施围栏。作者认为,虽然软件机制是健全的,但生产部署需要经过认证的硬件仲裁器、身份验证的消息传递和受监控的时钟同步。
未来工作: 作者指出,还需要进一步的验证,包括将围栏移动到独立的硬件、在 ARM 架构上进行测试,以及开展多样化故障注入的长周期实验。
总之,VICP 为工业边缘集群提供了一种实用的架构模式,它在保持云原生计算灵活性的同时,兼顾了物理过程控制的严格安全要求,前提是必须严格应用特定的工程控制(围栏、资源隔离和外部授权)。
每周获取最佳 electrical engineering 论文。
受到斯坦福、剑桥和法国科学院研究人员的信赖。
请查收邮箱确认订阅。
出了点问题,再试一次?
无垃圾邮件,随时退订。