999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

SDN多控制器網絡中基于交換機遷移的動態負載均衡策略?

2021-08-08 11:11:32黃泰銘李道全
計算機與數字工程 2021年7期
關鍵詞:策略信息

黃泰銘 王 雪 于 波 李道全

(青島理工大學信息與控制工程學院 青島266520)

1 引言

軟件定義網絡(Software Defined Network)[1]是一種新型網絡體系架構,將傳統的網絡架構劃分為數據平面、控制平面和應用平面,具備數據轉發與規則控制相分離、軟件可編程等特點,成功地解決了傳統網絡的設計僵化問題。然而隨著網絡的規模日益增大,單一控制器的SDN架構無法滿足可擴展性需求,從而出現了邏輯上集中,物理上分布多控制器SDN網絡架構[2]。

在SDN多控制[3]架構中,每一個物理上分布的SDN控制器都可控制多個SDN交換機,而各個控制器之間是邏輯上集中的。然而,流量的變化易導致各個控制器之間的負載不平衡,這會嚴重影響多控制器SDN網絡架構的整體性能。如何實施多控制器之間的交換機遷移從而實現負載均衡目標,是未來網絡發展的重要研究方向[4]。

2 相關研究工作

在初期階段,SDN架構通常只部署了單控制器來管理所有交換機,此架構雖然解決了網絡狀態的一致性問題,但是僅限用于小規模網絡環境,可擴展性低[5]。為解決此問題,近年來已有部分學者提出了多控制器的SDN架構,例如HyperFlow與Onix[6~7]。這些文獻研究了如何實現分布式的控制平面以及如何給應用平面提供一個全局的網絡拓撲,在一定程度上提高了多控制器的擴展性和穩定性。但在多控制器SDN環境下,如何有效預防并解決多控制器之間的負載均衡,又是該領域所面對的新挑戰。

綜合近年來國內外研究現狀,針對多控制器SDN環境下的控制器負載均衡策略,主要以交換機遷移為主。文獻[5]設計了一個“超級控制器”來調度流量,從而達到多控制器之間的負載均衡。文獻[9]提出了COLBAS算法,每個控制器通過定期發布自己的負載,并與其它控制器相互配合來實現多控制器負載均衡。以上兩篇文獻雖然都對多控制器SDN的負載均衡問題提出了解決方案,但在收集負載信息和各控制器的交互方面有著較大的通信代價。在文獻[10]中,Advait等設計了名為Elasti?Con的分布式SDN控制器架構,并提出了一種符合OpenFlow標準的交換機遷移協議,該架構根據控制器負載閾值將交換機就近遷移至鄰居控制器。但其只考慮了單控制器過載的情況,若鄰居控制器也處于過載狀況,此架構將會失效。文獻[11]中,胡等提出了一種以交換機遷移策略為主的階段式控制器負載均衡策略,通過選取交換機遷入和遷出域,設定子域遷移度和交換機有效期的階段式算法實現了對交換機遷移的優化,然而此策略提出的靜態負載信息采集方案會產生較大的通信代價和資源浪費。

總體來說,設計一個更好的交換機遷移策略來解決多控制器SDN的負載均衡問題,不但需要降低控制器之間的通信代價和資源消耗,而且需要提出合理的交換機遷移算法,避免遷移選擇僵化與遷移沖突問題。

針對多控制器SDN環境,本文提出了一種基于交換機遷移的動態負載均衡策略,能夠有效地解決多控制器SDN環境下的負載均衡問題。本文的貢獻和創新工作如下:

1)提出了一種自適應數據波動的動態負載信息采集算法,該算法能夠根據控制器的負載狀態自適應地調整數據收集的時間間隔,從而降低了負載信息采集的開銷。

2)構建具有中央控制器的分布式SDN網絡環境,并提出了更為高效的遷移交換機和遷移目標控制器的選取算法,提高了交換機的遷移效率,避免了遷移沖突。

3 基于交換機遷移的動態負載均衡策略設計

在多域多控制器的SDN網絡環境下,各個分布式的控制器在時間和空間上會出現流量分布不均勻的情況,因此會出現個別控制器子域流量請求激增、控制器過載的情況,而其他控制器子域處理的流量請求較少,從而導致整個網絡的負載不均衡的問題。

針對此問題,本文提出了基于交換機遷移的動態負載均衡策略,流程如圖1所示,此策略共分為三個階段。首先通過動態信息采集算法(DIA)收集各控制器間的負載信息,以決定需要實施交換機遷移算法的過載控制器;隨后依據本文定義的遷移域及遷移交換機選取算法(MSS)決定遷移目標控制器以及需要遷移的交換機;最后依據交換機遷移協議完成交換機遷移,實現多控制器下的負載均衡。本部分內容將針對此策略的三個階段進行具體的算法設計與原理論證。

圖1 多控制器SDN中基于交換機遷移的動態負載均衡策略流程圖

3.1 控制器負載信息采集與過載判定

在傳統負載信息采集方法中,SDN控制器的數據采集模塊通常采用固定的時間間隔來收集負載信息,此方法的缺點在于當各控制器負載均較低時,容易造成不必要的信息采集開銷。為避免頻繁采集控制器負載信息造成的資源浪費,本部分提出了動態負載信息采集算法(DIA),部署并運行于中央控制器。該算法會根據各控制器在一定時間間隔內的負載變化而自適應地調整負載信息采集的時間間隔。在各控制器負載均較低時,增加負載信息采集的時間間隔;在各控制器出現負載波動較大時,降低負載信息采集的時間間隔,由此精確各控制器的實時負載情況,同時避免了頻繁采集控制器負載信息造成的資源浪費。

3.1.1 多控制SDN網絡模型

OpenFlow 1.3協議[12]中為SDN控制器定義了三種模式:master、slave和equal。該協議規定,任意一臺OpenFlow交換機可以與多臺SDN控制器相連,限制條件為該交換機有且僅有一臺master控制器,但同時可以存在多臺equal和slave控制器與其相連。其中,slave控制器對交換機僅有只讀權限,不能接受諸如Packet_in的同步消息。然而master和equal控制器可以更改交換機的狀態并接收交換機的同步消息。

為確保SDN網絡的可靠性,網絡中的每臺OpenFlow交換機在默認情況下連接一臺master控制器和一臺slave控制器,同時也擁有多臺不相連的equal控制器并存于整個多控制器網絡中[13]。在任意一臺OpenFlow交換機的master控制器出現過載或故障時,可通過實現交換機遷移,來實現負載均衡或故障恢復,其過程為更改當前交換機的mas?ter控制器角色為slave,同時將負載較低的equal控制器變更為其master控制器。

在多控制器SDN網絡中,為實時監測各控制器的負載情況并動態地采集負載信息,本文部署了如圖2所示的簡單網絡模型,其中部署了一臺中央控制器來實現對各個SDN控制器負載信息的采集與交互。

圖2 多控制器SDN網絡模型,部署“中央控制器”來收集各控制器的負載信息

3.1.2 動態負載信息采集算法(DIA)

動態負載信息采集算法的原理是在中央控制器部署一個負載監測模塊,周期性地收集各SDN控制器的負載數據以判定是否存在過載控制器。在SDN控制器中,對Packet_in消息的處理是影響其負載的主要因素。OpenFlow交換機若在本地預存的流表中找不到與收到的數據包相匹配的流表項,則會按照OpenFlow協議,把收到的數據包封裝到Packet_in消息中,并將Packet_in消息上傳到SDN控制器。控制器收到報文后決定如何處理當前流,并通過OpenFlow協議將處理結果轉化為新的流表,下發至OpenFlow交換機。其中控制器的CPU負責處理所有數據及接收到的Packet_in消息,控制器的內存負責數據的存儲。控制器接收的Pack?et_in消息越多,其CPU、內存和帶寬的使用率就越高,控制器的負載也會越大。因此DIA算法需要獲取SDN控制器的三種可直接收集到的負載數據:CPU負載lcpu、內存負載lmem和帶寬使用率lbr。

DIA算法根據以上信息定義了SDN控制器的負載L由式(1)所示,ω1、ω2、ω3分別表示lcpu、lmem、lbr所占權重。

隨后定義任意SDN控制器m的負載信息采集的時間間隔Tm,如式(5)所示,其中t代表預設的負載信息采集的時間間隔,預設值為15s。

根據式(1)~(5),在DIA算法中,控制器m的時間間隔動態調整可如式(6)表示。一般情況下,網絡設備的負載在80%以上時會出現丟包現象,因此算法規定在控制器負載值Lm在不超過0.8時為正常負載情況,當負載值大于0.8時會判定該控制器處于過載情況,并運行后文提出的遷移域及遷移交換機選取算法。

3.2 遷移域及遷移交換機選取算法(MSS)

中央控制器運行DIA算法時,若未監測到過載控制器,將會持續動態收集負載信息,若監測并判斷出過載的SDN控制器,此時根據圖1所示流程,中央控制器會進行階段2的遷移交換機及遷移域選取算法(MSS)。MSS算法分為兩步:第一步是要確定交換機遷移的目標子域,也就是遷移域的選取;第二步是從過載SDN控制器子域中選擇出負載較高的交換機來執行交換機遷移操作。

3.2.1 遷移域選取

傳統交換機遷移方案在選擇遷移域時多采用隨機選取原則,沒有綜合考慮遷移域的負載,這樣的交換機遷移過程容易出現遷移后再次過載的情況。本文提出的遷移域選取方案將設置并計算所有可遷移域的控制器負載值,優先選取負載值最低的控制器作為遷移域。控制器負載值定義如下。

對于一個包含M臺控制器和N臺OpenFlow交換機的多控制SDN網絡,其控制器集合可表示為交 換 機 集 合 可 表 示 為。且由OpenFlow協議規定的連接關系可構造一個控制器與交換機的連接關系矩陣A=(aij)m×n,如圖3所示,其中矩陣內元素aij的描述如式(7)所示:

對于圖2所示的控制器與交換機的連接關系,可用圖3所示的關系矩陣表示。

圖3 控制器與交換機的連接關系矩陣

在多控制器環境下,每臺SDN控制器對于Packet_in數據包的處理能力都不一樣,其處理能力可以用單位時間內能處理Packet_in數據包的最大值來衡量,該數值可通過專業測試工具測得,本文假設該數值已知,并定義控制器i的負載值Ldi如式(8)所示:

其中Pi為控制器Ci在單位時間處理Packet_in數據包的最大值,pj為交換機Sj在單位時間內發送到控制器的Packet_in數據包數量。

完成該計算后,擁有最低負載值的控制器將被選取為遷移域。

3.2.2 遷移交換機選取

遷移交換機的選取范圍是在過載控制器的子域內。控制器通過負載信息采集監測出每個交換機向過載控制器發出的Packet_in消息的平均請求速率來選取需要遷移的交換機,Packet_in消息的平均請求速率Rn定義如式(9)所示,其中MsgPacket_in代表交換機Sn每秒產生的Packet_in消息的數量。

Rn的值越大,則過載控制器需要處理的流表請求越多,表示該交換機在過載控制器子域內產生的負載越高。為了盡可能降低過載控制器的負載,中央控制器將Rn的值進行降序排序并優先選取Rn值最大的交換機作為遷移交換機。

3.3 完成交換機遷移操作

在交換機的遷移階段,必須要注意的問題是:要始終保持有且只有一個控制器處理遷移交換機的消息,以保證遷移過程不丟包以及交換機遷移的安全性[14]。過載控制器與遷移目標控制器通過如圖4所示的消息傳遞過程完成最終的交換機遷移,該過程可以保證交換機在遷移過程中不出現丟包情況。

圖4 交換機遷移所需消息傳遞過程

首先,過載域控制器A發送一個交換機遷移請求消息給遷移域控制器B。在交換機遷移期間為了維持遷移交換機SA流表的一致性,保證一直有且只有一個控制器處理交換機的消息,控制器A下發一個偽流表給交換機SA。因為偽流表不匹配任何數據流,所以不會影響OpenFlow網絡[15]。隨后,控制器B發送一個更改器角色為equal的消息至交換機SA,且控制器B會收到交換機SA的回復消息,并告知A自己的角色已經變更為equal。為確保交換機中所有消息都已經處理完畢,A發送Barrier消息至交換機SA。交換機SA在處理完Barrier消息后回復A。最后,控制器A下發偽流表刪除消息至交換機SA,SA刪除偽流表后通知所有與之相連的控制器進行角色變更。在收到通知消息后,控制器A將變更其角色為slave,同時控制器B將變更其角色為master,并開始負責管理交換機SA。

4 仿真實驗結果對比

4.1 實驗環境與測試工具配置

為驗證前面提出的SDN交換機遷移負載均衡策略,本部分對該策略進行了仿真實驗與結果分析。本實驗共使用了五臺處理器為Intel i5 6500,主頻為3.2GHz,4G內存的計算機,所有實驗主機連接于同一局域網環境下。主機分配與實驗環境配置信息如表1所示。實驗使用Floodlight作為SDN控制器,miniedit軟件搭建SDN網絡拓撲,并借助思博倫測試工具(Spirent TestCenter),測試方案的吞吐量、帶寬使用率和時延等性能參數。

表1 主機分配與實驗環境配置

本實驗采用的網絡拓撲如圖5所示,其中包含一個中央控制器,管控三個Ryu網絡控制器C={C1,C2,C3},每個控制器域內包含三個交換機,交換機集合為S={S1,…S9},每個交換機下綁定一臺虛擬主機,所有鏈路的帶寬默認值為10Mbit/s。

圖5 多控制器SDN實驗拓撲

4.2 動態負載均衡性能測試

本實驗主要分為兩大測試內容:網絡性能測試和控制器平均負載。實驗操作及結果分析如下。

1)網絡性能測試

本部分的網絡性能測試目的在于對比動態負載均衡前后,SDN交換機吞吐率的變化,以此證明該動態負載均衡策略的優越性。

實驗首先測試負載均衡前的網絡性能。啟動Floodlight+mininet的SDN環境后,在裝有思博倫測試工具的主機上啟動STCa(Spirent TestCenter Ap?plication),將 如 圖6所 示 拓 撲 中 的S1_eth1和S2_eth1兩個端口綁定為測試端口port1和port2。在STCa完成網絡ARP學習后,啟動STCa中的RFC2544性能中的吞吐率測試,給port1-port2端口間添加h1~h2的單向流量供給負載,以此觀察S2交換機的吞吐率變化。測試參數配置如表2所示。由于流量負載是單向的,交換機S1會不斷產生Packet_in數據包到控制器C1,到達一定時間會導致控制器C1過載,從而影響到其域內S2交換機的吞吐率。

圖6 網絡性能測試綁定端口

完成以上測試后,接下來開啟動態負載均衡,并再次測試網絡性能,測試參數配置與表2一致。測試完成后將負載均衡前后的吞吐率數據進行對比。如圖7所示對比結果可以看出,動態負載均衡后,C1控制器在面臨高流量負載的情況下,其域內S2交換機的吞吐率較負載均衡前顯著提高。

圖7 負載均衡前后S2交換機吞吐率對比

表2 RFC2544網絡性能測試參數配置

2)控制器平均負載

控制器負載的主要來源是Packet_in數據包,要模擬出各控制器負載不均衡的情況需要在各控制器中產生不同數量的Packet_in數據包,因此本部分實驗在圖5所示拓撲基礎上添加6臺虛擬主機到C1控制器與內,分別綁定在S1-S3交換機上。隨后使用mininet命令行持續執行pingall功能。此時SDN網絡中會產生大量包含ICMP協議的Pack?et_in數據包。

在pingall的同時啟用DIA算法,采集到各控制器的負載信息變化如圖8所示。由圖可發現,因C1控制器內主機數量大,隨著互ping時間的增加,控制器的負載會遠超C2和C3控制器。但伴隨著交換機遷移策略的執行,C1控制器將負載高的交換機遷移至C2和C3控制器域內,其負載值逐漸降低,C2和C3控制器的負載值逐漸增高,且隨時長增加,各控制器的負載逐漸趨于均衡。

圖8 高負載下各控制器負載變化

5 結語

本文針對現有的多控制器SDN網絡環境面臨的負載均衡問題,提出了一種基于交換機遷移的動態負載均衡策略,主要包含了動態負載信息采集算法(DIA)和遷移域及遷移交換機選取算法(MSS)。結合使用了網絡性能測試工具進行了模擬仿真實驗,結果證明該策略可有效提高SDN交換機在高負載狀態下的吞吐率,并均衡多個控制器的負載。

猜你喜歡
策略信息
基于“選—練—評”一體化的二輪復習策略
求初相φ的常見策略
例談未知角三角函數值的求解策略
我說你做講策略
高中數學復習的具體策略
數學大世界(2018年1期)2018-04-12 05:39:14
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
Passage Four
信息
建筑創作(2001年3期)2001-08-22 18:48:14
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 国产成人高清精品免费软件 | 福利一区在线| 精品久久久久久久久久久| 欧美丝袜高跟鞋一区二区| 亚洲女同欧美在线| 国产69精品久久久久孕妇大杂乱 | 亚洲欧美成人在线视频| 999福利激情视频| 久久久久国产一区二区| 亚洲第一成年人网站| 91久久偷偷做嫩草影院精品| 日本中文字幕久久网站| 玩两个丰满老熟女久久网| 99久久精彩视频| 成人精品亚洲| 激情亚洲天堂| 中文字幕乱码中文乱码51精品| 乱系列中文字幕在线视频| 国产国产人免费视频成18 | 国产精品美人久久久久久AV| 国产成人综合亚洲网址| 成人亚洲天堂| 亚洲不卡网| 免费啪啪网址| 久久国语对白| 真人高潮娇喘嗯啊在线观看| 99福利视频导航| 国产精品国产三级国产专业不| 欧美日韩va| 国产精品一区二区久久精品无码| 国产色伊人| 国产激爽大片高清在线观看| 免费毛片视频| 精品免费在线视频| 自慰高潮喷白浆在线观看| 亚洲精品视频在线观看视频| 日韩在线播放中文字幕| 亚洲日韩精品伊甸| 一级毛片视频免费| 99人妻碰碰碰久久久久禁片 | 国产无套粉嫩白浆| 色综合久久久久8天国| 四虎国产精品永久一区| 午夜国产大片免费观看| 成人精品视频一区二区在线| 国产精品一线天| 高清精品美女在线播放| 亚洲第一视频网| 男女男精品视频| 国产精品三区四区| 国产v欧美v日韩v综合精品| 欧美一区二区精品久久久| 国产精品美女自慰喷水| 久久国产亚洲欧美日韩精品| 亚洲精品无码日韩国产不卡| 欧美成人免费一区在线播放| 国产美女一级毛片| 国产精品视频久| 日韩成人免费网站| 99爱在线| 欧美国产日韩一区二区三区精品影视| 精品夜恋影院亚洲欧洲| aⅴ免费在线观看| 午夜福利视频一区| 国内丰满少妇猛烈精品播| 激情综合婷婷丁香五月尤物 | 少妇极品熟妇人妻专区视频| 欧美在线视频不卡第一页| 91福利片| 久久久久无码精品| 欧美色伊人| 在线视频亚洲色图| a天堂视频| 99久久国产精品无码| 成人免费午间影院在线观看| 爆操波多野结衣| 强乱中文字幕在线播放不卡| 精品一区二区三区水蜜桃| 久久精品一卡日本电影| 国产特级毛片aaaaaa| 国产成人综合久久| 3344在线观看无码|