基于SDN的最短路徑算法(dijkstra)實現(xiàn).docx

基于SDN的最短路徑算法(dijkstra)實現(xiàn).docx

ID:57323034

大?。?22.62 KB

頁數(shù):9頁

時間:2020-08-11

基于SDN的最短路徑算法(dijkstra)實現(xiàn).docx_第1頁
基于SDN的最短路徑算法(dijkstra)實現(xiàn).docx_第2頁
基于SDN的最短路徑算法(dijkstra)實現(xiàn).docx_第3頁
基于SDN的最短路徑算法(dijkstra)實現(xiàn).docx_第4頁
基于SDN的最短路徑算法(dijkstra)實現(xiàn).docx_第5頁
資源描述:

《基于SDN的最短路徑算法(dijkstra)實現(xiàn).docx》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、基于SDN的最短路徑算法(dijkstra)實現(xiàn)一.實驗要求把路由算法作為APP加入到控制器中,使SDN網(wǎng)絡(luò)實現(xiàn)根據(jù)拓?fù)淝闆r自動選擇路由的功能。二.實驗環(huán)境及思路本實驗的控制器采用Floodlight,向Floodlight添加模塊zhlruote以實現(xiàn)控制器路由功能。將上題中采用的dijkstra最短路徑算法加入到控制器中,控制器根據(jù)選擇出的路由下發(fā)流表給交換機(jī),從而使主機(jī)節(jié)點能夠相互通信。實驗中各個鏈路的帶寬約束及帶寬需求bdw通過zhlroute模塊在init()方法中讀取input.txt文件獲得,源節(jié)

2、點與目的節(jié)點通過packetin消息獲得。zhlroute模塊初始化完成后,監(jiān)聽PacketIn消息,收到消息后進(jìn)行判斷,如果需要轉(zhuǎn)發(fā),則通過returnRoute()方法獲取目的節(jié)點到源節(jié)點的完整路徑,并對路徑上的節(jié)點進(jìn)行遍歷以下發(fā)流表。在獲取路由路徑時,使用floodlight提供的拓?fù)涔芾砟K(TopologyManager.java)來獲取各鏈路的連接狀態(tài)(包括連接節(jié)點及端口,存儲于clusters類集中),通過對各個節(jié)點上與其相連的鏈路的遍歷來獲取源節(jié)點到目的節(jié)點的完整路徑。模塊整體流程圖如圖1所示:

3、圖1:zhlroute模塊流程圖三.實驗步驟(1)修改第一大題中用到的創(chuàng)建拓?fù)涞膍yfirst.py文件,創(chuàng)建如下所示拓網(wǎng)絡(luò)拓?fù)洌和負(fù)渲邪?臺交換機(jī)和8臺主機(jī),交換機(jī)根據(jù)其SwitchDPID(00:00:00:00:00:00:00:00到00:00:00:00:00:00:00:08)由低到高分別標(biāo)記為s1到s8,主機(jī)h1-h8(ip)分別與s1-s8相連。圖2:網(wǎng)絡(luò)拓?fù)鋱D3:網(wǎng)絡(luò)拓?fù)洌?)啟動floodlight,注意將forwarding模塊禁止啟動加載,然后對zhlroute模塊進(jìn)行連通性測試,結(jié)果

4、如圖4。說明各主機(jī)可以進(jìn)行通信,zhlroute模塊能夠發(fā)現(xiàn)路徑并下發(fā)流表。圖4:zhlroute模塊功能測試實驗中帶寬約束及帶寬需求(bdw)通過讀取input.txt文件獲得,input.txt文件內(nèi)容如下(本實驗中的源節(jié)點與目的節(jié)點從PacketIn消息中獲得,不通過input.txt文件獲得):leftnodeID,rightnodeID,bandwidth1,3,1001,4,1002,3,1002,4,1003,4,1003,5,1003,6,1004,5,1004,6,1005,6,1005,7,

5、1005,8,1006,7,1006,8,100;srcNodeID,dstNodeID,bandwidth3,8,90(3)進(jìn)行路徑分析測試,在模塊中添加語句System.out.println(route)以輸出獲取到的Route,輸入以下命令:測試主機(jī)h1與h7能否通信并獲取經(jīng)過的路徑信息。elcipse控制臺中輸出的信息(整條路徑)如下:Route[id=RouteId[src=00:00:00:00:00:00:00:07dst=00:00:00:00:00:00:00:01],switchPorts

6、=[[id=00:00:00:00:00:00:00:07,port=1],[id=00:00:00:00:00:00:00:07,port=2],[id=00:00:00:00:00:00:00:05,port=5],[id=00:00:00:00:00:00:00:05,port=2],[id=00:00:00:00:00:00:00:03,port=5],[id=00:00:00:00:00:00:00:03,port=2],[id=00:00:00:00:00:00:00:01,port=2],[id=

7、00:00:00:00:00:00:00:01,port=1]]]Route[id=RouteId[src=00:00:00:00:00:00:00:01dst=00:00:00:00:00:00:00:07],switchPorts=[[id=00:00:00:00:00:00:00:01,port=1],[id=00:00:00:00:00:00:00:01,port=2],[id=00:00:00:00:00:00:00:03,port=2],[id=00:00:00:00:00:00:00:03,por

8、t=5],[id=00:00:00:00:00:00:00:05,port=2],[id=00:00:00:00:00:00:00:05,port=5],[id=00:00:00:00:00:00:00:07,port=2],[id=00:00:00:00:00:00:00:07,port=1]]]輸出的route中,每條完整路徑由id確定(源節(jié)點和目的節(jié)點)。完整路徑包括了路徑所經(jīng)過

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。