亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種基于服務(wù)器的流調(diào)度方法_3

文檔序號(hào):9790974閱讀:來源:國(guó)知局
上自然也就不會(huì)產(chǎn)生這個(gè)流的數(shù)據(jù)包。反之,當(dāng)這個(gè)高優(yōu)先級(jí)的流的數(shù)據(jù)包出現(xiàn)時(shí),服務(wù)器D可以確認(rèn)此流在其接收方處也有足夠高的優(yōu)先級(jí),所以是時(shí)候通知服務(wù)器B“傳輸中斷”了。為了發(fā)出通知,發(fā)送者需要再多發(fā)一個(gè)原來在傳輸?shù)牧鞯臄?shù)據(jù)包,并且這個(gè)包被打上標(biāo)記以告知接收方優(yōu)先級(jí)不一致事件已經(jīng)發(fā)生。
[0027]b)流的溫度:就像存儲(chǔ)系統(tǒng)用溫度來表示最近使用過的文件塊一樣,流的溫度讓接收方感知到最近傳輸過的流。一個(gè)熱的流表示接收方最近收到過來自這個(gè)流的數(shù)據(jù)包,也說明這個(gè)流在其發(fā)送者那有足夠的優(yōu)先級(jí)被發(fā)送出來。一個(gè)冷的流表示接收方有一陣子沒有收到來自這個(gè)流的數(shù)據(jù)包了,也說明這個(gè)流在其發(fā)送者處的優(yōu)先級(jí)太低,不足以被發(fā)送出來。最熱的流就是剛剛傳輸過的流,有最大的可能性激活后收到發(fā)送方的響應(yīng)。我們將流的溫度的取值范圍設(shè)定為[0:7]。每次收到某個(gè)流的數(shù)據(jù)包,這個(gè)流的溫度會(huì)被刷新為7度。每隔lOOus,流表中所有流的溫度下降I度。在前面的基本假設(shè)中,我們已經(jīng)固定了TCP超時(shí)時(shí)間為500us,因此每隔500us,TCP超時(shí)事件會(huì)產(chǎn)生一個(gè)數(shù)據(jù)包。如果這個(gè)流在發(fā)送方有足夠的優(yōu)先級(jí),這個(gè)數(shù)據(jù)包會(huì)被發(fā)送出來到達(dá)接收方,并在其溫度降為O度之前就把其溫度刷新回7度。如果這個(gè)流在發(fā)送者處的優(yōu)先級(jí)不夠,那么這個(gè)流的超時(shí)事件所產(chǎn)生的包也無法發(fā)出,他在接收方處的溫度最終會(huì)降為O度,接收方即可知道即使激活這個(gè)流也不能收到其發(fā)送方的響應(yīng)。注意,當(dāng)接收方收到發(fā)送者發(fā)送來的標(biāo)記著優(yōu)先級(jí)不一致事件的數(shù)據(jù)包時(shí),相應(yīng)的流會(huì)馬上被冰凍(溫度設(shè)為O)。
[0028]c)心跳包:從上面的描述中我們可以看出,其實(shí)TCP超時(shí)事件產(chǎn)生的數(shù)據(jù)包在SFS中實(shí)際上被當(dāng)成心跳包,用來告訴接收方各個(gè)暫停住的流在其發(fā)送者處是否是活動(dòng)的。這就好像hadoop系統(tǒng)里面Master通過接收到的心跳包來了解當(dāng)前各個(gè)Worker的狀態(tài)一樣。有一點(diǎn)區(qū)別在于,TCP超時(shí)事件產(chǎn)生的數(shù)據(jù)包帶著負(fù)載。為了節(jié)省帶寬,我們讓發(fā)送者砍掉心跳包中的負(fù)載,只保留包頭。在pFabr i c中也有相似的設(shè)計(jì),使用空包來探測(cè)網(wǎng)絡(luò)的狀態(tài)。注意,心跳包不會(huì)觸發(fā)發(fā)送方通知機(jī)制,并且它仍然是被發(fā)送者調(diào)度著的。例如,如果一個(gè)流的優(yōu)先級(jí)不夠,那么它的心跳包無法被發(fā)送出來。如果它經(jīng)歷了多次超時(shí)事件產(chǎn)生了多個(gè)心跳包,發(fā)送者只為其保留其中序號(hào)最大的一個(gè)心跳包,其他的心跳包被直接丟棄以節(jié)省帶寬。
[0029]d)候選窗口開啟:接收方使用這個(gè)機(jī)制來激活最熱的流以填充鏈路。在前面提到過網(wǎng)卡只能從流窗口中的表項(xiàng)中抽取ACK包。在這里,我們修改這個(gè)設(shè)定,現(xiàn)在網(wǎng)卡能從兩個(gè)地方抽取ACK包,也就是流窗口和候選窗口。通常情況下,候選窗口是關(guān)閉的,因?yàn)榱鞔翱谥械牧骶妥銐蛱畛滏溌妨?。而在?yōu)先級(jí)不一致事件發(fā)生時(shí),流窗口中的流被中斷了,這時(shí),接收方要開啟候選窗口來激活流以填充鏈路。候選窗口的開啟由網(wǎng)卡的抽取動(dòng)作觸發(fā)。每次網(wǎng)卡抽取ACK包時(shí),接收方檢查當(dāng)前流是否被冰凍(溫度為O)。如果發(fā)現(xiàn)一個(gè)冰凍的流并且當(dāng)前候選窗口未開啟,候選窗口會(huì)被開啟來激活當(dāng)前最熱的流。有時(shí)候候選窗口中的流也會(huì)遭遇優(yōu)先級(jí)不一致事件而被冰凍,這時(shí)網(wǎng)卡的抽取動(dòng)作會(huì)再次觸發(fā)候選窗口開啟事件,接收方再次找到當(dāng)前最熱的流并開啟候選窗口來激活它。圖7(a)_(d)展示了候選窗口的開啟。在圖7(a)中,接收方的流表中有五個(gè)來自不同發(fā)送者的TCP連接。其中流A處于激活狀態(tài),其數(shù)據(jù)包源源不斷地到來,將其溫度刷新為7度。其他流B-E被暫停住。在圖7(b)中,隨著時(shí)間的推移,所有流的溫度都下降了一度。在圖7(c)中,流A遭遇了優(yōu)先級(jí)不一致事件,其溫度變?yōu)镺度。接收方在流B-E中找到溫度最高的流E,并開啟一個(gè)候選窗口來激活它(釋放其ACK包)。在圖7(d)中,接收方收到了剛才激活的流E的數(shù)據(jù)包,其溫度被刷新為7度。圖7(e)(f)展示了候選窗口的再次開啟。在圖7(e)中,流E也遭遇了優(yōu)先級(jí)不一致事件,其溫度變?yōu)镺度。接收方在流B-D中找到了當(dāng)前溫度最高的流D,并為其打開了候選窗口。在圖7(f)中,接收方收到了流D的發(fā)送方發(fā)來的數(shù)據(jù)包,其溫度被刷新為7度。
[0030]e)候選窗口移動(dòng):接收方使用這個(gè)機(jī)制來移動(dòng)候選窗口,將最熱流優(yōu)先策略轉(zhuǎn)變回最少剩余包的流優(yōu)先策略。候選窗口的開啟實(shí)質(zhì)上米用的是最熱流優(yōu)先的策略,這種策略用來填充鏈路非常有效,但并不能最小化FCT。我們知道流表中的流是從左到右按優(yōu)先級(jí)排列的,那么向左方移動(dòng)候選窗口就意味著將策略轉(zhuǎn)變回最少剩余包的流優(yōu)先策略。候選窗口移動(dòng)的機(jī)制是這樣工作的。當(dāng)候選窗口開啟時(shí),接收方每次收到不在候選窗口中的流的數(shù)據(jù)包,它就檢查這個(gè)流當(dāng)前的位置。如果這個(gè)流在候選窗口的左邊,則接收方將候選窗口挪到這個(gè)流的位置來激活它。反之則候選窗口不會(huì)移動(dòng)。圖7(g)是一個(gè)候選窗口移動(dòng)的示例。流C接收到了一個(gè)心跳包,其溫度被刷新為7度。雖然流C和流D的溫度一樣,但流C的優(yōu)先級(jí)高于流D,因此候選窗口從流D挪到了流C。流D被暫停,流C被激活。
[0031]f)候選窗口關(guān)閉:這個(gè)機(jī)制用來關(guān)閉候選窗口以暫停住流。當(dāng)候選窗口開啟時(shí),若收到流窗口中的流的數(shù)據(jù)包,則意味著優(yōu)先級(jí)不一致事件的結(jié)束。這時(shí),接收方關(guān)閉候選窗口,重新激活流窗口中的流。圖7(h)是候選窗口關(guān)閉的示例。流A收到了其發(fā)送方發(fā)來的數(shù)據(jù)包,溫度變?yōu)?度,重新被激活,候選窗口關(guān)閉暫停住流C。
[0032]我們使用包級(jí)的模擬器NS2來測(cè)試SFS的性能。我們將SFS與兩種方案比較:DCTCP和PFabric13DCTCP的參數(shù)設(shè)置如下:交換機(jī)的顯示擁塞通知的閥值設(shè)為15個(gè)包;TCP超時(shí)時(shí)間固定為lOOOuswFabric設(shè)置如下:為pFabric定制的TCP在發(fā)送完SYN包后,不需要接收方返回第一個(gè)ACK就直接開始發(fā)送數(shù)據(jù)包;TCP超時(shí)時(shí)間固定為500us AFS設(shè)置如下:TCP的擁塞窗口固定為BDP(8個(gè)包),超時(shí)時(shí)間固定為500us來產(chǎn)生心跳包。
[0033]測(cè)試所用的拓?fù)浣Y(jié)構(gòu)為8口交換機(jī)組成的收斂比為I比I的FatTree網(wǎng)絡(luò)。此網(wǎng)絡(luò)中有128臺(tái)服務(wù)器,16臺(tái)核心層交換機(jī)。所有鏈路的帶寬和傳播時(shí)延分別為IGbps和lus。對(duì)1500B的數(shù)據(jù)包來說,其在Pod之間的RTT(Round Trip Time)為86us,其在Pod內(nèi)的RTT為28.6us。對(duì)于SYN包來說,其在Pod之間的RTT為16us,其在Pod內(nèi)的RTT為4.6us。
[0034]我們使用符合真實(shí)數(shù)據(jù)中心網(wǎng)絡(luò)流量分布的網(wǎng)頁搜索和數(shù)據(jù)挖掘負(fù)荷來產(chǎn)生流量。在網(wǎng)頁搜索負(fù)荷中,超過95%的流量來自30%的大小在1-20MB的流。在數(shù)據(jù)挖掘負(fù)荷中,超過95%的流量來大于15MB的3.6%的流,超過80%的流都小于10KB。我們用這兩個(gè)負(fù)荷來決定在以上FatTree結(jié)構(gòu)中產(chǎn)生流的大小。流的源和目的是隨機(jī)選取的服務(wù)器,流的到來時(shí)間符合泊松過程。我們調(diào)整新流產(chǎn)生的速率來產(chǎn)生不同的負(fù)載情況以全面地測(cè)試SFS的性能。
[0035]圖8是SFS與DCTCP和pFabric在FatTree中采用網(wǎng)頁搜索負(fù)荷時(shí)的FCT。注意圖中每個(gè)流的FCT已經(jīng)做了歸一化處理(實(shí)測(cè)完成時(shí)間/理論完成時(shí)間)。我們可以看到SFS表現(xiàn)得比DCTCP好,彳艮接近于pFabric。從圖8(a) (b)可以看到,與DCTCP相比,SFS的小流的平均FCT減少最多63%,最慢的小流的完成速度快3到4倍。不出意料,SFS無法超越pFabric,pFabric的小流的平均FCT比SFS快1.3倍,最慢的小流的FCT比SFS快1.6倍。原因主要有兩方面。首先,為pFabric定制的TCP無需等待接收方返回第一個(gè)ACK就可以開始發(fā)送數(shù)據(jù)包,這樣很多小于8個(gè)包的流可以在一個(gè)RTT內(nèi)完成。而在SFS中,TCP要等接收方返回第一個(gè)
當(dāng)前第3頁1 2 3 4 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1