System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術(shù)實現(xiàn)步驟摘要】
本公開涉及用于可靠傳輸協(xié)議的速率更新引擎。
技術(shù)介紹
1、互聯(lián)網(wǎng)協(xié)議組是用于為通過互聯(lián)網(wǎng)或其它計算機網(wǎng)絡(luò)傳達信息的兩個設(shè)備之間的數(shù)據(jù)傳輸服務(wù)的通信協(xié)議的集合。傳輸控制協(xié)議(“tcp”)是例如通過局域網(wǎng)或廣域網(wǎng)在客戶端設(shè)備上運行的web瀏覽器應(yīng)用和在服務(wù)器設(shè)備上運行的web服務(wù)器應(yīng)用之間提供面向連接、可靠且有序的數(shù)據(jù)分組流傳遞的互聯(lián)網(wǎng)協(xié)議組的一部分。目前,使用諸如tcp的通信協(xié)議的數(shù)據(jù)中心遇到了某些問題。例如,聚播(incast)是一種通常在數(shù)據(jù)中心中發(fā)現(xiàn)的多對一通信模式,其在多個同步計算設(shè)備并行地向相同的接收器計算設(shè)備發(fā)送數(shù)據(jù)時可能導(dǎo)致聚播擁塞。
技術(shù)實現(xiàn)思路
1、本公開提供了一種可編程的擁塞控制引擎,其可以被用來實施各種擁塞控制例程以便避免或緩解通信網(wǎng)絡(luò)的遠程節(jié)點處的聚播擁塞,所述遠程節(jié)點諸如接收器計算設(shè)備。該擁塞控制引擎從遠程節(jié)點采集信息以監(jiān)視擁塞,并且因此可以使用速率更新引擎(rue)更新到遠程節(jié)點的分組傳輸?shù)乃俾省T搑ue可以與分組數(shù)據(jù)路徑分離。這將執(zhí)行擁塞控制所需的處理卸載到具有充分處理能力的硬件或軟件,并且進一步允許可以使用的一種或多種擁塞控制算法的類型的靈活性。
2、本公開的一個方面針對一種擁塞控制系統(tǒng),包括通信網(wǎng)絡(luò)中的第一節(jié)點的一個或多個第一處理器,其中該一個或多個第一處理器通信耦合至用于使用可靠傳輸協(xié)議接收數(shù)據(jù)分組的該通信網(wǎng)絡(luò)的分組數(shù)據(jù)路徑并且被配置為分析從第二節(jié)點所接收的分組并且根據(jù)對該數(shù)據(jù)分組的分析確定一個或多個擁塞指示符,該一個或多個擁塞指示符指
3、在一些示例中,該一個或多個第一處理器可以被配置為響應(yīng)于分組傳輸事件的發(fā)生而將所確定的一個或多個擁塞指示符提供至該一個或多個第二處理器。該分組傳輸事件可以是確認消息、非確認消息或分組重傳之一。
4、在一些示例中,該一個或多個擁塞指示符可以包括針對向該第二節(jié)點傳送的數(shù)據(jù)分組的以下至少一項:擁塞窗口、重傳超時、往返延遲、第二節(jié)點所確認的分組數(shù)量、重傳數(shù)量或所接收的明確擁塞通知的數(shù)量。
5、在一些示例中,該速率更新引擎可以包括專用硬件引擎。該速率更新引擎、一個或多個第一處理器和一個或多個第二處理器可以被包括在相同的硬件組件中。
6、在一些示例中,該速率更新引擎可以包括存儲指令的存儲器。該存儲器可以進一步包括被配置為對從該一個或多個第一處理器提供的輸入數(shù)據(jù)進行排隊的第一隊列,以及被配置為對提供至該一個或多個第一處理器的輸出數(shù)據(jù)進行排隊的第二隊列。該第一隊列可以是具有第一頭部指針和第一尾部指針的第一環(huán)形緩沖器。該第二隊列可以是具有第二頭部指針和第二尾部指針的第二環(huán)形緩沖器。該一個或多個第一處理器可以被配置為根據(jù)該第一尾部指針將速率更新請求推送至該第一環(huán)形緩沖器,并且根據(jù)該第二頭部指針從該第二環(huán)形緩沖器讀出速率更新請求。針對每個速率更新請求,該一個或多個第一處理器可以被配置為基于自前一個速率更新請求起的時間量是否超過預(yù)定延時閾值或者針對被傳送至第二節(jié)點的數(shù)據(jù)分組所接收到的ack分組的數(shù)量是否超過預(yù)定吞吐量閾值中的至少一個而確定是否將速率更新請求推送至該第一環(huán)形緩沖器。該一個或多個第一處理器可以被配置為確定在該第一環(huán)形緩沖器中排隊的速率更新請求的當時數(shù)量,如果在該第一環(huán)形緩沖器中排隊的速率更新請求的當時數(shù)量小于第一閾值量,則將速率更新請求推送該第一環(huán)形緩沖器,如果在該第一環(huán)形緩沖器中排隊的速率更新請求的當時數(shù)量大于第一閾值量且小于第二閾值量,自前一個速率更新請求起的時間量并未超過預(yù)定延時閾值,并且針對被傳送至第二節(jié)點的數(shù)據(jù)分組所接收到的ack分組的數(shù)量未超過預(yù)定吞吐量閾值,則避免該速率更新請求被推送至該第一環(huán)形緩沖器,如果在該第一環(huán)形緩沖器中排隊的速率更新請求的當時數(shù)量大于第二閾值量且小于第三閾值量,自前一個速率更新請求起的時間量未超過預(yù)定延時閾值,則避免該速率更新請求被推送該第一環(huán)形緩沖器,并且如果在該第一環(huán)形緩沖器中排隊的速率更新請求的當時數(shù)量大于第三閾值量、且以下兩個條件中的至少一個也被滿足:(i)自前一個速率更新請求起的時間量未超過預(yù)定延時閾值、以及(ii)針對被傳送至第二節(jié)點的數(shù)據(jù)分組所接收到的ack分組的數(shù)量未超過預(yù)定吞吐量閾值,則避免該速率更新請求被推送至該第一環(huán)形緩沖器。
7、本公開的另一個方面針對一種方法,包括:由通信協(xié)議系統(tǒng)中的第一節(jié)點的一個或多個處理器分析通過分組數(shù)據(jù)路徑從第二節(jié)點所接收的數(shù)據(jù)分組;由該一個或多個處理器根據(jù)該數(shù)據(jù)分組的分析確定一個或多個擁塞指示符,其中該一個或多個擁塞指示符指示針對通過該通信協(xié)議系統(tǒng)的可靠傳輸協(xié)議層向該第二節(jié)點傳送的數(shù)據(jù)分組的網(wǎng)絡(luò)擁塞;由該一個或多個處理器將所確定的一個或多個擁塞指示符傳送至與該分組數(shù)據(jù)路徑分離的速率更新引擎;由該一個或多個處理器從該速率更新引擎接收基于所確定的一個或多個擁塞控制參數(shù)的擁塞控制結(jié)果;并且由該一個或多個處理器基于該擁塞控制結(jié)果控制數(shù)據(jù)分組到該第二節(jié)點的傳輸。
8、在一些示例中,該方法可以進一步包括由該一個或多個處理器響應(yīng)于接收到確認消息、接收到非確認消息或重傳分組而生成速率更新請求。該方法可以進一步包括由該一個或多個處理器將該速率更新請求和與該速率更新請求相關(guān)聯(lián)的擁塞指示符傳送至郵箱機制的第一隊列,并且由該一個或多個處理器從該郵箱機制的第二隊列獲得該擁塞控制結(jié)果。該方法可以進一步包括至少部分基于該第一隊列的可用剩余容量限制向該第一隊列傳送的所生成的速率更新請求的數(shù)量。
9、在一些示例中,限制所生成的速率更新請求的數(shù)量可以涉及由該一個或多個處理器訪問該第一隊列的可用剩余容量,如果該第一隊列的可用剩余容量小于第一閾值量,則由該一個或多個處理器將該速率更新請求和與該速率更新請求相關(guān)聯(lián)的擁塞指示符傳送至該第一隊列,如果該第一隊列的可用剩余容量大于或等于第一閾值量,則由該一個或多個處理器確定自最近速率更新起已流逝的時間量,如果自最近速率更新起已流逝的時間量大于預(yù)定延時閾值,則由該一個或多個處理器將該速率更新請求和與該速率更新請求相關(guān)聯(lián)的擁塞指示符傳送至該第一隊列,并且如果自最近速率更新起已流逝的時間量小于或等于預(yù)定延時閾值,則由該一個或多個處理器避免向該第一隊列傳送速率更新請求,由此限制向該第一隊列傳送的速率更新請求的數(shù)量。
10、在一些示例中,限制所生成的速率更新請求的數(shù)量可以涉及由該一個或多個處理器訪問該第一隊列的可用剩余容量,如果該第一隊列的可用剩余容量小于第一閾值量,則由該一個或多個處理器將該速率更新請求和與該速率更新請求相關(guān)聯(lián)的擁塞指示符傳送至該第一隊列,并且如果該第一隊列的可用剩余容量大于或等于第一閾值量,則由該一個或本文檔來自技高網(wǎng)...
【技術(shù)保護點】
1.一種系統(tǒng),包括:
2.根據(jù)權(quán)利要求1所述的系統(tǒng),其中
3.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述一個或多個處理器被配置為從所述分組傳輸速率控制器接收指示更新的分組傳輸速率的擁塞控制結(jié)果,所述更新的分組傳輸速率基于一個或多個擁塞控制參數(shù)。
4.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述一個或多個擁塞指示符指示通過可靠傳輸協(xié)議層傳送的數(shù)據(jù)分組的網(wǎng)絡(luò)擁塞。
5.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述速率更新事件是確認消息、非確認消息或分組重傳之一。
6.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述一個或多個擁塞指示符包括針對向第二節(jié)點傳送的數(shù)據(jù)分組的以下至少一項:擁塞窗口、重傳超時、往返延遲、由所述第二節(jié)點所確認的分組數(shù)量、重傳數(shù)量、或者所接收的明確擁塞通知的數(shù)量。
7.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述緩沖器包括:
8.根據(jù)權(quán)利要求7所述的系統(tǒng),其中,所述第一隊列是具有第一頭部指針和第一尾部指針的第一環(huán)形緩沖器,并且其中,所述第二隊列是具有第二頭部指針和第二尾部指針的第二環(huán)形緩沖器。
9.根據(jù)權(quán)利要求
10.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述一個或多個處理器被配置為響應(yīng)于識別所述速率更新事件,基于將所述緩沖器的所述剩余可用容量與第一閾值容量值和小于所述第一閾值容量值的第二閾值容量值中的每一個進行比較來確定是否向所述分組傳輸速率控制器傳送速率更新請求。
11.根據(jù)權(quán)利要求10所述的系統(tǒng),其中,所述一個或多個處理器被配置為:
12.根據(jù)權(quán)利要求11所述的系統(tǒng),其中,所述第一標準集合包括以下至少一項:
13.根據(jù)權(quán)利要求12所述的系統(tǒng),其中,所述第二標準集合包括自所述前一個速率更新起的所述時間量超過所述預(yù)定延時閾值。
14.根據(jù)權(quán)利要求12所述的系統(tǒng),其中,所述第二標準集合包括以下兩項:
15.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述一個或多個處理器被配置為響應(yīng)于識別所述速率更新事件,基于將所述緩沖器的所述剩余可用容量與第一閾值容量值和小于所述第一閾值容量值的第二閾值容量值以及小于所述第二閾值容量值的第三閾值容量值中的每一個進行比較來確定是否向所述分組傳輸速率控制器傳送速率更新請求。
16.根據(jù)權(quán)利要求15所述的系統(tǒng),其中,所述一個或多個處理器被配置為:
17.根據(jù)權(quán)利要求16所述的系統(tǒng),其中:
18.一種方法,包括:
19.根據(jù)權(quán)利要求18所述的方法,其中,確定是否向所述分組傳輸速率控制器傳送速率更新請求進一步基于將所述緩沖器的所述剩余可用容量與第一閾值容量值、小于所述第一閾值容量值的第二閾值容量值和小于所述第二閾值容量值的第三閾值容量值中的每一個進行比較。
20.根據(jù)權(quán)利要求19所述的方法,其中,確定是否向所述分組傳輸速率控制器傳送速率更新請求包括:
...【技術(shù)特征摘要】
1.一種系統(tǒng),包括:
2.根據(jù)權(quán)利要求1所述的系統(tǒng),其中
3.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述一個或多個處理器被配置為從所述分組傳輸速率控制器接收指示更新的分組傳輸速率的擁塞控制結(jié)果,所述更新的分組傳輸速率基于一個或多個擁塞控制參數(shù)。
4.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述一個或多個擁塞指示符指示通過可靠傳輸協(xié)議層傳送的數(shù)據(jù)分組的網(wǎng)絡(luò)擁塞。
5.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述速率更新事件是確認消息、非確認消息或分組重傳之一。
6.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述一個或多個擁塞指示符包括針對向第二節(jié)點傳送的數(shù)據(jù)分組的以下至少一項:擁塞窗口、重傳超時、往返延遲、由所述第二節(jié)點所確認的分組數(shù)量、重傳數(shù)量、或者所接收的明確擁塞通知的數(shù)量。
7.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述緩沖器包括:
8.根據(jù)權(quán)利要求7所述的系統(tǒng),其中,所述第一隊列是具有第一頭部指針和第一尾部指針的第一環(huán)形緩沖器,并且其中,所述第二隊列是具有第二頭部指針和第二尾部指針的第二環(huán)形緩沖器。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其中,所述一個或多個處理器被配置為根據(jù)所述第一尾部指針將速率更新請求推送至所述第一環(huán)形緩沖器,并且根據(jù)所述第二頭部指針從所述第二環(huán)形緩沖器讀出由所述分組傳輸速率控制器生成的擁塞控制結(jié)果。
10.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述一個或多個處理器被配置為響應(yīng)于識別所述速率更新事件,基于將所述緩沖器的所述剩余可用容量與第一閾值容量...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:王曉明,普拉尚特·錢德拉,尼勒施·班索德,南迪塔·杜基帕蒂,哈桑·瓦塞爾,高塔姆·庫馬爾,王煒煌,邁克爾·馬蒂,尼古拉斯·麥克唐納,
申請(專利權(quán))人:谷歌有限責任公司,
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。