本發(fā)明涉及通信技術(shù)領域,特別是涉及一種傳輸路徑選擇方法及裝置。
背景技術(shù):
在數(shù)據(jù)采集系統(tǒng)中,一般存在著采集節(jié)點,轉(zhuǎn)發(fā)節(jié)點和存儲節(jié)點這三種節(jié)點。數(shù)據(jù)從采集點產(chǎn)生,通過轉(zhuǎn)發(fā)節(jié)點進行數(shù)據(jù)的匯聚轉(zhuǎn)發(fā),最終進入到存儲節(jié)點,進行數(shù)據(jù)的最終存儲。
在這個過程中,數(shù)據(jù)需要通過傳輸路徑進行數(shù)據(jù)的傳輸,在傳輸過程中,由于各種原因引入的故障,例如:設備故障、節(jié)點不可用或者設備不可用等問題,都有可能導致數(shù)據(jù)丟失。這對于一些對數(shù)據(jù)準確性要求高的應用或業(yè)務來說,是不可接受的,因為數(shù)據(jù)的丟失會影響正常的業(yè)務操作,例如:對于計算系統(tǒng)可用性的應用來說,數(shù)據(jù)丟失的容忍度就很低,數(shù)據(jù)的丟失會影響用戶的使用體驗??梢?,在數(shù)據(jù)傳輸時選擇可靠的傳輸路徑是至關重要的。
技術(shù)實現(xiàn)要素:
本發(fā)明提供了一種傳輸路徑選擇方法及裝置,以解決現(xiàn)有技術(shù)中存在的在數(shù)據(jù)傳輸過程中數(shù)據(jù)容易丟失的問題。
為了解決上述問題,本發(fā)明公開了一種傳輸路徑選擇方法,所述方法包括:針對每條傳輸路徑,確定預設時間內(nèi)各條傳輸路徑中存儲節(jié)點收到的第一心跳包數(shù);其中,傳輸路徑中心跳包由采集節(jié)點獲取,通過轉(zhuǎn)發(fā)節(jié)點傳輸至存儲節(jié)點;依據(jù)各所述第一心跳包數(shù),計算各條傳輸路徑的第一可用性值;針對每條傳輸路徑,獲取各條傳輸路徑中轉(zhuǎn)發(fā)節(jié)點收到的第二心跳包數(shù);依據(jù)各所述第二心跳包數(shù),計算各條所述傳輸路徑的第二可用性值;針對每條傳輸路徑,依據(jù)所述傳輸路徑對應的第一可用性值以及第二可用性值,確定所述傳輸路徑對應的第三可用性值;選擇各條傳輸路徑對應的第三可用性值中的最大值對應的傳輸路徑進行數(shù)據(jù)傳輸。
優(yōu)選地,所述針對每條傳輸路徑,依據(jù)所述傳輸路徑對應的第一可用性值以及第二可用性值,確定所述傳輸路徑對應的第三可用性值的步驟包括:針對每條傳輸路徑,將所述傳輸路徑對應的第一可用性值以及第二可用性值相乘,將所得乘積作為所述傳輸路徑對應的第三可用性值。
優(yōu)選地,所述依據(jù)各所述第一心跳包數(shù),計算各條傳輸路徑的第一可用性值的步驟包括:針對每條傳輸路徑,通過第一可用性值計算公式計算所述各條傳輸路徑對應的第一可用性值:所述第一可用性值=所述第一心跳包數(shù)/所述預設時間內(nèi)存儲節(jié)點收到心跳包數(shù)的理論值。
優(yōu)選地,在所述選擇各條傳輸路徑對應的第三可用性值中最大值對應的傳輸路徑進行數(shù)據(jù)傳輸?shù)牟襟E之后,所述方法還包括:當添加新的傳輸路徑時,計算所述新的傳輸路徑的第三可用性值,其中,所述新的傳輸路徑的第一可用性值根據(jù)第一可用性值的計算公式計算得出,所述第一可用性值作為所述新的傳輸路徑的第三可用性值;將所述新的傳輸路徑的第三可用性值與選擇的傳輸路徑的第三可用性值進行比較;選擇新的傳輸路徑的第三可用性值與選擇的傳輸路徑對應的第三可用性值中的最大值對應的傳輸路徑進行數(shù)據(jù)傳輸。
優(yōu)選地,所述依據(jù)各所述第二心跳包數(shù),計算各條所述傳輸路徑的第二可用性值的步驟包括:針對每條傳輸路徑,通過第二可用性值計算公式計算所述各條傳輸路徑對應的第二可用性值:所述第二可用性值=所述第二心跳包數(shù)/所述預設時間內(nèi)轉(zhuǎn)發(fā)節(jié)點收到心跳包數(shù)的理論值;其中,當所述預設時間內(nèi)轉(zhuǎn)發(fā)節(jié)點收到心跳包數(shù)的理論值為0時,所述第二可用性值為1。
為了解決上述問題,本發(fā)明還公開了一種傳輸路徑選擇裝置,所述裝置包括:確定模塊,用于針對每條傳輸路徑,確定預設時間內(nèi)各條傳輸路徑中存儲節(jié)點收到的第一心跳包數(shù);其中,傳輸路徑中心跳包由采集節(jié)點獲取,通過轉(zhuǎn)發(fā)節(jié)點傳輸至存儲節(jié)點;第一可用性值計算模塊,用于依據(jù)各所述第一心跳包數(shù),計算各條傳輸路徑的第一可用性值;獲取模塊,用于針對每條傳輸路徑,獲取各條傳輸路徑中轉(zhuǎn)發(fā)節(jié)點收到的第二心跳包數(shù);第二可用性值計算模塊,用于依據(jù)各所述第二心跳包數(shù),計算各條所述傳輸路徑的第二可用性值;第三可用性值確定模塊,用于針對每條傳輸路徑,依據(jù)所述傳輸路徑對應的第一可用性值以及第二可用性值,確定所述傳輸路徑對應的第三可用性值;第一選擇模塊,用于選擇各條傳輸路徑對應的第三可用性值中的最大值對應的傳輸路徑進行數(shù)據(jù)傳輸。
優(yōu)選地,所述第三可用性值確定模塊具體用于:針對每條傳輸路徑,將所述傳輸路徑對應的第一可用性值以及第二可用性值相乘,將所得乘積作為所述傳輸路徑對應的第三可用性值。
優(yōu)選地,所述第一可用性值計算模塊具體用于:針對每條傳輸路徑,通過如下公式計算所述傳輸路徑對應的第一可用性值:所述第一可用性值=所述第一心跳包數(shù)/所述預設時間內(nèi)存儲節(jié)點收到心跳包數(shù)的理論值。
優(yōu)選地,所述裝置還包括:計算模塊,用于在選擇各條傳輸路徑對應的第三可用性值中最大值對應的傳輸路徑進行數(shù)據(jù)傳輸之后,當添加新的傳輸路徑時,計算所述新的傳輸路徑的第三可用性值,其中,所述新的傳輸路徑的第一可用性值根據(jù)第一可用性值的計算公式計算得出,所述第一可用性值作為所述新的傳輸路徑的第三可用性值;比較模塊,用于將所述新的傳輸路徑的第三可用性值與選擇的傳輸路徑的第三可用性值進行比較;第二選擇模塊,用于選擇新的傳輸路徑的第三可用性值與選擇的傳輸路徑對應的第三可用性值中的最大值對應的傳輸路徑進行數(shù)據(jù)傳輸。
優(yōu)選地,所述第二可用性值計算模塊具體用于:針對每條傳輸路徑,通過如下公式計算所述傳輸路徑對應的第二可用性值:所述第二可用性值=所述第二心跳包數(shù)/所述預設時間內(nèi)轉(zhuǎn)發(fā)節(jié)點收到心跳包數(shù)的理論值;其中,當所述預設時間內(nèi)轉(zhuǎn)發(fā)節(jié)點收到心跳包數(shù)的理論值為0時,所述第二可用性值為1。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點:
本發(fā)明實施例提供的一種傳輸路徑選擇方案,針對每條傳輸路徑,確定預設時間內(nèi)各條傳輸路徑中存儲節(jié)點收到的第一心跳包數(shù);依據(jù)各第一心跳包數(shù),計算各條傳輸路徑的第一可用性值;針對每條傳輸路徑,獲取各條傳輸路徑中轉(zhuǎn)發(fā)節(jié)點收到的第二心跳包數(shù);依據(jù)各第二心跳包數(shù),計算各條傳輸路徑的第二可用性值;針對每條傳輸路徑,依據(jù)傳輸路徑對應的第一可用性值以及第二可用性值,確定傳輸路徑對應的第三可用性值;選擇各條傳輸路徑對應的第三可用性值中的最大值對應的傳輸路徑進行數(shù)據(jù)傳輸??梢姡ㄟ^本發(fā)明實施例提供的一種傳輸路徑選擇方案,通過對每條傳輸路徑的可用性值進行計算,將可用性值高的傳輸路徑作為當前傳輸路徑,能夠確保所選擇的傳輸路徑的可用性、可靠性,采用上述方法可以盡可能的減少數(shù)據(jù)的丟失,增強用戶的使用體驗。
附圖說明
圖1是本發(fā)明實施例一的一種傳輸路徑選擇方法的步驟流程圖;
圖2是本發(fā)明實施例二的一種傳輸路徑選擇方法的步驟流程圖;
圖3是本發(fā)明實施例三的一種傳輸路徑選擇裝置的結(jié)構(gòu)框圖;
圖4是本發(fā)明實施例四的一種傳輸路徑選擇裝置的結(jié)構(gòu)框圖。
具體實施方式
為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式對本發(fā)明作進一步詳細的說明。
實施例一
參照圖1,示出了本發(fā)明實施例一的一種傳輸路徑選擇方法的步驟流程圖。
本發(fā)明實施例提供的傳輸路徑選擇方法包括以下步驟:
步驟101:針對每條傳輸路徑,確定預設時間內(nèi)各條傳輸路徑中存儲節(jié)點收到的第一心跳包數(shù)。
其中,傳輸路徑中心跳包由采集節(jié)點獲取,通過轉(zhuǎn)發(fā)節(jié)點傳輸至存儲節(jié)點。
需要說明是,預設時間內(nèi)可以設置為在1s、2s、3s等,對此不作具體設置。
采集節(jié)點中存儲有多個傳輸路徑,獲取在傳輸路徑中存儲節(jié)點收到從轉(zhuǎn)發(fā)節(jié)點發(fā)送的第一心跳包數(shù)并獲取第一心跳包數(shù)。
步驟102:依據(jù)各第一心跳包數(shù),計算各條傳輸路徑的第一可用性值。
依據(jù)接收到的第一心跳包數(shù),通過算法計算出每個傳輸路徑的第一可用性值。
步驟103:針對每條傳輸路徑,獲取各條傳輸路徑中轉(zhuǎn)發(fā)節(jié)點收到的第二心跳包數(shù)。
在獲取第一可用性值后,獲取每條路徑中轉(zhuǎn)發(fā)節(jié)點收到從采集節(jié)點發(fā)送的第二心跳包數(shù)。
步驟104:依據(jù)各第二心跳包數(shù),計算各條傳輸路徑的第二可用性值。
依據(jù)接收到的第二心跳包數(shù),通過算法計算出每個傳輸路徑的第二可用性值。
步驟105:針對每條傳輸路徑,依據(jù)傳輸路徑對應的第一可用性值以及第二可用性值,確定傳輸路徑對應的第三可用性值。
步驟106:選擇各條傳輸路徑對應的第三可用性值中的最大值對應的傳輸路徑進行數(shù)據(jù)傳輸。
將計算出各傳輸路徑的第三可用性值后,將第三可用性值進行排序,可以從大到小進行排序也可以從小到大進行排序,選擇最大的第三可用性值對應的傳輸路徑進行數(shù)據(jù)傳輸,所選擇的傳輸路徑數(shù)據(jù)丟失的概率最低,安全可靠。
本發(fā)明實施例提供的一種傳輸路徑選擇方法,針對每條傳輸路徑,確定預設時間內(nèi)各條傳輸路徑中存儲節(jié)點收到的第一心跳包數(shù);依據(jù)各第一心跳包數(shù),計算各條傳輸路徑的第一可用性值;針對每條傳輸路徑,獲取各條傳輸路徑中傳輸節(jié)點收到的第二心跳包數(shù);依據(jù)各第二心跳包數(shù),計算各條傳輸路徑的第二可用性值;針對每條傳輸路徑,依據(jù)傳輸路徑對應的第一可用性值以及第二可用性值,確定傳輸路徑對應的第三可用性值;選擇各條傳輸路徑對應的第三可用性值中的最大值對應的傳輸路徑進行數(shù)據(jù)傳輸??梢?,通過本發(fā)明實施例提供的一種傳輸路徑選擇方法,通過對每條傳輸路徑的可用性值進行計算,將可用性值高的傳輸路徑作為當前傳輸路徑,能夠確保所選擇的傳輸路徑的可用性、可靠性,采用上述方法可以盡可能的減少數(shù)據(jù)的丟失,增強用戶的使用體驗。
實施例二
參照圖2,示出了本發(fā)明實施例二的一種傳輸路徑選擇方法的步驟流程圖。
本發(fā)明實施例提供的傳輸路徑選擇方法包括以下步驟:
步驟201:針對每條傳輸路徑,確定預設時間內(nèi)各條傳輸路徑中存儲節(jié)點收到的第一心跳包數(shù)。
其中,傳輸路徑中心跳包依次經(jīng)由采集節(jié)點、轉(zhuǎn)發(fā)節(jié)點、存儲節(jié)點。
需要說明是,預設時間內(nèi)可以設置為在1s、2s、3s等,對此不作具體設置。
采集節(jié)點中存儲有多個傳輸路徑,獲取在傳輸路徑中存儲節(jié)點收到從轉(zhuǎn)發(fā)節(jié)點發(fā)送的第一心跳包數(shù)并獲取第一心跳包數(shù)。
步驟202:針對每條傳輸路徑,通過第一公式計算傳輸路徑對應的第一可用性值。
其中,第一公式為:第一可用性值=第一心跳包數(shù)/預設時間內(nèi)存儲節(jié)點收到心跳包數(shù)的理論值。
依據(jù)接收到的第一心跳包數(shù),通過第一公式計算出每個傳輸路徑的第一可用性值。
例如:假定有采集節(jié)點ai,傳輸路徑p1~pn,存儲節(jié)點c。采集節(jié)點ai中存儲有p1~pn的轉(zhuǎn)發(fā)節(jié)點地址。當系統(tǒng)運行一段時間后,可以通過算法計算出每個傳輸路徑的可用性。對于傳輸路徑pi,假定其第一可用性值為hi,則算法如下:
第一可用性值hi=預設固定時間范圍內(nèi)存儲節(jié)點c收到的轉(zhuǎn)發(fā)節(jié)點心跳包數(shù)/預設固定時間范圍內(nèi)存儲節(jié)點收到的轉(zhuǎn)發(fā)節(jié)點心跳包數(shù)的理論值。
步驟203:針對每條傳輸路徑,獲取各條傳輸路徑中轉(zhuǎn)發(fā)節(jié)點收到的第二心跳包數(shù)。
在獲取第一可用性值后,獲取每條路徑中轉(zhuǎn)發(fā)節(jié)點收到從采集節(jié)點發(fā)送的第二心跳包數(shù).
步驟204:針對每條傳輸路徑,通過第二公式計算傳輸路徑對應的第二可用性值。
其中,第二公式為:第二可用性值=第二心跳包數(shù)/預設時間內(nèi)轉(zhuǎn)發(fā)節(jié)點收到心跳包數(shù)的理論值。
當預設時間內(nèi)轉(zhuǎn)發(fā)節(jié)點收到心跳包數(shù)的理論值為0時,第二可用性值為1。
假定對于傳輸路徑pi,采集節(jié)點ai到傳輸路徑pj的第二可用性值為aij,則有aij=預設固定時間范圍內(nèi)傳輸路徑中轉(zhuǎn)發(fā)節(jié)點收到采集節(jié)點ai轉(zhuǎn)發(fā)的節(jié)點心跳包數(shù)/預設固定時間范圍內(nèi)采集節(jié)點ai通過轉(zhuǎn)發(fā)節(jié)點轉(zhuǎn)發(fā)的節(jié)點心跳包數(shù)的理論值。
通過步驟201至步驟204已計算出各傳輸路徑對應的第一可用值以及第二可用值。
步驟205:針對每條傳輸路徑,將傳輸路徑對應的第一可用性值以及第二可用性值相乘,將所得乘積作為傳輸路徑對應的第三可用性值。
對于采集節(jié)點ai來說,其選擇傳輸路徑的算法如下:
將采集節(jié)點ai中已知的傳輸路徑p1~pn按權(quán)重(第三可用性值wij=第二可用性值aij*第一可用性值hi)從大到小排序或者從小到大排序。
步驟206:選擇各條傳輸路徑對應的第三可用性值中的最大值對應的傳輸路徑進行數(shù)據(jù)傳輸。
取各個第三可用性值wij最大的第三可用性值wij對應的pj作為傳輸路徑進行數(shù)據(jù)傳輸或者轉(zhuǎn)發(fā)。
具體地,當從采集節(jié)點ai到轉(zhuǎn)發(fā)節(jié)點pj的傳輸路徑或是pj的傳輸路徑上發(fā)生故障時,其對應的aij值或者hj值會降低,進而其對應的第三可用性值降低,從而在后續(xù)的傳輸選擇中,不會再選到它。
具體地,如果是第二可用性值aij導致,則使得第二可用性值aij傾向于選擇距離近或更可靠的傳輸路徑進行轉(zhuǎn)發(fā)或者數(shù)據(jù)傳輸。
如果是第一可用性值hj導致,由該傳輸路徑損壞或者非正常,且該傳輸路徑上的流量會趨于0,待恢復或人工修復后,無需人工干預,則會恢復正常,并且該傳輸路徑則會進入多個傳輸路徑的選擇流程。
步驟207:當添加新的傳輸路徑時,計算新的傳輸路徑的第三可用性值。
其中,新的傳輸路徑的第一可用性值根據(jù)第一可用性值的計算公式計算得出,第一可用性值作為新的傳輸路徑的第三可用性值。
當加入新傳輸路徑對于新加入的傳輸路徑,設定對于任意采集點ai來說,第二可用性值aij為1,第一可用性值hj可以由第一可用性值=第一心跳包數(shù)/預設時間內(nèi)存儲節(jié)點收到心跳包數(shù)的理論值計算出來,由于第二可用性值為1,則第三可用性值為第一可用性值,因此新加入的傳輸路徑可以被選擇到取決于初始計算到的hj值。
步驟208:將新的傳輸路徑的第三可用性值與選擇的傳輸路徑的第三可用性值進行比較。
將當前選擇傳輸路徑與新的傳輸路徑的第三可用性值進行比較。
步驟209:選擇新的傳輸路徑的第三可用性值與選擇的傳輸路徑對應的第三可用性值中的最大值對應的傳輸路徑進行數(shù)據(jù)傳輸。
當當前選擇的傳輸路徑的第三可用性值大于新的傳輸路徑的第三可用性值時,則還是選擇當前選擇的傳輸路徑。當當前選擇的傳輸路徑的第三可用性值小于新的傳輸路徑的第三可用性值時,則選擇新的傳輸路徑,用于數(shù)據(jù)的傳輸或者轉(zhuǎn)發(fā)。
本發(fā)明實施例提供的一種傳輸路徑選擇方法,針對每條傳輸路徑,確定預設時間內(nèi)各條傳輸路徑中存儲節(jié)點收到的第一心跳包數(shù);依據(jù)各第一心跳包數(shù),計算各條傳輸路徑的第一可用性值;針對每條傳輸路徑,獲取各條傳輸路徑中轉(zhuǎn)發(fā)節(jié)點收到的第二心跳包數(shù);依據(jù)各第二心跳包數(shù),計算各條傳輸路徑的第二可用性值;針對每條傳輸路徑,依據(jù)傳輸路徑對應的第一可用性值以及第二可用性值,確定傳輸路徑對應的第三可用性值;選擇各條傳輸路徑對應的第三可用性值中的最大值對應的傳輸路徑進行數(shù)據(jù)傳輸??梢?,通過本發(fā)明實施例提供的一種傳輸路徑選擇方法,通過對每條傳輸路徑的可用性值進行計算,將可用性值高的傳輸路徑作為當前傳輸路徑,能夠確保所選擇的傳輸路徑的可用性、可靠性,采用上述方法可以盡可能的減少數(shù)據(jù)的丟失,增強用戶的使用體驗。
實施例三
參照圖3,示出了本發(fā)明實施例三的一種傳輸路徑選擇裝置的結(jié)構(gòu)框圖。
本發(fā)明實施例提供的傳輸路徑選擇裝置包括:確定模塊301,用于針對每條傳輸路徑,確定預設時間內(nèi)各條傳輸路徑中存儲節(jié)點收到的第一心跳包數(shù);其中,傳輸路徑中心跳包由采集節(jié)點獲取,通過轉(zhuǎn)發(fā)節(jié)點傳輸至存儲節(jié)點;第一可用性值計算模塊302,用于依據(jù)各所述第一心跳包數(shù),計算各條傳輸路徑的第一可用性值;獲取模塊303,用于針對每條傳輸路徑,獲取各條傳輸路徑中轉(zhuǎn)發(fā)節(jié)點收到的第二心跳包數(shù);第二可用性值計算模塊304,用于依據(jù)各所述第二心跳包數(shù),計算各條所述傳輸路徑的第二可用性值;第三可用性值確定模塊305,用于針對每條傳輸路徑,依據(jù)所述傳輸路徑對應的第一可用性值以及第二可用性值,確定所述傳輸路徑對應的第三可用性值;第一選擇模塊306,用于選擇各條傳輸路徑對應的第三可用性值中的最大值對應的傳輸路徑進行數(shù)據(jù)傳輸。
本發(fā)明實施例提供的一種傳輸路徑選擇裝置,針對每條傳輸路徑,確定預設時間內(nèi)各條傳輸路徑中存儲節(jié)點收到的第一心跳包數(shù);依據(jù)各第一心跳包數(shù),計算各條傳輸路徑的第一可用性值;針對每條傳輸路徑,獲取各條傳輸路徑中傳輸節(jié)點收到的第二心跳包數(shù);依據(jù)各第二心跳包數(shù),計算各條傳輸路徑的第二可用性值;針對每條傳輸路徑,依據(jù)傳輸路徑對應的第一可用性值以及第二可用性值,確定傳輸路徑對應的第三可用性值;選擇各條傳輸路徑對應的第三可用性值中的最大值對應的傳輸路徑進行數(shù)據(jù)傳輸??梢?,通過本發(fā)明實施例提供的一種傳輸路徑選擇裝置,通過對每條傳輸路徑的可用性值進行計算,將可用性值高的傳輸路徑作為當前傳輸路徑,能夠確保所選擇的傳輸路徑的可用性、可靠性,采用上述方法可以盡可能的減少數(shù)據(jù)的丟失,增強用戶的使用體驗。
實施例四
參照圖4,示出了本發(fā)明實施例四的一種傳輸路徑選擇裝置的結(jié)構(gòu)框圖。
本發(fā)明實施例提供的傳輸路徑選擇裝置包括:確定模塊401,用于針對每條傳輸路徑,確定預設時間內(nèi)各條傳輸路徑中存儲節(jié)點收到的第一心跳包數(shù);其中,傳輸路徑中心跳包由采集節(jié)點獲取,通過轉(zhuǎn)發(fā)節(jié)點傳輸至存儲節(jié)點;第一可用性值計算模塊402,用于依據(jù)各所述第一心跳包數(shù),計算各條傳輸路徑的第一可用性值;獲取模塊403,用于針對每條傳輸路徑,獲取各條傳輸路徑中傳輸節(jié)點收到的第二心跳包數(shù);第二可用性值計算模塊404,用于依據(jù)各所述第二心跳包數(shù),計算各條所述傳輸路徑的第二可用性值;第三可用性值確定模塊405,用于針對每條傳輸路徑,依據(jù)所述傳輸路徑對應的第一可用性值以及第二可用性值,確定所述傳輸路徑對應的第三可用性值;第一選擇模塊406,用于選擇各條傳輸路徑對應的第三可用性值中的最大值對應的傳輸路徑進行數(shù)據(jù)傳輸。
優(yōu)選地,所述第三可用性值確定模塊405具體用于:針對每條傳輸路徑,將所述傳輸路徑對應的第一可用性值以及第二可用性值相乘,將所得乘積作為所述傳輸路徑對應的第三可用性值。
優(yōu)選地,所述第一可用性值計算模塊402具體用于:針對每條傳輸路徑,通過如下公式計算所述傳輸路徑對應的第一可用性值:所述第一可用性值=所述第一心跳包數(shù)/所述預設時間內(nèi)存儲節(jié)點收到心跳包數(shù)的理論值。
優(yōu)選地于,所述第二可用性值計算模塊404具體用于:針對每條傳輸路徑,通過如下公式計算所述傳輸路徑對應的第二可用性值:所述第二可用性值=所述第二心跳包數(shù)/所述預設時間內(nèi)轉(zhuǎn)發(fā)節(jié)點收到心跳包數(shù)的理論值;其中,當所述預設時間內(nèi)轉(zhuǎn)發(fā)節(jié)點收到心跳包數(shù)的理論值為0時,所述第二可用性值為1。
優(yōu)選地,所述裝置還包括:計算模塊407,用于當添加新的傳輸路徑時,計算所述新的傳輸路徑的第三可用性值,其中,所述新的傳輸路徑的第一可用性值根據(jù)第一可用性值的計算公式計算得出,所述第一可用性值作為所述新的傳輸路徑的第三可用性值;比較模塊408,用于將所述新的傳輸路徑的第三可用性值與選擇的傳輸路徑的第三可用性值進行比較;第二選擇模塊409,用于選擇新的傳輸路徑的第三可用性值與選擇的傳輸路徑對應的第三可用性值中的最大值對應的傳輸路徑進行數(shù)據(jù)傳輸。
本發(fā)明實施例提供的一種傳輸路徑選擇裝置,針對每條傳輸路徑,確定預設時間內(nèi)各條傳輸路徑中存儲節(jié)點收到的第一心跳包數(shù);依據(jù)各第一心跳包數(shù),計算各條傳輸路徑的第一可用性值;針對每條傳輸路徑,獲取各條傳輸路徑中傳輸節(jié)點收到的第二心跳包數(shù);依據(jù)各第二心跳包數(shù),計算各條傳輸路徑的第二可用性值;針對每條傳輸路徑,依據(jù)傳輸路徑對應的第一可用性值以及第二可用性值,確定傳輸路徑對應的第三可用性值;選擇最大第三可用性值對應的傳輸路徑進行數(shù)據(jù)傳輸??梢姡ㄟ^本發(fā)明實施例提供的一種傳輸路徑選擇裝置,通過對每條傳輸路徑的可用性值進行計算,將可用性值高的傳輸路徑作為當前傳輸路徑,能夠確保所選擇的傳輸路徑的可用性、可靠性,采用上述方法可以盡可能的減少數(shù)據(jù)的丟失,增強用戶的使用體驗。
本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。對于系統(tǒng)實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。
以上對本發(fā)明所提供的一種傳輸路徑選擇方法及裝置,進行了詳細介紹,本文中應用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式及應用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應理解為對本發(fā)明的限制。