Skip to content
Snippets Groups Projects
Commit 11a6d400 authored by Bob Lantz's avatar Bob Lantz
Browse files

Added mininet.topolib to store useful topologies.

parent fd21c46f
No related branches found
No related tags found
No related merge requests found
"Library of potentially useful topologies for Mininet"
from mininet.topo import Topo, Node
class TreeTopo( Topo ):
"Topology for a tree network with a given depth and fanout."
def __init__( self, depth=1, fanout=2 ):
super( TreeTopo, self ).__init__()
# Build topology
self.addTree( 1, depth, fanout )
# Consider all switches and hosts 'on'
self.enable_all()
# It is OK that i is "unused" in the for loop.
# pylint: disable-msg=W0612
def addTree( self, n, depth, fanout ):
"""Add a subtree starting with node n.
returns: last node added"""
me = n
isSwitch = depth > 0
self._add_node( me, Node( is_switch=isSwitch ) )
if isSwitch:
for i in range( 0, fanout ):
child = n + 1
self._add_edge( me, child )
n = self.addTree( child, depth-1, fanout )
return n
# pylint: enable-msg=W0612
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment