Integrating model checking and simulation for protocol optimization. (January 2015) - Salmerón, Alberto
Simulation models of communication protocols are widely used in the field of protocol engineering. Some methods have been proposed to ensure the correctness of these models, or to tune their parameters for performance. However, these aspects have usually been considered separately. This paper presents OptySim, a uniform framework to perform correctness analysis and performance evaluation over execution traces of communication protocols. The same protocol models can be tested for correctness before being used for performance evaluation, using this uniform framework. The exploration of the scenarios is controlled by performance or correctness objectives set by the user, using rich formalisms such as temporal logic and automata. Each execution trace is analyzed on the fly, stopping simulations as soon as the objectives are met or violated. The controlled exploration of the parameter space and the associated execution traces can help uncover errors or configurations that may have been otherwise missed with other exhaustive methods or human analysis. Our framework separates the analyzer from the system under analysis using a communication protocol that enables easier adaptation to new systems. We have implemented our framework with the Spin model checker to analyze ns-2 network simulations, and demonstrated the usefulness of our approach with two case studies: video streaming and VoIP call quality in mobile environments.