Skip to content

Commit

Permalink
2.3.0b2 (mininet#1022)
Browse files Browse the repository at this point in the history
+ text file updates
  • Loading branch information
lantz authored Jan 30, 2021
1 parent dffddc3 commit ec2d93d
Show file tree
Hide file tree
Showing 4 changed files with 80 additions and 28 deletions.
82 changes: 62 additions & 20 deletions INSTALL
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Mininet Installation/Configuration Notes
----------------------------------------

Mininet 2.3.0b1
Mininet 2.3.0b2
---

The supported installation methods for Mininet are 1) using a
Expand Down Expand Up @@ -36,21 +36,27 @@ like to contribute an installation script, we would welcome it!)

sudo apt-get install mininet

Note: this may install an older version of Mininet. If you would
like the latest version, consider a native install from source.
Note: this may install an older version of Mininet which may not
support Python 3. If you would like the latest version of Mininet,
consider installing from source as described in the next section.

3. Native installation from source

3.1. Native installation from source on Ubuntu 16.04+
If you are running Ubuntu, Debian, or Fedora, you may be able to use
our handy `install.sh` script, which is in `util/`. Please read the
following sections first.

3.1. Obtaining the Mininet source code

If you're reading this, you've probably already done so, but the
command to download the Mininet source code is:

git clone git://github.com/mininet/mininet.git

Note that the above git command will check out the latest and greatest
Mininet (which we recommend!) If you want to run the last tagged/released
version of Mininet, you can look at the release tags using
Mininet (which we recommend!) If you want to run the last
tagged/released version of Mininet, you can look at the release tags
using

cd mininet
git tag
Expand All @@ -61,21 +67,38 @@ like to contribute an installation script, we would welcome it!)

where <release tag> is the release you want to check out.

If you are running Ubuntu, Debian, or Fedora, you may be able to use
our handy `install.sh` script, which is in `util/`.

*WARNING: USE AT YOUR OWN RISK!*
3.1.1 *CAUTION: USE AT YOUR OWN RISK!*

`install.sh` is a bit intrusive and may possibly damage your OS
`install.sh` can be a bit intrusive and may possibly damage your OS
and/or home directory, by creating/modifying several directories
such as `mininet`, `openflow`, `oftest`, `pox`, etc.. We recommend
trying it in a VM before trying it on a system you use from day to day.
trying it in a VM before trying it on a system you use from day to
day.

Although we hope it won't do anything completely terrible, you may
want to look at the script before you run it, and you should make
sure your system and home directory are backed up just in case!

To install Mininet itself, the OpenFlow reference implementation, and
You can change the directory where the dependencies are installed
using the -s <directory> flag.

util/install.sh -s <directory> ...

3.1.2 Running `install.sh`

Installing a "minimal" version of Mininet with Open vSwitch should
be reasonably non-perturbing since it should not create directories
for other tools:

util/install.sh -nv

Note this will not install a controller, so you will have to either
install your own controller, or use a switch such OVSBridge that does
not require a controller:

sudo mn --switch ovsbr --test pingall

To install Mininet itself, the OpenFlow reference controller, and
Open vSwitch, you may use:

util/install.sh -fnv
Expand All @@ -85,6 +108,27 @@ like to contribute an installation script, we would welcome it!)

sudo mn --test pingall

3.1.3 Python 3 and Python 2 support

Mininet supports Python 3 and Python 2. By default, `install.sh`
will use whatever `python` is on your system. To specify a
specific version of Pythonm, you can set the PYTHON environment
variable:

PYTHON=python3 util/install.sh -fnv

You can install Mininet for both Python 3 and Python 2:

PYTHON=python2 util/install.sh -fnv
PYTHON=python3 util/install.sh -n

Whichever version was installed last will be the default for `mn`.
As long as Mininet is installed for the appropriate version of
Python, you can run it using that versinon of Python:

python3 `which mn`
python2 `which mn`

To install ALL of the software which we use for OpenFlow tutorials,
including POX, the OpenFlow WireShark dissector, the `oftest`
framework, and other potentially useful software, you may use:
Expand All @@ -93,13 +137,10 @@ like to contribute an installation script, we would welcome it!)

This takes about 4 minutes on our test system.

You can change the directory where the dependencies are installed using
the -s <directory> flag.

util/install.sh -s <directory> -a

3.2. Native installation from source on Fedora 18+.

*This may be out of date.*

As root execute the following operations:

* install git
Expand Down Expand Up @@ -152,7 +193,8 @@ like to contribute an installation script, we would welcome it!)

Although we don't support other Linux distributions directly, it
should be possible to install and run Mininet with some degree of
manual effort.
manual effort. People have even gotten `mn --switch user` to run
in a ChromeOS container.

In general, you must have:

Expand All @@ -171,6 +213,6 @@ like to contribute an installation script, we would welcome it!)

Good luck!

Mininet Team
Mininet Developers

---
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Mininet 2.3.0b1 License
Mininet 2.3.0b2 License

Copyright (c) 2013-2020 Open Networking Foundation
Copyright (c) 2009-2012 Bob Lantz and The Board of Trustees of
Expand Down
22 changes: 16 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Mininet: Rapid Prototyping for Software Defined Networks
========================================================
*The best way to emulate almost any network on your laptop!*

Mininet 2.3.0b1
Mininet 2.3.0b2

[![Build Status][1]](https://github.com/mininet/mininet/actions)

Expand Down Expand Up @@ -68,17 +68,27 @@ Mininet includes:

`mn -c`

### New features in this release
### Python 3 Support

This is primarily a performance improvement and bug fix release.
- Mininet 2.3.0b2 supports Python 3 and Python 2.

- Python 3 support (Python 2 is still supported as well)
- You can install both the Python 3 and Python 2 versions of
Mininet side by side, but the most recent installation will
determine which Python version is used by default by `mn`.

- Support for Ubuntu 20.04 LTS
- You can run `mn` directly with Python 2 or Python 3,
as long as the appropriate version of Mininet is installed,
e.g.

$ sudo python2 `which mn`

### Other Enhancements and Information

- Support for Ubuntu 20.04 LTS (and 18.04 and 16.04)

- More reliable testing and CI via github actions

- Additional information for this release and previous releases
- Additional information about this release and previous releases
may be found in the release notes on http://docs.mininet.org.

### Installation
Expand Down
2 changes: 1 addition & 1 deletion mininet/net.py
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@
from mininet.term import cleanUpScreens, makeTerms

# Mininet version: should be consistent with README and LICENSE
VERSION = "2.3.0b1"
VERSION = "2.3.0b2"

class Mininet( object ):
"Network emulation with hosts spawned in network namespaces."
Expand Down

0 comments on commit ec2d93d

Please sign in to comment.