導航:首頁 > 編程語言 > mininetpython腳本創建拓撲

mininetpython腳本創建拓撲

發布時間:2024-09-10 19:05:01

㈠ 怎麼用python寫mininet的拓撲

為Mininet添加自定義拓撲:Mininet原生提供了多種拓撲類型:SingleSwitchTopo:簡單拓撲(Host——Switch——Host)LinearTopo(k,n):鏈狀拓撲,k台交換機以單鏈形態連接,分別下接n台主機TreeTopo(depth,fanout):樹形拓撲,創建一個深度為depth、扇出為fanout的樹狀拓撲Mininet默認情況下並沒有實現胖樹的網路拓撲,但Mininet支持添加自定義拓撲的功能。本文根據Mininet自帶的拓撲定義,在原拓撲庫中添加了胖樹拓撲類,實現從命令行直接啟動k叉胖樹拓撲環境。(註:加粗的代碼行為自定義拓撲關鍵部分)mininet/topo.py:所有的拓撲類都繼承自topo模塊下的Topo基類,Topo基類實現了addNode、addSwitch、addHost、addPort、addLink等添加節點、鏈路的重要方法。Topo模塊中還實現了單交換機拓撲SingleSwitchTopo類和鏈狀拓撲LinearTopo類。mininet/topolib.py:topolib模塊中定義了樹狀拓撲TreeTopo類,自定義的拓撲類可以定義在topolib模塊下也可定義在topo模塊下,拓撲類的__init__方法中可添加構建拓撲所需要的參數,Mininet在調用拓撲類時會將從命令行接收的topo選項之後的參數*args和關鍵字參數**kwargs傳遞到該拓撲類的__init__方法中初始化該拓撲類的對象。如本文中定義的FatTree拓撲類需要接收參數k以確定胖樹的叉數:classFatTreeTopo(Topo):def__init__(self,k=4):"Createfat-treetopo."#initializationcodebin/mn:mn是Mininet執行的解釋器,負責解析參數,定義了MininetRunner類用來構建、配置並運行整個Mininet平台。自定義的拓撲類需要導入mn中,然後在存放拓撲參數的字典TOPOS中加入對應的鍵值,就可以在mn命令中使用自定義的拓撲了:frommininet.topolibimportFatTreeTopoTOPOS={'linear':LinearTopo,'single':SingleSwitchTopo,'tree':TreeTopo,'fattree':FatTreeTopo}啟動8叉胖樹自定義拓撲的Mininet拓撲環境:$sudomn--topo=fattree,k=8

閱讀全文

與mininetpython腳本創建拓撲相關的資料

熱點內容
php存儲過程返回值 瀏覽:837
模板匹配演算法介紹 瀏覽:523
編程語言麻煩的代碼 瀏覽:134
icloud通訊錄如何導出到安卓 瀏覽:742
單片機做mp3 瀏覽:323
聯通營業廳app在哪裡人工服務 瀏覽:941
三相用電功率與導線的演算法公式 瀏覽:911
javapost編碼 瀏覽:529
雲伺服器巡檢表 瀏覽:671
androidapk無法啟動 瀏覽:245
安卓禁止應用安裝怎麼打開 瀏覽:694
hasp加密狗卸載 瀏覽:479
郵箱無法連接發件伺服器怎麼辦 瀏覽:317
手機打電話如何加密號碼 瀏覽:302
浪潮伺服器進pxe按什麼鍵 瀏覽:4
小能錄屏的伺服器地址是什麼意思 瀏覽:676
android文件操作許可權 瀏覽:599
華為演算法工程師面試題 瀏覽:945
雲開發和伺服器有什麼區別 瀏覽:128
鋼材的價格演算法 瀏覽:663