天天看點

SDN控制器ONOS的學習過程[mininet]

指令文法

  • $

     這個符号代表現在處于 Linux 的shell 互動下,需要使用的是 Linux 指令
  • mininet>

     這個符号表示現在處于 Mininet 互動下,需要使用的是 Mininet 的指令
  •  這個符号表示的是現在處于 Linux 的 root 權限下。

sudo mn -h 指令用于顯示mininet的幫助資訊

Mininet使用基于過程虛拟化和網絡命名空間的特性來建立虛拟網絡,并且建立的網絡在目前的Linux核心中是可用的

sudo mn 啟動Mininet

檢視全部節點:nodes

檢視鍊路資訊:net

輸出各節點資訊:dump

sudo mn --test pingpair 直接對主機連通性進行測試

sudo mn --test iperf啟動後直接進行性能測試

主機端

sudo mn -x ,通過使用-x參數,Mininet在啟動後會在每個節點上自動打開一個XTerm,友善某些情況下對多個節點分别進行操作。

在進入mn cli 之後,也可以使用xterm node(s1 h2)指令指定啟動某些節點上的xterm,如分别啟動s1和h2上的xterm

禁用或啟用某條鍊路,格式為:link node1 node2 up/down

--switch選項和--controller選項,可以指定采用哪種類型的交換機跟控制器

--innamespace參數,可以讓所有結點擁有各自的名字空間

啟動參數總結

  • -h, --help

     列印幫助資訊
  • --switch=SWITCH

     交換機類型,包括 [kernel user ovsk]
  • --host=HOST

     模拟主機類型,包括 [process]
  • --controller=CONTROLLER

     控制器類型,包括 [nox_dump none ref remote nox_pysw]
  • --topo=TOPO,arg1,arg2,...argN

     指定自帶拓撲,包括 [tree reversed single linear minimal]
  • -c, --clean

    清理環境
  • --custom=CUSTOM

     使用自定義拓撲和節點參數
  • --test=TEST

     測試指令,包括 [cli build pingall pingpair iperf all iperfudp none]
  • -x, --xterms

     在每個節點上打開 xterm
  • --mac

     讓MAC 位址跟 DP ID 相同
  • --arp

     配置所有 ARP 項
  • -v VERBOSITY, --verbosity=VERBOSITY [info warning critical error debug output]

     輸出日志級别
  • --ip=IP

     遠端控制器的IP位址
  • --port=PORT

     遠端控制器監聽端口
  • --innamespace

     在獨立的名字空間内
  • --listenport=LISTENPORT

     被動監聽的起始端口
  • --nolistenport

     不使用被動監聽端口
  • --pre=PRE

     測試前運作的 CLI 腳本
  • --post=POST

     測試後運作的 CLI 腳本

常用指令總結

  • help

     預設列出所有指令文檔,後面加指令名将介紹該指令用法
  • dump

     列印節點資訊
  • gterm

     給定節點上開啟 gnome-terminal。注:可能導緻 Mininet 崩潰
  • xterm

     給定節點上開啟 xterm
  • intfs

     列出所有的網絡接口
  • iperf

     兩個節點之間進行簡單的 iperf TCP測試
  • iperfudp

     兩個節點之間用指定帶寬 udp 進行測試
  • net

     顯示網絡連結情況
  • noecho

     運作互動式視窗,關閉回應(echoing)
  • pingpair

     在前兩個主機之間互 ping 測試
  • source

     從外部檔案中讀入指令
  • dpctl

     在所有交換機上用 dptcl 執行相關指令,本地為 

    tcp 127.0.0.1:6634

  • link

     禁用或啟用兩個節點之間的鍊路
  • nodes

     列出所有的節點資訊
  • pingall

     所有 host 節點之間互 ping
  • py

     執行 Python 表達式
  • sh

     運作外部 shell 指令
  • quit/exit

     退出

繼續閱讀