專利名稱:內(nèi)容分發(fā)網(wǎng)絡中響應用戶服務請求的方法、系統(tǒng)和設備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及流媒體應用領(lǐng)域,尤其涉及一種內(nèi)容分發(fā)網(wǎng)絡中響應用戶服務
請求的方法、系統(tǒng)和i殳備。
背景技術(shù):
隨著互聯(lián)網(wǎng)業(yè)務和內(nèi)容的快速發(fā)展,內(nèi)容和流量增長的速度已經(jīng)高于物理 網(wǎng)絡擴展的速度,此時就會出現(xiàn)網(wǎng)絡擁塞和影響業(yè)務應用體驗的情況。內(nèi)容分 發(fā)網(wǎng)絡(Content Delivery Network, CDN)作為 一種提高互聯(lián)網(wǎng)內(nèi)容傳輸效率, 特別是提高視頻等多媒體內(nèi)容傳輸?shù)姆召|(zhì)量、節(jié)省骨干網(wǎng)絡帶寬的技術(shù)和服 務,得到越來越廣泛的應用和推廣。
如圖l所示,CDN的網(wǎng)絡構(gòu)架主要由管理控制層和網(wǎng)絡內(nèi)容分發(fā)層組成, 其中,管理控制層由CDN網(wǎng)管系統(tǒng)和負載均衡系統(tǒng)組成,負載均衡系統(tǒng)中包 含負載均衡設備,主要負責全局負載均衡;網(wǎng)絡內(nèi)容分發(fā)層主要由CDN網(wǎng)絡 中的若干CDN服務節(jié)點組成,這些CDN服務節(jié)點通過Internet網(wǎng)絡相互連接, 負責將來自內(nèi)容/業(yè)務層的數(shù)據(jù)內(nèi)容分發(fā)給用戶終端。用戶終端通過Internet網(wǎng) 絡與CDN服務節(jié)點之間具有一條或多條網(wǎng)絡通路,將該通路稱為用戶終端與 CDN服務節(jié)點之間的鏈路。
當用戶需要獲取數(shù)據(jù)時,首先,用戶終端通過本地域名解析服務器(Domain Name Server, DNS )發(fā)起域名解析請求,該域名解析請求通過Internet網(wǎng)絡被 轉(zhuǎn)發(fā)至管理控制層中的負載均衡系統(tǒng);負載均衡系統(tǒng)根據(jù)域名解析請求中所包 含的本地DNS的IP地址,確定用戶終端所屬的網(wǎng)絡區(qū)域;才艮據(jù)用戶終端所屬 網(wǎng)絡區(qū)域和通過不斷釆集得來的各個CDN服務節(jié)點的資源狀態(tài)信息,選取有空閑資源且距離本地DNS最近的CDN服務節(jié)點,向用戶終端返回該CDN服 務節(jié)點的IP地址;然后,用戶終端根據(jù)IP地址向所述CDN服務節(jié)點發(fā)起業(yè) 務/內(nèi)容請求,所述CDN服務節(jié)點向用戶終端提供業(yè)務/內(nèi)容服務。
通過負載均衡系統(tǒng)的負載均衡,用戶終端的請求被路由到離其最近的CDN 服務節(jié)點,由于距離近,用戶終端能夠獲得快速的服務。
在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下技術(shù)問題 目前,負載均衡系統(tǒng)在為用戶終端分配CDN服務資源時,僅僅考慮了 CDN 服務節(jié)點是否有空閑資源、距離用戶終端的本地DNS的遠近等因素,而沒有 考慮用戶終端到CDN服務資源的鏈路狀況,這可能會導致CDN服務節(jié)點雖然 空閑可用并與用戶終端的本地DNS的距離最近,但由于用戶終端到該CDN服 務節(jié)點的網(wǎng)絡出現(xiàn)了擁塞,使得用戶的訪問無法得到正常的服務,大大降低了 CDN系統(tǒng)的服務質(zhì)量。
發(fā)明內(nèi)容
本發(fā)明實施例提供一種內(nèi)容分發(fā)網(wǎng)絡中響應用戶服務請求的方法、系統(tǒng)和 設備,用以提高CDN系統(tǒng)的服務質(zhì)量。
本發(fā)明實施例提供一種內(nèi)容分發(fā)網(wǎng)絡CDN中響應用戶服務請求的方法, 該方法包括
接收用戶終端發(fā)出的服務請求,所述服務請求用于請求內(nèi)容分發(fā)節(jié)點的地 址信息;
獲取所述用戶終端與所述CDN中內(nèi)容分發(fā)節(jié)點間的鏈路狀態(tài)信息,根據(jù) 所述鏈路狀態(tài)信息選取與所述用戶終端間的鏈路狀態(tài)滿足預設條件的內(nèi)容分 發(fā)節(jié)點;
將所述選取的內(nèi)容分發(fā)節(jié)點的地址信息返回給所述用戶終端。
本發(fā)明實施例提供一種內(nèi)容分發(fā)系統(tǒng),該系統(tǒng)包括
用戶終端,用于向負載均衡單元發(fā)送服務請求,所述服務請求用于請求內(nèi)容分發(fā)單元的地址信息;
負載均衡單元,用于接收所述服務請求;獲取所述用戶終端與內(nèi)容分發(fā)網(wǎng) 絡CDN中內(nèi)容分發(fā)單元間的鏈路狀態(tài)信息,根據(jù)所述鏈路狀態(tài)信息選取與所 述用戶終端間的鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)單元;將所述選取的內(nèi)容分 發(fā)單元的地址信息返回給所述用戶終端。
本發(fā)明實施例提供一種負載均衡設備,該設備包括
接收單元,用于接收用戶終端發(fā)出的服務請求,所述服務請求用于請求內(nèi) 容分發(fā)節(jié)點的地址信息;
選取單元,用于獲取所述用戶終端與內(nèi)容分發(fā)網(wǎng)絡CDN中內(nèi)容分發(fā)節(jié)點 間的鏈路狀態(tài)信息,根據(jù)所述鏈路狀態(tài)信息選取與所述用戶終端間的鏈路狀態(tài) 滿足預設條件的內(nèi)容分發(fā)節(jié)點;
響應單元,用于將所述選取的內(nèi)容分發(fā)節(jié)點的地址信息返回給所述用戶終端。
本發(fā)明中,通過根據(jù)請求服務的用戶終端與內(nèi)容分發(fā)節(jié)點間的鏈路狀態(tài)信 息,將鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)節(jié)點分配給該用戶終端,從而為CDN 管理控制層更加準確的路由用戶的訪問和分配CDN服務資源提供了保證,進 一步提供了 CDN的服務質(zhì)量。
圖1為現(xiàn)有技術(shù)中CDN的網(wǎng)絡構(gòu)架示意圖2A為本發(fā)明實施例所提供系統(tǒng)的結(jié)構(gòu)示意圖2B為本發(fā)明實施例所提供系統(tǒng)中負載均衡單元的結(jié)構(gòu)示意圖3為本發(fā)明實施例所提供方法的流程示意圖。
具體實施方式
到正常服務的情況,提高CDN系統(tǒng)的服務質(zhì)量,本發(fā)明實施例提供一種內(nèi)容 分發(fā)系統(tǒng),本系統(tǒng)中,根據(jù)用戶終端與CDN中內(nèi)容分發(fā)單元間的鏈路狀態(tài)信 息,為該用戶終端分配內(nèi)容分發(fā)單元,使用戶得到更好的服務。
參見圖2A,本發(fā)明實施例提供的內(nèi)容分發(fā)系統(tǒng),具體包括一個或多個用 戶終端20、 一個或多個負載均衡單元21、 一個或多個內(nèi)容分發(fā)單元22,其中
用戶終端20,用于向負載均衡單元發(fā)送服務請求;接收負載均衡單元返回 的內(nèi)容分發(fā)單元的地址信息,根據(jù)該地址信息向內(nèi)容分發(fā)單元發(fā)起業(yè)務/內(nèi)容請
求;
負載均衡單元21,用于接收用戶終端發(fā)出的服務請求;獲取用戶終端與 CDN網(wǎng)絡中內(nèi)容分發(fā)單元間的鏈路狀態(tài)信息,根據(jù)鏈路狀態(tài)信息選取與用戶 終端間的鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)單元;將選取的內(nèi)容分發(fā)單元的地 址信息返回給用戶終端;
負載均衡單元21獲取用戶終端與CDN中內(nèi)容分發(fā)節(jié)點間的鏈路狀態(tài)信 息,具體方法可以是如下兩種第一種,從保存的預先從用戶終端采集的信息 中,讀取用戶終端與CDN中內(nèi)容分發(fā)單元間的鏈路狀態(tài)信息;第二種,請求 用戶終端上報該用戶終端的信息,從上報信息中獲取用戶終端與CDN中內(nèi)容 分發(fā)單元間的鏈路狀態(tài)信息。
內(nèi)容分發(fā)單元22,用于接收用戶終端發(fā)出的業(yè)務/內(nèi)容請求,向用戶終端 提供請求的服務。
內(nèi)容分發(fā)單元22包括CDN服務節(jié)點、除發(fā)出服務請求的用戶終端之外的 其他用戶終端,相應的,負載均衡單元21在獲取鏈路狀態(tài)信息時,需要獲取 發(fā)出服務請求的用戶終端與CDN服務節(jié)點之間的鏈路狀態(tài)信息,以及發(fā)出服 務請求的用戶終端與其他用戶終端的鏈路狀態(tài)信息。
負載均衡單元21接收到的服務請求可以是由用戶終端直接發(fā)送過來的內(nèi) 容業(yè)務請求,也可以是通過用戶終端的本地DNS轉(zhuǎn)發(fā)過來的域名解析請求。
鏈路狀態(tài)信息包括但不限于用戶終端的序列號、本地DNS的IP地址、用戶終端的IP地址、服務源站的IP地址、DNS解析時間、TCP連接時間、內(nèi) 容下栽的平均時間、總響應時間、反向探測時間、Ping延遲。其中,DNS解 析時間、TCP連接時間、內(nèi)容下載的平均時間、總響應時間、反向探測時間和 Ping延遲越短,表明用戶終端與內(nèi)容分發(fā)節(jié)點間的鏈路狀態(tài)越好,越長則表明 用戶終端與內(nèi)容分發(fā)節(jié)點間的鏈路狀態(tài)越差。
在選取內(nèi)容分發(fā)單元時,內(nèi)容分發(fā)單元的鏈路狀態(tài)需要滿足預設條件,例 如,獲取的用戶終端與某個內(nèi)容分發(fā)單元之間的鏈路狀態(tài)信息中,TCP連接時 間為100S、 Ping延遲為70S,而預設條件包括TCP連接時間不超過60S、 Ping延遲不超過80S,通過比對用戶終端與該內(nèi)容分發(fā)單元之間的鏈路狀態(tài)不 滿足預設條件,因此負載均衡單元并不選取該內(nèi)容分發(fā)單元;相反的,若用戶 終端與該內(nèi)容分發(fā)單元之間的鏈路狀態(tài)信息中的TCP連接時間未超過60S, 則負載均衡單元可以選取該內(nèi)容分發(fā)單元。
具體的,如圖2B所示,負載均衡單元21包括接收單元23、選取單元24 和響應單元25,其中
接收單元23,用于接收用戶終端發(fā)出的服務請求;
選取單元24,用于獲取用戶終端與CDN網(wǎng)絡中內(nèi)容分發(fā)單元間的鏈路狀 態(tài)信息,根據(jù)鏈路狀態(tài)信息選取與用戶終端間的鏈路狀態(tài)滿足預設條件的內(nèi)容 分發(fā)單元;
響應單元25,用于將選取的內(nèi)容分發(fā)單元的地址信息返回給用戶終端。
選取單元24在選取內(nèi)容分發(fā)單元時,除了需要考慮用戶終端的鏈路狀況 外,還可以考慮用戶終端的位置,相應的,負載均衡單元21還包括
位置單元26,用于從服務請求中獲取用戶終端的地址信息或用戶終端的本 地DNS的地址信息,才艮據(jù)地址信息確定用戶終端的位置;地址信息包括IP地 址等。
選取單元24用于
根據(jù)鏈路狀態(tài)信息以及確定的用戶終端的位置,選取與用戶終端間的鏈路狀態(tài)滿足預設條件、并且距離用戶終端最近的內(nèi)容分發(fā)單元。具體的,首先選
取與用戶終端間的鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)單元;若選取出的內(nèi)容分 發(fā)單元有多個,則從這多個內(nèi)容分發(fā)單元中選取距離用戶終端最近的內(nèi)容分發(fā) 單元。
這里,位置單元26根據(jù)用戶終端的地址信息確定用戶終端的位置時,直 接可以根據(jù)用戶終端的地址信息確定該用戶終端所屬的網(wǎng)絡區(qū)域;這種方法與 現(xiàn)有技術(shù)中根據(jù)本地DNS的地址信息確定用戶終端所屬的網(wǎng)絡區(qū)域相比,能 夠準確的定位用戶終端,因為現(xiàn)有技術(shù)中根據(jù)本地DNS的地址信息確定用戶 終端所屬的網(wǎng)絡區(qū)域,默認了用戶終端與內(nèi)地DNS —定位于同一網(wǎng)絡區(qū)域, 而事實并非如此,用戶終端與本地DNS也可能位于不同的網(wǎng)絡區(qū)域,因此根 據(jù)本地DNS的地址信息確定用戶終端所屬的網(wǎng)絡區(qū)域,準確性較低。選取單 元則選取與用戶終端間的鏈路狀態(tài)滿足預設條件、并且距離用戶終端最近的內(nèi) 容分發(fā)單元;
位置單元26根據(jù)用戶終端的本地DNS的地址信息確定用戶終端的位置 時,具體方法為根據(jù)DNS的地址信息查找使用該DNS的用戶終端的地址信 息,確定該地址所歸屬的網(wǎng)絡區(qū)域,將該網(wǎng)絡區(qū)域作為用戶終端所在的網(wǎng)絡區(qū) 域;這種方法與現(xiàn)有技術(shù)中直接將本地DNS所在的網(wǎng)絡區(qū)域作為用戶終端所 在的網(wǎng)絡區(qū)域相比,準確性更高。選取單元則選取與用戶終端間的鏈路狀態(tài)滿 足預設條件、并且距離用戶終端最近的內(nèi)容分發(fā)單元。
選取單元24在選取內(nèi)容分發(fā)單元時,除了需要考慮用戶終端的鏈路狀況, 或同時考慮用戶終端的鏈路狀況和用戶終端的位置外,還可以考慮內(nèi)容分發(fā)單 元的資源狀態(tài)信息,相應的,負載均衡單元21還包括
資源狀態(tài)單元27,用于獲取CDN中內(nèi)容分發(fā)單元的資源狀態(tài)信息;
選取單元24用于
根據(jù)鏈路狀態(tài)信息以及資源狀態(tài)信息,選取與用戶終端間的鏈路狀態(tài)滿足 預設條件、并且具有空閑資源的內(nèi)容分發(fā)單元。具體的,首先選取與用戶終端間的鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)單元;若選取出的內(nèi)容分發(fā)單元有多 個,則從這多個內(nèi)容分發(fā)單元中選取具有空閑資源的內(nèi)容分發(fā)單元。
資源狀態(tài)單元27獲取資源狀態(tài)信息的方法可以是,從保存的預先從內(nèi)容 分發(fā)單元采集的信息中,讀取內(nèi)容分發(fā)單元的資源狀態(tài)信息;還可以是,請求 內(nèi)容分發(fā)單元上報自身的資源狀態(tài)信息,進而從上報信息中來獲取。同樣的, 由于內(nèi)容分發(fā)單元包括CDN服務節(jié)點、除發(fā)出服務請求的用戶終端之外的其 他用戶終端,資源狀態(tài)單元27在獲取資源狀態(tài)信息時,需要獲取發(fā)出服務請 求的用戶終端的資源狀態(tài)信息,以及除發(fā)出服務請求的用戶終端之外的其他用 戶終端的資源狀態(tài)信息。
資源狀態(tài)信息包括但不限于可用存儲空間大小、可用網(wǎng)絡帶寬、可用 CPU資源。選取單元則選取與用戶終端間的鏈路狀態(tài)滿足預設條件、并且可用 存儲空間大小、可用網(wǎng)絡帶寬和可用CPU資源不為0的內(nèi)容分發(fā)單元。
當然,選取單元也可以根據(jù)位置單元確定的用戶終端的位置,以及資源狀 態(tài)單元獲取的內(nèi)容分發(fā)單元的資源狀態(tài)信息,選取同時滿足一下三種條件的內(nèi) 容分發(fā)單元第一,與用戶終端間的鏈路狀態(tài)滿足預設條件;第二,距離用戶 終端最近;第三,具有空閑資源。具體的選取策略包括但不限于以下兩種,第 一種,首先選取與用戶終端間的鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)單元;若選 取出的內(nèi)容分發(fā)單元有多個,則從這多個內(nèi)容分發(fā)單元中選取距離用戶終端最 近的內(nèi)容分發(fā)單元;若選取出的內(nèi)容分發(fā)單元仍有多個,則從這多個內(nèi)容分發(fā) 單元中選取具有空閑資源的內(nèi)容分發(fā)單元。第二種,首先選取與用戶終端間的 鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)單元;若選取出的內(nèi)容分發(fā)單元有多個,則 從這多個內(nèi)容分發(fā)單元中選取具有空閑資源的內(nèi)容分發(fā)單元;若選取出的內(nèi)容 分發(fā)單元仍有多個,則從這多個內(nèi)容分發(fā)單元中選取距離用戶終端最近的內(nèi)容 分發(fā)單元。
選取的內(nèi)容分發(fā)單元具體可以是CDN網(wǎng)絡中的CDN服務節(jié)點,也可以是 用戶終端。也即本系統(tǒng)中,用戶終端也可以向其他用戶終端提供內(nèi)容分發(fā)服務。作為內(nèi)容分發(fā)單元的用戶終端需要擁有一定大小的存儲介質(zhì)(如磁盤、內(nèi) 存等)、可以運行第三方程序的操作系統(tǒng)、并且可以通過網(wǎng)絡進行才喿作和訪問。
在接收到來自其他用戶終端的業(yè)務/內(nèi)容請求時,將自身通過CDN或互聯(lián)網(wǎng)下 載到的業(yè)務/內(nèi)容數(shù)據(jù)提供給其他用戶終端。
負載均衡單元將具有空閑資源的用戶終端選取為內(nèi)容分發(fā)單元,該用戶終 端為其他用戶終端提供內(nèi)容分發(fā)服務,不會影響用戶對作為內(nèi)容分發(fā)單元的用 戶終端的使用。
同時,作為內(nèi)容分發(fā)單元的用戶終端可以在不同的時間段提供不同的業(yè)務 /內(nèi)容,或者只在一定的時間段內(nèi)向其他用戶終端提供業(yè)務/內(nèi)容,相應的,負 載均衡單元21進一步包括
時間單元28,用于在選取單元選取的內(nèi)容分發(fā)單元為用戶終端時,獲取該 用戶終端的服務時間段信息,判斷當前時間是否在該服務時間段內(nèi),若不是, 則通知選取單元重新進行內(nèi)容分發(fā)單元的選取。
用戶終端還可以對是否加入CDN分發(fā)體系即是否向其他用戶終端提供內(nèi) 容分發(fā)服務進行設置,若設置為不加入CDN分發(fā)體系,則負載均衡單元根據(jù) 該設置不選取該用戶終端作為內(nèi)容分發(fā)單元。
作為內(nèi)容分發(fā)單元的用戶終端可以通過安裝的CDN客戶端軟件執(zhí)行相關(guān) CDN操作,例如,與負載均衡單元進行信息交互、設置服務時間段、提供內(nèi) 容分發(fā)服務等。
參見圖3,本發(fā)明實施例還提供一種CDN中響應用戶服務請求的方法, 該方法包括如下步驟
步驟30:接收用戶終端發(fā)出的服務請求;
這里,服務請求可以是直接由用戶終端發(fā)送過來的內(nèi)容業(yè)務請求,也可以 是由用戶終端的本地DNS轉(zhuǎn)發(fā)過來的域名解析請求。
步驟31:獲取用戶終端與CDN中內(nèi)容分發(fā)節(jié)點間的鏈路狀態(tài)信息,根據(jù) 鏈路狀態(tài)信息選取與用戶終端間的鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)節(jié)點;這里,CDN中的內(nèi)容分發(fā)節(jié)點包括CDN服務節(jié)點和其他用戶終端。鏈路 狀態(tài)信息包括但不限于用戶終端的序列號、本地DNS的IP地址、用戶終端 的IP地址、服務源站的IP地址、DNS解析時間、TCP連接時間、內(nèi)容下載 的平均時間、總響應時間、反向^J罙測時間、Ping延遲。
獲取用戶終端與CDN中內(nèi)容分發(fā)節(jié)點間的鏈路狀態(tài)信息,具體方法可以 是如下兩種
第一種,從保存的預先從用戶終端采集的信息中,讀取用戶終端與CDN 中內(nèi)容分發(fā)節(jié)點間的鏈路狀態(tài)信息。本方法中,為了實現(xiàn)對用戶終端的信息采 集,用戶終端定時將自身的信息進行上報,上^^的信息包括該用戶終端與CDN 中內(nèi)容分發(fā)節(jié)點間的鏈路狀態(tài)信息;
第二種,請求用戶終端上報該用戶終端的信息,從上報信息中獲取用戶終 端與CDN中內(nèi)容分發(fā)節(jié)點間的鏈路狀態(tài)信息。本方法中,用戶終端在收到請 求時將自身的信息進行上報,上報的信息包括該用戶終端與CDN中內(nèi)容分發(fā) 節(jié)點間的鏈路狀態(tài)信息。
較佳的,在選取內(nèi)容分發(fā)節(jié)點之前,該方法進一步包括
從服務請求中獲取用戶終端的地址信息或用戶終端的本地DNS的地址信 息;根據(jù)地址信息確定用戶終端的位置;
那么,選取內(nèi)容服務節(jié)點的方法為
根據(jù)鏈路狀態(tài)信息以及確定的用戶終端的位置,選取與用戶終端間的鏈路 狀態(tài)滿足預設條件、并且距離用戶終端最近的內(nèi)容分發(fā)節(jié)點。具體的,首先選 取與用戶終端間的鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)節(jié)點;若選取出的內(nèi)容分 發(fā)節(jié)點有多個,則從這多個內(nèi)容分發(fā)節(jié)點中選取距離用戶終端最近的內(nèi)容分發(fā) 節(jié)點。
根據(jù)用戶終端的本地DNS的地址信息確定用戶終端的位置的方法可以為 查找使用DNS的用戶終端的地址信息,確定該地址所歸屬的網(wǎng)絡區(qū)域,將該 網(wǎng)絡區(qū)域作為用戶終端所在的網(wǎng)絡區(qū)域。較佳的,在選取內(nèi)容分發(fā)節(jié)點之前,該方法進一步包括 獲取CDN中內(nèi)容分發(fā)節(jié)點的資源狀態(tài)信息。該資源狀態(tài)信息包括但不限 于可用存儲空間大小、可用網(wǎng)絡帶寬、可用CPU資源。獲取方法可以是從 保存的預先從內(nèi)容分發(fā)節(jié)點采集的信息中,讀取內(nèi)容分發(fā)節(jié)點的資源狀態(tài)信 息,為了實現(xiàn)對內(nèi)容分發(fā)節(jié)點的信息采集,內(nèi)容分發(fā)節(jié)點定時將自身的資源狀 態(tài)信息進行上報;獲取方法還可以是請求內(nèi)容分發(fā)節(jié)點上報自身的資源狀態(tài)信 息,進而從上才艮信息中來獲??;
那么,選取內(nèi)容服務節(jié)點的方法為
根據(jù)鏈路狀態(tài)信息以及資源狀態(tài)信息,選取與用戶終端間的鏈路狀態(tài)滿足 預設條件、并且具有空閑資源的內(nèi)容分發(fā)節(jié)點。具體的,首先選取與用戶終端 間的鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)節(jié)點;若選取出的內(nèi)容分發(fā)節(jié)點有多 個,則從這多個內(nèi)容分發(fā)節(jié)點中選取具有空閑資源的內(nèi)容分發(fā)節(jié)點。
較佳的,在選取內(nèi)容分發(fā)節(jié)點之前,該方法進一步包括
從服務請求中獲取用戶終端的地址信息或用戶終端的本地DNS的地址信 息,根據(jù)地址信息確定用戶終端的位置;以及,獲取CDN中內(nèi)容分發(fā)節(jié)點的 資源狀態(tài)信息;
那么,選取內(nèi)容服務節(jié)點的方法為
根據(jù)鏈路狀態(tài)信息和資源狀態(tài)信息,以及確定的用戶終端的位置,選取與 用戶終端間的鏈路狀態(tài)滿足預設條件、距離用戶終端最近、并且具有空閑資源 的內(nèi)容分發(fā)節(jié)點。具體的選取策略包括但不限于以下兩種,第一種,首先選取 與用戶終端間的鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)節(jié)點;若選取出的內(nèi)容分發(fā) 節(jié)點有多個,則從這多個內(nèi)容分發(fā)節(jié)點中選取距離用戶終端最近的內(nèi)容分發(fā)節(jié) 點;若選取出的內(nèi)容分發(fā)節(jié)點仍有多個,則從這多個內(nèi)容分發(fā)節(jié)點中選取具有 空閑資源的內(nèi)容分發(fā)節(jié)點。第二種,首先選取與用戶終端間的鏈路狀態(tài)滿足預 設條件的內(nèi)容分發(fā)節(jié)點;若選取出的內(nèi)容分發(fā)節(jié)點有多個,則從這多個內(nèi)容分 發(fā)節(jié)點中選取具有空閑資源的內(nèi)容分發(fā)節(jié)點;若選取出的內(nèi)容分發(fā)節(jié)點仍有多個,則從這多個內(nèi)容分發(fā)節(jié)點中選取距離用戶終端最近的內(nèi)容分發(fā)節(jié)點。
本步驟中選取的內(nèi)容分發(fā)節(jié)點可以是CDN服務節(jié)點或用戶終端,也即本 內(nèi)容服務。
較佳的,為了使得用戶終端能夠選擇時間段提供業(yè)務/內(nèi)容服務,在選取的 內(nèi)容分發(fā)節(jié)點為用戶終端時,該方法進一步包括
獲取選取的用戶終端的服務時間段信息,判斷當前時間是否在該服務時間 段內(nèi),若不是,則重新進行內(nèi)容分發(fā)節(jié)點的選取。
步驟32:將選取的內(nèi)容分發(fā)節(jié)點的地址信息返回給用戶終端;
步驟33:用戶終端根據(jù)地址信息向內(nèi)容分發(fā)節(jié)點發(fā)送業(yè)務/內(nèi)容請求;內(nèi) 容分發(fā)節(jié)點接收到該請求時,向用戶終端提供請求的服務。
下面以具體實施例對本發(fā)明方法進行說明
實施例一
步驟A01:用戶終端直接向CDN管理控制層中的負載均衡系統(tǒng)發(fā)起內(nèi)容 業(yè)務請求;如果CDN內(nèi)有用戶終端所請求的內(nèi)容業(yè)務凄t據(jù),則到步驟402; 否則,由CDN中和源站鏈路條件最好的CDN服務節(jié)點從源站獲取所請求的內(nèi) 容業(yè)務數(shù)據(jù),到步驟402;
步驟A02:負載均衡系統(tǒng)根據(jù)預先采集的CDN服務節(jié)點的資源狀態(tài)信息 和用戶終端的信息(包括資源狀態(tài)信息,以及與CDN服務節(jié)點和其他用戶終 端間的鏈路狀態(tài)信息),選取與發(fā)起內(nèi)容業(yè)務請求的用戶終端之間的鏈路狀況 滿足預設條件、并且具有空閑資源的內(nèi)容分發(fā)節(jié)點,本實施例中選取的內(nèi)容分 發(fā)節(jié)點為CDN服務節(jié)點;然后,將選取的CDN服務節(jié)點的IP地址返回給發(fā) 起內(nèi)容業(yè)務請求的用戶終端;
步驟A03 步驟A04 實施例二
用戶終端根據(jù)IP地址向CDN服務節(jié)點發(fā)起業(yè)務/內(nèi)容請求; 內(nèi)容分發(fā)節(jié)點向用戶終端提供服務。步驟A11:用戶終端通過本地DNS向服務站點發(fā)起域名解析請求,該請 求被轉(zhuǎn)發(fā)到CDN管理控制層中的負載均衡系統(tǒng);
步驟A12:負栽均衡系統(tǒng)首先獲取域名解析請求中的本地DNS的IP地址, 然后根據(jù)該IP地址查找使用該DNS的用戶終端的IP地址范圍,確定該地址范 圍所歸屬的網(wǎng)絡區(qū)域,將該網(wǎng)絡區(qū)域作為發(fā)起域名解析請求的用戶終端所在的 網(wǎng)纟各區(qū)i或;
負載均衡系統(tǒng)再根據(jù)預先采集的CDN服務節(jié)點的資源狀態(tài)信息、用戶終 端的信息(包括資源狀態(tài)信息,以及與CDN服務節(jié)點和其他用戶終端間的鏈 路狀態(tài)信息)、以及確定的發(fā)起域名解析請求的用戶終端所在的網(wǎng)絡區(qū)域,選 取與該用戶終端之間的鏈路狀況滿足預設條件、具有空閑資源、并且距離該用 戶終端最近的內(nèi)容分發(fā)節(jié)點,本實施例中選取的內(nèi)容分發(fā)節(jié)點為其他用戶終 端;向發(fā)起域名解析請求的用戶終端返回選取的用戶終端的IP地址;
步驟A13:發(fā)起域名解析請求的用戶終端向收到的IP地址對應的用戶終 端發(fā)起業(yè)務/內(nèi)容請求;
步驟A14:收到業(yè)務/內(nèi)容請求的用戶終端提供業(yè)務/內(nèi)容服務。
本發(fā)明實施例還提供一種負載均衡設備,該設備包括如圖2B所示的負載 均衡單元,該負載均衡單元包括接收單元、選取單元、響應單元、位置單元、 資源狀態(tài)單元、時間單元,其中各個單元的功能這里不再贅述,可參見對附圖 2B的描述。
綜上,本發(fā)明的有益效果在于
本發(fā)明實施例提供的方案中,通過根據(jù)請求服務的用戶終端與內(nèi)容分發(fā)節(jié) 點間的鏈路狀態(tài)信息,將鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)節(jié)點分配給該用戶 終端,從而為CDN管理控制層更加準確的路由用戶的訪問和分配CDN服務資 源提供了保證,進一步提供了 CDN的服務質(zhì)量。
本發(fā)明實施例提供的方案中,用戶終端可以和C DN管理控制層進行交互, 從而在CDN管理控制層的引導下進行內(nèi)容分發(fā)的服務。將用戶終端的網(wǎng)絡資源融入到整個CDN服務資源中,可以極大的節(jié)約CDN服務節(jié)點的投入力度; 同時用戶終端在CDN管理控制層的引導下進行內(nèi)容分發(fā),使得端到端的內(nèi)容 分發(fā)更加高效和有序,這將極大的節(jié)約底層IP網(wǎng)絡的資源。
本發(fā)明實施例提供的方案中,用戶終端與用戶終端之間的內(nèi)容分發(fā)是在 CDN管理控制層的引導下進行的,在不影響用戶正常^f吏用的情況下用戶終端 提供業(yè)務/內(nèi)容服務,不但達到了資源共享的目的,而且也沒有影響正常的用戶 使用。
本發(fā)明實施例提供的方案中,用戶終端可以直接向CDN管理控制層發(fā)送 內(nèi)容業(yè)務請求,CDN管理控制層根據(jù)請求中用戶終端的地址信息確定用戶終 端所屬的網(wǎng)絡區(qū)域,該方法與現(xiàn)有技術(shù)中根據(jù)本地DNS的地址信息確定用戶 終端所屬的網(wǎng)絡區(qū)域相比,能夠準確的定位用戶終端。
本發(fā)明實施例提供的方案中,根據(jù)用戶終端的本地DNS的地址信息確定 用戶終端所屬的網(wǎng)絡區(qū)域時,使用反向查找的方法,該方法與現(xiàn)有技術(shù)中直接
明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及 其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。
權(quán)利要求
1. 一種內(nèi)容分發(fā)網(wǎng)絡CDN中響應用戶服務請求的方法,其特征在于,該方法包括接收用戶終端發(fā)出的服務請求,所述服務請求用于請求內(nèi)容分發(fā)節(jié)點的地址信息;獲取所述用戶終端與所述CDN中內(nèi)容分發(fā)節(jié)點間的鏈路狀態(tài)信息;根據(jù)所述鏈路狀態(tài)信息選取與所述用戶終端間的鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)節(jié)點;將所述選取的內(nèi)容分發(fā)節(jié)點的地址信息返回給所述用戶終端。
2、 如權(quán)利要求1所述的方法,其特征在于,所述獲取所述用戶終端與所 述CDN中內(nèi)容分發(fā)節(jié)點間的鏈路狀態(tài)信息包括從保存的預先從所述用戶終端采集的信息中,讀取所述用戶終端與所述 CDN中內(nèi)容分發(fā)節(jié)點間的鏈路狀態(tài)信息;或者,請求所述用戶終端上報該用戶終端的信息,從上報信息中獲取所述用戶終 端與所述CDN中內(nèi)容分發(fā)節(jié)點間的鏈路狀態(tài)信息。
3、 如權(quán)利要求1所述的方法,其特征在于,如果有多個與所述用戶終端 間的鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)節(jié)點,則確定并選取其中距離所述用戶 終端最近的內(nèi)容分發(fā)節(jié)點,或者確定并選取其中具有空閑資源的內(nèi)容分發(fā)節(jié) 點。
4、 如權(quán)利要求3所述的方法,其特征在于,所述確定距離所述用戶終端 最近的內(nèi)容分發(fā)節(jié)點包括從所述服務請求中獲取所述用戶終端的地址信息或所述用戶終端的本地 域名解析服務器DNS的地址信息;根據(jù)所述地址信息確定所述用戶終端的位 置;根據(jù)所述用戶終端的位置確定距離所述用戶終端最近的內(nèi)容分發(fā)節(jié)點。
5、 如權(quán)利要求4所述的方法,其特征在于,所述根據(jù)所述用戶終端的本 地DNS的地址信息確定所述用戶終端的位置包括查找使用所述DNS的用戶終端的地址信息,確定該地址所歸屬的網(wǎng)絡區(qū) 域,將該網(wǎng)絡區(qū)域作為所述用戶終端所在的網(wǎng)絡區(qū)域,才艮據(jù)所述網(wǎng)絡區(qū)域確定 所述用戶終端的位置。
6、 一種內(nèi)容分發(fā)系統(tǒng),其特征在于,該系統(tǒng)包括用戶終端,用于向負載均衡單元發(fā)送服務請求,所述服務請求用于請求內(nèi) 容分發(fā)單元的地址信息;負載均衡單元,用于接收所述服務請求;獲取所述用戶終端與內(nèi)容分發(fā)網(wǎng) 絡CDN中內(nèi)容分發(fā)單元間的鏈路狀態(tài)信息,根據(jù)所述鏈路狀態(tài)信息選取與所 述用戶終端間的鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)單元;將所述選取的內(nèi)容分 發(fā)單元的地址信息返回給所述用戶終端。
7、 如權(quán)利要求6所述的系統(tǒng),其特征在于,所述用戶終端進一步用于 接收所述負載均衡單元返回的內(nèi)容分發(fā)單元的地址信息,根據(jù)該地址信息向所述內(nèi)容分發(fā)單元發(fā)起業(yè)務/內(nèi)容請求; 該系統(tǒng)進一步包括內(nèi)容分發(fā)單元,用于接收所述業(yè)務/內(nèi)容請求,向所述用戶終端提供所請求 的服務。
8、 如權(quán)利要求6所述的系統(tǒng),其特征在于,所述負載均衡單元進一步用于如果有多個與所述用戶終端間的鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)節(jié)單 元,則選取其中距離所述用戶終端最近的內(nèi)容分發(fā)單元,或者選取其中具有空 閑資源的內(nèi)容分發(fā)單元。
9、 如權(quán)利要求7所述的系統(tǒng),其特征在于,所述內(nèi)容分發(fā)單元為 CDN服務節(jié)點或用戶終端。
10、 一種負載均衡設備,其特征在于,該設備包括接收單元,用于接收用戶終端發(fā)出的服務請求,所述服務請求用于請求內(nèi) 容分發(fā)節(jié)點的地址信息;選取單元,用于獲取所述用戶終端與內(nèi)容分發(fā)網(wǎng)絡CDN中內(nèi)容分發(fā)節(jié)點 間的鏈路狀態(tài)信息,根據(jù)所述鏈路狀態(tài)信息選取與所述用戶終端間的鏈路狀態(tài) 滿足預設條件的內(nèi)容分發(fā)節(jié)點;響應單元,用于將所述選取的內(nèi)容分發(fā)節(jié)點的地址信息返回給所述用戶終
11、 如權(quán)利要求10所述的設備,其特征在于,該設備還包括 位置單元,用于從所述服務請求中獲取所述用戶終端的地址信息或所述用戶終端的本地DNS的地址信息;根據(jù)所述地址信息確定所述用戶終端的位置; 所述選取單元用于,在有多個與所述用戶終端間的鏈路狀態(tài)滿足預設條件 的內(nèi)容分發(fā)節(jié)點時,根據(jù)所述用戶終端的位置,選取所述多個內(nèi)容分發(fā)節(jié)點中 距離所述用戶終端最近的內(nèi)容分發(fā)節(jié)點。
12、 如權(quán)利要求10所述的設備,其特征在于,該設備還包括 資源狀態(tài)單元,用于獲取CDN中內(nèi)容分發(fā)節(jié)點的資源狀態(tài)信息; 所述選取單元用于,在有多個與所述用戶終端間的鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)單元時,根據(jù)所述資源狀態(tài)信息,選取所述多個內(nèi)容分發(fā)單元中具 有空閑資源的內(nèi)容分發(fā)節(jié)點。
全文摘要
本發(fā)明實施例公開了一種內(nèi)容分發(fā)網(wǎng)絡(CDN)中響應用戶服務請求的方法,該方法為接收用戶終端發(fā)出的服務請求,所述服務請求用于請求內(nèi)容分發(fā)節(jié)點的地址信息;獲取所述用戶終端與所述CDN中內(nèi)容分發(fā)節(jié)點間的鏈路狀態(tài)信息,根據(jù)所述鏈路狀態(tài)信息選取與所述用戶終端間的鏈路狀態(tài)滿足預設條件的內(nèi)容分發(fā)節(jié)點;將所述選取的內(nèi)容分發(fā)節(jié)點的地址信息返回給所述用戶終端。本發(fā)明實施例還公開了一種內(nèi)容分發(fā)系統(tǒng)和負載均衡設備。采用本發(fā)明,能夠提高CDN系統(tǒng)的服務質(zhì)量。
文檔編號H04L12/56GK101287011SQ20081011259
公開日2008年10月15日 申請日期2008年5月26日 優(yōu)先權(quán)日2008年5月26日
發(fā)明者何燕鋒, 厲建宇, 張煥強 申請人:藍汛網(wǎng)絡科技(北京)有限公司