通過(guò)組合調(diào)步和前向糾錯(cuò)來(lái)降低重傳時(shí)延的制作方法
【技術(shù)領(lǐng)域】
[0001]所公開(kāi)的主題提供用于降低在網(wǎng)絡(luò)上傳送的數(shù)據(jù)分組的重傳時(shí)延的方法和系統(tǒng)。更具體而言,本主題公開(kāi)提供通過(guò)實(shí)現(xiàn)分組調(diào)步(“調(diào)步”)與前向糾錯(cuò)(FEC)的組合來(lái)降低重傳時(shí)延的方法。
【背景技術(shù)】
[0002]在一些網(wǎng)絡(luò)系統(tǒng)中,分組時(shí)延有兩個(gè)主要原因:由于帶寬限制所致的時(shí)延串行時(shí)延、由于分組丟失所致的重傳時(shí)延。隨著網(wǎng)絡(luò)傳輸速度增加,來(lái)自串行時(shí)延的延遲貢獻(xiàn)減少。因此,重傳時(shí)延逐漸成為網(wǎng)絡(luò)延遲的主要貢獻(xiàn)者。
【發(fā)明內(nèi)容】
[0003]所公開(kāi)的主題涉及用于降低重傳時(shí)延的計(jì)算機(jī)實(shí)現(xiàn)的方法,包括為多個(gè)數(shù)據(jù)分組確定分組傳輸間隔;為所述多個(gè)分組確定冗余糾錯(cuò)信息;對(duì)所述多個(gè)分組到接受者的傳輸進(jìn)行調(diào)步,其中所述多個(gè)分組中的每一個(gè)基于所述分組傳輸間隔而被按照時(shí)間分隔。在某些方面中,所述方法可進(jìn)一步包括:一旦所述多個(gè)分組中的每一個(gè)被傳送,則將所述冗余糾錯(cuò)信息傳送給所述接受者。此外,所公開(kāi)的主題涉及用于降低重傳時(shí)延的系統(tǒng),包括一個(gè)或多個(gè)處理器;以及包括其中所存儲(chǔ)的指令的計(jì)算機(jī)可讀介質(zhì),所述指令當(dāng)由所述處理器執(zhí)行時(shí),使得所述處理器進(jìn)行包括以下的操作:為多個(gè)數(shù)據(jù)分組確定分組傳輸間隔,基于對(duì)所述多個(gè)數(shù)據(jù)分組的XOR求和為所述多個(gè)分組確定冗余糾錯(cuò)信息,對(duì)所述多個(gè)分組到接受者的傳輸進(jìn)行調(diào)步,其中所述多個(gè)分組中的每一個(gè)基于所述分組傳輸間隔而被按照時(shí)間分隔。在某些方面中,所述處理器可以進(jìn)一步執(zhí)行操作:一旦所述多個(gè)分組中的每一個(gè)被傳送則將所述冗余糾錯(cuò)信息傳送給所述接受者。在另一個(gè)方面中,本主題技術(shù)涉及一種包括其中所存儲(chǔ)的指令的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述指令當(dāng)由處理器執(zhí)行時(shí),使得所述處理器執(zhí)行包括以下的操作:為多個(gè)數(shù)據(jù)分組確定分組傳輸間隔,為所述多個(gè)分組確定冗余糾錯(cuò)信息,對(duì)所述多個(gè)分組到接受者的傳輸進(jìn)行調(diào)步,其中所述多個(gè)分組中的每一個(gè)基于所述分組傳輸間隔而被按照時(shí)間分隔。在某些方面中,所述處理器可以進(jìn)一步執(zhí)行操作:一旦所述多個(gè)分組的每一個(gè)被傳送則將所述冗余糾錯(cuò)信息傳送給所述接受者。應(yīng)當(dāng)理解,根據(jù)以下【具體實(shí)施方式】,本主題技術(shù)的其他配置將變得顯而易見(jiàn),其中以說(shuō)明的方式示出并描述本主題技術(shù)的各種配置。如將要實(shí)現(xiàn)的,本主題技術(shù)能夠有其他和不同的配置,并且它的一些細(xì)節(jié)能夠以各種其他方面進(jìn)行修改,皆不脫離本主題技術(shù)的范圍。因此,附圖和【具體實(shí)施方式】應(yīng)視為說(shuō)明性而非限制性。
【附圖說(shuō)明】
[0004]在所附權(quán)利要求中陳述本主題技術(shù)的某些特征。但是,所包括的提供進(jìn)一步理解的附圖圖示了所公開(kāi)的方面,并連同描述一起用于解釋本主題技術(shù)的原理。在附圖中:
[0005]圖1圖示了根據(jù)本主題公開(kāi)的某些方面的在其中會(huì)出現(xiàn)重傳分組丟失的網(wǎng)絡(luò)系統(tǒng)的框圖。
[0006]圖2圖示了根據(jù)本主題公開(kāi)的某些方面的在其中實(shí)現(xiàn)調(diào)步(pacing)和前向糾錯(cuò)的網(wǎng)絡(luò)系統(tǒng)的框圖。
[0007]圖3圖示了根據(jù)本主題公開(kāi)的某些方面的用于實(shí)現(xiàn)調(diào)步和前向糾錯(cuò)的示例過(guò)程。
[0008]圖4圖示了可用于實(shí)現(xiàn)本主題技術(shù)的一些方面的示例網(wǎng)絡(luò)系統(tǒng)。
[0009]圖5圖示了電子系統(tǒng)的示例,通過(guò)所述電子系統(tǒng)可以實(shí)現(xiàn)本主題技術(shù)的一些方面。
【具體實(shí)施方式】
[0010]下面闡述的【具體實(shí)施方式】旨在作為本主題技術(shù)的各種配置的描述,并非旨在表示可以實(shí)踐本主題技術(shù)的唯一配置。附圖合并于此并構(gòu)成【具體實(shí)施方式】的一部分?!揪唧w實(shí)施方式】包括為了提供對(duì)本主題技術(shù)的更透徹理解的特定細(xì)節(jié)。但是顯然,本主題技術(shù)不限于這里闡述的特定細(xì)節(jié),并且可以在沒(méi)有這些特定細(xì)節(jié)的情況下實(shí)踐本主題技術(shù)。在一些情況下,以框圖形式示出結(jié)構(gòu)和組件以便避免混淆本主題技術(shù)的概念。
[0011]圖1概念性地圖示了在其中出現(xiàn)重傳分組丟失的網(wǎng)絡(luò)系統(tǒng)100的框圖。網(wǎng)絡(luò)系統(tǒng)100包括具有發(fā)送器緩沖器103的發(fā)送器102、具有中介緩沖器105的中介104、以及接收器106。
[0012]發(fā)送器102、中介104和/或接收器106可以表示被配置為經(jīng)由通信網(wǎng)絡(luò)(諸如互聯(lián)網(wǎng))發(fā)送和/或接收數(shù)據(jù)分組的各種類型裝置。雖然圖1的示例將網(wǎng)絡(luò)系統(tǒng)100圖示為只包括三個(gè)裝置(例如,發(fā)送器102、中介104和接收器106),但是應(yīng)當(dāng)理解,在網(wǎng)絡(luò)系統(tǒng)100中可以包括更多數(shù)量的裝置。例如,多個(gè)裝置(例如,路由器、交換機(jī)、服務(wù)器、個(gè)人計(jì)算機(jī)和/或移動(dòng)裝置)可以被包括在網(wǎng)絡(luò)系統(tǒng)100中和/或存在于發(fā)送器102與接收器106之間的通信路徑上。
[0013]如圖所示,自發(fā)送器102發(fā)送的數(shù)據(jù)分組(例如,分組A、分組B和分組C)被中介104接收,并被傳送給接收器106。在某些實(shí)施方式中,在被傳送給接收器106之前,數(shù)據(jù)分組臨時(shí)存儲(chǔ)在發(fā)送器緩沖器103中。在路由到接收器106的途中,分組被中介104接收并被臨時(shí)存儲(chǔ)在中介緩沖器105中。如所示,在發(fā)送器緩沖器103中存在附加的存儲(chǔ)器空間,但是中介緩沖器105已經(jīng)達(dá)到最高填充水平并且不能接受附加數(shù)據(jù)。因此,不能存儲(chǔ)在中介緩沖器105中的由中介104所接收的數(shù)據(jù)分組被丟棄。作為示例,分組A被成功存儲(chǔ)在中介緩沖器105中并由中介104傳送給接收器106 ;但是,分組B和分組C(超出中介緩沖器105的當(dāng)前容量)被丟棄。因此,所丟棄的分組(例如,分組B和分組C)需要由發(fā)送器102重傳給接收器106。
[0014]與分組B和C的重傳相關(guān)聯(lián)的延遲被稱為“重傳延遲”。在某些方面中,中介104丟棄分組B的可能性與丟棄分組C的可能性相關(guān)。例如,如果在分組B到達(dá)時(shí)中介緩沖器105是滿的,則在分組C到達(dá)時(shí),存在更大的可能性中介緩沖器105仍然是滿的(隨后片刻)。在這種情況下,將分組丟失可能性(如同在分組B與分組C之間)稱為“相關(guān)”。
[0015]如上所述,在向接受者提供可用于重構(gòu)丟失分組(例如,分組B和C)的冗余糾錯(cuò)信息的情況下,通過(guò)使用前向糾錯(cuò)(FEC)技術(shù)有時(shí)候可以減少與分組丟失相關(guān)聯(lián)的延遲。作為示例,通過(guò)適當(dāng)?shù)募m錯(cuò)信息,接收器106可以重構(gòu)分組B和分組C的內(nèi)容,從而避免重傳的需要。但是在某些實(shí)施方式中,當(dāng)分組丟失高度相關(guān)時(shí)FEC技術(shù)不太有效,因?yàn)樵诔霈F(xiàn)分組丟失的情況下丟失糾錯(cuò)信息的可能性也加大。例如,分組C的丟失將指示,丟失跟隨分組C從發(fā)送器102發(fā)送給接收器106的FEC信息的可能性增加。
[0016]在一些情況下,通過(guò)將分組傳輸去相關(guān)可以減輕與相關(guān)分組丟失相關(guān)聯(lián)的延遲(delay)。將分組傳輸去相關(guān)的一種方法是,調(diào)步對(duì)分組傳輸進(jìn)行調(diào)步使得在數(shù)據(jù)流中在分組之間引入傳輸間隔(例如,分組傳輸間隔)。通過(guò)在分組之間引入傳輸間隔,可以給予中介緩沖器(例如,中介緩沖器105)更長(zhǎng)的時(shí)間周期來(lái)釋放可用于存儲(chǔ)后來(lái)接收的分組的存儲(chǔ)器資源。
[0017]在多個(gè)分組之間引入的傳輸間隔可以根據(jù)實(shí)施方式而變化。在某些方面中,可將傳輸間隔設(shè)置為固定和預(yù)定的時(shí)間周期。但是在某些實(shí)施方式中傳輸間隔可以基于諸如帶寬可用性和/或分組大小的一個(gè)或多個(gè)動(dòng)態(tài)網(wǎng)絡(luò)特性。作為進(jìn)一步的示例,分組傳輸間隔可以基于一個(gè)或多個(gè)網(wǎng)絡(luò)特性,諸如對(duì)于網(wǎng)絡(luò)中的一個(gè)或多個(gè)裝置(例如,中介104)的當(dāng)前可用的專用資源的度量。
[0018]圖2圖示了根據(jù)本技術(shù)的某些方面的在其中實(shí)現(xiàn)調(diào)步和FEC的網(wǎng)絡(luò)系統(tǒng)的框圖。圖2的網(wǎng)絡(luò)系統(tǒng)包括第一計(jì)算機(jī)202、第二計(jì)算機(jī)204和網(wǎng)絡(luò)206。如圖所示,網(wǎng)絡(luò)206被示出為傳送多個(gè)數(shù)據(jù)分組,諸如分組A、分組B、分組C和糾錯(cuò)分組207。應(yīng)當(dāng)理解,網(wǎng)絡(luò)206是通信網(wǎng)絡(luò)(例如互聯(lián)網(wǎng))的簡(jiǎn)化說(shuō)明,并且在網(wǎng)絡(luò)206的通信路徑中,在第一計(jì)