分布式异构 N 变体执行技术解析
在当今复杂的计算环境中,保障系统的安全性和性能是至关重要的。分布式异构 N 变体执行(DMON)技术为解决这些问题提供了一种有效的方案。本文将详细介绍 DMON 的设计、实现、安全分析以及性能评估等方面的内容。
1. 分布式监控设计
早期的工作常采用中央监控进程同时监督所有变体,但这种集中式模型过于注重简单性和安全性,牺牲了性能。后续研究提出了为每个变体配备专用监控实例的设计,可将监控实例直接加载到变体的地址空间,以减少变体与监控之间的通信开销,但会牺牲两者之间的隔离性。
DMON 结合了这两种设计的元素。由于在不同机器上运行 ISA 异构的变体,无法使用本地连接到所有变体的中央监控器。因此,为每个变体使用一个专用监控器,并将其运行在被监督变体所在的同一台机器上。同时,通过将监控器作为一个单独的进程,使用 ptrace API 连接到变体,来强制执行变体与其监控器之间的严格隔离。
2. 监控器间通信
当变体执行系统调用时,F - MON 和 L - MON 会进行通信,交换的信息可能包括系统调用号、序列化的系统调用参数、系统调用结果或如何从系统调用入口点继续执行的指令。在许多情况下,特别是当执行的系统调用被认为是安全敏感的时,通信必须同步进行。
为了实现良好的性能,DMON 需要一个可靠的监控器间通信通道,具有最小的延迟和高带宽。为此,对通信通道进行了多种设计实验,并在 RC - COM 中实现了这些设计,它向监控器公开了监控器间通信 API。
在网络协议选择方面,最初基于 TCP 实现了 RC - COM,但即使经过大量调优,基于 TCP 的实现仍存在吞吐量低和
超级会员免费看
订阅专栏 解锁全文
32

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



