SDN零基礎入門-Mininet命令詳解

姓名:岳馳

【嵌牛導讀】:(承接本人上一篇《SDN零基礎入門-mininet環(huán)境搭建與RYU控制器的安裝》)Mininet是一個進程虛擬化網絡仿真工具,可以創(chuàng)建一個含有主機、交換機、控制器和鏈路的虛擬網絡,其交換機支持Openflow協(xié)議,具有高度靈活的自定義軟件定義網絡。在本篇文章中,作者將會介紹Mininet的基本操作指令,本人也是接觸不久,如有錯誤請多多包涵,希望能和大家一起交流學習。

【嵌牛鼻子】:Linux ? ?Ubuntu ? ?SDN ? ?零基礎入門 ? ?Mininet 命令詳解

【嵌牛提問】:Mininet的優(yōu)勢?Mininet可以做什么?Mininet的基礎操作?

【嵌牛正文】:

1.mininet的優(yōu)勢

mininet結合了許多仿真器、硬件測試床和模擬器的優(yōu)點。

compare to仿真器:

啟動速度快 ? ? ? ? ? ? ? 擴展性大 ? ? ? ? ? ? ? ? ? ? ?帶寬提供多 ? ? ? ? ? ? 方便安裝、易使用

compare to模擬器:

運行真實代碼 ? ? ? ? 容易鏈接真實網絡

compare to硬件測試床:

便宜 ? ? ? ? ? ? ?快速重新配置與重新啟動

2.mininet可以做什么

為openflow應用程序提供一個簡單、便宜的網絡測試平臺

啟用復雜的拓撲測試,無需連接物理網絡

具有拓撲感知和openflow感知的CLI,用于調試或運行網絡范圍的測試

支持任意自定義拓撲,主機數(shù)達4096,并包括一組基本的參數(shù)化拓撲

提供用于網絡創(chuàng)建和實驗的可擴展Python API

3.mininet命令詳解

minient命令主要分為三種:

①網絡構建啟動參數(shù)

如--topo ?--custom ?--switch ?--controller ?--mac等等

②內部交互命令

如dump ?net ?nodes ?links ?dpctl ?iperf等等

③外部運行參數(shù)

如-c ?-h

下面對常用的命令進行簡單介紹

一、--topo命令

1.單一拓撲,即只有一個交換機,下掛n個主機


一個交換機下掛三個主機


拓撲圖

2.線形拓撲,交換機呈線性排列,n個交換機下掛一個主機

四個交換機的線形拓撲


拓撲圖

3.樹形拓撲,定義深度depth,定義廣度fanout。例如depth=2,fanout=2,就是交換機(不包含主機)有兩層,除第一層外每個下掛兩個單位。

depth=2,fanout=2的樹形拓撲


拓撲圖

假如輸入depth=3,fanout=3,就在原來的基礎上s1(第一層)下掛三個交換機(第二層),然后第二層的每個交換機下面再下掛三個交換機(第三層),第三層的每個交換機下掛三個主機。

4.自定義拓撲,需要用python編寫文件file.py,執(zhí)行此腳本即可創(chuàng)建自定義拓撲,需要--custom與--topo聯(lián)用,在這里給出一個使用自帶的例子建立一個自定義拓撲,至于具體如何編寫我們將會在以后進行說明。

二、--controller命令

指定遠程控制器的方法:

sudo mn --controller=remote,--ip=你的控制器ip,--port=你想監(jiān)聽的端口

在這里我指定了本機的控制器,但是目前本機還沒有開啟控制器。所以會顯示不能連接到本機控制器。

輸入pingall也會顯示丟包率為100%

三、內部交互命令,在建立拓撲之后對拓撲進行相關操作,如

net命令顯示鏈接信息

nodes命令顯示節(jié)點信息

links命令顯示鏈路健壯性信息

以及大家喜聞樂見的pingall命令驗證所有主機間通信

節(jié)點全部ping通,丟包率0%

以上都是設備的查看命令,接下來介紹幾個可以對設備進行操作的命令

iperf命令兩節(jié)點間進行帶寬測試

link命令進行節(jié)點間鏈路的開始或禁用

我關閉了s1和h1的鏈路,發(fā)現(xiàn)h1和h2不能ping通

然后再次開啟s1和h1的鏈路,于是h1和h2又可以ping通了

注意不要把link命令和links命令混淆?。?!

現(xiàn)在我們面臨了一個實際問題,假如我首先用sudo su指令創(chuàng)建了一個交換機下掛兩個主機的拓撲,但是之后不滿意當前拓撲,想添加一個主機h3和s1相連,可以么?答案當然是肯定的。

首先,我們要添加主機h3進入當前拓撲

只添加還不夠,需要讓s1和添加的h3建立一條連接

現(xiàn)在就可以ping通了么?還不行,因為s1需要一個端口提供給h3

s1分配eth3端口給h3

現(xiàn)在鏈接已經建立起來了,但是h3還沒有IP地址,我們需要賦給h3一個IP地址


把10.0.0.3地址賦給h3


現(xiàn)在我們先試著用h1或者h2去ping通h3

傳送了3個包,零丟包(ctrl+c停止互ping)

最后pingall,成功!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 第一章 網絡工程基礎 網絡工程的含義 計算機網絡:是指將有獨立功能的多臺計算機,通過通信設備線路連接起來,在網絡軟...
    Azur_wxj閱讀 2,663評論 0 6
  • 五、因特網的路由選擇協(xié)議 1.有關路由選擇協(xié)議的幾個基本概念 Ⅰ、理想的路由算法 路由表中的路由是怎樣得出的呢?核...
    dmmy大印閱讀 2,163評論 0 4
  • 0 01、網絡管理的五大功能(包括每項功能的具體情況) 1.配置管理:ISO定義的管理功能域中,配置管理包括視圖管...
    哈熝少主閱讀 3,622評論 1 20
  • 今天閑來無事,就去逛了逛世紀公園。 四月是世紀公園最熱鬧的季節(jié),黃的迎春花,粉色的桃花,白色的梨花爭奇斗艷,...
    觀自在魚閱讀 224評論 0 0
  • 坐月子是女孩子身體最虛弱的時候,也是女孩子重生的時刻,這個時候如果調理好了,對以后的身體有非常好的幫助,而如果沒有...
    船長海產品閱讀 215評論 0 0

友情鏈接更多精彩內容