Mininet 星形拓扑创建 - Python 脚本示例
以下是在 Mininet 中使用 Python 脚本创建一个星形拓扑的代码:
from mininet.topo import Topo
from mininet.net import Mininet
from mininet.node import RemoteController
class StarTopo(Topo):
def __init__(self):
Topo.__init__(self)
# Add switch
switch = self.addSwitch('s1')
# Add hosts
host1 = self.addHost('h1')
host2 = self.addHost('h2')
host3 = self.addHost('h3')
# Add links
self.addLink(host1, switch)
self.addLink(host2, switch)
self.addLink(host3, switch)
if __name__ == '__main__':
topo = StarTopo()
net = Mininet(topo=topo, controller=RemoteController)
# Start the network
net.start()
# Test connectivity
net.pingAll()
# Stop the network
net.stop()
上述代码创建了一个名为 StarTopo 的拓扑类,该类继承自 Mininet 的 Topo 类。在 StarTopo 类的构造函数中,首先添加了一个名为 s1 的交换机,然后添加了三个主机 h1、h2 和 h3,最后使用 addLink 方法将三个主机与交换机连接。
在 main 函数中,首先创建了 StarTopo 的实例,并将其作为参数传递给 Mininet 类的构造函数。还传递了一个 RemoteController 实例作为控制器参数。然后启动了网络、测试了连通性,并停止了网络。
运行上述代码后,应该会看到所有主机都能够相互 ping 通。
原文地址: https://www.cveoy.top/t/topic/olWd 著作权归作者所有。请勿转载和采集!