淺談CDN原理

一、前言

一直對(duì)CDN原理有點(diǎn)一知半解宇攻,好像知道它是什么意思惫叛,”不就是能加速靜態(tài)資源的獲取,加快網(wǎng)頁(yè)的渲染嘛”逞刷,不過(guò)當(dāng)有人問(wèn)你它是什么原理嘉涌,又支支吾吾說(shuō)不太清妻熊,本文就將用兩種方式解釋什么是CDN原理,一種較為通俗易懂仑最,方便跟別人解釋扔役;另一種用專業(yè)詞匯進(jìn)行闡述,加深理解警医。

二亿胸、CDN具象化

舉個(gè)簡(jiǎn)單的例子描述什么是cdn,一張很大的餐桌上预皇,很多人在吃飯侈玄,其中包括小明和小李,小明和小李想要吃到距離他們很遠(yuǎn)的鍋包肉吟温,就得跋山涉水甚至站起來(lái)走過(guò)去才能吃到拗馒,那這個(gè)時(shí)候有人發(fā)現(xiàn)這道菜離小明和小李太遠(yuǎn)了,就主動(dòng)把菜分出來(lái)一些分別放到小明和小李身邊溯街,這樣小明和小李就可以就近吃到美味的鍋包肉了诱桂。小明和小李就近吃鍋包肉這個(gè)過(guò)程就用到了CDN。

img.jpg

再舉個(gè)例子呈昔,你在園區(qū)內(nèi)工作挥等,此時(shí)你想下載一個(gè)游戲,但這個(gè)游戲服務(wù)器帶寬被限制在2M堤尾,那么你下載這個(gè)好幾個(gè)G的游戲就需要很長(zhǎng)時(shí)間肝劲,但如果這個(gè)游戲非常熱門,園區(qū)內(nèi)很多人都下載過(guò)郭宝,那園區(qū)內(nèi)的緩存設(shè)備就會(huì)將游戲資源緩存下載辞槐,那么你再下載的時(shí)候就會(huì)用遠(yuǎn)遠(yuǎn)大于2M的速度從緩存設(shè)備中獲取,還減輕了目標(biāo)服務(wù)器的壓力粘室。

三榄檬、CDN具體原理

用簡(jiǎn)單通俗的例子說(shuō)明了什么是CDN之后就要再剖析一下它的具體原理了:

首先用又臭又長(zhǎng)的名詞說(shuō)一下CDN的全稱,Content Delivery Network或Content Ddistribute Network衔统,即內(nèi)容分發(fā)網(wǎng)絡(luò)鹿榜。

CDN是將源站內(nèi)容分發(fā)至最接近用戶的節(jié)點(diǎn),使用戶可就近取得所需內(nèi)容锦爵,提高用戶訪問(wèn)的響應(yīng)速度和成功率舱殿。解決因分布、帶寬险掀、服務(wù)器性能帶來(lái)的訪問(wèn)延遲問(wèn)題沪袭,適用于站點(diǎn)加速、點(diǎn)播樟氢、直播等場(chǎng)景冈绊。

最簡(jiǎn)單的CDN網(wǎng)絡(luò)由一個(gè)DNS服務(wù)器和幾臺(tái)緩存服務(wù)器組成:

  1. 當(dāng)用戶請(qǐng)求網(wǎng)站頁(yè)面上的內(nèi)容URL创倔,經(jīng)過(guò)本地DNS系統(tǒng)解析,DNS系統(tǒng)會(huì)最終將域名的解析權(quán)交給CNAME指向的CDN專用DNS服務(wù)器焚碌。
  2. CDN的DNS服務(wù)器將CDN的全局負(fù)載均衡設(shè)備IP地址返回用戶畦攘。
  3. 用戶向CDN的全局負(fù)載均衡設(shè)備發(fā)起內(nèi)容URL訪問(wèn)請(qǐng)求。
  4. CDN全局負(fù)載均衡設(shè)備根據(jù)用戶IP地址十电,以及用戶請(qǐng)求的內(nèi)容URL知押,選擇一臺(tái)用戶所屬區(qū)域的區(qū)域負(fù)載均衡設(shè)備,告訴用戶向這臺(tái)設(shè)備發(fā)起請(qǐng)求鹃骂。
  5. 區(qū)域負(fù)載均衡設(shè)備會(huì)為用戶選擇一臺(tái)合適的緩存服務(wù)器提供服務(wù)台盯,選擇的依據(jù)包括:根據(jù)用戶IP地址,判斷哪一臺(tái)服務(wù)器距用戶最近畏线;根據(jù)用戶所請(qǐng)求的URL中攜帶的內(nèi)容名稱静盅,判斷哪一臺(tái)服務(wù)器上有用戶所需內(nèi)容;查詢各個(gè)服務(wù)器當(dāng)前的負(fù)載情況寝殴,判斷哪一臺(tái)服務(wù)器尚有服務(wù)能力蒿叠。基于以上這些條件的綜合分析之后蚣常,區(qū)域負(fù)載均衡設(shè)備會(huì)向全局負(fù)載均衡設(shè)備返回一臺(tái)緩存服務(wù)器的IP地址市咽。
  6. 全局負(fù)載均衡設(shè)備把服務(wù)器的IP地址返回給用戶。
  7. 用戶向緩存服務(wù)器發(fā)起請(qǐng)求抵蚊,緩存服務(wù)器響應(yīng)用戶請(qǐng)求施绎,將用戶所需內(nèi)容傳送到用戶終端。如果這臺(tái)緩存服務(wù)器上并沒(méi)有用戶想要的內(nèi)容贞绳,而區(qū)域均衡設(shè)備依然將它分配給了用戶谷醉,那么這臺(tái)服務(wù)器就要向它的上一級(jí)緩存服務(wù)器請(qǐng)求內(nèi)容,直至追溯到網(wǎng)站的源服務(wù)器將內(nèi)容拉到本地冈闭。

上面的文字可能讀起來(lái)有點(diǎn)費(fèi)勁俱尼,下面用一張圖來(lái)解釋說(shuō)明

049b124feb55100ff2f147b768ad4c8b_1440w.jpg

以上就是CDN能加快網(wǎng)絡(luò)資源加載的原理。

四拒秘、游戲加速器原理

順便說(shuō)一下游戲加速器的原理号显,提到游戲加速就不得不提到延遲臭猜,那為什么會(huì)產(chǎn)生延遲呢躺酒?

影響延遲的關(guān)鍵因素就是本機(jī)電腦到服務(wù)器的距離,延遲有個(gè)公式是延遲≈距離/光速蔑歌。

上網(wǎng)連接游戲比作一條道路羹应,從用戶電腦到游戲服務(wù)器所經(jīng)歷的時(shí)間就是延遲。用戶電腦到游戲服務(wù)器的距離走向次屠,遵循一個(gè)基本原則
國(guó)內(nèi):局域網(wǎng)->城域網(wǎng)->骨干網(wǎng)->城域網(wǎng)->局域網(wǎng)
出國(guó):局域網(wǎng)->城域網(wǎng)->骨干網(wǎng)->國(guó)際出口→海外線路→...

如用戶在四川成都园匹,游戲服務(wù)器在北京雳刺,我們理論覺(jué)得這段距離是成都到北京的直線路線,但是我們用tracet命令查看所走路由表如圖

b264de9280810130bf5ffbe9d449c522_r.jpg

沒(méi)錯(cuò)裸违,他從成都先走到了上海掖桦,然后再?gòu)纳虾5搅吮本瑹o(wú)形中這段距離被拉長(zhǎng)了供汛,自然延遲就會(huì)長(zhǎng)了枪汪。

那么如何降低延遲呢?游戲加速器就可以做到怔昨,下圖就展示了游戲加速器是如何縮短距離雀久,降低延遲的

v2-f8324903eda197c44a10ab485a27c682_r.jpg

可以理解為從成都到天津本來(lái)是一條崎嶇的鄉(xiāng)道,還長(zhǎng)還不好走趁舀,而加速器在成都到天津架設(shè)了一條高速通路赖捌,直達(dá)天津,距離縮短了矮烹,延遲自然也低了越庇。

完。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末奉狈,一起剝皮案震驚了整個(gè)濱河市悦荒,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌嘹吨,老刑警劉巖搬味,帶你破解...
    沈念sama閱讀 219,427評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異蟀拷,居然都是意外死亡碰纬,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,551評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門问芬,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)悦析,“玉大人,你說(shuō)我怎么就攤上這事此衅∏看鳎” “怎么了?”我有些...
    開(kāi)封第一講書人閱讀 165,747評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵挡鞍,是天一觀的道長(zhǎng)骑歹。 經(jīng)常有香客問(wèn)我,道長(zhǎng)墨微,這世上最難降的妖魔是什么道媚? 我笑而不...
    開(kāi)封第一講書人閱讀 58,939評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上最域,老公的妹妹穿的比我還像新娘谴分。我一直安慰自己,他們只是感情好镀脂,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,955評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布牺蹄。 她就那樣靜靜地躺著,像睡著了一般薄翅。 火紅的嫁衣襯著肌膚如雪钞馁。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 51,737評(píng)論 1 305
  • 那天匿刮,我揣著相機(jī)與錄音僧凰,去河邊找鬼。 笑死熟丸,一個(gè)胖子當(dāng)著我的面吹牛训措,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播光羞,決...
    沈念sama閱讀 40,448評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼绩鸣,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了纱兑?” 一聲冷哼從身側(cè)響起呀闻,我...
    開(kāi)封第一講書人閱讀 39,352評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎潜慎,沒(méi)想到半個(gè)月后捡多,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,834評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡铐炫,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,992評(píng)論 3 338
  • 正文 我和宋清朗相戀三年垒手,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片倒信。...
    茶點(diǎn)故事閱讀 40,133評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡科贬,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出鳖悠,到底是詐尸還是另有隱情榜掌,我是刑警寧澤,帶...
    沈念sama閱讀 35,815評(píng)論 5 346
  • 正文 年R本政府宣布乘综,位于F島的核電站憎账,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏瘾带。R本人自食惡果不足惜鼠哥,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,477評(píng)論 3 331
  • 文/蒙蒙 一熟菲、第九天 我趴在偏房一處隱蔽的房頂上張望看政。 院中可真熱鬧朴恳,春花似錦、人聲如沸允蚣。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 32,022評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)嚷兔。三九已至森渐,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間冒晰,已是汗流浹背同衣。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,147評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留壶运,地道東北人耐齐。 一個(gè)月前我還...
    沈念sama閱讀 48,398評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像蒋情,于是被迫代替她去往敵國(guó)和親埠况。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,077評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容