English

NetRep: Automatic Repair for Network Programs

Software Engineering 2021-10-22 v2 Programming Languages

Abstract

Debugging imperative network programs is a challenging task for developers because understanding various network modules and complicated data structures is typically time-consuming. To address the challenge, this paper presents an automated technique for repairing network programs from unit tests. Specifically, given as input a faulty network program and a set of unit tests, our approach localizes the fault through symbolic reasoning, and synthesizes a patch such that the repaired program can pass all unit tests. It applies domain-specific abstraction to simplify network data structures and utilizes modular analysis to facilitate function summary reuse for symbolic analysis. We implement the proposed techniques in a tool called NetRep and evaluate it on 10 benchmarks adapted from real-world software-defined networking controllers. The evaluation results demonstrate the effectiveness and efficiency of NetRep for repairing network programs.

Keywords

Cite

@article{arxiv.2110.06303,
  title  = {NetRep: Automatic Repair for Network Programs},
  author = {Lei Shi and Yuepeng Wang and Rajeev Alur and Boon Thau Loo},
  journal= {arXiv preprint arXiv:2110.06303},
  year   = {2021}
}

Comments

24 pages, 9 figures