CDN,全稱是Content Delivery Network,中文可譯為“內(nèi)容快遞網(wǎng)”。它是一個建立并覆蓋在互聯(lián)網(wǎng)(Internet)之上的一層特殊網(wǎng)絡,專門用于通過互聯(lián)網(wǎng)高效傳遞豐富的多媒體內(nèi)容。CDN 出現(xiàn)和存在的意義在于它使互聯(lián)網(wǎng)更有效地為人們服務,特別是那些對互聯(lián)網(wǎng)內(nèi)容有更高要求(比如由簡單的文字和圖片等靜態(tài)內(nèi)容到聲像俱全的多媒體動態(tài)內(nèi)容)的人們。
“CDN技術”簡介
CDN的全稱是Content Delivery Network,即內(nèi)容分發(fā)網(wǎng)絡。其目的是通過在現(xiàn)有的Internet中增加一層新的網(wǎng)絡架構,將網(wǎng)站的內(nèi)容發(fā)布到最接近用戶的網(wǎng)絡”邊緣”,使用戶可以就近取得所需的內(nèi)容,解決Internet網(wǎng)絡擁擠的狀況,提高用戶訪問網(wǎng)站的響應速度。從技術上全面解決由于網(wǎng)絡帶寬小、用戶訪問量大、網(wǎng)點分布不均等原因所造成的用戶訪問網(wǎng)站響應速度慢的問題。
目前,國內(nèi)訪問量較高的大型網(wǎng)站如新浪、網(wǎng)易等,均使用CDN網(wǎng)絡加速技術,雖然網(wǎng)站的訪問巨大,但無論在什么地方訪問都會感覺速度很快。而一般的網(wǎng)站如果服務器在網(wǎng)通,電信用戶訪問很慢,如果服務器在電信,網(wǎng)通用戶訪問又很慢。
“CDN技術”的優(yōu)勢
1、本地Cache加速 提高了企業(yè)站點(尤其含有大量圖片和靜態(tài)頁面站點)的訪問速度,并大大提高以上性質站點的穩(wěn)定性
2、鏡像服務 消除了不同運營商之間互聯(lián)的瓶頸造成的影響,實現(xiàn)了跨運營商的網(wǎng)絡加速,保證不同網(wǎng)絡中的用戶都能得到良好的訪問質量。
3、遠程加速 遠程訪問用戶根據(jù)DNS負載均衡技術 智能自動選擇Cache服務器,選擇最快的Cache服務器,加快遠程訪問的速度
4、帶寬優(yōu)化 自動生成服務器的遠程Mirror(鏡像)cache服務器,遠程用戶訪問時從cache服務器上讀取數(shù)據(jù),減少遠程訪問的帶寬、分擔網(wǎng)絡流量、減輕原站點WEB服務器負載等功能。
5、集群抗攻擊 廣泛分布的CDN節(jié)點加上節(jié)點之間的智能冗于機制,可以有效地預防黑客入侵以及降低各種D.D.o.S攻擊對網(wǎng)站的影響,同時保證較好的服務質量 。
網(wǎng)站用“CDN技術”武裝的流程
第一步:修改DNS解析
前面已經(jīng)說到,CDN其實是夾在網(wǎng)頁瀏覽者和被訪問的服務器中間的一層鏡像或者說緩存,瀏覽者訪問時點擊的還是服務器原來的URL地址,但是他看到的內(nèi)容其實是離他的IP地址所在地最近的一臺鏡像服務器上的頁面緩存內(nèi)容,也就是說用戶在使用原來的URL訪問服務器時并沒有實際訪問到服務器上的內(nèi)容,所以要實現(xiàn)這個效果,就得在這個服務器的域名解析上進行一些調整。
實際上,這個服務器的域名解析過程已經(jīng)轉變?yōu)闉樵L問者選擇離他最近的鏡像服務器,因此域名的解析服務器的IP要改成CDN運營商架設的智能解析服務器的IP,例如你在新網(wǎng)注冊一個域名,默認用的就是新網(wǎng)的DNS服務器為你進行解析,而假設你選擇了網(wǎng)宿的CDN服務,就得修改域名管理的設置,改成使用網(wǎng)宿的CDN解析服務器來進行解析。
這樣,當一個瀏覽者訪問你的網(wǎng)站時,他訪問的URL地址就會被網(wǎng)宿的CDN解析服務器解析到網(wǎng)宿科技各地鏡像服務器中離這個瀏覽者最近的一臺上面。
第二步:調整網(wǎng)頁架構
CDN既然是一種緩存技術,那么它的實時性肯定是無法實現(xiàn)的,鏡像服務器上的緩存一般都是隔一定的時間更新一次,因此在更新期間內(nèi),用戶看到的內(nèi)容是不會變的;所以使用CDN加速的服務器應該以靜態(tài)頁面和實時更新頻率較低的內(nèi)容為主,像論壇、天氣預報這種內(nèi)容更新頻繁的站點使用CDN反而適得其反。
CDN最適合的領域是資訊提供站點或者其他以靜態(tài)頁面為主的內(nèi)容展示性質站點。
第三步:鏡像服務器自動高新緩存
鏡像服務器上面安裝有一個可以進行自動遠程備份的軟件,當然它只備份靜態(tài)頁面和圖片這些,每隔一定的時間,各個鏡像服務器就會到網(wǎng)站的源服務器上去獲取最新的內(nèi)容。
那么有些網(wǎng)友就覺得,如果源服務器已經(jīng)更新了但是緩存服務器還沒更新,那該怎么辦?這個問題其實并不存在,如果用戶訪問的是緩存服務器上也沒有的頁面,那么鏡像服務器會先從源服務器上拿到這個頁面的緩存然后再發(fā)送給訪問者,如果用戶訪問的是動態(tài)頁面,那么這個訪問請求就會被提交到源服務器。
“CDN技術”的應用和效果
CDN對于門戶性質資訊站點的加速效果還是非常明顯的,以新浪為例:
新浪采用了ChinaCache做的CDN系統(tǒng),ChinaCache在全國分布了四十多個點,同時采用基于動態(tài)DNS分配的全球服務器負載均衡技術。
從新浪的站點結構可以看出:
>www.sina.com.cn
Server: UnKnown
Address: 192.168.1.254
Non-authoritative answer:
Name: libra.sina.com.cn
Addresses: 61.135.152.71, 61.135.152.72, 61.135.152.73, 61.135.152.74 61.135.152.75, 61.135.152.76, 61.135.153.181, 61.135.153.182, 61.135.53.183, 61.135.153.184, 61.135.152.65, 61.135.152.66, 61.135.152.67, 61.135.12.68, 61.135.152.69, 61.135.152.70
Aliases: www.sina.com.cn, jupiter.sina.com.cn
在北京地區(qū)ChinaCache將www.sina.com.cn的網(wǎng)址解析到libra.sina.com.cn,然后libra.sina.com.cn做了DNS負載均衡,將libra.sina.com.cn解析到61.135.152.71等16個ip上,這16個ip分布在北京的多臺前臺緩存服務器上,使用squid做前臺緩存。如果是在其它地區(qū)訪問www.sina.com.cn可能解析到本地相應的服務器,例如pavo.sina.com.cn,然后pavo又對應了很多做了squid的ip。這樣就實現(xiàn)了在不同地區(qū)訪問自動轉到最近的服務器訪問,達到加快訪問速度的效果。
我們再看一個新浪其它頻道是指到哪里的:
> news.sina.com.cn
Server: UnKnown
Address: 192.168.1.254
Non-authoritative answer:
Name: libra.sina.com.cn
Addresses: 61.135.152.65, 61.135.152.66, 61.135.152.67, 61.135.152.68 61.135.152.69, 61.135.152.70, 61.135.152.71, 61.135.152.72, 61.135.152.73 61.135.153.178, 61.135.153.179, 61.135.153.180, 61.135.153.181, 61.135.153.182 61.135.153.183, 61.135.153.184
Aliases: news.sina.com.cn, jupiter.sina.com.cn
可以看出,各個頻道的前臺緩存集群與www.sina.com.cn的前臺緩存集群是相同的。
新浪使用CDN后效果也非常明顯:
這是在筆者在廣州 ping 新浪域名,被解析到華南這邊的鏡像服務器,反映速度快,穩(wěn)定無丟包:
假如沒使用CDN,還是訪問新浪在北京架設的服務器,不僅反應速度慢了好幾倍,甚至還出現(xiàn)超時:
“CDN技術” 與 “鏡像站點” 的區(qū)別
CDN有別于鏡像,因為它比鏡像更智能,或者可以做這樣一個比喻:CDN=更智能的鏡像+緩存+流量導流。因而,CDN可以明顯提高Internet網(wǎng)絡中信息流動的效率。從技術上全面解決由于網(wǎng)絡帶寬小、用戶訪問量大、網(wǎng)點分布不均等問題,提高用戶訪問網(wǎng)站的響應速度。 |