本發(fā)明涉及網(wǎng)絡(luò)加速技術(shù)領(lǐng)域,特別是涉及一種路徑選取方法及系統(tǒng)、網(wǎng)絡(luò)加速節(jié)點(diǎn)、網(wǎng)絡(luò)加速系統(tǒng)。
背景技術(shù):
隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,互聯(lián)網(wǎng)技術(shù)已成為人類生活的重要組成部分。用戶對(duì)網(wǎng)絡(luò)的傳輸速率及用戶請(qǐng)求的反饋速度要求越來(lái)越大。在最初的技術(shù)架構(gòu)中,用戶的請(qǐng)求數(shù)據(jù)直接發(fā)送到源站服務(wù)器,源站服務(wù)器根據(jù)用戶請(qǐng)求進(jìn)行處理后,再直接返回給用戶。由于用戶和源站服務(wù)器之間可能存在地理位置距離遠(yuǎn)、歸屬不同的網(wǎng)絡(luò)運(yùn)營(yíng)商、線路受損、線路過(guò)載等問(wèn)題,用戶與源站之間的通信會(huì)出現(xiàn)傳輸慢、反饋慢、費(fèi)用高、傳輸中斷等現(xiàn)象。如此一來(lái),不僅影響了用戶的上網(wǎng)體驗(yàn),也增加了內(nèi)容提供商的成本,甚至帶來(lái)其他不可預(yù)估的損失。
隨著技術(shù)的改良和進(jìn)步,現(xiàn)有技術(shù)中,通過(guò)在用戶和源站之間架設(shè)應(yīng)用加速網(wǎng)絡(luò)來(lái)緩解上述問(wèn)題。應(yīng)用加速網(wǎng)絡(luò)是一種用于提升用戶與源站之間數(shù)據(jù)傳輸速率的網(wǎng)絡(luò)數(shù)據(jù)加速系統(tǒng),可以針對(duì)不同區(qū)域的用戶所訪問(wèn)的不同源站,分別選擇質(zhì)量較優(yōu)的傳輸路徑來(lái)為數(shù)據(jù)傳輸進(jìn)行加速。應(yīng)用加速網(wǎng)絡(luò)主要采用中央服務(wù)器、網(wǎng)絡(luò)加速節(jié)點(diǎn)的架構(gòu)模式。這種模式下,網(wǎng)絡(luò)加速節(jié)點(diǎn)負(fù)責(zé)探測(cè)自身到源站的鏈路狀態(tài)以及到其他相連網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路狀態(tài),并且將探測(cè)結(jié)果上報(bào)至中央服務(wù)器,中央服務(wù)器根據(jù)來(lái)自各個(gè)網(wǎng)絡(luò)加速節(jié)點(diǎn)的探測(cè)結(jié)果選擇出用戶到源站的最優(yōu)路徑,并將選擇結(jié)果返回給各網(wǎng)絡(luò)加速節(jié)點(diǎn),網(wǎng)絡(luò)加速節(jié)點(diǎn)根據(jù)選擇結(jié)果進(jìn)行用戶請(qǐng)求的傳輸與反饋。
然而,現(xiàn)有網(wǎng)絡(luò)加速模式存在以下不足:(1)當(dāng)某個(gè)網(wǎng)絡(luò)加速節(jié)點(diǎn)收到一個(gè)用戶請(qǐng)求時(shí),應(yīng)用加速網(wǎng)絡(luò)中的每個(gè)網(wǎng)絡(luò)加速節(jié)點(diǎn)都新增探測(cè)自身到源站的鏈路狀態(tài)的任務(wù)和探測(cè)到相連其他網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路狀態(tài)的任務(wù),如此一來(lái),探測(cè)任務(wù)數(shù)量驟然增加,探測(cè)流量需要占用較大的帶寬,甚至?xí)绊懙綐I(yè)務(wù)流量。(2)巨大的探測(cè)任務(wù)數(shù)量上報(bào)至中央服務(wù)器,導(dǎo)致中央服務(wù)器的計(jì)算壓力特別大,反饋速度受到影響。如此一來(lái),現(xiàn)有的應(yīng)用加速網(wǎng)絡(luò)雖然在一定程度上改善了用戶和源站之間的數(shù)據(jù)傳輸速度和質(zhì)量,但其自身存在一定弊端,無(wú)法滿足日益增長(zhǎng)的用戶需求,也無(wú)法提供更優(yōu)的用戶體驗(yàn)。
技術(shù)實(shí)現(xiàn)要素:
鑒于以上所述現(xiàn)有技術(shù)的不足,本發(fā)明提供了一種路徑選取方法及系統(tǒng)、網(wǎng)絡(luò)加速節(jié)點(diǎn)、網(wǎng)絡(luò)加速系統(tǒng)。本發(fā)明所提供的技術(shù)方案中,網(wǎng)絡(luò)加速節(jié)點(diǎn)自身來(lái)選擇到源站的最優(yōu)路徑,從而降低路徑探測(cè)數(shù)量,優(yōu)化路徑選取的質(zhì)量,加快了路徑選取的效率。
為實(shí)現(xiàn)上述目的及其他相關(guān)目的,本發(fā)明提供一種路徑選取方法,包括以下步驟:入口網(wǎng)絡(luò)加速節(jié)點(diǎn)探測(cè)到達(dá)各個(gè)出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路時(shí)延,并判斷所述各個(gè)出口網(wǎng)絡(luò)加速節(jié)點(diǎn)是否可用,其中所述入口網(wǎng)絡(luò)加速節(jié)點(diǎn)用于接收用戶訪問(wèn)請(qǐng)求;所述入口網(wǎng)絡(luò)加速節(jié)點(diǎn)從可用出口網(wǎng)絡(luò)加速節(jié)點(diǎn)獲取該出口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)源站IP的鏈路時(shí)延;所述入口網(wǎng)絡(luò)加速節(jié)點(diǎn)根據(jù)自身到達(dá)所述可用出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路時(shí)延,以及所述可用出口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)所述源站IP的鏈路時(shí)延,選取所述用戶訪問(wèn)請(qǐng)求到達(dá)所述源站IP的最優(yōu)路徑。
于本發(fā)明一實(shí)施例中,所述入口網(wǎng)絡(luò)加速節(jié)點(diǎn)判斷所述出口網(wǎng)絡(luò)加速節(jié)點(diǎn)是否可用包括以下步驟:所述入口網(wǎng)絡(luò)加速節(jié)點(diǎn)探測(cè)并獲取到達(dá)所述出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路的時(shí)延、丟包率、負(fù)載及帶寬使用率;當(dāng)所述到達(dá)所述出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路的時(shí)延、丟包率、負(fù)載及帶寬使用率中的一項(xiàng)或者多項(xiàng)低于相應(yīng)預(yù)設(shè)閾值時(shí),則所述出口網(wǎng)絡(luò)加速節(jié)點(diǎn)可用。
于本發(fā)明一實(shí)施例中,所述入口網(wǎng)絡(luò)加速節(jié)點(diǎn)計(jì)算自身到達(dá)所述可用出口網(wǎng)絡(luò)加速節(jié)點(diǎn)、所述可用的出口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)所述源站IP的總鏈路時(shí)延,選取總鏈路時(shí)延最小的一條路徑作為最優(yōu)路徑。
于本發(fā)明一實(shí)施例中,所述入口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)所述出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路時(shí)延、以及所述出口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)所述源站IP的鏈路時(shí)延,采用平均值法計(jì)算得到。
于本發(fā)明一實(shí)施例中,包含一路徑保存步驟,保存所述最優(yōu)路徑。
于本發(fā)明一實(shí)施例中,在所述探測(cè)步驟之前更包含一查詢步驟,根據(jù)所述用戶訪問(wèn)請(qǐng)求信息查詢所保存的所述最優(yōu)路徑,若存在相應(yīng)記錄,則直接選取該路徑作為本次訪問(wèn)請(qǐng)求的路徑。
于本發(fā)明一實(shí)施例中,所述入口網(wǎng)絡(luò)加速節(jié)點(diǎn)將屬于同一運(yùn)營(yíng)商、同一地理區(qū)域的源站IP歸為同一IP分組,并針對(duì)每一個(gè)所述IP分組采用一個(gè)路徑列表保存所述IP分組使用過(guò)的每一條路徑及其使用次數(shù);當(dāng)所述入口網(wǎng)絡(luò)加速節(jié)點(diǎn)接收到用戶針對(duì)某個(gè)所述源站IP的訪問(wèn)請(qǐng)求時(shí),若尚未針對(duì)該所述源站IP進(jìn)行路徑選取,則選取所述源站IP所在所述IP分組對(duì)應(yīng)的所述路徑列表中路徑使用次數(shù)最高的作為本次訪問(wèn)請(qǐng)求的路徑。
于本發(fā)明一實(shí)施例中,所述入口網(wǎng)絡(luò)加速節(jié)點(diǎn)上生成歷史路徑列表,所述歷史路徑列表用于保存用戶IP到達(dá)源站IP的歷史路徑,且每個(gè)所述歷史路徑設(shè)有有效時(shí)間;在有效時(shí)間內(nèi),針對(duì)同一用戶IP對(duì)同一源站IP的訪問(wèn)請(qǐng)求,采用所述歷史路徑列表中所保存的所述用戶IP到所述源站IP的歷史路徑,并重置有效時(shí)間。
同時(shí),本發(fā)明還提供一種路徑選取系統(tǒng),包括探測(cè)模塊、分析處理模塊、收發(fā)模塊、運(yùn)算處理模塊;所述探測(cè)模塊分別與所述分析處理模塊、所述收發(fā)模塊和所述運(yùn)算處理模塊相連,所述收發(fā)模塊分別與所述探測(cè)模塊、所述分析處理模塊和所述運(yùn)算處理模塊連接;所述探測(cè)模塊探測(cè)網(wǎng)絡(luò)加速節(jié)點(diǎn)自身到達(dá)其他網(wǎng)絡(luò)加速節(jié)點(diǎn)或源站IP的鏈路時(shí)延和丟包率,并獲取所述其他網(wǎng)絡(luò)加速節(jié)點(diǎn)的負(fù)載和帶寬使用率,并將探測(cè)結(jié)果發(fā)送至所述分析處理模塊或所述收發(fā)模塊;所述分析處理模塊接收來(lái)自所述探測(cè)模塊的探測(cè)結(jié)果,基于所述探測(cè)結(jié)果判斷出口網(wǎng)絡(luò)加速節(jié)點(diǎn)是否可用,并將判斷結(jié)果發(fā)送至所述收發(fā)模塊;所述出口網(wǎng)絡(luò)加速節(jié)點(diǎn)為與源站相連的最后一跳網(wǎng)絡(luò)加速節(jié)點(diǎn);所述運(yùn)算處理模塊從所述收發(fā)模塊獲取和或所述收發(fā)模塊所述網(wǎng)絡(luò)加速節(jié)點(diǎn)自身到達(dá)可用出口網(wǎng)絡(luò)加速節(jié)點(diǎn)鏈路的時(shí)延、可用出口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)源站IP的鏈路時(shí)延,并計(jì)算兩者之和,選取時(shí)延最小的作為路徑選取結(jié)果,并將所述路徑選取結(jié)果發(fā)送至所述收發(fā)模塊;所述收發(fā)模塊接收用戶訪問(wèn)請(qǐng)求、來(lái)自所述探測(cè)模塊探測(cè)結(jié)果、所述分析處理模塊的判斷結(jié)果以及所述運(yùn)算處理模塊的路徑選取結(jié)果,發(fā)送探測(cè)請(qǐng)求、所述探測(cè)結(jié)果及所述路徑選取結(jié)果。
于本發(fā)明一實(shí)施例中,所述分析處理模塊判斷所述出口網(wǎng)絡(luò)加速節(jié)點(diǎn)是否可用包括以下步驟:從所述探測(cè)模塊獲取到達(dá)所述出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路時(shí)延、丟包率及負(fù)載和帶寬使用率;當(dāng)所述鏈路時(shí)延、丟包率、負(fù)載及帶寬使用率其中一項(xiàng)或多項(xiàng)低于相應(yīng)預(yù)設(shè)閾值時(shí),判定所述出口網(wǎng)絡(luò)加速節(jié)點(diǎn)可用。
于本發(fā)明一實(shí)施例中,所述探測(cè)模塊探測(cè)入口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)所述出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路時(shí)延、到達(dá)所述源站IP的鏈路時(shí)延時(shí),通過(guò)平均值法計(jì)算得出。
于本發(fā)明一實(shí)施例中,還包含存儲(chǔ)模塊,所述存儲(chǔ)模塊與所述收發(fā)模塊相連,用于從所述收發(fā)模塊接收所述路徑選取結(jié)果,并將所述路徑選取結(jié)果存儲(chǔ)在路徑選取列表;當(dāng)接收到用戶訪問(wèn)請(qǐng)求時(shí),先在所述路徑選取列表中進(jìn)行查詢,若存在同一用戶IP訪問(wèn)同一源站IP的記錄,則選取對(duì)應(yīng)的路徑進(jìn)行傳輸和回源。
于本發(fā)明一實(shí)施例中,還包括存儲(chǔ)模塊,存有路徑列表,所述路徑列表中對(duì)屬于同一運(yùn)營(yíng)商、同一地理區(qū)域的源站IP歸為同一IP分組,記錄每一個(gè)所述IP分組中的所述源站IP使用過(guò)的每一條路徑及其使用次數(shù);當(dāng)接收到用戶針對(duì)某個(gè)源站IP的訪問(wèn)請(qǐng)求時(shí),若在所述路徑選取列表中無(wú)法查找到相應(yīng)記錄,則選取所述路徑列表中所述源站IP所在IP分組對(duì)應(yīng)的路徑使用次數(shù)最高的路徑作為本次訪問(wèn)請(qǐng)求的路徑。
于本發(fā)明一實(shí)施例中,還包括存儲(chǔ)模塊,所述存儲(chǔ)模塊存有歷史路徑列表,所述歷史路徑列表用于存儲(chǔ)用戶IP到源站IP的歷史路徑,及每個(gè)所述歷史路徑的有效時(shí)間;在所述歷史路徑有效時(shí)間內(nèi),若收到同一個(gè)用戶IP發(fā)往同一個(gè)源站IP的請(qǐng)求,則采用所述歷史路徑列表中所保存的該用戶IP到該源站IP的歷史路徑,并重置有效時(shí)間。
另外,本發(fā)明還提供一種網(wǎng)絡(luò)加速節(jié)點(diǎn),采用上述任一實(shí)施例所述的路徑選取系統(tǒng)選取自身到達(dá)源站IP的最優(yōu)路徑。
相應(yīng)的,本發(fā)明還提供一種網(wǎng)絡(luò)加速系統(tǒng),包括若干上述的網(wǎng)絡(luò)加速節(jié)點(diǎn),以使用戶通過(guò)所述網(wǎng)絡(luò)加速節(jié)點(diǎn)選取最優(yōu)路徑訪問(wèn)相應(yīng)的源站IP。
如上所述,本發(fā)明的路徑選取方法及系統(tǒng)、網(wǎng)絡(luò)加速節(jié)點(diǎn)、網(wǎng)絡(luò)加速系統(tǒng),具有以下有益效果:
(1)由網(wǎng)絡(luò)加速節(jié)點(diǎn)自身來(lái)計(jì)算到源站的最優(yōu)路徑,無(wú)需中央服務(wù)器介入,加快了路徑選取的效率;
(2)僅向可用網(wǎng)絡(luò)加速節(jié)點(diǎn)發(fā)起路徑探測(cè),降低了路徑探測(cè)數(shù)量,優(yōu)化了路徑選取的質(zhì)量;
(3)能夠基于在前路徑選取結(jié)果進(jìn)行后續(xù)路徑選取,提高了路徑選取效率。
(4)通過(guò)平均值法計(jì)算鏈路時(shí)延,降低了因網(wǎng)絡(luò)抖動(dòng)而帶來(lái)的數(shù)據(jù)異常對(duì)探測(cè)結(jié)果的影響。
(5)通過(guò)歷史路徑列表的使用,保證同一會(huì)話中的用戶訪問(wèn)請(qǐng)求可以按照原路進(jìn)行回源。
附圖說(shuō)明
圖1繪示為本發(fā)明一較佳實(shí)施例所提供的路徑選取方法的流程圖;
圖2繪示為本發(fā)明一實(shí)施例所提供的路徑選取方法過(guò)程示意圖;
圖3繪示為本發(fā)明一較佳實(shí)施例所提供的路徑選取系統(tǒng)的結(jié)構(gòu)示意圖;
圖4繪示為本發(fā)明一實(shí)施所提供的網(wǎng)絡(luò)加速系統(tǒng)結(jié)構(gòu)示意圖。
元件標(biāo)號(hào)說(shuō)明
10 探測(cè)模塊
20 分析處理模塊
30 收發(fā)模塊
31 接收單元
32 發(fā)送單元
40 運(yùn)算處理模塊
50 存儲(chǔ)模塊
60 查詢模塊
21 用戶
22 網(wǎng)絡(luò)加速系統(tǒng)
23 源站
具體實(shí)施方式
以下通過(guò)特定的具體實(shí)例說(shuō)明本發(fā)明的實(shí)施方式,本領(lǐng)域技術(shù)人員可由本說(shuō)明書(shū)所揭露的內(nèi)容輕易地了解本發(fā)明的其他優(yōu)點(diǎn)與功效。本發(fā)明還可以通過(guò)另外不同的具體實(shí)施方式加以實(shí)施或應(yīng)用,本說(shuō)明書(shū)中的各項(xiàng)細(xì)節(jié)也可以基于不同觀點(diǎn)與應(yīng)用,在沒(méi)有背離本發(fā)明的精神下進(jìn)行各種修飾或改變。需說(shuō)明的是,在不沖突的情況下,以下實(shí)施例及實(shí)施例中的特征可以相互組合。
需要說(shuō)明的是,以下實(shí)施例中所提供的圖示僅以示意方式說(shuō)明本發(fā)明的基本構(gòu)想,遂圖式中僅顯示與本發(fā)明中有關(guān)的組件而非按照實(shí)際實(shí)施時(shí)的組件數(shù)目、形狀及尺寸繪制,其實(shí)際實(shí)施時(shí)各組件的型態(tài)、數(shù)量及比例可為一種隨意的改變,且其組件布局型態(tài)也可能更為復(fù)雜。
首先,對(duì)本發(fā)明說(shuō)明書(shū)中的技術(shù)詞匯進(jìn)行解釋說(shuō)明。以下說(shuō)明是對(duì)本發(fā)明技術(shù)的解釋,但本發(fā)明并不以此為限。
源站,互聯(lián)網(wǎng)內(nèi)容提供商為用戶提供資源訪問(wèn)的網(wǎng)站,部署在不同地理位置、不同互聯(lián)網(wǎng)運(yùn)營(yíng)商的服務(wù)器上。
源站IP,源站所對(duì)應(yīng)的IP地址。同一個(gè)源站由于所在服務(wù)器的不同,所分配到的IP地址也不同。用戶向源站發(fā)起請(qǐng)求時(shí),無(wú)論是通過(guò)IP請(qǐng)求的方式,還是DNS請(qǐng)求方式,最終都會(huì)指向于一個(gè)具體的源站IP。
用戶,各種用戶應(yīng)用程序,通過(guò)向源站發(fā)出訪問(wèn)請(qǐng)求來(lái)獲取所需的資源服務(wù)。
網(wǎng)絡(luò)加速節(jié)點(diǎn),部署在不同地理位置、不同運(yùn)營(yíng)商網(wǎng)絡(luò)中的代理服務(wù)設(shè)備,相互之間有連接,構(gòu)成一個(gè)網(wǎng)絡(luò),該網(wǎng)絡(luò)連接用戶和源站。
入口網(wǎng)絡(luò)加速節(jié)點(diǎn),接收用戶訪問(wèn)請(qǐng)求的網(wǎng)絡(luò)加速節(jié)點(diǎn)。
出口網(wǎng)絡(luò)加速節(jié)點(diǎn),與源站相連的最后一跳網(wǎng)絡(luò)加速節(jié)點(diǎn)。
中間網(wǎng)絡(luò)加速節(jié)點(diǎn),分別連接入口網(wǎng)絡(luò)加速節(jié)點(diǎn)和出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的網(wǎng)絡(luò)加速節(jié)點(diǎn)。
時(shí)延,指一個(gè)報(bào)文或分組從一個(gè)網(wǎng)絡(luò)的一端傳送到另一個(gè)端所需要的時(shí)間。
丟包率,指所丟失數(shù)據(jù)包數(shù)量占所發(fā)送數(shù)據(jù)組的比率。
負(fù)載,指任務(wù)隊(duì)列數(shù)量與機(jī)器CPU核心數(shù)量的百分比。
帶寬使用率,已使用帶寬與鏈路總帶寬的比率。
請(qǐng)參照?qǐng)D1,圖1繪示本發(fā)明一較佳實(shí)施例所提供的的路徑選取方法的流程圖。如圖1所示,當(dāng)本發(fā)明中的入口網(wǎng)絡(luò)加速節(jié)點(diǎn)接收到用戶訪問(wèn)請(qǐng)求時(shí),通過(guò)本實(shí)施例所提供的路徑選取方法進(jìn)行最優(yōu)路徑的選取,具體包括以下步驟:
步驟S1、入口網(wǎng)絡(luò)加速節(jié)點(diǎn)探測(cè)到達(dá)各個(gè)出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路時(shí)延(RTT1),并判斷各個(gè)出口網(wǎng)絡(luò)加速節(jié)點(diǎn)是否可用。
具體地,入口網(wǎng)絡(luò)加速節(jié)點(diǎn)判斷出口網(wǎng)絡(luò)加速節(jié)點(diǎn)是否可用包括以下步驟:
11)入口網(wǎng)絡(luò)加速節(jié)點(diǎn)探測(cè)并獲取到達(dá)出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路的時(shí)延、丟包率、負(fù)載及帶寬使用率;
12)當(dāng)出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路的時(shí)延、丟包率、負(fù)載和帶寬使用率均低于相應(yīng)的預(yù)設(shè)閾值時(shí),判斷該出口網(wǎng)絡(luò)加速節(jié)點(diǎn)可用。
本發(fā)明中,鏈路的時(shí)延、丟包率、負(fù)載和帶寬使用率都有相應(yīng)的預(yù)設(shè)閾值。所述預(yù)設(shè)閾值可根據(jù)各網(wǎng)絡(luò)加速節(jié)點(diǎn)的實(shí)際狀態(tài)和實(shí)際需求來(lái)進(jìn)行預(yù)設(shè),預(yù)設(shè)閾值保存在各網(wǎng)絡(luò)加速節(jié)點(diǎn)的程序中,可以以不可修改的形式保存,也可以以可修改的形式進(jìn)行保存。
值得注意的是,本實(shí)施例中,在判斷出口網(wǎng)絡(luò)加速節(jié)點(diǎn)是否可用時(shí),綜合考慮了鏈路時(shí)延、丟包率、負(fù)載和帶寬使用率是否均低于相應(yīng)的預(yù)設(shè)閾值,而在本發(fā)明的其他實(shí)施例中,可根據(jù)實(shí)際需求僅考慮其中一項(xiàng)或多項(xiàng)是否低于相應(yīng)閾值。另外,鏈路時(shí)延、丟包率、負(fù)載和帶寬使用率可分別具有相應(yīng)的優(yōu)先級(jí)。當(dāng)一定優(yōu)先級(jí)的參數(shù)低于其預(yù)設(shè)閾值時(shí),則可判斷該出口網(wǎng)絡(luò)加速節(jié)點(diǎn)可用。例如,負(fù)載和帶寬使用率為第一優(yōu)先級(jí),時(shí)延為第二優(yōu)先級(jí),丟包率為第三優(yōu)先級(jí)。當(dāng)負(fù)載和/或帶寬使用率低于對(duì)應(yīng)預(yù)設(shè)閾值時(shí),則可判斷該出口網(wǎng)絡(luò)加速節(jié)點(diǎn)可用?;蛘?,當(dāng)?shù)诙?yōu)先級(jí)及以上的參數(shù)低于其對(duì)應(yīng)預(yù)設(shè)閾值時(shí),即負(fù)載、帶寬使用率和時(shí)延均低于其相應(yīng)預(yù)設(shè)閾值時(shí),則可判斷該出口網(wǎng)絡(luò)加速節(jié)點(diǎn)可用。
在本發(fā)明的一些實(shí)施例中,入口網(wǎng)絡(luò)加速節(jié)點(diǎn)也同時(shí)是出口網(wǎng)絡(luò)加速節(jié)點(diǎn),也就是說(shuō),該網(wǎng)絡(luò)加速節(jié)點(diǎn)不僅接受用戶訪問(wèn)請(qǐng)求,而且是與源站相連的最后一跳網(wǎng)絡(luò)加速節(jié)點(diǎn)。如此一來(lái),在步驟S1中,入口網(wǎng)絡(luò)加速節(jié)點(diǎn)探測(cè)到達(dá)各個(gè)出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路時(shí)延、丟包率、負(fù)載和帶寬使用率時(shí),包含探測(cè)到達(dá)入口網(wǎng)絡(luò)加速節(jié)點(diǎn)自身的鏈路時(shí)延、丟包率、負(fù)載和帶寬使用率。
在本發(fā)明的實(shí)施例中,入口網(wǎng)絡(luò)加速節(jié)點(diǎn)與出口網(wǎng)絡(luò)加速節(jié)點(diǎn)之間可以是直接相連的關(guān)系,也可以是通過(guò)一個(gè)或多個(gè)其他網(wǎng)絡(luò)加速節(jié)點(diǎn)相連的關(guān)系。也就是說(shuō),入口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)各個(gè)出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路中可以是連接了一個(gè)或多個(gè)中間網(wǎng)絡(luò)加速節(jié)點(diǎn),也可以是沒(méi)有連接其他網(wǎng)絡(luò)加速節(jié)點(diǎn)的直接連接。在這種架構(gòu)下,本發(fā)明的實(shí)施例中,對(duì)入口網(wǎng)絡(luò)加速節(jié)點(diǎn)探測(cè)到出口網(wǎng)絡(luò)節(jié)點(diǎn)的鏈路時(shí)延有兩具體實(shí)施方式,方式一:中間網(wǎng)絡(luò)加速節(jié)點(diǎn)對(duì)其下一跳節(jié)點(diǎn)的鏈路時(shí)延、丟包率、負(fù)載及帶寬使用率發(fā)送給入口網(wǎng)絡(luò)加速節(jié)點(diǎn),入口網(wǎng)絡(luò)加速節(jié)點(diǎn)根據(jù)上述判斷方法對(duì)該中間網(wǎng)絡(luò)加速節(jié)點(diǎn)的下一跳節(jié)點(diǎn)是否可用,也就是說(shuō),在該實(shí)施方式中,中間網(wǎng)絡(luò)加速節(jié)點(diǎn)和出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的可用性判斷都由入口網(wǎng)絡(luò)加速節(jié)點(diǎn)來(lái)完成;方式二:入口網(wǎng)絡(luò)加速節(jié)點(diǎn)或中間網(wǎng)絡(luò)加速節(jié)點(diǎn)先對(duì)到達(dá)下一跳的網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路時(shí)延、丟包率、負(fù)載及帶寬使用率進(jìn)行探測(cè),并通過(guò)上述方法對(duì)該下一跳網(wǎng)絡(luò)加速節(jié)點(diǎn)進(jìn)行可用判斷,若可用則向該可用網(wǎng)絡(luò)加速節(jié)點(diǎn)發(fā)出探測(cè)請(qǐng)求,該可用網(wǎng)絡(luò)加速節(jié)點(diǎn)繼續(xù)對(duì)其下一跳網(wǎng)絡(luò)加速節(jié)點(diǎn)進(jìn)行探測(cè)和判斷,直到出口網(wǎng)絡(luò)加速節(jié)點(diǎn),因此,入口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的時(shí)延為中間各段鏈路時(shí)延之和,且各相關(guān)節(jié)點(diǎn)的可用性判斷任務(wù)也分散在各中間節(jié)點(diǎn)中,從而降低入口網(wǎng)絡(luò)加速節(jié)點(diǎn)的任務(wù)量,實(shí)現(xiàn)負(fù)載均衡。
步驟S2、入口網(wǎng)絡(luò)加速節(jié)點(diǎn)從可用的出口網(wǎng)絡(luò)加速節(jié)點(diǎn)獲取該出口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)源站IP的鏈路時(shí)延(RTT2)。
具體地,步驟S2包括以下步驟:
21)入口網(wǎng)絡(luò)加速節(jié)點(diǎn)僅向可用的出口網(wǎng)絡(luò)加速節(jié)點(diǎn)發(fā)起針對(duì)源站IP的探測(cè)請(qǐng)求;
22)入口網(wǎng)絡(luò)加速節(jié)點(diǎn)接收出口網(wǎng)絡(luò)加速節(jié)點(diǎn)發(fā)送來(lái)的該出口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)源站IP的鏈路時(shí)延(RTT2)。
其中,出口網(wǎng)絡(luò)加速節(jié)點(diǎn)接收到針對(duì)源站IP的探測(cè)請(qǐng)求時(shí),探測(cè)從自身到達(dá)源站IP的鏈路時(shí)延(RTT2),并將探測(cè)得到的鏈路時(shí)延(RTT2)返回給入口網(wǎng)絡(luò)加速節(jié)點(diǎn)。也就是說(shuō),出口網(wǎng)絡(luò)加速節(jié)點(diǎn)僅在接收到探測(cè)請(qǐng)求后,才探測(cè)自身到源站IP的鏈路時(shí)延。
步驟S3、入口網(wǎng)絡(luò)加速節(jié)點(diǎn)根據(jù)自身到達(dá)可用的出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路時(shí)延,以及可用的出口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)源站IP的鏈路時(shí)延,選取入口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)源站IP的最優(yōu)路徑。
具體地,入口網(wǎng)絡(luò)加速節(jié)點(diǎn)計(jì)算自身到達(dá)可用的出口網(wǎng)絡(luò)加速節(jié)點(diǎn)、可用的出口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)源站IP的總鏈路時(shí)延,選取總鏈路時(shí)延最小的一條路徑作為最優(yōu)路徑。
優(yōu)選地,獲取入口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路時(shí)延、以及出口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)源站IP的鏈路時(shí)延時(shí),采用平均值法計(jì)算,對(duì)最近幾次或者一個(gè)時(shí)間周期內(nèi)的鏈路時(shí)延進(jìn)行計(jì)算平均值,以作為該鏈路的時(shí)延數(shù)據(jù),通過(guò)這種方式,能夠減少因網(wǎng)絡(luò)鏈路抖動(dòng)所產(chǎn)生異常數(shù)據(jù)對(duì)路徑選擇的影響。
下面通過(guò)具體實(shí)施例來(lái)闡述本發(fā)明的路徑選取方法。請(qǐng)參照?qǐng)D2,圖2繪示本發(fā)明一實(shí)施例所提供的路徑選取方法過(guò)程示意圖。如圖2所示,網(wǎng)絡(luò)加速節(jié)點(diǎn)A、B、C和D中,A為入口網(wǎng)絡(luò)加速節(jié)點(diǎn),直接接收用戶U的訪問(wèn)請(qǐng)求;B、C和D為距離源站X僅有一跳的出口網(wǎng)絡(luò)加速節(jié)點(diǎn)。A針對(duì)到用戶U的訪問(wèn)請(qǐng)求進(jìn)行路徑選取時(shí),首先分別探測(cè)到達(dá)B、C和D的鏈路時(shí)延RTTB1、RTTC1和RTTD1,并根據(jù)獲取到的到達(dá)B、C、D的鏈路時(shí)延、丟包率、負(fù)載、帶寬使用率及相應(yīng)的預(yù)設(shè)閾值,判斷B、C和D是否為可用的出口網(wǎng)絡(luò)加速節(jié)點(diǎn)。若B的負(fù)載高于預(yù)設(shè)閾值,則判斷B為不可用。因此,A僅向C和D發(fā)出探測(cè)請(qǐng)求,C和D接收到A發(fā)出的探測(cè)請(qǐng)求后,探測(cè)自身到達(dá)源站X的鏈路時(shí)延RTTC2和RTTD2,并將探測(cè)結(jié)果返回至A。A分別計(jì)算RTTC1與RTTC2之和、RTTD1與RTTD2之和,最后選擇較小的RTTC1與RTTC2之和所對(duì)應(yīng)的路徑AC作為路徑探測(cè)的結(jié)果,即選擇入口網(wǎng)絡(luò)加速節(jié)點(diǎn)A-出口網(wǎng)絡(luò)加速節(jié)點(diǎn)C-源站X作為用戶U訪問(wèn)源站X的最優(yōu)路徑。
優(yōu)選地,所獲取的RTTB1、RTTC1、RTTC2、RTTD1和RTTD2采用平均值法計(jì)算得出,即對(duì)最近幾次或者一個(gè)時(shí)間周期內(nèi)的相應(yīng)鏈路時(shí)延進(jìn)行計(jì)算平均值,以作為該鏈路的時(shí)延數(shù)據(jù)。
本發(fā)明的實(shí)施例中,更包含保存根據(jù)上述路徑選取方法所獲得的最優(yōu)路徑的步驟,在同一個(gè)探測(cè)周期內(nèi),同一用戶向同一源站IP發(fā)出訪問(wèn)請(qǐng)求時(shí),先查詢保存的最優(yōu)路徑中是否有相應(yīng)的記錄,若有,則直接選取該相應(yīng)路徑為本次訪問(wèn)路徑,若沒(méi)有相應(yīng)記錄,則按照上述方法進(jìn)行最優(yōu)路徑的探測(cè)。該些保存的最優(yōu)路徑記錄保存時(shí)間為一個(gè)探測(cè)周期,當(dāng)前探測(cè)周期結(jié)束后將被清除,并繼續(xù)存入新的探測(cè)周期中探測(cè)得到的最優(yōu)路徑,所述清除的方法可以是直接將記錄刪除,也可以是將其隱藏起來(lái),本發(fā)明并不做限制。
由此可見(jiàn),該最優(yōu)路徑是在當(dāng)前探測(cè)周期內(nèi),同一用戶向同一源站IP發(fā)出訪問(wèn)請(qǐng)求時(shí)的最優(yōu)路徑,也就是說(shuō),在同一個(gè)探測(cè)周期內(nèi),當(dāng)同一用戶再次訪問(wèn)該源站IP時(shí),訪問(wèn)請(qǐng)求將根據(jù)先前所探測(cè)到的最優(yōu)路徑,從入口網(wǎng)絡(luò)加速節(jié)點(diǎn)傳輸?shù)皆凑綢P,源站IP按照原路進(jìn)行回源,從而保證用戶請(qǐng)求能得到最快的傳輸和反饋。當(dāng)新的周期開(kāi)始時(shí),則需要重新進(jìn)行探測(cè)。
在本發(fā)明的實(shí)施例中,入口網(wǎng)絡(luò)加速節(jié)點(diǎn)將源站IP根據(jù)網(wǎng)絡(luò)運(yùn)營(yíng)商和地理位置進(jìn)行分組,將屬于同一運(yùn)營(yíng)商、同一地理區(qū)域的源站IP歸為同一IP分組,并針對(duì)每一個(gè)IP分組采用一個(gè)路徑列表保存該IP分組中的源站IP使用過(guò)的每一條路徑及其使用次數(shù)。優(yōu)選地,在路徑列表中,按照該IP分組使用過(guò)的每一條路徑的使用次數(shù)從大到小的順序?qū)β窂竭M(jìn)行排序。每當(dāng)網(wǎng)絡(luò)加速節(jié)點(diǎn)完成針對(duì)一個(gè)源站IP的路徑選擇時(shí),就在該源站IP所屬的IP分組的路徑列表中,為所選取的最優(yōu)路徑的使用次數(shù)加1。
當(dāng)入口網(wǎng)絡(luò)加速節(jié)點(diǎn)接收到用戶針對(duì)某個(gè)源站IP的訪問(wèn)請(qǐng)求時(shí),若尚未針對(duì)該源站IP進(jìn)行路徑選取(即在所保存的最優(yōu)路徑記錄中無(wú)法查詢到相應(yīng)記錄),則選取該源站IP所在IP分組對(duì)應(yīng)的路徑列表中路徑使用次數(shù)最高的路徑作為本次訪問(wèn)請(qǐng)求的路徑,并同時(shí)根據(jù)上述路徑選取方法針對(duì)本次訪問(wèn)請(qǐng)求進(jìn)行路徑選擇,保存探測(cè)結(jié)果,以供后續(xù)相同用戶的相同訪問(wèn)請(qǐng)求使用。
若既未對(duì)該源站IP進(jìn)行路徑選取,也沒(méi)有對(duì)應(yīng)的IP分組記錄,則本次訪問(wèn)路徑根據(jù)預(yù)先制定的默認(rèn)路徑進(jìn)行傳輸和回源,并同時(shí)根據(jù)上述路徑選取方法,針對(duì)本次訪問(wèn)請(qǐng)求進(jìn)行路徑選擇,保存探測(cè)結(jié)果。
如此一來(lái),在一個(gè)探測(cè)周期中首次出現(xiàn)的用戶訪問(wèn)請(qǐng)求時(shí),入口網(wǎng)絡(luò)加速節(jié)點(diǎn)可以根據(jù)路徑列表或默認(rèn)路徑及時(shí)地選擇一個(gè)較佳的路徑進(jìn)行傳輸和回源,保證了用戶訪問(wèn)請(qǐng)求傳輸和反饋的穩(wěn)定性,且在一定程度上保證了傳輸路徑的質(zhì)量。
本發(fā)明的實(shí)施例中,入口網(wǎng)絡(luò)加速節(jié)點(diǎn)上生成有歷史路徑列表,該歷史路徑列表用于保存用戶IP到達(dá)源站IP的歷史路徑,并為每個(gè)歷史路徑配置有效時(shí)間。在有效時(shí)間內(nèi),針對(duì)同一用戶IP對(duì)同一源站IP的訪問(wèn)請(qǐng)求,采用歷史路徑列表中所保存的該用戶IP到該源站IP的歷史路徑,并重置有效時(shí)間。
具體地,在一些情況下,如基于TCP協(xié)議類型的請(qǐng)求,源站要求在同一個(gè)會(huì)話期間,請(qǐng)求的用戶IP不可以發(fā)生變化,這就要求同一用戶IP到達(dá)源站IP的路徑在這個(gè)會(huì)話期間內(nèi)不可以變化,否則可能會(huì)被源站要求重新登錄,從而無(wú)法建立有效連接。針對(duì)這種情況,在網(wǎng)絡(luò)加速節(jié)點(diǎn)上生成一個(gè)歷史路徑列表,用來(lái)保存一個(gè)用戶IP到一個(gè)源站IP的歷史路徑,且每個(gè)歷史路徑都設(shè)置有有效時(shí)間。在該歷史路徑有效時(shí)間內(nèi),若收到同一個(gè)用戶IP發(fā)往同一個(gè)源站IP的請(qǐng)求,則采用歷史路徑列表中所保存的該用戶IP到該源站IP的歷史路徑,并重置有效時(shí)間。
本發(fā)明所提供的路徑選取方法通過(guò)入口網(wǎng)絡(luò)加速節(jié)點(diǎn)實(shí)現(xiàn)路徑選擇,且出口網(wǎng)絡(luò)加速節(jié)點(diǎn)只在接收到探測(cè)請(qǐng)求時(shí)才需對(duì)源站IP進(jìn)行探測(cè)。如此一來(lái)不僅簡(jiǎn)化了原有加速網(wǎng)絡(luò)的架構(gòu),而且降低了網(wǎng)絡(luò)加速節(jié)點(diǎn)的探測(cè)任務(wù)數(shù)量及最終的計(jì)算選擇量,從而釋放了探測(cè)量過(guò)大所占用的寬帶。不僅如此,本發(fā)明所提供的路徑選取方法在選擇路徑的過(guò)程中還綜合考慮了鏈路的時(shí)延、丟包率、負(fù)載和帶寬使用率等綜合因素,不僅保證了傳輸線路的質(zhì)量,而且改善了各網(wǎng)絡(luò)加速節(jié)點(diǎn)的負(fù)載均衡。
更進(jìn)一步的,通過(guò)使用平均值法計(jì)算獲得鏈路的時(shí)延,可在一定程度上防止因網(wǎng)絡(luò)抖動(dòng)對(duì)時(shí)延數(shù)據(jù)的影響;通過(guò)使用路徑表,可保證尚未進(jìn)行路徑探測(cè)的用戶訪問(wèn)請(qǐng)求可快速分配到較優(yōu)的路徑,避免當(dāng)次用戶訪問(wèn)請(qǐng)求的反饋速率因路徑的不確定性而出現(xiàn)異常;通過(guò)使用歷史路徑列表,可保證在同一網(wǎng)絡(luò)會(huì)話過(guò)程中所使用的路徑的統(tǒng)一性,避免因路勁的不同而出現(xiàn)源站拒絕響應(yīng)的情況。
此外,本發(fā)明還提供一種路徑選取系統(tǒng)。請(qǐng)參照?qǐng)D3,圖3繪示本發(fā)明一較佳實(shí)施例所提供的路徑選取系統(tǒng)。本實(shí)施例所提供的路徑選取系統(tǒng),包括探測(cè)模塊10、分析處理模塊20、收發(fā)模塊30、運(yùn)算處理模塊40,其中探測(cè)模塊10和收發(fā)模塊30分別連接其他三個(gè)模塊。該路徑選取系統(tǒng)應(yīng)用在各網(wǎng)絡(luò)加速節(jié)點(diǎn)上。
探測(cè)模塊10,用于探測(cè)網(wǎng)絡(luò)加速節(jié)點(diǎn)自身到達(dá)其他網(wǎng)絡(luò)加速節(jié)點(diǎn)或到達(dá)源站IP的鏈路時(shí)延,以及獲取自身到達(dá)其他網(wǎng)絡(luò)加速節(jié)點(diǎn)的丟包率和其他網(wǎng)絡(luò)加速節(jié)點(diǎn)的負(fù)載和帶寬使用率,并將探測(cè)結(jié)果發(fā)送給分析處理模塊20或收發(fā)模塊30。具體地,若該網(wǎng)絡(luò)加速節(jié)點(diǎn)為入口網(wǎng)絡(luò)加速節(jié)點(diǎn),在其接收到用戶訪問(wèn)請(qǐng)求時(shí),探測(cè)模塊10對(duì)到達(dá)出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路進(jìn)行時(shí)延、丟包率、負(fù)載和帶寬使用率進(jìn)行探測(cè),并將探測(cè)結(jié)果發(fā)送給分析處理模塊20;若該網(wǎng)絡(luò)加速節(jié)點(diǎn)為出口網(wǎng)絡(luò)加速節(jié)點(diǎn),當(dāng)該出口網(wǎng)絡(luò)加速節(jié)點(diǎn)接收到來(lái)自入口網(wǎng)絡(luò)加速節(jié)點(diǎn)的探測(cè)請(qǐng)求時(shí),探測(cè)模塊10對(duì)到達(dá)源站IP的鏈路進(jìn)行時(shí)延探測(cè),并將探測(cè)結(jié)果發(fā)送給收發(fā)模塊30,收發(fā)模塊30將探測(cè)結(jié)果返回給請(qǐng)求節(jié)點(diǎn);若該網(wǎng)絡(luò)加速節(jié)點(diǎn)為入口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路上的中間網(wǎng)絡(luò)加速節(jié)點(diǎn),在入口網(wǎng)絡(luò)加速節(jié)點(diǎn)對(duì)到達(dá)出口網(wǎng)絡(luò)加速節(jié)點(diǎn)鏈路進(jìn)行探測(cè)時(shí),探測(cè)模塊10對(duì)到達(dá)下一跳中間網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路進(jìn)行時(shí)延、丟包率、負(fù)載和帶寬使用率的探測(cè),并將探測(cè)結(jié)果發(fā)送給收發(fā)模塊30。
分析處理模塊20,入口網(wǎng)絡(luò)加速節(jié)點(diǎn)的分析模塊20接收來(lái)自探測(cè)模塊10的探測(cè)結(jié)果,基于所述探測(cè)結(jié)果判斷出口網(wǎng)絡(luò)加速節(jié)點(diǎn)是否可用,并將判斷結(jié)果發(fā)送至收發(fā)模塊20。具體地,分析處理模塊20判斷出口網(wǎng)絡(luò)加速節(jié)點(diǎn)是否可用包括以下步驟:
11)接收來(lái)自探測(cè)模塊10的自身到達(dá)出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的鏈路的丟包率、負(fù)載、帶寬使用率;
12)當(dāng)鏈路的時(shí)延、丟包率、負(fù)載和帶寬使用率均低于相應(yīng)的預(yù)設(shè)閾值時(shí),判斷該出口網(wǎng)絡(luò)加速節(jié)點(diǎn)可用。
本發(fā)明中,鏈路的時(shí)延、丟包率、負(fù)載和帶寬使用率都有相應(yīng)的預(yù)設(shè)閾值,該些預(yù)設(shè)閾值可根據(jù)各網(wǎng)絡(luò)加速節(jié)點(diǎn)的實(shí)際狀態(tài)和實(shí)際需求來(lái)進(jìn)行預(yù)設(shè),預(yù)設(shè)閾值保存在各網(wǎng)絡(luò)加速節(jié)點(diǎn)中,可以以不可修改的形式保存,也可以以可修改的形式進(jìn)行保存。
值得注意的是,本實(shí)施例中,在判斷出口網(wǎng)絡(luò)加速節(jié)點(diǎn)是否可用時(shí),綜合考慮了鏈路時(shí)延、丟包率、負(fù)載和帶寬使用率是否均低于相應(yīng)的預(yù)設(shè)閾值,而在本發(fā)明的其他實(shí)施例中,可根據(jù)實(shí)際需求僅考慮其中一項(xiàng)或多項(xiàng)是否低于相應(yīng)閾值。另外,鏈路時(shí)延、丟包率、負(fù)載和帶寬使用率可分別具有相應(yīng)的優(yōu)先級(jí)。當(dāng)一定優(yōu)先級(jí)的參數(shù)低于其預(yù)設(shè)閾值時(shí),則可判斷該出口網(wǎng)絡(luò)加速節(jié)點(diǎn)可用。例如,負(fù)載和帶寬使用率為第一優(yōu)先級(jí),時(shí)延為第二優(yōu)先級(jí),丟包率為第三優(yōu)先級(jí)。當(dāng)負(fù)載和/或帶寬使用率低于對(duì)應(yīng)預(yù)設(shè)閾值時(shí),則可判斷該出口網(wǎng)絡(luò)加速節(jié)點(diǎn)可用?;蛘?,當(dāng)?shù)诙?yōu)先級(jí)及以上的參數(shù)低于其對(duì)應(yīng)預(yù)設(shè)閾值時(shí),即負(fù)載、帶寬使用率和時(shí)延均低于其相應(yīng)預(yù)設(shè)閾值時(shí),則可判斷該出口網(wǎng)絡(luò)加速節(jié)點(diǎn)可用。
本發(fā)明的一些實(shí)施例中,入口網(wǎng)絡(luò)加速節(jié)點(diǎn)與出口網(wǎng)絡(luò)加速節(jié)點(diǎn)之間還連接有至少一個(gè)中間網(wǎng)絡(luò)加速節(jié)點(diǎn),在這種情況下,入口網(wǎng)絡(luò)加速節(jié)點(diǎn)在判斷出口網(wǎng)絡(luò)加速節(jié)點(diǎn)是否可用時(shí),包含判斷該些中間網(wǎng)絡(luò)加速節(jié)點(diǎn)是否可用,主要有以下兩種實(shí)施方式,方式一:中間網(wǎng)絡(luò)加速節(jié)點(diǎn)將其探測(cè)模塊10的對(duì)下一跳節(jié)點(diǎn)的探測(cè)結(jié)果通過(guò)收發(fā)模塊30發(fā)送給入口網(wǎng)絡(luò)加速節(jié)點(diǎn),入口網(wǎng)絡(luò)加速節(jié)點(diǎn)根據(jù)上述判斷方法對(duì)該中間網(wǎng)絡(luò)加速節(jié)點(diǎn)的下一跳節(jié)點(diǎn)是否可用進(jìn)行判斷,也就是說(shuō),在該實(shí)施方式中,中間網(wǎng)絡(luò)加速節(jié)點(diǎn)和出口網(wǎng)絡(luò)加速節(jié)點(diǎn)的可用性判斷都由入口網(wǎng)絡(luò)加速節(jié)點(diǎn)來(lái)完成;方式二:中間網(wǎng)絡(luò)加速節(jié)點(diǎn)的分析處理模塊20接收探測(cè)模塊10的探測(cè)結(jié)果并判斷該中間網(wǎng)絡(luò)加速節(jié)點(diǎn)的下一跳網(wǎng)絡(luò)加速節(jié)點(diǎn)是否可用,也就是說(shuō),在該實(shí)施方式中,各網(wǎng)絡(luò)加速節(jié)點(diǎn)的可用性判斷均有其上一跳網(wǎng)絡(luò)加速節(jié)點(diǎn)來(lái)完成,如此一來(lái),可分散任務(wù)處理量,更好實(shí)現(xiàn)負(fù)載均衡。
運(yùn)算處理模塊40,根據(jù)分析處理結(jié)果,從探測(cè)模塊10獲取自身到達(dá)可用出口網(wǎng)絡(luò)加速節(jié)點(diǎn)鏈路的時(shí)延、從收發(fā)模塊30獲取可用出口網(wǎng)絡(luò)加速節(jié)點(diǎn)到達(dá)源站IP的鏈路時(shí)延,并計(jì)算兩者之和,選取時(shí)延最小的路徑作為路徑選取結(jié)果,并將路徑選取結(jié)果發(fā)送給收發(fā)模塊30。值得注意的是,本實(shí)施例中,運(yùn)算處理模塊40是通過(guò)收發(fā)模塊30獲取分析結(jié)果,而本發(fā)明的其他實(shí)施例中,運(yùn)算處理模塊40可直接從分析處理模塊20獲取分析處理結(jié)果,或通過(guò)其他方式獲得分析處理結(jié)果,本發(fā)明并不以此為限。
收發(fā)模塊30,包含接收單元31和發(fā)送單元32,其中接收單元31接收來(lái)自網(wǎng)絡(luò)加速節(jié)點(diǎn)內(nèi)部及外部的數(shù)據(jù),包含來(lái)自外部的用戶訪問(wèn)請(qǐng)求和其他網(wǎng)絡(luò)加速節(jié)點(diǎn)發(fā)送來(lái)的探測(cè)請(qǐng)求及探測(cè)結(jié)果,來(lái)自內(nèi)部探測(cè)模塊10的探測(cè)結(jié)果、分析處理模塊20的分析處理結(jié)果以及運(yùn)算處理模塊40的路徑選取結(jié)果,發(fā)送單元32向網(wǎng)絡(luò)加速節(jié)點(diǎn)外部發(fā)送相關(guān)數(shù)據(jù),包含向可用的入口網(wǎng)絡(luò)加速節(jié)點(diǎn)發(fā)送探測(cè)請(qǐng)求、向其他網(wǎng)絡(luò)加速節(jié)點(diǎn)發(fā)送探測(cè)請(qǐng)求和路徑選取結(jié)果。
進(jìn)一步的,本實(shí)施例中,路徑選取系統(tǒng)更包含一存儲(chǔ)模塊50和查詢模塊60。存儲(chǔ)模塊50連接于收發(fā)模塊30,從收發(fā)模塊30中獲取路徑選取結(jié)果,并將該些路徑選取結(jié)果保存在路徑選取列表L1中,包含用戶信息、源站IP及路徑,該路徑選取列表在一個(gè)周期內(nèi)有效,周期結(jié)束后將被清空,并存入新周期所發(fā)生的路徑選取結(jié)果。查詢模塊60在接收到用戶訪問(wèn)請(qǐng)求時(shí),先對(duì)存儲(chǔ)模塊中的路徑選取列表L1查詢,若存在同一用戶訪問(wèn)同一源站的相應(yīng)記錄,則選取對(duì)應(yīng)的路徑進(jìn)行傳輸和回源。
當(dāng)路徑選取列表L1中沒(méi)有相應(yīng)的記錄時(shí),需及時(shí)為當(dāng)前用戶訪問(wèn)請(qǐng)求分配一個(gè)有效路徑,在本發(fā)明的實(shí)施例中,存儲(chǔ)模塊50中更包含路徑選取列表L2,將屬于同一運(yùn)營(yíng)商、同一地理區(qū)域的源站IP歸為同一IP分組,并針對(duì)每一個(gè)IP分組采用一個(gè)路徑列表保存該IP分組中的源站IP使用過(guò)的每一條路徑及其使用次數(shù)。當(dāng)入口網(wǎng)絡(luò)加速節(jié)點(diǎn)接收到用戶發(fā)來(lái)的針對(duì)某個(gè)源站IP的訪問(wèn)請(qǐng)求時(shí),查詢模塊60在路徑選取列表L1中無(wú)法查找到相應(yīng)記錄,則選取該源站IP所在IP分組對(duì)應(yīng)的路徑選取列表L2中路徑使用次數(shù)最高的路徑作為本次訪問(wèn)請(qǐng)求的路徑。
在一些情況下,源站要求在同一個(gè)會(huì)話期間,請(qǐng)求的用戶IP不可以發(fā)生變化,這就要求同一用戶IP到達(dá)源站IP的路徑在一段時(shí)間內(nèi)不可以變化,否則可能會(huì)被源站要求重新登錄。針對(duì)這種情況,本發(fā)明的實(shí)施例中,存儲(chǔ)模塊50中更保存有歷史路徑列表L3,歷史路徑列表L3保存一個(gè)用戶IP到一個(gè)源站IP的歷史路徑,且每個(gè)歷史路徑都設(shè)置有有效時(shí)間。在該歷史路徑有效時(shí)間內(nèi),若收到同一個(gè)用戶IP發(fā)往同一個(gè)源站IP的請(qǐng)求,查詢模塊60首先對(duì)歷史路徑列表L3進(jìn)行查詢,若查詢到相應(yīng)記錄,且處于有效時(shí)間內(nèi),則采用歷史路徑列表中所保存的該用戶IP到該源站IP的歷史路徑,并重置有效時(shí)間,從而保證了同一個(gè)會(huì)話期間同一個(gè)用戶訪問(wèn)請(qǐng)求按照相同路徑進(jìn)行傳輸。
本發(fā)明實(shí)施例中所提供的路徑選取系統(tǒng)均運(yùn)行在網(wǎng)絡(luò)加速節(jié)點(diǎn)上,也就是說(shuō),本發(fā)明實(shí)施例中的網(wǎng)絡(luò)加速節(jié)點(diǎn)在不同的用戶訪問(wèn)請(qǐng)求會(huì)話期間,既可是入口網(wǎng)絡(luò)加速節(jié)點(diǎn),也可以是出口網(wǎng)絡(luò)加速節(jié)點(diǎn),或中間網(wǎng)絡(luò)加速節(jié)點(diǎn),當(dāng)網(wǎng)絡(luò)加速節(jié)點(diǎn)的定位不同時(shí),系統(tǒng)各模塊的功能也會(huì)進(jìn)行相應(yīng)調(diào)整。如此一來(lái),各網(wǎng)絡(luò)加速節(jié)點(diǎn)所構(gòu)成的網(wǎng)絡(luò)架構(gòu)簡(jiǎn)單、靈活,可適用于不同的應(yīng)用場(chǎng)景,從而更好地滿足實(shí)際需求。
本發(fā)明還提供一種網(wǎng)絡(luò)加速節(jié)點(diǎn),其采用上述的路徑選取系統(tǒng)選取自身到達(dá)源站IP的最優(yōu)路徑。
參照?qǐng)D4,圖4繪示本發(fā)明一實(shí)施所提供的網(wǎng)絡(luò)加速系統(tǒng)結(jié)構(gòu)示意圖。如圖4所示,網(wǎng)絡(luò)加速系統(tǒng),包括若干上述網(wǎng)絡(luò)加速節(jié)點(diǎn)22,以使用戶21通過(guò)網(wǎng)絡(luò)加速節(jié)點(diǎn)選取最優(yōu)路徑訪問(wèn)相應(yīng)的源站23IP。
具體地,用戶發(fā)送訪問(wèn)請(qǐng)求至對(duì)應(yīng)的入口網(wǎng)絡(luò)加速節(jié)點(diǎn),該入口網(wǎng)絡(luò)加速節(jié)點(diǎn)的路徑選取系統(tǒng)對(duì)路徑進(jìn)行選取,記錄由該網(wǎng)絡(luò)加速節(jié)點(diǎn)至源站IP的最優(yōu)路徑,使得用戶能夠基于該最優(yōu)路徑實(shí)現(xiàn)對(duì)源站IP的訪問(wèn),從而加快了網(wǎng)絡(luò)訪問(wèn)速度,提供了用戶體驗(yàn)。
綜上所述,本發(fā)明的路徑選取方法及系統(tǒng)、網(wǎng)絡(luò)加速節(jié)點(diǎn)、網(wǎng)絡(luò)加速系統(tǒng)由網(wǎng)絡(luò)加速節(jié)點(diǎn)自身來(lái)計(jì)算到源站的最優(yōu)路徑,無(wú)需中央服務(wù)器介入,加快了路徑選取的效率;僅向可用網(wǎng)絡(luò)加速節(jié)點(diǎn)發(fā)起路徑探測(cè),降低了路徑探測(cè)數(shù)量,優(yōu)化了路徑選取的質(zhì)量;能夠基于在前路徑選取結(jié)果進(jìn)行后續(xù)路徑選取,提高了路徑選取效率。所以,本發(fā)明有效克服了現(xiàn)有技術(shù)中的種種缺點(diǎn)而具高度產(chǎn)業(yè)利用價(jià)值。
上述實(shí)施例僅例示性說(shuō)明本發(fā)明的原理及其功效,而非用于限制本發(fā)明。任何熟悉此技術(shù)的人士皆可在不違背本發(fā)明的精神及范疇下,對(duì)上述實(shí)施例進(jìn)行修飾或改變。因此,舉凡所屬技術(shù)領(lǐng)域中具有通常知識(shí)者在未脫離本發(fā)明所揭示的精神與技術(shù)思想下所完成的一切等效修飾或改變,仍應(yīng)由本發(fā)明的權(quán)利要求所涵蓋。