{"title":"Remote Memory Swapping for Virtual Machines in Commercial Infrastructure-as-a-Service","authors":"Kashifuddin Qazi, Steven Romero","doi":"10.1109/CCCS.2019.8888069","DOIUrl":null,"url":null,"abstract":"Memory swapping is an essential feature offered by operating systems (OS) to prevent applications from crashing due to the system running out of main memory. Traditional swapping works by using a part of the storage disk as backup memory. Unfortunately, storage disk speeds are orders of magnitude slower than main memory. This implies that as useful as swapping is, it causes expected performance degradation of the application. A more recent swapping mechanism in clusters is remote swapping, which uses one host’s main memory as swap space over the network for another host. For faster networks, remote swapping could outperform disk swapping. However, for users leasing Virtual Machines (VMs) in existing commercial Infrastructure-as-a-Service (IaaS) providers, choosing a swapping mechanism for their VMs is non-trivial. They are subjected to additional constraints and considerations such as lack of access to the underlying hypervisor, OS, and hardware. On the other hand, network speeds within clouds have evolved to be faster than storage device speeds, making remote swap appealing. This paper explores implementing remote swapping for leased VMs within IaaS providers. A setup is proposed that implements remote swapping within a cluster of VMs, abiding by the constraints of IaaS. The setup does not need any modification of the hypervisor, or any special hardware, making it suitable for users currently in commercial IaaS clouds. Through extensive experimental evaluations on Amazon Web Services’ ec2 instances and Google Cloud’s Compute Engine, the paper demonstrates the performance benefits of using remote memory versus the standard storage disks as swap space.","PeriodicalId":152148,"journal":{"name":"2019 4th International Conference on Computing, Communications and Security (ICCCS)","volume":"93 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2019-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2019 4th International Conference on Computing, Communications and Security (ICCCS)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/CCCS.2019.8888069","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1
Abstract
Memory swapping is an essential feature offered by operating systems (OS) to prevent applications from crashing due to the system running out of main memory. Traditional swapping works by using a part of the storage disk as backup memory. Unfortunately, storage disk speeds are orders of magnitude slower than main memory. This implies that as useful as swapping is, it causes expected performance degradation of the application. A more recent swapping mechanism in clusters is remote swapping, which uses one host’s main memory as swap space over the network for another host. For faster networks, remote swapping could outperform disk swapping. However, for users leasing Virtual Machines (VMs) in existing commercial Infrastructure-as-a-Service (IaaS) providers, choosing a swapping mechanism for their VMs is non-trivial. They are subjected to additional constraints and considerations such as lack of access to the underlying hypervisor, OS, and hardware. On the other hand, network speeds within clouds have evolved to be faster than storage device speeds, making remote swap appealing. This paper explores implementing remote swapping for leased VMs within IaaS providers. A setup is proposed that implements remote swapping within a cluster of VMs, abiding by the constraints of IaaS. The setup does not need any modification of the hypervisor, or any special hardware, making it suitable for users currently in commercial IaaS clouds. Through extensive experimental evaluations on Amazon Web Services’ ec2 instances and Google Cloud’s Compute Engine, the paper demonstrates the performance benefits of using remote memory versus the standard storage disks as swap space.
内存交换是操作系统(OS)提供的一个基本特性,它可以防止应用程序因主内存不足而崩溃。传统的交换通过使用存储磁盘的一部分作为备份内存来工作。不幸的是,存储磁盘的速度比主存储器慢几个数量级。这意味着虽然交换很有用,但它会导致应用程序预期的性能下降。集群中较新的交换机制是远程交换,它使用一台主机的主内存作为网络上另一台主机的交换空间。对于更快的网络,远程交换可能优于磁盘交换。然而,对于从现有的商业基础设施即服务(IaaS)提供商那里租用虚拟机(vm)的用户来说,为他们的虚拟机选择交换机制并非易事。它们受到额外的约束和考虑,例如无法访问底层管理程序、操作系统和硬件。另一方面,云中的网络速度已经发展到比存储设备的速度更快,这使得远程交换更有吸引力。本文探讨了在IaaS提供商中实现租用虚拟机的远程交换。在遵守IaaS约束的前提下,提出了一种实现虚拟机集群内远程交换的方案。该设置不需要对管理程序或任何特殊硬件进行任何修改,因此适合当前处于商业IaaS云中的用户。通过对Amazon Web Services的ec2实例和Google Cloud的计算引擎进行广泛的实验评估,本文演示了使用远程内存与标准存储磁盘作为交换空间的性能优势。