趙紅??
【摘要】CDN是構(gòu)建在網(wǎng)絡(luò)之上的內(nèi)容分發(fā)網(wǎng)絡(luò),依靠部署在各地的邊緣服務(wù)器,通過中心平臺的負(fù)載均衡、內(nèi)容分發(fā)、調(diào)度等功能模塊,使用戶就近獲取所需內(nèi)容,降低網(wǎng)絡(luò)擁塞,提高用戶訪問響應(yīng)速度和命中率。CDN的關(guān)鍵技術(shù)主要有內(nèi)容存儲和分發(fā)技術(shù)。基本原理是廣泛采用各種緩存服務(wù)器,將這些緩存服務(wù)器分布到用戶訪問相對集中的地區(qū)或網(wǎng)絡(luò)中,在用戶訪問網(wǎng)站時,利用全局負(fù)載技術(shù)將用戶的訪問指向距離最近的工作正常的緩存服務(wù)器上,由緩存服務(wù)器直接響應(yīng)用戶請求。
【關(guān)鍵詞】CDN(內(nèi)容分發(fā)網(wǎng)絡(luò);Content Delivery Network);內(nèi)容存儲;分發(fā)技術(shù)
CDN content distribution network technology principle
Zhao Hong
(Tianyuan Ruixin Communication Technology Co., LtdXi'anShaanxi710075)
【Abstract】CDN is a content distribution network built on the network, relying on the deployment of the edge of the server, through the central platform load balancing, content distribution, scheduling and other functional modules, so that users get the necessary content, reduce network congestion, improve user access Response speed and hit rate. CDN's key technologies are mainly content storage and distribution technology. The basic principle is widely used in a variety of cache servers, these cache servers distributed to the user to visit the relative concentration of the region or the network, the user access to the site, the use of global load technology to the user's visit to the nearest working cache server , The cache server directly respond to user requests.
【Key words】CDN (Content Delivery Network);Content storage;Distribution technology
1. 前言
(1)CDN能夠幾乎涵蓋國內(nèi)所有線路;而在可靠性上, CDN 在結(jié)構(gòu)上實現(xiàn)了多點的冗余,即使某一個節(jié)點由于意外發(fā)生故障,對網(wǎng)站的訪問能夠被自動導(dǎo)向其他的健康節(jié)點進(jìn)行響應(yīng)。CDN能輕松實現(xiàn)網(wǎng)站的全國鋪設(shè),不必考慮服務(wù)器的投入與托管、不必考慮新增帶寬的成本、不必考慮多臺服務(wù)器的鏡像同步、不必考慮更多的管理維護(hù)技術(shù)人員(CDN內(nèi)容分發(fā)示意圖見圖1,CDN對網(wǎng)絡(luò)的優(yōu)化作用見圖2)。
(2)三個發(fā)展浪潮:CDN技術(shù)自1999年首次提出經(jīng)過了三個發(fā)展時期:第一個發(fā)展時期是1999年到2008年,主要是海外CDN技術(shù)的摸索和發(fā)展并逐漸商用,國內(nèi)傳統(tǒng)CDN廠商開始興起。第二個發(fā)展時期主要是2010年到2014年,隨著網(wǎng)絡(luò)游戲、網(wǎng)絡(luò)視頻、電子電商等在線業(yè)務(wù)的興起以及國外LimeLight、Level3、Amazon國內(nèi)藍(lán)汛、網(wǎng)宿、帝聯(lián)等均對CDN網(wǎng)絡(luò)進(jìn)行升級,掀起動態(tài)頁面加速產(chǎn)品;此時BAT開始介入,CDN技術(shù)但老牌CDN廠商主要靠豐富的網(wǎng)絡(luò)節(jié)點資源來驅(qū)動,形成行業(yè)壁壘。第三個發(fā)展時期是為2015年6月以來,一方面是行業(yè)攪局者網(wǎng)心科技等創(chuàng)業(yè)公司憑借著技術(shù)創(chuàng)新、顛覆價格、創(chuàng)新模式改變CDN市場格局,另一方面是下游網(wǎng)絡(luò)直播視頻、VR/AR、競技游戲、大數(shù)據(jù)、4K高清視頻等需求的井噴,徹底引燃CDN尤其是動態(tài)CDN的爆發(fā)(CDN技術(shù)歷史進(jìn)程見圖3)。
2. 什么是CDN?
(1)CDN的全稱是Content Delivery Network,即內(nèi)容分發(fā)網(wǎng)絡(luò)。其目的是通過在現(xiàn)有的Internet中增加一層新的網(wǎng)絡(luò)架構(gòu),將網(wǎng)站的內(nèi)容發(fā)布到最接近用戶的網(wǎng)絡(luò)“邊緣”,使用戶可以就近取得所需的內(nèi)容,解決Internet網(wǎng)絡(luò)擁塞狀況,提高用戶訪問網(wǎng)站的響應(yīng)速度。從技術(shù)上全面解決由于網(wǎng)絡(luò)帶寬小、用戶訪問量大、網(wǎng)點分布不均等原因,解決用戶訪問網(wǎng)站的響應(yīng)速度慢的根本原因。
(2)內(nèi)容分發(fā)布網(wǎng)絡(luò)(CDN)是一種新型的網(wǎng)絡(luò)構(gòu)建方式,它是為能在傳統(tǒng)的IP網(wǎng)發(fā)布寬帶豐富媒體而特別優(yōu)化的網(wǎng)絡(luò)覆蓋層;而從廣義的角度,CDN代表了一種基于質(zhì)量與秩序的網(wǎng)絡(luò)服務(wù)模式。簡單地說,內(nèi)容發(fā)布網(wǎng)(CDN)是一個經(jīng)策略性部署的整體系統(tǒng),包括分布式存儲、負(fù)載均衡、網(wǎng)絡(luò)請求的重定向和內(nèi)容管理4個要件,而內(nèi)容管理和全局的網(wǎng)絡(luò)流量管理(Traffic Management)是CDN的核心所在。通過用戶就近性和服務(wù)器負(fù)載的判斷,CDN確保內(nèi)容以一種極為高效的方式為用戶的請求提供服務(wù)??偟膩碚f,內(nèi)容服務(wù)基于緩存服務(wù)器,也稱作代理緩存(Surrogate),它位于網(wǎng)絡(luò)的邊緣,距用戶僅有“一跳”(Single Hop)之遙。同時,代理緩存是內(nèi)容提供商源服務(wù)器(通常位于CDN服務(wù)提供商的數(shù)據(jù)中心)的一個透明鏡像。這樣的架構(gòu)使得CDN服務(wù)提供商能夠代表他們客戶,即內(nèi)容供應(yīng)商,向最終用戶提供盡可能好的體驗,而這些用戶是不能容忍請求響應(yīng)時間有任何延遲的。據(jù)統(tǒng)計,采用CDN技術(shù),能處理整個網(wǎng)站頁面的70%~95%的內(nèi)容訪問量,減輕服務(wù)器的壓力,提升了網(wǎng)站的性能和可擴展性。endprint
3. CDN 的工作原理
3.1在描述CDN的實現(xiàn)原理,讓我們先看傳統(tǒng)的未加緩存服務(wù)的訪問過程,以便了解CDN緩存訪問方式與未加緩存訪問方式的差別(見圖4):
3.2由上圖可見,用戶訪問未使用CDN緩存網(wǎng)站的過程為:
(1)用戶向瀏覽器提供要訪問的域名;
(2)瀏覽器調(diào)用域名解析函數(shù)庫對域名進(jìn)行解析,以得到此域名對應(yīng)的IP地址;
(3)瀏覽器使用所得到的IP地址,域名的服務(wù)主機發(fā)出數(shù)據(jù)訪問請求;
(4)瀏覽器根據(jù)域名主機返回的數(shù)據(jù)顯示網(wǎng)頁的內(nèi)容。
3.3通過以上四個步驟,瀏覽器完成從用戶處接收用戶要訪問的域名到從域名服務(wù)主機處獲取數(shù)據(jù)的整個過程。CDN網(wǎng)絡(luò)是在用戶和服務(wù)器之間增加Cache層,如何將用戶的請求引導(dǎo)到Cache上獲得源服務(wù)器的數(shù)據(jù),主要是通過接管DNS實現(xiàn),下面讓我們看看訪問使用CDN緩存后的網(wǎng)站的過程(見圖5):
3.4通過上圖,我們可以了解到,使用了CDN緩存后的網(wǎng)站的訪問過程變?yōu)椋?/p>
(1)用戶向瀏覽器提供要訪問的域名;
(2)瀏覽器調(diào)用域名解析庫對域名進(jìn)行解析,由于CDN對域名解析過程進(jìn)行了調(diào)整,所以解析函數(shù)庫一般得到的是該域名對應(yīng)的CNAME記錄,為了得到實際IP地址,瀏覽器需要再次對獲得的CNAME域名進(jìn)行解析以得到實際的IP地址;在此過程中,使用的全局負(fù)載均衡DNS解析,如根據(jù)地理位置信息解析對應(yīng)的IP地址,使得用戶能就近訪問。
(3)此次解析得到CDN緩存服務(wù)器的IP地址,瀏覽器在得到實際的IP地址以后,向緩存服務(wù)器發(fā)出訪問請求;
(4)緩存服務(wù)器根據(jù)瀏覽器提供的要訪問的域名,通過Cache內(nèi)部專用DNS解析得到此域名的實際IP地址,再由緩存服務(wù)器向此實際IP地址提交訪問請求;
(5)緩存服務(wù)器從實際IP地址得得到內(nèi)容以后,一方面在本地進(jìn)行保存,以備以后使用,二方面把獲取的數(shù)據(jù)返回給客戶端,完成數(shù)據(jù)服務(wù)過程;
(6)客戶端得到由緩存服務(wù)器返回的數(shù)據(jù)以后顯示出來并完成整個瀏覽的數(shù)據(jù)請求過程。
4. CDN的技術(shù)手段
(1)實現(xiàn)CDN的主要技術(shù)手段是高速緩存、鏡像服務(wù)器。可工作于DNS解析或HTTP重定向兩種方式,通過Cache服務(wù)器,或異地的鏡像站點 完成內(nèi)容的傳送與同步更新。DNS方式用戶位置判斷準(zhǔn)確率大于85%,HTTP方式準(zhǔn)確率為99%以上;一般情況,各Cache服務(wù)器群的用戶訪問流入數(shù)據(jù)量與Cache服務(wù)器到原始網(wǎng)站取內(nèi)容的數(shù)據(jù)量之比在2:1到3:1之間,即分擔(dān)50%到70%的到原始網(wǎng)站重復(fù)訪問數(shù)據(jù)量(主要是圖片,流媒體文件等內(nèi)容);對于鏡像,除數(shù)據(jù)同步的流量,其余均在本地完成,不訪問原始服務(wù)器。
(2)鏡像站點(Mirror Site)服務(wù)器是我們經(jīng)??梢钥吹降?,它讓內(nèi)容直截了當(dāng)?shù)剡M(jìn)行分布,適用于靜態(tài)和準(zhǔn)動態(tài)的數(shù)據(jù)同步。但是購買和維護(hù)新服務(wù)器的費用較高,另外還必須在各個地區(qū)設(shè)置鏡像服務(wù)器,配備專業(yè)技術(shù)人員進(jìn)行管理與維護(hù)。大型網(wǎng)站在隨時更新各地服務(wù)器的同時,對帶寬的需求也會顯著增加,因此一般的互聯(lián)網(wǎng)公司不會建立太多的鏡像服務(wù)器。
(3)高速緩存手段的成本較低,適用于靜態(tài)內(nèi)容。Internet的統(tǒng)計表明,超過80%的用戶經(jīng)常訪問的是20%的網(wǎng)站的內(nèi)容,在這個規(guī)律下,緩存服務(wù)器可以處理大部分客戶的靜態(tài)請求,而原始的WWW服務(wù)器只需處理約20%左右的非緩存請求和動態(tài)請求,于是大大加快了客戶請求的響應(yīng)時間,并降低了原始WWW服務(wù)器的負(fù)載。
5. CDN的網(wǎng)絡(luò)架構(gòu)
(1)CDN網(wǎng)絡(luò)架構(gòu)主要由兩大部分,分為中心和邊緣兩部分,中心指CDN網(wǎng)管中心和DNS重定向解析中心,負(fù)責(zé)全局負(fù)載均衡,設(shè)備系統(tǒng)安裝在管理中心機房,邊緣主要指異地節(jié)點,CDN分發(fā)的載體,主要由Cache和負(fù)載均衡器等組成。
(2)當(dāng)用戶訪問加入CDN服務(wù)的網(wǎng)站時,域名解析請求將最終交給全局負(fù)載均衡DNS進(jìn)行處理。全局負(fù)載均衡DNS通過一組預(yù)先定義好的策略,將當(dāng)時最接近用戶的節(jié)點地址提供給用戶,使用戶能夠得到快速的服務(wù)。同時,它還與分布在世界各地的所有CDNC節(jié)點保持通信,搜集各節(jié)點的通信狀態(tài),確保不將用戶的請求分配到不可用的CDN節(jié)點上,實際上是通過DNS做全局負(fù)載均衡。
6. 結(jié)束語
“寬帶中國”戰(zhàn)略的推進(jìn)和“互聯(lián)網(wǎng)+”行動計劃的實施,各類新型“互聯(lián)網(wǎng)服務(wù)”們向CDN提出了更高需求。CDN行業(yè)自去年邁開的變革步伐正在踏入2016年,盡管最終變數(shù)未知,但可以確定的是,行業(yè)發(fā)展方向正朝往振奮人心的良性預(yù)期,值得各方期待。endprint