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