流量調(diào)度方法和裝置的制造方法
【技術領域】
[0001] 本申請涉及互聯(lián)網(wǎng)通信領域,尤其涉及內(nèi)容分發(fā)網(wǎng)絡(⑶N,ContentDelivery Network)中的流量調(diào)度方法和裝置。
【背景技術】
[0002] 如本領域公知的,CDN的基本思路就在于盡可能避開互聯(lián)網(wǎng)上有可能影響數(shù)據(jù)傳 輸速度和穩(wěn)定性的瓶頸和環(huán)節(jié),使內(nèi)容傳輸?shù)母?、更穩(wěn)定。CDN系統(tǒng)通過在網(wǎng)絡各處放置 節(jié)點服務器,構成現(xiàn)有的互聯(lián)網(wǎng)基礎之上的一層智能虛擬網(wǎng)絡。CDN系統(tǒng)能夠實時地根據(jù) 網(wǎng)絡流量和各節(jié)點的連接、負載狀況以及到用戶的距離和響應時間等綜合信息,將用戶的 請求重新導向離用戶最近的服務節(jié)點即內(nèi)容服務器上。其目的是使用戶可就近取得所需內(nèi) 容,解決互聯(lián)網(wǎng)網(wǎng)絡擁擠的狀況,提高用戶訪問某域名網(wǎng)站的響應速度。
[0003] 通常,在⑶N中需要針對某域名下的流量實現(xiàn)全局負載均衡及按需調(diào)度。目前比 較通用的技術是一種基于域名系統(tǒng)(DNS,DomainNameSystem)解析的流量調(diào)度方法,其中 根據(jù)需要設置某域名/服務下轄各內(nèi)容服務器(例如,IP地址)的流量分配權重,各內(nèi)容服 務器的權重之和為100%,并將該設置下發(fā)至權威DNS(權威域名服務器)。當本地DNS(本 地域名服務器)下轄某用戶訪問該域名時,DNS解析請求發(fā)送到本地DNS,若此時本地DNS處 對應于該域名的記錄緩存未過期,則直接將緩存的域名解析結果返回給用戶。若此時本地 DNS處對應于該域名的記錄緩存過期,則本地DNS通過迭代查詢方式最終向權威DNS請求域 名解析。權威DNS接收到域名解析請求之后,根據(jù)預先設定的各內(nèi)容服務器地址的流量分 配權重比例,確定本次向本地DNS返回哪個內(nèi)容服務器地址。然后本地DNS向用戶返回該 內(nèi)容服務器地址。當各內(nèi)容服務器地址的權重誤差值都收斂至0時,權威DNS向流量調(diào)度 平臺匯報一輪調(diào)度結束并開始下一輪調(diào)度。
[0004] 上述基于DNS解析的流量調(diào)度方法通過按設定的比例將流量調(diào)度到多個內(nèi)容服 務器,可以實現(xiàn)各個內(nèi)容服務器負載均衡,提高內(nèi)容服務器的利用率。然而仍然存在如下的 一些問題。
[0005] 首先,在現(xiàn)有基于DNS解析的流量調(diào)度方法中,權威DNS在返回內(nèi)容服務器時,從 多個內(nèi)容服務器中選擇一個內(nèi)容服務器地址返回。這有可能導致:1)用戶可選擇性低,當 該內(nèi)容服務器宕機或發(fā)生故障時,本次調(diào)度涉及的用戶訪問全部失敗,影響面過大;2)若遇 瞬時訪問流量較大時,該內(nèi)容服務器將獨自承擔較大訪問壓力。
[0006] 其次,在現(xiàn)有基于DNS解析的流量調(diào)度方法中,沒有考慮每個本地DNS服務器可能 服務的用戶數(shù),每個本地DNS可能服務的用戶數(shù)有時會差別比較大,個別情況下會導致流 量調(diào)度精度不高的問題。
[0007] 另外,在現(xiàn)有基于DNS解析的流量調(diào)度方法中,涉及到的本地DNS數(shù)量多,一般數(shù) 量以萬為單位,算法運算起來成本較高,流量調(diào)度結果達到預期設定目標要求所需收斂過 程/時間長。
[0008] 綜上所述,需求一種改進的流量調(diào)度方案,來克服上述現(xiàn)有技術中的這些問題。
【發(fā)明內(nèi)容】
[0009] 本申請的一個目的在于提供一種改進的流量調(diào)度方案,以解決用戶對內(nèi)容服務器 的可選擇性低導致的、當該內(nèi)容服務宕機或發(fā)生故障時本次調(diào)度涉及的用戶訪問全部失敗 以及遇瞬時訪問流量較大時該內(nèi)容服務器將獨自承擔較大訪問壓力的問題。
[0010] 本申請的另一目的在于提供一種改進的流量調(diào)度方案,以解決由于不同本地DNS 可能服務的用戶數(shù)不同導致流量調(diào)度精度不高的問題。
[0011] 本申請的又一目的在于提供一種改進的流量調(diào)度方案,以解決流量調(diào)度結果達到 預期設定目標要求所需收斂過程/時間長導致流量調(diào)度效率不高的問題。
[0012] 根據(jù)本申請一個方面的實施例,提供一種流量調(diào)度方法,其特征在于,包括:接收 來自本地域名服務器的域名解析請求;以及響應于所述域名解析請求,向所述本地域名服 務器返回多個內(nèi)容服務器地址。
[0013] 根據(jù)本申請另一方面的實施例,提供一種流量調(diào)度裝置,其特征在于,包括:接收 模塊,用于接收來自本地域名服務器的域名解析請求;以及返回模塊,用于響應于所述域名 解析請求,向所述本地域名服務器返回多個內(nèi)容服務器地址。
[0014] 與現(xiàn)有技術相比,根據(jù)本申請的技術方案,通過向本地域名服務器一次返回多個 內(nèi)容服務器地址,以由本地域名服務器將該多個內(nèi)容服務器地址返回給用戶,由用戶從中 隨機選擇一個內(nèi)容服務器地址進行網(wǎng)絡訪問,從而允許客服端用戶隨機訪問,有效分散風 險,解決了現(xiàn)有技術中用戶對內(nèi)容服務器的可選擇性低導致的、當該內(nèi)容服務宕機或發(fā)生 故障時本次調(diào)度涉及的用戶訪問全部失敗以及遇瞬時訪問流量較大時該內(nèi)容服務器將獨 自承擔較大訪問壓力的問題。
[0015] 另外,根據(jù)本申請的技術方案,抽樣統(tǒng)計本地域名服務器服務的用戶數(shù)目,對各個 本地域名服務器區(qū)別對待,給予不同的本地域名服務器相應的權重,并使用該權重去影響 或調(diào)整流量調(diào)度,從而提高流量調(diào)度的精準度。
[0016] 此外,根據(jù)本申請的技術方案,依據(jù)一定原則削減涉及的本地域名服務器數(shù)量,同 時引入流量調(diào)度偏差容忍度的概念,使得實現(xiàn)流量調(diào)度結果達到設定目標的快速收斂,從 而提_流量調(diào)度的效率。
【附圖說明】
[0017] 此處所說明的附圖用來提供對本申請的進一步理解,構成本申請的一部分,本申 請的示意性實施例及其說明用于解釋本申請,并不構成對本申請的不當限定。在附圖中:
[0018] 圖1示出根據(jù)本申請一個實施例的流量調(diào)度方法的流程圖;
[0019] 圖2示出根據(jù)本申請另一實施例的流量調(diào)度方法的流程圖;
[0020] 圖3示出根據(jù)本申請一個實施例的確定與域名對應的各內(nèi)容服務器地址的權重 誤差值的方法的流程圖;
[0021] 圖4示出根據(jù)本申請一個實施例的確定本地域名服務器的權重的方法的流程圖; 以及
[0022] 圖5示出根據(jù)本申請一個實施例的流量調(diào)裝置的結構框圖。
【具體實施方式】
[0023]-方面,本申請的思想在于,使得權威域名服務器響應于域名解析請求返回內(nèi)容 服務器地址時,一次返回多個,并能保證最終流量調(diào)度依然能夠達到比例要求。從而允許客 服端隨機選擇內(nèi)容服務器地址進行訪問,進而減少內(nèi)容服務器故障時的影響并避免訪問流 量大時內(nèi)容服務器的訪問壓力過大。
[0024] 另一方面,本申請的思想在于,考慮各個本地域名服務器服務的用戶數(shù)目的差異 性,針對不同的本地域名服務器賦予相應的權重來用于調(diào)整流量調(diào)度,從而提高流量調(diào)度 的精準度。
[0025]再一方面,本申請的思想在于,考慮各個本地域名服務器的影響力,僅選擇影響力 大的本地域名服務器參與流量調(diào)度的計算,從而大大減少需要納入計算的本地域名服務器 的數(shù)目,也就是縮小待計算的本地域名服務器的范圍,使得在盡可能短的時間內(nèi)獲得相對 滿意的流量調(diào)度結果,也就是提高流量調(diào)度的效率。并且引入流量調(diào)度偏差容忍度的概念, 使得誤差計算收斂到可接受的范圍內(nèi)而不是零,從而可以根據(jù)實際應用中的不同要求來靈 活地調(diào)整流量調(diào)度的精準度。
[0026] 為使本申請的目的、技術方案和優(yōu)點更加清楚,以下結合附圖及具體實施例,對本 申請作進一步的詳細說明。
[0027] 參照圖1,圖1示出根據(jù)本申請一個實施例的流量調(diào)度方法100的流程圖。
[0028] 如圖1所示,在步驟S110處,接收來自本地域名服務器的域名解析請求。
[0029] 本申請的流量調(diào)度方案是基于DNS解析的,可以在權威域名服務器(權威DNS)側 實施。
[0030] 通常用戶訪問某域名網(wǎng)站時,向本地域名服務器(本地DNS)發(fā)出訪問請求。本地 域名服務器響應于該訪問請求,查看本地域名緩存中是否包含該域名對應的內(nèi)容服務器地 址例如IP地址等。如果包含則直接返回給用戶以供用戶進行網(wǎng)站訪問。如果沒有包含則 本地域名服務器通過迭代查詢方式最終向權威域名服務器發(fā)出域名解析請求,以請求該域 名對應的內(nèi)容服務器地址。相應地,權威域名服務器可以接收這樣的來自本地域名服務器 的域名解析請求。
[0031] 接下來,在步驟S120處,響應于該域名解析請求,向本地域名服務器返回多個內(nèi) 容服務器地址。
[0032]具體而言,權威域名服務器可以從域名解析請求中獲取到相應的域名。然后通過 查找其維護的域名-內(nèi)容服務器地址的預定映射關系,可以獲取到與該域名解析請求中的 域名對應的若干內(nèi)容服務器地址。根據(jù)本申請的實施例,權威域名服務器可以從這些內(nèi)容 服務器地址中隨機選擇或者按照一定規(guī)則選擇多個內(nèi)容服務器地址返回給本地域名服務 器。
[0033] 這里,內(nèi)容服務器地址可以是IP地址、也可以是MAC地址等,本申請對此并不做任 何限制。
[0034]本申請的發(fā)明點就在于,權威域名服務器向本地域名服務器返回多個內(nèi)容服務器 地址,而不是像現(xiàn)有技術中那樣,由權威域名服務器隨機選擇與域名對應的一個內(nèi)容服務 器地址返回給本地域名服務器。如前面提及的,由此可以允許客服端用戶自己隨機選擇內(nèi) 容服務器,進而減少內(nèi)容服務器故障時的影響并且降低訪問流量大時內(nèi)容服務器的訪問壓 力。
[0035] 至此結合圖1描述了根據(jù)本申請基本構思的流量調(diào)度方法的過程。下面結合圖2 對本申請實施例的流量調(diào)度方法進行更詳細的描述。
[0036] 圖2示出根據(jù)本申請