-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Mininet 2.2.0 Release Notes
Additional details on the 2.2.0 release are available in the release announcement, the README file, and the Mininet documentation.
To download Mininet, visit http://mininet.org/download for pre-built VM images and github (or code.mininet.org) for the source code.
This document contains supplementary information and issues.
The examples have Python docstring documentation, and can be used as modules, e.g.
sudo python -m mininet.examples.nat
Their components may also be imported, but they should be considered volatile and not part of the official Mininet API. Since they're not part of the official API, their documentation is also not currently included at api.mininet.org or generated with make doc. However, you may wish to look at the code and README.md file in the examples/ directory.
The tests are not included in the Mininet .egg, but they are provided in the Mininet source tree.
-
If VirtualBox (or any other virtual machine monitor) cannot import the
.ovfdirectly, try creating a new VM using the.vmdkfile as its disk. -
VirtualBox may complain about missing hardware on initial import - you may safely ignore this message.
-
We've added a symlink to the top-level examples directory from the mininet code directory to make examples importable. If you are using VirtualBox and clone the repository to a shared folder, the symlink will be broken. This is because VirtualBox does not allow guests to create symlinks in shared folders by default for security reasons. To enable symlink creation, you should do the following:
- Shut down your VM and quit the VirtualBox Manager
- Run the following command on your host OS:
VBoxManage setextradata VM_NAMEVBoxInternal2/SharedFoldersEnableSymlinksCreate/SHARE_NAME 1 - Restart your VM
-
Some performance tests (e.g.
test_linearbandwidth.py) can occasionally fail in virtualized or non-quiescent environments due to performance variance, scheduling, or timing skew. Others may fail if they hit resource limits of the underlying system (e.g. a netbook or a VM with limited resources.) -
For the most accurate performance results, you may wish to run Mininet on a quiescent, non-virtualized environment.
-
We do not currently recommend enabling
sshmultiplexing (ControlPathfeature) as we have observed problems with it. -
Additional information may be found on the Cluster Edition Prototype wiki page.
The --nat option to mn can provide a convenient way to connect your Mininet network to your LAN or to the Internet.
Note however that mn --nat by design will reroute traffic originating at your Mininet server or VM
and destined for
Mininet's IP subnet (10.0.0.0/8 by default) to the Mininet network, which can break connectivity
if you are using addresses in the same range in your LAN. You can change this range using the --ipbase option.
-
Currently the Stanford Reference Switch (
--switch user) and the CPqD switch (also--switch userif it is installed) do not correctly match MAC address00:00:00:00:00:01. This means that they will not work with--macorautoSetMacs=True. -
The Stanford Reference Switch (
--switch user) has awful performance (kilobits per second rather than megabits) on some recent Linux kernels, including the one that we shipped in the Mininet 2.2.0 VM. We hope this can be fixed in the future. If you are experiencing this problem, we recommend using OVS or IVS if possible unless you are modeling a dial-up modem or ISDN. -
Currently
NetworkManagermay attempt to assign leases to the interfaces from a Mininet instance. This will cause an unwanted flood of DHCP requests, and your cpu usage to max out when Mininet is idle. To prevent this, stopNetworkManagerwith$ sudo stop network-manager. -
IPv6 keeps coming back, even though we try to disable it! Although it's good that IPv6 is now correctly virtualized, this means that the Mininet VM does not now disable IPv6 globally as intended. This means that unless you disable IPv6 in each Mininet host, you may see IPv6's irritating neighbor discovery packets. On the up side, it is now easier to use IPv6 in Mininet. If you wish to disable IPv6 permanently in your VM, edit the following line in
/etc/default/grub:GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 text"then run
sudo update-gruband reboot. IPv6 should be dead (finally?!)
-
Currently
--host rtmay not work correctly when installed withapt-get install minineton Ubuntu 12.04.5. Themininetpackage is missing thecgroup-bindependency. To fix this,apt-get install cgroup-bin. Also see below. -
Currently
--host rtwill not work with any default Ubuntu kernel. The POSIX real-time scheduler has been disabled by default in all Ubuntu kernels. To fix this, enableRT_GROUP_SCHEDin your kernel. -
Currently, the Mininet
install.shscript seems to hang installing Mininet on Ubuntu 12.04.5 LTS (precise64, 64-bit); in particular, it hangs while installing/configuringcgroup-bin. This is obviously not a Mininet issue, but it's annoying. One workaround worth trying might be to installcgroup-binbefore runninginstall.sh. -
The
intfclass option to Mininet() is ignored. You can use thelinkoption instead. Fixed in c5f6d0ff171.
You are encouraged to submit reports for any additional bugs you may
encounter via github,
and additional questions to the mininet-discuss mailing list. You may
also edit these notes to fix errors or provide clarification.