Emulations of network services are more accurate than simulated models. However this is achieved at an increased computational cost. Combining emulation with simulation allows more accurate, controllable and repeatable evaluation of applications but such hybrid systems are generally not scalable. Virtual time systems attempt to provide a feasible solution by defining and controlling a virtual clock to alter an experiment’s notion of time.Previous works have motivated and explored the benefits of virtual time systems in improving the scalability of combined emulation-simulation testbeds. One such endeavor resulted in the development of TimeKeeper, an open source virtual time system for Linux. TimeKeeper has been integrated with popular network simulators ns-3, CORE and S3FNet. In this thesis, we extend it further by integrating TimeKeeper with the Extensible Mobile AdHoc Network Emulator (EMANE). We also demonstrate the broad applicability of TimeKeeper by implementing a Programmable Logic Controller (PLC) network emulation tool which can be used to emulate industrial Supervisory Control and Data Acquisition (SCADA) systems. Over the course of the design of these two case studies, we unearthed and fixed a subtle design flaw in TimeKeeper’s scheduling mechanism which could potentially starve some processes of CPU time during execution. The purpose of this thesis is twofold (1) to describe improvements to TimeKeeper’s design including the logic to ensure fair scheduling and (2) to describe two case studies which demonstrate the scalability and fidelity benefits of running emulations/simulations in close virtual synchrony under the control of TimeKeeper.
【 预 览 】
附件列表
Files
Size
Format
View
Controlled virtual time advancement in conjoined emulation and network simulation