架構如圖:pc1爲控制器,pc2爲交換機。Pc3爲server/client(一臺裝有兩個虛擬機的pc,需將網絡鏈接方式設爲橋接。自行按照實驗室的網段來分配ip,後面章節有詳述),在本搭建教程中,controller爲宿主機,pc2和pc3爲宿主機上的兩臺虛擬機。html
因爲控制器是floodlight版本修改而來,因此做爲控制器的宿主機必需要有java的開發環境。配置方法以下:java
1. 在瀏覽器中打開http://www.oracle.com/technetwork/java/javase/downloads/index.html,中找到jdk download並點擊(版本要在1.7以上,即java se7u**)這裏選擇如圖:linux
2. 選擇accept,而後根據本身的linux版本下載對應的jdk,如64位,就下載紅框中的第四個壓縮包,32位就在下紅框中的第二個壓縮包,如圖所示:ubuntu
3. 下載完成後,cd到文件下載的文件夾,(此教程都是默認下載目錄:下載 文件夾)並解壓,如圖所示輸入命令:瀏覽器
4. 在/usr下建立java文件夾,並將解壓後的文件夾mv過去,服務器
5. 編輯/etc/profile 文件,將如下命令添加到文件尾部,保存並關閉.請將jdk1.7.0_71改成本身對應的解壓後的文件夾名稱:網絡
export JAVA_HOME=/usr/java/jdk1.7.0_71架構
export JRE_HOME=$JAVA_HOME/jreoracle
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATHeclipse
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
6. 註銷並從新登陸,在終端裏輸入:java -version,若是輸出以下,則證實配置成功:
1. 在瀏覽器中打開http://www.eclipse.org/downloads/,找到Eclipse IDE for Java EE Developers,按照linux位數進行下載:
2. 點擊download進行下載,保存到下載文件夾:
3. 下載完成後,cd到下載文件夾,輸入如下命令進行解壓:
並將/opt文件夾賦予777權限,將解壓縮的文件mv過去:
至此,java環境的安裝配置已經完成。
1. 在終端中輸入 sudo apt-get install virtualbox,進行安裝:
2. 安裝完成後在終端中輸入 virtualbox 來啓動virtualbox:
在整體概述中的架構中,已經提到須要兩臺虛擬機,一臺switch和一臺server/client。下面先說switch的安裝:
1. 在啓動virtualbox後,點擊新建,而後依次輸入名稱這裏爲:pof_swich,類型和版本(根據本身的iso鏡像,這裏是ubuntu13.10 64bit),而後點擊下一步:
2. 內存大小,默認512M,點擊下一步:
3. 虛擬硬盤,選擇如今建立虛擬硬盤,而後點擊建立:
4. 文件類型,默認第一個,而後點擊下一步:
5. 選擇:動態分配,點擊下一步:
6. 文件位置和大小,默認名字就行,而後點擊建立:
7. 左鍵選中剛纔建立的虛擬機,而後點擊設置:
8. 依次左鍵選中 存儲,控制器IDE:沒有盤片,而後點擊分配光驅右側的小光盤圖標來加載鏡像,選擇鏡像所在位置(這裏是13.10,紅框所示),點擊打開:
9. 左鍵依次選擇 網絡,鏈接方式選擇:橋接網卡,界面名稱選擇eth0,而後點擊肯定:
10. 點擊啓動,啓動虛擬機,出現選擇啓動盤界面,因爲以前選擇好了,直接點擊啓動就行:
11. 語言選擇中文簡體,而後點擊安裝ubuntu,而後不要選擇安裝中下載更新,點擊繼續:
12. 選擇默認的:清除整個磁盤並安裝ubuntu,而後點擊如今安裝:
下面的步驟就是點擊下一步便可,其中有步驟須要你建立用戶名和密碼,此處再也不截圖贅述。
13. 在安裝好以後啓動虛擬機,進行網絡的配置(若是實驗室是dhcp,忽略此步驟,此步驟針對無DHCP的狀況)在登陸進入系統以後,點擊左側的設置圖標,而後左鍵點擊網絡,而後點擊有線,選項:
14. 網絡配置:選擇IPV4設置,在方法裏選擇手動,而後點擊添加,依次輸入地址,子網掩碼和網關,最後輸入DNS服務器,點擊保存:
因爲server/client虛擬機的安裝方法同樣,只需在第一步中更更名字爲pofclient(自定義便可),此處再也不贅述。
至此,所需的基本設施已經搭建好,下面進行pof環境的安裝。
咱們將宿主機做爲controller,controller的不須要配置,直接下載代碼,導入eclipse啓動便可:
1. 在瀏覽器中打開:http://www.poforwarding.org/downloads,下載POFController Source Code:
2. Cd到下載文件夾,而後解壓縮,在終端中輸入下圖所示代碼:
3. 打開/opt/eclipse文件夾,雙擊eclipse可執行文件,啓動eclipse,選擇好workspace後,進入工做臺,在左側空白處點擊右鍵選擇import,出現以下界面,依次選擇General,Existiing Projects into Workspace,點擊next:
4. 選擇剛纔解壓過的POFController文件夾,點擊肯定,而後點擊finish:
5. 啓動controller,在左側工程欄裏選中POFController而且右鍵,選擇「Run As à Java Application 」,出現以下界面,在matching items裏選擇 「Main – net.floodlightcontroller.core」,點擊ok啓動:
當出現以下界面表示controller運行成功:
1. 啓動虛擬機pofswitch,登陸進入界面後,在瀏覽器中打開:http://www.poforwarding.org/downloads 下載POFSwitch Source Code:
2. Cd到下載文件夾,解壓縮下載的代碼,如圖所示輸入以下代碼:
3. Cd到解壓後的源碼文件夾,進行配置,編譯安裝步驟,如圖所示依次輸入以下代碼:
注:在輸入以前,若是沒有安裝過build-essential,那麼在終端裏運行下:sudo apt-get install build-essential,再進行下面的步驟。
此時,Pofswitch已經安裝好。
Server/client的主要做用是構造一個包,發送而且分析,因此不須要太多的配置。配置以下:
1.安裝wireshark。打開虛擬機,登陸進入界面,打開終端,在終端裏輸入以下圖代碼:
會出現以下提示,輸入Y,敲擊肯定鍵:
直至結束,wireshark已經安裝完畢,在終端輸入sudo wireshark 便可運行。
2.安裝ostinato。Ostinato是一個專業的發包工具,能夠構造數據包。安裝方法以下:根據本身的版本號找到對應的代碼,依次輸入。
For xUbuntu 14.10 run the following:
sudo sh -c "echo 'deb http://download.opensuse.org/repositories/home:/pstavirs:/ostinato/xUbuntu_14.10/ /' >> /etc/apt/sources.list.d/ostinato.list"sudo apt-get updatesudo apt-get install ostinato
You can add the repository key to apt. Keep in mind that the owner of the key may distribute updates, packages and repositories that your system will trust (more information). To add the key, run:
wget http://download.opensuse.org/repositories/home:pstavirs:ostinato/xUbuntu_14.10/Release.keysudo apt-key add - < Release.key
For xUbuntu 14.04 run the following:
sudo sh -c "echo 'deb http://download.opensuse.org/repositories/home:/pstavirs:/ostinato/xUbuntu_14.04/ /' >> /etc/apt/sources.list.d/ostinato.list"sudo apt-get updatesudo apt-get install ostinato
You can add the repository key to apt. Keep in mind that the owner of the key may distribute updates, packages and repositories that your system will trust (more information). To add the key, run:
wget http://download.opensuse.org/repositories/home:pstavirs:ostinato/xUbuntu_14.04/Release.keysudo apt-key add - < Release.key
For xUbuntu 13.10 run the following:
sudo sh -c "echo 'deb http://download.opensuse.org/repositories/home:/pstavirs:/ostinato/xUbuntu_13.10/ /' >> /etc/apt/sources.list.d/ostinato.list"sudo apt-get updatesudo apt-get install ostinato
You can add the repository key to apt. Keep in mind that the owner of the key may distribute updates, packages and repositories that your system will trust (more information). To add the key, run:
wget http://download.opensuse.org/repositories/home:pstavirs:ostinato/xUbuntu_13.10/Release.keysudo apt-key add - < Release.key
For xUbuntu 13.04 run the following:
sudo sh -c "echo 'deb http://download.opensuse.org/repositories/home:/pstavirs:/ostinato/xUbuntu_13.04/ /' >> /etc/apt/sources.list.d/ostinato.list"sudo apt-get updatesudo apt-get install ostinato
You can add the repository key to apt. Keep in mind that the owner of the key may distribute updates, packages and repositories that your system will trust (more information). To add the key, run:
wget http://download.opensuse.org/repositories/home:pstavirs:ostinato/xUbuntu_13.04/Release.keysudo apt-key add - < Release.key
For xUbuntu 12.10 run the following:
sudo sh -c "echo 'deb http://download.opensuse.org/repositories/home:/pstavirs:/ostinato/xUbuntu_12.10/ /' >> /etc/apt/sources.list.d/ostinato.list"sudo apt-get updatesudo apt-get install ostinato
You can add the repository key to apt. Keep in mind that the owner of the key may distribute updates, packages and repositories that your system will trust (more information). To add the key, run:
wget http://download.opensuse.org/repositories/home:pstavirs:ostinato/xUbuntu_12.10/Release.keysudo apt-key add - < Release.key
For xUbuntu 12.04 run the following:
sudo sh -c "echo 'deb http://download.opensuse.org/repositories/home:/pstavirs:/ostinato/xUbuntu_12.04/ /' >> /etc/apt/sources.list.d/ostinato.list"sudo apt-get updatesudo apt-get install ostinato
You can add the repository key to apt. Keep in mind that the owner of the key may distribute updates, packages and repositories that your system will trust (more information). To add the key, run:
wget http://download.opensuse.org/repositories/home:pstavirs:ostinato/xUbuntu_12.04/Release.keysudo apt-key add - < Release.key
如13.10版本:在終端裏依次輸入:sudo sh -c "echo 'deb http://download.opensuse.org/repositories/home:/pstavirs:/ostinato/xUbuntu_13.10/ /' >> /etc/apt/sources.list.d/ostinato.list"sudo apt-get update
會提示以下錯誤,而後根據上面給的代碼依次輸入
wget http://download.opensuse.org/repositories/home:pstavirs:ostinato/xUbuntu_13.10/Release.keysudo apt-key add - < Release.key
而後如圖所示再輸入 sudo apt-get update
sudo apt-get install ostinato
3.安裝完畢以後,在終端裏輸入 sudo ostinato,啓動軟件,如圖:
在第四節中的安裝controller中,咱們已經啓動了controller。接下來咱們要啓動switch來鏈接上controller。
1. 在虛擬機pofswitch的終端裏,輸入:sudo pofswitch -p 6633 -i IPADDR,而後敲擊肯定鍵。
這裏的-p表示端口,IPADDR表示controller的ip地址,如10.10.16.199
2. 若是出現以下提示則表示鏈接成功:
Pof測試環境已經安裝完畢,本教程僅限於此。測試教程在下一篇。如需文檔,請留言郵箱