Giter VIP home page Giter VIP logo

dane-tool / dane Goto Github PK

View Code? Open in Web Editor NEW
4.0 4.0 2.0 1.47 MB

🐳📡🐶 Generate network communication data for target tasks in diverse network conditions.

Home Page: https://dane-tool.github.io/dane/

License: MIT License

Makefile 9.30% Dockerfile 11.99% Python 69.66% Shell 9.05%
network-emulation netem tc docker representative-data isp data-collection network-traffic network-traffic-classification dataset-generation

dane's Introduction

DANE - Data Automation and Network Emulation Tool

DANE is a hackable dataset generation tool to collect network traffic in a variety of configurable network conditions.

It runs on Windows, Mac, and Linux.

Table of contents

Why use DANE?

DANE provides two core functionalities:

  1. Automatically collect network traffic datasets in a parallelized manner

    Manual data collection for network traffic datasets is a long and tedious process—run the tool and you can easily collect multiple hours of data in one hour of time (magic!) with one or many desired 'user' behaviors.

  2. Emulate a diverse range of network conditions that are representative of the real world

    Data representation is an increasingly relevant issue in all fields of data science, but generating a dataset while connected to a fixed network doesn't capture diversity in network conditions—in a single file, you can configure DANE to emulate a variety of network conditions, including latency and bandwidth.

You can easily hack the tool to run custom scripts, custom data collection tools, and other custom software dependencies which support your particular research interest.

Documentation

For all documentation, including a quick start, details about the technical approach, and FAQs, please consult the website 📖.
https://dane-tool.github.io/dane

Contributing

See something you'd like improved? Better yet, have some improvements coded up locally you'd like to contribute?

We welcome you to submit an Issue or make a Pull Request detailing your ideas!

Acknowledgements

This project was originally created in affiliation with the Halıcıoğlu Data Science Institute's data science program at UC San Diego.
https://hdsi.ucsd.edu/, https://dsc-capstone.github.io/

DANE was motivated and developed with the generous support of Viasat.
https://viasat.com/

dane's People

Contributors

parkeraddison avatar saltekar avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

viasat

dane's Issues

Unable to complete the packet transfer

Hi,
Great work on the project. Really useful stuff. However, I seem to be running into a problem and would be glad if anyone could help me solve the issue.
I followed the setup and installation as mentioned on the docs at github pages, but despite my setup being complete, and getting the routers up, I am facing the following error:

Attaching to dane_daemon_1, dane_router-20ms-50Mbit_1, dane_router-200ms-5Mbit_1, dane_client-20ms-50Mbit-browsing_1, dane_client-20ms-50Mbit-streaming_1, dane_client-200ms-5Mbit-streaming_1, dane_client-200ms-5Mbit-browsing_1
daemon_1 | 11:25:17 [INFO] Listening for docker startup events. Will stop listening after 400 seconds.
daemon_1 | 11:25:20 [INFO] [+] Setting up router dane_router-20ms-50Mbit_1
daemon_1 | 11:25:33 [ERROR] Uncaught exception
daemon_1 | Traceback (most recent call last):
daemon_1 | File "/scripts/daemon.py", line 390, in
daemon_1 | routers, clients = listen_for_container_startup(timeout=400)
daemon_1 | File "/scripts/daemon.py", line 328, in listen_for_container_startup
daemon_1 | setup_router(router)
daemon_1 | File "/scripts/daemon.py", line 92, in setup_router
daemon_1 | raise Exception(f'Network configuration failed for router {router.name}.\n{output}')
daemon_1 | Exception: Network configuration failed for router dane_router-20ms-50Mbit_1.
daemon_1 | b"bc: bad expression at 'packets transmitted, 0 packets received, 100% packet loss'\nsh: invalid number ''\n"
dane_daemon_1 exited with code 1

I am running the docker and instances on a windows machine, but have also tried to get it work with a Mac system but keep running into the same error.
Thanks

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.