Presentation
Time:
M.S. Thesis Defense: Jianfei Shao
Date:
9:00 pm –
10:00 pm
Zoom Room: https://unl.zoom.us/j/3804794668
“Symbolic NS-3 for Efficient Exhaustive Testing”
Exhaustive testing is an important type of simulations, where a user exhaustively simulates a protocol in all possible cases with respect to some uncertain factors, such as all possible packet delays or packet headers. It is useful for completely evaluating the protocol performance, finding the worst-case performance, and detecting possible design or implementation bugs of a protocol. It is, however, time consuming to use the brute force method with current NS-3, a widely used network simulator, for exhaustive testing. In this paper, we present our work on Sym-NS-3 for more efficient exhaustive testing, which leverages a power program analysis technique called symbolic execution. Intuitively, Sym-NS-3 groups all the cases leading to the same simulator execution path together as an equivalence class, and simulates a protocol only once for each equivalence class. We present our design choices and implementation on how we extend current NS-3 to support symbolic execution, and also present several exhaustive testing results to demonstrate the significantly improved testing speeds of Sym-NS-3 over current NS-3.
Committee Members:
Lisong Xu, Advisor
Byrav Ramamurthy
Hamid Bagheri
Exhaustive testing is an important type of simulations, where a user exhaustively simulates a protocol in all possible cases with respect to some uncertain factors, such as all possible packet delays or packet headers. It is useful for completely evaluating the protocol performance, finding the worst-case performance, and detecting possible design or implementation bugs of a protocol. It is, however, time consuming to use the brute force method with current NS-3, a widely used network simulator, for exhaustive testing. In this paper, we present our work on Sym-NS-3 for more efficient exhaustive testing, which leverages a power program analysis technique called symbolic execution. Intuitively, Sym-NS-3 groups all the cases leading to the same simulator execution path together as an equivalence class, and simulates a protocol only once for each equivalence class. We present our design choices and implementation on how we extend current NS-3 to support symbolic execution, and also present several exhaustive testing results to demonstrate the significantly improved testing speeds of Sym-NS-3 over current NS-3.
Committee Members:
Lisong Xu, Advisor
Byrav Ramamurthy
Hamid Bagheri