亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種多路徑傳輸中最優(yōu)路徑選擇方法與流程

文檔序號:11388850閱讀:1191來源:國知局
本發(fā)明屬于sdn中鏈路負(fù)載均衡相關(guān)領(lǐng)域,尤其涉及一種多路徑傳輸中最優(yōu)路徑選擇方法。
背景技術(shù)
::近幾年,云服務(wù)的快速發(fā)展,承載了大量云計(jì)算服務(wù)的數(shù)據(jù)中心得到廣泛的應(yīng)用及部署,對于數(shù)據(jù)中心網(wǎng)絡(luò)的架構(gòu)及性能提出了較高要求。在高連通性的數(shù)據(jù)中心網(wǎng)絡(luò)(datacenternetworks,dcn)中,服務(wù)器間常常進(jìn)行一對一及多對多通信。高效的利用服務(wù)器間的多條路徑能夠提高數(shù)據(jù)中心網(wǎng)絡(luò)的通信效率及可靠性,而現(xiàn)有的技術(shù)條件下,對于多路徑的利用效率較低,網(wǎng)絡(luò)負(fù)載不均衡,網(wǎng)絡(luò)資源不能高效利用,數(shù)據(jù)通信往往發(fā)生擁塞,導(dǎo)致網(wǎng)絡(luò)性能下降?;趏penflow的sdn技術(shù),控制轉(zhuǎn)發(fā)分離,全局集中控制,為網(wǎng)絡(luò)負(fù)載均衡、提升網(wǎng)絡(luò)qos提供了一種新的解決方案。而將sdn技術(shù)應(yīng)用到數(shù)據(jù)中心網(wǎng)絡(luò)中,建立數(shù)據(jù)中心網(wǎng)絡(luò)全局資源視圖,針對網(wǎng)絡(luò)的不同業(yè)務(wù),可以合理、高效、均衡地分配網(wǎng)絡(luò)資源,優(yōu)化傳輸路徑,避免擁塞,均衡負(fù)載,提升數(shù)據(jù)交換效率。技術(shù)實(shí)現(xiàn)要素:本發(fā)明要解決的技術(shù)問題是:提供一種多路徑傳輸中最優(yōu)路徑選擇方法,根據(jù)實(shí)時(shí)全網(wǎng)資源視圖,動(dòng)態(tài)選擇最優(yōu)路徑,使數(shù)據(jù)處于全網(wǎng)最優(yōu)路徑上傳輸,可以合理、高效、均衡地分配網(wǎng)絡(luò)資源,優(yōu)化傳輸路徑,避免擁塞,均衡負(fù)載,提升數(shù)據(jù)交換效率。為解決上述問題,本發(fā)明采用如下的技術(shù)方案:一種多路徑傳輸中最優(yōu)路徑選擇方法,在基于ryu的路由算法及傳輸機(jī)制仿真平臺中實(shí)現(xiàn)及應(yīng)用,mininet、ryu、iperf的共同協(xié)作來完成路由算法及傳輸機(jī)制的仿真實(shí)現(xiàn)。首先由mininet建立網(wǎng)絡(luò)拓?fù)?,控制器中運(yùn)行app文件來啟動(dòng)ryu控制器,周期性通過ryu的api獲取到全網(wǎng)的拓?fù)湫畔?,集中式處理和存儲,利用iperf模擬產(chǎn)生數(shù)據(jù)流,根據(jù)數(shù)據(jù)流的源目ip,調(diào)用路由算法計(jì)算出一對節(jié)點(diǎn)間的多條轉(zhuǎn)發(fā)路徑,通過評價(jià)函數(shù)選擇出全網(wǎng)最優(yōu)路徑,最后將最優(yōu)路徑下發(fā)到沿途交換機(jī)中。為實(shí)現(xiàn)上述目的,本發(fā)明采用如下的技術(shù)方案:一種多路徑傳輸中最優(yōu)路徑選擇方法,包括以下步驟:步驟1:ryu控制器獲取相關(guān)網(wǎng)絡(luò)拓?fù)湫畔?,所述網(wǎng)絡(luò)拓?fù)湫畔?;switch_list、link_list、switch_port_table、link_to_port、interior_ports、access_ports、以及基于跳數(shù)的網(wǎng)絡(luò)拓?fù)溧徑泳仃?;步驟2、根據(jù)鄰接矩陣,調(diào)用networkx工具中的shortest_simple_paths算法基于跳數(shù)計(jì)算出網(wǎng)絡(luò)拓?fù)渲腥魏我粚?jié)點(diǎn)間的k條路徑,存儲在字典形式的路徑集中;步驟3、ryu控制器通過周期性下發(fā)packet-out消息到交換機(jī),獲取到交換機(jī)中端口流量信息和流表流量信息;步驟4、當(dāng)一條流到來,根據(jù)源目ip,在access_ports中查詢是否存在相關(guān)信息,若存在則可獲得其源目交換機(jī);若不存在,則結(jié)合access_ports和arp協(xié)議,記錄相關(guān)信息到access_table中,同時(shí)獲得該主機(jī)掛靠的交換機(jī)及其連接端口;依據(jù)獲得的源目交換機(jī),從之前計(jì)算好的路徑集中讀取源目交換機(jī)的top-k路徑集;步驟5、對top-k路徑優(yōu)劣進(jìn)行評價(jià);步驟6:通過對top-k路徑評價(jià)后,根據(jù)其評價(jià)選擇出評價(jià)m最高的路徑作為最優(yōu)路徑,并將該最優(yōu)路徑下發(fā)到沿途交換機(jī)中。作為優(yōu)選,步驟1包括:步驟1.1:ryu控制器通過lldp協(xié)議獲取到數(shù)據(jù)平面的交換機(jī)信息和鏈路連接信息;步驟1.2:通過調(diào)用ryu控制器的api接口讀取交換機(jī)信息switch_list和鏈路連接信息link_list;步驟1.3:通過分析整合交換機(jī)信息switch_list和鏈路連接信息link_list可得出以下信息:1)switch_port_table:網(wǎng)絡(luò)中所有交換機(jī)與其所包含的端口對應(yīng)表;2)link_to_port:網(wǎng)絡(luò)中任意一條鏈路中源目交換機(jī)與源目端口的對應(yīng)表;3)interior_ports:網(wǎng)絡(luò)中的滿足只與交換機(jī)相連的交換機(jī)與其所包含的端口對應(yīng)表;4)access_ports:網(wǎng)絡(luò)中的滿足與主機(jī)相連的交換機(jī)與其所包含的端口對應(yīng)表;步驟1.4:根據(jù)link_to_port和switch_list構(gòu)建基于跳數(shù)的網(wǎng)絡(luò)拓?fù)溧徑泳仃?。作為?yōu)選,步驟3還包括:將獲取到的流量信息進(jìn)行統(tǒng)計(jì)分析,每條鏈路入端口處的流量信息記作該鏈路流量信息,并且將各鏈路的流量信息存儲于鄰接矩陣中,同時(shí)周期性更新鄰接矩陣的信息以供制定路由策略時(shí)參考。作為優(yōu)選,步驟5:對top-k路徑進(jìn)行評價(jià),具體包括以下步驟:步驟5.1:top-k路徑中各條路徑讀取相關(guān)信息在各條路徑中,讀取其組成鏈路的可用帶寬信息及計(jì)算該路徑的跳數(shù);步驟5.2:計(jì)算鏈路可用帶寬均衡程度bbd在一條路徑中,讀取其各鏈路的可用帶寬信息,計(jì)算出一條路徑中鏈路可用帶寬的最大值和最小值,并按照公式計(jì)算其比值,可得出一條路徑中的鏈路可用帶寬均衡程度bbd,bbd=min(esd)/max(esd);其中,esd表示節(jié)點(diǎn)s到節(jié)點(diǎn)d的路徑中各鏈路可用帶寬的集合步驟5.3:計(jì)算路徑時(shí)延影響程度pd在一條路徑中,計(jì)算其路徑跳數(shù)來估算其路徑時(shí)延;使用如下公式計(jì)算:pd=2/n其中,n代表節(jié)點(diǎn)s到節(jié)點(diǎn)d的路徑中經(jīng)過的節(jié)點(diǎn)數(shù)步驟5.4:計(jì)算路徑平均鏈路可用帶寬最優(yōu)度lbw在top-k路徑中,計(jì)算各條路徑的平均鏈路可用帶寬,得出其最大值,綜合各條路徑的路徑平均鏈路可用帶寬最優(yōu)度lbw如下:其中,表示節(jié)點(diǎn)s到節(jié)點(diǎn)d的第n條路徑中各鏈路可用帶寬的集合;表示被評價(jià)路徑中各鏈路可用帶寬的集合。步驟5.5:綜合各部分影響評價(jià)路徑優(yōu)劣多路徑傳輸中最優(yōu)路徑的選擇依據(jù)3方面,現(xiàn)結(jié)合統(tǒng)計(jì)學(xué)交互作用中的相加模型對各部分進(jìn)行結(jié)合,得到如下公式:m=a*bbd+b*pd+c*lbw其中,a代表了鏈路可用帶寬均衡程度對最優(yōu)路徑選擇的影響,b代表了路徑時(shí)延對最優(yōu)路徑選擇的影響,c代表了鏈路可用帶寬大小對最優(yōu)路徑選擇的影響。本發(fā)明方法可行性高、可靠性強(qiáng),根據(jù)實(shí)時(shí)全網(wǎng)資源視圖,動(dòng)態(tài)選擇最優(yōu)路徑,使數(shù)據(jù)處于全網(wǎng)最優(yōu)路徑上傳輸,可以合理、高效、均衡地分配網(wǎng)絡(luò)資源,優(yōu)化傳輸路徑,避免擁塞,均衡負(fù)載,提升數(shù)據(jù)交換效率。附圖說明圖1為網(wǎng)絡(luò)拓?fù)鋱D;圖2為交換機(jī)信息(switch_list)和鏈路連接信息(link_list);圖3為switch_port_table表;圖4為link_to_port表;圖5為interior_ports表;圖6為access_ports表;圖7為基于跳數(shù)的網(wǎng)絡(luò)拓?fù)鋱D;圖8為基于跳數(shù)的節(jié)點(diǎn)間路徑集;圖9為流表流量的相關(guān)信息;圖10為第一條流的access_table表;圖11為第一條流源目交換機(jī)的top-k路徑集;圖12為第一條流的路徑集評價(jià)表;圖13為第一條流最優(yōu)路徑選擇并下發(fā);圖14為第二條流的access_table表;圖15為第二條流源目交換機(jī)的top-k路徑集;圖16為第二條流的路徑集評價(jià)表;圖17為第二條流最優(yōu)路徑選擇并下發(fā);圖18為本方法的實(shí)施流程圖。具體實(shí)施方式下面結(jié)合附圖1-13和實(shí)施例對本發(fā)明做進(jìn)一步說明:本發(fā)明提供一種多路徑傳輸中最優(yōu)路徑選擇方法,包括以下步驟:步驟1:ryu控制器獲取相關(guān)網(wǎng)絡(luò)拓?fù)湫畔⒉襟E1.1:ryu控制器通過lldp協(xié)議獲取到數(shù)據(jù)平面的交換機(jī)信息和鏈路連接信息。步驟1.2:通過調(diào)用ryu控制器的api接口讀取交換機(jī)信息(switch_list)和鏈路連接信息(link_list)。步驟1.3:通過分析整合交換機(jī)信息(switch_list)和鏈路連接信息(link_list)可得出以下信息:5)switch_port_table:網(wǎng)絡(luò)中所有交換機(jī)與其所包含的端口對應(yīng)表(如表1所示)表1:6)link_to_port:網(wǎng)絡(luò)中任意一條鏈路中源目交換機(jī)與源目端口的對應(yīng)表(如表2所示)表2:7)interior_ports:網(wǎng)絡(luò)中的滿足只與交換機(jī)相連的交換機(jī)與其所包含的端口對應(yīng)表(結(jié)構(gòu)與表1類似)8)access_ports:網(wǎng)絡(luò)中的滿足與主機(jī)相連的交換機(jī)與其所包含的端口對應(yīng)表(結(jié)構(gòu)與表1類似)步驟1.4:根據(jù)link_to_port和switch_list構(gòu)建基于跳數(shù)的網(wǎng)絡(luò)拓?fù)溧徑泳仃?如表3所示)表3:注:0表示自身相連,1表示不同交換機(jī)間連接,inf表示無連接步驟2:根據(jù)鄰接矩陣,調(diào)用networkx工具中的shortest_simple_paths算法基于跳數(shù)計(jì)算出網(wǎng)絡(luò)拓?fù)渲腥魏我粚?jié)點(diǎn)間的k條路徑(這里指定k=5)存儲在字典形式的路徑集中,如下表5所示。表5:源目節(jié)點(diǎn)對路徑1路徑2…路徑k(s1,s5)[s1,…,s5][s1,…,s5]…[s1,…,s5](s3,s8)[s3,…,s8][s3,…,s8]…[s3,…,s8]……………步驟3:周期性的獲取底層轉(zhuǎn)發(fā)流量狀況;步驟3.1:ryu控制器通過周期性下發(fā)packet-out消息到交換機(jī),獲取到交換機(jī)中端口流量信息和流表流量信息。步驟3.2:將獲取到的流量信息進(jìn)行統(tǒng)計(jì)分析,每條鏈路入端口處的流量信息記作該鏈路流量信息,并且將各鏈路的流量信息存儲于鄰接矩陣中,同時(shí)周期性更新鄰接矩陣的信息以供制定路由策略時(shí)參考。注:表中非0數(shù)字均代表鏈路流量,但并不是實(shí)際大小。步驟4:讀取源目交換機(jī)的top-k路徑集步驟4.1:當(dāng)一條流到來,根據(jù)源目ip,在如表4所示的access_ports中查詢是否存在相關(guān)信息,若存在則可獲得其源目交換機(jī);若不存在,則結(jié)合access_ports和arp協(xié)議,記錄相關(guān)信息到access_table中,包括獲得主機(jī)的ip及mac信息,同時(shí)獲得該主機(jī)掛靠的交換機(jī)及其連接端口。表4:步驟4.2:依據(jù)獲得的源目交換機(jī),從之前計(jì)算好的路徑集中讀取k=5條路徑.步驟5:對k=5條路徑(記作top-k路徑)進(jìn)行評價(jià)步驟5.1:top-k路徑中各條路徑讀取相關(guān)信息在各條路徑中,讀取其組成鏈路的可用帶寬信息及計(jì)算該路徑的跳數(shù)。步驟5.2:計(jì)算鏈路可用帶寬均衡程度bbd(bandwidthbalancingdegree)在一條路徑中,讀取其各鏈路的可用帶寬信息,計(jì)算出一條路徑中鏈路可用帶寬的最大值和最小值,并按照公式計(jì)算其比值,可得出一條路徑中的鏈路可用帶寬均衡程度bbd。bbd=min(esd)/max(esd)其中,esd表示節(jié)點(diǎn)s到節(jié)點(diǎn)d的路徑中各鏈路可用帶寬的集合,在一條路徑中,通過評價(jià)路徑中鏈路可用帶寬最小值與最大值的比值來衡量鏈路可用帶寬均衡度;鏈路可用帶寬的最小值與最大值越接近,則說明路徑的各條鏈路可用帶寬越均衡;同時(shí)由于其最小值必定不大于其最大值,即bbd范圍是0-1,在最理想情況下,最小值等于最大值,則bbd為1,在最惡劣情況下,最小值與最大值相差甚遠(yuǎn),則bbd趨向于0。步驟5.3:計(jì)算路徑時(shí)延影響大小pd(pathdelay)在一條路徑中,計(jì)算其路徑跳數(shù)來估算其路徑時(shí)延;使用如下公式計(jì)算:pd=2/n其中,n代表節(jié)點(diǎn)s到節(jié)點(diǎn)d的路徑中經(jīng)過的節(jié)點(diǎn)數(shù),因?yàn)槁窂綍r(shí)延和路徑跳數(shù)呈反相關(guān),因此采用2/n來衡量路徑時(shí)延對于路徑選擇的影響,同時(shí)由于連接在同一交換機(jī)上的不同主機(jī)間通信是不需要路徑選擇的,所以路徑跳數(shù)必定不小于2,此方法計(jì)算的比值限定在0-1間。步驟5.4:計(jì)算路徑平均鏈路可用帶寬最優(yōu)度lbw(linkbandwidth)在top-k路徑中,計(jì)算各條路徑的平均鏈路可用帶寬,得出其最大值,綜合各條路徑的路徑平均鏈路可用帶寬最優(yōu)度lbw計(jì)算公式如下:其中,表示節(jié)點(diǎn)s到節(jié)點(diǎn)d的第n條路徑中各鏈路可用帶寬的集合;表示被評價(jià)路徑中各鏈路可用帶寬的集合;在一對服務(wù)器節(jié)點(diǎn)間存在多條路徑,路徑平均鏈路可用帶寬和多路徑中平均鏈路可用帶寬最大者對比,比值越大說明該路徑的平均鏈路帶寬越接近多路徑中平均鏈路可用帶寬的最優(yōu)。步驟5.5:綜合各部分影響評價(jià)路徑優(yōu)劣多路徑傳輸中最優(yōu)路徑的選擇依據(jù)3方面,由于各部分影響大小計(jì)算方法均對路徑選擇呈正作用,現(xiàn)結(jié)合統(tǒng)計(jì)學(xué)交互作用中的相加模型對各部分進(jìn)行結(jié)合,得到如下公式:m=a*bbd+b*lbw+c*pd其中,a代表了鏈路可用帶寬均衡程度對最優(yōu)路徑選擇的影響,b代表了路徑時(shí)延對最優(yōu)路徑選擇的影響,c代表了鏈路可用帶寬大小對最優(yōu)路徑選擇的影響。步驟6:結(jié)合各路徑評價(jià)選擇最優(yōu)路徑通過對top-k路徑評價(jià)后,根據(jù)其評價(jià)選擇出評價(jià)m最高的路徑作為最優(yōu)路徑,并將該最優(yōu)路徑下發(fā)到沿途交換機(jī)中。下面運(yùn)行一個(gè)已應(yīng)用此路由算法的仿真平臺,通過仿真來重現(xiàn)該路由算法的運(yùn)行機(jī)制和效果。步驟1:利用mininet建立k=2的fat-tree網(wǎng)絡(luò)拓?fù)?,網(wǎng)絡(luò)拓?fù)淙鐖D1所示。從圖1中看出,一對節(jié)點(diǎn)間存在多條轉(zhuǎn)發(fā)路徑,比如從節(jié)點(diǎn)e7到節(jié)點(diǎn)e9間存在多條路徑,h1向h5的轉(zhuǎn)發(fā)路徑和h2向h6的轉(zhuǎn)發(fā)路徑不一定一樣,可以在節(jié)點(diǎn)e7到節(jié)點(diǎn)e9間的兩條不同路徑上同時(shí)轉(zhuǎn)發(fā)。步驟2:運(yùn)行ryu控制器。步驟3:通過調(diào)用ryu控制器的api接口讀取交換機(jī)信息(switch_list)和鏈路連接信息(link_list),如圖2所示。步驟4:通過分析整合交換機(jī)信息和鏈路連接信息可得switch_port_table表、link_to_port表、interior_ports表、access_ports表,如圖3-圖9所示。步驟5:ryu控制器中建立基于跳數(shù)的網(wǎng)絡(luò)拓?fù)鋱D并顯示,如圖所示。步驟6:在ryu控制器運(yùn)行日志顯示基于跳數(shù)的路徑集,如圖9所示步驟7:流表流量顯示圖10是交換機(jī)端口流量的相關(guān)信息。datapath是交換機(jī)號,port是該交換機(jī)下的某一端口,rx-pkts、rx-bytes、rx-error分別表示該交換機(jī)下該端口接收的數(shù)據(jù)包數(shù)、字節(jié)數(shù)、錯(cuò)誤字節(jié);tx-pkts、tx-bytes、tx-error分別表示該交換機(jī)下該端口發(fā)送的數(shù)據(jù)包數(shù)、字節(jié)數(shù)、錯(cuò)誤字節(jié)數(shù);port-speed表示端口速率,current-capacity表示端口容量,port-stat、link-stat表示端口和鏈路正在使用。步驟:8:利用iperf產(chǎn)生數(shù)據(jù)流第一條數(shù)據(jù)流。步驟9:獲取源目ip,查詢access_table表(圖10)得到源目交換機(jī),讀取源目交換機(jī)間的top-k路徑集,如圖11所示。步驟10:對top-k路徑進(jìn)行評價(jià),各個(gè)評價(jià)指標(biāo)參數(shù)如圖12所示步驟11:選擇路徑評價(jià)最好的路徑并下發(fā),如圖13所示。步驟:12:利用iperf產(chǎn)生數(shù)據(jù)流第二條數(shù)據(jù)流。步驟13:獲取源目ip,查詢access_table表(圖14)得到源目交換機(jī),讀取源目交換機(jī)間的top-k路徑集,如圖15所示。步驟14:對top-k路徑進(jìn)行評價(jià),各個(gè)評價(jià)指標(biāo)參數(shù)如圖16所示,這里相較于第一條數(shù)據(jù)流,每條備選路徑的各個(gè)評價(jià)指標(biāo)參數(shù)差異比較明顯。步驟15:選擇路徑評價(jià)最好的路徑并下發(fā),如圖17所示。通過上述仿真實(shí)驗(yàn),實(shí)現(xiàn)了一種多路徑傳輸中最優(yōu)路徑選擇方法,其中包括獲取網(wǎng)絡(luò)拓?fù)浼跋嚓P(guān)信息、計(jì)算節(jié)點(diǎn)間路徑集、讀取源目節(jié)點(diǎn)top-k路徑集、對路徑集評價(jià)、選擇最優(yōu)路徑并下發(fā);本發(fā)明中所述細(xì)節(jié)均實(shí)現(xiàn),保證了網(wǎng)絡(luò)的負(fù)載均衡。當(dāng)前第1頁12當(dāng)前第1頁12
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1