2020 SDN第七次上機實驗

2022-08-22 11:12:07 字數 3588 閱讀 6769

github倉庫:

一、實驗目的

對 python 呼叫 opendaylight 的 rest api 方法有初步了解

本實驗需要用另一種方法完成上乙個實驗相同的功能,即通過 python 程式呼叫 opendaylight 的北向介面下發關於硬超時的流表,實現拓撲內主機在一定時間 內的網路通斷。實驗拓撲如下:

1.實驗環境

安裝了ubuntu 16.04.7 desktop amd64的虛擬機器

2.實驗過程

(1)生成拓撲

(2)編寫python**和 json 格式的請求內容

由於是下發流表,因此需要有 http 請求的具體內容,同之前的 postman 一樣, 也是以 json 格式來表示。

編輯hardtimeout.json檔案:

$ nano hardtimeout.json
檔案中不包含 http 請求的 url 位址

},

"ipv4-destination": "10.0.0.3/32"

},"instructions": }]}

}]},

"flow-name": "flow1",

"priority": "65535",

"hard-timeout": "10",

"cookie": "2",

"table_id": "0"}]}

(3)執行python**,完成流表下發

解決方法:jstr = f.read()**行縮排問題,應更改為:

解決方法:應該先開啟odl控制器,再執行odlnorth.py檔案即可。

解決方法:flownode更改為flow-node

驗證結果:

執行**如果報錯:importerror: no module named requests,可嘗試如下方法:

$ sudo apt-get install python-pip //如果 pip 沒裝的話需要執行

$ sudo pip install requests

更多 opendaylight 的 rest api 文件可以在下面的位址中查詢:

使用api_get,生成的odlget.py**如下:

得到的實驗結果為:

SDN第七次上機作業

2 編寫python程式,呼叫opendaylight的北向介面下發指令刪除s1上的流表資料。3 編寫python程式,呼叫opendaylight的北向介面下發硬超時流表,實現拓撲內主機h1和h3網路中斷20s。4 編寫python程式,呼叫opendaylight的北向介面獲取s1上活動的流表數...

第七次上機實驗

檔名稱 作 者 賴詩文 完成日期 2016 年 06月05日 版 本 號 v1.0 對任務及求解方法的描述部分 輸入描述 輸入兩個數 問題描述 求二個數的最小公倍數和最大公約數 程式輸出 略 問題分析 利用函式求 演算法設計 略 includeint fun int a,int b return b...

C 第七次上機實驗

一,問題及 檔名稱 陣列素數排序 作 者 張軒哲 完成日期 2016年06月2日 版 本 號 v1.0 對任務及求解方法的描述部分 陣列素數排序 輸入描述 無 問題描述 程式輸出 問題分析 簡單 演算法設計 函式的多次呼叫 include void sort int p 10 int n bool ...