【整理】小白能理解的CDN

CDN介紹 


內容分發網絡(英語:Content Delivery Network或Content Distribution Network,縮寫:CDN)是指一種透過互聯網互相連接的電腦網絡系統,利用最靠近每位用戶的服務器,更快、更可靠地將音樂、圖片、影片、應用程序及其他文件發送給用戶,來提供高性能、可擴展性及低成本的網絡內容傳遞給用戶。

優點:

內容分發網絡的總承載量可以比單一骨幹最大的帶寬還要大。這使得內容分發網絡可以承載的用戶數量比起傳統單一服務器多。也就是說,若把有100Gbps處理能力的服務器放在只有10Gbps帶寬的數據中心,則亦只能發揮出10Gbps的承載量。但如果放到十個有10Gbps的地點,整個系統的承載量就可以到10*10Gbps。

同時,將服務器放到不同地點,可以減少互連的流量,進而降低帶寬成本。

對於TCP傳輸而言,TCP的速度(throughput)會受到延遲時間(latency)與數據包漏失率(packet loss)影響。爲了改善這些負面因素,內容分發網絡通常會指派較近、較順暢的服務器節點將數據傳輸給用戶。雖然距離並不是絕對因素,但這麼做可以儘可能提高性能,用戶將會覺得比較順暢。這使得一些比較高帶寬的應用(傳輸高清影片)更容易推動。

內容分發網絡另外一個好處在於有異地備援。當某個服務器故障時,系統將會調用其他鄰近地區的服務器服務,進而提供接近100%的可靠度。

除此之外,內容分發網絡提供給服務提供者更多的控制權。提供服務的人可以針對客戶、地區,或是其他因子調整。

——摘自 維基百科-內容分發網絡https://zh.wikipedia.org/wiki/%E5%85%A7%E5%AE%B9%E5%82%B3%E9%81%9E%E7%B6%B2%E8%B7%AF

 

CDN核心理念


改善互聯網的服務質量 

 

CDN作用效果


簡單地來說,在保證網速一定的情況下,CDN可以起到如下作用:

1、使用客戶就近的服務器,加速用戶網站的訪問。

2、實現跨運營商、跨地域的全網覆蓋。

3、負載均衡與分佈式存儲保障網站安全。

4、異地備援,服務器故障後調用臨近的正常服務器節點進行服務。

5、代替購買服務器與後續運維託管,節約成本投入。

 

以下內容摘自掘金 作者1點25 個人認爲講得很清楚。源網址:https://juejin.im/post/5d2d8928f265da1b95708b97 推薦閱讀>>>

原理分析


我們知道,當我們使用域名訪問某一個網站時,實際上就是將請求包(以Http請求爲例)通過網絡傳輸給某臺服務器,比如訪問“www.baidu.com”時:

  1. 首先解析出該域名所對應的IP地址(DNS域名解析)
  2. 然後將Http請求包通過網絡路由到IP地址所對應的服務器

其中域名解析分爲:(1)域名->IP地址(2)域名->別名CNAME

(1)域名->IP地址原理圖

image.png

(2)域名->別名CNAME

image.png

CDN的基本原理圖


image.png

 

用戶使用某個域名來訪問靜態資源時(這個域名在阿里CDN服務中叫做“加速域名”),比如這個域名爲“image.baidu.com”,它對應一個CNAME,叫做“cdn.ali.com”,那麼普通DNS服務器(區別CDN專用DNS服務器)在解析“image.baidu.com”時,會先解析成“cdn.ali.com”,普通DNS服務器發現該域名對應的也是一個DNS服務器,那麼會將域名解析工作轉交給該DNS服務器,該DNS服務器就是CDN專用DNS服務器。CDN專用DNS服務器對“cdn.ali.com”進行解析,然後依據服務器上記錄的所有CDN服務器地址信息,選出一個離用戶最近的一個CDN服務器地址,並返回給用戶,用戶即可訪問離自己最近的一臺CDN服務器了。

也就意味着如果靜態資源的服務器節點很多,能夠讓每個用戶在訪問這些靜態資源時都不用“跑很遠的路程”才能獲取到,從而加速了用戶訪問網站資源的速度。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章