云中的cdn流量管理的制作方法
【專利說明】云中的CDN流量管理
[0001] 背景
[0002] 許多基于因特網(wǎng)的服務提供者向全世界的客戶機遞送數(shù)字內(nèi)容。數(shù)字內(nèi)容可以包 括web對象(例如,文本、圖形、URL、腳本)、可下載對象(例如,媒體文件、軟件、文檔等)、 web應用、流媒體(例如,音頻和視頻內(nèi)容)等。給位于各種各樣地理位置的大量客戶機提 供數(shù)字內(nèi)容向服務提供者提出了挑戰(zhàn)。例如,服務提供者可能不能夠提供足夠的服務器資 源和/或網(wǎng)絡帶寬以在給定時間服務于請求數(shù)字內(nèi)容的全部客戶機。此外,因為服務提供 者和地理上遠離服務提供者的服務器的客戶機之間的流量通過大量因特網(wǎng)服務器經(jīng)極大 的地理距離來路由,所以客戶機可能經(jīng)歷高級別的等待時間和/或低傳送率。
[0003] 內(nèi)容遞送網(wǎng)絡(⑶N)旨在減輕服務提供者向大的和/或地理上不相同的客戶機組 遞送數(shù)字內(nèi)容的能力。CDN將服務器(或服務器群集)置于各種地理位置,并使用這些服務 器來高速緩存并遞送來自服務提供者的原始服務器的內(nèi)容。如此,CDN可通過增加用于遞 送每個服務提供者的內(nèi)容的總的可用服務器資源和帶寬兩者,還通過從地理上更接近正被 服務的客戶機的服務器遞送每個服務提供者的內(nèi)容,來改善服務提供者將內(nèi)容遞送到客戶 機的能力。
[0004]⑶N通常為大量服務提供者提供內(nèi)容遞送服務。如此,⑶N在各種服務提供者間分 配⑶N資源。例如,如果⑶N正經(jīng)歷針對特定地理區(qū)域的特定服務提供者的流量激增,⑶N 可反應性地分配該特定地理區(qū)域中的附加服務器資源以用于遞送該特定服務提供者的內(nèi) 容,而從一個或多個其它服務提供者移除在該特定地理區(qū)域的該附加服務器資源。
[0005] 概沭
[0006] 在此描述的至少一些實施例使用實況和歷史數(shù)據(jù)兩者來管理⑶N內(nèi)的流量。因 此,CDN可搶先地(與反應性地相反)重新配置它本身來處理當前和預計的客戶機負載。
[0007]在一些實施例中,使用孵化池來確定財產(chǎn)的屬性。計算機系統(tǒng)基于對財產(chǎn)的負載 大小和流量類型的估計并基于定義被添加到孵化池的財產(chǎn)的最小和最大孵化時間的規(guī)則 來確定孵化周期。計算機系統(tǒng)向孵化池添加財產(chǎn),包括將孵化池的服務器資源分配到該財 產(chǎn)。該計算機系統(tǒng)為所確定的孵化周期分析財產(chǎn)的負載和流量模式,并基于將財產(chǎn)添加到 孵化池來確定財產(chǎn)的負載大小和/或流量類型。
[0008]在其它實施例中,負載平衡器代理將流量卸載到CDN中的其它邊緣數(shù)據(jù)中心。負 載平衡器代理確定在邊緣數(shù)據(jù)中心處的流量應當被卸載到其它邊緣數(shù)據(jù)中心,并確定用于 請求將流量卸載到其它邊緣數(shù)據(jù)中心的優(yōu)先級水平。負載平衡器代理將卸載請求發(fā)送到其 它邊緣數(shù)據(jù)中心的每一個。每個卸載請求指示所確定的優(yōu)先級水平。負載平衡器代理從其 它邊緣數(shù)據(jù)中心接收一個或多個回答,包括指示資源可由該負載平衡器代理使用的至少一 個回答。負載平衡器代理將各回答進行排序以標識用于卸載流量的至少一個邊緣數(shù)據(jù)中 心,并將流量卸載到所標識的邊緣數(shù)據(jù)中心。
[0009] 提供本概述是為了以簡化的形式介紹將在以下詳細描述中進一步描述的一些概 念。本概述不旨在標識出所要求保護的主題的關鍵特征或必要特征,也不旨在用于幫助確 定所要求保護的主題的范圍。
【附圖說明】
[0010] 為了描述可獲得本發(fā)明的上述和其它優(yōu)點和特征的方式,將通過參考附圖中示出 的本發(fā)明的具體實施例來呈現(xiàn)以上簡要描述的本發(fā)明的更具體描述??梢岳斫?,這些附圖 只描繪了本發(fā)明的各典型實施例,并且因此不被認為是對其范圍的限制,將通過使用附圖 并利用附加特征和細節(jié)來描述和解釋本發(fā)明,在附圖中:
[0011] 圖1示出了促進搶先地和反應性地配置⑶N以針對由⑶N主存的各財產(chǎn)處理當前 和預期的客戶機負載的示例計算機體系結(jié)構。
[0012] 圖2示出了用于分隔、分區(qū)和/或分配示例CDN的資源的示例方案。
[0013] 圖3示出了用于將⑶N的邊緣數(shù)據(jù)中心處的服務器資源分配給由邊緣數(shù)據(jù)中心服 務的財產(chǎn)的示例方法的流程圖。
[0014] 圖4示出了用于邊緣數(shù)據(jù)中心處的負載平衡器代理將流量卸載到另一邊緣數(shù)據(jù) 中心的示例方法的流程圖。
[0015] 圖5示出了用于使用孵化池來確定一個或多個財產(chǎn)的屬性的示例方法的流程圖。
[0016] 詳細描述
[0017] 在此描述的至少一些實施例使用實況和歷史數(shù)據(jù)兩者來管理⑶N內(nèi)的流量。因 此,CDN可搶先地(與反應性地相反)重新配置它本身來處理當前和預計的客戶機負載。
[0018] 更具體地,各實施例涉及服務于多個財產(chǎn)并包括物理地位于不同地理位置(且潛 在地在全世界的地理位置)的多個邊緣數(shù)據(jù)中心的CDN。每個邊緣數(shù)據(jù)中心包括用于高速 緩存并提供各財產(chǎn)的內(nèi)容的多個服務器。各實施例還涉及包括負載平衡器服務的CDN,該負 載平衡器服務跟蹤多個邊緣數(shù)據(jù)中心的長期流量趨勢,并且管理用于(基于該長期流量趨 勢)向各財產(chǎn)分配服務器資源的規(guī)則。各實施例還涉及包括在每個邊緣數(shù)據(jù)中心處的負載 平衡器代理的CDN。每個負載平衡器代理被配置來根據(jù)基于長期流量趨勢的規(guī)則,以及關于 在邊緣數(shù)據(jù)中心處的當前活動的實時(或近似實時)數(shù)據(jù),來作出服務器分配決定。如此, 負載平衡器代理基于長期流量趨勢和規(guī)則搶先地,并基于實時(或近似實時)數(shù)據(jù)反應性 地作出服務器分配決定。
[0019] 如在此使用的,"財產(chǎn)"是主存在原始服務器上的客戶web應用。例如,"財產(chǎn)"可 以是在線視頻流網(wǎng)站、在線音頻流服務、補丁 /更新網(wǎng)站等。如在此使用的,"客戶"是擁有 一個或多個財產(chǎn)的個人、實體、服務提供者等。如在此使用的,"原始服務器"是由客戶擁有 和/或被用戶操作的web服務器。
[0020] 圖1示出了促進搶先地和反應性地配置⑶N以針對由⑶N主存的各財產(chǎn)處理當前 和預期的客戶機負載的示例計算機體系結(jié)構1〇〇。參見圖1,計算機體系結(jié)構1〇〇包括邊緣 數(shù)據(jù)中心102、與近似實時(NRT)數(shù)據(jù)相關的一個或多個組件108,以及與長期趨勢和規(guī)則 相關的一個或多個組件114。所描繪的組件和計算機系統(tǒng)中的每一個通過諸如例如局域網(wǎng) ("LAN")、廣域網(wǎng)("WAN")、因特網(wǎng)等的網(wǎng)絡彼此連接(或作為網(wǎng)絡的一部分)。相應地, 所描繪的組件和計算機系統(tǒng)中的每一個可以創(chuàng)建與消息相關的數(shù)據(jù)并通過網(wǎng)絡交換與消 息相關的數(shù)據(jù)(例如,網(wǎng)際協(xié)議("IP")數(shù)據(jù)報和利用IP數(shù)據(jù)報的其他更高層協(xié)議,諸如 傳輸控制協(xié)議("TCP")、超文本傳輸協(xié)議("HTTP")、簡單郵件傳輸協(xié)議("SMTP")等)。
[0021] 邊緣數(shù)據(jù)中心12包括多個數(shù)據(jù)中心,每個數(shù)據(jù)中心位于不同地理位置。例如,圖1 描繪了邊緣數(shù)據(jù)中心102a以及邊緣數(shù)據(jù)中心102b,盡管如垂直省略號所指示的,計算機體 系結(jié)構100可包括任何數(shù)量的邊緣數(shù)據(jù)中心。如在此使用的,"pop"(point of presence(存 在點))還指邊緣數(shù)據(jù)中心,無論該邊緣數(shù)據(jù)中心專用作CDN的一部分,或與其它服務搭配。
[0022] 如所描繪的,每個邊緣數(shù)據(jù)中心102包括被配置用來高速緩存與邊緣數(shù)據(jù)中心相 關聯(lián)的財產(chǎn)的內(nèi)容并將那個內(nèi)容遞送到客戶機(例如地理地位于邊緣數(shù)據(jù)中心附近的被 高速緩存的財