两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡方法及裝置的制造方法

文檔序號(hào):10555526閱讀:300來(lái)源:國(guó)知局
一種面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡方法及裝置的制造方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡方法及裝置,方法包括:控制器接收交換機(jī)發(fā)送的數(shù)據(jù)包,將數(shù)據(jù)包的特征字段與流表中的字段進(jìn)行匹配,并根據(jù)預(yù)設(shè)的動(dòng)作優(yōu)先順序?qū)?shù)據(jù)包的動(dòng)作記錄在流表的動(dòng)作集中;若數(shù)據(jù)包的特征字段與流表中的字段匹配成功,則根據(jù)動(dòng)作集中的動(dòng)作順序,對(duì)數(shù)據(jù)包執(zhí)行對(duì)應(yīng)操作;若對(duì)應(yīng)動(dòng)作為預(yù)處理轉(zhuǎn)發(fā),則判斷數(shù)據(jù)包的時(shí)隙字段與流表中的傳輸時(shí)隙值是否匹配,若匹配,則將數(shù)據(jù)包轉(zhuǎn)發(fā),若不匹配,則將數(shù)據(jù)包緩存至下一個(gè)時(shí)隙進(jìn)行轉(zhuǎn)發(fā)。本發(fā)明簡(jiǎn)化了部署,增強(qiáng)了網(wǎng)絡(luò)的可擴(kuò)展性,解決了在策略方法實(shí)施過(guò)程中造成的數(shù)據(jù)流丟包以及接收端可能產(chǎn)生的數(shù)據(jù)包亂序問(wèn)題。
【專(zhuān)利說(shuō)明】
一種面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡方法及裝置
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及數(shù)據(jù)中心網(wǎng)絡(luò)流量技術(shù)領(lǐng)域,具體涉及一種面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡方法及裝置。
【背景技術(shù)】
[0002]數(shù)據(jù)中心網(wǎng)絡(luò)的流量工程是當(dāng)今網(wǎng)絡(luò)研究的一個(gè)重要方向,由于數(shù)據(jù)中心網(wǎng)絡(luò)歸屬單一運(yùn)營(yíng)商所有,便于流量工程的統(tǒng)一部署,天然符合軟件定義網(wǎng)絡(luò)(Software DefinedNetWOrk,SDN)所需要的集中控制要求。同時(shí),數(shù)據(jù)中心網(wǎng)絡(luò)通常具有對(duì)稱(chēng)的拓?fù)浣Y(jié)構(gòu)使得節(jié)點(diǎn)對(duì)之間存在大量的冗余鏈路,采用多路徑傳輸可改善單路徑路由由于“選路”集中而造成的擁塞問(wèn)題,同時(shí)能做到故障鏈路的快速切換,增強(qiáng)可靠性,并能聚合鏈路帶寬,充分利用這些冗余鏈路進(jìn)行流量均衡是目前數(shù)據(jù)中心網(wǎng)絡(luò)流量工程的主要方法。
[0003]目前的研究工作中,一種是基于數(shù)據(jù)流粒度的流量均衡策略,采用靜態(tài)的等價(jià)路由(Equal-Cost Multipath Routing,ECMP)機(jī)制在上行鏈路中增加隨機(jī)選擇核心節(jié)點(diǎn)的步驟,但是當(dāng)鏈路中出現(xiàn)大流的時(shí)候,會(huì)造成鏈路資源分配不公平。通過(guò)采用一種啟發(fā)式路由算法(Global First Fit,GFF)引入了鏈路狀態(tài)監(jiān)測(cè)機(jī)制可以克服ECMP的不足,但是卻不可避免的會(huì)在大流的迀移過(guò)程中產(chǎn)生丟包并且可能造成接收端數(shù)據(jù)包亂序;另一種是基于數(shù)據(jù)包粒度的流量均衡策略,F(xiàn)astpass除了設(shè)計(jì)新的通信協(xié)議外,還對(duì)數(shù)據(jù)源端的傳輸控制協(xié)議進(jìn)行了修改,同時(shí)還需要增大接收端的緩存來(lái)處理接收端亂序的數(shù)據(jù)包,實(shí)現(xiàn)起來(lái)較為復(fù)雜,對(duì)傳輸協(xié)議或者體系結(jié)構(gòu)改動(dòng)較多,這些都增加了部署的復(fù)雜性,可擴(kuò)展性不高。
[0004]因此,當(dāng)前研究工作中面臨的主要挑戰(zhàn)是如何設(shè)計(jì)一種數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡方法,既能簡(jiǎn)化部署、增強(qiáng)可擴(kuò)展性,又能解決在策略方法實(shí)施過(guò)程中造成的數(shù)據(jù)流丟包以及接收端可能產(chǎn)生的數(shù)據(jù)包亂序問(wèn)題。

【發(fā)明內(nèi)容】

[0005]由于當(dāng)前的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡方法部署繁瑣、可擴(kuò)展性差,且無(wú)法解決在策略方法實(shí)施過(guò)程中造成的數(shù)據(jù)流丟包以及接收端可能產(chǎn)生的數(shù)據(jù)包亂序的問(wèn)題,本發(fā)明提出一種面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡方法及裝置。
[0006]第一方面,本發(fā)明提出一種面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡方法,包括:
[0007]控制器接收交換機(jī)發(fā)送的數(shù)據(jù)包,將所述數(shù)據(jù)包的特征字段與流表中的字段進(jìn)行匹配,并根據(jù)預(yù)設(shè)的動(dòng)作優(yōu)先順序?qū)⑺鰯?shù)據(jù)包的動(dòng)作記錄在流表的動(dòng)作集中;
[0008]若所述數(shù)據(jù)包的特征字段與所述流表中的字段匹配成功,則根據(jù)動(dòng)作集中的動(dòng)作順序,對(duì)所述數(shù)據(jù)包執(zhí)行對(duì)應(yīng)操作;
[0009]若所述對(duì)應(yīng)動(dòng)作為預(yù)處理轉(zhuǎn)發(fā),則判斷所述數(shù)據(jù)包的時(shí)隙字段與所述流表中的傳輸時(shí)隙值是否匹配,若匹配,則將所述數(shù)據(jù)包轉(zhuǎn)發(fā),若不匹配,則將所述數(shù)據(jù)包緩存至下一個(gè)時(shí)隙進(jìn)行轉(zhuǎn)發(fā),以均衡面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)的流量;
[0010]其中,所述數(shù)據(jù)包的動(dòng)作包括處理、預(yù)處理轉(zhuǎn)發(fā)、轉(zhuǎn)發(fā)和丟棄。
[0011]優(yōu)選地,若所述數(shù)據(jù)包的特征字段與交換機(jī)中流表的字段匹配失敗,則根據(jù)預(yù)設(shè)的靜態(tài)流表中的動(dòng)作集對(duì)所述數(shù)據(jù)包執(zhí)行對(duì)應(yīng)操作。
[0012]優(yōu)選地,所述控制器接收交換機(jī)發(fā)送的數(shù)據(jù)包,將所述數(shù)據(jù)包的特征字段與流表中的字段進(jìn)行匹配,并根據(jù)預(yù)設(shè)的動(dòng)作優(yōu)先順序?qū)⑺鰯?shù)據(jù)包的動(dòng)作記錄在流表的動(dòng)作集中之前,還包括:
[0013]若當(dāng)前發(fā)送周期中單條流鏈路帶寬占用率超過(guò)帶寬閾值,則確定當(dāng)前流為大流,并將所述大流添加至大流集合中;
[0014]若所述大流經(jīng)過(guò)的鏈路負(fù)載超過(guò)負(fù)載閾值,則從與所述大流的源端直連的邊緣層交換機(jī)預(yù)設(shè)的路徑中選擇時(shí)延最小的兩條路徑,以供數(shù)據(jù)包轉(zhuǎn)發(fā)時(shí)在所述兩條路徑中切換。
[0015]優(yōu)選地,所述若當(dāng)前發(fā)送周期中單條流鏈路帶寬占用率超過(guò)帶寬閾值,則當(dāng)前流為大流,并將所述大流添加至大流集合中之后,還包括:
[0016]若當(dāng)前大流在上一個(gè)發(fā)送周期經(jīng)過(guò)的鏈路負(fù)載超過(guò)所述負(fù)載閾值,則從與當(dāng)前大流的源端直連的邊緣層交換機(jī)預(yù)設(shè)的路徑中選擇時(shí)延最小的兩條路徑,以供數(shù)據(jù)包轉(zhuǎn)發(fā)時(shí)在所述兩條路徑中切換。
[0017]優(yōu)選地,所述當(dāng)所述大流經(jīng)過(guò)的鏈路負(fù)載超過(guò)負(fù)載閾值,則從與所述大流的源端直連的邊緣層交換機(jī)預(yù)設(shè)的路徑中選擇時(shí)延最小的兩條路徑,以供數(shù)據(jù)包轉(zhuǎn)發(fā)時(shí)在所述兩條路徑中切換之后,還包括:
[0018]根據(jù)路徑的傳輸時(shí)延計(jì)算傳輸時(shí)隙值,并根據(jù)所述傳輸時(shí)隙值更新所述流表。
[0019]第二方面,本發(fā)明還提出一種面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡裝置,包括:
[0020]字段匹配模塊,用于接收交換機(jī)發(fā)送的數(shù)據(jù)包,將所述數(shù)據(jù)包的特征字段與流表中的字段進(jìn)行匹配,并根據(jù)預(yù)設(shè)的動(dòng)作優(yōu)先順序?qū)⑺鰯?shù)據(jù)包的動(dòng)作記錄在流表的動(dòng)作集中;
[0021]第一動(dòng)作執(zhí)行模塊,用于當(dāng)所述數(shù)據(jù)包的特征字段與所述流表中的字段匹配成功時(shí),根據(jù)動(dòng)作集中的動(dòng)作順序,對(duì)所述數(shù)據(jù)包執(zhí)行對(duì)應(yīng)操作;
[0022]預(yù)處理轉(zhuǎn)發(fā)模塊,用于當(dāng)所述對(duì)應(yīng)動(dòng)作為預(yù)處理轉(zhuǎn)發(fā)時(shí),判斷所述數(shù)據(jù)包的時(shí)隙字段與所述流表中的傳輸時(shí)隙值是否匹配,若匹配,則將所述數(shù)據(jù)包轉(zhuǎn)發(fā),若不匹配,則將所述數(shù)據(jù)包緩存至下一個(gè)時(shí)隙進(jìn)行轉(zhuǎn)發(fā),以均衡面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)的流量;
[0023]其中,所述數(shù)據(jù)包的動(dòng)作包括處理、預(yù)處理轉(zhuǎn)發(fā)、轉(zhuǎn)發(fā)和丟棄。
[0024]優(yōu)選地,還包括:
[0025]第二動(dòng)作執(zhí)行模塊,用于當(dāng)所述數(shù)據(jù)包的特征字段與交換機(jī)中流表的字段匹配失敗時(shí),根據(jù)預(yù)設(shè)的靜態(tài)流表中的動(dòng)作集對(duì)所述數(shù)據(jù)包執(zhí)行對(duì)應(yīng)操作。
[0026]優(yōu)選地,還包括:
[0027]大流判斷模塊,用于當(dāng)當(dāng)前發(fā)送周期中單條流鏈路帶寬占用率超過(guò)帶寬閾值時(shí),確定當(dāng)前流為大流,并將所述大流添加至大流集合中;
[0028]第一路徑選擇模塊,用于當(dāng)所述大流經(jīng)過(guò)的鏈路負(fù)載超過(guò)負(fù)載閾值時(shí),從與所述大流的源端直連的邊緣層交換機(jī)預(yù)設(shè)的路徑中選擇時(shí)延最小的兩條路徑,以供數(shù)據(jù)包轉(zhuǎn)發(fā)時(shí)在所述兩條路徑中切換。
[0029]優(yōu)選地,還包括:
[0030]第二路徑選擇模塊,用于當(dāng)當(dāng)前大流在上一個(gè)發(fā)送周期經(jīng)過(guò)的鏈路負(fù)載超過(guò)所述負(fù)載閾值時(shí),從與當(dāng)前大流的源端直連的邊緣層交換機(jī)預(yù)設(shè)的路徑中選擇時(shí)延最小的兩條路徑,以供數(shù)據(jù)包轉(zhuǎn)發(fā)時(shí)在所述兩條路徑中切換。
[0031]優(yōu)選地,還包括:
[0032]時(shí)隙值更新模塊,用于根據(jù)路徑的傳輸時(shí)延計(jì)算傳輸時(shí)隙值,并根據(jù)所述傳輸時(shí)隙值更新所述流表。
[0033]由上述技術(shù)方案可知,本發(fā)明通過(guò)控制器將數(shù)據(jù)包的動(dòng)作記錄在動(dòng)作集中,并根據(jù)動(dòng)作集中的動(dòng)作順序執(zhí)行對(duì)應(yīng)操作,簡(jiǎn)化了部署,同時(shí)增強(qiáng)了網(wǎng)絡(luò)的可擴(kuò)展性;通過(guò)判斷數(shù)據(jù)包的時(shí)隙字段與流表中的傳輸時(shí)隙值是否匹配,若匹配,則將所述數(shù)據(jù)包轉(zhuǎn)發(fā),若不匹配,則將所述數(shù)據(jù)包緩存至下一個(gè)時(shí)隙進(jìn)行轉(zhuǎn)發(fā),解決了在策略方法實(shí)施過(guò)程中造成的數(shù)據(jù)流丟包以及接收端可能產(chǎn)生的數(shù)據(jù)包亂序問(wèn)題。
【附圖說(shuō)明】
[0034]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些圖獲得其他的附圖。
[0035]圖1為本發(fā)明一實(shí)施例提供的一種面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡方法的流程示意圖;
[0036]圖2為本發(fā)明一實(shí)施例提供的一種面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)的系統(tǒng)結(jié)構(gòu)圖;
[0037]圖3為本發(fā)明另一實(shí)施例提供的一種面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡方法的流程圖;
[0038]圖4為本發(fā)明另一實(shí)施例提供的一種面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡方法的觸發(fā)與取消流程圖;
[0039]圖5為本發(fā)明一實(shí)施例提供的一種面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0040]下面結(jié)合附圖,對(duì)發(fā)明的【具體實(shí)施方式】作進(jìn)一步描述。以下實(shí)施例僅用于更加清楚地說(shuō)明本發(fā)明的技術(shù)方案,而不能以此來(lái)限制本發(fā)明的保護(hù)范圍。
[0041]首先針對(duì)實(shí)施例采用Fat-tree網(wǎng)絡(luò)拓?fù)?,?duì)于拓?fù)渲械慕粨Q機(jī)需要利用控制器下發(fā)靜態(tài)流表進(jìn)行設(shè)置,為了更清楚地描述本發(fā)明的工作流程,對(duì)涉及到的概念定義如下:
[0042]O-D(Origin-Destinat1n)對(duì):指某條流的源端和目的端主機(jī)所直接連接的兩臺(tái)邊緣層交換機(jī),實(shí)驗(yàn)中的O-D對(duì)分別屬于不同POD(Performance Optimizat1nDatacenter)。
[0043]中間交換機(jī):指匯聚層和核心層交換機(jī)。
[0044]交換機(jī)路徑:指當(dāng)某個(gè)數(shù)據(jù)包從交換機(jī)O-D對(duì)的一端到另一端過(guò)程中經(jīng)過(guò)的邊緣交換機(jī)和中間交換機(jī)所組成的路徑。
[0045]靜態(tài)路徑:指對(duì)于每一個(gè)O-D對(duì),都事先指定的一條固定的傳輸路徑。當(dāng)FLAT未被觸發(fā)時(shí),O-D之間的數(shù)據(jù)流將沿著該路徑傳輸,其中,F(xiàn)LAT表示本發(fā)明提供的面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡方法。
[0046]FLAT路徑:指對(duì)于每一個(gè)O-D對(duì),都事先指定的k/2條(k為Fat-tree拓?fù)涞膮?shù))固定的、不相交的交換機(jī)路徑。當(dāng)FLAT在某個(gè)O-D對(duì)上被觸發(fā)時(shí),只從這k/2條固定路徑中選擇當(dāng)前時(shí)隙的發(fā)送路徑。對(duì)于某個(gè)O-D對(duì),其靜態(tài)路徑是包含在FLAT路徑中的。
[0047]靜態(tài)路徑和FLAT路徑的流表設(shè)置:對(duì)于中間交換機(jī),所有的FLAT路徑信息都將以靜態(tài)流表項(xiàng)的形式存儲(chǔ)在流表中。對(duì)于邊緣交換機(jī),則只預(yù)先存儲(chǔ)所有靜態(tài)路徑對(duì)應(yīng)的流表。當(dāng)FLAT未被觸發(fā)時(shí),數(shù)據(jù)包可以沿著預(yù)設(shè)的靜態(tài)路徑完成轉(zhuǎn)發(fā),而FLAT啟動(dòng)后,則由控制器向邊緣交換機(jī)下發(fā)優(yōu)先級(jí)更高的FLAT流表實(shí)現(xiàn)路徑切換。
[0048]其次,在FLAT的工作過(guò)程中,還涉及到對(duì)路徑和鏈路數(shù)據(jù)的探測(cè)過(guò)程,相關(guān)的概念及要點(diǎn)解釋如下:
[0049]全局路徑時(shí)延探測(cè):為了在FLAT觸發(fā)時(shí)的第一個(gè)時(shí)隙之前評(píng)估各條FLAT傳輸路徑的優(yōu)劣并計(jì)算傳輸時(shí)隙值,我們需要在每個(gè)O-D對(duì)之間的4條(可提前設(shè)定傳輸路徑數(shù)量)預(yù)設(shè)路徑上發(fā)送探測(cè)包來(lái)獲取路徑時(shí)延值。這種探測(cè)稱(chēng)為全局路徑探測(cè),這些探測(cè)包被稱(chēng)為全局路徑探測(cè)包。需要注意的是這一過(guò)程將一直持續(xù),不論是否有路徑觸發(fā)FLAT策略。探測(cè)包的發(fā)送間隔必須要適當(dāng),如果太長(zhǎng)得到的數(shù)據(jù)時(shí)效性就不強(qiáng),太短則會(huì)增大數(shù)據(jù)鏈路和交換機(jī)到控制器通信鏈路的時(shí)延。
[0050]FLAT路徑時(shí)延探測(cè):對(duì)某條大流對(duì)應(yīng)的所有FLAT路徑進(jìn)行的時(shí)延測(cè)量,目的和全局探測(cè)相似。由于這種開(kāi)銷(xiāo)相對(duì)較小,且需要對(duì)大流檢測(cè)的時(shí)效性更強(qiáng),所以這種探測(cè)比全局探測(cè)的時(shí)間間隔要短。
[0051 ]鏈路負(fù)載探測(cè):FLAT啟動(dòng)條件是大流造成了某條鏈路負(fù)載超過(guò)閾值;當(dāng)FLAT啟動(dòng)后,需要根據(jù)路徑的負(fù)載情況來(lái)選擇最優(yōu)路徑,因此需要對(duì)大流的所有FLAT路徑上的所有鏈路負(fù)載進(jìn)行測(cè)量,這稱(chēng)為單一路徑鏈路探測(cè)(簡(jiǎn)稱(chēng)鏈路探測(cè))。它不需要在鏈路上下發(fā)探測(cè)包,只需要定時(shí)向控制器上傳端口統(tǒng)計(jì)數(shù)據(jù),但只在指定的路徑上生效。通常它與FLAT時(shí)延探測(cè)有同樣的周期。
[0052]FLAT探測(cè)周期:指FLAT時(shí)延探測(cè)和鏈路探測(cè)的周期,它同時(shí)也決定了FLAT獲取數(shù)據(jù)、決策和判定的最短時(shí)間周期,在下文中也被簡(jiǎn)稱(chēng)為周期。
[0053]圖1示出了本發(fā)明一實(shí)施例提供的一種面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡方法的流程示意圖,包括:
[0054]S1、控制器接收交換機(jī)發(fā)送的數(shù)據(jù)包,將所述數(shù)據(jù)包的特征字段與流表中的字段進(jìn)行匹配,并根據(jù)預(yù)設(shè)的動(dòng)作優(yōu)先順序?qū)⑺鰯?shù)據(jù)包的動(dòng)作記錄在流表的動(dòng)作集中;
[0055]S2、若所述數(shù)據(jù)包的特征字段與所述流表中的字段匹配成功,則根據(jù)動(dòng)作集中的動(dòng)作順序,對(duì)所述數(shù)據(jù)包執(zhí)行對(duì)應(yīng)操作;
[0056]S3、若所述對(duì)應(yīng)動(dòng)作為預(yù)處理轉(zhuǎn)發(fā),則判斷所述數(shù)據(jù)包的時(shí)隙字段與所述流表中的傳輸時(shí)隙值是否匹配,若匹配,則將所述數(shù)據(jù)包轉(zhuǎn)發(fā),若不匹配,則將所述數(shù)據(jù)包緩存至下一個(gè)時(shí)隙進(jìn)行轉(zhuǎn)發(fā),以均衡面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)的流量;
[0057]其中,所述數(shù)據(jù)包的動(dòng)作包括處理、預(yù)處理轉(zhuǎn)發(fā)、轉(zhuǎn)發(fā)和丟棄。
[0058]本實(shí)施例通過(guò)控制器將數(shù)據(jù)包的動(dòng)作記錄在動(dòng)作集中,并根據(jù)動(dòng)作集中的動(dòng)作順序執(zhí)行對(duì)應(yīng)操作,簡(jiǎn)化了部署,同時(shí)增強(qiáng)了網(wǎng)絡(luò)的可擴(kuò)展性;通過(guò)判斷數(shù)據(jù)包的時(shí)隙字段與流表中的傳輸時(shí)隙值是否匹配,若匹配,則將所述數(shù)據(jù)包轉(zhuǎn)發(fā),若不匹配,則將所述數(shù)據(jù)包緩存至下一個(gè)時(shí)隙進(jìn)行轉(zhuǎn)發(fā),解決了在策略方法實(shí)施過(guò)程中造成的數(shù)據(jù)流丟包以及接收端可能產(chǎn)生的數(shù)據(jù)包亂序問(wèn)題。
[0059]進(jìn)一步地,S3之后,還包括:
[0060]S4、若所述數(shù)據(jù)包的特征字段與交換機(jī)中流表的字段匹配失敗,則根據(jù)預(yù)設(shè)的靜態(tài)流表中的動(dòng)作集對(duì)所述數(shù)據(jù)包執(zhí)行對(duì)應(yīng)操作。
[0061]通過(guò)設(shè)置靜態(tài)流表,來(lái)實(shí)現(xiàn)所述數(shù)據(jù)包的特征字段與交換機(jī)中流表的字段匹配失敗時(shí),每一對(duì)邊緣交換機(jī)之間的一條路由。
[0062]具體地,SI之前,還包括:
[0063]SO1、若當(dāng)前發(fā)送周期中單條流鏈路帶寬占用率超過(guò)帶寬閾值,則確定當(dāng)前流為大流,并將所述大流添加至大流集合中;
[0064]S02、若所述大流經(jīng)過(guò)的鏈路負(fù)載超過(guò)負(fù)載閾值,則從與所述大流的源端直連的邊緣層交換機(jī)預(yù)設(shè)的路徑中選擇時(shí)延最小的兩條路徑,以供數(shù)據(jù)包轉(zhuǎn)發(fā)時(shí)在所述兩條路徑中切換。
[0065]通過(guò)判斷大流經(jīng)過(guò)的鏈路負(fù)載超過(guò)負(fù)載閾值并執(zhí)行相應(yīng)操作,能夠避免出現(xiàn)傳統(tǒng)方法中鏈路負(fù)載過(guò)大造成的數(shù)據(jù)流丟包和數(shù)據(jù)包亂序情況。
[0066]進(jìn)一步地,SOl之后,還包括:
[0067]S012、若當(dāng)前大流在上一個(gè)發(fā)送周期經(jīng)過(guò)的鏈路負(fù)載超過(guò)所述負(fù)載閾值,則從與當(dāng)前大流的源端直連的邊緣層交換機(jī)預(yù)設(shè)的路徑中選擇時(shí)延最小的兩條路徑,以供數(shù)據(jù)包轉(zhuǎn)發(fā)時(shí)在所述兩條路徑中切換。
[0068]為了避免當(dāng)前大流在上一個(gè)發(fā)送周期經(jīng)過(guò)的鏈路負(fù)載超過(guò)所述負(fù)載閾值,而當(dāng)前周期經(jīng)過(guò)的鏈路負(fù)載未超過(guò)所述負(fù)載閾值,因此造成的路由震蕩問(wèn)題以及降低執(zhí)行效果的問(wèn)題。
[0069]更進(jìn)一步地,S02之后,還包括:
[0070]S03、根據(jù)路徑的傳輸時(shí)延計(jì)算傳輸時(shí)隙值,并根據(jù)所述傳輸時(shí)隙值更新所述流表。
[0071]通過(guò)更新流表中的傳輸時(shí)隙值,使得傳輸時(shí)隙值更加符合網(wǎng)絡(luò)當(dāng)前的運(yùn)行情況,進(jìn)一步均衡網(wǎng)絡(luò)流量。
[0072]為了更詳細(xì)說(shuō)明本實(shí)施例提供的面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡方法,首先對(duì)本實(shí)施例提供的面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)進(jìn)行介紹:
[0073]—個(gè)面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)包含:服務(wù)器、接入層交換機(jī)、核心層交換機(jī)以及控制器,其中控制器與所有交換機(jī)相連,交換機(jī)支持OpenFlow(OF)協(xié)議;
[0074]如圖2所示,控制器作為應(yīng)用層平臺(tái),集成四個(gè)模塊化組件來(lái)實(shí)現(xiàn)整個(gè)控制器平臺(tái)的功能包含:拓?fù)湫畔⑹占K、路徑信息統(tǒng)計(jì)模塊、路徑計(jì)算模塊、流表更新模塊;
[0075]拓?fù)湫畔⑹占K通過(guò)向鄰近的交換機(jī)收集更新信息來(lái)發(fā)現(xiàn)網(wǎng)絡(luò)拓?fù)?。交換機(jī)可更新的信息包括發(fā)現(xiàn)鄰居消息和每個(gè)鄰居互聯(lián)的鏈路狀態(tài)消息,通過(guò)與交換機(jī)信息的交互決定當(dāng)前網(wǎng)絡(luò)拓?fù)鋱D,并向路徑計(jì)算模塊提供信息。控制器平臺(tái)與交換機(jī)之間的通信協(xié)議都采用OF協(xié)議,每個(gè)交換機(jī)都運(yùn)行OF協(xié)議代理軟件,負(fù)責(zé)接收數(shù)據(jù)包轉(zhuǎn)發(fā)更新的消息并重新編寫(xiě)基于交換機(jī)硬件的轉(zhuǎn)發(fā)表;
[0076]路徑信息統(tǒng)計(jì)模塊通過(guò)主動(dòng)查詢(xún)和被動(dòng)接收相結(jié)合的方式實(shí)現(xiàn)兩個(gè)功能:一是通過(guò)定期查詢(xún)相關(guān)OF交換機(jī)來(lái)收集每個(gè)端口的流量統(tǒng)計(jì)信息;二是通過(guò)構(gòu)造探測(cè)包獲取并更新傳輸路徑的時(shí)延信息,以上信息都將保存到數(shù)據(jù)統(tǒng)計(jì)表中。其中,流量統(tǒng)計(jì)信息包括控制器收到FlowRemoved消息后,根據(jù)流表計(jì)數(shù)器來(lái)統(tǒng)計(jì)交換機(jī)每個(gè)端口發(fā)送和接收的字節(jié)數(shù)量,為鏈路剩余容量的計(jì)算提供依據(jù);
[0077]路徑計(jì)算模塊運(yùn)行本發(fā)明的核心算法FLAT,首先通過(guò)拓?fù)湫畔⑹占K提供的網(wǎng)絡(luò)拓?fù)鋪?lái)計(jì)算任一節(jié)點(diǎn)對(duì)之間可用的路徑,考慮到控制器的計(jì)算開(kāi)銷(xiāo)以及交換機(jī)硬件條件的限制(例如,TCAM容量和成本),可以對(duì)選擇多路徑傳輸?shù)臄?shù)量進(jìn)行限制(例如,不超過(guò)三條);其次,根據(jù)路徑信息統(tǒng)計(jì)模塊提供的數(shù)據(jù)可以對(duì)選擇的鏈路進(jìn)行剩余容量計(jì)算以及傳輸時(shí)隙的計(jì)算,并選擇負(fù)載最輕的鏈路進(jìn)行數(shù)據(jù)流轉(zhuǎn)發(fā);最后,將路徑計(jì)算的結(jié)果轉(zhuǎn)換為路由轉(zhuǎn)發(fā)規(guī)則下發(fā)到交換機(jī);
[0078]流表更新模塊將驅(qū)動(dòng)OF交換機(jī)依據(jù)控制器下發(fā)的路由轉(zhuǎn)發(fā)規(guī)則進(jìn)行流表的安裝、更新以及刪除操作。
[0079]本實(shí)施例提供的數(shù)據(jù)中心網(wǎng)絡(luò)在數(shù)據(jù)流調(diào)度的過(guò)程中不會(huì)造成接收端數(shù)據(jù)包亂序的問(wèn)題;控制器平臺(tái)采用主被動(dòng)結(jié)合測(cè)量的方式獲取流量信息與傳輸路徑的時(shí)延信息,保證了算法的準(zhǔn)確度;在滿(mǎn)足細(xì)粒度流量均衡的同時(shí)不會(huì)對(duì)目前數(shù)據(jù)中心網(wǎng)絡(luò)中普遍使用的TCP通信協(xié)議做任何改動(dòng),易于部署,具有可擴(kuò)展性。
[0080]下面結(jié)合圖2-4,對(duì)本實(shí)施例提供的方法作進(jìn)一步的闡述。
[0081]圖2是本發(fā)明基于FLAT算法實(shí)施流量均衡方法的原型系統(tǒng)。如圖2所示,控制器作為應(yīng)用層平臺(tái),集成四個(gè)模塊化組件分別為:拓?fù)湫畔⑹占K、路徑信息統(tǒng)計(jì)模塊、路徑計(jì)算模塊和流表更新模塊,共同實(shí)現(xiàn)整個(gè)控制器平臺(tái)的功能;其中,路徑計(jì)算模塊運(yùn)行本實(shí)施例的核心方法FLAT。
[0082]控制平臺(tái)的工作流程如下:首先,拓?fù)湫畔⑹占K通過(guò)向鄰近的交換機(jī)收集更新信息來(lái)發(fā)現(xiàn)網(wǎng)絡(luò)拓?fù)洌現(xiàn)LAT則通過(guò)該模塊提供的網(wǎng)絡(luò)拓?fù)鋪?lái)計(jì)算任一節(jié)點(diǎn)對(duì)之間可用的路徑;下一步,F(xiàn)LAT將根據(jù)路徑信息統(tǒng)計(jì)模塊提供的數(shù)據(jù)對(duì)選擇的鏈路進(jìn)行剩余容量計(jì)算以及傳輸時(shí)隙的計(jì)算,并選擇負(fù)載最輕的鏈路進(jìn)行數(shù)據(jù)流轉(zhuǎn)發(fā);最后,F(xiàn)LAT將路徑計(jì)算的結(jié)果轉(zhuǎn)換為路由轉(zhuǎn)發(fā)規(guī)則下發(fā)到交換機(jī)實(shí)現(xiàn)數(shù)據(jù)包轉(zhuǎn)發(fā)。
[0083]圖3是FLAT工作流程,具體包括以下步驟:
[0084]S201、數(shù)據(jù)包到達(dá)Openf low交換機(jī);
[0085]S202、交換機(jī)根據(jù)數(shù)據(jù)包的某些特征字段(如源IP、目的IP、MAC地址等)與流表中的entry進(jìn)行匹配。如果匹配失敗,則執(zhí)行S203;如果匹配成功,則跳轉(zhuǎn)執(zhí)行S204;
[0086]S203、默認(rèn)情況下,匹配不成功時(shí)會(huì)出現(xiàn)packet-1n事件。但在實(shí)驗(yàn)數(shù)據(jù)中心網(wǎng)絡(luò)中,所有交換機(jī)都以較低優(yōu)先級(jí)預(yù)置了靜態(tài)流表,來(lái)實(shí)現(xiàn)未觸發(fā)FLAT時(shí)每一對(duì)邊緣交換機(jī)之間的一條路由。因此如果匹配失敗,則說(shuō)明靜態(tài)流表失效,應(yīng)當(dāng)返回錯(cuò)誤,并嘗試重新下發(fā)靜態(tài)流表,之后跳轉(zhuǎn)執(zhí)行S202重新嘗試匹配流表;
[0087]S204、在Openf 1wl.3標(biāo)準(zhǔn)中,一個(gè)數(shù)據(jù)包在匹配流表時(shí),會(huì)按照預(yù)定的優(yōu)先級(jí)順序?qū)⑺衑ntry動(dòng)作都記錄在動(dòng)作集中,匹配完之后按順序執(zhí)行。通常轉(zhuǎn)發(fā)、丟棄被作為一個(gè)數(shù)據(jù)包最終的動(dòng)作而執(zhí)行,因此除了轉(zhuǎn)發(fā)和丟棄之外的其他動(dòng)作都會(huì)被排在二者之前來(lái)完成。而FLAT可以看做是一種被修改過(guò)的轉(zhuǎn)發(fā)動(dòng)作,因此也會(huì)排在其他動(dòng)作之后;當(dāng)執(zhí)行完其他動(dòng)作后,剩余的動(dòng)作應(yīng)當(dāng)是FLAT,轉(zhuǎn)發(fā)或丟棄;
[0088]S205、如果當(dāng)前動(dòng)作是FLAT,則執(zhí)行S206;如果不是,則跳轉(zhuǎn)執(zhí)行S207;
[0089]S206、判斷當(dāng)前時(shí)隙,該流是否需要緩存。如果不需要緩存,則執(zhí)行S207;如果需要緩存,則跳轉(zhuǎn)執(zhí)行S208;
[0090]S207、執(zhí)行FLAT策略下的轉(zhuǎn)發(fā)動(dòng)作(來(lái)自S206),或者執(zhí)行來(lái)自S205非FLAT動(dòng)作之外的轉(zhuǎn)發(fā)或者丟棄操作,以上動(dòng)作完成后,跳轉(zhuǎn)執(zhí)行S209;
[0091 ] S208、緩存當(dāng)前包到隊(duì)列,直到當(dāng)前傳輸時(shí)隙結(jié)束后再根據(jù)FLAT策略進(jìn)行轉(zhuǎn)發(fā);
[0092]S209、該數(shù)據(jù)包處理完畢,結(jié)束流程;如果有下一個(gè)數(shù)據(jù)包到達(dá),跳轉(zhuǎn)執(zhí)行S202。
[0093]圖4是FLAT觸發(fā)與取消工作流程圖,具體包括以下步驟:
[0094]S301、設(shè)置全局探測(cè)包、鏈路探測(cè)包的發(fā)送周期;
[0095]S302、開(kāi)始進(jìn)行全局探測(cè),同時(shí)記錄測(cè)量結(jié)果;
[0096]S303、判斷網(wǎng)絡(luò)中是否有大流產(chǎn)生;判斷大流的依據(jù)是源端主機(jī)某條流鏈路帶寬占用率超過(guò)設(shè)定閾值(一般是10%)。如果有大流產(chǎn)生,則添加到大流集合F中并執(zhí)行S304;否則,跳轉(zhuǎn)執(zhí)行S313;
[0097]S304、對(duì)集合內(nèi)所有大流對(duì)應(yīng)的鏈路進(jìn)行鏈路負(fù)載探測(cè),一方面可以探知大流經(jīng)過(guò)的某個(gè)鏈路是否超過(guò)閾值;另一方面為FLAT觸發(fā)后的路徑計(jì)算提供信息;
[0098]S305、判斷當(dāng)前大流是否在上一個(gè)探測(cè)周期執(zhí)行過(guò)FLAT,如果沒(méi)有,則執(zhí)行S306;否則跳轉(zhuǎn)執(zhí)行S307,對(duì)當(dāng)前大流判斷在上一周期是否執(zhí)行過(guò)FLAT的原因在于:如果該大流在這一周期未能觸發(fā)FLAT,那么回到原路徑可能再次觸發(fā)FLAT從而產(chǎn)生路由震蕩,降低FLAT策略的執(zhí)行效果,因此,對(duì)上一周期執(zhí)行過(guò)FLAT的大流繼續(xù)執(zhí)行,直到它不再是大流或者終止傳輸;
[0099]S306、如果大流經(jīng)過(guò)的某個(gè)鏈路負(fù)載超過(guò)閾值,那么執(zhí)行S307;否則就檢查下一條大流,并跳轉(zhuǎn)執(zhí)行S312;
[0100]S307、FLAT算法觸發(fā)并根據(jù)當(dāng)前的測(cè)量結(jié)果,從大流源端直連的邊緣層交換機(jī)預(yù)置的4條傳輸路徑中,選擇時(shí)延最小的2條路徑作為FLAT的傳輸路徑。在FLAT流表的有效期內(nèi),當(dāng)前大流的數(shù)據(jù)包將按照轉(zhuǎn)發(fā)策略在這兩條路徑上切換。需要注意的是,運(yùn)行FLAT的第一個(gè)時(shí)隙,交換機(jī)需要先緩存該流的第一個(gè)流片(FLAT—個(gè)時(shí)隙所傳輸?shù)臄?shù)據(jù)包),防止數(shù)據(jù)包到達(dá)接收端產(chǎn)生亂序;
[0101]S308、FLAT根據(jù)當(dāng)前記錄的測(cè)量結(jié)果計(jì)算出傳輸時(shí)隙值。時(shí)隙值的計(jì)算簡(jiǎn)要描述如下:當(dāng)預(yù)置的4條傳輸路徑之間的時(shí)延差值小于10ys時(shí),取時(shí)隙值為10ys;當(dāng)時(shí)延差值在100-500ys時(shí),取時(shí)隙值為500ys ;當(dāng)時(shí)延差值大于500ys時(shí),以實(shí)際差值作為時(shí)隙值;
[0102]S309、控制器下發(fā)FLAT流表的優(yōu)先級(jí)設(shè)置要高于交換機(jī)中預(yù)置的靜態(tài)流表優(yōu)先級(jí),同時(shí)在流表中封裝傳輸時(shí)隙值、傳輸路徑所對(duì)應(yīng)的轉(zhuǎn)發(fā)端口以及流表的生存時(shí)間(TTL,Time To Live),TTL值為鏈路探測(cè)周期值;
[0103]S310、控制器將FLAT流表下發(fā)到與大流源端直連的邊緣層交換機(jī)。由于每一個(gè)OD對(duì)可選擇4條傳輸路徑,并且已經(jīng)通過(guò)靜態(tài)流表的方式下發(fā)到所有傳輸路徑上的交換機(jī),因此,數(shù)據(jù)流依據(jù)FLAT流表在多條路徑之間切換時(shí)數(shù)據(jù)包一定可以到達(dá)目的地址,并且FLAT流表只需下發(fā)到邊緣層交換機(jī),通過(guò)這樣的設(shè)計(jì)能極大地降低交換機(jī)與控制器之間的通信開(kāi)銷(xiāo);
[0104]S311、如果當(dāng)前大流在下個(gè)周期仍然存在,那么它將需要時(shí)效性更強(qiáng)的路徑時(shí)延信息來(lái)計(jì)算出新的FLAT時(shí)隙大小,因此需要在本周期再次測(cè)量所有FLAT路徑時(shí)延;
[0105]S312、開(kāi)始檢查下一條大流,跳轉(zhuǎn)執(zhí)行S305;如果集合F內(nèi)所有大流已檢查完畢,則執(zhí)行S313;
[0106]S313、當(dāng)前周期對(duì)大流的探測(cè)和決策已經(jīng)全部完成,也可能當(dāng)前周期沒(méi)有探測(cè)到大流(來(lái)自S303),如果收到程序終止指令,那么就在這時(shí)結(jié)束程序;如果繼續(xù)運(yùn)行,則執(zhí)行S314;
[0107]S314、等待當(dāng)前周期結(jié)束后,再次進(jìn)入下一個(gè)周期并跳轉(zhuǎn)執(zhí)行S303;
[0108]通過(guò)大量的仿真實(shí)驗(yàn),發(fā)現(xiàn)本實(shí)施例提供的方法與其他幾種多路徑傳輸方法相比(例如,ECMP、GFF),吞吐量提高了 13 %?45 %,同時(shí)接收端幾乎沒(méi)有亂序的數(shù)據(jù)包出現(xiàn),與采用單路徑傳輸效果等同,但是吞吐量與之相比卻能最大提高到83%。從實(shí)驗(yàn)結(jié)果可以說(shuō)明本實(shí)施例達(dá)到了預(yù)期目的。
[0109]圖5示出了本實(shí)施例提供的一種面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡裝置的結(jié)構(gòu)示意圖,包括:
[0110]字段匹配模塊11,用于接收交換機(jī)發(fā)送的數(shù)據(jù)包,將所述數(shù)據(jù)包的特征字段與流表中的字段進(jìn)行匹配,并根據(jù)預(yù)設(shè)的動(dòng)作優(yōu)先順序?qū)⑺鰯?shù)據(jù)包的動(dòng)作記錄在流表的動(dòng)作集中;
[0111]第一動(dòng)作執(zhí)行模塊12,用于當(dāng)所述數(shù)據(jù)包的特征字段與所述流表中的字段匹配成功時(shí),根據(jù)動(dòng)作集中的動(dòng)作順序,對(duì)所述數(shù)據(jù)包執(zhí)行對(duì)應(yīng)操作;
[0112]預(yù)處理轉(zhuǎn)發(fā)模塊13,用于當(dāng)所述對(duì)應(yīng)動(dòng)作為預(yù)處理轉(zhuǎn)發(fā)時(shí),判斷所述數(shù)據(jù)包的時(shí)隙字段與所述流表中的傳輸時(shí)隙值是否匹配,若匹配,則將所述數(shù)據(jù)包轉(zhuǎn)發(fā),若不匹配,則將所述數(shù)據(jù)包緩存至下一個(gè)時(shí)隙進(jìn)行轉(zhuǎn)發(fā),以均衡面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)的流量;
[0113]其中,所述數(shù)據(jù)包的動(dòng)作包括處理、預(yù)處理轉(zhuǎn)發(fā)、轉(zhuǎn)發(fā)和丟棄。
[0114]本實(shí)施例通過(guò)控制器將數(shù)據(jù)包的動(dòng)作記錄在動(dòng)作集中,并根據(jù)動(dòng)作集中的動(dòng)作順序執(zhí)行對(duì)應(yīng)操作,簡(jiǎn)化了部署,同時(shí)增強(qiáng)了網(wǎng)絡(luò)的可擴(kuò)展性;通過(guò)判斷數(shù)據(jù)包的時(shí)隙字段與流表中的傳輸時(shí)隙值是否匹配,若匹配,則將所述數(shù)據(jù)包轉(zhuǎn)發(fā),若不匹配,則將所述數(shù)據(jù)包緩存至下一個(gè)時(shí)隙進(jìn)行轉(zhuǎn)發(fā),解決了在策略方法實(shí)施過(guò)程中造成的數(shù)據(jù)流丟包以及接收端可能產(chǎn)生的數(shù)據(jù)包亂序問(wèn)題。
[0115]可選地,所述裝置還包括:
[0116]第二動(dòng)作執(zhí)行模塊,用于當(dāng)所述數(shù)據(jù)包的特征字段與交換機(jī)中流表的字段匹配失敗時(shí),根據(jù)預(yù)設(shè)的靜態(tài)流表中的動(dòng)作集對(duì)所述數(shù)據(jù)包執(zhí)行對(duì)應(yīng)操作。
[0117]進(jìn)一步地,所述裝置還包括:
[0118]大流判斷模塊,用于當(dāng)當(dāng)前發(fā)送周期中單條流鏈路帶寬占用率超過(guò)帶寬閾值時(shí),確定當(dāng)前流為大流,并將所述大流添加至大流集合中;
[0119]第一路徑選擇模塊,用于當(dāng)所述大流經(jīng)過(guò)的鏈路負(fù)載超過(guò)負(fù)載閾值時(shí),從與所述大流的源端直連的邊緣層交換機(jī)預(yù)設(shè)的路徑中選擇時(shí)延最小的兩條路徑,以供數(shù)據(jù)包轉(zhuǎn)發(fā)時(shí)在所述兩條路徑中切換。
[0120]進(jìn)一步地,所述裝置還包括:
[0121]第二路徑選擇模塊,用于當(dāng)當(dāng)前大流在上一個(gè)發(fā)送周期經(jīng)過(guò)的鏈路負(fù)載超過(guò)所述負(fù)載閾值時(shí),從與當(dāng)前大流的源端直連的邊緣層交換機(jī)預(yù)設(shè)的路徑中選擇時(shí)延最小的兩條路徑,以供數(shù)據(jù)包轉(zhuǎn)發(fā)時(shí)在所述兩條路徑中切換。
[0122]更進(jìn)一步地,所述裝置還包括:
[0123]時(shí)隙值更新模塊,用于根據(jù)路徑的傳輸時(shí)延計(jì)算傳輸時(shí)隙值,并根據(jù)所述傳輸時(shí)隙值更新所述流表。
[0124]本實(shí)施例所述的面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡裝置可以用于執(zhí)行上述方法實(shí)施例,其原理和技術(shù)效果類(lèi)似,此處不再贅述。
[0125]本發(fā)明的說(shuō)明書(shū)中,說(shuō)明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施例可以在沒(méi)有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對(duì)本說(shuō)明書(shū)的理解。
【主權(quán)項(xiàng)】
1.一種面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡方法,其特征在于,包括: 控制器接收交換機(jī)發(fā)送的數(shù)據(jù)包,將所述數(shù)據(jù)包的特征字段與流表中的字段進(jìn)行匹配,并根據(jù)預(yù)設(shè)的動(dòng)作優(yōu)先順序?qū)⑺鰯?shù)據(jù)包的動(dòng)作記錄在流表的動(dòng)作集中; 若所述數(shù)據(jù)包的特征字段與所述流表中的字段匹配成功,則根據(jù)動(dòng)作集中的動(dòng)作順序,對(duì)所述數(shù)據(jù)包執(zhí)行對(duì)應(yīng)操作; 若所述對(duì)應(yīng)動(dòng)作為預(yù)處理轉(zhuǎn)發(fā),則判斷所述數(shù)據(jù)包的時(shí)隙字段與所述流表中的傳輸時(shí)隙值是否匹配,若匹配,則將所述數(shù)據(jù)包轉(zhuǎn)發(fā),若不匹配,則將所述數(shù)據(jù)包緩存至下一個(gè)時(shí)隙進(jìn)行轉(zhuǎn)發(fā),以均衡面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)的流量; 其中,所述數(shù)據(jù)包的動(dòng)作包括處理、預(yù)處理轉(zhuǎn)發(fā)、轉(zhuǎn)發(fā)和丟棄。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,若所述數(shù)據(jù)包的特征字段與交換機(jī)中流表的字段匹配失敗,則根據(jù)預(yù)設(shè)的靜態(tài)流表中的動(dòng)作集對(duì)所述數(shù)據(jù)包執(zhí)行對(duì)應(yīng)操作。3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述控制器接收交換機(jī)發(fā)送的數(shù)據(jù)包,將所述數(shù)據(jù)包的特征字段與流表中的字段進(jìn)行匹配,并根據(jù)預(yù)設(shè)的動(dòng)作優(yōu)先順序?qū)⑺鰯?shù)據(jù)包的動(dòng)作記錄在流表的動(dòng)作集中之前,還包括: 若當(dāng)前發(fā)送周期中單條流鏈路帶寬占用率超過(guò)帶寬閾值,則確定當(dāng)前流為大流,并將所述大流添加至大流集合中; 若所述大流經(jīng)過(guò)的鏈路負(fù)載超過(guò)負(fù)載閾值,則從與所述大流的源端直連的邊緣層交換機(jī)預(yù)設(shè)的路徑中選擇時(shí)延最小的兩條路徑,以供數(shù)據(jù)包轉(zhuǎn)發(fā)時(shí)在所述兩條路徑中切換。4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述若當(dāng)前發(fā)送周期中單條流鏈路帶寬占用率超過(guò)帶寬閾值,則當(dāng)前流為大流,并將所述大流添加至大流集合中之后,還包括: 若當(dāng)前大流在上一個(gè)發(fā)送周期經(jīng)過(guò)的鏈路負(fù)載超過(guò)所述負(fù)載閾值,則從與當(dāng)前大流的源端直連的邊緣層交換機(jī)預(yù)設(shè)的路徑中選擇時(shí)延最小的兩條路徑,以供數(shù)據(jù)包轉(zhuǎn)發(fā)時(shí)在所述兩條路徑中切換。5.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述當(dāng)所述大流經(jīng)過(guò)的鏈路負(fù)載超過(guò)負(fù)載閾值,則從與所述大流的源端直連的邊緣層交換機(jī)預(yù)設(shè)的路徑中選擇時(shí)延最小的兩條路徑,以供數(shù)據(jù)包轉(zhuǎn)發(fā)時(shí)在所述兩條路徑中切換之后,還包括: 根據(jù)路徑的傳輸時(shí)延計(jì)算傳輸時(shí)隙值,并根據(jù)所述傳輸時(shí)隙值更新所述流表。6.—種面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)流量均衡裝置,其特征在于,包括: 字段匹配模塊,用于接收交換機(jī)發(fā)送的數(shù)據(jù)包,將所述數(shù)據(jù)包的特征字段與流表中的字段進(jìn)行匹配,并根據(jù)預(yù)設(shè)的動(dòng)作優(yōu)先順序?qū)⑺鰯?shù)據(jù)包的動(dòng)作記錄在流表的動(dòng)作集中;第一動(dòng)作執(zhí)行模塊,用于當(dāng)所述數(shù)據(jù)包的特征字段與所述流表中的字段匹配成功時(shí),根據(jù)動(dòng)作集中的動(dòng)作順序,對(duì)所述數(shù)據(jù)包執(zhí)行對(duì)應(yīng)操作; 預(yù)處理轉(zhuǎn)發(fā)模塊,用于當(dāng)所述對(duì)應(yīng)動(dòng)作為預(yù)處理轉(zhuǎn)發(fā)時(shí),判斷所述數(shù)據(jù)包的時(shí)隙字段與所述流表中的傳輸時(shí)隙值是否匹配,若匹配,則將所述數(shù)據(jù)包轉(zhuǎn)發(fā),若不匹配,則將所述數(shù)據(jù)包緩存至下一個(gè)時(shí)隙進(jìn)行轉(zhuǎn)發(fā),以均衡面向軟件定義的數(shù)據(jù)中心網(wǎng)絡(luò)的流量; 其中,所述數(shù)據(jù)包的動(dòng)作包括處理、預(yù)處理轉(zhuǎn)發(fā)、轉(zhuǎn)發(fā)和丟棄。7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,還包括: 第二動(dòng)作執(zhí)行模塊,用于當(dāng)所述數(shù)據(jù)包的特征字段與交換機(jī)中流表的字段匹配失敗時(shí),根據(jù)預(yù)設(shè)的靜態(tài)流表中的動(dòng)作集對(duì)所述數(shù)據(jù)包執(zhí)行對(duì)應(yīng)操作。8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,還包括: 大流判斷模塊,用于當(dāng)當(dāng)前發(fā)送周期中單條流鏈路帶寬占用率超過(guò)帶寬閾值時(shí),確定當(dāng)前流為大流,并將所述大流添加至大流集合中; 第一路徑選擇模塊,用于當(dāng)所述大流經(jīng)過(guò)的鏈路負(fù)載超過(guò)負(fù)載閾值時(shí),從與所述大流的源端直連的邊緣層交換機(jī)預(yù)設(shè)的路徑中選擇時(shí)延最小的兩條路徑,以供數(shù)據(jù)包轉(zhuǎn)發(fā)時(shí)在所述兩條路徑中切換。9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,還包括: 第二路徑選擇模塊,用于當(dāng)當(dāng)前大流在上一個(gè)發(fā)送周期經(jīng)過(guò)的鏈路負(fù)載超過(guò)所述負(fù)載閾值時(shí),從與當(dāng)前大流的源端直連的邊緣層交換機(jī)預(yù)設(shè)的路徑中選擇時(shí)延最小的兩條路徑,以供數(shù)據(jù)包轉(zhuǎn)發(fā)時(shí)在所述兩條路徑中切換。10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,還包括: 時(shí)隙值更新模塊,用于根據(jù)路徑的傳輸時(shí)延計(jì)算傳輸時(shí)隙值,并根據(jù)所述傳輸時(shí)隙值更新所述流表。
【文檔編號(hào)】H04L12/803GK105915467SQ201610326176
【公開(kāi)日】2016年8月31日
【申請(qǐng)日】2016年5月17日
【發(fā)明人】楊洋, 楊家海, 溫皓森, 王會(huì)
【申請(qǐng)人】清華大學(xué), 中國(guó)人民解放軍西安通信學(xué)院
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
贡山| 宜川县| 湘西| 沙田区| 余庆县| 延庆县| 五大连池市| 正宁县| 广水市| 西吉县| 黄龙县| 万山特区| 和政县| 五大连池市| 伊金霍洛旗| 吕梁市| 耒阳市| 郁南县| 徐州市| 镇康县| 嘉荫县| 汉寿县| 普洱| 东平县| 乐平市| 中西区| 广州市| 曲阳县| 永春县| 灵石县| 黑河市| 安宁市| 克拉玛依市| 娱乐| 拉萨市| 泽库县| 琼中| 临泉县| 石台县| 汉阴县| 滨州市|