域名解析和cdn 原理

alexanderkenndy發表於2014-07-20
 使用者訪問未使用CDN快取網站的過程為: 

  1)、使用者向瀏覽器提供要訪問的域名; 

  2)、瀏覽器呼叫域名解析函式庫對域名進行解析,以得到此域名對應的IP地址; 

  3)、瀏覽器使用所得到的IP地址,域名的服務主機發出資料訪問請求; 

  4)、瀏覽器根據域名主機返回的資料顯示網頁的內容。 
使用了CDN快取後的網站的訪問過程變為: 

  1)、使用者向瀏覽器提供要訪問的域名; 

  2)、瀏覽器呼叫域名解析庫對域名進行解析,由於CDN對域名解析過程進行了調整,所以解析函式庫一般得到的是該域名對應的CNAME記錄,為了得到實際IP地址,瀏覽器需要再次對獲得的CNAME域名進行解析以得到實際的IP地址;在此過程中,使用的全域性負載均衡DNS解析,如根據地理位置資訊解析對應的IP地址,使得使用者能就近訪問。 

  3)、此次解析得到CDN快取伺服器的IP地址,瀏覽器在得到實際的IP地址以後,向快取伺服器發出訪問請求; 

  4)、快取伺服器根據瀏覽器提供的要訪問的域名,通過Cache內部專用DNS解析得到此域名的實際IP地址,再由快取伺服器向此實際IP地址提交訪問請求; 

  5)、快取伺服器從實際IP地址得得到內容以後,一方面在本地進行儲存,以備以後使用,二方面把獲取的資料返回給客戶端,完成資料服務過程; 

  6)、客戶端得到由快取伺服器返回的資料以後顯示出來並完成整個瀏覽的資料請求過程。 

實現CDN的主要技術手段是快取記憶體、映象伺服器。可工作於DNS解析或HTTP重定向兩種方式,通過Cache伺服器,或異地的映象站點 完成內容的傳送與同步更新 

CDN網路架構主要由兩大部分,分為中心和邊緣兩部分,中心指CDN網管中心和DNS重定向解析中心,負責全域性負載均衡,裝置系統安裝在管理中心機房,邊緣主要指異地節點,CDN分發的載體,主要由Cache和負載均衡器等組成。 

  當使用者訪問加入CDN服務的網站時,域名解析請求將最終交給全域性負載均衡DNS進行處理。全域性負載均衡DNS通過一組預先定義好的策略,將當時最接近使用者的節點地址提供給使用者,使使用者能夠得到快速的服務。同時,它還與分佈在世界各地的所有CDNC節點保持通訊,蒐集各節點的通訊狀態,確保不將使用者的請求分配到不可用的CDN節點上,實際上是通過DNS做全域性負載均衡。 
每個CDN節點由兩部分組成:負載均衡裝置和快取記憶體伺服器 

  負載均衡裝置負責每個節點中各個Cache的負載均衡,保證節點的工作效率;同時,負載均衡裝置還負責收集節點與周圍環境的資訊,保持與全域性負載DNS的通訊,實現整個系統的負載均衡。


轉自:http://blog.csdn.net/21aspnet/article/details/6589609

相關文章