通过叠加和回溯合成自稳定机制
1. 引言
自稳定是当今分布式系统的一个重要特性,因为它能确保在出现瞬态故障(如协调丢失和错误初始化)时系统仍能收敛。也就是说,自稳定(SS)系统能从任何状态或配置出发,在有限步骤内恢复到一组合法状态(即不变量)。而且,从其不变量状态开始,SS 系统的执行会满足其规范并保持在不变量状态内,这就是所谓的闭合性。
设计和验证收敛性是困难的任务,主要原因包括:
- 要从任何状态进行恢复;
- 在分布约束下恢复,即进程只能读写其相邻进程的状态(局部性);
- 要保证收敛过程不干扰闭合性。
本文提出了一种通过变量叠加和完全回溯搜索来进行自稳定算法设计的新方法。大多数现有的自稳定设计方法要么是手动的,要么是基于启发式的,这些方法可能无法为某些系统找到解决方案,即它们是合理但不完整的。
本文提出的方法具有以下特点:
- 系统地引入计算冗余,通过向现有协议的变量(底层变量)引入新变量(叠加变量);
- 采用智能并行回溯方法,在固定数量的线程中并行进行回溯搜索,当一个线程发现会导致搜索失败的设计选择组合(冲突)时,会与其他线程共享此信息,提高合成过程中的资源利用率。
该方法的贡献是多方面的:
- 提出的合成算法是完整的,如果存在 SS 解决方案,算法一定能找到;
- 放宽了自稳定设计问题的约束,允许在不变量内存在新的叠加行为,这与之前要求在算法设计中不变量内不包含新行为的工作不同;
- 提供了该方法的三种不同实现作为软件工具集 Protocon,包括顺序实现、多线程并行实现和基于 MPI 的并行实现;
- 通过合成四个现有启发式方法无法解决
超级会员免费看
订阅专栏 解锁全文
899

被折叠的 条评论
为什么被折叠?



