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