Controller
以POX為主,執行自訂的Controller API我們使用柯志亨老師教學中的Bellman-Ford (網址如下)
http://csie.nqu.edu.tw/smallko/sdn/bellmanford.htm
Topo
拓樸的部分同樣使用自訂拓樸,每個Link之間頻寬不等,這部分就看各自的拓樸建立了另開一個Terminal後(Controller一個, Topo一個)
sudo ./YourTopoName.py
Controller接收到網路後會更新訊息
檔案建立與傳送
首先我們先安裝 pv ,用於顯示進度條
apt-get install pv
接下來我們個別控制兩台HOST
來源為拓樸中的 Server_1
目標為拓樸中的 Host_3
xterm Server_1 Host_3
以下進入建檔與傳送步驟
- 我們在server建立一個大小為5MB的檔案
dd if=/dev/zero of=test.iso bs=1k count=100000
每次讀寫1024byte,共五千次,可獲得5M的檔案(填充內容為"0")
dd:可指定讀取來源與寫入目的
if:input file 讀取來源的檔案名稱
of:output file 寫入目的的檔案名稱
bs:block size 讀寫大小(1k=1024)
count:寫入次數
/dev/zero:一個特殊的檔案,讀取此檔案都會獲得空資料 - Host_3發出請求檔案的訊息
nc -l -p 3334 | pv | dd of=test.iso
可以看到目前接收進度為0,接下來我們讓server送出檔案 - Server_1送出檔案
dd if=test.iso | nc Host_3-IP 3334
Server1將檔案傳送給Host_3,輸入後可以發現Host_3的進度條已經開始運作
Controller也顯示傳送資訊,箭頭處代表回傳通過的路徑
備註
如果只是要用一般的netcat傳法
Host_3
nc -l -p 3334 > test.iso
Server3
nc -w 3 Host3-ip 3334 < test.iso
也可傳送成功,不過並沒有其他多餘資訊
沒有留言:
張貼留言