Finding bugs in network protocols using simulation code and protocol-specific heuristics

Ahmed Sobeih, Mahesh Viswanathan, Darko Marinov, Jennifer C. Hou

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Traditional network simulators perform well in evaluating the performance of network protocols but lack the capability of verifying the correctness of protocols. To address this problem, we have extended the J-Sim network simulator with a model checking capability that explores the state space of a network protocol to find an execution that violates a safety invariant. In this paper, we demonstrate the usefulness of this integrated tool for verification and performance evaluation by analyzing two widely used and important network protocols: AODV and directed diffusion. Our analysis discovered a previously unknown bug in the J-Sim implementation of AODV. More importantly, we also discovered a serious deficiency in directed diffusion. To enable the analysis of these fairly complex protocols, we needed to develop protocol-specific search heuristics that guide state-space exploration. We report our findings on discovering good search heuristics to analyze network protocols similar to AODV and directed diffusion.

Original languageEnglish (US)
Title of host publicationFormal Methods and Software Engineering - 7th International Conference on Formal Engineering Methods, ICFEM 2005, Proceedings
Pages235-250
Number of pages16
DOIs
StatePublished - 2005
Event7th International Conference on Formal Engineering Methods, ICFEM 2005 - Manchester, United Kingdom
Duration: Nov 1 2005Nov 4 2005

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume3785 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Other

Other7th International Conference on Formal Engineering Methods, ICFEM 2005
Country/TerritoryUnited Kingdom
CityManchester
Period11/1/0511/4/05

ASJC Scopus subject areas

  • Theoretical Computer Science
  • Computer Science(all)

Fingerprint

Dive into the research topics of 'Finding bugs in network protocols using simulation code and protocol-specific heuristics'. Together they form a unique fingerprint.

Cite this