0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一文詳談CDN的工作原理和應(yīng)用

如意 ? 來源:簡書 ? 作者:Kandy ? 2020-09-01 14:33 ? 次閱讀

一、什么是 CDN

CDN的全稱是(Content Delivery Network),即內(nèi)容分發(fā)網(wǎng)絡(luò)。其目的是通過在現(xiàn)有的Internet中增加一層新的CACHE(緩存)層,將網(wǎng)站的內(nèi)容發(fā)布到最接近用戶的網(wǎng)絡(luò)”邊緣“的節(jié)點,使用戶可以就近取得所需的內(nèi)容,提高用戶訪問網(wǎng)站的響應(yīng)速度。從技術(shù)上全面解決由于網(wǎng)絡(luò)帶寬小、用戶訪問量大、網(wǎng)點分布不均等原因,提高用戶訪問網(wǎng)站的響應(yīng)速度。

簡單的說,CDN的工作原理就是將您源站的資源緩存到位于全球各地的CDN節(jié)點上,用戶請求資源時,就近返回節(jié)點上緩存的資源,而不需要每個用戶的請求都回您的源站獲取,避免網(wǎng)絡(luò)擁塞、緩解源站壓力,保證用戶訪問資源的速度和體驗

CDN節(jié)點

CDN對網(wǎng)絡(luò)的優(yōu)化作用主要體現(xiàn)在如下幾個方面

解決服務(wù)器端的“第一公里”問題

緩解甚至消除了不同運營商之間互聯(lián)的瓶頸造成的影響

減輕了各省的出口帶寬壓力

緩解了骨干網(wǎng)的壓力

優(yōu)化了網(wǎng)上熱點內(nèi)容的分布

二、CDN工作原理

傳統(tǒng)訪問過程

一文詳談CDN的工作原理和應(yīng)用

傳統(tǒng)訪問過程

由上圖可見,用戶訪問未使用CDN緩存網(wǎng)站的過程為:

1.用戶輸入訪問的域名,操作系統(tǒng)向 LocalDns 查詢域名的ip地址。

2.LocalDns向 ROOT DNS 查詢域名的授權(quán)服務(wù)器(這里假設(shè)LocalDns緩存過期)

3.ROOT DNS將域名授權(quán)dns記錄回應(yīng)給 LocalDns

4.LocalDns得到域名的授權(quán)dns記錄后,繼續(xù)向域名授權(quán)dns查詢域名的ip地址

5.域名授權(quán)dns 查詢域名記錄后,回應(yīng)給 LocalDns

6.LocalDns 將得到的域名ip地址,回應(yīng)給 用戶端

7.用戶得到域名ip地址后,訪問站點服務(wù)器

8.站點服務(wù)器應(yīng)答請求,將內(nèi)容返回給客戶端。

CDN訪問過程

一文詳談CDN的工作原理和應(yīng)用

CDN訪問過程

通過上圖,我們可以了解到,使用了CDN緩存后的網(wǎng)站的訪問過程變?yōu)椋?/p>

1.用戶輸入訪問的域名,操作系統(tǒng)向 LocalDns 查詢域名的ip地址。

2.LocalDns向 ROOT DNS 查詢域名的授權(quán)服務(wù)器(這里假設(shè)LocalDns緩存過期)

3.ROOT DNS將域名授權(quán)dns記錄回應(yīng)給 LocalDns

4.LocalDns得到域名的授權(quán)dns記錄后,繼續(xù)向域名授權(quán)dns查詢域名的ip地址

5.域名授權(quán)dns 查詢域名記錄后(一般是CNAME),回應(yīng)給 LocalDns

6.LocalDns 得到域名記錄后,向智能調(diào)度DNS查詢域名的ip地址

7.智能調(diào)度DNS 根據(jù)一定的算法和策略(比如靜態(tài)拓?fù)?,容量等),將最適合的CDN節(jié)點ip地址回應(yīng)給 LocalDns

8.LocalDns 將得到的域名ip地址,回應(yīng)給 用戶端

9.用戶得到域名ip地址后,訪問站點服務(wù)器

10.CDN節(jié)點服務(wù)器應(yīng)答請求,將內(nèi)容返回給客戶端。(緩存服務(wù)器一方面在本地進行保存,以備以后使用,二方面把獲取的數(shù)據(jù)返回給客戶端,完成數(shù)據(jù)服務(wù)過程)

通過以上的分析我們可以得到,為了實現(xiàn)對普通用戶透明(使用緩存后用戶客戶端無需進行任何設(shè)置)訪問,需要使用DNS(域名解析)來引導(dǎo)用戶來訪問Cache服務(wù)器,以實現(xiàn)透明的加速服務(wù)。 由于用戶訪問網(wǎng)站的第一步就是域名解析,所以通過修改dns來引導(dǎo)用戶訪問是最簡單有效的方式。

CDN網(wǎng)絡(luò)的組成要素

對于普通的Internet用戶,每個CDN節(jié)點就相當(dāng)于一個放置在它周圍的網(wǎng)站服務(wù)器。 通過對dns的接管,用戶的請求被透明地指向離他最近的節(jié)點,節(jié)點中CDN服務(wù)器會像網(wǎng)站的原始服務(wù)器一樣,響應(yīng)用戶的請求。 由于它離用戶更近,因而響應(yīng)時間必然更快。

從上面圖中 虛線圈起來的那塊,就是CDN層,這層是位于 用戶端 和 站點服務(wù)器 之間。

智能調(diào)度DNS(比如f5的3DNS)

智能調(diào)度DNS是CDN服務(wù)中的關(guān)鍵系統(tǒng)。當(dāng)用戶訪問加入CDN服務(wù)的網(wǎng)站時,域名解析請求將最終由 “智能調(diào)度DNS”負(fù)責(zé)處理。它通過一組預(yù)先定義好的策略,將當(dāng)時最接近用戶的節(jié)點地址提供給用戶,使用戶可以得到快速的服務(wù)。同時它需要與分布在各地的CDN節(jié)點保持通信,跟蹤各節(jié)點的健康狀態(tài)、容量等信息,確保將用戶的請求分配到就近可用的節(jié)點上。

緩存功能服務(wù)

負(fù)載均衡設(shè)備(如lvs,F(xiàn)5的BIG/IP)

內(nèi)容Cache服務(wù)器(如squid)

共享存儲

三、名詞解釋

CNAME記錄(CNAME record)

CNAME即別名( Canonical Name );可以用來把一個域名解析到另一個域名,當(dāng) DNS 系統(tǒng)在查詢 CNAME 左面的名稱的時候,都會轉(zhuǎn)向 CNAME 右面的名稱再進行查詢,一直追蹤到最后的 PTR 或 A 名稱,成功查詢后才會做出回應(yīng),否則失敗。

例如,你有一臺服務(wù)器上存放了很多資料,你使用docs.example.com去訪問這些資源,但又希望通過documents.example.com也能訪問到這些資源,那么你就可以在您的DNS解析服務(wù)商添加一條CNAME記錄,將documents.example.com指向docs.example.com,添加該條CNAME記錄后,所有訪問documents.example.com的請求都會被轉(zhuǎn)到docs.example.com,獲得相同的內(nèi)容。

CNAME域名

接入CDN時,在CDN提供商控制臺添加完加速域名后,您會得到一個CDN給您分配的CNAME域名, 您需要在您的DNS解析服務(wù)商添加CNAME記錄,將自己的加速域名指向這個CNAME域名,這樣該域名所有的請求才會都將轉(zhuǎn)向CDN的節(jié)點,達到加速效果。

DNS

DNS即Domain Name System,是域名解析服務(wù)的意思。它在互聯(lián)網(wǎng)的作用是:把域名轉(zhuǎn)換成為網(wǎng)絡(luò)可以識別的ip地址。人們習(xí)慣記憶域名,但機器間互相只認(rèn)IP地址,域名與IP地址之間是一一對應(yīng)的,它們之間的轉(zhuǎn)換工作稱為域名解析,域名解析需要由專門的域名解析服務(wù)器來完成,整個過程是自動進行的。比如:上網(wǎng)時輸入的www.baidu.com會自動轉(zhuǎn)換成為220.181.112.143。

常見的DNS解析服務(wù)商有:阿里云解析,萬網(wǎng)解析,DNSPod,新網(wǎng)解析,Route53(AWS),Dyn,Cloudflare等。

回源host

回源host:回源host決定回源請求訪問到源站上的具體某個站點。

例子1:源站是域名源站為www.a.com,回源host為www.b.com,那么實際回源是請求到www.a.com解析到的IP,對應(yīng)的主機上的站點www.b.com

例子2:源站是IP源站為1.1.1.1, 回源host為www.b.com,那么實際回源的是1.1.1.1對應(yīng)的主機上的站點www.b.com

協(xié)議回源

指回源時使用的協(xié)議和客戶端訪問資源時的協(xié)議保持一致,即如果客戶端使用 HTTPS 方式請求資源,當(dāng)CDN節(jié)點上未緩存該資源時,節(jié)點會使用相同的 HTTPS 方式回源獲取資源;同理如果客戶端使用 HTTP 協(xié)議的請求,CDN節(jié)點回源時也使用HTTP協(xié)議。
責(zé)編AJX

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 網(wǎng)站
    +關(guān)注

    關(guān)注

    1

    文章

    256

    瀏覽量

    23114
  • CDN
    CDN
    +關(guān)注

    關(guān)注

    0

    文章

    310

    瀏覽量

    28735
  • CDN網(wǎng)絡(luò)
    +關(guān)注

    關(guān)注

    0

    文章

    11

    瀏覽量

    6747
收藏 人收藏

    評論

    相關(guān)推薦

    氏橋信號發(fā)生器的工作原理和結(jié)構(gòu)

    氏橋信號發(fā)生器是種基于氏橋電路的信號發(fā)生器,它能夠產(chǎn)生穩(wěn)定且頻率可調(diào)的正弦波信號。以下是對文氏橋信號發(fā)生器的工作原理和結(jié)構(gòu)的詳細(xì)闡述。
    的頭像 發(fā)表于 09-25 16:28 ?291次閱讀
    <b class='flag-5'>文</b>氏橋信號發(fā)生器的<b class='flag-5'>工作原理</b>和結(jié)構(gòu)

    讀懂RFID技術(shù)的工作原理及技術(shù)參數(shù)

    。RFID技術(shù)通過無線射頻信號實現(xiàn)數(shù)據(jù)的非接觸式讀取和寫入,極大地提高了識別效率和準(zhǔn)確性。本文將深入分析RFID技術(shù)的工作原理及其關(guān)鍵技術(shù)參數(shù),探討其在各個領(lǐng)域的應(yīng)用潛力及未來發(fā)展趨勢。 RFID技術(shù)的工作原理 RFID技術(shù)的基本原理是利用無線電波進行通信,實現(xiàn)讀寫器與電
    的頭像 發(fā)表于 09-06 15:17 ?336次閱讀

    華納云:如何理解CDN

    內(nèi)容分發(fā)網(wǎng)絡(luò)(CDN)是種網(wǎng)絡(luò)架構(gòu),旨在提高用戶對網(wǎng)站、應(yīng)用程序或其他互聯(lián)網(wǎng)內(nèi)容的訪問速度和性能。CDN 的主要原理是通過在全球范圍內(nèi)部署分布式服務(wù)器,將內(nèi)容緩存并提供給用戶距離Z近的服務(wù)器,從而
    的頭像 發(fā)表于 08-23 15:20 ?196次閱讀

    CDN網(wǎng)站加速

    CDN網(wǎng)站加速是什么呢? CDN,英文全名為Content?Delivery?Network(也有人稱“Content?Distribution?Network”)的縮寫,即是我們中文所指的內(nèi)容傳遞
    的頭像 發(fā)表于 08-08 15:02 ?206次閱讀
    <b class='flag-5'>CDN</b>網(wǎng)站加速

    什么情況下的網(wǎng)站要使用CDN加速呢?

    速度慢等問題。 原理就是在客戶端和源站中多加層節(jié)點,用以加快用戶的訪問速度,讓用戶和離自己最近的節(jié)點層做交互。 CDN網(wǎng)站加速的工作流程 當(dāng)用戶訪問已經(jīng)加入CDN服務(wù)的網(wǎng)站時,首先通
    的頭像 發(fā)表于 07-26 16:29 ?207次閱讀

    CDN是什么?了解用CDN服務(wù)連到網(wǎng)站加速的原理與優(yōu)勢

    ,使用CDN還能帶來什么好處呢?起來看看吧! 什么是CDNCDN,全名為 Content Delivery(Distribution) Network,中文名稱內(nèi)容分發(fā)網(wǎng)絡(luò),是通
    的頭像 發(fā)表于 07-21 10:54 ?334次閱讀

    融合CDN是什么?為什么需要融合CDN?其應(yīng)用方法與原理是什么?

    你了解融合CDN是什么嗎?為什么需要融合CDN?你可能有聽過融合CDN,但你知道它的應(yīng)用方法與原理嗎?本文將帶你次了解什么是融合CDN,詳
    的頭像 發(fā)表于 07-11 14:49 ?264次閱讀

    IP地址與CDN技術(shù)

    。 首先我們來了解CDN的基本原理 CDN種分布式的網(wǎng)絡(luò)架構(gòu),是由多個地理位置分散的服務(wù)器節(jié)點組成。 CDN 技術(shù)的主要目標(biāo)是通過將網(wǎng)頁、視頻、圖像等內(nèi)容緩存到靠近用戶的邊緣服務(wù)器
    的頭像 發(fā)表于 07-10 11:30 ?284次閱讀

    CDN節(jié)點是什么

    CDN 節(jié)點是什么 CDN 主要依靠部署在各地的邊緣服務(wù)器,利用全局負(fù)載技術(shù)將用戶的訪問指向距離最近且正常工作的緩存服務(wù)器上,用戶訪問網(wǎng)站時由緩存服務(wù)器直接響應(yīng)用戶請求。CDN 節(jié)點作
    的頭像 發(fā)表于 07-06 13:45 ?986次閱讀
    <b class='flag-5'>CDN</b>節(jié)點是什么

    霍爾開關(guān)的工作原理及應(yīng)用

    霍爾開關(guān)的工作原理及應(yīng)用
    的頭像 發(fā)表于 04-09 10:29 ?2335次閱讀
    霍爾開關(guān)的<b class='flag-5'>工作原理</b>及應(yīng)用

    服務(wù)器cdn防御般是個人安裝還是企業(yè)安裝

    服務(wù)器CDN防御般是企業(yè)安裝,而不是個人安裝。 什么是CDN CDN,即內(nèi)容分發(fā)網(wǎng)絡(luò)(Content Delivery Network),是
    的頭像 發(fā)表于 02-03 10:58 ?556次閱讀

    CDN加速原理詳解

    、CDN加速是什么意思 CDN是Content Delivery Network)英文首字母的縮寫,中文翻譯為內(nèi)容分發(fā)網(wǎng)絡(luò),由于CDN是為加快網(wǎng)絡(luò)訪問速度而被優(yōu)化的網(wǎng)絡(luò)覆蓋層,因此被
    的頭像 發(fā)表于 01-12 16:06 ?933次閱讀
    <b class='flag-5'>CDN</b>加速原理詳解

    淺談內(nèi)容傳遞網(wǎng)絡(luò)(CDN

    CDN的基礎(chǔ)上,融合CDN策略通過在互聯(lián)網(wǎng)邊緣的代理服務(wù)器上復(fù)制內(nèi)容來優(yōu)化內(nèi)容的傳遞。這有助于減少帶寬消耗并改善用戶感知的延緩。本文討論了用于改善網(wǎng)絡(luò)性能的基本技術(shù),包括對內(nèi)容傳遞網(wǎng)絡(luò)的深入
    的頭像 發(fā)表于 01-08 14:40 ?515次閱讀

    ev電機的工作原理是什么

    詳細(xì)介紹EV電機的工作原理。 、原理 EV電機的工作原理基于電磁感應(yīng)定律,即當(dāng)電流通過導(dǎo)線時,會在導(dǎo)線周圍產(chǎn)生磁場。當(dāng)導(dǎo)線處于外磁場中,由于磁場的變化,會產(chǎn)生電動勢,從而驅(qū)動電流在導(dǎo)線中流動。 二、結(jié)構(gòu) EV電機的主要結(jié)
    的頭像 發(fā)表于 01-08 10:04 ?1293次閱讀

    恒訊科技分析:香港服務(wù)器CDN配置教程

    配置香港服務(wù)器的CDN(內(nèi)容分發(fā)網(wǎng)絡(luò))涉及多個步驟,主要目標(biāo)是通過分發(fā)內(nèi)容至全球各個節(jié)點,提高網(wǎng)站性能和降低加載時間。下面是個簡要的香港服務(wù)器CDN配置教程: 步驟1:選擇CDN服務(wù)
    的頭像 發(fā)表于 12-14 17:25 ?531次閱讀