Giter Site home page Giter Site logo

xlong88 / anteater Goto Github PK

View Code? Open in Web Editor NEW

This project forked from haohui/anteater

0.0 1.0 0.0 200 KB

A static analysis tool over the data plane state of networking devices

License: Other

CMake 7.12% Ruby 48.97% C++ 43.23% C 0.19% Shell 0.50%

anteater's Introduction

Anteater is a tool that detects networking bugs through static analysis of the data plane state of the networking devices. Anteater translates high-level network invariants into boolean satisfiability problems (SAT), checks them against network state using a SAT solver, and reports counterexamples if violations have been found.

For more information please read the paper published in SIGCOMM'2011:

Haohui Mai et al. Debugging the data plane with Anteater. In the Proceedings of the ACM SIGCOMM 2011 conference.

Building

Anteater requires the following dependency to build and run:

  • CMake 2.6 or higher
  • LLVM 2.9
  • Boost 1.42
  • Coreutils
  • A SAT solver (currently Anteater supports Boolector, Yices and Z3)

To build Anteater:

$ cmake
$ make

You can find the invariant checkers described in the paper under the tools/scripts directory and run them to detect networking issues.

Contribution

Your pull requests are appreciated!

anteater's People

Contributors

haohui avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.