国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Kandoo架構(gòu)的SDN網(wǎng)絡(luò)負(fù)載均衡算法研究

2016-04-13 02:00:16張開(kāi)東
山西電子技術(shù) 2016年1期
關(guān)鍵詞:負(fù)載均衡

張開(kāi)東

(山西職業(yè)技術(shù)學(xué)院,山西 太原 030006)

?

基于Kandoo架構(gòu)的SDN網(wǎng)絡(luò)負(fù)載均衡算法研究

張開(kāi)東

(山西職業(yè)技術(shù)學(xué)院,山西 太原 030006)

摘要:SDN基于分層模型的原理,將數(shù)據(jù)層與管理層分隔并為其定義了規(guī)范化的信息交互接口——OpenFlow。OpenFlow技術(shù)主要采用的是Kandoo架構(gòu)具體實(shí)現(xiàn)網(wǎng)絡(luò)的分布式控制。而其中涉及到的網(wǎng)絡(luò)負(fù)載均衡問(wèn)題長(zhǎng)久以來(lái)一直是相關(guān)領(lǐng)域的重點(diǎn)解決問(wèn)題。因此本文重點(diǎn)對(duì)基于Kandoo架構(gòu)的幾種典型網(wǎng)絡(luò)負(fù)載均衡算法的性能進(jìn)行了研究分析和比較測(cè)評(píng)。

關(guān)鍵詞:SDN;OpenFlow;Kandoo;負(fù)載均衡

Kandoo架構(gòu)是應(yīng)用在OpenFlow協(xié)議平臺(tái)上的典型的分布式控制器結(jié)構(gòu),它采用了完全分布式與分層式相結(jié)合的架構(gòu),其局部控制器可由網(wǎng)絡(luò)管理人員根據(jù)情況靈活進(jìn)行更換調(diào)整,有效簡(jiǎn)化了網(wǎng)絡(luò)結(jié)構(gòu)。而Kandoo架構(gòu)中的負(fù)載問(wèn)題主要指的是本地控制器在區(qū)域數(shù)據(jù)流控制事件分配處理時(shí)出現(xiàn)的調(diào)度不均衡現(xiàn)象[1]。其負(fù)載均衡策略主要用于解決區(qū)域內(nèi)頻發(fā)事件的合理調(diào)度和時(shí)間分配,以保證各個(gè)區(qū)域內(nèi)的負(fù)載均衡。本文在對(duì)其負(fù)載均衡策略中經(jīng)常采用的蜂群算法、加權(quán)輪詢(xún)算法以及加權(quán)輪詢(xún)改進(jìn)算法進(jìn)行分析研究,并對(duì)其執(zhí)行效率進(jìn)行了測(cè)試與對(duì)比。

1Kandoo架構(gòu)實(shí)現(xiàn)原理

1.1Kandoo架構(gòu)簡(jiǎn)述

Kandoo架構(gòu)是由SoheilHassasYeganeh等在2007年提出并設(shè)計(jì)的一種基于SDN網(wǎng)絡(luò)控制平臺(tái)的高級(jí)應(yīng)用控制框架[2]。具有可編程性的軟件控制平臺(tái),對(duì)于網(wǎng)絡(luò)的路由控制、帶寬流量控制、數(shù)據(jù)廣播及存儲(chǔ)等操作全部由可編程的軟件來(lái)實(shí)現(xiàn)控制,還可以通過(guò)用戶編程靈活實(shí)現(xiàn)網(wǎng)絡(luò)資源的控制,同時(shí)還可將程序卸載重寫(xiě),更改控制策略。

圖1 基于SDN的Kandoo控制平臺(tái)

由圖1可知Kandoo路由控制平臺(tái)主要由狀態(tài)指示器(IGP)、控制引擎(BGP)、基于路由控制協(xié)議提供控制服務(wù)的RCS服務(wù)器三部分組成。

RCS服務(wù)器是可編程實(shí)現(xiàn)控制的服務(wù)器,為網(wǎng)絡(luò)管理人員提供了易于實(shí)現(xiàn)的控制功能,而不必過(guò)多地考慮硬件設(shè)備狀態(tài),簡(jiǎn)化硬件設(shè)備的配置工作,減少硬件配置錯(cuò)誤而引起的一系列網(wǎng)絡(luò)問(wèn)題。

IGP用于反映當(dāng)前網(wǎng)絡(luò)的路由鏈路狀態(tài)信息,并將監(jiān)測(cè)到的狀態(tài)信息提交給RCS服務(wù)器,以便RCS服務(wù)器進(jìn)行準(zhǔn)確的路由控制。

控制引擎BGP用于建立和維護(hù)路由器與路由器之間,路由器與RCS服務(wù)器之間的會(huì)話通道,并遵循TCP協(xié)議的路由控制協(xié)議。由于BGP直接部署在TCP之上,并遵循相應(yīng)的控制協(xié)議,因此不需要再單獨(dú)建立物理通道實(shí)現(xiàn)以上對(duì)象的交互。

Kandoo架構(gòu)是目前SDN技術(shù)實(shí)現(xiàn)所采用的主流架構(gòu),其部署靈活且兼容性好,使網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)一步得到了簡(jiǎn)化。

1.2Kandoo的構(gòu)成與工作模式

1) Kandoo控制器

Kandoo控制器是Kandoo網(wǎng)絡(luò)的核心,除兼容基本的OpenFlow控制功能外,還具備對(duì)特定應(yīng)用的識(shí)別擴(kuò)展功能。通過(guò)分層部署的控制器可對(duì)事件處理進(jìn)行分級(jí),屬于本地控制器處理的事件將對(duì)全局控制器屏蔽,根控制器主要負(fù)責(zé)響應(yīng)本地控制器的流表項(xiàng)更新請(qǐng)求。

2) 控制器的虛擬部署

Kandoo虛擬控制器可以直接部署在本地交換機(jī)上,但前提是交換機(jī)設(shè)備的軟件是可卸載更新的。虛擬控制器可采用就近策略部署在距離交換機(jī)最近的網(wǎng)絡(luò)硬件資源上;同時(shí)Kandoo架構(gòu)還允許在同一臺(tái)終端設(shè)備上部署多個(gè)本地控制器,具體架構(gòu)部署主要依賴(lài)于當(dāng)前網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。

3) 控制器算法策略

Kandoo通過(guò)對(duì)控制器的虛擬化部署方便地實(shí)現(xiàn)虛擬控制層與物理數(shù)據(jù)層的分離。同時(shí)在算法策略的制定上著重考慮了本地控制程序的分離加載,以避免卸載過(guò)時(shí)應(yīng)用流表而可能引起的錯(cuò)誤。經(jīng)過(guò)優(yōu)化的Kandoo架構(gòu)還加入了負(fù)載均衡策略,例如加權(quán)輪詢(xún)、蜂群算法等方案以解決控制層負(fù)載不均衡問(wèn)題。

4) Kandoo事件的傳輸

Kandoo控制器可通過(guò)程序設(shè)定自行建立簡(jiǎn)單的事件傳遞通道,實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)流控制消息的傳輸。Kandoo控制器間的事件傳遞都是采用異步通訊的方式,將消息流封裝為事件然后再基于異步方式進(jìn)行傳遞。

1.3Kandoo架構(gòu)所著重實(shí)現(xiàn)的功能

1) 對(duì)于原網(wǎng)絡(luò)架構(gòu)的兼容。現(xiàn)在的軟件控制網(wǎng)絡(luò)普遍遵循OpenFlow協(xié)議標(biāo)準(zhǔn),大部分的網(wǎng)絡(luò)路由設(shè)備都支持OpenFlow技術(shù),因此Kandoo對(duì)OpenFlow技術(shù)的兼容是非常必要的。

2) 能夠?qū)崿F(xiàn)程序的自動(dòng)控制,而減少人工消耗?;贙andoo架構(gòu)的軟件開(kāi)發(fā)是與硬件完全分離的,在部署的時(shí)候不需要過(guò)細(xì)的考慮硬件的實(shí)際狀態(tài)以及具體的部署方式。通過(guò)根控制器的Appreroute應(yīng)用實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)流量的實(shí)時(shí)監(jiān)聽(tīng),通過(guò)數(shù)據(jù)流量的狀態(tài)發(fā)布指令到本地控制器的Appdetect服務(wù),由本地控制器的Appdetect實(shí)現(xiàn)數(shù)據(jù)流的轉(zhuǎn)發(fā)控制或者是進(jìn)行流表的更新操作。

Kandoo架構(gòu)實(shí)現(xiàn)了在不必修改網(wǎng)絡(luò)路由設(shè)備硬件狀態(tài)即可部署軟件控制方案的軟件控制網(wǎng)絡(luò)功能。針對(duì)不同的交換機(jī)設(shè)備實(shí)現(xiàn)統(tǒng)一的軟件控制是軟件控制網(wǎng)絡(luò)技術(shù)的核心難題,Kandoo主要通過(guò)根控制器來(lái)實(shí)現(xiàn)集中的邏輯控制,對(duì)網(wǎng)絡(luò)中接入的各類(lèi)交換設(shè)備不間斷地進(jìn)行監(jiān)聽(tīng)查詢(xún)來(lái)獲取到大量的符合信息。

2軟件控制網(wǎng)絡(luò)的負(fù)載均衡算法實(shí)現(xiàn)

Kandoo架構(gòu)中的負(fù)載問(wèn)題主要指的是本地控制器在區(qū)域數(shù)據(jù)流控制事件分配處理時(shí)出現(xiàn)的調(diào)度不均衡現(xiàn)象。Kandoo將這類(lèi)頻發(fā)事件都限制在了數(shù)據(jù)層面的本地控制器上進(jìn)行處理。Kandoo負(fù)載均衡策略主要用于解決區(qū)域內(nèi)頻發(fā)事件的合理調(diào)度和時(shí)間分配,以保證各個(gè)區(qū)域內(nèi)的負(fù)載均衡。Kandoo負(fù)載均衡策略設(shè)計(jì)思路主要是通過(guò)實(shí)現(xiàn)并行計(jì)算,提高分布式資源調(diào)度效率,具體參考依據(jù)有任務(wù)的響應(yīng)時(shí)間、系統(tǒng)吞吐量、資源調(diào)度利用率等指標(biāo)。

2.1加權(quán)輪詢(xún)算法

加權(quán)輪詢(xún)算法是負(fù)載均衡策略中最基礎(chǔ)的均衡算法,實(shí)際上這種算法是加權(quán)算法與時(shí)間輪轉(zhuǎn)算法的組合策略,主要通過(guò)分析區(qū)域內(nèi)的控制節(jié)點(diǎn)的事件處理性能來(lái)調(diào)度任務(wù)分配,使得各個(gè)任務(wù)的響應(yīng)時(shí)間盡量均衡。加權(quán)輪詢(xún)算法先要計(jì)算出區(qū)域內(nèi)各個(gè)控制節(jié)點(diǎn)的權(quán)值,具體由權(quán)值來(lái)表示各個(gè)控制器節(jié)點(diǎn)的處理性能,權(quán)值越高事件處理性能就越好;同時(shí)監(jiān)測(cè)各個(gè)任務(wù)的等待時(shí)間,對(duì)等待時(shí)間延長(zhǎng)的任務(wù)適當(dāng)調(diào)整其響應(yīng)優(yōu)先級(jí)順序。該算法實(shí)現(xiàn)簡(jiǎn)單,但在復(fù)雜應(yīng)用環(huán)境中功能有限,還需結(jié)合文中提到的第二種算法——蜂群算法進(jìn)一步提高系統(tǒng)性能。

蜂群算法技術(shù)是目前較為流行的新型算法策略,算法開(kāi)發(fā)者靈感來(lái)源于蜜蜂在平時(shí)收集食物時(shí)的有規(guī)律的行為軌跡,因此將該算法命名為蜂群算法。

2.2蜂群分布式集中調(diào)度算法

蜂群算法是典型的集中模式管理策略,基于蜂群算法策略部署的控制器單個(gè)控制行為實(shí)現(xiàn)簡(jiǎn)單,形成集群系統(tǒng)后行為控制趨于集中復(fù)雜化。在多個(gè)虛擬集群隊(duì)列中統(tǒng)一調(diào)度空閑節(jié)點(diǎn)查詢(xún)請(qǐng)求隊(duì)列,激活事件處理行為,本地控制器可完全獨(dú)立自主運(yùn)行簡(jiǎn)單調(diào)度程序處理各類(lèi)頻發(fā)事件,并能夠根據(jù)數(shù)據(jù)流傳輸需求在網(wǎng)絡(luò)中的動(dòng)態(tài)變化靈活進(jìn)行調(diào)節(jié)。涉及到全局性事件處理由根控制器統(tǒng)一實(shí)現(xiàn)調(diào)度分配。蜂群算法的工作過(guò)程分為三個(gè)步驟:

1) 首先建立虛擬請(qǐng)求服務(wù)隊(duì)列ServiceA、ServiceB,所有的數(shù)據(jù)轉(zhuǎn)發(fā)請(qǐng)求都需要先加入到請(qǐng)求隊(duì)列中。

2) 建立服務(wù)控制器集群Virtualise,若干個(gè)控制服務(wù)器分布在數(shù)據(jù)層面形成獨(dú)立的若干虛擬節(jié)點(diǎn),這些節(jié)點(diǎn)可自行運(yùn)行調(diào)度算法,查詢(xún)請(qǐng)求隊(duì)列,提前相應(yīng)的事件進(jìn)行響應(yīng)。

3) 設(shè)定CallBoard——廣告資源共享區(qū),實(shí)現(xiàn)數(shù)據(jù)層面的消息廣播,控制服務(wù)器集群中所有控制節(jié)點(diǎn)都可以通過(guò)公告板來(lái)獲得必要的調(diào)度信息,也可以將自身涉及到全局調(diào)度的主要信息發(fā)布到公告板上[3]。

蜂群算法是解決在分布式網(wǎng)絡(luò)中集中調(diào)度任務(wù)管理問(wèn)題的典型策略模式,在很大程度上提高了節(jié)點(diǎn)任務(wù)的并行響應(yīng),進(jìn)而改善了Kandoo網(wǎng)絡(luò)的服務(wù)性能和資源利用率。但蜂群算法實(shí)現(xiàn)起來(lái)結(jié)構(gòu)復(fù)雜,還有待于相關(guān)研究人員的進(jìn)一步的改進(jìn)完善。

2.3加權(quán)輪詢(xún)算法的優(yōu)化

對(duì)加權(quán)輪詢(xún)算法的優(yōu)化主要是要改善其在復(fù)雜環(huán)境中調(diào)度任務(wù)的負(fù)載均衡問(wèn)題?;诩訖?quán)輪詢(xún)算法結(jié)合了任務(wù)調(diào)度性能最小優(yōu)先策略,在綜合考慮了算法的易實(shí)現(xiàn)性和調(diào)度的合理性后,通過(guò)仿真模擬實(shí)驗(yàn)進(jìn)一步驗(yàn)證了加權(quán)輪詢(xún)優(yōu)化算法的可行性。算法演示可參見(jiàn)圖2。

圖2 加權(quán)輪詢(xún)優(yōu)化算法的程序示例

由圖中加權(quán)輪詢(xún)優(yōu)化算法流程可知,經(jīng)過(guò)優(yōu)化的加權(quán)輪詢(xún)算法加入了一個(gè)重要的變量參數(shù)就是時(shí)間周期Time,這個(gè)參數(shù)用于控制負(fù)載流表的更新周期。首先在算法中創(chuàng)建一個(gè)負(fù)載流表,由根控制服務(wù)器采集各個(gè)本地控制服務(wù)器的負(fù)載狀態(tài)信息,然后將信息更新記錄到負(fù)載流表中,并對(duì)各節(jié)點(diǎn)服務(wù)器的事件處理性能進(jìn)行由低到高的排序;請(qǐng)求隊(duì)列中的事件任務(wù)按照負(fù)載流表中的節(jié)點(diǎn)性能排序從低到高依次分配到各個(gè)服務(wù)節(jié)點(diǎn)進(jìn)行處理,當(dāng)時(shí)間周期結(jié)束,重置時(shí)間周期值,同時(shí)更新負(fù)載流表。

3Kandoo架構(gòu)的負(fù)載均衡算法測(cè)評(píng)

本章節(jié)針對(duì)軟件控制網(wǎng)絡(luò)中的負(fù)載均衡問(wèn)題提出了三種解決方案,即加權(quán)輪詢(xún)算法、蜂群算法、加權(quán)輪詢(xún)與最小優(yōu)先算法結(jié)合的優(yōu)化算法。下面將根據(jù)兩個(gè)測(cè)試任務(wù)對(duì)這三種算法進(jìn)行比較測(cè)評(píng),為大家的學(xué)習(xí)提供一些研究參考價(jià)值。

第一個(gè)測(cè)試任務(wù),建立55個(gè)任務(wù)請(qǐng)求,采用上述三種解決方案分別進(jìn)行任務(wù)響應(yīng)測(cè)試,得出相關(guān)數(shù)據(jù)匯總?cè)鐖D3。

圖3 第一測(cè)試任務(wù)數(shù)據(jù)分析匯總

第二個(gè)測(cè)試任務(wù),建立更多的任務(wù)請(qǐng)求,例如310個(gè)任務(wù)處理,采用上述三種解決方案分別進(jìn)行任務(wù)響應(yīng)測(cè)試,得出相關(guān)數(shù)據(jù)匯總?cè)鐖D4。

圖4 多任務(wù)數(shù)的性能參數(shù)分析圖

根據(jù)兩個(gè)測(cè)試任務(wù)三種解決方案的數(shù)據(jù)分析對(duì)比,筆者

得出如下結(jié)論:

1) 在相對(duì)簡(jiǎn)單的任務(wù)響應(yīng)中,加權(quán)輪詢(xún)算法占有明顯優(yōu)勢(shì),事件響應(yīng)時(shí)間最快且資源利用最高;

2) 在測(cè)試二中增加了任務(wù)處理的復(fù)雜性后,加權(quán)輪詢(xún)算法各方面效率下降明顯,蜂群算法及加權(quán)輪詢(xún)優(yōu)化算法表現(xiàn)出了穩(wěn)定的運(yùn)行狀態(tài),兩種解決方案得出的數(shù)據(jù)相似,差別不大。

經(jīng)過(guò)以上測(cè)試我們可以看出在任務(wù)環(huán)境簡(jiǎn)單的網(wǎng)絡(luò)中,采用實(shí)現(xiàn)復(fù)雜的蜂群算法、優(yōu)化算法是不必要,不但不能有效地提高節(jié)點(diǎn)性能還增加了系統(tǒng)的復(fù)雜性;而在復(fù)雜任務(wù)的網(wǎng)絡(luò)環(huán)境中,單一的加權(quán)輪詢(xún)算法無(wú)法滿足多任務(wù)的合理調(diào)度,需要考慮后兩種解決方案,蜂群算法和優(yōu)化算法,從這兩種算法的數(shù)據(jù)分析來(lái)看,加權(quán)輪詢(xún)優(yōu)化算法更為穩(wěn)定,數(shù)據(jù)波動(dòng)基本在均值上下。

參考文獻(xiàn)

[1]趙靖文.基于OpenFlow的集群負(fù)載均衡架構(gòu)研究[D].青島:山東大學(xué),2014.

[2]楊明軍.基于Kandoo架構(gòu)的網(wǎng)絡(luò)負(fù)載均衡算法的研究[D].蘭州:蘭州大學(xué),2013.

[3]ROSTAMI T,et al.ORAN:OpenFlow Routers for Academic Networks[M].Proceeding of HPSR,2013.

Research on Load Balancing Algorithm of SDN Network Based on Kandoo Architecture

Zhang Kaidong

(ShanxiPolytechnicCollege,TaiyuanShanxi030006,China)

Abstract:Based on the principle of hierarchical model, SDN divides the data layer and management layer to define the standard of information exchange interface——OpenFlow. The OpenFlow technology mainly uses the Kandoo architecture to achieve a specific network of distributed control. The problem of network load balancing is the focus in the related fields for a long time. So this paper focuses on the performance of several typical network load balancing algorithms based on Kandoo architecture.

Key words:SDN; OpenFlow; Kandoo; load balancing

中圖分類(lèi)號(hào):TP393.2

文獻(xiàn)標(biāo)識(shí)碼:A

文章編號(hào):1674- 4578(2016)01- 0070- 03

作者簡(jiǎn)介:張開(kāi)東(1984- ),男,山西臨縣人,助講,大學(xué)本科,研究方向:計(jì)算機(jī)應(yīng)用。

收稿日期:2015-11-05

猜你喜歡
負(fù)載均衡
Linux負(fù)載均衡集群技術(shù)在網(wǎng)絡(luò)服務(wù)器中的應(yīng)用
Oracle MAA在汽車(chē)行業(yè)電子政務(wù)平臺(tái)中的應(yīng)用
異構(gòu)環(huán)境下改進(jìn)的LATE調(diào)度算法
基于負(fù)載均衡的云資源調(diào)度策略研究
多站點(diǎn)同步更新系統(tǒng)的設(shè)計(jì)
科技視界(2016年3期)2016-02-26 20:16:57
模糊理論在Ad hoc網(wǎng)絡(luò)通信領(lǐng)域的應(yīng)用
科技視界(2015年25期)2015-09-01 16:07:00
秦安县| 临邑县| 离岛区| 峨边| 东源县| 阜城县| 昭觉县| 太湖县| 垣曲县| 长治市| 紫金县| 达尔| 双辽市| 武鸣县| 尼木县| 镇安县| 贵南县| 花莲县| 武山县| 麻江县| 洞口县| 广安市| 贵港市| 岳阳市| 临猗县| 宜宾县| 桂阳县| 扶余县| 拉萨市| 连城县| 巴中市| 区。| 繁昌县| 长武县| 沂源县| 潼南县| 积石山| 平泉县| 奇台县| 大同市| 新巴尔虎左旗|