MiniEdit 2.2.0.1
October 3, 2014 9 Comments
UPDATE: You will not be able to run this specific version against the latest Mininet 2.2. There was a change in Mininet that removed a class that MiniEdit referenced. But there is good news. MiniEdit 2.2.0.1 has been included in the Mininet 2.2 distribution and has this bug fixed in it. So if you want MiniEdit that was released with Mininet 2.2, grab it from the link below.
https://raw.githubusercontent.com/mininet/mininet/2.2.0/examples/miniedit.py
—————-
Out with another update. As I mentioned in my last post, I’m going to start using new functions in Mininet that are not backward compatible with Mininet 2.1.0 or older. So to use this version, you will need to have the latest version of Mininet from GITHUB.
- Support TCP or SSL for remote controller
- Some UI layout changes in the host and switch properties.
- Support new Mininet HostWithPrivateDirs class. Allows you to mount private directories for each host which can also be mounted over an existing directory like /var/tmp or an application directory like /etc/httpd. Another example is available in Mininet in https://github.com/mininet/mininet/blob/master/examples/bind.py.
- Replace custom code to set OF protocols with new Mininet OVSSwitch parameter. Below is an example of the new usage in Mininet.
s2 = net.addSwitch( 's2', protocols='OpenFlow13' ) or s2 = net.addSwitch( 's2', protocols='OpenFlow13,OpenFlow11' )
Download MiniEdit 2.2.0.1 here.
This post ‘MiniEdit 2.2.0.1’ first appeared on https://techandtrains.com/.
MiniEdit 2.2.0.1 now seems to be broken.
Somewhere between the release candidates of MN 2.2.0 and its final release, HostWithPrivateDirs was merged into Host.
A quick (not really tested) workaround is to remove the HostWithPrivateDirs (line 46) import and change its single appearance in the code to Host (line 2793)
Thanks. I hadn’t tried the latest Mininet recently. Mininet 2.2 was just released and fixed the problem in MiniEdit. I have updated the post with details about the fix and that MiniEdit 2.2.0.1 + bug fix is now included with Mininet 2.2.
Hi All,
In MiniEdit GUI, I put 1 one cotroller, 1 switch and 1 host. When I hit the “Run” button, it gives some errors in command line as below. What might cause it? Any suggestions to fix this issue? Thanks!
MiniEdit running against Mininet 2.2.0+
topo=none
Build network based on our topology.
Getting Hosts and Switches.
Getting controller selection:ref
Getting Links.
*** Configuring hosts
h1
**** Starting 1 controllers
c0
**** Starting 1 switches
s1 Exception in Tkinter callback
Traceback (most recent call last):
File “/usr/lib/python2.7/lib-tk/Tkinter.py”, line 1473, in __call__
return self.func(*args)
File “miniedit.py”, line 1379, in doRun
self.start()
File “miniedit.py”, line 3030, in start
self.net.get(name).start( switchControllers )
File “miniedit.py”, line 157, in start
OVSSwitch.start( self, controllers )
File “/usr/local/lib/python2.7/dist-packages/mininet-2.2.0_-py2.7.egg/mininet/node.py”, line 1221, in start
self.bridgeOpts() +
File “/usr/local/lib/python2.7/dist-packages/mininet-2.2.0_-py2.7.egg/mininet/node.py”, line 1184, in bridgeOpts
opts += ‘ protocols=%s’ % ( self, self.protocols )
TypeError: not all arguments converted during string formatting
Tricky one to to debug. I see the following lines in the error message.
opts += ‘ protocols=%s’ % ( self, self.protocols )
TypeError: not all arguments converted during string formatting
What protocols did you choose? Also, have you tried the copy of MiniEdit that comes with Mininet now since 2.2?
I tried both OF1.0 and OF1.3
I am using the MiniEdit that comes with Mininet 2.2.0
Hi,
i got error message using this version of miniedit
from mininet.util import custom, customConstructor
ImportError: cannot import name customConstructor
im using mininet 2.2.1
Starting with Mininet 2.2.0, my latest addition of MiniEdit is included in Mininet. It is best to use that one as noted at the top of the post.
Hello im facing problem in MiniEdit.I coldnt write any command in Terminal on host for example,when i write h1 ping h2 i get “command not found” ,when i also write “$ sudo ovs-ofctl dump-flows s1” i got output “s1 failed to connect to socket(broken pipe ).Could anyone help me resolving these problem pls.
Can i connect the OvS switches between us on circle topology?it’s just that when modeling such a situation, I get a packet storm on the network. How can this be fixed?