無(wú)丟失網(wǎng)絡(luò)擁塞管理關(guān)鍵技術(shù)研究_第1頁(yè)
無(wú)丟失網(wǎng)絡(luò)擁塞管理關(guān)鍵技術(shù)研究_第2頁(yè)
無(wú)丟失網(wǎng)絡(luò)擁塞管理關(guān)鍵技術(shù)研究_第3頁(yè)
無(wú)丟失網(wǎng)絡(luò)擁塞管理關(guān)鍵技術(shù)研究_第4頁(yè)
無(wú)丟失網(wǎng)絡(luò)擁塞管理關(guān)鍵技術(shù)研究_第5頁(yè)
已閱讀5頁(yè),還剩215頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

(申請(qǐng)清華大學(xué)工學(xué)博士學(xué)位論文)二〇二二年五月inpartialfulfillmentoftherequirementforthedegreeofDissertationSupervisor:ProfessorRenFe清華大學(xué)擁有在著作權(quán)法規(guī)定范圍內(nèi)學(xué)位論文的使用權(quán),其中包括1)已獲學(xué)位的研究生必須按學(xué)校規(guī)定提交學(xué)位論文,學(xué)校可以采用影印、縮印或其他復(fù)制手段保存研究生上交的學(xué)位論文2)為教學(xué)和科研目的,學(xué)??梢詫⒐_(kāi)的學(xué)位論文作為資料在圖書(shū)館、資料室等場(chǎng)所供校內(nèi)師生閱讀,或在校園網(wǎng)上供校內(nèi)師生瀏覽部分內(nèi)容;(3)根據(jù)《中華人民共和國(guó)學(xué)位條例暫行實(shí)施辦法》及上級(jí)教育主管部門(mén)具體要求,向國(guó)家圖書(shū)館報(bào)送相應(yīng)的學(xué)位論文。I近年來(lái)分布式存儲(chǔ)、高性能計(jì)算和數(shù)據(jù)中心在線(xiàn)數(shù)據(jù)密集型應(yīng)用等更多具有嚴(yán)格要求的應(yīng)用場(chǎng)景涌現(xiàn),展現(xiàn)出對(duì)網(wǎng)絡(luò)無(wú)丟失特性的需求增強(qiáng)的趨勢(shì)。主流的必要的,近年來(lái)獲得了工業(yè)界和學(xué)術(shù)界很大關(guān)注。本論文針對(duì)擁塞管理的擁塞探測(cè)與識(shí)別問(wèn)題、鏈路層流量控制與端到端擁塞控制的交互問(wèn)題展開(kāi)研究工作,取(1)提出了無(wú)丟失網(wǎng)絡(luò)的三元擁塞探測(cè)機(jī)制。通過(guò)重新認(rèn)識(shí)鏈路層流量控制的定義,通過(guò)建模得到狀態(tài)轉(zhuǎn)換條件,為主流無(wú)丟失網(wǎng)絡(luò)設(shè)計(jì)了交換機(jī)三元擁塞確識(shí)別擁塞流以及僅受到逐跳流量控制影響的流。案例研究表明,現(xiàn)有的擁塞控(2)提出了基于三元擁塞探測(cè)的無(wú)丟失以太網(wǎng)擁塞控制機(jī)制。數(shù)據(jù)中心無(wú)丟失以太網(wǎng)擁塞控制需要滿(mǎn)足的屬性包括快速收斂、與PFC有良好的交互以及滿(mǎn)足入源停止?fàn)顟B(tài)快速排空因超發(fā)而積壓的隊(duì)列,從而保持低排隊(duì)時(shí)延而不犧牲吞吐量。實(shí)驗(yàn)結(jié)果表明,使用簡(jiǎn)潔有效的擁塞信號(hào)和針對(duì)性的調(diào)速策略,ACC能極大出了兼容InfiniBand擁塞控制框架的擁塞控制機(jī)制RRCC。核心思想包括接收端驅(qū)動(dòng)的擁塞識(shí)別和接收端驅(qū)動(dòng)的速率調(diào)節(jié)。接收端利用觀察到的流量標(biāo)記模式準(zhǔn)確識(shí)別擁塞流和擁塞無(wú)關(guān)流,利用數(shù)據(jù)接收速率顯式控制發(fā)送端的減速。實(shí)驗(yàn)結(jié)AbstractInrecentyears,moreapplicationscenarioswithstrictrequirementshaveemMainstreamlosslessnetwrlineblockingandunfairness.Therefore,congestionmanagementinlosslessnetworksisthesisstudiestheproblemofcongestionmanagementincludingcoidentification,theinteractionbetweenlink-layerflowcontrolandend-to-endcocontrolmechanism.Thisthesisachievesthefollowingcontrssnetworks.Byre-understandinrflowcontrol,wedefineternaryportstates(congestedstate,uncongesterminedstate)inlmodelingandproposeTernaryCongestionDetbylink-layerflowcontrol.CasestudiesshowtcancooperatewithTCDtoenhancerateadcompletiontimeperformance.PFC,andsatisfyingthedemandoflowlatencyandhighthroughputlightoftheabovepropertirivalrateofACKstodirectlyguidepropertythatdatapacketsandACKsareneverlostciseandeffectivecongestionsignalandtailorealleviatethehead-of-lineblockingproblem.ACCachievesbetterflowcompletiontimeperformancethantheexistinghighmentalproblemsthatleadtothepoorperformanceofIBCCandthedifficultyofprac-ticaldeployment.WeproposeacongestionccompatiblewiththeInfiniBandcongestionreceiver-drivencongestionidentificationandreceiver-drivenrateadjustment.Rutilizetheobservedmarkingpatternofflowstoaccuratefromcongestion-unrelatedflows.Receiversalsoexplicitlyisinthesenderbymeansofthereceivingrate.ExtRmessagecompletiontime.RRCCdoesnotneedtomodifyInfiniBandswitchegooddeployability.Keywords:Losslessnetworks?congestiondetection?congesti IAbstract X 1 1 1 2 3 4 4 5 6 7 7 8 9 10 10 10 12 13 13 14 16V 18 18 19 20 20 23 25 25 27 29 30 31 33 33 35 41 41 43 434.2無(wú)丟失以太網(wǎng)擁塞控制需要 44 46 51 51 51 57 60 60 61 61 62 66 69 71 71 72 72 73 74 74 76 78 78 78 79 82 83 84 85 85 86 88 90 90 91 93 102 103 104 106 107 3 5 6 16 19 20 21 22 24 25 27圖3.8Ton隨ε、Rd的變化 29 30 31 32 34 35 36 36 37 38 39 40 40 46圖4.2F0為受害者流時(shí)各端口隊(duì)列占用情況(減速函數(shù)為f1) 47圖4.3F0為受害者流時(shí)各端口隊(duì)列占用情況(減速函數(shù)為f2) 47圖4.4F2為受害者流時(shí)各端口隊(duì)列占用情況(減速函數(shù)為f1) 48 49 50 51 52 55 56 58 62 63 64 65 66 66 67 67 68 68 69 74 75 76 77 79 80 83 84 85 86 88 88 17 26 27 36 57 66 75XCEERDMA遠(yuǎn)程訪(fǎng)問(wèn)內(nèi)存技術(shù)(RemoteDirectMemoryAccess)HPC高性能計(jì)算(HighPerformanceComputing)IBTAInfiniBand行業(yè)RoCE基于聚合以太網(wǎng)的RDMA(RDMAoverConvergedEthernet)DCB數(shù)據(jù)中心橋接(DataCPFC優(yōu)先級(jí)流量控制(PriorityFlowCBFC基于信用的流量控制(CreditECN顯式擁塞通知(ExplicitCongestionNotificatioINT帶內(nèi)網(wǎng)絡(luò)遙測(cè)(In-bandNetworkTelemetry)CP擁塞點(diǎn)(CongestionPoint)NP通知點(diǎn)(NoRP反應(yīng)點(diǎn)(ReactionPoint)CE經(jīng)歷擁塞態(tài)(CongestionUE經(jīng)歷待定態(tài)(UndetermQoS服務(wù)質(zhì)量(QualityASIC專(zhuān)用集成電路(ApplicationSpecificBDP帶寬時(shí)延積(BandwidthDelayProduct)VOQ虛擬輸出隊(duì)列(VirtualOutpuToRMPI消息傳遞接口(MessagePassingInCNP擁塞通知包(CongestionNotificationPacket)BECN后向擁塞通知(BackwardExplicitCongestionNotification)FECN前向擁塞通知(ForwardExplicitCongestion1近年來(lái),更多具有嚴(yán)格要求的應(yīng)用場(chǎng)景展現(xiàn)出對(duì)網(wǎng)絡(luò)無(wú)丟失特性的需求。例長(zhǎng)時(shí)間的超時(shí)可能導(dǎo)致iSCSI傳輸幾乎停止[1]。在高性能計(jì)算(HighPerformance低延時(shí)也日益成為關(guān)鍵的性能指標(biāo),任何網(wǎng)絡(luò)延時(shí)的增加都會(huì)直接轉(zhuǎn)化為更長(zhǎng)的應(yīng)用完成時(shí)間。在數(shù)據(jù)中心中,數(shù)據(jù)包丟失會(huì)對(duì)應(yīng)用程序性能造成嚴(yán)重?fù)p害。例如,丟失導(dǎo)致的超時(shí)等待時(shí)間會(huì)極大損害時(shí)延敏感業(yè)務(wù)的完成時(shí)間[3-4];0.1%的丟包率會(huì)降低25%批量數(shù)據(jù)傳輸?shù)耐掏铝縖5]。因此,無(wú)丟失網(wǎng)絡(luò)逐漸興起并成為重要的基礎(chǔ)設(shè)施。在本文中,無(wú)丟失網(wǎng)絡(luò)指在正常情況下數(shù)據(jù)包不會(huì)因網(wǎng)絡(luò)中交換機(jī)緩存溢出而被丟棄的交換網(wǎng)絡(luò)。目前兩類(lèi)主流的無(wú)丟失網(wǎng)絡(luò)是應(yīng)用于數(shù)據(jù)中心的無(wú)丟失以太網(wǎng)和高性能計(jì)算領(lǐng)域的InfiniBand。本節(jié)首先介紹這兩類(lèi)無(wú)丟失網(wǎng)絡(luò)的相關(guān)背景,然后介紹無(wú)丟失網(wǎng)絡(luò)以太網(wǎng)憑借成本低、操作簡(jiǎn)單和兼容性廣的優(yōu)點(diǎn),一直是局域網(wǎng)的首選網(wǎng)絡(luò)的理念也導(dǎo)致需要為一些具有更嚴(yán)格要求的應(yīng)用單獨(dú)設(shè)計(jì)專(zhuān)用網(wǎng)絡(luò)。例如在多種業(yè)務(wù)需求下,通信基礎(chǔ)設(shè)施就需要包括多個(gè)不相交的網(wǎng)絡(luò):使用以太網(wǎng)技術(shù)的局域網(wǎng)、使用FibreChannel技術(shù)的存儲(chǔ)區(qū)域網(wǎng)和使用InfiniBand技術(shù)的高性能計(jì)算但是,現(xiàn)代數(shù)據(jù)中心已普遍采用了在傳統(tǒng)互聯(lián)網(wǎng)中占主導(dǎo)地位的以太網(wǎng)。鑒的能力使之成為一個(gè)統(tǒng)一的交換結(jié)構(gòu),從而取代傳統(tǒng)的為特殊需求設(shè)計(jì)的各個(gè)獨(dú)具有顯著的性能、成本和管理優(yōu)勢(shì)。CEE在鏈路層開(kāi)發(fā)了逐跳的優(yōu)先級(jí)流量控制2交換機(jī)入端口在隊(duì)列緩存溢出之前發(fā)送信令通知上游端口停止發(fā)送數(shù)據(jù),在隊(duì)列長(zhǎng)度降低之后發(fā)送信令通知上游端口恢復(fù)數(shù)據(jù)包的發(fā)送,以確保不會(huì)因緩存溢出需要內(nèi)核的參與,傳輸協(xié)議棧卸載到網(wǎng)卡上,數(shù)據(jù)直接從一個(gè)主機(jī)系統(tǒng)的存儲(chǔ)區(qū)快速傳輸?shù)搅硗庖慌_(tái)遠(yuǎn)程主機(jī)的存儲(chǔ)區(qū)。與基于軟件的TCP/IP網(wǎng)絡(luò)協(xié)議棧相比,RDMA硬件卸載和旁路內(nèi)核的特性顯著降低了CPU開(kāi)銷(xiāo)和整體延時(shí)。例如,使RDMA的數(shù)據(jù)傳輸只有在沒(méi)有數(shù)據(jù)包丟失時(shí)才能達(dá)到其最佳性能[8]。因此,近年目前,可擴(kuò)展的無(wú)丟失以太網(wǎng)具有很大的應(yīng)用前景,是構(gòu)建下一代數(shù)據(jù)中心集群中有70%部署了InfiniBan持了無(wú)丟失的特性,采用基于信用的鏈路層流量控制(CreditBasedFlowControl,共享單個(gè)物理鏈路的獨(dú)立邏輯通信鏈路。下游交換機(jī)入端口VL的可用緩存大小以信用值的形式發(fā)送在信令中通知給上游端口,上游端口VL按照信令中的信用需要特殊的網(wǎng)卡通道適配器(ChannelAdapter,CA)和交換機(jī),支持以子網(wǎng)為單3隊(duì)頭阻塞?辜流擁塞流隊(duì)頭阻塞79理想分配:四條流均為C/41346791無(wú)丟失以太網(wǎng)和InfiniBand均使用鏈路層的流量控制機(jī)制來(lái)保證網(wǎng)絡(luò)的無(wú)丟失特性。但是,鏈路層流量控制也帶來(lái)了一些附帶損害。鏈路層流量控制工作在當(dāng)均分瓶頸鏈路帶寬,即各分得c/4。但是,由于鏈路層流量控制不能區(qū)分4進(jìn)入停滯狀態(tài),極大降低傳輸性能[5,15-17]。由于在無(wú)丟失網(wǎng)絡(luò)中僅使用鏈路層流量控制存在以上所述的問(wèn)題,有效的擁塞管理是必要的。當(dāng)輸入流量速率超過(guò)鏈路容量時(shí),網(wǎng)絡(luò)中發(fā)生了擁塞。無(wú)丟失網(wǎng)絡(luò)的擁塞管理旨在進(jìn)行流級(jí)別的速率控制,緩解以及消除網(wǎng)絡(luò)中的擁塞,避免鏈路層流量控制的持續(xù)觸發(fā)。無(wú)丟失網(wǎng)絡(luò)的擁塞管理近年來(lái)成為學(xué)術(shù)界和工業(yè)界了InfiniBand擁塞控制機(jī)制[14];微軟、谷歌和阿里巴巴等工業(yè)界公司都提出了適用于無(wú)丟失以太網(wǎng)的擁塞控制機(jī)制[7,18-19]。在擁塞管理架構(gòu)中,首先需要擁塞探測(cè)探測(cè)到網(wǎng)絡(luò)中擁塞的出現(xiàn)。探測(cè)擁塞的同時(shí)進(jìn)行擁塞識(shí)別,確定造成擁塞的擁塞流。如果是網(wǎng)絡(luò)內(nèi)交換機(jī)負(fù)責(zé)實(shí)施擁塞探測(cè)與識(shí)別,還需要擁塞通知將擁塞相關(guān)的信息通知給源端主機(jī)。最終,源主擁塞探測(cè)問(wèn)題:無(wú)丟失網(wǎng)絡(luò)的鏈路層流量控制生效時(shí),會(huì)對(duì)網(wǎng)絡(luò)中交換機(jī)端口狀態(tài)產(chǎn)生影響,給無(wú)丟失網(wǎng)絡(luò)的擁塞探測(cè)帶來(lái)了新的問(wèn)題。當(dāng)網(wǎng)絡(luò)中突發(fā)流量到達(dá)產(chǎn)生隊(duì)列累積時(shí),鏈路層流量控制會(huì)被觸發(fā)以避免丟包,上游的交換機(jī)端口比緩存溢出即丟棄數(shù)據(jù)包的傳統(tǒng)網(wǎng)絡(luò),無(wú)丟失網(wǎng)絡(luò)中的交換機(jī)端口產(chǎn)生隊(duì)列累積5因此,無(wú)丟失網(wǎng)絡(luò)的擁塞探測(cè)需要能夠正確認(rèn)識(shí)鏈路層流量控制機(jī)制影響下交換機(jī)的多種端口狀態(tài),給出明確的辨別規(guī)則,探測(cè)出不同狀態(tài)的轉(zhuǎn)換。不能正確探測(cè)出不同狀態(tài)將直接導(dǎo)致?lián)砣髁康淖R(shí)別錯(cuò)誤,進(jìn)一步造成端到端擁塞控制擁塞流識(shí)別問(wèn)題:在交換機(jī)端口存在多元擁塞狀態(tài)的情況下,對(duì)于端到端擁1.2.2鏈路層流量控制與端到端擁塞控制的交互問(wèn)題在無(wú)丟失網(wǎng)絡(luò)中,端到端擁塞控制與逐跳的鏈路層流量控制二者之間的關(guān)系如圖1.2所示。二者是相互依存、相互補(bǔ)充的。一方面,當(dāng)發(fā)生瞬時(shí)擁塞時(shí),端到顯然,端到端擁塞控制與鏈路層流量控制之間會(huì)存在交互行為。二者交互的根本6①擁塞探測(cè)與識(shí)別基于交換機(jī)直接探測(cè)識(shí)別基于接收端統(tǒng)計(jì)間接識(shí)別②基于發(fā)送端的擁塞控制機(jī)制研究(無(wú)丟失以太網(wǎng))③接收端驅(qū)動(dòng)的擁塞控制機(jī)制研究(InfiniBand)①擁塞探測(cè)與識(shí)別基于交換機(jī)直接探測(cè)識(shí)別基于接收端統(tǒng)計(jì)間接識(shí)別②基于發(fā)送端的擁塞控制機(jī)制研究(無(wú)丟失以太網(wǎng))③接收端驅(qū)動(dòng)的擁塞控制機(jī)制研究(InfiniBand)擁塞探測(cè)擁塞探測(cè)與識(shí)別問(wèn)題速率調(diào)節(jié)速率調(diào)節(jié)問(wèn)題(1)端到端擁塞控制與鏈路層流量控制的控制周期不同。端到端擁塞控制的小于端到端的往返時(shí)間。例如,在現(xiàn)代數(shù)據(jù)中心中,單跳鏈路的往返時(shí)間通常只擁塞發(fā)生時(shí),擁塞控制算法需要多個(gè)RTT才能收斂到合適速率。這二者的交互可能產(chǎn)生不良后果。一方面,當(dāng)擁塞發(fā)生,交換機(jī)隊(duì)列長(zhǎng)度未快速降低時(shí),鏈路層流量控制可能被持續(xù)觸發(fā),隨著數(shù)據(jù)包的積壓,鏈路層流量控制會(huì)沿著途經(jīng)的交換機(jī)逐跳后壓,導(dǎo)致了擁塞擴(kuò)展,甚至?xí)熬W(wǎng)絡(luò)的大部分交換機(jī)和鏈路;另一方面,鏈路層流量控制被持續(xù)觸發(fā)后,數(shù)據(jù)包在交換機(jī)隊(duì)列中的堆積會(huì)對(duì)擁塞探測(cè)產(chǎn)生影響,交換機(jī)探測(cè)出的端口狀態(tài)(或端主機(jī)感知到的擁因此,需要正確認(rèn)識(shí)二者的動(dòng)態(tài)交互過(guò)程以及產(chǎn)生的影響,合理設(shè)計(jì)端到端擁塞本文針對(duì)以上問(wèn)題進(jìn)行了三個(gè)方面的研究,具體的研究?jī)?nèi)容如圖1.3所示。首先,針對(duì)擁塞探測(cè)與識(shí)別問(wèn)題,分為基于交換機(jī)直接探測(cè)識(shí)別和間接識(shí)別擁塞流兩大研究路線(xiàn),基于交換機(jī)的直接探測(cè)識(shí)別旨在增強(qiáng)交換機(jī)的能力,實(shí)現(xiàn)準(zhǔn)確的擁塞狀態(tài)探測(cè),進(jìn)而通過(guò)擁塞通知直接將擁塞流信息通知給端主機(jī);間接識(shí)別擁塞流旨在兼容已有交換機(jī)擁塞探測(cè)機(jī)制,端主機(jī)借助其他特征識(shí)別出擁塞流和擁7塞無(wú)關(guān)流,為端到端擁塞控制提供準(zhǔn)確的擁塞識(shí)別能力。進(jìn)一步針對(duì)端到端擁塞的擁塞探測(cè)與識(shí)別機(jī)制,進(jìn)行基于發(fā)送端的擁塞控制機(jī)制研究和接收端驅(qū)動(dòng)的擁針對(duì)交換機(jī)擁塞探測(cè)與識(shí)別問(wèn)題,本文通過(guò)在單擁塞點(diǎn)場(chǎng)景和多擁塞點(diǎn)場(chǎng)景中,現(xiàn)有的擁塞探測(cè)機(jī)制因?yàn)闆](méi)有正確認(rèn)識(shí)到逐跳流量控制和交換機(jī)擁塞探測(cè)行為之間的相互作用,會(huì)造成錯(cuò)誤的擁塞探測(cè)結(jié)果。本文重新認(rèn)識(shí)和定義了無(wú)丟失的端口是受到了逐跳流量控制影響的端口,并不是當(dāng)前擁塞真正發(fā)生的端口。本文通過(guò)構(gòu)建模型給出了三元狀態(tài)的轉(zhuǎn)換條件,在此基礎(chǔ)之上,為主流無(wú)丟失網(wǎng)絡(luò)TCD利用端口發(fā)送模式和隊(duì)長(zhǎng)演化特征探測(cè)三元狀態(tài),僅需要交換機(jī)支持基試床和大量的仿真實(shí)驗(yàn)表明,TCD可以準(zhǔn)確地探測(cè)出擁塞端口并識(shí)別出導(dǎo)致?lián)砣惴ㄖ械乃俾收{(diào)節(jié)配合,以增強(qiáng)擁塞控制算法的決策。案例研究表明,現(xiàn)有的擁塞控制算法通過(guò)與TCD結(jié)合可以實(shí)現(xiàn)3.3倍更好的中值流完成時(shí)間放基于三元擁塞探測(cè)機(jī)制TCD,本文探索設(shè)計(jì)了適用于大規(guī)模無(wú)丟失以太網(wǎng)的包括快速收斂,在發(fā)生隊(duì)頭阻塞時(shí)與PFC有良好的交互,以及需要滿(mǎn)足數(shù)據(jù)中心塞無(wú)關(guān)的受害者流:通過(guò)一系列實(shí)驗(yàn)發(fā)現(xiàn),對(duì)受害者流限速的具體效果與受害者速3)如何處理網(wǎng)絡(luò)中同時(shí)存在的多個(gè)擁塞點(diǎn)以保證公平合理的帶寬分配:多8塞標(biāo)記來(lái)捕獲流狀態(tài)、利用ACK的到達(dá)速率來(lái)指導(dǎo)擁塞流減速以及根據(jù)A列信息在發(fā)送端施加一個(gè)源停止?fàn)顟B(tài)。引入的源停止?fàn)顟B(tài)可以快速抑制擁塞流導(dǎo)擁塞流以新的速率恢復(fù)發(fā)送。ACC中ACK驅(qū)動(dòng)的速率調(diào)節(jié)和源停止?fàn)顟B(tài)都充分效的交換機(jī)擁塞信號(hào)和更有針對(duì)性的速率調(diào)節(jié)策略,A基于傳統(tǒng)信號(hào)ECN和RTT的擁塞控制算法,并且優(yōu)于目前高精度和高代價(jià)的擁包的排隊(duì)延時(shí)并損害了應(yīng)用程序完成時(shí)間。IBTA組織制定的InfiniBand規(guī)范中提問(wèn)題,并在一些商用交換機(jī)中得到支持。如今,HPC集群越來(lái)越多地通過(guò)共享的網(wǎng)絡(luò)架構(gòu)運(yùn)行各種工作負(fù)載,導(dǎo)致不同應(yīng)用的消息傳輸共存在網(wǎng)絡(luò)中,為IBCC帶來(lái)了很大挑戰(zhàn)。本文通過(guò)在典型的混合流量場(chǎng)景下細(xì)粒度的實(shí)驗(yàn)觀察,揭示了IBCC的幾個(gè)基本問(wèn)題,包括忽視鏈路層流量控制信用更新的周期性導(dǎo)致的擁塞流誤識(shí)別,基于預(yù)設(shè)速率表的逐步調(diào)節(jié)導(dǎo)致的慢收斂和不靈活,以及增速過(guò)程需要大量參數(shù)調(diào)優(yōu)。本文認(rèn)為正是上述的基本問(wèn)題使得實(shí)際系統(tǒng)中IBCC的性能不端點(diǎn)上的兩個(gè)關(guān)鍵機(jī)制:接收端驅(qū)動(dòng)的擁塞識(shí)別和接收端驅(qū)動(dòng)的速率調(diào)節(jié)。采取間接識(shí)別擁塞流的思路,利用接收端視角下不同流量的標(biāo)記模式特征,RRCC可以準(zhǔn)確區(qū)分出擁塞流和擁塞無(wú)關(guān)流。借助于接收端觀察到的數(shù)據(jù)接收速率,接收端顯式發(fā)送控制信令指導(dǎo)發(fā)送端的減速過(guò)程。RRCC能夠在一個(gè)控制周期內(nèi)消除9全文總共分為6章,后續(xù)章節(jié)的組織結(jié)構(gòu)如下:第2章對(duì)本文的相關(guān)工作進(jìn)行了總結(jié)。第3章針對(duì)無(wú)丟失網(wǎng)絡(luò)的擁塞探測(cè)與識(shí)別問(wèn)題,為主流無(wú)丟失網(wǎng)絡(luò)設(shè)計(jì)實(shí)現(xiàn)了三元擁塞探測(cè)機(jī)制TCD。第4章針對(duì)數(shù)據(jù)中心應(yīng)用的需求,設(shè)地處理速率調(diào)節(jié)與PFC之間的交互等一系列問(wèn)題,并且實(shí)現(xiàn)低延時(shí)和高吞吐量的制定的擁塞控制框架設(shè)計(jì)了接收端驅(qū)動(dòng)的擁塞控制機(jī)制RRCC。最終,第6章對(duì)擁塞探測(cè)是擁塞管理中基礎(chǔ)的研究問(wèn)題。由于無(wú)丟失網(wǎng)絡(luò)中現(xiàn)有的擁塞探測(cè)網(wǎng)絡(luò)和主流無(wú)丟失網(wǎng)絡(luò)的擁塞探測(cè)相關(guān)研究進(jìn)行綜述。在擁塞探測(cè)基礎(chǔ)上,目前交換機(jī)根據(jù)平均或即時(shí)的隊(duì)列長(zhǎng)度探測(cè)擁塞的出現(xiàn),并執(zhí)行數(shù)據(jù)包丟棄或者標(biāo)提出根據(jù)瞬時(shí)隊(duì)列長(zhǎng)度是否超過(guò)閾值探測(cè)擁塞和標(biāo)記ECN。通常單比特的數(shù)據(jù)包標(biāo)記旨在使端主機(jī)的傳輸層做出響應(yīng),但一些擁塞控制機(jī)制建議端主機(jī)可以根據(jù)有當(dāng)標(biāo)記數(shù)據(jù)包的比例超過(guò)某個(gè)參數(shù)時(shí),端主機(jī)才認(rèn)為其是擁塞流,對(duì)擁塞做出交換機(jī)擁塞探測(cè)需要對(duì)應(yīng)的擁塞通知機(jī)制。廣域網(wǎng)和數(shù)據(jù)中心普遍采用的做法是交換機(jī)標(biāo)記數(shù)據(jù)包并傳遞給接收端后,接收端將擁塞信息捎帶在確認(rèn)包中返工作提出了由交換機(jī)直接發(fā)送通知信息給源端,例如探測(cè)到擁塞后交換機(jī)生成單獨(dú)的ICMPSourceQuench[27]消息通知源端,但典的TCP及其后續(xù)的變體如TCPNew-Reno和TCPCubic等[22,28-30]利用丟包作為隱式的擁塞信號(hào),認(rèn)為丟包時(shí)出現(xiàn)擁塞。發(fā)生丟包的流量即識(shí)別為擁塞流。除了丟包信號(hào),端主機(jī)還可以根據(jù)端到端延時(shí)來(lái)探測(cè)擁塞。因?yàn)楫?dāng)擁塞發(fā)生時(shí),擁塞流觀察到的端到端延時(shí)會(huì)因?yàn)榫W(wǎng)絡(luò)中排隊(duì)而顯著增大。在廣域網(wǎng)中,幾種基于延時(shí)的擁塞控制算法使用RTT來(lái)推斷擁塞的發(fā)生,對(duì)擁塞流調(diào)節(jié)發(fā)送速率[31-33]。近谷歌提出的BBR[34]不再將數(shù)據(jù)包丟失或延時(shí)增大作為擁塞的隱式信號(hào),而是在數(shù)據(jù)中心中,DX[35]也提出直接利用RTT判斷排隊(duì)時(shí)延是否大于零來(lái)推小,網(wǎng)絡(luò)擁塞正在緩解。較新的研究工作Swift[36]還區(qū)分了由網(wǎng)絡(luò)擁塞引起的延時(shí)增加和由端主機(jī)擁塞引起的延時(shí)增加,提出要對(duì)不同種類(lèi)的擁塞進(jìn)行響應(yīng)。由于數(shù)據(jù)中心的端到端傳播延時(shí)目前達(dá)到了微秒級(jí),基于端到端延時(shí)的擁塞探測(cè)通常需要網(wǎng)卡支持高精度的時(shí)間戳功能,以提供準(zhǔn)確的延時(shí)測(cè)量,避免端主機(jī)處理時(shí)延抖動(dòng)的干擾[19,25]。組合ECN信號(hào)和RTT信號(hào),但本質(zhì)上是利用交換機(jī)顯式擁塞信號(hào)和端到端隱式擁塞信號(hào)適用于不同場(chǎng)景的特點(diǎn)進(jìn)行結(jié)合,并沒(méi)有設(shè)計(jì)新的擁塞探測(cè)機(jī)制。另外一些基于機(jī)器學(xué)習(xí)的擁塞控制研究工作[39-42],不再使用明確的擁塞信號(hào)或者擁塞列大小來(lái)計(jì)算擁塞的度量,該度量值考慮了自上次采樣時(shí)刻的隊(duì)長(zhǎng)增量以及采樣時(shí)刻瞬時(shí)隊(duì)列和期望隊(duì)列的差值。但是由于現(xiàn)代數(shù)據(jù)中心交換機(jī)普遍支持的是基于隊(duì)列長(zhǎng)度探測(cè)擁塞并使用ECN標(biāo)記,測(cè)機(jī)制是基于隊(duì)列長(zhǎng)度的擁塞探測(cè)。CP根據(jù)RED算法[21]標(biāo)記ECN。單個(gè)比特機(jī)制。交換機(jī)探測(cè)擁塞時(shí)應(yīng)該區(qū)分兩種情況a)如果輸出端口的隊(duì)列長(zhǎng)度超過(guò)選定的閾值并且有可用的信用發(fā)送數(shù)據(jù)包,那么它是擁塞點(diǎn)b)如果輸出端口的隊(duì)列長(zhǎng)度超過(guò)選定的閾值并且由于信用不足而導(dǎo)致數(shù)據(jù)包被阻塞,那么它是受擁塞通知(ForwardExplicitCongestionNotification,F(xiàn)ECN)標(biāo)記數(shù)據(jù)包。單個(gè)比基于RTT梯度的擁塞探測(cè)應(yīng)用于無(wú)丟失以太網(wǎng)。此外,文獻(xiàn)[44]提出在高性能計(jì)算系統(tǒng)中使用分布式應(yīng)用運(yùn)行時(shí)間的梯度進(jìn)行網(wǎng)絡(luò)擁塞探測(cè)。但是,由于無(wú)丟失網(wǎng)絡(luò)中存在特有的鏈路層流量控制,擁塞發(fā)生后,一旦鏈路層流量控制向上游生觀察到延時(shí)的增加。因此,僅基于端到端的延時(shí)信息,端到端的擁塞探測(cè)方式將交換機(jī)和端主機(jī)協(xié)作的擁塞探測(cè)。最近無(wú)丟失以太網(wǎng)中的一些研究工作提出采用交換機(jī)和端主機(jī)協(xié)作的方式探測(cè)擁塞和識(shí)別擁塞流。PCN[45]提出了Non-的數(shù)據(jù)包的比例在一段時(shí)間內(nèi)超過(guò)一個(gè)閾值(如95%)時(shí),識(shí)別該流為擁塞流。HPCC[7]旨在獲取最擁塞鏈路上已發(fā)送但還未確認(rèn)的數(shù)據(jù)包數(shù)量并對(duì)其控制,即通過(guò)已發(fā)送但還未確認(rèn)的數(shù)據(jù)包數(shù)量判斷擁塞程度。這種方式需要依靠全網(wǎng)部署一個(gè)交換機(jī),添加相應(yīng)元信息字段來(lái)攜帶該交換機(jī)處傳輸?shù)淖止?jié)數(shù)和隊(duì)列長(zhǎng)度信息。發(fā)送端根據(jù)路徑上所有交換機(jī)的信息來(lái)最終計(jì)算最擁塞鏈路上正在傳輸?shù)€塞探測(cè)本質(zhì)上根據(jù)交換機(jī)隊(duì)列長(zhǎng)度判斷擁塞情況。無(wú)丟失以太網(wǎng)和InfiniBand中現(xiàn)有的交換機(jī)擁塞探測(cè)遵循了傳統(tǒng)有丟失網(wǎng)絡(luò)中的做法,同樣通過(guò)隊(duì)列長(zhǎng)度探測(cè)用信息來(lái)探測(cè)擁塞。但是,無(wú)丟失以太網(wǎng)中的交換機(jī)擁塞探測(cè)直接使用基于隊(duì)長(zhǎng)機(jī)制對(duì)于CBFC影響下的交換機(jī)擁塞探測(cè)仍然沒(méi)有更深一步的認(rèn)識(shí),如實(shí)際中周期性更新的CBFC機(jī)制本身對(duì)于交換機(jī)探測(cè)行為的干擾,以及受到流量控制影響下的真實(shí)端口狀態(tài)是否一定是不擁塞的,缺乏對(duì)于無(wú)丟失網(wǎng)絡(luò)交換端口狀態(tài)的深增加導(dǎo)致的延時(shí)增加將不能明確指示網(wǎng)絡(luò)中是否發(fā)生擁塞,不適用于作為無(wú)丟失綜上所述,擁塞探測(cè)作為擁塞管理架構(gòu)中的基石,我們需要為無(wú)丟失網(wǎng)絡(luò)設(shè)無(wú)丟失以太網(wǎng)中的擁塞管理的主要手段是流級(jí)別的擁塞控制,通過(guò)調(diào)節(jié)每流發(fā)送端驅(qū)動(dòng)的擁塞控制。這類(lèi)研究工作的思想是先探測(cè)擁塞的出現(xiàn),發(fā)送端獲取擁塞信號(hào)后做出速率調(diào)節(jié)。IEEEDCB工作組提出的QCN[43]屬于此類(lèi)。在其擁塞控制框架中,CP負(fù)責(zé)擁塞探測(cè),探測(cè)到擁塞后,交換機(jī)同時(shí)作為通知點(diǎn)(NotificationPoint,NP)產(chǎn)生顯式擁塞通知信號(hào)直接發(fā)送給發(fā)送端,最后發(fā)送端BIC-TCP[47]的自增型二分速率增長(zhǎng)算法。著QCN的思路,工業(yè)界后續(xù)基于商用交換機(jī)普遍支持的ECN功能發(fā)展了DC-送端如果在一個(gè)控制周期內(nèi)收到擁塞通知信號(hào),則降低流的發(fā)送速率,否則使用定時(shí)器和字節(jié)計(jì)數(shù)器決定流的增加速率,速率增長(zhǎng)規(guī)則與QCN類(lèi)似。DCQCN根據(jù)一個(gè)控制周期內(nèi)收到的擁塞信號(hào),采用啟發(fā)式的逐步調(diào)節(jié),因此可能需要多個(gè)計(jì)的流級(jí)別的擁塞控制,其算法本質(zhì)上是去掉了慢啟動(dòng)階段的DCTCP[25]。但是PCN[45]和HPCC[7]是兩個(gè)較新的采用復(fù)雜擁塞探測(cè)的擁塞控制機(jī)制。HPCC牲了長(zhǎng)流的吞吐量。此外每包攜帶INT信息也進(jìn)一步損害了吞吐量性能。PCN使用接收速率指導(dǎo)發(fā)送端的部分速率調(diào)節(jié),能夠較快收斂,但是嚴(yán)重?fù)砣麑?dǎo)致的積部署性較低,同時(shí)其交換機(jī)和端主機(jī)耦合的擁塞識(shí)別機(jī)制在不同網(wǎng)絡(luò)配置下可能負(fù)責(zé)做出調(diào)速?zèng)Q策,發(fā)送端只負(fù)責(zé)執(zhí)行限速。交換機(jī)使用一個(gè)PI控上述發(fā)送端驅(qū)動(dòng)的擁塞控制本質(zhì)上是被動(dòng)擁塞控制,即先探測(cè)到擁塞的出現(xiàn)擁塞控制的主要思想是以“先請(qǐng)求再分配”方式運(yùn)行的主動(dòng)傳輸:顯式分配瓶頸鏈路的帶寬并主動(dòng)防止擁塞[55]。因此能夠達(dá)到較好的延時(shí)和吞吐量性能。這些方案通常讓每條流在啟動(dòng)后的第一個(gè)RTT內(nèi)線(xiàn)速傳輸數(shù)據(jù)包,后續(xù)的傳輸將顯式分配帶寬。在ExpressPass中,接收端收到新流數(shù)據(jù)包后,通過(guò)控制反饋的控制報(bào)文RTT數(shù)據(jù)的可用帶寬,能夠避免端點(diǎn)處以及網(wǎng)絡(luò)內(nèi)的擁塞。pHost、NDP和Homa采取類(lèi)似的做法,但是假設(shè)擁塞僅發(fā)生在端點(diǎn)處而網(wǎng)絡(luò)內(nèi)部不是瓶頸,因此僅能處理端點(diǎn)處的擁塞。然而,這類(lèi)主動(dòng)擁塞控制中第一個(gè)RTT的數(shù)據(jù)包由于線(xiàn)速發(fā)送也可能導(dǎo)致網(wǎng)絡(luò)內(nèi)擁塞的產(chǎn)生[55]。接收端驅(qū)動(dòng)的主動(dòng)擁塞控制需要接收端能夠在為大量發(fā)送端發(fā)送控制報(bào)文的同時(shí)保證線(xiàn)速的性能,實(shí)現(xiàn)代價(jià)高,尚未有在數(shù)據(jù)中心部署的案例。值得注意的是,接收端驅(qū)動(dòng)的主動(dòng)擁塞控制最早為傳統(tǒng)數(shù)據(jù)中心提出,并不是專(zhuān)為數(shù)據(jù)中心無(wú)丟失以太網(wǎng)設(shè)計(jì),但是這類(lèi)工作通常被認(rèn)為可以實(shí)現(xiàn)接近零的排隊(duì)時(shí)延和數(shù)據(jù)包丟失。節(jié)。其中交換機(jī)依賴(lài)隊(duì)長(zhǎng)信息和信用值的有無(wú)來(lái)判斷擁塞并識(shí)別擁塞流,但是在信用周期性更新的情況下可能會(huì)誤識(shí)別。此外,發(fā)送端的速率調(diào)節(jié)依賴(lài)預(yù)設(shè)的速擁塞隔離。認(rèn)識(shí)到鏈路層流量控制機(jī)制無(wú)法區(qū)分不同流而導(dǎo)致隊(duì)頭阻塞、不公平等問(wèn)題的局限,一些研究工作提出了擁塞隔離的思想以從根本上解決鏈路層靜態(tài)擁塞隔離的主要思路是根據(jù)提前獲知的流量模式和網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)定義流量類(lèi)別到VL的映射[58-59]。隨著網(wǎng)絡(luò)規(guī)模越來(lái)越大,并且交換機(jī)支持的VL的數(shù)動(dòng)態(tài)擁塞隔離的主要思路是交換機(jī)先探測(cè)出擁塞流再為擁塞流動(dòng)態(tài)分配特定以及數(shù)據(jù)中心應(yīng)用的擁塞隔離方案。理想的交換機(jī)動(dòng)態(tài)隔離方案能夠近似模擬每流的隊(duì)列,能夠很大程度上避免隊(duì)頭阻塞等問(wèn)題。其機(jī)制的設(shè)計(jì)通常需要解決一總之,動(dòng)態(tài)擁塞隔離需要較多的交換機(jī)資源實(shí)現(xiàn)一系列復(fù)雜的機(jī)制,尚未有硬件網(wǎng)絡(luò)內(nèi)擁塞發(fā)生時(shí),將發(fā)生擁塞的鏈路上的流量分散到其他鏈路利用率較低的等價(jià)路徑上,可以暫時(shí)緩解網(wǎng)絡(luò)內(nèi)的擁塞。因此一些研究工作提出使用先進(jìn)的路由和流量模式,不同工作負(fù)載下需要重新計(jì)算。動(dòng)態(tài)路由的解決方案會(huì)根據(jù)網(wǎng)絡(luò)擁塞情況確定每個(gè)包走的路徑。文獻(xiàn)[68]提出了幾種基于源端的動(dòng)態(tài)路由方案。例如,當(dāng)源端網(wǎng)卡因受到鏈路層流控影響而停止發(fā)送時(shí)(或者當(dāng)被阻塞的數(shù)據(jù)包超交換機(jī)驅(qū)動(dòng)接收端驅(qū)動(dòng)的主動(dòng)擁塞控制數(shù)據(jù)中?擁塞控制交換機(jī)驅(qū)動(dòng)接收端驅(qū)動(dòng)的主動(dòng)擁塞控制基于ECN基于RTT基于INT專(zhuān)為?丟失以太?設(shè)計(jì)基于ECN基于RTT基于INT機(jī)制TCP-BoltTIMELY收斂速度慢慢較快較快較快快部署代價(jià)低低?延時(shí)和吞低延時(shí)低延時(shí)較低延時(shí)較低延時(shí)低延時(shí)路徑前先發(fā)送探測(cè)包探測(cè)可選路徑是否是擁塞的。基于源端的動(dòng)態(tài)路由方案只有端點(diǎn)處的局部信息,無(wú)法保證快速將數(shù)據(jù)包分配到負(fù)載低的路徑。因此,目前一些商用InfiniBand交換機(jī)支持直接根據(jù)端口負(fù)載狀況選擇等價(jià)路徑[69]。只能短暫地緩解網(wǎng)絡(luò)內(nèi)部發(fā)生的擁塞,對(duì)發(fā)生在網(wǎng)絡(luò)最后一跳處的擁塞(也稱(chēng)端端點(diǎn)主動(dòng)擁塞控制。一些研究工作[70-72]提出采用主動(dòng)擁塞控制的思想來(lái)避免由多對(duì)一流量模式導(dǎo)致的端點(diǎn)擁塞。使用輕量級(jí)的預(yù)留握手協(xié)議,發(fā)送端首先發(fā)送傳輸請(qǐng)求,接收端收到請(qǐng)求后返回授權(quán)發(fā)送方的發(fā)送時(shí)刻。同時(shí)為了降低協(xié)議內(nèi)被丟棄。通常,由于該機(jī)制只能解決最后一跳端點(diǎn)處發(fā)生的擁塞,需要與其他圖2.1總結(jié)對(duì)比了無(wú)丟失以太網(wǎng)擁塞控制相關(guān)研究工作。目前發(fā)送端驅(qū)動(dòng)的擁路層流量控制的影響,其速率調(diào)節(jié)可能是混亂的;或者使用高精度高代價(jià)的擁塞信號(hào),難以擴(kuò)展到大規(guī)模無(wú)丟失以太網(wǎng)。交換機(jī)驅(qū)動(dòng)的擁塞控制機(jī)制和接收端驅(qū)動(dòng)的主動(dòng)擁塞控制機(jī)制部署代價(jià)較高,需要對(duì)現(xiàn)有交換機(jī)和硬件網(wǎng)卡做復(fù)雜的修改,也難以適用于高速的可擴(kuò)展的無(wú)丟失以太網(wǎng)。此外,數(shù)據(jù)中心時(shí)延敏感業(yè)務(wù)是是是是否是否是的流量和吞吐量敏感業(yè)務(wù)的流量同時(shí)存在于網(wǎng)絡(luò)中,而已有方案都難以兼顧低延適用于可擴(kuò)展的無(wú)丟失網(wǎng)絡(luò)。自適應(yīng)路由和端點(diǎn)主動(dòng)擁塞控制機(jī)制由于其本質(zhì)上端的擁塞控制機(jī)制在無(wú)丟失網(wǎng)絡(luò)中是必要的,近年來(lái)受到了工業(yè)界和學(xué)術(shù)界的廣泛關(guān)注[7,18,45,49,74-75]。工作組[43]和IBTA組織制定的InfiniBand規(guī)范[14]都定義了在各自網(wǎng)絡(luò)中的擁塞管過(guò)深入觀察和分析,本文發(fā)現(xiàn)由于未能正確認(rèn)識(shí)到逐跳流量控制的影響,現(xiàn)有無(wú)丟失網(wǎng)絡(luò)中的擁塞探測(cè)機(jī)制存在不當(dāng)之處。在無(wú)丟失網(wǎng)絡(luò)中,交換機(jī)端口可以在發(fā)送模式會(huì)對(duì)交換機(jī)的擁塞探測(cè)行為產(chǎn)生意想不到的影響,包括導(dǎo)致隊(duì)列累積和根據(jù)一系列的觀察和理解,本章定義了交換機(jī)端口的三元狀態(tài),并提出了無(wú)指擁塞態(tài)、不擁塞態(tài)和待定態(tài)。處于擁塞態(tài)的端口是發(fā)生擁塞的地方,其隊(duì)列長(zhǎng)度的增加不是由于端口被暫停傳輸引起的。本章將ON-OFF發(fā)送模式中的端口狀態(tài)命名為待定態(tài),因?yàn)槠鋵?shí)際輸入速率可能由于上游端口處于ON-OFF發(fā)送模式而被掩蓋。本章詳細(xì)闡述了三態(tài)之間的狀態(tài)轉(zhuǎn)換,特別是從待定狀態(tài)到擁塞狀態(tài)的轉(zhuǎn)換,這是無(wú)丟失網(wǎng)絡(luò)中擁塞探測(cè)的關(guān)鍵。本章為主流無(wú)丟失網(wǎng)絡(luò)(即CEE和 優(yōu)先級(jí)流量控制(PFC)PAUSE數(shù)據(jù)包優(yōu)先級(jí)流量控制(PFC)XoffXonFCTBSFCTBS FCCL ++ABR基于信用的流量控制(CBPC)基于信用的流量控制(CBPC)發(fā)送模式和隊(duì)列長(zhǎng)度的演化特征來(lái)探測(cè)三元狀態(tài)之間的轉(zhuǎn)換。測(cè)試床和大量仿真實(shí)驗(yàn)表明,TCD可以準(zhǔn)確探測(cè)出擁塞端口,并識(shí)別出擁塞流和受到逐跳流量控制表明,已有擁塞控制算法可以通過(guò)對(duì)擁塞流執(zhí)行激進(jìn)的速率調(diào)整和對(duì)待定流進(jìn)行溫和的速率調(diào)節(jié)獲得更好的性能。采用真實(shí)工作負(fù)載的仿真實(shí)驗(yàn)表明,結(jié)合TCD采用了基于信用的流量控制機(jī)制CBFC,如圖3.1所示。本小節(jié)具體介紹這兩種流在PFC中,當(dāng)端口入隊(duì)列長(zhǎng)度超過(guò)一個(gè)閾值xoff時(shí),下游交換機(jī)向上游交消息[14,76],消息內(nèi)容是分配的緩沖區(qū)大小和ABR大小之和。上游交換機(jī)為每個(gè)記錄已發(fā)送的塊總數(shù)。收到FCCL消息后,可用信用的數(shù)量即是FCPFC在每個(gè)優(yōu)先級(jí)隊(duì)列上運(yùn)行。CBFC在每個(gè)VS0S1S0S1S2A0A14T1S2A0A14InfiniBand交換機(jī)中,每端口支持的優(yōu)先級(jí)隊(duì)列數(shù)量和VL數(shù)量都是和暫停(OFF)之間交替。如果端口被暫停(OFF則到達(dá)的數(shù)據(jù)包將排隊(duì)等待當(dāng)逐跳的流量控制生效時(shí)(在無(wú)丟失網(wǎng)絡(luò)中是不可避免的交換機(jī)端口在ON和OFF之間的交替可能會(huì)給交換機(jī)的擁塞探測(cè)行為帶來(lái)意想不到的問(wèn)題。本節(jié)通過(guò)在單擁塞點(diǎn)場(chǎng)景和多擁塞點(diǎn)場(chǎng)景中進(jìn)行細(xì)粒度的仿真實(shí)驗(yàn),來(lái)研究逐跳的我們采用如圖3.2所示的拓?fù)?,該拓?fù)湟彩悄壳皵?shù)據(jù)中心網(wǎng)絡(luò)多根樹(shù)拓?fù)洌ㄈ绾虵ECN(IBCC[14])分別是CEE和InfiniBand中的擁塞探測(cè)機(jī)制。擁塞控制算0000404000應(yīng)被探測(cè)到發(fā)生了擁塞。然而,由于發(fā)生在端口P3處的擁塞擴(kuò)展至上游交換機(jī),只應(yīng)在端口P3處被標(biāo)記ECN/FECN。雖然F1的部分?jǐn)?shù)據(jù)包在端口P2被標(biāo)記為0000404000擁塞探測(cè)。在InfiniBand中,交換機(jī)根據(jù)隊(duì)長(zhǎng)信息以及信用信息探測(cè)擁塞。當(dāng)隊(duì)擁塞探測(cè)。受逐跳流量控制影響的端口也可以定期地收到一些信用。在新信用到在本場(chǎng)景中,端口P2成為端口P3之外的第二ON和OFF之間交替,并且產(chǎn)生了隊(duì)列累積。同時(shí),因?yàn)榫酆陷斎肓髁克俾食^(guò)恢復(fù)正常發(fā)送,表明端口P3處的擁塞得到緩解。之后,端口P2仍然有持久的隊(duì)列累積。注意端口P2的隊(duì)長(zhǎng)演化與單擁塞點(diǎn)場(chǎng)景不同,單擁塞點(diǎn)場(chǎng)景中端口P2理想情況下,在多擁塞點(diǎn)場(chǎng)景中,當(dāng)發(fā)送速率在ON和OFF之間交替時(shí),交端口是否發(fā)生了擁塞可能是不可知的。如圖3.3(a)和圖3.4(a)所示,在CEE中,從用時(shí),之前因暫停而積壓的數(shù)據(jù)包會(huì)立即以線(xiàn)路速率發(fā)送。從交換機(jī)的局部角度總結(jié):本節(jié)詳細(xì)的觀察和分析表明,現(xiàn)有的擁塞探測(cè)機(jī)制無(wú)法正確識(shí)別ON-OFF發(fā)送模式的影響,導(dǎo)致無(wú)丟失網(wǎng)絡(luò)(如CEE和InfiniBand探測(cè)結(jié)果。對(duì)具有ON-OFF發(fā)送模式的端口的細(xì)粒度觀察表明,一個(gè)端口可能有?不擁塞(0端口持續(xù)開(kāi)啟(ON)并且沒(méi)有累積的隊(duì)列。?擁塞(1端口處于持續(xù)開(kāi)啟(ON)的狀態(tài),輸出速率為線(xiàn)速,其中隊(duì)列待定狀態(tài)是逐跳流量控制引入的ON-OFF調(diào)節(jié)導(dǎo)致的,該狀態(tài)對(duì)于沒(méi)有逐跳流量控制機(jī)制的傳統(tǒng)網(wǎng)絡(luò)來(lái)說(shuō)是一種新的狀態(tài)。假設(shè)一個(gè)交換機(jī)端口在開(kāi)始時(shí)以包先出隊(duì)傳輸。在待定狀態(tài)期間,數(shù)據(jù)包可能隨時(shí)到達(dá)。最后,端口恢復(fù)以持續(xù)為了進(jìn)一步闡述端口離開(kāi)待定狀態(tài)后的狀態(tài),本節(jié)以不同擁塞樹(shù)之間關(guān)系為 擁塞樹(shù)的根節(jié)點(diǎn)擁塞樹(shù)的葉?節(jié)點(diǎn)eee樹(shù)b(a)分離(b)重疊(c)覆蓋(1)分離:兩棵擁塞樹(shù)在網(wǎng)絡(luò)中同時(shí)存在,并且沒(méi)有重疊的葉子節(jié)點(diǎn)或根節(jié)點(diǎn)。擁塞樹(shù)的根節(jié)點(diǎn)處于擁塞狀態(tài)。如果其中一棵擁塞樹(shù)消失,則葉子節(jié)點(diǎn)從待定狀態(tài)過(guò)渡到不擁塞狀態(tài),根節(jié)點(diǎn)從擁塞狀態(tài)過(guò)渡到不擁塞狀態(tài)。在單擁塞點(diǎn)場(chǎng)持續(xù)ON,隊(duì)?減持續(xù)ON,隊(duì)?減擁塞樹(shù)b的根節(jié)點(diǎn)都處于擁塞狀態(tài)。如果一棵擁塞樹(shù)先消失,則重疊的葉子節(jié)點(diǎn)無(wú)丟失網(wǎng)絡(luò)擁塞探測(cè)的首要目標(biāo)是探測(cè)交換機(jī)的擁塞端口。擁塞端口是擁塞樹(shù)的根節(jié)點(diǎn),通過(guò)它們的流量是擁塞的罪魁禍?zhǔn)?,即擁塞流。擁塞?shù)的葉子節(jié)點(diǎn)端口從待定狀態(tài)解除后有可能立即形成新的擁塞樹(shù)。因此,擁塞探測(cè)的關(guān)鍵是捕第3.4.1節(jié)首先介紹三元狀態(tài)之間的轉(zhuǎn)換條件。第3.4.2節(jié)給出了ON-OFF模型圖3.6展示了交換機(jī)端口中三態(tài)之間的狀態(tài)轉(zhuǎn)換??傮w而言,狀態(tài)轉(zhuǎn)換條件①和②與有丟失網(wǎng)絡(luò)中類(lèi)似,其中隊(duì)列長(zhǎng)度是主要的轉(zhuǎn)換條件,但是端口是持續(xù)開(kāi)ON發(fā)送模式和ON-OFF發(fā)送模式。到待定狀態(tài)的轉(zhuǎn)換(③和⑥)。一旦端口進(jìn)入ON-OFF發(fā)送模式,端口就會(huì)從待定狀態(tài)到非擁塞或擁塞狀態(tài)的轉(zhuǎn)換(④和⑤)。從待定狀態(tài)到不擁塞狀(1)離開(kāi)待定狀態(tài)的條件首先是端口從ON-OFF發(fā)送模式轉(zhuǎn)換到連續(xù)ON模(2)離開(kāi)待定狀態(tài)后進(jìn)入擁塞狀態(tài)或不擁塞狀態(tài)的條件需要考慮隊(duì)列長(zhǎng)度演積壓的數(shù)據(jù)包。此時(shí)較長(zhǎng)的隊(duì)列長(zhǎng)度不能反映該端口是擁塞的。如果從待定態(tài)釋放后,隊(duì)列長(zhǎng)度減小,說(shuō)明其實(shí)際輸入速率沒(méi)有超過(guò)線(xiàn)速,端口轉(zhuǎn)換為不擁塞狀態(tài)。如果從待定態(tài)釋放后隊(duì)列長(zhǎng)度不減并且超過(guò)閾值,端口轉(zhuǎn)換到擁塞狀態(tài)。為了獲得隊(duì)列長(zhǎng)度變化的趨勢(shì),交換機(jī)可以每個(gè)周期T檢查隊(duì)列大小。一旦隊(duì)列長(zhǎng)度在當(dāng)前周期T增加并超過(guò)一個(gè)閾值,則當(dāng)前狀態(tài)轉(zhuǎn)變?yōu)閾砣麪顟B(tài)。如果任何一通過(guò)待定端口的流可能只是受害者流。通過(guò)提供待定狀態(tài)的信息,交換機(jī)擁塞探測(cè)使得端到端的擁塞控制機(jī)制能夠根據(jù)不同的要求對(duì)待定流和擁塞流進(jìn)行不同的速率調(diào)節(jié)。如表3.1所示,交換機(jī)可以重用兩比特ECN標(biāo)記位支持三元擁塞通知。1ONONB1ONONOON數(shù)據(jù)包可能沿路徑經(jīng)過(guò)多個(gè)狀態(tài)不同的端口,如果一個(gè)數(shù)據(jù)包首先通過(guò)一個(gè)待定基于三態(tài)之間的狀態(tài)轉(zhuǎn)換,本章提出了無(wú)丟失網(wǎng)絡(luò)的交換機(jī)三元擁塞探測(cè)機(jī)它決定何時(shí)進(jìn)入和離開(kāi)待定狀態(tài),以及轉(zhuǎn)換到擁塞狀態(tài)。下面關(guān)鍵的問(wèn)題是確定CB1/B0RiRdτε擁塞流的擁塞度,定義為(Ri?Rd)/C本節(jié)構(gòu)建了一個(gè)如圖3.7所示的概念性O(shè)N-OFF模型來(lái)描述無(wú)丟失網(wǎng)絡(luò)中Ton在穩(wěn)態(tài)下,該隊(duì)列長(zhǎng)度和ON-OFF發(fā)送模式的動(dòng)態(tài)行為是不斷重復(fù)的。主要的參端口發(fā)送后,需要一段時(shí)間后才能生效。假設(shè)τ是響應(yīng)時(shí)間,即生成ON/OFF消息與下游端口感知到輸入速率相應(yīng)變化之間的時(shí)間間隔,那么實(shí)際的最大和最小Rd是擁塞流的平均輸出速率,即擁塞流在擁塞的出端口分配到的帶寬。在ON-OFF模式下,Ri總是大于Rd。這里定義ε來(lái)表示擁塞流所經(jīng)歷的擁塞程度,接收端發(fā)送數(shù)據(jù)的一般擁塞場(chǎng)景,由于最簡(jiǎn)單的情況是兩個(gè)發(fā)送端競(jìng)爭(zhēng)一條瓶頸鏈路,則相當(dāng)于在所有擁塞場(chǎng)景中一條擁塞流可以分配的最大帶寬是C/2。因此ε足以適應(yīng)大多數(shù)情況,使得交換機(jī)能夠區(qū)分出ON-OFF發(fā)送模式和連續(xù)ON模ε減小,觸發(fā)逐跳流量控制的頻率也降低。實(shí)際上,一個(gè)非常小的ε是不合適的,Rd(Gbps)TRd(Gbps)Ton(us)0是待定狀態(tài),則表示端口剛剛從ON-OFF發(fā)送模式中釋放出來(lái),交換機(jī)檢查隊(duì)列長(zhǎng)度在最后一個(gè)T周期內(nèi)是增大還是減小。在T周期并且LAST_STATE是待定狀態(tài),則不標(biāo)記任何數(shù)據(jù)包。如果隊(duì)列長(zhǎng)度不減并且大于閾值,則交換機(jī)探測(cè)到擁塞狀態(tài)的轉(zhuǎn)換。一旦隊(duì)列長(zhǎng)度減小到低于閾值,或者在PFC中,交換機(jī)端口在收到來(lái)自下游端口的PAUSE幀時(shí)停止傳輸,并在到達(dá)排隊(duì)的數(shù)據(jù)包也可能被傳輸。因?yàn)镻FC是由端口入隊(duì)列長(zhǎng)度觸發(fā)的,所以可發(fā)送?個(gè)數(shù)據(jù)包計(jì)算當(dāng)前Ton是 是 Ton<Ton<max(Ton)?否否否否否LAST_STATE為不擁塞重置定時(shí)器/FCCLLAST_STATE是待定態(tài)?是標(biāo)記CE;LAST是標(biāo)記CE;LAST_STATE為擁塞否否收到是收到記錄隊(duì)?是RESUME幀記錄隊(duì)?是LAST_STATELAST_STATE為擁塞T時(shí)間內(nèi)隊(duì)?減?LAST_LAST_STATE為不擁塞參數(shù)設(shè)置。在PFC中,B1?B0即為xoff和xon的差值,推薦值為2MTU[18]。參數(shù)τ由幾個(gè)部分組成。簡(jiǎn)而言之,當(dāng)端口接收器準(zhǔn)備好發(fā)出控制消息(PAUSE幀/RESUME幀)時(shí),該消息不能中斷端口上正在進(jìn)行的數(shù)據(jù)包傳輸。在最壞的情況下,消息將延遲MTU/C時(shí)間。處理完控制消息后,發(fā)送方將輸出速率更改為ON或OFF。在最壞的情況下,它需要等待另一個(gè)MTU/C。最后,τ也由兩倍的傳播延遲tp組成??傻忙?2MTU/C+2tp。對(duì)于從待定狀態(tài)釋放后檢查隊(duì)據(jù)包大小時(shí)恢復(fù)傳輸。FCCL消息中攜帶信用數(shù)量,該消息定期發(fā)送到上游端口。包被首先傳輸,然后新到達(dá)的數(shù)據(jù)包也可能被傳輸。由于流控消息FCCL是根據(jù)時(shí)間而不是入口隊(duì)列長(zhǎng)度觸發(fā)的,所以在InfiniBand中不能直接采用式(3.3)中ONONON … PAUSERESUMEPAUSERESUMEPAUSE在RESUME期間到達(dá)和離開(kāi)的數(shù)據(jù)包被PAUSE住的數(shù)據(jù)包ONONONONTcTcTcTc當(dāng)前更新周期有credit的數(shù)據(jù)包上個(gè)更新周期沒(méi)有credit?被延遲的數(shù)據(jù)包推導(dǎo)出的max(Ton)。實(shí)際的B1和B0在不同的擁塞情假設(shè)交換機(jī)的入端口VL的緩沖區(qū)大小是B,它必須大時(shí)間。注意符號(hào)時(shí)間在不同鏈路速度下不同。為4ns和1ns[14]。對(duì)于從待定狀態(tài)釋放后檢查隊(duì)列長(zhǎng)度減小/增大的周期T,建議寄存器來(lái)完成其功能,而當(dāng)今的商用交換機(jī)具有豐富的寄存器資源。例如,要計(jì)算當(dāng)前Ton,端口的每個(gè)優(yōu)先級(jí)隊(duì)列/VL只需要一個(gè)寄存器來(lái)記錄的結(jié)束時(shí)間。TCD還需要寄存器來(lái)記錄LAST_STATE和隊(duì)列長(zhǎng)度。與傳統(tǒng)的標(biāo)記20304050(s)20304050(s)(s)與現(xiàn)在交換機(jī)檢查隊(duì)列長(zhǎng)度的功能類(lèi)似。max(Ton)可以預(yù)先配置,因?yàn)樗袇?shù)(ε、C、τ和Tc)都是預(yù)先知道的或在無(wú)丟失網(wǎng)絡(luò)中可配置的。整體計(jì)算復(fù)雜度為O(1)。隨著越來(lái)越多的交換機(jī)支持可編程和開(kāi)放的數(shù)據(jù)平面,檢查時(shí)間戳和隊(duì)列長(zhǎng)度減小/增大的操作可以在交換機(jī)數(shù)據(jù)平面以線(xiàn)速實(shí)現(xiàn),而無(wú)需控制平面的參大小的元數(shù)據(jù)信息[46]。際的RESUME周期長(zhǎng)度可能會(huì)出現(xiàn)波動(dòng)。然而,優(yōu)先級(jí)調(diào)度不會(huì)對(duì)TCD產(chǎn)生顯或三個(gè)可用于數(shù)據(jù)傳輸?shù)膬?yōu)先級(jí)隊(duì)列[5,15-16]。在InfiniBand交換機(jī)中,InfiniBand我們構(gòu)建了基于圖3.2拓?fù)涞囊粋€(gè)緊湊拓?fù)洌ń粨Q機(jī)T0直接與交換機(jī)T2連8259910G網(wǎng)卡,用作四端口交換機(jī)。基本的二層交換機(jī)實(shí)現(xiàn)參考?jí)K都綁定在單獨(dú)的一個(gè)CPU核上。我們按照IEEE802.1Qbb[6]實(shí)在PFC下的TCD中,xoff設(shè)置為800KB,xon設(shè)置為770KB。參數(shù)ε值為0.04。本節(jié)將ε調(diào)整至0.04是由于軟件DPDK的處理會(huì)引入不確定的延時(shí)。在DPDK實(shí)現(xiàn)中,PAUSE幀和RESUME幀的響應(yīng)時(shí)間之間存在不可忽略的隨機(jī)差定端口P0和擁塞端口。本實(shí)驗(yàn)關(guān)注端主機(jī)觀察到的數(shù)據(jù)包的標(biāo)記情況。圖3.11展在單擁塞點(diǎn)場(chǎng)景下,端口P2和端口P1經(jīng)歷了從待定狀態(tài)到不擁塞狀態(tài)的轉(zhuǎn)8006004002008006004002008006004002008006004002000.00.51.01.52.02.50.00.51.01.52.02.5800600400200800600400200C800600400200800600400200C低。因此端口P2被探測(cè)為擁塞狀態(tài),并且數(shù)據(jù)包被標(biāo)記CE。由于端口P2TCD可以通過(guò)準(zhǔn)確探測(cè)擁塞狀態(tài)和待定狀態(tài)來(lái)使隊(duì)頭阻塞發(fā)生時(shí)的受害者流使用圖3.2中的拓?fù)鋪?lái)評(píng)估典型的隊(duì)頭阻塞場(chǎng)景中TCD的性能。鏈路<S0-T0>和不應(yīng)被探測(cè)為擁塞流。如果一條流中標(biāo)有CE的數(shù)據(jù)包數(shù)量大于零,則認(rèn)為該流被錯(cuò)誤地探測(cè)為擁塞流。對(duì)于CEE,主機(jī)S0~S1和A0~A14根據(jù)具有指數(shù)分布的到達(dá)間隔時(shí)間的重尾Hadoop工作負(fù)載[85]生成流量。主機(jī)A0~A14上的工作負(fù)載生成器同步生成流量以模擬并發(fā)的突發(fā)。默認(rèn)的擁塞控制算法是DCQCN(CEE)MPI和I/O消息[86]。如表3.3所示,在兩個(gè)網(wǎng)絡(luò)中,都有被探測(cè)到經(jīng)歷擁塞的受害8006004002008006004002008006004002008006004002000.00.51.01.52.02.50.00.51.01.52.02.5800600400200800600400200800600400200800600400200max(Ton)過(guò)期后立即探測(cè)到待定狀態(tài)的釋放,太小的max(Ton)可能會(huì)導(dǎo)致將待定狀態(tài)錯(cuò)誤地探測(cè)為擁塞狀態(tài)或不擁塞狀態(tài)。另一方面,太大的max(Ton)也可能推遲對(duì)擁塞狀態(tài)的探測(cè)。為了評(píng)估ε的參數(shù)敏感性,本小節(jié)使用不同的ε值重復(fù)上的主要目標(biāo)不是提出無(wú)丟失網(wǎng)絡(luò)中最佳的擁塞控制算法,而是強(qiáng)調(diào)準(zhǔn)確擁塞探測(cè)的重要性。借助TCD,我們可以通過(guò)考慮不同的擁塞狀態(tài)來(lái)增強(qiáng)現(xiàn)有的端到端擁6040200.20.150.10.756040200.20.150.10.750.050.0250CECE標(biāo)記的數(shù)據(jù)包CECE標(biāo)記的流(0,10K)[10K,100K)[100K,1M)[1M,+)ALL受害者流大小(Byte)((ms)UE標(biāo)記的流突發(fā)流大小(Byte)0.80.60.40.20.0流可能是不應(yīng)該降速的受害者流。另一方面,盲目增加待定流的速率可能會(huì)加劇交換機(jī)使用TCD后,接收端NP將CE/UE信息傳送回RP。發(fā)送端在收到帶有UE標(biāo)記的CNP時(shí)將不更新發(fā)送速率開(kāi)源項(xiàng)目[87]開(kāi)發(fā)的。PFC的閾值xoff和xon分別為320KB和318KB。其余參數(shù)設(shè)置為文獻(xiàn)[18]中的推薦值。 0.1K0.3K0.4K0.55K0.6K0.8K26K4.8M9.7M0.1K0.3K0.4K0.55K0.6K0.8K26K4.8M9.7M23K500K3.2M28M23K500K3.2M28M(Byte)(Byte)流完成時(shí)間主要得益于對(duì)擁塞流的激進(jìn)減速,因?yàn)槎塘鞯乃俾孰y以受到端到端擁塞控制的調(diào)節(jié)。激進(jìn)的減速帶來(lái)更少的擁塞擴(kuò)展,因此短流會(huì)經(jīng)歷更低的排隊(duì)延DCQCN不會(huì)錯(cuò)誤地讓受害者流量降速。而如果沒(méi)有TCD,一些受害者流被探測(cè)送速度,從而導(dǎo)致更多的隊(duì)列累積和更大程度的擁塞擴(kuò)展。結(jié)果,更多的受害者非常嚴(yán)重,簡(jiǎn)單地增加α對(duì)擁塞流激進(jìn)減速不能夠有效緩解此時(shí)的擁塞??傮w而言,DCQCN與TCD相結(jié)合可以在突發(fā)短流引起擁塞時(shí)提高受害者流的流完成時(shí)我們調(diào)整流生成速率使得平均鏈路負(fù)載為60%。實(shí)驗(yàn)生成了4萬(wàn)條具有指數(shù)分布分位的流完成時(shí)間放緩比。流完成時(shí)間放緩比是通過(guò)實(shí)際的流完成時(shí)間除以理想512K1M2M4MALL消息大小(Byte)2K4K16K32K512K1M2M4MALL消息大小(Byte)DCQCN對(duì)于中等長(zhǎng)度和短流實(shí)現(xiàn)了更好的流完成時(shí)間放緩比性能。結(jié)的流完成時(shí)間放緩比與DCQCN幾乎相同,這是因?yàn)檫@些長(zhǎng)流的性能瓶頸在于嚴(yán)1更改為2,以積極降低擁塞流的速率。仿真器是基于M開(kāi)源項(xiàng)目[88]開(kāi)發(fā)的,并且添加了對(duì)IBCC和TCD的支持來(lái)擴(kuò)展此合成工作負(fù)載:本小節(jié)選擇了典型MPI和I/O作業(yè)的合成通信模式來(lái)模擬多個(gè)作業(yè)共享網(wǎng)絡(luò)的高性能計(jì)算場(chǎng)景[86]。該網(wǎng)絡(luò)是一個(gè)具有1024個(gè)服務(wù)器的Fat-TIMELY(0,10K)[10K,100K)[100K,1M)[1M,+)ALL受害者流大小(Byte)TIMELYUE標(biāo)記的流突發(fā)流大小(Byte)0.80.60.40.20.0于每個(gè)機(jī)架,隨機(jī)選擇四臺(tái)服務(wù)器作為I/O服務(wù)器來(lái)接收來(lái)自I/O客戶(hù)端的I/O流量。然后隨機(jī)選擇25%的服務(wù)器作為I/O客戶(hù)端。其余服務(wù)器是MPI客戶(hù)端和TCD還可以使基于延時(shí)的擁塞控制算法受益。TIMELY[19]使用RTT的變化于零并且Tlow<RTT<Thigh,數(shù)據(jù)包又同時(shí)被UE標(biāo)記,則發(fā)送端不會(huì)更新發(fā)送時(shí),受害者流的發(fā)送速率不會(huì)降低。圖3.18(a)顯示了圖3.2拓?fù)湎率芎α鞯钠骄餍阅?,其中主機(jī)A0~A14生成不同大小的突發(fā)短流。圖3.18(b)顯示了受害者流的TIMELY+TCD(p99)TIMELY+TCD(p95) TIMELY+TCD(mid)TIMELY+TCD(p99)TIMELY+TCD(p95) TIMELY+TCD(mid)0.1K0.3K0.4K0.55K0.6K0.8K26K4.8M9.7M0.1K0.3K0.4K0.55K0.6K0.8K26K4.8M9.7M(Byte)TIMELY+TCD(p99)TIMELY+TCD(p95)TIMELY+TCD(mid)23K500K3.2M28M23K500K3.2M28M(Byte)40(Gbps)(Gbps)204402004平均流完成時(shí)間性能和待定流的比例。類(lèi)似地,隨著突發(fā)短流大小的增加,更多在突發(fā)短流開(kāi)始時(shí)同時(shí)向R0發(fā)送四條長(zhǎng)流。圖3.20展示了速率調(diào)節(jié)策略下,四條流的速率將保持不變,因?yàn)樗鼈冎唤?jīng)過(guò)待定的端口P2。吞吐量的下降是因?yàn)橹鹛髁靠刂崎_(kāi)始生效,鏈路<L0-T2>發(fā)生了隊(duì)頭阻塞。結(jié)果口P3處擁塞解除后,端口P2變?yōu)閾砣丝凇H缓笏臈l流轉(zhuǎn)換為擁塞流,擁塞控是另一種探測(cè)狀態(tài)轉(zhuǎn)換的設(shè)計(jì)選擇。TCD依靠預(yù)先配置的max(Ton)來(lái)決定是否進(jìn)入和離開(kāi)待定狀態(tài)。根據(jù)構(gòu)建的ON-OFF模型和實(shí)驗(yàn)評(píng)估,本章認(rèn)為一個(gè)合適這種固定max(Ton)的方式只會(huì)有限地推遲間以一個(gè)很低的頻率切換。為了整體設(shè)計(jì)和實(shí)現(xiàn)的簡(jiǎn)單性,TCD做出了在這些極與現(xiàn)有擁塞控制算法合作。積極降低擁塞流的速率并溫和地調(diào)整待定流的速率是本章對(duì)在無(wú)丟失網(wǎng)絡(luò)中將TCD與現(xiàn)有擁塞控制算法結(jié)合的初步建議。第3.5.2節(jié)中的案例研究只是驗(yàn)證上述見(jiàn)解的簡(jiǎn)單示例。然而,如果網(wǎng)絡(luò)中沒(méi)有觸發(fā)PFC或CBFC,那么簡(jiǎn)單地對(duì)擁塞流采取比現(xiàn)有擁塞控制算法更激進(jìn)的減速可能會(huì)損害鏈路利用率和吞吐量性能。鑒于在實(shí)際生產(chǎn)經(jīng)驗(yàn)中,PFC或CBFC的觸發(fā)是無(wú)法完全避免的[5,90-91],本章認(rèn)為針對(duì)擁塞流和待定流確定適當(dāng)?shù)乃俾收{(diào)整本章重新認(rèn)識(shí)了無(wú)丟失網(wǎng)絡(luò)的交換機(jī)擁塞探測(cè)問(wèn)題,并為主流的無(wú)丟失網(wǎng)絡(luò)(無(wú)丟失以太網(wǎng)和InfiniBand)提出了三元擁塞探測(cè)機(jī)制TCD。本章定義了一種稱(chēng)為待定狀態(tài)的新端口狀態(tài),給出了三元端口狀態(tài)的定義,并通過(guò)構(gòu)建ON-OFF模型確定了三元狀態(tài)的轉(zhuǎn)換條件。測(cè)試床和大量仿真實(shí)驗(yàn)表明,TCD可以準(zhǔn)確地探測(cè)出擁塞端口,識(shí)別出擁塞流以及被逐跳流量控制影響的流。案例研究表明,現(xiàn)近年來(lái),工業(yè)界和學(xué)術(shù)界都在努力開(kāi)發(fā)專(zhuān)用的擁塞控制機(jī)制以促進(jìn)無(wú)丟失以太網(wǎng)的大規(guī)模部署。按擁塞信號(hào)的來(lái)源劃分,主要有兩種技術(shù)路線(xiàn):需要交換機(jī)輔助的擁塞控制和無(wú)需交換機(jī)輔助的擁塞控制。作為交換機(jī)輔助擁塞控制機(jī)制的的速率調(diào)整可能會(huì)導(dǎo)致速率收斂緩慢。更糟糕的是,一旦發(fā)生隊(duì)頭阻塞,基于隊(duì)列長(zhǎng)度的ECN信號(hào)不能提供正確的擁塞指示。HPCC[7]提出依靠交換機(jī)提供的高較高的數(shù)據(jù)包捎帶開(kāi)銷(xiāo),犧牲了長(zhǎng)流的吞吐量性能。TIMELY[19]提倡發(fā)展么訴諸全新的技術(shù)來(lái)設(shè)計(jì)擁塞控制。然而,已有工作都在一定程度上忽略了無(wú)丟),各種問(wèn)題。因此,本章提出的問(wèn)題是:是否可以通過(guò)充分利用無(wú)丟失以太網(wǎng)的固受第3章提出的三元擁塞探測(cè)機(jī)制TCD[92]的啟發(fā),本章借助于為無(wú)丟失網(wǎng)以太網(wǎng)的擁塞控制機(jī)制。TCD能夠捕獲交換機(jī)中逐跳流量控制和擁塞探測(cè)行為之間的交互,因此可以準(zhǔn)確地區(qū)分受逐跳流量控制影響的端口狀態(tài)。通過(guò)重用ECN地處理受PFC影響的流以平衡擁塞擴(kuò)散和高吞吐量是至關(guān)重要的。此外,本章觀察到由于無(wú)丟失網(wǎng)絡(luò)具有數(shù)據(jù)包守恒的固有特性,ACK驅(qū)動(dòng)是一種指導(dǎo)擁塞流速生)永遠(yuǎn)不會(huì)被丟棄,所以發(fā)送數(shù)據(jù)包的接收速率以及網(wǎng)絡(luò)中持有的過(guò)多的傳輸速,以及(3)利用ACK序列信息在發(fā)送端施加源停止?fàn)顟B(tài)。源暫停狀態(tài)旨在準(zhǔn)確快速地消除由于過(guò)多的擁塞流數(shù)據(jù)包而導(dǎo)致的隊(duì)列堆積。ACK指導(dǎo)的擁塞流降行精細(xì)和有針對(duì)性的速率調(diào)節(jié),并在發(fā)送端施加間歇性停止操作以排出交換機(jī)緩(3)在SoftRoCE[93]中實(shí)現(xiàn)了ACC并通過(guò)實(shí)驗(yàn)評(píng)估ACC。大規(guī)模仿真表明ACC可以同時(shí)實(shí)現(xiàn)低延遲和高吞吐量。在各種工作負(fù)載下,與高精度高代價(jià)的HPCC相比,ACC可將短流和長(zhǎng)流的第99百分位流完成時(shí)間至多降低40%和超過(guò)了瓶頸鏈路帶寬。因此,擁塞控制的主要目標(biāo)是高效率,即快速使聚合流量速率匹配瓶頸鏈路帶寬。事實(shí)上,由于幾個(gè)特有的問(wèn)題,無(wú)丟失以太網(wǎng)迫切需要所有擁塞流經(jīng)過(guò)的路徑成為擁塞樹(shù)的主分支。當(dāng)去往非擁塞點(diǎn)的擁塞無(wú)關(guān)流經(jīng)過(guò)主分支時(shí),后壓效應(yīng)可能會(huì)進(jìn)一步誘發(fā)次生分支的產(chǎn)生,進(jìn)而發(fā)生隊(duì)頭阻塞。在ACK也會(huì)被阻塞。如果端主機(jī)依賴(lài)返回的ACK來(lái)獲取網(wǎng)絡(luò)狀態(tài),則阻塞的ACK可能會(huì)推遲真實(shí)網(wǎng)絡(luò)狀態(tài)的感知,從而影響擁塞控制算法的決策。其次,PFC還可以直接與交換機(jī)中的擁塞探測(cè)行為交互。一旦發(fā)生擁塞擴(kuò)展,隊(duì)列的輸入和輸可能會(huì)突然增加。當(dāng)擁塞已經(jīng)蔓延到上游時(shí),隊(duì)列的輸入流量模式可能被調(diào)節(jié)為ON-OFF模式。此外,在擁塞擴(kuò)展消失后,由于先前的PFC觸發(fā)而累積的隊(duì)列可能指示的是陳舊的擁塞狀態(tài)。簡(jiǎn)而言之,PFC會(huì)對(duì)所有基于隊(duì)列的擁塞探測(cè)行為是一種適用于無(wú)丟失網(wǎng)絡(luò)的

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論