黃大倫 彭小英
摘 要:近年來,互聯(lián)網(wǎng)業(yè)務(wù)發(fā)展迅猛。隨著用戶的增多,骨干網(wǎng)負(fù)荷增加,甚至出現(xiàn)調(diào)度出網(wǎng)的情況。為了應(yīng)對未來互聯(lián)網(wǎng)訪問流量增長的需求,減少業(yè)務(wù)對寬帶遠(yuǎn)程接入服務(wù)器-核心路由器(Broadband Remote Access Server-Core Router,BRAS-CR)鏈路及省干帶寬的占用,更好地服務(wù)市場前端,選擇合適的內(nèi)容分發(fā)網(wǎng)絡(luò)(Content Delivery Network,CDN)可以解決跨網(wǎng)訪問感知差問題,為用戶提供更好的互聯(lián)網(wǎng)業(yè)務(wù)體驗(yàn)。
關(guān)鍵詞:互聯(lián)網(wǎng);內(nèi)容分發(fā)網(wǎng)絡(luò)(CDN);內(nèi)容分發(fā)
中圖分類號:TP393.02 文獻(xiàn)標(biāo)識碼:A 文章編號:1003-5168(2021)28-00-03
Abstract: In recent years, Internet business has developed rapidly. With the increase of users, the load of backbone network increases and even dispatching out of the network, which has a great impact on the network. In order to cope with the growth demand of Internet access traffic in the future, reduce the occupation of business on Broadband Remote Access Server-Core Router(BRAS-CR) link and trunk saving bandwidth, better serve the front end of the market, and select appropriate Content Delivery Network(CDN) content distribution technology can solve the problem of poor perception of cross network access and provide users with a better Internet business experience.
Keywords: Internet;Content Delivery Network(CDN);content distribution
1 CDN概述
內(nèi)容分發(fā)網(wǎng)絡(luò)(Content Delivery Network,CDN)[1]是部署在各地的緩存邊緣節(jié)點(diǎn)以及現(xiàn)有的互聯(lián)網(wǎng)基礎(chǔ)之上的一層智能虛擬網(wǎng)絡(luò),可以為用戶自動選擇最佳網(wǎng)絡(luò)訪問路徑,并將源站的內(nèi)容分發(fā)到最接近用戶的網(wǎng)絡(luò)邊緣節(jié)點(diǎn),解決本地接入層及省干鏈路負(fù)荷高造成的Internet網(wǎng)絡(luò)擁塞問題,提供更快、更穩(wěn)定、更便捷的網(wǎng)絡(luò)訪問體驗(yàn)。
2 CDN平臺基本技術(shù)
CDN平臺基本技術(shù)[2]包括負(fù)載均衡技術(shù)、內(nèi)容分發(fā)技術(shù)和內(nèi)容存儲技術(shù)。其中,內(nèi)容分發(fā)包含從內(nèi)容源到CDN邊緣節(jié)點(diǎn)的過程?,F(xiàn)網(wǎng)應(yīng)用主要有PUSH推送和PULL拉取兩種主流的內(nèi)容分發(fā)技術(shù)。
3 CDN分發(fā)的域名和內(nèi)容分析
3.1 大文件業(yè)務(wù)內(nèi)容
大文件業(yè)務(wù)內(nèi)容包括視頻業(yè)務(wù)、游戲業(yè)務(wù)、音樂業(yè)務(wù)及動漫業(yè)務(wù),特點(diǎn)是文件訪問持續(xù)時(shí)間長,吞吐量大,需要考慮服務(wù)器整體的存儲量和輸入輸出吞吐量??紤]到硬盤讀文件由磁頭定位和順序讀數(shù)據(jù)兩步組成,一般大文件業(yè)務(wù)服務(wù)器在磁盤和內(nèi)存分區(qū)的粒度比較大,服務(wù)器為專用服務(wù)器的串口硬盤SATA(Serial Advanced Technology Attachment hard disk)硬盤,使用超文本傳輸協(xié)議(Hypertext Transfer Protocol,HTTP)和基于HTTP的自適應(yīng)碼率流(HTTP Live Streaming,HLS)媒體傳輸協(xié)議,采用重定向方式實(shí)現(xiàn)。
3.2 小文件業(yè)務(wù)內(nèi)容
全球廣域網(wǎng)(World Wide Web,WEB)業(yè)務(wù)是對文字和圖片等小文件的傳輸下載,特點(diǎn)是文件訪問持續(xù)性短,并發(fā)量大。一般小文件業(yè)務(wù)服務(wù)器在磁盤和內(nèi)存分區(qū)的粒度比較小。服務(wù)器為通用服務(wù)器的固態(tài)硬盤(Solid State Disk,SSD),使用HTTP協(xié)議,采用代理模式實(shí)現(xiàn)。
4 CDN分發(fā)的全局調(diào)度方式流程說明
4.1 別名CNAME引導(dǎo)機(jī)制
別名(Canonical Name,CNAME)引導(dǎo)機(jī)制[3]需要在業(yè)務(wù)系統(tǒng)的授權(quán)域名系統(tǒng)(Domain Name System,DNS)服務(wù)器上進(jìn)行CNAME配置,將解析請求傳輸?shù)饺终{(diào)度系統(tǒng)。CNAME調(diào)度流程如圖1所示。
①終端訪問統(tǒng)一資源定位符(Uniform Resource Locator,URL)為http://icp.com/Web/main.html,向Local DNS發(fā)起icp.com的域名解析。
②本地域名系統(tǒng)Local DNS經(jīng)過遞歸,向源站授權(quán)DNS服務(wù)器解析域名icp.com。
③網(wǎng)站授權(quán)DNS以CNAME方式返回重新構(gòu)建的業(yè)務(wù)域名(icp.com.cmcdn.com)。
④Local DNS向全局調(diào)度中心發(fā)起請求解析icp.com.cmcdn.com。
⑤調(diào)度中心根據(jù)Local DNS的地址查找調(diào)度策略,選擇最優(yōu)的邊緣節(jié)點(diǎn)給Local DNS。
⑥Local DNS向終端返回對應(yīng)的DNS Response,其中攜帶內(nèi)容網(wǎng)絡(luò)邊緣節(jié)點(diǎn)的IP地址。
4.2 域名轉(zhuǎn)發(fā)DNS Forward機(jī)制
需要在各節(jié)點(diǎn)Local DNS上進(jìn)行轉(zhuǎn)發(fā)Forward配置,將對應(yīng)的解析請求傳至全局調(diào)度系統(tǒng)。DNS Forward調(diào)度流程如圖2所示。
①Local DNS中將icp.com配置到Forward First名單中。
②終端訪問URL為http://icp.com/Web/main.html,向Local DNS發(fā)起icp.com的域名解析。
③LocalDNS匹配Forward名單,發(fā)現(xiàn)匹配一致,向全局調(diào)度中心發(fā)起DNS請求,解析icp.com。
④調(diào)度控制子系統(tǒng)根據(jù)Local DNS的地址匹配調(diào)度策略,選擇一個(gè)最優(yōu)的邊緣節(jié)點(diǎn)返回給Local DNS。
⑤Local DNS向終端返回對應(yīng)的域名響應(yīng)DNS Response,其中攜帶內(nèi)容網(wǎng)絡(luò)邊緣節(jié)點(diǎn)的IP地址。
5 用戶訪問互聯(lián)網(wǎng)業(yè)務(wù)過程分析
用戶訪問互聯(lián)網(wǎng)業(yè)務(wù)可通過兩種方式實(shí)現(xiàn),分別為傳統(tǒng)的未部署CDN業(yè)務(wù)方式和已經(jīng)部署了CDN的業(yè)務(wù)方式。未部署CDN業(yè)務(wù)的方式中,所有用戶都是通過直接訪問源站獲取數(shù)據(jù),用戶訪問量較大,源站負(fù)荷較重,且數(shù)據(jù)傳輸距離較遠(yuǎn),鏈路流量負(fù)荷高。為了解決上述問題,可采用域名轉(zhuǎn)發(fā)機(jī)制DNS Forward和別名解析CNAME兩種方式在客戶近端部署CDN,使客戶訪問互聯(lián)網(wǎng)業(yè)務(wù)快速流暢,提升用戶體驗(yàn)[4]。
5.1 未部署CDN業(yè)務(wù)流程
未部署的CDN業(yè)務(wù)流程主要包括用戶終端門戶請求和認(rèn)證過程與DNS域名解析過程兩個(gè)過程,具體流程如圖3所示。
5.1.1 用戶終端門戶請求和認(rèn)證過程。在未部署的CDN中,終端用戶向門戶發(fā)起視頻播放請求,認(rèn)證服務(wù)器收到請求后確認(rèn)用戶的合法狀態(tài),如認(rèn)證合法,則返回視頻地址URL(域名vod.cdn2.cmvideo.cn),否則返回認(rèn)證失敗頁面[5]。
5.1.2 DNS域名解析過程。終端向本地域名系統(tǒng)LDNS發(fā)起請求進(jìn)行域名解析,如本地DNS服務(wù)器有緩存記錄則直接響應(yīng),否則將請求遞歸到和視界授權(quán)DNS查詢,最后授權(quán)的DNS將解析結(jié)果IP 1.1.1.1返回到本地DNS服務(wù)器,本地DNS服務(wù)器再將域名解析結(jié)果返回給終端。
5.2 以域名轉(zhuǎn)發(fā)DNS FORWARD方式部署CDN后的業(yè)務(wù)過程
以域名轉(zhuǎn)發(fā)DNS Forward方式部署的業(yè)務(wù)流程分為用戶終端門戶和認(rèn)證過程、CND DNS調(diào)度過程和CDN分發(fā)加速過程3個(gè)過程,具體流程如圖4所示。
5.2.1 用戶終端門戶請求和認(rèn)證過程。和未部署CDN業(yè)務(wù)過程一樣,終端用戶向門戶發(fā)起視頻播放請求,認(rèn)證服務(wù)器收到請求后確認(rèn)用戶的合法狀態(tài),如認(rèn)證合法,則返回視頻地址URL(域名vod.cdn2.cmvideo.cn),否則返回認(rèn)證失敗頁面。
5.2.2 CDN DNS調(diào)度過程。終端向本地域名系統(tǒng)LDNS發(fā)起請求,進(jìn)行域名解析。本地域名系統(tǒng)收到請求后,將請求轉(zhuǎn)發(fā)到調(diào)度中心全局負(fù)載均衡(Global Load Balance,GLB)進(jìn)行解析。如GLB發(fā)現(xiàn)請求是來自廣西的用戶,則返回廣西CDN節(jié)點(diǎn)的IP給本地DNS,本地DNS再將解析記錄返回給終端。
5.2.3 CDN分發(fā)加速過程。終端用戶向CDN邊緣節(jié)點(diǎn)請求資源,CDN邊緣節(jié)點(diǎn)先判斷是否已經(jīng)有緩存請求的資源,如果沒有則向CDN內(nèi)容中心獲取,而如果CDN內(nèi)容中心也沒有該資源,則向全局服務(wù)器負(fù)載均衡(Global Server Load Balance,GSLB)源站回源獲取并響應(yīng)終端用戶,完成CDN加速。
5.3 以別名解析CNAME方式部署CDN后的業(yè)務(wù)過程
以別名解析CNAME方式部署的業(yè)務(wù)流程分為用戶終端門戶和認(rèn)證過程、CND DNS調(diào)度過程以及CDN分發(fā)加速過程3個(gè)過程,具體流程如圖5所示。
5.3.1 用戶終端門戶請求和認(rèn)證過程。和未部署CDN業(yè)務(wù)過程一樣,終端用戶向門戶發(fā)起視頻播放請求,認(rèn)證服務(wù)器收到請求后確認(rèn)用戶的合法狀態(tài),如認(rèn)證合法,則返回視頻地址URL(域名vod.cdn2.cmvideo.cn),否則返回認(rèn)證失敗頁面。
5.3.2 CDN DNS調(diào)度過程。終端向本地域名系統(tǒng)LDNS發(fā)起請求進(jìn)行域名解析,本地DNS有緩存記錄則直接響應(yīng),否則遞歸到和視界授權(quán)DNS查詢,授權(quán)DNS將CNAME到CDN的域(lovev.a.cdn.chinamobile.com)解析結(jié)果返回給本地DNS。本地DNS再次向全局負(fù)載均衡GLB解析CDN域名,GLB發(fā)現(xiàn)請求是來自廣西的用戶,將返回廣西CDN節(jié)點(diǎn)的IP給本地DNS,本地DNS返回給終端。
5.3.3 CDN分發(fā)加速過程。終端用戶向CDN邊緣節(jié)點(diǎn)請求資源,CDN邊緣節(jié)點(diǎn)先進(jìn)行消息摘要算法5(Message-Digest Algorithm,MD5)防盜鏈校驗(yàn),校驗(yàn)通過再判斷是否已經(jīng)有緩存,如果沒有緩存,則向CDN內(nèi)容中心獲取。如果CDN內(nèi)容中心也沒有該資源,由向GSLB源站回源獲取并響應(yīng)終端用戶,完成CDN加速。
6 結(jié)語
在不同業(yè)務(wù)場景使用合適的內(nèi)容分發(fā)方式,能夠合理利用資源,達(dá)到網(wǎng)絡(luò)資源利用效率最大化的目的,從而降低成本,提升用戶使用感知,提高網(wǎng)絡(luò)控制力,使得CDN運(yùn)營商具備高效的內(nèi)容和流量管控力度,具備高質(zhì)量的服務(wù)能力,全面構(gòu)建內(nèi)容網(wǎng)絡(luò)運(yùn)營能力。
參考文獻(xiàn):
[1]趙思行.CDN內(nèi)容分發(fā)的研究與應(yīng)用[J].移動信息,2018(2):148-149.
[2]王薇薇,李子木.基于CDN的流媒體分發(fā)技術(shù)研究綜述[J].計(jì)算機(jī)工程與應(yīng)用,2004(8):121-125.
[3]余紅梅.基于CDN和P2P技術(shù)的混合流媒體內(nèi)容分發(fā)機(jī)制研究[J].現(xiàn)代計(jì)算機(jī),2010(4):65-67.
[4]張震,張雷.基于CCN的CDN視頻內(nèi)容分發(fā)技術(shù)研究[J].軟件,2015(1):67-71.
[5]何銳,李艷,劉紅.基于CDN內(nèi)容分發(fā)的研究與應(yīng)用[J].通信技術(shù),2011(3):112-115.
3035500338284