Giter Club home page Giter Club logo

jiacao / batfish Goto Github PK

View Code? Open in Web Editor NEW

This project forked from batfish/batfish

0.0 2.0 0.0 72.79 MB

Batfish is a network configuration analysis tool developed jointly by researchers at University of California, Los Angeles; University of Southern California; and Microsoft Research. Though its individual modules have various applications, its primary purpose is to detect bugs in network configurations.

Home Page: http://www.batfish.org

License: Apache License 2.0

HTML 0.52% Shell 0.04% Java 52.14% ANTLR 7.17% Prolog 3.15% Python 0.41% JavaScript 36.02% CSS 0.54%

batfish's Introduction

Except where otherwise noted, everything in this repository is provided under the terms of the Apache 2.0 License.

Homepage: http://www.batfish.org
Source:   http://github.com/arifogel/batfish

**************************************************
Instructions for building and running Batfish
**************************************************
Cygwin: Read README.CYGWIN before continuing
OSX: Read README.OSX before continuing


Common Prerequisites:
   ant
   Java 8 JDK
   python
   z3

Optional:
   JProfiler - a Java profiler - located at http://www.ej-technologies.com/products/jprofiler/overview.html

Steps:
NOTE: After any step involving modifications to .bashrc or equivalent, make sure to reload your shell or take other action to load the changes.

1. Install z3 - use master branch
git clone https://github.com/Z3Prover/z3
cd z3
python scripts/mk_make.py --java
cd build
make -j<number-of-jobs>
make install # as administrator (sudo or whatever)

2. Clone batfish
git clone https://github.com/arifogel/batfish.git

3. prepare your environment for batfish by adding the following to your .bashrc or equivalent
    . <batfish-root>/tools/batfish_functions.sh
Sourcing batfish_functions.sh will give your shell access to batfish functions. You may prefer to source it manually if you do not want to clutter up your environment in every interactive bash session.

4. compile batfish
   batfish_build_all
Note that 'batfish_build_all' runs 'ant' in each batfish project directory with corresponding args.
You can clean all generated output with:
   batfish_build_all distclean

5. Tests
From the root of the batfish repository, run:
allinone -cmdfile tests/commands

6. Demo
From the root of the batfish repository, run:
allinone -cmdfile demo/commands

7. Now what?
To get an interactive batfish prompt to play around with, run:
   allinone -runmode interactive
This will start batfish service locally in a self-contained fashion
You can read read README.client for example commands to use

batfish's People

Contributors

arifogel avatar ratulm avatar millstein avatar nunoplopes avatar jitupadhye avatar

Watchers

James Cloos avatar  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.