From 3e38a959c3d4a9586e5e91fbdd1dc7de497472e2 Mon Sep 17 00:00:00 2001 From: Bob Lantz Date: Thu, 8 Nov 2012 23:31:31 -0800 Subject: [PATCH] Moved installation instructions and prereqs into INSTALL. --- INSTALL | 38 ++++++++++++++++++++++++++++++++------ README.md | 23 ++++------------------- 2 files changed, 36 insertions(+), 25 deletions(-) diff --git a/INSTALL b/INSTALL index 3c11640..59aee0a 100644 --- a/INSTALL +++ b/INSTALL @@ -12,17 +12,23 @@ can also easily create your own Mininet VM image (3). (Other distributions may be supported in the future - if you would like to contribute an installation script, we would welcome it!) -1. Easiest "install" - use our pre-built VM image! +1. Easiest "installation" - use our pre-built VM image! The easiest way to get Mininet running is to start with one of our pre-built virtual machine images from http://openflow.org/mininet Boot up the VM image, log in, and follow the instructions on the wiki page. -An additional advantage of using the VM image is that it doesn't mess with +One advantage of using the VM image is that it doesn't mess with your native OS installation or damage it in any way. -2. Next-easiest install: use our Ubuntu package! +Although a single Mininet instance can simulate multiple networks with +multiple controllers, only one Mininet instance may currently be run at +a time, and Mininet requires root access in the machine it's running on. +Therefore, if you have a multiuser system, you may wish to consider +running Mininet in a VM. + +2. Next-easiest option: use our Ubuntu package! To install Mininet itself (i.e. mn and the Python API) on Ubuntu 12.10+ @@ -36,7 +42,7 @@ remove the old OVS from /usr/local: 3. Native installation from source on Ubuntu 11.10+ -If you're reading this, you've probably already done it, but the command to +If you're reading this, you've probably already done so, but the command to download the Mininet source code is; git clone git://openflow.org/mininet.git @@ -80,10 +86,30 @@ is easy! First, create a new Ubuntu VM. Then, run $ wget https://raw.github.com/mininet/mininet/util/vm/install-mininet-vm.sh $ time install-mininet-vm.sh +5. Installation on other Linux distributions + +Although we don't support other Linux distributions directly, it should be +possible to install and run Mininet with some degree of manual effort. + +In general, you must have: + +* A Linux kernel compiled with network namespace support enabled + +* An OpenFlow implementation (either the reference user or kernel + space implementations, or Open vSwitch.) Appropriate kernel modules + (e.g. tun and ofdatapath for the reference kernel implementation) must + be loaded. + +* Python, `bash`, `ping`, `iperf`, etc. + +* Root privileges (required for network device access) + +We encourage contribution of patches to the `install.sh` script to support +other Linux distributions. + Good luck! -p.s. Note that only one instance of Mininet is currently supported on a single -machine - that's one reason we recommend using a VM to run it. +Mininet Team --- diff --git a/README.md b/README.md index fb51695..f889786 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,6 @@ + Mininet: Rapid Prototyping for Software Defined Networks -=== +======================================================== The best way to emulate almost any network on your laptop! @@ -85,25 +86,9 @@ a number of enhancements and new features, including: runs in Mininet 1.0 will need to be changed to run with Mininet 2.0. This is the primary reason for the major version number change.] -### Install +### Installation -To install Mininet, the easiest approach is to start with an Ubuntu system like 12.04 and run util/vm/install.sh, which will install any needed dependencies. - -In general, you must have: - -* A Linux kernel compiled with network namespace support - enabled (see `INSTALL` for additional information.) - -* An OpenFlow implementation (either the reference user or kernel - space implementations, or Open vSwitch.) Appropriate kernel modules - (e.g. tun and ofdatapath for the reference kernel implementation) must - be loaded. - -* Python, `bash`, `ping`, `iperf`, etc. - -* Root privileges (required for network device access) - -Further installation instructions are available in `INSTALL`. +See `INSTALL` for installation instructions and details. ### Documentation