用戶訪問未使用CDN緩存網(wǎng)站的過程為:
1)紧唱、用戶向瀏覽器提供要訪問的域名活尊;
2)、瀏覽器調(diào)用域名解析函數(shù)庫對域名進(jìn)行解析漏益,以得到此域名對應(yīng)的IP地址蛹锰;
3)、瀏覽器使用所得到的IP地址绰疤,向域名的服務(wù)主機發(fā)出數(shù)據(jù)訪問請求铜犬;
4)、瀏覽器根據(jù)域名主機返回的數(shù)據(jù)顯示網(wǎng)頁的內(nèi)容轻庆。
通過以上四個步驟癣猾,瀏覽器完成從用戶處接收用戶要訪問的域名到從域名服務(wù)主機處獲取數(shù)據(jù)的整個過程。CDN網(wǎng)絡(luò)是在用戶和服務(wù)器之間增加Cache(咔事:高速緩存)層余爆,如何將用戶的請求引導(dǎo)到Cache上獲得源服務(wù)器的數(shù)據(jù)纷宇,主要是通過接管DNS實現(xiàn),下面讓我們看看訪問使用CDN緩存后的網(wǎng)站的過程:
1用戶名提交域名
2瀏覽器對域名進(jìn)行解釋---------------瀏覽器調(diào)用域名解析庫對域名進(jìn)行解析蛾方,由于CDN對域名解析過程進(jìn)行了調(diào)整像捶,所以解析函數(shù)庫一般得到的是該域名對應(yīng)的CNAME記錄,為了得到實際IP地址桩砰,瀏覽器需要再次對獲得的CNAME域名進(jìn)行解析以得到實際的IP地址拓春;在此過程中,使用的全局負(fù)載均衡DNS解析五芝,如根據(jù)地理位置信息解析對應(yīng)的IP地址痘儡,使得用戶能就近訪問。
3CDN域名是服務(wù)器返回指定域名的CNAME(誰內(nèi)木:別名解析)記錄---------------------此次解析得到CDN緩存服務(wù)器的IP地址枢步,瀏覽器在得到實際的IP地址以后沉删,向緩存服務(wù)器發(fā)出訪問請求;
4對CNAME(誰內(nèi)木:別名解析)記錄進(jìn)行在解釋---------------------緩存服務(wù)器根據(jù)瀏覽器提供的要訪問的域名醉途,通過Cache(咔事:高速緩存)內(nèi)部專用DNS解析得到此域名的實際IP地址矾瑰,再由緩存服務(wù)器向此實際IP地址提交訪問請求;
5得到CDN緩存的服務(wù)器地址-----------------緩存服務(wù)器從實際IP地址得得到內(nèi)容以后隘擎,一方面在本地進(jìn)行保存殴穴,以備以后使用,另一方面把獲取的數(shù)據(jù)返回給客戶端货葬,完成數(shù)據(jù)服務(wù)過程采幌;
6根據(jù)IP地址發(fā)出訪問請求,
7緩存服務(wù)器通過內(nèi)部DNS得到實名主機的真實地址震桶,
8像真實主機發(fā)出請求休傍,并將請求返回客戶端,
9客戶端瀏覽器得到請求數(shù)據(jù)并且回顯-------------------客戶端得到由緩存服務(wù)器返回的數(shù)據(jù)以后顯示出來并完成整個瀏覽的數(shù)據(jù)請求過程蹲姐。
通過以上的分析我們可以得到磨取,為了實現(xiàn)既要對普通用戶透明(即加入緩存以后用戶客戶端無需進(jìn)行任何設(shè)置人柿,直接使用被加速網(wǎng)站原有的域名即可訪問,又要在為指定的網(wǎng)站提供加速服務(wù)的同時降低對ICP的影響忙厌,只要修改整個訪問過程中的域名解析部分凫岖,以實現(xiàn)透明的加速服務(wù),下面是CDN網(wǎng)絡(luò)實現(xiàn)的具體操作過程逢净。
1)哥放、作為ICP,只需要把域名解釋權(quán)交給CDN運營商汹胃,其他方面不需要進(jìn)行任何的修改婶芭;操作時,ICP修改自己域名的解析記錄着饥,一般用cname方式指向CDN網(wǎng)絡(luò)Cache服務(wù)器的地址犀农。
2)、作為CDN運營商宰掉,首先需要為ICP的域名提供公開的解析呵哨,為了實現(xiàn)sortlist,一般是把ICP的域名解釋結(jié)果指向一個CNAME記錄轨奄;
3)孟害、當(dāng)需要進(jìn)行sortlist時,CDN運營商可以利用DNS對CNAME指向的域名解析過程進(jìn)行特殊處理挪拟,使DNS服務(wù)器在接收到客戶端請求時可以根據(jù)客戶端的IP地址挨务,返回相同域名的不同IP地址;
4)玉组、由于從cname獲得的IP地址谎柄,并且?guī)в衕ostname信息,請求到達(dá)Cache之后惯雳,Cache必須知道源服務(wù)器的IP地址朝巫,所以在CDN運營商內(nèi)部維護(hù)一個內(nèi)部DNS服務(wù)器,用于解釋用戶所訪問的域名的真實IP地址石景;
5)劈猿、在維護(hù)內(nèi)部DNS服務(wù)器時,還需要維護(hù)一臺授權(quán)服務(wù)器潮孽,控制哪些域名可以進(jìn)行緩存揪荣,而哪些又不進(jìn)行緩存,以免發(fā)生開放代理的情況往史。