ccis_lab:sdn:hw1
SDN:Lab 練習一
0x01 作業要求
- 安裝 Mininet
- 寫一個 mininet script
- Topo 為 1 switch 連接 2 hosts
- 設置 switch 的 fail mode 為 secure/standalone
- 分別在 secure/standalone 下測試 pingall,並比較與理解其差異
0x02 安裝 Mininet
請參閱 Mininet安裝教學
0x03 Mininet Script
- hw1_net.py
#!/usr/bin/env python # -*- coding: utf8 -*- """ 2016.07.28,first homework from lab 2 host 1 switch with failmode setting $ sudo python hw1_net.py or sudo ./hw1_net.py """ from mininet.log import setLogLevel, info from mininet.net import Mininet from mininet.cli import CLI def MininetTopo(): net = Mininet() info("Create host nodes.\n") lefthost = net.addHost("h1") righthost = net.addHost("h2") info("Create switch node.\n") switch = net.addSwitch("s1", failMode = 'standalone') #switch = net.addSwitch("s1", failMode = 'secure') info("Create Links.\n") net.addLink(lefthost, switch) net.addLink(righthost, switch) info("Build and start network.\n") net.build() net.start() info("Run mininet CLI.\n") CLI(net) if __name__ == '__main__': setLogLevel('info') MininetTopo()
0x04 fail Mode
- standalone: controller 連接失敗時,ovs-vswitchd 接管封包轉發,轉發行為同 legacy switch,此時後台仍會嘗試連接 controller,一旦連接上就會退出 fail mode
- secure: controller 連接失敗時,ovs-vswitchd 不會接管封包轉發,此時若需轉發的封包在 table 中沒有 match rule 就會被丟棄
0x 參考資料
ccis_lab/sdn/hw1.txt · 上一次變更: 由 127.0.0.1