CDN 技術詳解(DNS,GSLB,Cache)

CDN 是什麼

       CDN(Content Delivery Network,內容分發網絡),即全網內容加速服務。爲了儘量的避開互聯網上有可能影響數據傳輸速度和穩定性的瓶頸和環節,使內容傳輸的更快、更穩定,由此,誕生了 CDN 加速服務。數據庫

 

CDN 的做用

       利用遍及全球(全國,或企業自行規劃的各大城市及區域)的加速節點,幫助企業將業務內容發佈至最接近用戶的邊緣節點,使用戶的請求可以就近獲得快速響應,無需進行屢次網絡轉發,避免請求受地域、帶寬、服務器能力等因素影響致使的高延遲、低可用性等問題。瀏覽器

 

網站的傳統訪問過程

  1. 用戶在瀏覽器中輸入目標網站的 URL
  2. 瀏覽器向域名解析服務器(DNS,Domain Name System,域名系統,是因特網上域名和 IP 地址相互映射的一個分佈式數據庫)發出解析請求,得到此域名對應的 IP 地址
  3. 瀏覽器獲得這個 IP 地址,向其對應的服務器發出訪問請求
  4. 目標服務器對此做出響應,將數據回傳至用戶瀏覽器並顯示出來

 

CDN 如何加速

       與傳統訪問方式不一樣,CDN 網絡則是在用戶和服務器之間增長 Cache 層,將用戶的訪問請求引導到 Cache 節點而不是目標服務器站點,要實現這一目的,主要是經過接管 DNS 實現。緩存

       以騰訊 CDN 架構圖爲例:服務器

       176

       由上圖可見,使用 CDN 緩存後的網站訪問過程演變爲: 網絡

  1. 用戶在瀏覽器中輸入目標域名
  2. 瀏覽器向本地域名解析系統(Local DNS)發出解析請求
  3. 通過 DNS 遞歸查詢,請求被轉移至 Tencent DNS(GSLB,Global Server Load Balance,全局負載均衡)系統,此時尚未產生 Cache 層
  4. GSLB 返回最佳 CDN 接入節點的 IP,同時 Local DNS 緩存此接入節點(在此過程當中,會根據客戶端的 IP 地址,地理位置,入網類型電信仍是網通,返回最佳接入節點)
  5. 用戶對此 CDN 接入節點發起請求,CDN 網絡通過內部路由,並轉發請求至源服務器
  6. 源服務器返回響應的數據,CDN 節點將數據返回至 CDN 接入節點
  7. CDN 接入節點將數據返回給用戶,同時緩存數據

       CDN 節點緩存了數據,任何用戶再次請求這一份數據時,CDN 緩存會直接返回,並不須要再由源服務器進行處理,這大大的加快了數據往返的速度,對於靜態資源的加速尤其顯著。即使請求動態資源,好比動態頁面,其中也是有許多的靜態資源是不會常常改變的,只要控制好緩存機制,也會有明顯的加速效果。架構

 

CDN 網絡的架構及應用

       利用 CDN 網絡,網站用戶無需投資價值不菲的服務器、網絡帶寬及相應的人力成本,便能實現將網站內容發佈到離終端用戶距離最近、路由最短的網際邊緣 Cache 節點,創造完美、快捷的網站使用體驗。  負載均衡

       通常,CDN 網絡主要由中心節點、邊緣節點兩部分構成。最簡單的 CDN 網絡只需一臺負責全局負載均衡的 DNS 和各節點一臺 Cache 便可運行。 DNS 支持根據用戶源 IP 地址解析不一樣的 IP,實現就近訪問。爲了保證高可用性,CDN 網管中心須要監控各節點的流量、健康情況。當一個節點的單臺 Cache 承載數量不夠時,才須要多臺 Cache,多臺 Cache 同時工做時,才須要負載均衡器,使 Cache 羣協同工做。 分佈式

       CDN 中心節點網站

           包括 CDN 網管中心和全局負載均衡 DNS 重定向解析系統,負責整個 CDN 網絡的分發及管理。 視頻

       CDN 網管中心

           是整個 CDN 可以正常運轉的基礎保證,它不只能對整個 CDN 網絡中的各個子系統和設備進行實時監控,對各類故障產生相應的告警,還能夠實時監測到系統中總的流量和各節點的流量,並保存在系統數據庫中,使網管人員可以方便地進行進一步分析。一套完善的網管系統,容許用戶按需對系統配置進行修改。

      全局負載均衡 DNS

           經過一組預先定義好的策略,將當時最接近用戶的 Cache 節點地址提供給用戶,使用戶可以獲得快速的服務。同時,它還與分佈在各地的全部 CDN 節點保持持續通訊,蒐集各節點的通訊狀態,確保不會將用戶的請求分發到不可用、或不健康的 Cache 節點上。

       CDN 邊緣節點

           主要指異地分發節點,由負載均衡設備(若是緩存也須要集羣的話)、高速緩存服務器兩部分組成。 負載均衡設備負責每一個節點中各個 Cache 的負載均衡,保證節點的工做效率;同時還負責收集節點與周圍環境的信息,保持與全局負載均衡 DNS 的通訊,實現整個系統的負載均衡。

       高速緩存服務器(Cache)

           負責存儲客戶網站的大量信息,就像一個靠近用戶的網站服務器同樣響應本地用戶的訪問請求。經過全局負載均衡 DNS 的控制,用戶的請求被透明地指向離他最近的節點,節點中 Cache 服務器就像網站的原始服務器同樣,響應終端用戶的請求。因其距離用戶更近,故其響應時間才更快。

 

CDN 供應商

       傳統 CDN 供應商,市場份額較大的有:上海帝聯科技、北京藍汛通訊技術、北京快網科技、上海網宿科技等。現巨型互聯網公司(百度、阿里巴巴、騰訊)也加入了其中。因爲巨型互聯網公司的介入,雲技術的發展,會在必定方面打壓傳統 CDN 供應商,小型公司會更青睞這些巨型互聯網公司,可是對於大型公司,傳統CDN廠商的優點明顯

 

CDN 的應用場景

       以 PPTV 視頻網站來講,同一時間,不一樣城市的人都在使用客戶端觀看。向衆多用戶提供內容是由一個專門的網絡完成的,這個網絡咱們叫它內容分發網絡(CDN)。

       另外,CDN 加速應用主要應用在如下 5 種場景:

  • 網站靜態加速:包括圖片、CSS、JS 等靜態文件的加速
  • 全站加速:靜態加速與動態加速結合,智能路由調度實現業務 0 改動全面加速整個網站訪問速度
  • 下載服務:大文件下載,如遊戲安裝包和素材,APK 更新等
  • 圖片服務:運用於 UGC 類社交圖片應用
  • 流媒體:包括視頻點播、視頻直播、音視頻通訊、安防監控
相關文章
相關標籤/搜索