Miniedit 2.0.0.2

Small update to my miniedit enhancements. I added the ability to set the link properties. Now a link has the TCLink properties available for ‘bw’ and ‘delay’.  Just double-click on the link to bring up the dialog.  An example would be to set the bandwidth to 10Mbit and 15ms delay.

LinkDetails

Download Miniedit 2.0.0.2 here.

 

Advertisements

Miniedit 2.0.0.1

I’ve been playing around with various aspects of SDN (Software Defined Networking) lately.  One of the best tools to help you try out SDN is called Mininet.  One of the parts of playing with SDN, is that you need a network to try it on.  In my case, I wanted to look at Openflow and how controllers make network switches do things.  But buying an Ethernet switch that is Openflow capable is just not feasible for cost reasons since this is a personal learning exercise.  One option would have been to use Open vSwitch running in a VM.  But having a full VM running for each instance of a switch is resource intensive.  So to do anything of scale, a great tool called Mininet was created.  You can create an entire virtual network, including hosts attached to the network all in a single VM that uses much less resources.

But currently, Mininet is a CLI based tool where you either specify the hosts as a command line parameter, or create a Python script with a custom topology.  This is really good if you want full control of what connects to what and all the tweaks you can make to host and link parameters.  But what if you just want to make up a quick test network of a specific topology.  Fortunately in the mininet/examples directory, there is a sample program called miniedit.py.  It’s a nice little UI that you can drag and drop switches, hosts and links onto the canvas.  But it is a pretty basic sample and you can’t save the topology you created.

So I decided that I’d like to contribute back to the community with some enhancements. I have taken the example miniedit.py file and added some frequently requested features.

  1. Save and Load Topology:  Now you can save the topology you created to a file and load it back in later.
  2. Controller selection: Choose between using the Reference Controller or pointing to a Remote Controller.

It’s just the beginning.  My Python is a bit rusty, but it seems to work.  Hopefully I can figure out how to contribute my enhancements back into the Mininet project.

Download Miniedit 2.0.0.1 here.