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

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

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

/etc/named.conf中的內容為:options { directory"/var/named"; sortlist { #這一段表示當在本地執行查詢時將按照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是最靠近查詢地點的節點{ 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網絡中如果工作在服務器加速模式,因為配置里已經寫明加速服務器的url,所以cache直接匹配用戶請求,到源服務器獲得內容并緩存供下次使用;如果cache工作在客戶端加速模式,cache需要知道源服務器的IP地址,所以CDN網絡維護和運行一個供cache使用的DNS服務器,解析域名的真實IP地址,如202.99.11.120 ,各域名的解析記錄與未加入CDN網絡之前一樣;
④工作在CDN網絡中緩存服務器必須工作在透明方式,對于Squid來說,需要設置以下參數:
httpd_accel_host virtual ,httpd_accel_port 80 ,httpd_accel_with_proxy on ,httpd_accel_uses_host_header on。
CDN網絡中最關鍵的就是全球均衡技術(GSLB)。圖3示用戶訪問網站,瀏覽器向本地域名服務器請求對該域名解析,本地域名服務器將請求發到ICP的授權域名服務器授權域名服務器通知本地域名服務器,本地域名服務器向GSLB控制器發出域名解析請求,GSLB根據預設策略,選擇最佳節點,并將結果返回本地域名服務器將對應IP發給用戶,用戶向最佳節點發出請求,節點中cache響應用戶請求,提供相關內容。

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