Skip to main content
QUICK REVIEW

[论文解读] Determinating Timing Channels in Compute Clouds

Amittai Aviram, Sen Hu|arXiv (Cornell University)|Mar 27, 2010
Parallel Computing and Optimization Techniques参考文献 35被引用 7
一句话总结

本文提出在云环境中由服务提供商强制执行确定性执行,通过确保所有执行时间差异均从应用程序输出中消除,从而消除内部时间通道,无论是否存在并行处理或共享硬件。原型操作系统的实验表明,确定性执行可为粗粒度并行工作负载实现接近原生性能,使其成为云安全领域资源分区的可行且高效的替代方案。

ABSTRACT

Timing side-channels represent an insidious security challenge for cloud computing, because: (a) massive parallelism in the cloud makes timing channels pervasive and hard to control; (b) timing channels enable one customer to steal information from another without leaving a trail or raising alarms; (c) only the cloud provider can feasibly detect and report such attacks, but the provider's incentives are not to; and (d) resource partitioning schemes for timing channel control undermine statistical sharing efficiency, and, with it, the cloud computing business model. We propose a new approach to timing channel control, using provider-enforced deterministic execution instead of resource partitioning to eliminate timing channels within a shared cloud domain. Provider-enforced determinism prevents execution timing from affecting the results of a compute task, however large or parallel, ensuring that a task's outputs leak no timing information apart from explicit timing inputs and total compute duration. Experiments with a prototype OS for deterministic cloud computing suggest that such an approach may be practical and efficient. The OS supports deterministic versions of familiar APIs such as processes, threads, shared memory, and file systems, and runs coarse-grained parallel tasks as efficiently and scalably as current timing channel-ridden systems.

研究动机与目标

  • 为应对多租户云环境中日益增长的时间侧信道威胁,其中共享硬件资源可能导致隐蔽的信息泄露。
  • 克服现有解决方案(如资源分区)的局限性,后者降低了统计多路复用性,损害了云的商业模式。
  • 探索由云服务提供商强制执行的确定性执行是否能够消除所有内部时间通道,同时保持高性能和应用程序兼容性。
  • 评估一种新型操作系统架构在云环境中强制实现跨进程、线程和共享内存的确定性的可行性与效率。

提出的方法

  • 在云服务提供商层面强制执行确定性执行,确保所有执行时间差异均从应用程序输出中消除。
  • 设计一个原型操作系统(Determinator),支持标准API的确定性版本,包括进程、线程、共享内存和文件系统。
  • 采用确定性调度和执行模型,防止因并行处理、缓存共享或硬件资源争用而引发的时间侧信道。
  • 将该方法应用于粗粒度并行应用程序(如md5和blackscholes),与Linux进行性能对比评估。
  • 评估在标准操作系统中禁用高分辨率定时器的影响,以判断此类措施是否能有效减少时间泄露。
  • 在一系列基准测试(包括SPLASH-2和Apache Web服务器)中,对比确定性与非确定性系统的性能表现。

实验结果

研究问题

  • RQ1在云服务提供商层面实施确定性执行,是否能够完全消除共享云环境中的所有内部时间通道?
  • RQ2对于粗粒度并行工作负载,确定性操作系统的性能与标准Linux相比如何?
  • RQ3现有系统(如Linux)在多大程度上依赖高分辨率定时器?其禁用是否能有效关闭时间通道?
  • RQ4确定性云架构能否高效支持交互式、事务性或通信密集型应用程序?
  • RQ5在无需显著重构的情况下,是否可行将遗留程序或多进程应用程序运行在确定性云环境中?

主要发现

  • 在12个核心上,md5基准测试在确定性操作系统上的性能比Linux高出2倍以上,表明某些工作负载可能存在性能优势。
  • blackscholes基准测试(属于明显可并行的应用)在确定性操作系统上运行高效,性能开销恒定,归因于确定性调度机制。
  • SPLASH-2套件中的细粒度并行应用程序因频繁的线程间同步而产生更高的性能开销,表明细粒度工作负载存在性能权衡。
  • 在Linux中禁用高分辨率定时器导致Apache Web服务器吞吐量下降约20%,表明此类定时器对性能至关重要,难以轻易移除。
  • 原型操作系统成功在进程、线程和共享内存层面强制实现了确定性,证明了在云环境中实现确定性执行的可行性。
  • 该方法通过将所有内部时间通道聚合为云边界处一个单一、可控的通道,彻底消除了所有内部时间通道,且无需资源分区。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。