一種路徑分配方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及測試技術(shù)領(lǐng)域,特別是涉及一種路徑分配方法和裝置。
【背景技術(shù)】
[0002] 在需要發(fā)送數(shù)據(jù)時,需要進行路徑分配,選擇合適的路徑發(fā)送數(shù)據(jù)。目前通常選擇 一條最優(yōu)路徑來發(fā)送數(shù)據(jù),但是這種路徑分配方法除了最優(yōu)路徑,其他路徑閑置,使得帶寬 不能得到有效利用,路徑傳輸速率低、傳輸延時過長;并且只選擇一條最優(yōu)路徑,一旦該路 徑發(fā)生斷路,將導(dǎo)致傳輸失敗,傳輸風(fēng)險較大,可靠性不高,還會造成擁塞和突發(fā)流量。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明提供了一種路徑分配方法和裝置,以解決傳輸速率低、傳輸延時過長的問 題。
[0004] 為了解決上述問題,本發(fā)明公開了一種路徑分配方法,包括:
[0005] 源節(jié)點進行路徑探測生成路由表,所述路由表包括:可選路徑以及所述可選路徑 對應(yīng)的路徑延遲和/或轉(zhuǎn)發(fā)跳數(shù);
[0006] 源節(jié)點依據(jù)所述路徑延遲和/或轉(zhuǎn)發(fā)跳數(shù)生成路徑分配規(guī)則;
[0007] 當(dāng)需要發(fā)送數(shù)據(jù)時,源節(jié)點根據(jù)所述路徑分配規(guī)則對所述可選路徑進行路徑分 配,將符合所述路徑分配規(guī)則的一個或多個可選路徑作為用于發(fā)送數(shù)據(jù)的有效路徑。
[0008] 可選地,所述源節(jié)點進行路徑探測生成路由表包括:
[0009] 源節(jié)點依據(jù)探測周期向被探測節(jié)點發(fā)送探測報文;
[0010] 源節(jié)點接收被探測節(jié)點發(fā)送的回復(fù)報文,所述回復(fù)報文由被探測節(jié)點對所述探測 報文進行重置后形成;
[0011] 若在預(yù)設(shè)周期內(nèi)收到被探測節(jié)點發(fā)送的回復(fù)報文,則將源節(jié)點到被探測節(jié)點的路 徑作為可選路徑,將收到所述回復(fù)報文的時間與發(fā)送探測報文的時間的差值作為所述可 選路徑的路徑延遲,和/或?qū)⑺龌貜?fù)報文的轉(zhuǎn)發(fā)跳數(shù)作為可選路徑的轉(zhuǎn)發(fā)跳數(shù)。
[0012] 可選地,所述源節(jié)點依據(jù)所述路徑延遲和/或轉(zhuǎn)發(fā)跳數(shù)生成路徑分配規(guī)則,包括:
[0013] 源節(jié)點按照路徑延遲從小到大的順序?qū)β酚杀碇械目蛇x路徑進行排序;
[0014] 將最小的路徑延遲作為延遲基數(shù);
[0015] 將所述延遲基數(shù)的倍數(shù)設(shè)定為延遲閾值;
[0016] 依次判斷排序后的可選路徑是否達到所述延遲閾值;
[0017] 若所述路徑延遲未達到所述延遲閾值,則將所述路徑延遲對應(yīng)的可選路徑作為有 效路徑;和/或,
[0018] 源節(jié)點按照轉(zhuǎn)發(fā)跳數(shù)從小到大的順序?qū)β酚杀碇械目蛇x路徑進行排序;
[0019] 將最小的轉(zhuǎn)發(fā)跳數(shù)作為轉(zhuǎn)發(fā)基數(shù);
[0020] 將所述轉(zhuǎn)發(fā)基數(shù)的倍數(shù)設(shè)定為轉(zhuǎn)發(fā)閾值;
[0021] 依次判斷排序后的可選路徑是否達到所述轉(zhuǎn)發(fā)閾值;
[0022] 若所述轉(zhuǎn)發(fā)跳數(shù)未達到所述轉(zhuǎn)發(fā)閾值,則將所述轉(zhuǎn)發(fā)跳數(shù)對應(yīng)的可選路徑作為有 效路徑。
[0023] 可選地,所述路由表還包括:節(jié)點記錄個數(shù);
[0024] 所述源節(jié)點依據(jù)所述路徑延遲和轉(zhuǎn)發(fā)跳數(shù)生成路徑分配規(guī)則,包括:
[0025] 依據(jù)所述節(jié)點記錄個數(shù)、路徑延遲和轉(zhuǎn)發(fā)跳數(shù)計算接口開銷;
[0026] 按照接口開銷從小到大的順序?qū)β酚杀碇械目蛇x路徑進行排序;
[0027] 將最小的接口開銷作為開銷基數(shù);
[0028] 將所述開銷基數(shù)的倍數(shù)設(shè)定為開銷閾值;
[0029] 依次判斷排序后的可選路徑是否達到所述開銷閾值;
[0030] 若所述開銷閾值未達到所述開銷閾值,則將所述開銷閾值對應(yīng)的可選路徑作為有 效路徑。
[0031] 可選地,所述依據(jù)所述節(jié)點記錄個數(shù)、路徑延遲和轉(zhuǎn)發(fā)跳數(shù)計算可選路徑的接口 開銷,包括:
[0032] 將所述路徑延遲與探測周期相除,商作為發(fā)送速率;
[0033] 通過射頻驅(qū)動獲取信道阻塞值;
[0034] 通過實際測試得到第一權(quán)重參數(shù)和第二權(quán)重參數(shù);
[0035] 將所述節(jié)點記錄個數(shù)與轉(zhuǎn)發(fā)跳數(shù)相乘,積作為第一參數(shù);
[0036] 將所述第一權(quán)重參數(shù)與所述信道阻塞值相乘,積作為第二參數(shù);
[0037] 將所述第二權(quán)重參數(shù)與所述發(fā)送速率相乘,積作為第三參數(shù);
[0038] 將所述第一參數(shù)、第二參數(shù)和第三參數(shù)相加,和作為接口開銷。
[0039] 可選地,所述源節(jié)點根據(jù)所述路徑分配規(guī)則對所述可選路徑進行路徑分配之前, 還包括:
[0040] 源節(jié)點重新進行路徑探測更新所述路由表。
[0041] 本發(fā)明公開了一種路徑分配裝置,其特征在于,包括:
[0042] 探測模塊,用于進行路徑探測生成路由表,所述路由表包括:可選路徑以及所述可 選路徑對應(yīng)的路徑延遲和/或轉(zhuǎn)發(fā)跳數(shù);
[0043] 規(guī)則生成模塊,與所述探測模塊相連,用于依據(jù)所述路由表中的路徑延遲和/或 轉(zhuǎn)發(fā)跳數(shù)生成路徑分配規(guī)則;
[0044] 分配模塊,分別與所述探測模塊和所述規(guī)則生成模塊相連,用于當(dāng)需要發(fā)送數(shù)據(jù) 時,根據(jù)所述路徑分配規(guī)則對所述可選路徑進行路徑分配,將符合所述路徑分配規(guī)則的一 個或多個可選路徑作為用于發(fā)送數(shù)據(jù)的有效路徑。
[0045] 可選地,所述探測模塊包括:
[0046] 發(fā)送子模塊,用于依據(jù)探測周期向被探測節(jié)點發(fā)送探測報文;
[0047] 接收子模塊,用于接收被探測節(jié)點發(fā)送的回復(fù)報文,所述回復(fù)報文由被探測節(jié)點 對所述探測報文進行重置后形成;
[0048] 生成子模塊,與所述接收子模塊相連,用于當(dāng)所述接收子模塊在預(yù)設(shè)周期內(nèi)收到 被探測節(jié)點發(fā)送的回復(fù)報文時,將源節(jié)點到被探測節(jié)點的路徑作為可選路徑,將收到所述 回復(fù)報文的時間與發(fā)送探測報文的時間的差值作為所述可選路徑的路徑延遲,和/或?qū)⑺?述回復(fù)報文的轉(zhuǎn)發(fā)跳數(shù)作為可選路徑的轉(zhuǎn)發(fā)跳數(shù)。
[0049] 可選地,所述規(guī)則生成模塊包括:
[0050] 延遲子模塊和/或跳數(shù)子模塊;
[0051] 所述延遲子模塊,用于按照路徑延遲從小到大的順序?qū)β酚杀碇械目蛇x路徑進行 排序;將最小的路徑延遲作為延遲基數(shù);將所述延遲基數(shù)的倍數(shù)設(shè)定為延遲閾值;依次判 斷排序后的可選路徑是否達到所述延遲閾值;若所述路徑延遲未達到所述延遲閾值,則將 所述路徑延遲對應(yīng)的可選路徑作為有效路徑;
[0052] 所述跳數(shù)子模塊,用于按照轉(zhuǎn)發(fā)跳數(shù)從小到大的順序?qū)β酚杀碇械目蛇x路徑進行 排序;將最小的轉(zhuǎn)發(fā)跳數(shù)作為轉(zhuǎn)發(fā)基數(shù);將所述轉(zhuǎn)發(fā)基數(shù)的倍數(shù)設(shè)定為轉(zhuǎn)發(fā)閾值;依次判 斷排序后的可選路徑是否達到所述轉(zhuǎn)發(fā)閾值;若所述轉(zhuǎn)發(fā)跳數(shù)未達到所述轉(zhuǎn)發(fā)閾值,則將 所述轉(zhuǎn)發(fā)跳數(shù)對應(yīng)的可選路徑作為有效路徑。
[0053] 可選地,所述規(guī)則生成模塊包括:
[0054] 開銷子模塊,用于當(dāng)所述路由表還包括節(jié)點記錄個數(shù)時,依據(jù)所述節(jié)點記錄個數(shù)、 路徑延遲和轉(zhuǎn)發(fā)跳數(shù)計算接口開銷;按照接口開銷從小到大的順序?qū)β酚杀碇械目蛇x路徑 進行排序;將最小的接口開銷作為開銷基數(shù);將所述開銷基數(shù)的倍數(shù)設(shè)定為開銷閾值;依 次判斷排序后的可選路徑是否達到所述開銷閾值;若所述開銷閾值未達到所述開銷閾值, 則將所述開銷閾值對應(yīng)的可選路徑作為有效路徑。
[0055] 與現(xiàn)有技術(shù)相比,本發(fā)明包括以下優(yōu)點:
[0056] 本發(fā)明提供的路徑分配方法,在發(fā)送數(shù)據(jù)前先進行路徑探測生成路由表,路由表 中的可選路徑為發(fā)送數(shù)據(jù)提供了選擇,節(jié)省了路徑分配時間,在發(fā)送數(shù)據(jù)時可以直接依據(jù) 路由表進行路徑分配。并且依據(jù)路由表中的路徑延遲和/或轉(zhuǎn)發(fā)跳數(shù)生成路徑分配規(guī)則, 使得路徑分配更加科學(xué)合理。最終依據(jù)所述路徑分配規(guī)則對路由表中的可選路徑進行路徑 分配,選擇出了符合路徑分配規(guī)則的一個或多個可選路徑作為用于發(fā)送數(shù)據(jù)的有效路徑, 即本實施例中符合路徑分配規(guī)則的可選路徑都可以用來發(fā)送數(shù)據(jù),不局限于一條路徑,本 發(fā)明用多條符合分配規(guī)則的路徑進行數(shù)據(jù)傳輸,不但可以加快傳輸速率,減少延時,而且能 夠避免單路徑由于鏈路斷裂導(dǎo)致的傳輸失敗,增加網(wǎng)絡(luò)的穩(wěn)定性和數(shù)據(jù)傳輸?shù)目煽啃?。?時,選擇多條符合分配規(guī)則的路徑進行數(shù)據(jù)傳輸也可以減少對帶寬的要求,降低傳輸延遲、 實現(xiàn)負載均衡。
【附圖說明】
[0057] 圖1是本發(fā)明實施例一種路徑分配方法的流程圖;
[0058] 圖2是本發(fā)明實施例中的節(jié)點示意圖;
[0059] 圖3是本發(fā)明實施例路徑探測的流程圖;
[0060] 圖4是本發(fā)明實施例一種生成路徑分配規(guī)則的流程圖;
[0061]圖5是本發(fā)明實施例另一種生成路徑分配規(guī)則的流程圖;
[0062] 圖6是本發(fā)明實施例對路由表進行維護探測的流程圖;
[0063] 圖7是本發(fā)明實施例一種路徑分配裝置的結(jié)構(gòu)框圖。
【具體實施方式】
[0064] 為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實 施方式對本發(fā)明作進一步詳細的說明。
[0065] 實施例一:
[0066] 參照圖1,示出了本發(fā)明實施例一種路徑分配方法的流程圖,本實施例具體可以包 括以下步驟:
[0067] 步驟101,源節(jié)點進行路徑探測生成路由表,所述路由表包括:可選路徑以及所述 可選路徑對應(yīng)的路徑延遲和/或轉(zhuǎn)發(fā)跳數(shù)。
[0068] 需要說明的是,所述可選路徑是數(shù)據(jù)由源節(jié)點到達目標(biāo)節(jié)點所經(jīng)過的路徑,當(dāng)目 標(biāo)節(jié)點是源節(jié)點的直接節(jié)點時,可選路徑由源節(jié)點直接指向目標(biāo)節(jié)點;當(dāng)目標(biāo)節(jié)點不是源 節(jié)點的直接節(jié)點時,數(shù)據(jù)從源節(jié)點到達目標(biāo)節(jié)點需要經(jīng)過多個被探測節(jié)點??蛇x路徑對應(yīng) 的路徑延遲是指數(shù)據(jù)由源節(jié)點到達目標(biāo)節(jié)點,再由目標(biāo)節(jié)點返回源節(jié)點所經(jīng)過的時間???選路徑的轉(zhuǎn)發(fā)跳數(shù)是指數(shù)據(jù)從源節(jié)點到達目標(biāo)節(jié)點被轉(zhuǎn)發(fā)的次數(shù)。
[0069]需要說明的是,路徑延遲包括來回兩條路徑延遲之和,但不要求兩條路徑完全一 樣,即源節(jié)點發(fā)送探測報文,到達被探測節(jié)點的路徑一與源節(jié)點接收被探測節(jié)點返回的回 復(fù)報文的路徑二可能不同,本實施例中可以將路徑一與路徑二的路徑延遲相加,和作為源 節(jié)點與被探測節(jié)點之間的路徑延遲。例如:節(jié)點A(源節(jié)點)向節(jié)點E(被探測節(jié)點)發(fā)送 探測報文的路徑延遲為l〇ms,路徑一為A-B-E