MININET部分指令以及其用法總結.docx_第1頁
MININET部分指令以及其用法總結.docx_第2頁
MININET部分指令以及其用法總結.docx_第3頁
MININET部分指令以及其用法總結.docx_第4頁
MININET部分指令以及其用法總結.docx_第5頁
已閱讀5頁,還剩1頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

下載安裝VirtualboxVirtualbox中加載mininet鏡像MININET部分指令以及其用法總結$ sudo mn -topo=single,3 -mac -switch=ovsk -controller=remote,IP=(例子)運行mininet并創(chuàng)建一個簡單的拓撲(1個switch,3個host);創(chuàng)建的host擁有的MAC地址相當于獨立的IP,OpebFlow switch擁有3個端口;創(chuàng)建的switch連接到remote控制器上。以下為一些簡單但是很有用的指令:mininet node查看mininet中結點的狀態(tài)。mininet help獲取幫助列表。mininet h1 ifconfig查看host1的IP等信息。mininet xterm h1打開host 1的終端。mininet exit退出mininet登錄。dpctl使用和說明dpctl是一個可以分配、修改和管理流表的功能指令,指令格式為:$ dpctl比較常用的有:顯示基本信息dpctl show tcp:6634 顯示流表dpctl dump-flows tcp:6634 添加流表dpctl add-flow tcp::6634 in_port=2,idle_timeout=360, actions=output:3使用MININET創(chuàng)建拓撲結構MININET支持用參數(shù)表示的拓撲結構,通過簡單的幾行Python代碼就可以建立相當靈活的拓撲結構,下面給出一個簡單的例子: from mininet.topo import Topo from import Mininet from mininet.util import dumpNodeConnections from mininet.log import setLogLevel class SingleSwitchTopo(Topo): 交換機連接到host上 def _init_(self, n=2, *opts): # 初始化拓撲和默認選項 Topo._init_(self, *opts) switch = self.addSwitch(s1) # Python的范圍函數(shù)range(N) 生成 0.N-1 for h in range(n): host = self.addHost(h%s % (h + 1) self.addLink(host, switch) def simpleTest(): 創(chuàng)建簡單的測試網(wǎng)絡 topo = SingleSwitchTopo(n=4) net = Mininet(topo) net.start() print 顯示host連接關系 dumpNodeConnections(net.hosts) print 測試網(wǎng)絡連通性 net.pingAll() net.stop() if _name_ = _main_: # Tell mininet to print useful information setLogLevel(info) simpleTest()重要的類、方法、函數(shù)和變量包括在上面的代碼;Topo: Mininet基本的拓撲類;addSwitch():添加一個switch到拓撲中并返回switch名;addHost():添加一個host到拓撲中并返回host名;addLink():Links in Mininet are bidirectional unless noted otherwise.添加雙向鏈路到拓撲中,在Mininet中鏈路都是雙向的,除非特別注明;Mininet: 主類,用來創(chuàng)建和管理網(wǎng)絡;start(): 開始運行網(wǎng)絡;pingAll():通過各個節(jié)點的互相ping來檢測網(wǎng)絡連通性;stop(): 結束網(wǎng)路;net.hosts: 網(wǎng)絡中的所有host;dumpNodeConnections(): dumps connections to/from a set of nodes.setLogLevel( info | debug | output ): Mininet設置的默認輸出等級,“info”是推薦的,因為它提供了有用的信息。 設置性能參數(shù)除了基礎的行為網(wǎng)絡,MININET還通過CPULimitedHost和TCLink兩個類提供了性能限制和隔離。有很多種 方式使用這些類,但有一個簡單的方法來說明他們作為Mininet()的host和link的類或者構造函數(shù),然后在拓撲中選擇適當?shù)膮?shù)設定。(你也可以指定自定義類拓撲本身, 或創(chuàng)建自定義節(jié)點和鏈接構造函數(shù)和/或子類) from mininet.topo import Topo from import Mininet from mininet.node import CPULimitedHost from mininet.link import TCLink from mininet.util import dumpNodeConnections from mininet.log import setLogLevel class SingleSwitchTopo(Topo): switch鏈接到N個host. def _init_(self, n=2, *opts): Topo._init_(self, *opts) switch = self.addSwitch(s1) for h in range(n): # 每個host獲得系統(tǒng)50%/n的cpu占用 host = self.addHost(h%s % (h + 1), cpu=.5/n) # 10 Mbps,5毫秒的延遲,10%損失,1000包隊列 self.addLink(host, switch, bw=10, delay=5ms, loss=10, max_queue_size=1000, use_htb=True) def perfTest(): Create network and run simple performance test topo = SingleSwitchTopo(n=4) net = Mininet(topo=topo, host=CPULimitedHost, link=TCLink) net.start() print Dumping host connections dumpNodeConnections(net.hosts) print Testing network connectivity net.pingAll() print Testing bandwidth between h1 and h4 h1, h4 = net.get(h1, h4) net.iperf(h1, h4) net.stop() if _name_ = _main_: setLogLevel(info) perfTest()一些重要的方法和參數(shù):self.addHost(name, cpu=f):.可以讓你指定一小部分整個系統(tǒng)CPU所分配給host的資源。self.addLink( node1, node2, bw=10, delay=5ms, max_queue_size=1000, loss=10, use_htb=True):添加雙向鏈路、延遲和損失特性,這里的參數(shù)bw表示帶寬的數(shù)值 ;delay表示一串計量字符; (例如:5ms, 100us, 1s);lossis 表示丟失百分比 (數(shù)值在

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論