Skip to content

p2p-industries/mininet-wifi

This branch is 37 commits behind intrig-unicamp/mininet-wifi:master.

Folders and files

NameName
Last commit message
Last commit date
Aug 22, 2024
Mar 25, 2020
Oct 16, 2015
Mar 14, 2017
Oct 29, 2021
Nov 28, 2024
Oct 5, 2023
Dec 29, 2024
Nov 27, 2024
Sep 14, 2012
Jul 11, 2024
Mar 3, 2018
Mar 28, 2018
Dec 9, 2020
Mar 31, 2020
Oct 18, 2022
Aug 12, 2021
Aug 12, 2021
Oct 7, 2018
Sep 10, 2024
Nov 20, 2018
Apr 4, 2017
Nov 27, 2024

Repository files navigation

About Mininet-WiFi

Mininet-WiFi is a fork of Mininet (http://mininet.org/) which allows the using of both WiFi Stations and Access Points. Mininet-WiFi only add wifi features and you can work with it like you were working with Mininet.

Build Status

Things to keep in mind when working with Mininet-WiFi

  • You can use any wireless network tools (e.g. iw, iwconfig, wpa_supplicant, etc)
  • Please consider computer network troubleshooting steps to solve issues before making questions in the mailing list (e.g. is the station associated with ap? Is the OpenFlow rule working correctly? etc)
  • Do you need help? Be careful with questions in the mailing list and please providing as much information you can.

Mailing List

https://groups.google.com/forum/#!forum/mininet-wifi-discuss

Use Cases Catalogue

Please, let us know if you are doing research with Mininet-WiFi. A list of citations on Mininet-WiFi is available here.  

Installation

We highly recommend using Ubuntu version 16.04 or higher. Some new hostapd features might not work on Ubuntu 14.04.
step 1: $ sudo apt-get install git
step 2: $ git clone https://github.com/intrig-unicamp/mininet-wifi
step 3: $ cd mininet-wifi
step 4: $ sudo util/install.sh -Wlnfv

install.sh options:

-W: wireless dependencies
-n: mininet-wifi dependencies
-f: OpenFlow
-v: OpenvSwitch
-l: wmediumd
optional:
-P: P4 dependencies
-6: wpan tools

Docker

This is recommended if you are using a different linux distribution from the ones supported by the installation script.

If you prefer to use Mininet-WiFi with Docker you should follow the steps described below:

  1. Building the docker image:

    docker build -t mn-wifi:v1 .
  2. Running the container: Mininet-WiFi relies on Kernel modules from the host, requires elevated privilege, and the host network interface:

    docker run -it --rm --privileged --env="DISPLAY" --env="QT_X11_NO_MITSHM=1" -v /tmp/.X11-unix:/tmp/.X11-unix:rw --net host -v /sys/:/sys -v /lib/modules:/lib/modules -v /sys/kernel/debug:/sys/kernel/debug -v /var/run/netns:/var/run/netns mn-wifi:v1

Building Topologies with GUI

I'm a beginner, I do not know Python and I would like to create a customized topology with a GUI. In this case, MiniEdit can serve as support since it provides a GUI to generate Python scripts.

Development

For instructions about easier development check this helper file.

Pre-configured Virtual Machine

For your convenience, we provide pre-built VM images including Mininet-WiFi and other useful software. The VM images are in .ova format and should be usable with any modern x64 virtualization system.

[4.6GB Size] - Lubuntu 20.04 x64 - Mininet-WiFi (pass: wifi)

Note

Mininet-WiFi should work fine in any Ubuntu distribution from 14.04, but in some cases (only if you have problems when start it) you have to stop Network Manager with either sudo systemctl stop network-manager or sudo service network-manager stop.

Book

We are glad to announce that the Mininet-WiFi book has been published!

Here is the pointer to the book:

Printed and e-Book version: https://mininet-wifi.github.io/book/ - Available in English and Portuguese

Github repository with all use cases presented in the book:
https://github.com/ramonfontes/mn-wifi-book-pt

Team

Ramon dos Reis Fontes ([email protected])
Christian Rodolfo Esteve Rothenberg ([email protected])

We are members of INTRIG (Information & Networking Technologies Research & Innovation Group) at University of Campinas - Unicamp, SP, Brazil.

About

Emulator for Software-Defined Wireless Networks

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 90.9%
  • C 5.2%
  • Shell 3.5%
  • Other 0.4%