Abstract
Virtualization is a popular technology. Services and applications running on each virtual machine have to compete with each other for limited physical computer or network resources. Each virtual machine has different I/O requirement and special priority. Without proper scheduling resource management, a load surge in a virtual machine may inevitably degrade other’s performance. In addition, each virtual machine may run different kinds of application, which have different disk bandwidth demands and service priorities. When assigning I/O resources, we should deal with each case on demand. In this paper, we propose a dynamic virtual machine disk bandwidth control mechanism in virtualization environment. A Disk Credit Algorithm is introduced to support a fine-gained disk bandwidth allocation mechanism among virtual machines. We can assign disk bandwidth according to each virtual machine’s service priority/weight and its requirement. Related experiments show that the mechanism can improve the VMs’ isolation and guarantee the performance of the specific virtual machine well.
Similar content being viewed by others
References
Anderson E, Hobbs M, Keeton K, Spence S, Uysal M, Veitch A (2002) Hippodrome: running circles around storage administration. In: Proceedings of the conference on file and storage technology, pp 175–188
Barham P, Dragovic B, Fraser K, Hand S, Harris T, Ho A, Neugebauer R, Pratt I, Warfield A (2003) Xen and the art of virtualization. In: Proceedings of the 19th ACM symposium on operating systems principles, pp 164–177
Chambliss D, Alvarez GA, Pandey P, Jadav D, Xu J, Menon R, Lee TP (2003) Performance virtualization for large-scale storage systems. In: Proceedings of the symposium on reliable distributed systems, pp 109–118
Cherkasova L, Gupta D, Vahdat A (2007) Comparison of the 3 CPU schedulers in Xen. ACM SIGMETRICS Perform Eval Rev 35(2):42–51
Dimitrijevic Z, Rangaswami R (2003) Quality of service support for real-time storage systems. In: Proceedings of international IPSI-2003 conference, pp 123–167
Gemmell J, Vin H, Kandlur D, Rangan P, Rowe L (1995) Multimedia storage servers: a tutorial. IEEE Computer 28:40–49
Govindan S et al (2007) Xen and co.: Communication-aware CPU scheduling for consolidated Xen-based hosting platforms. In: Proceedings of the 3rd international conference on virtual execution environments, pp 126–136
Goyal P, Guo X, Vin H (1996) A hierarchical CPU scheduler for multimedia operating systems. In: Proceedings of the 2nd symposium on operating systems design and implementation, pp 107–122
Goyal P, Vin HM, Cheng H (1997) Start-time fair queuing: a scheduling algorithm for integrated services packet switching networks. IEEE/ACM Trans Netw 5(5):690–704
Gulati A, Ahmad I, Waldspurger C (2009) Parda: proportional allocation of resources in distributed storage access. In: Proceedings of the 7th conference on file and storage technologies, pp 85–98
Gulati A, Merchant A, Varman P (2010) mClock: handling throughput variability for hypervisor IO scheduling. In: Proceedings of the 9th USENIX symposium on operating system design and implementation, pp 1–7
Gupta D, Gardner R, Cherkasova L (2005) XenMon: QoS monitoring and performance profiling tool. Technical report, HPL-2005-187
Gupta D, Cherkasova L, Gardner R, Vahdat A (2006) Enforcing performance isolation across virtual machines in Xen. In: Proceedings of the ACM/IFIP/USENIX international conference on middleware, pp 342–362
Huang L, Peng G, Chiueh TC (2004) Multi-dimensional storage virtualization. In: Proceedings of the international conference on measurement and modeling of computer systems (SIGMETRICS’04), pp 14–24
Muto Y, Okano K, Kusumoto S (2011) A visualization technique for unit testing and static checking with caller-callee relationships. J Converg 2(2):1–8
Ongaro D, Cox AL, Rixner S (2008) Scheduling I/O in virtual machine monitors. In: Proceedings of the fourth ACM SIGPLAN/SIGOPS international conference on virtual execution environments, pp 1–10
Seelam SR, Teller PJ (2007) Virtual I/O scheduler: a scheduler of schedulers for performance virtualization. In: Proceedings of the 3rd international conference on virtual execution environments, pp 105–115
Silas S, Ezra K, Rajsingh EB (2012) A novel fault tolerant service selection framework for pervasive computing. Hum-Cent Comput Inf Sci. doi:10.1186/2192-1962-2-5
Stanojevic R, Shorten R (2008) Fully decentralized emulation of best-effort and processor sharing queues. In: Proceedings of the 2008 ACM SIGMETRICS international conference on measurement and modelling of computer systems, pp 383–394
Wang XL, Sang Y, Liu Y, Luo YW (2011) Considerations on security and trust measurement for virtualized enviroment. J Converg 2(2):19–24
Wilkes J (2001) Traveling to Rome: QoS specifications for automated storage system management. In: Proceedings of the international workshop on quality of service, pp 75–91
Xie X, Jiang H, Jin H, Cao W, Yuan P, Yang LT (2012) Metis: a profiling toolkit based on the virtualization of hardware performance counters. Hum-Cent Comput Inf Sci. doi:10.1186/2192-1962-2-8
Zhang L (1991) Virtual clock: a new traffic control algorithm for packet-switched networks. ACM Trans Comput Syst, pp 101–124
Acknowledgements
This work is supported by National Natural Science Foundation under grant No. 61003007 and No. 61133008, MOE-Intel Special Research Fund of Information Technology under grant MOE-INTEL-2012-01, Chinese Universities Scientific Fund under grant No. 2012TS046, Wuhan Chenguang Program under grant No. 201271031369.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Wang, X., Xie, X., Jin, H. et al. A disk bandwidth allocation mechanism with priority. J Supercomput 66, 686–699 (2013). https://doi.org/10.1007/s11227-012-0857-8
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-012-0857-8