控制器类

mininet.node.Controller

控制器基类。默认的控制器是一个参考的实现,controller。

表示一个控制器节点。包括 IP 地址、端口等。

主要方法包括启动和停止一个控制器。

init

def __init__( self, name, inNamespace=False, command='controller',
                  cargs='-v ptcp:%d', cdir=None, ip="127.0.0.1",
                  port=6633, **params ):
        self.command = command
        self.cargs = cargs
        self.cdir = cdir
        self.ip = ip
        self.port = port
        Node.__init__( self, name, inNamespace=inNamespace,
                       ip=ip, **params  )
        self.cmd( 'ifconfig lo up' )  # Shouldn't be necessary
        self.checkListening()

checkListening

确保系统中安装了 telnet,并且在监听端口上并没有其他控制器在监听。

start

该方法检查控制器程序存在,并根据传入的参数来启动它。

stop

该方法杀死控制器进程和节点的 shell 进程,并执行清理工作。

mininet.node.NOX

表示一个 NOX 控制器(需要系统中事先安装了 NOX)。

mininet.node.OVSController

表示一个ovs-controller(需要系统中实现安装了 ovs-controller)。

mininet.node.RemoteController

表示一个在 Mininet 控制外的控制器,即用户自己额外运行了控制器,此处需要维护连接的相关信息。

Last updated

Was this helpful?