我是 mininet 和 python 的新手。我想在 mininet 中执行 python 脚本,但我不知道如何在 mininet 中运行 python 脚本以及在哪里存储 .py 文件以便从 mininet 调用。
有什么想法吗?
我是 mininet 和 python 的新手。我想在 mininet 中执行 python 脚本,但我不知道如何在 mininet 中运行 python 脚本以及在哪里存储 .py 文件以便从 mininet 调用。
有什么想法吗?
When you open mininet just navigate to custom folder by typing:
cd mininet/custom
then type:
ls
which will show you the current files inside the custom file.
Then you can use the nano
text editor to create or edit a python/text file, for example you can type:
nano custom.py
and it will open the custom file that has an example of using python code. Then you can exit it and save it as a new file.
That's how I started to edit and write python codes, then it will become easier once you learn how to SSH the mininet using putty.
good luck
这是我的做法。复制并粘贴以下代码或下载此文件:Simple_Pkt_Topo.py。
__author__ = 'Ehsan'
from mininet.node import CPULimitedHost
from mininet.topo import Topo
from mininet.net import Mininet
from mininet.log import setLogLevel, info
from mininet.node import RemoteController
from mininet.cli import CLI
"""
Instructions to run the topo:
1. Go to directory where this fil is.
2. run: sudo -E python Simple_Pkt_Topo.py.py
The topo has 4 switches and 4 hosts. They are connected in a star shape.
"""
class SimplePktSwitch(Topo):
"""Simple topology example."""
def __init__(self, **opts):
"""Create custom topo."""
# Initialize topology
# It uses the constructor for the Topo cloass
super(SimplePktSwitch, self).__init__(**opts)
# Add hosts and switches
h1 = self.addHost('h1')
h2 = self.addHost('h2')
h3 = self.addHost('h3')
h4 = self.addHost('h4')
# Adding switches
s1 = self.addSwitch('s1', dpid="0000000000000001")
s2 = self.addSwitch('s2', dpid="0000000000000002")
s3 = self.addSwitch('s3', dpid="0000000000000003")
s4 = self.addSwitch('s4', dpid="0000000000000004")
# Add links
self.addLink(h1, s1)
self.addLink(h2, s2)
self.addLink(h3, s3)
self.addLink(h4, s4)
self.addLink(s1, s2)
self.addLink(s1, s3)
self.addLink(s1, s4)
def run():
c = RemoteController('c', '0.0.0.0', 6633)
net = Mininet(topo=SimplePktSwitch(), host=CPULimitedHost, controller=None)
net.addController(c)
net.start()
CLI(net)
net.stop()
# if the script is run directly (sudo custom/optical.py):
if __name__ == '__main__':
setLogLevel('info')
run()
然后你可以通过使用来运行拓扑
sudo -E python <nameofthefile>
现在,你可以用它sudo -E python Simple_Pkt_Topo.py
来启动 mininet。
这是教程链接。
请注意,您需要一个控制器。如果您需要一些说明,请告诉我。
希望能帮助到你。