In Chapter 3, Implementing the OpenFlow Switch, we introduced the Mininet network emulation platform as an OpenFlow laboratory. In this section, we present this laboratory in more detail as it is going to be part of our development environment. Mininet uses lightweight virtualization in the Linux kernel to make a single system look like a complete network. A Mininet host behaves just like a real machine; you can establish an SSH session into it (if you start up an SSH daemon and bridge the network to your host) and run arbitrary programs (anything that runs on Linux is available for you to run, from web servers to Wireshark to Iperf). However, Mininet uses a single Linux kernel for all virtual hosts; this means that you can't run software that depends on BSD, Windows, or other operating systems.
Currently, Mininet supports Network Address...