簡述:CDN,內(nèi)容分發(fā)網(wǎng)絡(luò),是大多數(shù)互聯(lián)網(wǎng)業(yè)務(wù)里必不可少的部分,但大多數(shù)互聯(lián)網(wǎng)從業(yè)人員不是特別清楚CDN究竟是什么,以及它可以為我們做哪些事情
CDN,內(nèi)容分發(fā)網(wǎng)絡(luò),是大多數(shù)互聯(lián)網(wǎng)業(yè)務(wù)里必不可少的部分,但大多數(shù)互聯(lián)網(wǎng)從業(yè)人員不是特別清楚CDN究竟是什么,以及它可以為我們做哪些事情。
我們還是從之前介紹的《不同的人看到的直播為什么不一樣?》這篇文章切入,講講CDN是什么。
從直播說起
還記得這個圖吧,直播的主播通過自己的手機把“視頻圖”發(fā)給了觀眾,觀眾收到后,在APP里把每個圖顯示出來,形成了視頻。現(xiàn)實的情況是,一個主播不可能只為一個觀眾服務(wù),可能有很多個觀眾需要觀看,如果是3個觀眾,那么就會是這樣了:
圖里的方式是主播把相同的數(shù)據(jù)同時傳給3個不同的觀眾,這當然是非常愚蠢的方式,同樣的數(shù)據(jù)被傳了3次,主播端的瓶頸非常明顯,比如有1000個觀眾同時觀看的時候,主播端根本無法承擔(dān)這么多的數(shù)據(jù)傳輸。
第一臺服務(wù)器出現(xiàn)了
所以呢,很容易想到的方法是,主播把數(shù)據(jù)傳給一個中間服務(wù)器,由服務(wù)器充當把數(shù)據(jù)發(fā)給不同用戶的角色,也就是這樣(圖片1-6我們先用“數(shù)據(jù)”代替了):
這樣的話,就用了性能強大的服務(wù)器來代替了主播傳輸數(shù)據(jù)的工作,給服務(wù)器提出的要求是:
第一,能夠接收來自主播的傳輸數(shù)據(jù);第二,能夠把數(shù)據(jù)下發(fā)到觀眾APP.于是,服務(wù)器這時候便被定義了兩個身份,第一,推流節(jié)點(接收來自主播端的上行推流);第二,分發(fā)節(jié)點(把視頻流分發(fā)給不同的觀眾)。這就是簡單的推流和分發(fā)概念。
由于服務(wù)器的強大能力,它不甘心只把數(shù)據(jù)接收過來再分發(fā)下去,而是要干更多的事情。比如說,給主播的臉上做個特效、給直播畫面上加上公司的logo水印、或者是擔(dān)心有主播直播違(hao)禁(kan)的畫面,在服務(wù)器上做個鑒黃等等吧。這時候,服務(wù)器的定義有發(fā)生了改變,它被稱為了“流媒體處理中心”。
觀眾數(shù)進一步增大會怎樣?
服務(wù)器也是有瓶頸的,例如,通常服務(wù)器的網(wǎng)卡是1G的,一路直播視頻的帶寬需求是1M左右,不考慮別的因素,一臺服務(wù)器的網(wǎng)卡最多可以同時分發(fā)1000路直播就達到瓶頸了。那么,如果有3000個觀眾觀看的時候,怎么辦?
當然,我們可以放3個服務(wù)器嘛,每個服務(wù)器分發(fā)1000路,總共就3000路了。于是就變成了這樣:
又發(fā)現(xiàn)問題了,主播又要向服務(wù)器1、2、3分別發(fā)送3份數(shù)據(jù)了,按照之前的思路,我們可以這么來優(yōu)化:在服務(wù)器1、2、3之前,放一個服務(wù)器-0,它的作用是接收主播推流,再把數(shù)據(jù)交給服務(wù)器1、2、3.由于服務(wù)器1、2、3給1000名觀眾分發(fā)的數(shù)據(jù)都是一樣的,所以呢,他們就把數(shù)據(jù)在自己服務(wù)器上存儲了一份。
概念:負載均衡、CDN緩存、回源、就近原則
在這樣的架構(gòu)下,會延伸出這樣的幾個概念:
當觀眾人數(shù)不太多的時候,例如總共只有1000人,那么是選擇讓某一臺服務(wù)器服務(wù)這1000人,還是3臺服務(wù)器分擔(dān)1000人,還是2臺?機器也會有新舊之分,老機器只能抗800數(shù)量,那要怎么來分配呢?等等問題。這里就需要有一個策略來做資源的分配。這個策略叫做:負載均衡。
因為觀眾看到的數(shù)據(jù)都是一樣的,所以呢,數(shù)據(jù)會在服務(wù)器1、2、3上都存儲一份。這個概念叫做:CDN緩存。
當分配到服務(wù)器1的第一個觀眾進入時,服務(wù)器1是沒有存儲數(shù)據(jù)的,它會向服務(wù)器-0獲取數(shù)據(jù),這個過程叫做:回源;相應(yīng)的,服務(wù)器-0被稱為:源站;觀眾請求的數(shù)據(jù)如果由CDN緩存提供,叫做緩存命中,所有用戶請求的緩存命中比例叫做緩存命中率,它是衡量CDN質(zhì)量的關(guān)鍵指標。
一名新進入的觀眾會被分配到哪一臺服務(wù)器上呢?理論上,這臺服務(wù)器距離用戶的網(wǎng)絡(luò)鏈路越短、不跨網(wǎng),數(shù)據(jù)的傳輸?shù)姆€(wěn)定性就越好,這個叫做:就近原則。
跨地區(qū)、多運營商覆蓋的CDN
由于就近原則的存在,為了滿足全國甚至全世界不同地方的人,那我們就需要把服務(wù)器分布在不同的地區(qū)。又由于不同的網(wǎng)絡(luò)運營商之間的網(wǎng)絡(luò)傳輸會有穩(wěn)定性問題,那么就需要在不同的網(wǎng)絡(luò)運營商里也放置服務(wù)器,于是,一個CDN網(wǎng)絡(luò)就成型了:
隨著規(guī)模越來越大,例如現(xiàn)在的PP云,就變成了這樣:
CDN,中文名稱是內(nèi)容分發(fā)網(wǎng)絡(luò),可以用來分發(fā)直播、點播、網(wǎng)頁靜態(tài)文件、小文件等等,幾乎我們?nèi)粘S玫降幕ヂ?lián)網(wǎng)產(chǎn)品都是有CDN在背后提供支持?,F(xiàn)在有很多公司在提供云服務(wù),這是在CDN的基礎(chǔ)上,提供了更豐富的一站式接入的云服務(wù)能力。例如PP云服務(wù)為客戶提供直播、點播、靜態(tài)文件、短視頻等多種云服務(wù)和CDN加速能力。本文是用比較抽象的方式為大家介紹了CDN是什么,希望可以有所幫助。
預(yù)告
在過去的十幾年里,有另外一項視頻文件傳輸技術(shù)可以與CDN分庭抗禮,那就是P2P加速。相信大家都用過這些軟件(暴露年齡了):Bitcomet、迅雷、電驢、還有PC上的各種視頻軟件,這些都使用了P2P加速。后面的文章我們會為大家科普式的介紹P2P,歡迎搜索PP視頻云。
騰佑科技(m.mubashirfilms.com)成立于2009年,總部位于河南鄭州,是一家集互聯(lián)網(wǎng)基礎(chǔ)設(shè)施及軟硬件于一體化的高新技術(shù)企業(yè),具有IDC/ISP/ICP/云牌照、雙軟等資質(zhì),并擁有多個國家版權(quán)局認證。公司自成立以來,一直致力于發(fā)展互聯(lián)網(wǎng)IDC數(shù)據(jù)中心DataCenter、云計算Cloud、大數(shù)據(jù)BigDate、人工智能AI、內(nèi)容加速CDN、互聯(lián)網(wǎng)安全、軟件定制開發(fā)等產(chǎn)品服務(wù)及行業(yè)客戶技術(shù)一體化智能解決方案;2018年成為百度智能云AI河南服務(wù)中心。
售前咨詢熱線:400-996-8756
備案提交:0371-89913068
售后客服:0371-89913000
搜索詞
熱門產(chǎn)品推薦