一、CDN是什麼? CDN的全稱是Content Delivery Network,即內容分髮網絡。其目的是通過在現有的Internet中增加一層新的CACHE(緩存)層,將網站的內容發佈到最接近用戶的網路”邊緣“的節點,使用戶可以就近取得所需的內容(就近原則),提高用戶訪問網站的響應速度。從技術上 ...
一、CDN是什麼?
CDN的全稱是Content Delivery Network,即內容分髮網絡。其目的是通過在現有的Internet中增加一層新的CACHE(緩存)層,將網站的內容發佈到最接近用戶的網路”邊緣“的節點,使用戶可以就近取得所需的內容(就近原則),提高用戶訪問網站的響應速度。從技術上全面解決由於網路帶寬小、用戶訪問量大、網點分佈不均等原因,提高用戶訪問網站的響應速度。
CDN的優勢很明顯:
(1)CDN節點解決了跨運營商和跨地域訪問的問題,訪問延時大大降低;
(2)大部分請求在CDN邊緣節點完成,CDN起到了分流作用,減輕了源站的負載。
二、CDN的相關技術
CDN的實現需要依賴多種網路技術的支持,其中負載均衡技術、動態內容分發與複製技術、緩存技術是比較主要的幾個,下麵讓我們簡單看一下這幾種技術。
2.1、負載均衡技術
在CDN中,負載均衡又分為伺服器負載均衡和伺服器整體負載均衡(也有的稱為伺服器全局負載均衡)。伺服器負載均衡是指能夠在性能不同的伺服器之間進行任務分配,既能保證性能差的伺服器不成為系統的瓶頸,又能保證性能高的伺服器的資源得到充分利用。而伺服器整體負載均衡允許Web網路托管商、門戶站點和企業根據地理位置分配內容和服務。通過使用多站點內容和服務來提高容錯性和可用性,防止因本地網或區域網路中斷、斷電或自然災害而導致的故障。在CDN的方案中伺服器整體負載均衡將發揮重要作用,其性能高低將直接影響整個CDN的性能。
2.2、動態內容分發與複製技術
大家都知道,網站訪問響應速度取決於許多因素,如網路的帶寬是否有瓶頸、傳輸途中的路由是否有阻塞和延遲、網站伺服器的處理能力及訪問距離等。多數情況下,網站響應速度和訪問者與網站伺服器之間的距離有密切的關係。如果訪問者和網站之間的距離過遠的話,它們之間的通信一樣需要經過重重的路由轉發和處理,網路延誤不可避免。一個有效的方法就是利用內容分發與複製技術,將占網站主體的大部分靜態網頁、圖像和流媒體數據分發複製到各地的加速節點上。所以動態內容分發與複製技術也是CDN所需的一個主要技術。
2.3、緩存技術
緩存技術已經不是一種新鮮技術。Web緩存服務通過幾種方式來改善用戶的響應時間,如代理緩存服務、透明代理緩存服務、使用重定向服務的透明代理緩存服務等。通過Web緩存服務,用戶訪問網頁時可以將廣域網的流量降至最低。對於公司內聯網用戶來說,這意味著將內容在本地緩存,而無須通過專用的廣域網來檢索網頁。對於Internet用戶來說,這意味著將內容存儲在他們的ISP的緩存器中,而無須通過Internet來檢索網頁。這樣無疑會提高用戶的訪問速度。CDN的核心作用正是提高網路的訪問速度,所以,緩存技術將是CDN所採用的又一個主要技術。
三、CDN工作過程
-
當用戶輸入網址回車後,經過本地DNS系統解析,DNS會將最終的功能變數名稱解析權交給CNAME 指向的CDN 專用DNS伺服器。
-
CDN的DNS伺服器將 CDN的全局負載均衡 設備ip 地址返回給瀏覽器
-
用戶向 CDN的全局負載均衡伺服器 發起內容url 請求
-
CDN全局負載均衡伺服器根據 用戶請求的IP地址,url等信息,選擇一臺用戶所屬區域的負載均衡設備,告訴用戶向這台設備發起請求。
-
CDN區域負載均衡伺服器會為用戶 選擇一臺合適的緩存伺服器提供服務,選擇的依據主要是:離用戶距離要近,緩存伺服器上是否用戶所需內容,以及各個緩存當前的一個負載均衡情況。選擇出一個最優的 緩存伺服器ip地址。
-
全局負載均衡伺服器將 緩存伺服器的ip地址給到用戶。
-
用戶向緩存伺服器發起請求。緩存伺服器響應用戶請求,將用戶所需內容傳送到用戶終端。如果緩存伺服器上沒有用戶想要的內容,那麼這台伺服器就會向它的上一級緩存伺服器請求內容,直至追溯到網站的源伺服器,並將內容拉取到本地。
細節流程圖:
整體圖:
通過dig或nslookup查看功能變數名稱解析: