NetRep: Automatic Repair for Network Programs

10/12/2021
by   Lei Shi, et al.
0

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.

READ FULL TEXT
research
05/08/2023

ChatUniTest: a ChatGPT-based automated unit test generation tool

Unit testing is a crucial, yet often tedious and time-consuming task. To...
research
08/17/2021

Symbolic Automatic Relations and Their Applications to SMT and CHC Solving

Despite the recent advance of automated program verification, reasoning ...
research
02/05/2023

AProVE: Modular Termination Analysis of Memory-Manipulating C Programs

Termination analysis of C programs is a challenging task. On the one han...
research
06/04/2022

Fault-Aware Neural Code Rankers

Large language models (LLMs) have demonstrated an impressive ability to ...
research
08/01/2022

Flaky Test Sanitisation via On-the-Fly Assumption Inference for Tests with Network Dependencies

Flaky tests cause significant problems as they can interrupt automated b...
research
01/09/2023

Learning to compile smartly for program size reduction

Compiler optimization passes are an important tool for improving program...
research
08/27/2021

HyperGI: Automated Detection and Repair of Information Flow Leakage

Maintaining confidential information control in software is a persistent...

Please sign up or login with your details

Forgot password? Click here to reset