TY - GEN
T1 - A virtual time system for openVZ-based network emulations
AU - Zheng, Yuhao
AU - Nicol, David M.
N1 - Copyright:
Copyright 2011 Elsevier B.V., All rights reserved.
PY - 2011
Y1 - 2011
N2 - Simulation and emulation are commonly used to study the behavior of communication networks, owing to the cost and complexity of exploring new ideas on actual networks. Emula-tions executing real code have high functional fidelity, but may not have high temporal fidelity because virtual machines usually use their host's clock. A host serializes the execution of multiple virtual machines, and time-stamps on their interactions reflect this serialization. In this paper we improve temporal fidelity of the OS level virtualization system OpenVZ by giving each virtual machine its own virtual clock. The key idea is to slightly modify the OpenVZ and OpenVZ schedulers so as to measure the time used by virtual machines in computation (as the basis for virtual execution time) and have Linux return virtual times to virtual machines, but ordinary wall clock time to other processes. Our system simulates the functional and temporal behavior of the communication network between emulated processes, and con-trols advancement of virtual time throughout the system. We evaluate our system against a baseline of actual wireless network measurements, and observe high temporal accuracy. Moreover, we show that the implementation overhead of our system is as low as 3%. Our results show that it is possible to have a network simulator driven by real workloads that gives its emulated hosts temporal accuracy.
AB - Simulation and emulation are commonly used to study the behavior of communication networks, owing to the cost and complexity of exploring new ideas on actual networks. Emula-tions executing real code have high functional fidelity, but may not have high temporal fidelity because virtual machines usually use their host's clock. A host serializes the execution of multiple virtual machines, and time-stamps on their interactions reflect this serialization. In this paper we improve temporal fidelity of the OS level virtualization system OpenVZ by giving each virtual machine its own virtual clock. The key idea is to slightly modify the OpenVZ and OpenVZ schedulers so as to measure the time used by virtual machines in computation (as the basis for virtual execution time) and have Linux return virtual times to virtual machines, but ordinary wall clock time to other processes. Our system simulates the functional and temporal behavior of the communication network between emulated processes, and con-trols advancement of virtual time throughout the system. We evaluate our system against a baseline of actual wireless network measurements, and observe high temporal accuracy. Moreover, we show that the implementation overhead of our system is as low as 3%. Our results show that it is possible to have a network simulator driven by real workloads that gives its emulated hosts temporal accuracy.
KW - network emulation
KW - virtual machines
KW - virtual time
UR - http://www.scopus.com/inward/record.url?scp=79960678653&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=79960678653&partnerID=8YFLogxK
U2 - 10.1109/PADS.2011.5936745
DO - 10.1109/PADS.2011.5936745
M3 - Conference contribution
AN - SCOPUS:79960678653
SN - 9781457713668
T3 - Proceedings - Workshop on Principles of Advanced and Distributed Simulation, PADS
BT - 2011 25th ACM/IEEE/SCS Workshop on Principles of Advanced and Distributed Simulation, PADS 2011
T2 - 25th ACM/IEEE/SCS Workshop on Principles of Advanced and Distributed Simulation, PADS 2011
Y2 - 14 June 2011 through 17 June 2011
ER -