首页 > 最新文献

ACM Transactions on Computer Systems最新文献

英文 中文
DoublePlay: parallelizing sequential logging and replay 双播放:并行顺序日志和重放
IF 1.5 4区 计算机科学 Q2 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2011-03-05 DOI: 10.1145/1950365.1950370
K. Veeraraghavan, Dongyoon Lee, Benjamin Wester, Jessica Ouyang, Peter M. Chen, J. Flinn, S. Narayanasamy
Deterministic replay systems record and reproduce the execution of a hardware or software system. In contrast to replaying execution on uniprocessors, deterministic replay on multiprocessors is very challenging to implement efficiently because of the need to reproduce the order or values read by shared memory operations performed by multiple threads. In this paper, we present DoublePlay, a new way to efficiently guarantee replay on commodity multiprocessors. Our key insight is that one can use the simpler and faster mechanisms of single-processor record and replay, yet still achieve the scalability offered by multiple cores, by using an additional execution to parallelize the record and replay of an application. DoublePlay timeslices multiple threads on a single processor, then runs multiple time intervals (epochs) of the program concurrently on separate processors. This strategy, which we call uniparallelism, makes logging much easier because each epoch runs on a single processor (so threads in an epoch never simultaneously access the same memory) and different epochs operate on different copies of the memory. Thus, rather than logging the order of shared-memory accesses, we need only log the order in which threads in an epoch are timesliced on the processor. DoublePlay runs an additional execution of the program on multiple processors to generate checkpoints so that epochs run in parallel. We evaluate DoublePlay on a variety of client, server, and scientific parallel benchmarks; with spare cores, DoublePlay reduces logging overhead to an average of 15% with two worker threads and 28% with four threads.
确定性重放系统记录和再现硬件或软件系统的执行。与单处理器上的重放执行相比,多处理器上的确定性重放很难有效地实现,因为需要重现多线程执行的共享内存操作读取的顺序或值。本文提出了一种在商用多处理器上有效保证重放的新方法——双播放。我们的主要见解是,通过使用额外的执行来并行化应用程序的记录和重播,可以使用更简单、更快的单处理器记录和重播机制,但仍然可以实现多核提供的可伸缩性。双播放在单个处理器上对多个线程进行时间切片,然后在不同的处理器上并发地运行程序的多个时间间隔(epoch)。这种策略(我们称之为单并行性)使日志记录变得更加容易,因为每个epoch在单个处理器上运行(因此epoch中的线程永远不会同时访问相同的内存),并且不同的epoch在不同的内存副本上操作。因此,我们不需要记录共享内存访问的顺序,而只需要记录一个epoch中线程在处理器上被时间切片的顺序。DoublePlay在多个处理器上运行程序的额外执行,以生成检查点,以便epoch并行运行。我们在各种客户端,服务器和科学并行基准上评估双玩;使用备用核,DoublePlay在使用两个工作线程时将日志开销平均降低到15%,在使用四个线程时将日志开销平均降低到28%。
{"title":"DoublePlay: parallelizing sequential logging and replay","authors":"K. Veeraraghavan, Dongyoon Lee, Benjamin Wester, Jessica Ouyang, Peter M. Chen, J. Flinn, S. Narayanasamy","doi":"10.1145/1950365.1950370","DOIUrl":"https://doi.org/10.1145/1950365.1950370","url":null,"abstract":"Deterministic replay systems record and reproduce the execution of a hardware or software system. In contrast to replaying execution on uniprocessors, deterministic replay on multiprocessors is very challenging to implement efficiently because of the need to reproduce the order or values read by shared memory operations performed by multiple threads. In this paper, we present DoublePlay, a new way to efficiently guarantee replay on commodity multiprocessors. Our key insight is that one can use the simpler and faster mechanisms of single-processor record and replay, yet still achieve the scalability offered by multiple cores, by using an additional execution to parallelize the record and replay of an application. DoublePlay timeslices multiple threads on a single processor, then runs multiple time intervals (epochs) of the program concurrently on separate processors. This strategy, which we call uniparallelism, makes logging much easier because each epoch runs on a single processor (so threads in an epoch never simultaneously access the same memory) and different epochs operate on different copies of the memory. Thus, rather than logging the order of shared-memory accesses, we need only log the order in which threads in an epoch are timesliced on the processor. DoublePlay runs an additional execution of the program on multiple processors to generate checkpoints so that epochs run in parallel. We evaluate DoublePlay on a variety of client, server, and scientific parallel benchmarks; with spare cores, DoublePlay reduces logging overhead to an average of 15% with two worker threads and 28% with four threads.","PeriodicalId":50918,"journal":{"name":"ACM Transactions on Computer Systems","volume":"1 1","pages":"15-26"},"PeriodicalIF":1.5,"publicationDate":"2011-03-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1145/1950365.1950370","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"64122270","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 196
SnowFlock: Virtual Machine Cloning as a First-Class Cloud Primitive SnowFlock:作为一级云原语的虚拟机克隆
IF 1.5 4区 计算机科学 Q2 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2011-02-01 DOI: 10.1145/1925109.1925111
H. A. Lagar-Cavilla, J. Whitney, R. Bryant, Philip Patchin, M. Brudno, E. D. Lara, Stephen M. Rumble, M. Satyanarayanan, A. Scannell
A basic building block of cloud computing is virtualization. Virtual machines (VMs) encapsulate a user’s computing environment and efficiently isolate it from that of other users. VMs, however, are large entities, and no clear APIs exist yet to provide users with programatic, fine-grained control on short time scales. We present SnowFlock, a paradigm and system for cloud computing that introduces VM cloning as a first-class cloud abstraction. VM cloning exploits the well-understood and effective semantics of UNIX fork. We demonstrate multiple usage models of VM cloning: users can incorporate the primitive in their code, can wrap around existing toolchains via scripting, can encapsulate the API within a parallel programming framework, or can use it to load-balance and self-scale clustered servers. VM cloning needs to be efficient to be usable. It must efficiently transmit VM state in order to avoid cloud I/O bottlenecks. We demonstrate how the semantics of cloning aid us in realizing its efficiency: state is propagated in parallel to multiple VM clones, and is transmitted during runtime, allowing for optimizations that substantially reduce the I/O load. We show detailed microbenchmark results highlighting the efficiency of our optimizations, and macrobenchmark numbers demonstrating the effectiveness of the different usage models of SnowFlock.
云计算的一个基本组成部分是虚拟化。虚拟机将用户的计算环境封装起来,并有效地将其与其他用户的计算环境隔离开来。然而,虚拟机是大型实体,目前还没有明确的api可以在短时间内为用户提供可编程的、细粒度的控制。我们提出了SnowFlock,这是一个云计算的范例和系统,它将VM克隆作为一流的云抽象引入其中。VM克隆利用了UNIX分支的易于理解和有效的语义。我们演示了VM克隆的多种使用模型:用户可以将原语合并到他们的代码中,可以通过脚本封装现有的工具链,可以将API封装在并行编程框架中,或者可以使用它来负载平衡和自扩展集群服务器。VM克隆需要高效才能可用。它必须有效地传输虚拟机状态,以避免云I/O瓶颈。我们将演示克隆的语义如何帮助我们实现其效率:状态并行地传播到多个VM克隆,并在运行时传输,从而实现大大减少I/O负载的优化。我们展示了详细的微基准测试结果,突出了优化的效率,而宏观基准测试数字则展示了SnowFlock不同使用模型的有效性。
{"title":"SnowFlock: Virtual Machine Cloning as a First-Class Cloud Primitive","authors":"H. A. Lagar-Cavilla, J. Whitney, R. Bryant, Philip Patchin, M. Brudno, E. D. Lara, Stephen M. Rumble, M. Satyanarayanan, A. Scannell","doi":"10.1145/1925109.1925111","DOIUrl":"https://doi.org/10.1145/1925109.1925111","url":null,"abstract":"A basic building block of cloud computing is virtualization. Virtual machines (VMs) encapsulate a user’s computing environment and efficiently isolate it from that of other users. VMs, however, are large entities, and no clear APIs exist yet to provide users with programatic, fine-grained control on short time scales.\u0000 We present SnowFlock, a paradigm and system for cloud computing that introduces VM cloning as a first-class cloud abstraction. VM cloning exploits the well-understood and effective semantics of UNIX fork. We demonstrate multiple usage models of VM cloning: users can incorporate the primitive in their code, can wrap around existing toolchains via scripting, can encapsulate the API within a parallel programming framework, or can use it to load-balance and self-scale clustered servers.\u0000 VM cloning needs to be efficient to be usable. It must efficiently transmit VM state in order to avoid cloud I/O bottlenecks. We demonstrate how the semantics of cloning aid us in realizing its efficiency: state is propagated in parallel to multiple VM clones, and is transmitted during runtime, allowing for optimizations that substantially reduce the I/O load. We show detailed microbenchmark results highlighting the efficiency of our optimizations, and macrobenchmark numbers demonstrating the effectiveness of the different usage models of SnowFlock.","PeriodicalId":50918,"journal":{"name":"ACM Transactions on Computer Systems","volume":"54 1","pages":"2:1-2:45"},"PeriodicalIF":1.5,"publicationDate":"2011-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"74044221","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 54
The PowerNap Server Architecture PowerNap服务器架构
IF 1.5 4区 计算机科学 Q2 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2011-02-01 DOI: 10.1145/1925109.1925112
David Meisner, Brian T. Gold, T. Wenisch
Data center power consumption is growing to unprecedented levels: the EPA estimates U.S. data centers will consume 100 billion kilowatt hours annually by 2011. Much of this energy is wasted in idle systems: in typical deployments, server utilization is below 30%, but idle servers still consume 60% of their peak power draw. Typical idle periods---though frequent---last seconds or less, confounding simple energy-conservation approaches. In this article, we propose PowerNap, an energy-conservation approach where the entire system transitions rapidly between a high-performance active state and a near-zero-power idle state in response to instantaneous load. Rather than requiring fine-grained power-performance states and complex load-proportional operation from individual system components, PowerNap instead calls for minimizing idle power and transition time, which are simpler optimization goals. Based on the PowerNap concept, we develop requirements and outline mechanisms to eliminate idle power waste in enterprise blade servers. Because PowerNap operates in low-efficiency regions of current blade center power supplies, we introduce the Redundant Array for Inexpensive Load Sharing (RAILS), a power provisioning approach that provides high conversion efficiency across the entire range of PowerNap’s power demands. Using utilization traces collected from enterprise-scale commercial deployments, we demonstrate that, together, PowerNap and RAILS reduce average server power consumption by 74%.
数据中心的电力消耗正增长到前所未有的水平:美国环保署估计,到2011年,美国数据中心每年将消耗1000亿千瓦时。大部分的能量都浪费在空闲系统上:在典型的部署中,服务器利用率低于30%,但是空闲服务器仍然消耗其峰值功耗的60%。典型的空闲时间(虽然频繁)持续几秒钟或更短,使简单的节能方法变得混乱。在本文中,我们提出了PowerNap,这是一种节能方法,整个系统在响应瞬时负载时在高性能主动状态和接近零功耗空闲状态之间快速转换。PowerNap不需要单个系统组件的细粒度功率性能状态和复杂的负载比例操作,而是要求最小化空闲功率和转换时间,这是更简单的优化目标。基于PowerNap概念,我们开发了需求并概述了消除企业刀片服务器中空闲电源浪费的机制。由于PowerNap在当前刀片中心电源的低效率区域运行,因此我们引入了廉价负载共享冗余阵列(RAILS),这是一种电源供应方法,可在PowerNap的整个功率需求范围内提供高转换效率。通过使用从企业级商业部署中收集的利用率跟踪,我们证明,PowerNap和RAILS一起可以将服务器的平均功耗降低74%。
{"title":"The PowerNap Server Architecture","authors":"David Meisner, Brian T. Gold, T. Wenisch","doi":"10.1145/1925109.1925112","DOIUrl":"https://doi.org/10.1145/1925109.1925112","url":null,"abstract":"Data center power consumption is growing to unprecedented levels: the EPA estimates U.S. data centers will consume 100 billion kilowatt hours annually by 2011. Much of this energy is wasted in idle systems: in typical deployments, server utilization is below 30%, but idle servers still consume 60% of their peak power draw. Typical idle periods---though frequent---last seconds or less, confounding simple energy-conservation approaches.\u0000 In this article, we propose PowerNap, an energy-conservation approach where the entire system transitions rapidly between a high-performance active state and a near-zero-power idle state in response to instantaneous load. Rather than requiring fine-grained power-performance states and complex load-proportional operation from individual system components, PowerNap instead calls for minimizing idle power and transition time, which are simpler optimization goals. Based on the PowerNap concept, we develop requirements and outline mechanisms to eliminate idle power waste in enterprise blade servers. Because PowerNap operates in low-efficiency regions of current blade center power supplies, we introduce the Redundant Array for Inexpensive Load Sharing (RAILS), a power provisioning approach that provides high conversion efficiency across the entire range of PowerNap’s power demands. Using utilization traces collected from enterprise-scale commercial deployments, we demonstrate that, together, PowerNap and RAILS reduce average server power consumption by 74%.","PeriodicalId":50918,"journal":{"name":"ACM Transactions on Computer Systems","volume":"3 1","pages":"3:1-3:24"},"PeriodicalIF":1.5,"publicationDate":"2011-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"80370291","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 43
Load Balancing Content-Based Publish/Subscribe Systems 负载平衡基于内容的发布/订阅系统
IF 1.5 4区 计算机科学 Q2 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2010-12-01 DOI: 10.1145/1880018.1880020
A. Cheung, H. Jacobsen
Distributed content-based publish/subscribe systems suffer from performance degradation and poor scalability caused by uneven load distributions typical in real-world applications. The reason for this shortcoming is the lack of a load balancing scheme. This article proposes a load balancing solution specifically tailored to the needs of content-based publish/subscribe systems that is distributed, dynamic, adaptive, transparent, and accommodates heterogeneity. The solution consists of three key contributions: a load balancing framework, a novel load estimation algorithm, and three offload strategies. A working prototype of our solution is built on an open-sourced content-based publish/subscribe system and evaluated on PlanetLab, a cluster testbed, and in simulations. Real-life experiment results show that the proposed load balancing solution is efficient with less than 0.2% overhead; effective in distributing and balancing load originating from a single server to all available servers in the network; and capable of preventing overloads to preserve system stability, availability, and quality of service.
基于内容的分布式发布/订阅系统存在性能下降和可伸缩性差的问题,这是现实应用程序中常见的负载分布不均匀造成的。造成这个缺点的原因是缺乏负载平衡方案。本文提出了一种负载平衡解决方案,专门针对基于内容的发布/订阅系统的需求进行定制,该系统是分布式的、动态的、自适应的、透明的,并且支持异构性。该解决方案由三个关键部分组成:一个负载平衡框架、一种新的负载估计算法和三种卸载策略。我们的解决方案的工作原型建立在一个开源的基于内容的发布/订阅系统上,并在PlanetLab(一个集群测试平台)和模拟中进行了评估。实际实验结果表明,本文提出的负载均衡方案具有较好的效率,开销小于0.2%;有效地分配和平衡来自单个服务器的负载到网络中所有可用的服务器;并且能够防止过载,以保持系统稳定性、可用性和服务质量。
{"title":"Load Balancing Content-Based Publish/Subscribe Systems","authors":"A. Cheung, H. Jacobsen","doi":"10.1145/1880018.1880020","DOIUrl":"https://doi.org/10.1145/1880018.1880020","url":null,"abstract":"Distributed content-based publish/subscribe systems suffer from performance degradation and poor scalability caused by uneven load distributions typical in real-world applications. The reason for this shortcoming is the lack of a load balancing scheme. This article proposes a load balancing solution specifically tailored to the needs of content-based publish/subscribe systems that is distributed, dynamic, adaptive, transparent, and accommodates heterogeneity. The solution consists of three key contributions: a load balancing framework, a novel load estimation algorithm, and three offload strategies. A working prototype of our solution is built on an open-sourced content-based publish/subscribe system and evaluated on PlanetLab, a cluster testbed, and in simulations. Real-life experiment results show that the proposed load balancing solution is efficient with less than 0.2% overhead; effective in distributing and balancing load originating from a single server to all available servers in the network; and capable of preventing overloads to preserve system stability, availability, and quality of service.","PeriodicalId":50918,"journal":{"name":"ACM Transactions on Computer Systems","volume":"82 1","pages":"9:1-9:55"},"PeriodicalIF":1.5,"publicationDate":"2010-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"82160633","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 54
Contention-Aware Scheduling on Multicore Systems 多核系统的竞争感知调度
IF 1.5 4区 计算机科学 Q2 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2010-12-01 DOI: 10.1145/1880018.1880019
S. Blagodurov, Sergey Zhuravlev, Alexandra Fedorova
Contention for shared resources on multicore processors remains an unsolved problem in existing systems despite significant research efforts dedicated to this problem in the past. Previous solutions focused primarily on hardware techniques and software page coloring to mitigate this problem. Our goal is to investigate how and to what extent contention for shared resource can be mitigated via thread scheduling. Scheduling is an attractive tool, because it does not require extra hardware and is relatively easy to integrate into the system. Our study is the first to provide a comprehensive analysis of contention-mitigating techniques that use only scheduling. The most difficult part of the problem is to find a classification scheme for threads, which would determine how they affect each other when competing for shared resources. We provide a comprehensive analysis of such classification schemes using a newly proposed methodology that enables to evaluate these schemes separately from the scheduling algorithm itself and to compare them to the optimal. As a result of this analysis we discovered a classification scheme that addresses not only contention for cache space, but contention for other shared resources, such as the memory controller, memory bus and prefetching hardware. To show the applicability of our analysis we design a new scheduling algorithm, which we prototype at user level, and demonstrate that it performs within 2% of the optimal. We also conclude that the highest impact of contention-aware scheduling techniques is not in improving performance of a workload as a whole but in improving quality of service or performance isolation for individual applications and in optimizing system energy consumption.
多核处理器上共享资源的争用在现有系统中仍然是一个未解决的问题,尽管过去对这个问题进行了大量的研究。以前的解决方案主要关注硬件技术和软件页面着色来缓解这个问题。我们的目标是研究如何以及在多大程度上通过线程调度来缓解共享资源的争用。调度是一个有吸引力的工具,因为它不需要额外的硬件,并且相对容易集成到系统中。我们的研究首次对仅使用调度的争用缓解技术进行了全面分析。这个问题中最困难的部分是为线程找到一个分类方案,该方案将确定它们在争夺共享资源时如何相互影响。我们使用一种新提出的方法对这些分类方案进行了全面的分析,该方法能够从调度算法本身单独评估这些方案,并将它们与最优方案进行比较。通过这种分析,我们发现了一种分类方案,它不仅解决了对缓存空间的争用,还解决了对其他共享资源(如内存控制器、内存总线和预取硬件)的争用。为了证明我们的分析的适用性,我们设计了一个新的调度算法,我们在用户级原型,并证明它的执行在最优的2%以内。我们还得出结论,感知争用调度技术的最大影响不在于提高整个工作负载的性能,而在于提高单个应用程序的服务质量或性能隔离,以及优化系统能耗。
{"title":"Contention-Aware Scheduling on Multicore Systems","authors":"S. Blagodurov, Sergey Zhuravlev, Alexandra Fedorova","doi":"10.1145/1880018.1880019","DOIUrl":"https://doi.org/10.1145/1880018.1880019","url":null,"abstract":"Contention for shared resources on multicore processors remains an unsolved problem in existing systems despite significant research efforts dedicated to this problem in the past. Previous solutions focused primarily on hardware techniques and software page coloring to mitigate this problem. Our goal is to investigate how and to what extent contention for shared resource can be mitigated via thread scheduling. Scheduling is an attractive tool, because it does not require extra hardware and is relatively easy to integrate into the system. Our study is the first to provide a comprehensive analysis of contention-mitigating techniques that use only scheduling. The most difficult part of the problem is to find a classification scheme for threads, which would determine how they affect each other when competing for shared resources. We provide a comprehensive analysis of such classification schemes using a newly proposed methodology that enables to evaluate these schemes separately from the scheduling algorithm itself and to compare them to the optimal. As a result of this analysis we discovered a classification scheme that addresses not only contention for cache space, but contention for other shared resources, such as the memory controller, memory bus and prefetching hardware. To show the applicability of our analysis we design a new scheduling algorithm, which we prototype at user level, and demonstrate that it performs within 2% of the optimal. We also conclude that the highest impact of contention-aware scheduling techniques is not in improving performance of a workload as a whole but in improving quality of service or performance isolation for individual applications and in optimizing system energy consumption.","PeriodicalId":50918,"journal":{"name":"ACM Transactions on Computer Systems","volume":"28 2 1","pages":"8:1-8:45"},"PeriodicalIF":1.5,"publicationDate":"2010-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"77901349","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 168
Depot: Cloud Storage with Minimal Trust 仓库:最低信任的云存储
IF 1.5 4区 计算机科学 Q2 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2010-10-04 DOI: 10.1145/2063509.2063512
Prince Mahajan, Srinath T. V. Setty, Sangmin Lee, Allen Clement, L. Alvisi, M. Dahlin, Michael Walfish
This article describes the design, implementation, and evaluation of Depot, a cloud storage system that minimizes trust assumptions. Depot tolerates buggy or malicious behavior by any number of clients or servers, yet it provides safety and liveness guarantees to correct clients. Depot provides these guarantees using a two-layer architecture. First, Depot ensures that the updates observed by correct nodes are consistently ordered under Fork-Join-Causal consistency (FJC). FJC is a slight weakening of causal consistency that can be both safe and live despite faulty nodes. Second, Depot implements protocols that use this consistent ordering of updates to provide other desirable consistency, staleness, durability, and recovery properties. Our evaluation suggests that the costs of these guarantees are modest and that Depot can tolerate faults and maintain good availability, latency, overhead, and staleness even when significant faults occur.
本文描述了Depot的设计、实现和评估,这是一个最小化信任假设的云存储系统。Depot容忍任何数量的客户端或服务器的错误或恶意行为,但它提供安全性和活动性保证来纠正客户端。Depot使用两层架构提供这些保证。首先,Depot确保正确节点观察到的更新在分叉-连接-因果一致性(FJC)下一致地排序。FJC是对因果一致性的轻微削弱,尽管存在故障节点,但它可以既安全又有效。其次,Depot实现了使用这种一致更新顺序的协议,以提供其他所需的一致性、过期性、持久性和恢复属性。我们的评估表明,这些保证的成本是适度的,并且即使在发生重大故障时,Depot也可以容忍故障并保持良好的可用性、延迟、开销和陈旧。
{"title":"Depot: Cloud Storage with Minimal Trust","authors":"Prince Mahajan, Srinath T. V. Setty, Sangmin Lee, Allen Clement, L. Alvisi, M. Dahlin, Michael Walfish","doi":"10.1145/2063509.2063512","DOIUrl":"https://doi.org/10.1145/2063509.2063512","url":null,"abstract":"This article describes the design, implementation, and evaluation of Depot, a cloud storage system that minimizes trust assumptions. Depot tolerates buggy or malicious behavior by any number of clients or servers, yet it provides safety and liveness guarantees to correct clients. Depot provides these guarantees using a two-layer architecture. First, Depot ensures that the updates observed by correct nodes are consistently ordered under Fork-Join-Causal consistency (FJC). FJC is a slight weakening of causal consistency that can be both safe and live despite faulty nodes. Second, Depot implements protocols that use this consistent ordering of updates to provide other desirable consistency, staleness, durability, and recovery properties. Our evaluation suggests that the costs of these guarantees are modest and that Depot can tolerate faults and maintain good availability, latency, overhead, and staleness even when significant faults occur.","PeriodicalId":50918,"journal":{"name":"ACM Transactions on Computer Systems","volume":"46 1","pages":"12:1-12:38"},"PeriodicalIF":1.5,"publicationDate":"2010-10-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"87051399","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 334
The SMesh wireless mesh network SMesh无线网状网络
IF 1.5 4区 计算机科学 Q2 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2010-09-01 DOI: 10.1145/1841313.1841314
Y. Amir, C. Danilov, R. Musaloiu-Elefteri, N. Rivera
Wireless mesh networks extend the connectivity range of mobile devices by using multiple access points, some of them connected to the Internet, to create a mesh topology and forward packets over multiple wireless hops. However, the quality of service provided by the mesh is impaired by the delays and disconnections caused by handoffs, as clients move within the area covered by multiple access points. We present the architecture and protocols of SMesh, the first transparent wireless mesh system that offers seamless, fast handoff, supporting real-time applications such as interactive VoIP. The handoff and routing logic is done solely by the access points, and therefore connectivity is attainable by any 802.11 device. In SMesh, the entire mesh network is seen by the mobile clients as a single, omnipresent access point, giving the mobile clients the illusion that they are stationary. We use multicast for access points coordination and, during handoff transitions, we use more than one access point to handle the moving client. SMesh provides a hybrid routing protocol that optimizes routes over wireless and wired links in a multihomed environment. Experimental results on a fully deployed mesh network demonstrate the effectiveness of the SMesh architecture and its intra-domain and inter-domain handoff protocols.
无线网状网络通过使用多个接入点(其中一些接入点连接到互联网)来创建网状拓扑并通过多个无线跳转发数据包,从而扩展了移动设备的连接范围。然而,当客户端在多个接入点覆盖的区域内移动时,由于切换引起的延迟和断开,mesh提供的服务质量受到损害。我们介绍了SMesh的架构和协议,SMesh是第一个提供无缝,快速切换的透明无线网状系统,支持交互式VoIP等实时应用。切换和路由逻辑仅由接入点完成,因此任何802.11设备都可以实现连接。在SMesh中,整个网状网络被移动客户端视为一个单一的、无所不在的接入点,给移动客户端一种他们是静止的错觉。我们使用多播进行接入点协调,并且在切换转换期间,我们使用多个接入点来处理移动的客户端。SMesh提供了一种混合路由协议,可以在多宿主环境中优化无线和有线链路上的路由。在完全部署的网状网络上的实验结果证明了SMesh架构及其域内和域间切换协议的有效性。
{"title":"The SMesh wireless mesh network","authors":"Y. Amir, C. Danilov, R. Musaloiu-Elefteri, N. Rivera","doi":"10.1145/1841313.1841314","DOIUrl":"https://doi.org/10.1145/1841313.1841314","url":null,"abstract":"Wireless mesh networks extend the connectivity range of mobile devices by using multiple access points, some of them connected to the Internet, to create a mesh topology and forward packets over multiple wireless hops. However, the quality of service provided by the mesh is impaired by the delays and disconnections caused by handoffs, as clients move within the area covered by multiple access points. We present the architecture and protocols of SMesh, the first transparent wireless mesh system that offers seamless, fast handoff, supporting real-time applications such as interactive VoIP. The handoff and routing logic is done solely by the access points, and therefore connectivity is attainable by any 802.11 device. In SMesh, the entire mesh network is seen by the mobile clients as a single, omnipresent access point, giving the mobile clients the illusion that they are stationary. We use multicast for access points coordination and, during handoff transitions, we use more than one access point to handle the moving client. SMesh provides a hybrid routing protocol that optimizes routes over wireless and wired links in a multihomed environment. Experimental results on a fully deployed mesh network demonstrate the effectiveness of the SMesh architecture and its intra-domain and inter-domain handoff protocols.","PeriodicalId":50918,"journal":{"name":"ACM Transactions on Computer Systems","volume":"43 1","pages":"6:1-6:49"},"PeriodicalIF":1.5,"publicationDate":"2010-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"86292843","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 37
Proactive obfuscation 积极的困惑
IF 1.5 4区 计算机科学 Q2 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2010-07-01 DOI: 10.1145/1813654.1813655
T. Roeder, F. Schneider
Proactive obfuscation is a new method for creating server replicas that are likely to have fewer shared vulnerabilities. It uses semantics-preserving code transformations to generate diverse executables, periodically restarting servers with these fresh versions. The periodic restarts help bound the number of compromised replicas that a service ever concurrently runs, and therefore proactive obfuscation makes an adversary's job harder. Proactive obfuscation was used in implementing two prototypes: a distributed firewall based on state-machine replication and a distributed storage service based on quorum systems. Costs intrinsic to supporting proactive obfuscation in replicated systems were evaluated by measuring the performance of these prototypes. The results show that employing proactive obfuscation adds little to the cost of replica-management protocols.
主动混淆是一种用于创建可能具有较少共享漏洞的服务器副本的新方法。它使用保持语义的代码转换来生成不同的可执行文件,并定期使用这些新版本重新启动服务器。定期重新启动有助于限制服务曾经并发运行的受损副本的数量,因此,主动混淆使攻击者的工作更加困难。主动混淆用于实现两个原型:基于状态机复制的分布式防火墙和基于仲裁系统的分布式存储服务。通过测量这些原型的性能来评估在复制系统中支持主动混淆的内在成本。结果表明,采用主动混淆对副本管理协议的成本增加很少。
{"title":"Proactive obfuscation","authors":"T. Roeder, F. Schneider","doi":"10.1145/1813654.1813655","DOIUrl":"https://doi.org/10.1145/1813654.1813655","url":null,"abstract":"Proactive obfuscation is a new method for creating server replicas that are likely to have fewer shared vulnerabilities. It uses semantics-preserving code transformations to generate diverse executables, periodically restarting servers with these fresh versions. The periodic restarts help bound the number of compromised replicas that a service ever concurrently runs, and therefore proactive obfuscation makes an adversary's job harder. Proactive obfuscation was used in implementing two prototypes: a distributed firewall based on state-machine replication and a distributed storage service based on quorum systems. Costs intrinsic to supporting proactive obfuscation in replicated systems were evaluated by measuring the performance of these prototypes. The results show that employing proactive obfuscation adds little to the cost of replica-management protocols.","PeriodicalId":50918,"journal":{"name":"ACM Transactions on Computer Systems","volume":"29 1","pages":"4:1-4:54"},"PeriodicalIF":1.5,"publicationDate":"2010-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"74897114","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 81
Throughput optimal total order broadcast for cluster environments 集群环境的吞吐量最优总订单广播
IF 1.5 4区 计算机科学 Q2 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2010-07-01 DOI: 10.1145/1813654.1813656
R. Guerraoui, Ron R. Levy, Bastian Pochon, Vivien Quéma
Total order broadcast is a fundamental communication primitive that plays a central role in bringing cheap software-based high availability to a wide range of services. This article studies the practical performance of such a primitive on a cluster of homogeneous machines. We present LCR, the first throughput optimal uniform total order broadcast protocol. LCR is based on a ring topology. It only relies on point-to-point inter-process communication and has a linear latency with respect to the number of processes. LCR is also fair in the sense that each process has an equal opportunity of having its messages delivered by all processes. We benchmark a C implementation of LCR against Spread and JGroups, two of the most widely used group communication packages. LCR provides higher throughput than the alternatives, over a large number of scenarios.
全顺序广播是一种基本的通信原语,它在为广泛的服务提供廉价的基于软件的高可用性方面起着核心作用。本文研究了这种原语在同构机器集群上的实际性能。提出了第一个吞吐量最优统一全序广播协议LCR。LCR基于环形拓扑结构。它只依赖于点对点的进程间通信,并且具有与进程数量相关的线性延迟。LCR也是公平的,因为每个进程都有平等的机会让所有进程传递它的消息。我们将LCR的C实现与Spread和JGroups(两种最广泛使用的组通信包)进行了基准测试。在许多场景中,LCR提供比备选方案更高的吞吐量。
{"title":"Throughput optimal total order broadcast for cluster environments","authors":"R. Guerraoui, Ron R. Levy, Bastian Pochon, Vivien Quéma","doi":"10.1145/1813654.1813656","DOIUrl":"https://doi.org/10.1145/1813654.1813656","url":null,"abstract":"Total order broadcast is a fundamental communication primitive that plays a central role in bringing cheap software-based high availability to a wide range of services. This article studies the practical performance of such a primitive on a cluster of homogeneous machines.\u0000 We present LCR, the first throughput optimal uniform total order broadcast protocol. LCR is based on a ring topology. It only relies on point-to-point inter-process communication and has a linear latency with respect to the number of processes. LCR is also fair in the sense that each process has an equal opportunity of having its messages delivered by all processes.\u0000 We benchmark a C implementation of LCR against Spread and JGroups, two of the most widely used group communication packages. LCR provides higher throughput than the alternatives, over a large number of scenarios.","PeriodicalId":50918,"journal":{"name":"ACM Transactions on Computer Systems","volume":"1 1","pages":"5:1-5:32"},"PeriodicalIF":1.5,"publicationDate":"2010-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"87427660","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 63
Predicting and preventing inconsistencies in deployed distributed systems 预测和防止部署的分布式系统中的不一致性
IF 1.5 4区 计算机科学 Q2 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2010-03-01 DOI: 10.1145/1731060.1731062
M. Yabandeh, Nikola Knezevic, Dejan Kostic, Viktor Kuncak
We propose a new approach for developing and deploying distributed systems, in which nodes predict distributed consequences of their actions and use this information to detect and avoid errors. Each node continuously runs a state exploration algorithm on a recent consistent snapshot of its neighborhood and predicts possible future violations of specified safety properties. We describe a new state exploration algorithm, consequence prediction, which explores causally related chains of events that lead to property violation. This article describes the design and implementation of this approach, termed CrystalBall. We evaluate CrystalBall on RandTree, BulletPrime, Paxos, and Chord distributed system implementations. We identified new bugs in mature Mace implementations of three systems. Furthermore, we show that if the bug is not corrected during system development, CrystalBall is effective in steering the execution away from inconsistent states at runtime.
我们提出了一种开发和部署分布式系统的新方法,其中节点预测其行为的分布式后果,并使用该信息来检测和避免错误。每个节点在其邻居最近的一致快照上连续运行状态探索算法,并预测未来可能违反指定安全属性的行为。我们描述了一种新的状态探索算法,结果预测,它探索导致财产侵犯的因果相关事件链。本文描述了这种被称为CrystalBall的方法的设计和实现。我们在RandTree、BulletPrime、Paxos和Chord分布式系统实现上评估CrystalBall。我们在三个系统的成熟Mace实现中发现了新的bug。此外,我们还展示了如果在系统开发期间没有纠正错误,那么CrystalBall在运行时引导执行远离不一致状态方面是有效的。
{"title":"Predicting and preventing inconsistencies in deployed distributed systems","authors":"M. Yabandeh, Nikola Knezevic, Dejan Kostic, Viktor Kuncak","doi":"10.1145/1731060.1731062","DOIUrl":"https://doi.org/10.1145/1731060.1731062","url":null,"abstract":"We propose a new approach for developing and deploying distributed systems, in which nodes predict distributed consequences of their actions and use this information to detect and avoid errors. Each node continuously runs a state exploration algorithm on a recent consistent snapshot of its neighborhood and predicts possible future violations of specified safety properties. We describe a new state exploration algorithm, consequence prediction, which explores causally related chains of events that lead to property violation.\u0000 This article describes the design and implementation of this approach, termed CrystalBall. We evaluate CrystalBall on RandTree, BulletPrime, Paxos, and Chord distributed system implementations. We identified new bugs in mature Mace implementations of three systems. Furthermore, we show that if the bug is not corrected during system development, CrystalBall is effective in steering the execution away from inconsistent states at runtime.","PeriodicalId":50918,"journal":{"name":"ACM Transactions on Computer Systems","volume":"28 1","pages":"2:1-2:49"},"PeriodicalIF":1.5,"publicationDate":"2010-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"90038447","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 9
期刊
ACM Transactions on Computer Systems
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1