智能路由實現(xiàn)方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計算機網(wǎng)絡(luò)、數(shù)據(jù)挖掘和人工智能技術(shù)領(lǐng)域,特別是涉及一種智能路由實現(xiàn)方法及系統(tǒng)。
【背景技術(shù)】
[0002]和所有的互聯(lián)網(wǎng)服務(wù)一樣,用戶訪問電商服務(wù)是通過互聯(lián)網(wǎng)來提交請求和收到服務(wù)反應(yīng),而交互的速度是決定用戶使用質(zhì)量的重要因素;互聯(lián)網(wǎng)的網(wǎng)絡(luò)速度是影響用戶和服務(wù)交互速度的重要組成部分,加快網(wǎng)絡(luò)速度能提高用戶使用質(zhì)量。
[0003]傳統(tǒng)的互聯(lián)網(wǎng)服務(wù)為加快網(wǎng)絡(luò)訪問速度,采用⑶N(Content Delivery Network)。CDN是構(gòu)建在數(shù)據(jù)網(wǎng)絡(luò)上的一種分布式的內(nèi)容分發(fā)網(wǎng)。CDN的作用是采用流媒體服務(wù)器集群技術(shù),克服單機系統(tǒng)輸出帶寬及并發(fā)能力不足的缺點,可極大提升系統(tǒng)支持的并發(fā)流數(shù)目,減少或避免單點失效帶來的不良影響。CDN利用全局負(fù)載均衡技術(shù)將用戶的訪問指向離用戶最近的工作正常的流媒體服務(wù)器上,由流媒體服務(wù)器直接響應(yīng)用戶的請求。服務(wù)器中如果沒有用戶要訪問的內(nèi)容,會根據(jù)配置自動從原服務(wù)器抓取相應(yīng)的內(nèi)容并提供給用戶。
[0004]在實現(xiàn)過程中,發(fā)明人發(fā)現(xiàn)傳統(tǒng)技術(shù)中至少存在如下問題:
[0005]CDN對互聯(lián)網(wǎng)服務(wù)的靜態(tài)內(nèi)容的訪問能較好地提高網(wǎng)絡(luò)速度,但對互聯(lián)網(wǎng)服務(wù)的動態(tài)內(nèi)容的訪問網(wǎng)絡(luò)速度的提高很小,而且網(wǎng)絡(luò)訪問連通率不理想。導(dǎo)致原因:動態(tài)內(nèi)容的訪問的結(jié)果必須由服務(wù)的終點的機器來提供,CDN技術(shù)賴以提高網(wǎng)絡(luò)訪問速度的緩存技術(shù)完全不能發(fā)揮作用;⑶N也像通常的互聯(lián)網(wǎng)訪問一樣需要做DNS(Domain Name System,域名系統(tǒng))解析,其DNS解析的性能不穩(wěn)定,有時很慢;而且CDN的不能在中間網(wǎng)絡(luò)節(jié)點使用緩存技術(shù)的結(jié)果,需要路由到服務(wù)的終點機器,但CDN的路由不能提供穩(wěn)定的性能。
【發(fā)明內(nèi)容】
[0006]基于此,有必要針對傳統(tǒng)技術(shù)中互聯(lián)網(wǎng)服務(wù)的網(wǎng)絡(luò)訪問速度慢、穩(wěn)定性差且服務(wù)訪問成功率不足的問題,提供一種智能路由實現(xiàn)方法及系統(tǒng)。
[0007]為了實現(xiàn)上述目的,本發(fā)明技術(shù)方案的實施例為:
[0008]—方面,提供了一種智能路由實現(xiàn)方法,包括步驟:
[0009]根據(jù)預(yù)設(shè)的智能路由協(xié)議中的獲取配置信息命令請求,獲取客戶端應(yīng)用和智能路由系統(tǒng)的配置信息;配置信息包括控制探測網(wǎng)絡(luò)路徑的網(wǎng)絡(luò)速度的控制參數(shù)、各路由節(jié)點的參數(shù)以及客戶端應(yīng)用所有域的參數(shù);
[0010]根據(jù)控制參數(shù)和預(yù)設(shè)的智能路由協(xié)議中的探測網(wǎng)絡(luò)速度命令請求,探測指定網(wǎng)絡(luò)路徑響應(yīng)請求的全程時間,獲取全程時間的平均值;指定網(wǎng)絡(luò)路徑包括客戶端應(yīng)用通過路由節(jié)點訪問目標(biāo)服務(wù)的專線網(wǎng)絡(luò)路徑和客戶端應(yīng)用通過CDN網(wǎng)絡(luò)訪問目標(biāo)服務(wù)的網(wǎng)絡(luò)路徑;
[0011]基于配置信息,選取平均值最小的網(wǎng)絡(luò)路徑建立路由表;
[0012]在客戶端應(yīng)用需要訪問目標(biāo)服務(wù)的動態(tài)內(nèi)容時,基于路由表的信息,對目標(biāo)服務(wù)的URL(Uniform Resoure Locator:統(tǒng)一資源定位器)進行解析;由客戶端應(yīng)用基于解析的結(jié)果獲得的網(wǎng)絡(luò)路徑訪問目標(biāo)服務(wù)。
[0013]另一方面,提供了一種智能路由系統(tǒng),包括智能路由SDK(軟件開發(fā)工具包:Software Development Kit)單元,智能路由SDK單元包括:
[0014]智能路由服務(wù)模塊,用于根據(jù)預(yù)設(shè)的智能路由協(xié)議中的獲取配置信息命令請求,獲取客戶端應(yīng)用和智能路由系統(tǒng)的配置信息;配置信息包括控制探測網(wǎng)絡(luò)路徑的網(wǎng)絡(luò)速度的控制參數(shù)、各路由節(jié)點的參數(shù)以及客戶端應(yīng)用所有域的參數(shù);以及根據(jù)控制參數(shù)和預(yù)設(shè)的智能路由協(xié)議中的探測網(wǎng)絡(luò)速度命令請求,探測指定網(wǎng)絡(luò)路徑響應(yīng)請求的全程時間,獲取全程時間的平均值;指定網(wǎng)絡(luò)路徑包括客戶端應(yīng)用通過路由節(jié)點訪問目標(biāo)服務(wù)的專線網(wǎng)絡(luò)路徑和客戶端應(yīng)用通過CDN網(wǎng)絡(luò)訪問目標(biāo)服務(wù)的網(wǎng)絡(luò)路徑;
[0015]客戶端SDK模塊,用于基于配置信息,選取平均值最小的網(wǎng)絡(luò)路徑建立路由表;以及在客戶端應(yīng)用需要訪問目標(biāo)服務(wù)的動態(tài)內(nèi)容時,基于路由表的信息,對目標(biāo)服務(wù)的URL進行解析;由客戶端應(yīng)用基于解析的結(jié)果獲得的網(wǎng)絡(luò)路徑訪問目標(biāo)服務(wù)。
[0016]上述技術(shù)方案具有如下有益效果:
[0017]本發(fā)明智能路由實現(xiàn)方法及系統(tǒng),因為通過設(shè)置路由節(jié)點和建立路由節(jié)點和服務(wù)終點的專線,直接由客戶端應(yīng)用、路由節(jié)點和目標(biāo)服務(wù)交互并探測出各個網(wǎng)絡(luò)路徑的網(wǎng)絡(luò)速度,從而使得客戶端應(yīng)用直接獲得訪問服務(wù)的最快網(wǎng)絡(luò)路徑;而且本發(fā)明提供了一種簡單的預(yù)設(shè)的智能路由協(xié)議,包括獲取智能路由配置信息和探測網(wǎng)絡(luò)路徑的網(wǎng)絡(luò)速度兩個協(xié)議命令,優(yōu)化智能路由的實現(xiàn)方法,提高探測網(wǎng)絡(luò)速度的效率,減少了預(yù)設(shè)的智能路由協(xié)議執(zhí)行的網(wǎng)絡(luò)代價和執(zhí)行時間跨度,使智能路由SDK的URL解析在盡可能小的網(wǎng)絡(luò)代價下獲得盡可能大的URL解析效果。進而使用戶可以通過客戶端應(yīng)用選擇最快的路由節(jié)點來訪問服務(wù),提高網(wǎng)絡(luò)訪問速度和穩(wěn)定性。
【附圖說明】
[0018]圖1為本發(fā)明智能路由實現(xiàn)方法實施例1的流程示意圖;
[0019]圖2為本發(fā)明智能路由系統(tǒng)實施例1的結(jié)構(gòu)示意圖;
[0020]圖3為本發(fā)明智能路由實現(xiàn)方法及系統(tǒng)一具體實施例中智能路由原理示意圖;
[0021]圖4為本發(fā)明智能路由實現(xiàn)方法及系統(tǒng)一具體實施例中智能路由的路徑選擇策略示意圖;
[0022]圖5為本發(fā)明智能路由實現(xiàn)方法及系統(tǒng)一具體實施例中智能路由系統(tǒng)結(jié)構(gòu)示意圖;
[0023]圖6為應(yīng)用客戶端使用本發(fā)明智能路由實現(xiàn)方法及系統(tǒng)訪問目標(biāo)服務(wù)一具體實施例示意圖;
[0024]圖7為本發(fā)明智能路由實現(xiàn)方法及系統(tǒng)一具體實施例中隨標(biāo)記連接不通發(fā)生調(diào)節(jié)全程時間的參數(shù)曲線示意圖。
【具體實施方式】
[0025]為了便于理解本發(fā)明,下面將參照相關(guān)附圖對本發(fā)明進行更全面的描述。附圖中給出了本發(fā)明的首選實施例。但是,本發(fā)明可以以許多不同的形式來實現(xiàn),并不限于本文所描述的實施例。相反地,提供這些實施例的目的是使對本發(fā)明的公開內(nèi)容更加透徹全面。
[0026]除非另有定義,本文所使用的所有的技術(shù)和科學(xué)術(shù)語與屬于本發(fā)明的技術(shù)領(lǐng)域的技術(shù)人員通常理解的含義相同。本文中在本發(fā)明的說明書中所使用的術(shù)語只是為了描述具體的實施例的目的,不是旨在于限制本發(fā)明。本文所使用的術(shù)語“及/或”包括一個或多個相關(guān)的所列項目的任意的和所有的組合。
[0027]本發(fā)明智能路由實現(xiàn)方法實施例1:
[0028]為了解決傳統(tǒng)技術(shù)中互聯(lián)網(wǎng)服務(wù)的網(wǎng)絡(luò)訪問速度慢、穩(wěn)定性差且服務(wù)訪問成功率不足的問題,本發(fā)明提供了一種智能路由實現(xiàn)方法實施例1,圖1為本發(fā)明智能路由實現(xiàn)方法實施例1的流程示意圖;如圖1所示,可以包括步驟:
[0029]步驟S110:根據(jù)預(yù)設(shè)的智能路由協(xié)議中的獲取配置信息命令請求,獲取客戶端應(yīng)用和智能路由系統(tǒng)的配置信息;配置信息包括控制探測網(wǎng)絡(luò)路徑的網(wǎng)絡(luò)速度的控制參數(shù)、各路由節(jié)點的參數(shù)以及客戶端應(yīng)用所有域的參數(shù);
[0030]步驟S120:根據(jù)控制參數(shù)和預(yù)設(shè)的智能路由協(xié)議中的探測網(wǎng)絡(luò)速度命令請求,探測指定網(wǎng)絡(luò)路徑響應(yīng)請求的全程時間,獲取全程時間的平均值;指定網(wǎng)絡(luò)路徑包括客戶端應(yīng)用通過路由節(jié)點訪問目標(biāo)服務(wù)的專線網(wǎng)絡(luò)路徑和客戶端應(yīng)用通過CDN網(wǎng)絡(luò)訪問目標(biāo)服務(wù)的網(wǎng)絡(luò)路徑;
[0031]步驟S130:基于配置信息,選取平均值最小的網(wǎng)絡(luò)路徑建立路由表;
[0032]步驟S140:在客戶端應(yīng)用需要訪問目標(biāo)服務(wù)的動態(tài)內(nèi)容時,基于路由表的信息,對目標(biāo)服務(wù)的URL進行解析;由客戶端應(yīng)用基于解析的結(jié)果獲得的網(wǎng)絡(luò)路徑訪問目標(biāo)服務(wù)。
[0033]在一個具體的實施例中,步驟S140具體可以包括以下步驟:
[0034]基于路由表的信息,將目標(biāo)服務(wù)的URL解析成路由節(jié)點的IP;由客戶端應(yīng)用通過路由節(jié)點所在的專線網(wǎng)絡(luò)路徑訪問目標(biāo)服務(wù);
[0035]或
[0036]基于路由表的信息,解析返回目標(biāo)服務(wù)的URL;由客戶端應(yīng)用通過⑶N網(wǎng)絡(luò)訪問目標(biāo)服務(wù)。
[0037]在一個具體的實施例中,本實施例1還可以包括步驟:
[0038]在滿足預(yù)設(shè)的執(zhí)行觸發(fā)條件時,執(zhí)行預(yù)設(shè)的智能路由協(xié)議,獲取配置信息和平均值;
[0039]預(yù)設(shè)的執(zhí)行觸發(fā)條件包括以下條件中的任意一項或任意組合:檢測到客戶端應(yīng)用啟動時;檢測到客戶端應(yīng)用進入前臺,且距上次執(zhí)行協(xié)議的時間超過預(yù)設(shè)時間時;檢測到切換網(wǎng)絡(luò)路徑,且距上次執(zhí)行協(xié)議的時間超過預(yù)設(shè)時間時;檢測到標(biāo)記所有路由節(jié)點連接不通超過預(yù)設(shè)次數(shù),且距上次執(zhí)行協(xié)議的時間超過預(yù)設(shè)時間時。
[0040]在一個具體的實施例中,步驟S120具體可以包括:
[0041]根據(jù)預(yù)設(shè)的探測執(zhí)行順序,基于控制參數(shù),通過多次探測同一條指定網(wǎng)絡(luò)路徑的全程時間獲取平均值;控制參數(shù)包括探測網(wǎng)絡(luò)速度的次數(shù)和探測的時間間隔;預(yù)設(shè)的探測執(zhí)行順序為優(yōu)先探測CDN網(wǎng)絡(luò)路徑,然后探測各路由節(jié)點的專線網(wǎng)絡(luò)路徑,其中,對通過同一個路由節(jié)點到達客戶端應(yīng)用多個域的服務(wù)終點的專線網(wǎng)絡(luò)路徑進行同時探測。
[0042]在一個具體的實施例中,步驟S120中根據(jù)控制參數(shù)和預(yù)設(shè)的智能路由協(xié)議中的探測網(wǎng)絡(luò)速度命令請求,探測指定網(wǎng)絡(luò)路徑響應(yīng)請求的全程時間可以基于以下公式獲取全程時間:
[0043]RTT = tr-ts+extra_rtt-process_time
[0044]其中,RTT為探測的指定網(wǎng)絡(luò)