專利名稱:一種數(shù)據(jù)發(fā)送方法、裝置和通信系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明實施例通信技術(shù)領(lǐng)域,尤其是一種數(shù)據(jù)發(fā)送方法、裝置和通信系統(tǒng)。
背景技術(shù):
在通信傳輸中,為了增加鏈路容量,引入了鏈路捆綁技術(shù)(Bonding),其實質(zhì)是將 發(fā)送端和接收端之間的數(shù)條物理鏈路“組合”成邏輯上的一條聚合鏈路,其中聚合鏈路中的 各條物理鏈路被稱為聚合鏈路的子鏈路(或物理子鏈路)。聚合鏈路在邏輯上是一個整體, 其內(nèi)部組成和傳輸數(shù)據(jù)對上層服務(wù)是透明的。目前已經(jīng)存在相關(guān)的協(xié)議標準來對鏈路進行 捆綁,如在PPP協(xié)議(POINT TO POINT PROTOCOL,點對點通信協(xié)議)鏈路上的符合ML-PPP 協(xié)議(Multi-Link Point To Point Protocol,多鏈路點對點通信協(xié)議)的多鏈路捆綁技 術(shù),還有Ethernet (以太網(wǎng))傳輸上的符合Link Aggregation (鏈路聚合)協(xié)議的多鏈路 捆綁技術(shù)。捆綁鏈路可以增加鏈路容量,達到多個子鏈路傳輸帶寬之和。此外,捆綁鏈路中各 子鏈路互相動態(tài)備份,當某一子鏈路中斷時,其它子鏈路能夠迅速接替其工作,而不影響上 層相關(guān)業(yè)務(wù)。在選擇捆綁鏈路的子鏈路對報文進行調(diào)度分發(fā)時,需要保證報文到達對端時的亂 序程度和延時差滿足重組與延時要求,以便實現(xiàn)報文的保序,滿足各種業(yè)務(wù)的應(yīng)用。進一步 地,還要盡可能保證報文在多個子鏈路上的負荷均衡,以便充分利用多個子鏈路的傳輸帶
覓o現(xiàn)有的一種調(diào)度分發(fā)技術(shù)中,發(fā)送端對傳送的報文進行切片得到分片,并在分片 的報文頭上增加序號和報文識別頭,然后把分片均衡地平滑調(diào)度分發(fā)到各個子鏈路上,接 收端根據(jù)序號和報文識別頭進行分片重組,恢復(fù)出報文。這種調(diào)度分發(fā)技術(shù)可以很好地滿 足子鏈路的負荷均衡,但解決不了亂序問題,特別當各子鏈路帶寬差異較大或各子鏈路延 時差較大時,會導致接收端接收到的分片亂序嚴重,甚至超出重組窗口導致分片重組不起 來產(chǎn)生丟包,影響了傳輸效率?,F(xiàn)有的另一種調(diào)度分發(fā)技術(shù)中,發(fā)送端將報文分類成不同的報文流,同一種報文 流的報文只在一個子鏈路上進行順序傳輸。這種方法可以保證報文的順序,但當報文流的 種類較少或者各個報文流的流量不均時,分發(fā)到各個子鏈路上的報文將會出現(xiàn)不均衡,從 而導致部分子鏈路傳送利用率較低,影響了傳輸效率。
發(fā)明內(nèi)容
—方面,本發(fā)明實施例提供一種數(shù)據(jù)發(fā)送方法,包括確定聚合鏈路中各個子鏈路 上的報文全部傳送到對端所需要的總延時時間;根據(jù)各個子鏈路的總延時時間選擇一個子 鏈路,將待分發(fā)報文分發(fā)到所述子鏈路上進行傳輸。另一方面,本發(fā)明實施例提供一種數(shù)據(jù)發(fā)送裝置,包括確定模塊,用于確定聚合 鏈路中各個子鏈路上的報文全部傳送到對端所需要的總延時時間;選擇模塊,用于根據(jù)所述確定模塊所確定的各個子鏈路的總延時時間選擇一個子鏈路;分發(fā)模塊,用于將待分發(fā) 報文分發(fā)到所述選擇模塊選擇的子鏈路上進行傳輸。本發(fā)明實施例還提供一種通信系統(tǒng),包括上述數(shù)據(jù)發(fā)送裝置,以及接收上述數(shù)據(jù) 發(fā)送裝置所傳輸報文的數(shù)據(jù)接收裝置。本發(fā)明實施例確定聚合鏈路中各個子鏈路上的報文全部傳送到對端所需要的總 延時時間,基于各個子鏈路的總延時時間選擇一個子鏈路來分發(fā)報文,可以有效實現(xiàn)報文 傳輸?shù)谋P蚝透鱾€子鏈路的負載均衡,提高了傳輸?shù)男?。此外,還降低了發(fā)送端進行鏈路 捆綁時對物理鏈路帶寬以及延時的要求。
圖1為本發(fā)明實施例提供的一種數(shù)據(jù)發(fā)送方法流程示意圖。圖2為本發(fā)明實施例提供的延時參數(shù)獲取過程示意圖。圖3為本發(fā)明實施例提供的一種數(shù)據(jù)發(fā)送裝置結(jié)構(gòu)示意圖。圖4為本發(fā)明實施例提供的另一種數(shù)據(jù)發(fā)送裝置結(jié)構(gòu)示意圖。
具體實施例方式下面結(jié)合附圖對本發(fā)明實施例作具體說明。請參閱圖1,圖1為本發(fā)明實施例提供的一種數(shù)據(jù)方法流程示意圖。該方法主要包 括如下步驟。步驟102,確定各個子鏈路對應(yīng)的總延時時間。一條聚合鏈路中包括多個子鏈路,發(fā)送端通過所述多個子鏈路向?qū)Χ?即接收 端)發(fā)送報文。發(fā)送端確定各個子鏈路的總延時時間,即確定各個子鏈路上的報文全部傳 送到對端所需要的總延時時間;對任意一個子鏈路,發(fā)送端需要確定該任意一個子鏈路上 的報文全部傳送到接收端所需要的總延時時間。步驟104,選擇一個子鏈路,通過該子鏈路傳輸待分發(fā)報文。發(fā)送端根據(jù)各個子鏈路的總延時時間選擇一個子鏈路,將待分發(fā)報文分發(fā)到所述 子鏈路上進行傳輸。本發(fā)明實施例確定聚合鏈路中各個子鏈路上的報文全部傳送到對端所需要的總 延時時間,基于各個子鏈路的總延時時間選擇一個子鏈路來分發(fā)報文,可以有效實現(xiàn)報文 傳輸?shù)谋P蚝透鱾€子鏈路的負載均衡,提高了傳輸?shù)男?。此外,還降低了發(fā)送端進行鏈路 捆綁時對物理鏈路帶寬以及延時的要求。其中,在步驟102中,確定各個子鏈路上的報文全部傳送到對端所需要的總延時 時間至少可以采取如下的兩種方式。一種方式是,在發(fā)送端設(shè)置一個延時時間管理表,對任意一個子鏈路,在延時時間 管理表中記錄該子鏈路上的所有報文傳送到接收端的延時時間。接收端在分發(fā)報文時,通 過查找延時時間管理表,獲得各個子鏈路對應(yīng)的總延時時間。具體實現(xiàn)時,對任意一個子鏈路,可以在延時時間管理表中設(shè)置三個記錄項目,包 括子鏈路的標識,子鏈路對應(yīng)的總延時時間,以及子鏈路上最近分發(fā)報文的傳輸延時。發(fā) 送端分發(fā)一個報文到某個子鏈路上后,計算該報文在該子鏈路上傳送到對端所需要的延時時間(即子鏈路上最近分發(fā)報文的傳輸延時),并記錄在延時時間管理表中。在任意一個子 鏈路上傳輸?shù)谝粋€報文時,對應(yīng)的總延時時間等于第一個報文傳送到對端所需要的延時時 間,加上該子鏈路的鏈路延時時間,以后該子鏈路上每增加一個報文(即向該子鏈路每分 發(fā)一個報文),對應(yīng)的總延時時間就等于增加該報文之前的總延時時間加上新增加報文傳 送到對端所需要的延時時間,從而實現(xiàn)對該子鏈路對應(yīng)的總延時時間的動態(tài)更新。這樣發(fā) 送端通過延時時間管理表就可以獲得各個子鏈路對應(yīng)的總延時時間。在計算一個報文在某子鏈路上傳送到對端所需要的延時時間時,可以根據(jù)該子鏈 路的延時參數(shù)例如該子鏈路上每字節(jié)傳輸時間和該報文的總字節(jié)數(shù),計算出該報文傳送到 對端所需要的傳輸延時時間,另一種方式是,計算任意一個子鏈路上的所有報文傳送到對端所需要的傳輸延時 時間,加上所述任意一個子鏈路的鏈路延時時間,得到所述任意一個子鏈路對應(yīng)的總延時 時間。具體實現(xiàn)時,根據(jù)任意一個子鏈路上每字節(jié)傳輸時間和所述任意一個子鏈路上全 部報文的總字節(jié)數(shù),可以計算出所述任意一個子鏈路上的報文全部傳送到對端所需要的傳 輸延時時間,加上所述任意一個子鏈路的鏈路延時時間,得到所述任意一個子鏈路對應(yīng)的 總延時時間。請參閱圖2,圖2為本發(fā)明實施例提供的延時參數(shù)獲取過程示意圖。本實施例中延 時參數(shù)包括一個子鏈路上每字節(jié)傳輸時間和該子鏈路的鏈路延時時間。延時參數(shù)取決于子 鏈路本身的屬性,對任意一個子鏈路i(i為正整數(shù))來說,每字節(jié)傳輸時間可以用mi來表 示,子鏈路的鏈路延時時間可以用h來表示。延時參數(shù)獲取過程主要包括如下步驟。步驟202,在子鏈路上向?qū)Χ税l(fā)送至少兩個不同長度的測試報文。本實施例中,在任意一個子鏈路上向?qū)Χ税l(fā)送至少兩個不同長度的測試報文,其 中所述測試報文均攜帶有發(fā)送時間戳。以鏈路i為例,為方便說明,本實施例中發(fā)送端向?qū)?端發(fā)送兩個不同長度的測試報文al和a2,其中報文al攜帶的發(fā)送時間戳為tlO,長度為L1 個字節(jié),報文a2攜帶的發(fā)送時間戳為t20,長度為L2個字節(jié),L1和L2不相等。可以理解的 是,本實施例也適用于向?qū)Χ税l(fā)送三個或更多的測試報文。步驟204,接收對端返回的響應(yīng)報文,以獲得每個測試報文的發(fā)送時間戳和接收時 間戳。針對每個測試報文,對端會返回一個對應(yīng)的響應(yīng)報文。發(fā)送端接收對端對應(yīng)于每 個測試報文所分別返回的響應(yīng)報文,其中所述響應(yīng)報文均攜帶有對端接收到對應(yīng)測試報文 的接收時間戳,以及所述對應(yīng)測試報文的發(fā)送時間戳。在鏈路i上,發(fā)送端接收對端返回的兩個響應(yīng)報文bl和b2,響應(yīng)報文bl對應(yīng)于測 試報文al,響應(yīng)報文b2對應(yīng)于測試報文a2,其中報文bl中攜帶有對端接收到對應(yīng)測試報 文al的接收時間戳tll,以及報文al的發(fā)送時間戳tlO ;報文b2中攜帶有對端接收到對應(yīng) 測試報文a2的接收時間戳t21,以及報文a2的發(fā)送時間戳t20。步驟206,計算子鏈路的延時參數(shù)。根據(jù)所述至少兩個測試報文各自的接收時間戳、發(fā)送時間戳以及長度,計算出所 述任意一個子鏈路上的每字節(jié)傳輸時間和所述任意一個子鏈路的鏈路延時時間。
在子鏈路i上,根據(jù)測試報文al的接收時間戳til和發(fā)送時間戳tlO即可得到tll-tlO = m^Ll+rii (1)同樣地,根據(jù)報文b2中攜帶的對端測試報文a2的接收時間戳t21,以及報文a2的 發(fā)送時間戳t20,可以得到t21-t20 = mi*L2+ni (2) 結(jié)合公式(1)和(2),即可計算出子鏈路i上的每字節(jié)傳輸時間Hii和子鏈路i的 鏈路延時時間Iii。獲得子鏈路i上的延時參數(shù)例如每字節(jié)傳輸時間Hii和子鏈路i的鏈路延時時間 Hi后,可以進一步保存子鏈路i的延時參數(shù),以方便后續(xù)獲取子鏈路i對應(yīng)的總延時時間。 具體可以采用上述兩種獲取子鏈路對應(yīng)總延時時間的方式,即可得到子鏈路i對應(yīng)的總延 時時間,此處不再詳述。在步驟102中,確定各個子鏈路對應(yīng)的總延時時間后,步驟104中根據(jù)各個子鏈路 的總延時時間選擇一個子鏈路具體可以是選擇總延時時間最小或較小(小于等于最小的 總延時時間加上一預(yù)設(shè)偏置值)的子鏈路,例如可以是如下幾種方式;選擇各個總延時時間中的最小值對應(yīng)的子鏈路;或?qū)⒏鱾€總延時時間中的最小值和一個預(yù)設(shè)的偏置值相加得到一個門限值,從對應(yīng) 的總延時時間小于或等于該門限值的子鏈路中任意選擇一個子鏈路,其中偏置值可以根據(jù) 接收端可容忍的報文亂序程度來設(shè)置,一般按報文不亂序來設(shè)置為佳;或?qū)⒏鱾€總延時時間中的最小值和一個預(yù)設(shè)的偏置值相加得到一個門限值,根據(jù)待 分發(fā)報文的優(yōu)先級或者報文類型,從對應(yīng)的總延時時間小于或等于該門限值的子鏈路中選 擇一個子鏈路,其中偏置值可以根據(jù)接收端可容忍的報文亂序程度來設(shè)置,一般按報文不 亂序來設(shè)置為佳。具體地,若某子鏈路中上次傳輸?shù)膱笪暮痛职l(fā)報文的優(yōu)先級相同或報 文類型相同,且該子鏈路對應(yīng)的總延時時間和各個總延時時間中的最小值相減后的差值小 于或等于預(yù)設(shè)的偏置值,則可以選擇該子鏈路用來傳輸待分發(fā)報文。作為一種可選的方式,在分發(fā)報文之前,還可以對所述報文(即待分發(fā)報文)進行 調(diào)度,例如按照優(yōu)先級或報文類型進行調(diào)度,如果按照優(yōu)先級調(diào)度,可以進一步保證高優(yōu)先 級報文的QOS (服務(wù)質(zhì)量),如果按照報文類型調(diào)度,可以進一步保證同類型的報文不亂序。本發(fā)明實施例確定聚合鏈路中各個子鏈路上的報文全部傳送到對端所需要的總 延時時間,選擇最小或較小總延時時間對應(yīng)的子鏈路來分發(fā)報文,可以有效實現(xiàn)報文傳輸 的保序和各個子鏈路的負載均衡,提高了傳輸?shù)男?。此外,還降低了發(fā)送端進行鏈路捆綁 時對物理鏈路帶寬以及延時的要求。請參閱圖3,圖3為本發(fā)明實施例提供的一種數(shù)據(jù)發(fā)送裝置結(jié)構(gòu)示意圖。該裝置主 要包括確定模塊302,選擇模塊304和分發(fā)模塊306。其中,確定模塊302用于確定聚合鏈路中各個子鏈路上的報文全部傳送到對端所 需要的總延時時間。對聚合鏈路中的任一個子鏈路i,確定模塊302確定子鏈路i上的報文 全部傳送到對端所需要的延時時間。選擇模塊304用于根據(jù)所述確定模塊302所確定的各個子鏈路的總延時時間選擇 一個子鏈路。分發(fā)模塊306用于將待分發(fā)報文分發(fā)到所述選擇模塊304選擇的子鏈路上進行傳輸。在選擇模塊304選擇一個子鏈路后,分發(fā)模塊306通過該子鏈路向?qū)Χ税l(fā)送待分發(fā)報 文。本發(fā)明實施例確定聚合鏈路中各個子鏈路上的報文全部傳送到對端所需要的總 延時時間,基于各個子鏈路的總延時時間選擇一個子鏈路來分發(fā)報文,可以有效實現(xiàn)報文 傳輸?shù)谋P蚝透鱾€子鏈路的負載均衡,提高了傳輸?shù)男?。此外,還降低了發(fā)送端進行鏈路 捆綁時對物理鏈路帶寬以及延時的要求。請參閱圖4,圖4為本發(fā)明實施例提供的另一種數(shù)據(jù)發(fā)送裝置結(jié)構(gòu)示意圖。該裝置 主要包括確定模塊402,選擇模塊404和分發(fā)模塊406,這三個模塊的具體功能可以參加上 述實施例,此處不再詳敘。其中確定模塊402具體可以包括查找單元,用于查找延時時間管理表,獲得各個 子鏈路對應(yīng)的總延時時間。進一步地,確定模塊402還可以包括更新單元,用于計算所述待 分發(fā)報文在選擇模塊404所選擇的子鏈路上傳送到對端所需要的延時時間,并根據(jù)所述待 分發(fā)報文的延時時間更新所述子鏈路對應(yīng)的總延時時間?;蛘?,確定模塊402具體可以包括第一計算單元,用于根據(jù)任意一個子鏈路上每 字節(jié)傳輸時間和所述任意一個子鏈路上全部報文的總字節(jié)數(shù),計算所述任意一個子鏈路上 的報文全部傳送到對端所需要的傳輸延時時間;以及第二計算單元,用于將所述第一計算 單元計算出的傳輸延時時間和所述任意一個子鏈路的鏈路延時時間相加,得到所述任意一 個子鏈路對應(yīng)的總延時時間。其中選擇模塊404具體可以包括第一選擇單元,用于選擇各個總延時時間中的 最小值對應(yīng)的子鏈路;或第二選擇單元,用于將各個總延時時間中的最小值和一個預(yù)設(shè)的 偏置值相加得到一個門限值,從對應(yīng)的總延時時間小于或等于該門限值的子鏈路中任意選 擇一個子鏈路;或第三選擇單元,用于將各個總延時時間中的最小值和一個預(yù)設(shè)的偏置值 相加得到一個門限值,根據(jù)待分發(fā)報文的優(yōu)先級或者報文類型,從對應(yīng)的總延時時間小于 或等于該門限值的子鏈路中選擇一個子鏈路。在實際應(yīng)用時,第二選擇單元或第三選擇單元所使用的偏置值可以根據(jù)接收端可 容忍的報文亂序程度來設(shè)置,一般按報文不亂序來設(shè)置為佳。第三選擇單元在選擇子鏈路 時,若某子鏈路中上次傳輸?shù)膱笪暮痛职l(fā)報文的優(yōu)先級相同或報文類型相同,且該子鏈 路對應(yīng)的總延時時間和各個總延時時間中的最小值相減后的差值小于或等于預(yù)設(shè)的偏置 值,則可以選擇該子鏈路用來傳輸待分發(fā)報文。進一步地,本實施例提供的數(shù)據(jù)發(fā)送裝置還可以包括延時參數(shù)獲取模塊408,用 于在任意一個子鏈路上向?qū)Χ税l(fā)送至少兩個不同長度的測試報文,所述測試報文均攜帶有 發(fā)送時間戳;接收對端對應(yīng)于每個測試報文所分別返回的響應(yīng)報文,所述響應(yīng)報文均攜帶 有對端接收到對應(yīng)測試報文的接收時間戳,以及所述對應(yīng)測試報文的發(fā)送時間戳;根據(jù)所 述至少兩個測試報文各自的接收時間戳、發(fā)送時間戳以及長度,計算出所述任意一個子鏈 路上的每字節(jié)傳輸時間和所述任意一個子鏈路的鏈 路延時時間。具體地,延時參數(shù)獲取模塊408可以根據(jù)公式⑴和公式(2),計算出子鏈路i上 的每字節(jié)傳輸時間Hii和子鏈路i的鏈路延時時間IV確定模塊402確定子鏈路i上的報 文全部傳送到對端所需要的總延時時間時,可以利用延時參數(shù)獲取模塊408計算出的每字 節(jié)傳輸時間Hii和鏈路延時時間Ili。
此外,在上述各種可能的實現(xiàn)方式上,數(shù)據(jù)發(fā)送裝置還可以包括調(diào)度模塊410,用 于對所述待分發(fā)報文按照優(yōu)先級或報文類型進行調(diào)度,并發(fā)送給所述分發(fā)模塊。
本發(fā)明實施例確定聚合鏈路中各個子鏈路上的報文全部傳送到對端所需要的總 延時時間,選擇一個總延時時間最小或較小的子鏈路來分發(fā)報文,可以有效實現(xiàn)報文傳輸 的保序和各個子鏈路的負載均衡,提高了傳輸?shù)男省4送?,還降低了發(fā)送端進行鏈路捆綁 時對物理鏈路帶寬以及延時的要求。此外,本發(fā)明實施例還提供了一種通信系統(tǒng),包括數(shù)據(jù)接收裝置和上述的數(shù)據(jù)發(fā) 送裝置,數(shù)據(jù)接收裝置和數(shù)據(jù)發(fā)送裝通過聚合鏈路相連接,數(shù)據(jù)發(fā)送裝置確定聚合鏈路中 各個子鏈路上的報文全部傳送到對端所需要的總延時時間,并選擇一個子鏈路,將待分發(fā) 報文分發(fā)到所述子鏈路上進行傳輸。本實施例可以有效實現(xiàn)報文傳輸?shù)谋P蚝透鱾€子鏈路 的負載均衡,提高了傳輸?shù)男?。本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述所有實施例方法中的全部或部分步驟是 可以通過程序來指令相關(guān)的硬件完成,該程序可以存儲于一種計算機可讀存儲介質(zhì)中。最后應(yīng)說明的是以上實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡 管參照前述實施例對本發(fā)明進行了詳細的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當理解其依然 可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分技術(shù)特征進行等同替 換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的精 神和范圍。
權(quán)利要求
一種數(shù)據(jù)發(fā)送方法,其特征在于,包括確定聚合鏈路中各個子鏈路上的報文全部傳送到對端所需要的總延時時間;根據(jù)各個子鏈路的總延時時間選擇一個子鏈路,將待分發(fā)報文分發(fā)到所述子鏈路上進行傳輸。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述確定聚合鏈路中各個子鏈路上的報 文全部傳送到對端所需要的總延時時間包括查找延時時間管理表,獲得各個子鏈路對應(yīng)的總延時時間。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,還包括計算所述待分發(fā)報文在所述子鏈路上傳送到對端所需要的延時時間;根據(jù)所述待分發(fā)報文的延時時間,在所述延時時間管理表中更新所述子鏈路對應(yīng)的總 延時時間。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述確定聚合鏈路中各個子鏈路上的報 文全部傳送到對端所需要的總延時時間包括根據(jù)任意一個子鏈路上每字節(jié)傳輸時間和所述任意一個子鏈路上全部報文的總字節(jié) 數(shù),計算所述任意一個子鏈路上的報文全部傳送到對端所需要的傳輸延時時間,加上所述 任意一個子鏈路的鏈路延時時間,得到所述任意一個子鏈路對應(yīng)的總延時時間。
5.根據(jù)權(quán)利要求3或4所述的方法,其特征在于,還包括在所述任意一個子鏈路上向?qū)Χ税l(fā)送至少兩個不同長度的測試報文,所述測試報文均 攜帶有發(fā)送時間戳;接收對端對應(yīng)于每個測試報文所分別返回的響應(yīng)報文,所述響應(yīng)報文均攜帶有對端接 收到對應(yīng)測試報文的接收時間戳,以及所述對應(yīng)測試報文的發(fā)送時間戳;根據(jù)所述至少兩個測試報文各自的接收時間戳、發(fā)送時間戳以及長度,計算出所述任 意一個子鏈路上的每字節(jié)傳輸時間和所述任意一個子鏈路的鏈路延時時間。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)各個子鏈路的總延時時間選擇 一個子鏈路包括選擇各個總延時時間中的最小值對應(yīng)的子鏈路;或?qū)⒏鱾€總延時時間中的最小值和一個預(yù)設(shè)的偏置值相加得到一個門限值,從對應(yīng)的總 延時時間小于或等于該門限值的子鏈路中任意選擇一個子鏈路;或?qū)⒏鱾€總延時時間中的最小值和一個預(yù)設(shè)的偏置值相加得到一個門限值,根據(jù)待分發(fā) 報文的優(yōu)先級或者報文類型,從對應(yīng)的總延時時間小于或等于該門限值的子鏈路中選擇一 個子鏈路。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述將待分發(fā)報文分發(fā)到所述子鏈路上 進行傳輸之前,還包括對所述待分發(fā)報文按照優(yōu)先級或報文類型進行調(diào)度。
8.一種數(shù)據(jù)發(fā)送裝置,其特征在于,包括確定模塊,用于確定聚合鏈路中各個子鏈路上的報文全部傳送到對端所需要的總延時 時間;選擇模塊,用于根據(jù)所述確定模塊所確定的各個子鏈路的總延時時間選擇一個子鏈分發(fā)模塊,用于將待分發(fā)報文分發(fā)到所述選擇模塊選擇的子鏈路上進行傳輸。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述確定模塊包括查找單元,用于查找延時時間管理表,獲得各個子鏈路對應(yīng)的總延 時時間;或者所述確定模塊包括第一計算單元,用于根據(jù)任意一個子鏈路上每字節(jié)傳輸時間和所述任意一個子鏈路上 全部報文的總字節(jié)數(shù),計算所述任意一個子鏈路上的報文全部傳送到對端所需要的傳輸延 時時間;第二計算單元,用于將所述第一計算單元計算出的傳輸延時時間和所述任意一個子鏈 路的鏈路延時時間相加,得到所述任意一個子鏈路對應(yīng)的總延時時間。
10.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述選擇模塊包括第一選擇單元,用于選擇各個總延時時間中的最小值對應(yīng)的子鏈路;或第二選擇單元,用于將各個總延時時間中的最小值和一個預(yù)設(shè)的偏置值相加得到一個 門限值,從對應(yīng)的總延時時間小于或等于該門限值的子鏈路中任意選擇一個子鏈路;或第三選擇單元,用于將各個總延時時間中的最小值和一個預(yù)設(shè)的偏置值相加得到一個 門限值,根據(jù)待分發(fā)報文的優(yōu)先級或者報文類型,從對應(yīng)的總延時時間小于或等于該門限 值的子鏈路中選擇一個子鏈路。
11.根據(jù)權(quán)利要求8所述的裝置,其特征在于,還包括調(diào)度模塊,用于對所述待分發(fā)報文按照優(yōu)先級或報文類型進行調(diào)度,并發(fā)送給所述分 發(fā)模塊。
12.根據(jù)權(quán)利要求8所述的裝置,其特征在于,還包括延時參數(shù)獲取模塊,用于在任意一個子鏈路上向?qū)Χ税l(fā)送至少兩個不同長度的測試報 文,所述測試報文均攜帶有發(fā)送時間戳;接收對端對應(yīng)于每個測試報文所分別返回的響應(yīng) 報文,所述響應(yīng)報文均攜帶有對端接收到對應(yīng)測試報文的接收時間戳,以及所述對應(yīng)測試 報文的發(fā)送時間戳;根據(jù)所述至少兩個測試報文各自的接收時間戳、發(fā)送時間戳以及長度, 計算出所述任意一個子鏈路上的每字節(jié)傳輸時間和所述任意一個子鏈路的鏈路延時時間。
13.—種通信系統(tǒng),其特征在于,包括如權(quán)利要求8-12中任一項所述的數(shù)據(jù)發(fā)送裝置, 以及接收所述數(shù)據(jù)發(fā)送裝置所傳輸報文的數(shù)據(jù)接收裝置。
全文摘要
本發(fā)明實施例提供一種數(shù)據(jù)發(fā)送方法,包括確定聚合鏈路中各個子鏈路上的報文全部傳送到對端所需要的總延時時間;根據(jù)各個子鏈路的總延時時間選擇一個子鏈路,將待分發(fā)報文分發(fā)到所述子鏈路上進行傳輸。本實施例可以有效實現(xiàn)報文傳輸?shù)谋P蚝透鱾€子鏈路的負載均衡,提高了傳輸?shù)男?。此外,本發(fā)明實施例還提供了一種數(shù)據(jù)發(fā)送裝置。
文檔編號H04L29/06GK101867573SQ20101017836
公開日2010年10月20日 申請日期2010年5月12日 優(yōu)先權(quán)日2010年5月12日
發(fā)明者湯紅山 申請人:華為技術(shù)有限公司