ABSTRACT
Integrating new resource management policies into operating systems (OSes) is an ongoing process. Despite innovative policy proposals being developed, it is quite difficult to deploy a new one widely because it is difficult, costly and often impractical endeavor to modify existing OSes to integrate a new policy. To address this problem, we explore the possibility of using virtual machine technology to incorporate a new policy into an existing OS without the need to make any changes to it. This paper describes FoxyTechnique, which virtualizes physical devices differently from real ones and tricks a guest OS into producing a behavior similar to a desired policy. FoxyTechnique offers several advantages. First, it allows us to implement a new policy without the need to make any changes to OS kernels. Second, Foxy-based policies are expected to be portable across different operating systems because they are isolated from guest OSes by stable virtual hardware interfaces. Finally, Foxy-based policies sometimes outperform guest OS policies because they can measure performance indicators more accurately than guest OSes. To demonstrate the usefulness of FoxyTechnique, we conducted two case studies, FoxyVegas and FoxyIdle, on the Xen virtual machine monitor. FoxyVegas and FoxyIdle tricked the original Linux and successfully mimicked TCP Vegas and Idletime scheduling, respectively.
- Mike Accetta, Rovert Baron,William Bolosky, David Golub, Richard Rashid, Avadis Tevanian, and Michael Young. Mach: A new kernel foundation for UNIX Development. In Proceedings of Summer USENIX Conference, pages 93--112, June 1986.Google Scholar
- Andrea C. Arpaci-Dusseau and Remzi H. Arpaci-Dusseau. Information and Control in Gray-Box Systems. In Proceedings of ACM Symposium on Operating Systems Principles (SOSP '01), pages 43--56, October 2001. Google ScholarDigital Library
- Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-Dusseau, Nathan C. Burnett, Timothy E. Denehy, Thomas J. Engle, Haryadi S. Gunawi, James Nugent, and Florentina I. Popovici. Transforming Policies into Mechanisms with Infokernel. In Proceedings of the 19th ACM Symposium on Operating Systems Principles (SOSP '03), October 2003. Google ScholarDigital Library
- Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, and Andrew Warfield. Xen and Art of Virtualization. In Proceedings of ACM Symposium on Operating Systems Principles (SOSP '03), pages 164--177, October 2003. Google ScholarDigital Library
- Braian N. Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gun Sirer, Marc E. Fiuczynski, David Becker, Craig Chambers, and Susan Eggers. Extensibility, Safety and Performance in the SPIN Operating System. In Proceedings of the 15th ACM Symposium on Operating Systems Principles (SOSP '95), pages 267--283, December 1995. Google ScholarDigital Library
- Daniel P. Bovet and Marco Cesati. Understanding the LINUX KERNEL (3rd Edition). O'Reilly Media,Inc., 2006. Google ScholarDigital Library
- Lawrence S. Brakmo, Sean W. O'Malley, and Larry L. Peterson. TCP Vegas: New Techniques for Congestion Detection and Avoidance. In Proceedings of ACM SIGCOMM '94, pages 24--35, August 1994. Google ScholarDigital Library
- Edouard Bugnion, Scott Devine, and Mendel Rosenblum. Disco: Running Commodity Operating Systems on Scalable Multiprocessors. In Proceedings of the 16th ACM Symposium on Operating Systems Principles (SOSP '97), pages 143--156, December 1997. Google ScholarDigital Library
- Bryan Cantrill, Michael W. Shapiro, and Adam H. Leventhal. Dynamic Instrumentation of Production Systems. In Proceedings of the USENIX 2004 Annual Technical Conference (USENIX '04), pages 15--28, June 2004. Google ScholarDigital Library
- Peter M. Chen and Brian D. Noble. When Virtual is Better than Real. In Proceedings of Workshop on Hot Topics in Operating Systems (HotOS '01), pages 133--138, June 2001. Google ScholarDigital Library
- Lars Eggert and Joseph D. Touch. Idletime Scheduling with Preemption Intervals. In Proceedings of ACM Symposium on Operating Systems Principles (SOSP '05), pages 249--262, October 2005. Google ScholarDigital Library
- Dawson R. Engler, M. Frans Kaashoek, and James O'Toole. Exokernel: An Operating System Architecture for Application-Level Resource Management. In Proceedings of the 15th ACM Symposium on Operating Systems Principles (SOSP'95), pages 251--266, December 1995. Google ScholarDigital Library
- Rovert P. Goldberg. Survey of virtual machine research. IEEE Computer Magazine, 7(6):34--45, 1974.Google ScholarDigital Library
- Hermann HÝartig, Michael Hohmuth, Jochen Liedtke, Sebastian SchÝonberg, and Jean Wolter. The Performance of ¼-Kernel-Based Systems. In Proceedings of the 16th Symposium on Operating Systems Principles (SOSP '97), pages 66--77, October 1997. Google ScholarDigital Library
- Stephen T. Jones, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau. Antfarm: Tracking processes in a virtual machine environment. In Proceedings of USENIX Annual Technical Conference (USENIX '06), June 2006. Google ScholarDigital Library
- Stephen T. Jones, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau. Geiger: Monitoring the buffer cache in a virtual machine environment. In Proceedings of Architectural Support for Programming Languages and Operating Systems (ASPLOS '06), October 2006. Google ScholarDigital Library
- Ashlesha Joshi, Samuel T. King, George W. Dunlap, and Peter M. Chen. Detecting past and present intrusions through vulnerability specific predicates. In Proceedings of the 20th ACM Symposium on Operating Systems Principles (SOSP '05), pages 91--104, October 2005. Google ScholarDigital Library
- Travis Newhouse and Joseph Pasquale. ALPS: An Application-Level Proportional-Share Scheduler. In Proceedings of IEEE International Symposium on High Performance Distributed Computing (HPDC '06), pages 279--290, June 2006.Google Scholar
- Richard F. Rashid and George G. Robertson. Accent: A communication oriented network operating system kernel. In Proceedings of the 8th ACM Symposium on Operating Systems Principles (SOSP '81), pages 64--75, December 1981. Google ScholarDigital Library
- Yaoping Ruan and Vivek Pai. Making the "Box" Transparent: System Call Performance as a First--class Result. In Proceedings of the USENIX 2004 Annual Technical Conference (USENIX '04), pages 1--14, June 2004. Google ScholarDigital Library
- Margo I. Seltzer, Yasuhiro Endo, Christopher Small, and Keith A. Smith. Dealing With Disaster: Surviving Misbehaved Kernel Extensions. In Proceedings of the 2nd Symposium on Operating Systems Design and Implementation (OSDI '96), pages 213--227, October 1996. Google ScholarDigital Library
- S. Shenker and J. Wroclawski. RFC2216: Network Element Service Specification Template, 1997. http://rfc.net/rfc2216.html. Google ScholarDigital Library
- Jeremy Sugerman, Ganesh Venkitachalam, and Beng-Hong Lim. Virtualizing I/O Devices on VMware Workstation's Hosted Virtual Machine Monitor. In Proceedings of the USENIX 2001 Annual Technical Conference (USENIX '01), pages 1--14, June 2001. Google ScholarDigital Library
- Volkmar Uhlig, Joshua LeVasseur, Espen Skoglund, and Uwe Dannowski. Towards Scalable Multiprocessor Virtual Machines. In Proceedings of Virtual Machine Research and Technology Symposium (VM '04), pages 43--56, May 2004. Google ScholarDigital Library
- Michael Vrable, Justin Ma, Jay Chen, David Moore, Erik Vandekieft, Alex Snoeren, Geoffrey Voelker, and Stefan Savage. Scalability, Fidelity, and Containment in the Potemkin Virtual Honeyfarm. In Proceedings of the 20th ACM Symposium on Operating Systems Principles (SOSP '05), pages 148--162, December 2005. Google ScholarDigital Library
- Carl A. Waldspurger. Memory Resource Management in VMware ESX Server. In Proceedings of Symposium on Operating System Design and Implementation (OSDI '02), pages 181--194, December 2002. Google ScholarDigital Library
- Andrew Whitaker, Marianne Shaw, and Steven D. Gribble. Scale and Performance in the Denali Isolation Kernel. In Proceedings of Symposium on Operating System Design and Implementation (OSDI '02), pages 195--209, December 2002. Google ScholarDigital Library
Index Terms
- FoxyTechnique: tricking operating system policies with a virtual machine monitor
Recommendations
Who Is Your Neighbor: Net I/O Performance Interference in Virtualized Clouds
User-perceived performance continues to be the most important QoS indicator in cloud-based data centers today. Effective allocation of virtual machines (VMs) to handle both CPU intensive and I/O intensive workloads is a crucial performance management ...
Transparently bridging semantic gap in CPU management for virtualized environments
Consolidated environments are progressively accommodating diverse and unpredictable workloads in conjunction with virtual desktop infrastructure and cloud computing. Unpredictable workloads, however, aggravate the semantic gap between the virtual ...
Enabling Instantaneous Relocation of Virtual Machines with a Lightweight VMM Extension
CCGRID '10: Proceedings of the 2010 10th IEEE/ACM International Conference on Cluster, Cloud and Grid ComputingWe are developing an efficient resource management system with aggressive virtual machine (VM) relocation among physical nodes in a data center. Existing live migration technology, however, requires a long time to change the execution host of a VM, it ...
Comments