何 銳,李 艷,劉 紅
(①安徽大學計算智能與信號處理教育部重點實驗室,安徽 合肥 230039;②山東電子職業(yè)技術(shù)學院,山東 濟南 250014)
CDN即內(nèi)容分發(fā)網(wǎng)絡。它借助于建立索引、緩存流分裂、組播技術(shù),將內(nèi)容分發(fā)到距離用戶最近的遠程服務點處,使用戶可以就近取得所需內(nèi)容,解決互聯(lián)網(wǎng)網(wǎng)絡擁塞狀況,提高用戶訪問網(wǎng)站的響應速度[1]。
CDN采用各種cache服務器,將這些cache服務器分布到訪問相對集中的網(wǎng)絡中,在用戶訪問網(wǎng)站時,利用全球負載均衡技術(shù)將用戶的訪問指向離用戶距離最近的工作正常的cache服務器上,由cache服務器直接響應用戶請求或者根據(jù)配置自動到原服務器上抓取相應的頁面并提供給用戶[2-3]。
[4]。設在CDN網(wǎng)絡中,有N個邊緣緩存服務器,分別為 cache1、cache2、cacheN,每個邊緣緩存服務器上有N個內(nèi)容,且均不相同。那么對于每個cache上的一個內(nèi)容C,在時間間隔T內(nèi)的訪問度為VD。VD定義是訪問該內(nèi)容的用戶數(shù)。當VD滿足一定條件時,表明受歡迎。同時內(nèi)容C所在的cache負載量也重,此時就把內(nèi)容C拷貝分發(fā)到離用戶最近最好的cache上。
如圖1所示。V:一個cache上的內(nèi)容C,在時間間隔T中有V個用戶訪問它(假設不計用戶重復訪問次數(shù))M:判斷是否分發(fā)內(nèi)容的絕對訪問量的臨界值。由圖可知,V>M,進行分發(fā)。V≤M,不分發(fā)。

圖1 基于絕對基策略
如圖2所示。?V∶一個cache上的內(nèi)容C1在這一時間間隔T內(nèi)絕對訪問量V1與前一時間間隔T內(nèi)絕對訪問量V0之差,即?V=V1-V0。?M:判斷是否分發(fā)內(nèi)容的相對訪問量臨界值。由圖可知,?V>?M,分發(fā)。?V≤?M,不分發(fā)。

圖2 基于內(nèi)容相對訪問策略
在CDN網(wǎng)絡仿真軟件SIMULATE程序中,首先設置網(wǎng)絡仿真環(huán)境如下,邊緣緩存服務器 Edge Cache的個數(shù)N=100,每個 Edge Cache上的內(nèi)容個數(shù) N(1)=N(2)=…=N(100)=50運行時間間隔T= 10分鐘,用戶訪問率變化范圍設為0,研究結(jié)果表明,最佳的門限值分別為M= 487。
①要加入CDN服務的網(wǎng)站,需要域名(如www.linuxaid.com.cn,地址 202.99.11.120)解析權(quán)提供給 CDN 運營商,Linuxaid的域名解析記錄只要把 www主機的 A記錄改為CNAME并指向cache.cdn.com即可。cache.cdn.com是CDN網(wǎng)絡自定義的緩存服務器的標識。在/var/named/linuxaid.com.cn域名解析記錄中,由:www IN A 202.99.11.120改為:www IN CNAME cache.cdn.com;
②CDN運營商得到域名解析權(quán)以后,得到域名的CNAME記錄,指向CDN網(wǎng)絡屬下緩存服務器的域名,如cache.cdn.com,CDN網(wǎng)絡的全局負載均衡 DNS,需要把CNAME記錄根據(jù)策略解析出IP地址,一般是給出就近訪問的Cache地址。 Bind 9的基本功能可以根據(jù)不同的源IP地址段解析對應的IP,實現(xiàn)根據(jù)地域就近訪問的負載均衡,一般可以通過Bind 9的sortlist選項實現(xiàn)根據(jù)用戶端IP地址返回最近的節(jié)點IP地址,具體的過程為:
為cache.cdn.com設置多個A記錄,/var/named/cdn.com的內(nèi)容如下:

/etc/named.conf中的內(nèi)容為:options { directory"/var/named"; sortlist { #這一段表示當在本地執(zhí)行查詢時將按照202.93.22.13,210.21.30.90,211.99.13.47的順序返回地址#;{ localhost; { localnets; 202.93.22.13; { 210.21.30.90;211.99.13.47; }; }; }; #這一段表示當在202/8地址段進行DNS查詢時將按照202.93.22.13,210.21.30.90,211.99.13.47的順序返回地址#;{ 202/8; { 202.93.22.13; { 210.21.30.90;211.99.13.47; }; }; }; #這一段表示當在 211/8地址段進行DNS查詢時將按照211.99.13.47,202.93.22.13,210.21.30.90的順序返回地址也就是211.99.13.47是最靠近查詢地點的節(jié)點{ 211/8; { 211.99.13.47; { 202.93.22.13; 210.21.30.90; }; }; };{ 61/8; { 202.93.22.13; { 210.21.30.90; 211.99.13.47; }; }; }; };}; zone "." { type hint; file "root.cache"; }; zone"localhost" { type master; file "localhost"; }; zone "cdn.com"{ type master; file "cdn.com"; };#
③cache在CDN網(wǎng)絡中如果工作在服務器加速模式,因為配置里已經(jīng)寫明加速服務器的url,所以cache直接匹配用戶請求,到源服務器獲得內(nèi)容并緩存供下次使用;如果cache工作在客戶端加速模式,cache需要知道源服務器的IP地址,所以CDN網(wǎng)絡維護和運行一個供cache使用的DNS服務器,解析域名的真實IP地址,如202.99.11.120 ,各域名的解析記錄與未加入CDN網(wǎng)絡之前一樣;
④工作在CDN網(wǎng)絡中緩存服務器必須工作在透明方式,對于Squid來說,需要設置以下參數(shù):
httpd_accel_host virtual ,httpd_accel_port 80 ,httpd_accel_with_proxy on ,httpd_accel_uses_host_header on。
CDN網(wǎng)絡中最關(guān)鍵的就是全球均衡技術(shù)(GSLB)。圖3示用戶訪問網(wǎng)站,瀏覽器向本地域名服務器請求對該域名解析,本地域名服務器將請求發(fā)到ICP的授權(quán)域名服務器授權(quán)域名服務器通知本地域名服務器,本地域名服務器向GSLB控制器發(fā)出域名解析請求,GSLB根據(jù)預設策略,選擇最佳節(jié)點,并將結(jié)果返回本地域名服務器將對應IP發(fā)給用戶,用戶向最佳節(jié)點發(fā)出請求,節(jié)點中cache響應用戶請求,提供相關(guān)內(nèi)容。

圖3 實際應用框圖
對CDN網(wǎng)絡中的內(nèi)容分發(fā)策略進行了初步的研究,并提出了主要的基于內(nèi)容訪問度的分發(fā)策略思想。策反映了內(nèi)容受歡迎程度的變化程度和趨勢。由于網(wǎng)絡內(nèi)容最終是提供給終端用戶訪問的,內(nèi)容的好壞以及受歡迎程度的高低主要取決于內(nèi)容訪問度的大小。所以在研究決定是否進行內(nèi)容分發(fā)的策略中,基于內(nèi)容訪問度的思想無疑是最合理的也是最貼近實際用戶需求的。
參考文獻
[1] 劉孝國,李太浩.CDN技術(shù)在即時通信系統(tǒng)服務器端設計中的應用[J].實驗室科學,2010,13(02):47-49.
[2] 季尉.CDN和 P2P融合的流媒體內(nèi)容分發(fā)平臺[J].音響技術(shù),2010(02):56-58.
[3] 王蕊,張順頤.基于P2P的Skype與常規(guī)業(yè)務的流量分析和識別[J].通信技術(shù),2007,40(05):42-45.
[4] 于楊.基于 CDN 流媒體視頻點播網(wǎng)絡研究[D].北京郵電大學網(wǎng)絡研究院,2010.