本發(fā)明涉及通信領(lǐng)域,尤其涉及一種資源緩存方法及裝置。
背景技術(shù):
隨著互聯(lián)網(wǎng)的蓬勃發(fā)展,網(wǎng)絡流量快速增長,給網(wǎng)絡運營商帶來了巨大的挑戰(zhàn)。網(wǎng)絡基礎(chǔ)設(shè)施擴容投資巨大,難以匹配用戶流量的增長速度?;ヂ?lián)網(wǎng)緩存(Web Cache)系統(tǒng)是解決這一問題的有效方式之一。現(xiàn)網(wǎng)流量大部分來自超文本傳輸協(xié)議(Hyper Text Transfer Protocol,HTTP),主要包括視頻、文件下載、網(wǎng)頁瀏覽等,由于HTTP是基于客戶機/服務器(Client/Server,C/S)的模式,用戶訪問資源時都需要到源服務器獲取同樣的數(shù)據(jù),訪問同一資源的人數(shù)越多,產(chǎn)生的重復數(shù)據(jù)流量越大。
Web Cache基于存儲換帶寬、流量本地化的思路,將熱門資源緩存到本地,直接從本地為終端設(shè)備用戶提供服務,大量減少了到上級網(wǎng)絡的流量,節(jié)省了網(wǎng)絡運營商的投資,如網(wǎng)絡基礎(chǔ)設(shè)施建設(shè)和網(wǎng)間結(jié)算費用等,同時還降低了響應終端設(shè)備訪問的時延,提高了用戶體驗。
透明緩存是Web Cache的一種實現(xiàn)方式,透明緩存技術(shù)是指透明緩存使用Web服務器地址與終端設(shè)備交互,使用終端設(shè)備地址與Web服務器交互,使得終端設(shè)備和Web服務器對緩存系統(tǒng)無感知。通常,透明緩存根據(jù)終端設(shè)備建立傳輸控制協(xié)議(Transmission Control Protocol,TCP)連接的請求報文中的目標互聯(lián)網(wǎng)協(xié)議(Internet Protocol,IP)地址確定源服務器IP地址,如果該報文被終端設(shè)備惡意偽造或指向惡意網(wǎng)站,則可能導致Web Cache將惡意內(nèi)容緩存到本地,并當作源服務器內(nèi)容提供給其它終端設(shè)備用戶,例如,終端設(shè)備通過透明緩存建立了與惡意網(wǎng)站的TCP連接后,將訪問請 求偽造成Get http://www.baidu.com/20150619qq_setup.exe通過透明緩存發(fā)送給該惡意網(wǎng)站,該惡意網(wǎng)站通過透明緩存返回木馬病毒給該終端設(shè)備,如果透明緩存判斷http://www.baidu.com/20150619qq_setup.exe指示的資源為熱門資源,則會將該惡意網(wǎng)站返回的木馬病毒緩存在本地,當其他終端用戶獲取真正的http://www.baidu.com/20150619qq_setup.exe指示的資源時,透明緩存會將該木馬病毒返回給其他終端設(shè)備。
技術(shù)實現(xiàn)要素:
本發(fā)明的實施例提供一種資源緩存方法和裝置,能夠防止互聯(lián)網(wǎng)緩存裝置緩存惡意資源,從而防止其將惡意資源當做源服務器資源提供給其他終端設(shè)備用戶。
第一方面,提供了一種資源緩存方法,所述方法包括:互聯(lián)網(wǎng)緩存裝置在接收到資源服務器返回給終端設(shè)備的資源后,確定所述資源滿足第一緩存條件;所述互聯(lián)網(wǎng)緩存裝置發(fā)送解析請求到解析服務器,所述解析請求中攜帶所述資源的統(tǒng)一資源定位符URL中的域名;所述互聯(lián)網(wǎng)緩存裝置接收所述解析服務器根據(jù)所述資源的URL中的域名進行解析得到的服務器的標識;當所述解析得到的服務器的標識為所述資源服務器的標識時,所述互聯(lián)網(wǎng)緩存裝置緩存所述資源,所述緩存所述資源包括將所述資源緩存在所述互聯(lián)網(wǎng)緩存裝置中,以提供給訪問所述資源的終端設(shè)備。
結(jié)合第一方面的實現(xiàn)方式,在第一方面第一種可能的實現(xiàn)方式中,在所述接收到資源服務器返回給終端設(shè)備的資源之前,所述方法還包括:所述互聯(lián)網(wǎng)緩存裝置接收所述終端設(shè)備發(fā)送的建立與所述資源服務器的連接的連接請求,所述連接請求中攜帶所述終端設(shè)備的標識和所述資源服務器的標識;所述互聯(lián)網(wǎng)緩存裝置建立所述終端設(shè)備與所述資源服務器的連接;所述互聯(lián)網(wǎng)緩存裝置接收所述終端設(shè)備發(fā)送的對所述資源的訪問請求,所述訪問請求中攜帶所述資源的URL中的域名;所述互聯(lián)網(wǎng)緩存裝置根據(jù)所述建立的所述終端設(shè)備與所述資源 服務器的連接,發(fā)送所述訪問請求到所述資源服務器;所述互聯(lián)網(wǎng)緩存裝置接收所述資源服務器返回的所述資源。
結(jié)合第一方面、第一方面的第一種可能的實現(xiàn)方式,在第二種可能實現(xiàn)的方式中,當所述解析得到的服務器的標識不為所述資源服務器的標識時,所述互聯(lián)網(wǎng)緩存裝置不緩存所述資源。
結(jié)合第一方面、第一方面的第一種至第二種可能的實現(xiàn)方式,在第三種可能實現(xiàn)的方式中,所述互聯(lián)網(wǎng)緩存裝置建立所述終端設(shè)備與所述資源服務器的連接包括:所述互聯(lián)網(wǎng)緩存裝置通過所述終端設(shè)備的標識建立所述終端設(shè)備與所述資源服務器的連接,所述終端設(shè)備的標識包括所述終端設(shè)備的互聯(lián)網(wǎng)協(xié)議IP地址。
結(jié)合第一方面、第一方面的第一種至第三種可能的實現(xiàn)方式,在第四種可能實現(xiàn)的方式中,所述互聯(lián)網(wǎng)緩存裝置還發(fā)送所述資源給所述終端設(shè)備,所述互聯(lián)網(wǎng)緩存裝置通過所述資源服務器的標識發(fā)送所述資源給所述終端設(shè)備,所述資源服務器的標識包括所述資源服務器的IP地址。
結(jié)合第一方面、第一方面的第一種至第四種可能的實現(xiàn)方式,在第五種可能實現(xiàn)的方式中,所述連接請求包括傳輸控制協(xié)議TCP連接請求,所述對所述資源的訪問請求包括超文本傳輸協(xié)議HTTP請求,所述解析服務器包括域名系統(tǒng)DNS服務器。
結(jié)合第一方面、第一方面的第一種至第五種可能的實現(xiàn)方式,在第六種可能實現(xiàn)的方式中,所述確定所述資源滿足第一緩存條件包括確定所述資源滿足資源訪問熱度統(tǒng)計條件,所述資源訪問熱度統(tǒng)計包括一定時間內(nèi)對訪問同一資源的頻次的統(tǒng)計。
第二方面,提供一種資源緩存裝置,包括處理模塊,發(fā)送模塊,接收模塊和緩存模塊:所述處理模塊,用于在所述接收模塊接收到資源服務器返回給終端設(shè)備的資源后,確定所述資源滿足第一緩存條件;所述發(fā)送模塊,用于發(fā)送解析請求到解析服務器,所述解析請求中攜 帶所述資源的統(tǒng)一資源定位符URL中的域名;所述接收模塊,用于接收所述解析服務器根據(jù)所述資源的URL中的域名進行解析得到的服務器的標識;所述緩存模塊,用于當所述解析得到的服務器的標識為所述資源服務器的標識時,緩存所述資源,所述緩存所述資源包括將所述資源緩存在所述緩存模塊中,以提供給訪問所述資源的終端設(shè)備。
結(jié)合第二方面的實現(xiàn)方式,在第二方面第一種可能的實現(xiàn)方式中,所述接收模塊還用于在所述接收到資源服務器返回給終端設(shè)備的資源之前,接收所述終端設(shè)備發(fā)送的建立與所述資源服務器的連接的連接請求,所述連接請求中攜帶所述終端設(shè)備的標識和所述資源服務器的標識;所述處理模塊還用于建立所述終端設(shè)備與所述資源服務器的連接;所述接收模塊還用于接收所述終端設(shè)備發(fā)送的對所述資源的訪問請求,所述訪問請求中攜帶所述資源的URL中的域名;所述發(fā)送模塊還用于根據(jù)所述建立的所述終端設(shè)備與所述資源服務器的連接,發(fā)送所述訪問請求到所述資源服務器;所述接收模塊還用于接收所述資源服務器返回的所述資源。
結(jié)合第二方面、第二方面的第一種可能的實現(xiàn)方式,在第二種可能實現(xiàn)的方式中,所述緩存模塊還用于當所述解析得到的服務器的標識不為所述資源服務器的標識時,不緩存所述資源。
結(jié)合第二方面、第二方面的第一種至第二種可能的實現(xiàn)方式,在第三種可能實現(xiàn)的方式中,所述處理模塊還用于建立所述終端設(shè)備與所述資源服務器的連接包括:所述處理模塊還用于通過所述終端設(shè)備的標識建立所述終端設(shè)備與所述資源服務器的連接,所述終端設(shè)備的標識包括所述終端設(shè)備的互聯(lián)網(wǎng)協(xié)議IP地址。
結(jié)合第二方面、第二方面的第一種至第三種可能的實現(xiàn)方式,在第四種可能實現(xiàn)的方式中,所述發(fā)送模塊還用于發(fā)送所述資源給所述終端設(shè)備,所述發(fā)送模塊通過所述資源服務器的標識發(fā)送所述資源給所述終端設(shè)備,所述資源服務器的標識包括所述資源服務器的IP地 址。
結(jié)合第二方面、第二方面的第一種至第四種可能的實現(xiàn)方式,在第五種可能實現(xiàn)的方式中,所述連接請求包括傳輸控制協(xié)議TCP連接請求,所述對所述資源的訪問請求包括超文本傳輸協(xié)議HTTP請求,所述解析服務器包括域名系統(tǒng)DNS服務器。
結(jié)合第二方面、第二方面的第一種至第五種可能的實現(xiàn)方式,在第六種可能實現(xiàn)的方式中,所述確定所述資源滿足第一緩存條件包括確定所述資源滿足資源訪問熱度統(tǒng)計條件,所述資源訪問熱度統(tǒng)計包括一定時間內(nèi)對訪問同一資源的頻次的統(tǒng)計。
根據(jù)本發(fā)明實施例提供的技術(shù)方案,通過在接收到資源服務器返回給終端設(shè)備的資源后,確定所述資源滿足第一緩存條件,發(fā)送解析請求到解析服務器,所述解析請求中攜帶所述資源的域名,接收所述解析服務器根據(jù)所述資源的域名進行解析得到的服務器的標識,當所述解析得到的服務器的標識為所述資源服務器的標識時,緩存所述資源,所述緩存所述資源包括將所述資源緩存在所述互聯(lián)網(wǎng)緩存裝置中,以提供給訪問所述資源的終端設(shè)備,能夠防止互聯(lián)網(wǎng)緩存裝置緩存惡意資源,從而能夠防止其將惡意資源當做源服務器資源提供給其他終端用戶。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是本發(fā)明實施例應用的網(wǎng)絡架構(gòu)的示意圖;
圖2是依據(jù)本發(fā)明一實施例的資源緩存方法的示范性流程圖;
圖3是依據(jù)本發(fā)明一實施例的資源緩存方法的示范性信令圖;
圖4是依據(jù)本發(fā)明另一實施例的資源緩存方法的示范性信令圖;
圖5是依據(jù)本發(fā)明一實施例的通用計算機結(jié)構(gòu)的硬件結(jié)構(gòu)示意圖;
圖6是依據(jù)本發(fā)明一實施例的資源緩存裝置的結(jié)構(gòu)示意圖。
具體實施方式
以下描述中,為了說明而不是為了限定,提出了諸如特定系統(tǒng)結(jié)構(gòu)、接口、技術(shù)之類的具體細節(jié),以便透徹理解本發(fā)明。然而,本領(lǐng)域的技術(shù)人員應當清楚,在沒有這些具體細節(jié)的其它實施例中也可以實現(xiàn)本發(fā)明。在其它情況中,省略對眾所周知的裝置、電路以及方法的詳細說明,以免不必要的細節(jié)妨礙本發(fā)明的描述。
圖1是依據(jù)本發(fā)明一實施例的資源緩存方法的網(wǎng)絡架構(gòu)示意圖。
互聯(lián)網(wǎng)緩存裝置102,部署在終端設(shè)備101和資源服務器104之間,對終端設(shè)備101發(fā)送的資源訪問請求進行監(jiān)控,可以在本地保存資源服務器104返回的響應的副本,資源服務器104返回的響應可以為例如但不限于超文本標記語言(Hyper Text Markup Language,HTML)網(wǎng)頁、圖片、視頻、文件下載中的至少一種。后續(xù)收到終端設(shè)備101或其他終端設(shè)備發(fā)送的訪問相同資源的請求時,互聯(lián)網(wǎng)緩存裝置102使用已保存在本地的響應副本返回給用戶,從而無需再向資源服務器104請求。
解析服務器103,可以為例如但不限于域名系統(tǒng)(Domain Name System,DNS)服務器,為互聯(lián)網(wǎng)上作為域名和IP地址相互映射的一個分布式數(shù)據(jù)庫,通過主機名,最終得到該主機名對應的IP地址的過程叫做域名解析,或主機名解析。在收錄有互聯(lián)網(wǎng)標準的請求評議文檔(Request For Comments,RFC)中,RFC 2181、RFC 2136、RFC 2308文檔對DNS進行了說明。
在依據(jù)本發(fā)明一實施例的資源緩存方法的網(wǎng)絡架構(gòu)中,終端設(shè)備 101發(fā)送資源訪問請求到互聯(lián)網(wǎng)緩存裝置102,互聯(lián)網(wǎng)緩存裝置102轉(zhuǎn)發(fā)該資源訪問請求到相應的資源服務器104,資源服務器104返回終端設(shè)備101請求訪問的資源到互聯(lián)網(wǎng)緩存裝置102,互聯(lián)網(wǎng)緩存裝置102轉(zhuǎn)發(fā)該資源到終端設(shè)備101?;ヂ?lián)網(wǎng)緩存裝置102判斷是否需要緩存該資源,當確定需要緩存該資源時,請求解析服務器103對該資源的統(tǒng)一資源定位符(Uniform Resource Locator,URL)中的域名進行解析,得到服務器標識,如果解析得到的服務器標識與資源服務器104的標識相同,則緩存該資源,否則,不緩存該資源。
在本發(fā)明實施例的一種實現(xiàn)方式中,互聯(lián)網(wǎng)緩存裝置為獨立的實體裝置,也可以作為功能實體設(shè)置于其他裝置中,還可以有其他名稱。
圖2是依據(jù)本發(fā)明一實施例的資源緩存方法200的示范性流程圖。在具體實現(xiàn)過程中,資源緩存方法200可以由例如但不限于互聯(lián)網(wǎng)緩存裝置來執(zhí)行,該互聯(lián)網(wǎng)緩存裝置可以是例如但不限于透明緩存。資源服務器是Web服務器的一種實現(xiàn)方式。
S202,互聯(lián)網(wǎng)緩存裝置在接收到資源服務器返回給終端設(shè)備的資源后,確定所述資源滿足第一緩存條件。
在本發(fā)明實施例的一種實現(xiàn)方式中,所述確定所述資源滿足第一緩存條件包括確定所述資源滿足資源訪問熱度統(tǒng)計條件,所述資源訪問熱度統(tǒng)計包括一定時間內(nèi)對訪問同一資源的頻次的統(tǒng)計。
在本發(fā)明實施例的一種實現(xiàn)方式中,在所述接收到資源服務器返回給終端設(shè)備的資源之前:
所述互聯(lián)網(wǎng)緩存裝置接收所述終端設(shè)備發(fā)送的建立與所述資源服務器的連接的連接請求,所述連接請求中攜帶所述終端設(shè)備的標識和所述資源服務器的標識;
所述互聯(lián)網(wǎng)緩存裝置建立所述終端設(shè)備與所述資源服務器的連接;
所述互聯(lián)網(wǎng)緩存裝置接收所述終端設(shè)備發(fā)送的對所述資源的訪 問請求,所述訪問請求中攜帶所述資源的URL中的域名;
所述互聯(lián)網(wǎng)緩存裝置根據(jù)所述建立的所述終端設(shè)備與所述資源服務器的連接,發(fā)送所述訪問請求到所述資源服務器;
所述互聯(lián)網(wǎng)緩存裝置接收所述資源服務器返回的所述資源。
在本發(fā)明實施例的一種實現(xiàn)方式中,上述連接請求可以為例如但不限于傳輸控制協(xié)議(Transmission Control Protocol,TCP)連接請求,對資源的訪問請求可以為例如但不限于HTTP請求。
在本發(fā)明實施例的一種實現(xiàn)方式中,該互聯(lián)網(wǎng)緩存裝置通過該終端設(shè)備的標識建立該終端設(shè)備與該資源服務器的連接,該互聯(lián)網(wǎng)緩存裝置通過該終端設(shè)備的標識發(fā)送該訪問請求到該資源服務器,其中該終端設(shè)備的標識包括該終端設(shè)備的IP地址。
在本發(fā)明實施例的一種實現(xiàn)方式中,該互聯(lián)網(wǎng)緩存裝置通過該資源服務器的標識發(fā)送該資源服務器返回的資源給該終端設(shè)備,該資源服務器的標識包括該資源服務器的IP地址。
具體的,資源服務器返回的資源可以為例如但不限于HTML網(wǎng)頁、圖片、視頻、文件下載中的至少一種。
S204,所述互聯(lián)網(wǎng)緩存裝置發(fā)送解析請求到解析服務器,所述解析請求中攜帶所述資源的URL中的域名。
S206,所述互聯(lián)網(wǎng)緩存裝置接收所述解析服務器根據(jù)所述資源的URL中的域名進行解析得到的服務器的標識。
在S204和S206中,在本發(fā)明實施例的一種實現(xiàn)方式中,該解析服務器包括DNS服務器。該解析請求用于請求該DNS服務器解析該資源的URL中的域名。解析得到的結(jié)果指示服務器的IP地址。
S208,當所述解析得到的服務器的標識為所述資源服務器的標識時,所述互聯(lián)網(wǎng)緩存裝置緩存所述資源,所述緩存所述資源包括將所述資源緩存在所述互聯(lián)網(wǎng)緩存裝置中,以提供給訪問所述資源的終端 設(shè)備。
其中,所述提供給訪問所述資源的終端設(shè)備包括提供給訪問該資源的其他終端設(shè)備,也包括提供給再次訪問該資源的該終端設(shè)備。
在本發(fā)明實施例的一種實現(xiàn)方式中,當解析得到的服務器的標識不為該資源服務器的標識時,該互聯(lián)網(wǎng)緩存裝置不緩存該資源。
在本發(fā)明實施例的一種實現(xiàn)方式中,當解析得到的服務器的標識為該資源服務器的IP地址時,該互聯(lián)網(wǎng)緩存裝置將該資源緩存在本地。當解析得到的服務器的標識不為該資源服務器的IP地址時,該互聯(lián)網(wǎng)緩存裝置不將該資源緩存在本地。
在本發(fā)明實施例的一種實現(xiàn)方式中,至少滿足以下兩個條件時,互聯(lián)網(wǎng)緩存裝置將資源緩存在本地:
1、滿足資源訪問熱度統(tǒng)計條件時;
2、滿足當解析得到的服務器標識為資源服務器標識時。
此外,互聯(lián)網(wǎng)緩存裝置在接收到資源服務器返回給終端設(shè)備的資源后,還可以進一步根據(jù)資源的大小、類型來確定是否需要緩存該資源。
根據(jù)本發(fā)明實施例提供的技術(shù)方案,通過在接收到資源服務器返回給終端設(shè)備的資源后,確定所述資源滿足第一緩存條件后,發(fā)送解析請求到解析服務器,所述解析請求中攜帶所述資源的域名,接收所述解析服務器根據(jù)所述資源的域名進行解析得到的服務器的標識,當所述解析得到的服務器的標識為所述資源服務器的標識時,緩存所述資源,所述緩存所述資源包括將所述資源緩存在所述互聯(lián)網(wǎng)緩存裝置中,以提供給訪問所述資源的終端設(shè)備,能夠防止互聯(lián)網(wǎng)緩存裝置緩存惡意資源,從而能夠防止其將惡意資源當做源服務器資源提供給其他終端用戶。
圖3是依據(jù)本發(fā)明一實施例的資源緩存方法的示范性信令圖。在 具體實現(xiàn)過程中,資源緩存方法300可以由例如但不限于互聯(lián)網(wǎng)緩存裝置執(zhí)行。在本實施例中,互聯(lián)網(wǎng)緩存裝置可以是例如但不限于透明緩存,解析服務器可以是例如但不限于DNS服務器。資源服務器是Web服務器的一種實現(xiàn)方式。
S301,終端設(shè)備發(fā)送建立到資源服務器的TCP連接請求到透明緩存,其中攜帶該終端設(shè)備的IP地址和該資源服務器的IP地址。
S302,透明緩存使用終端設(shè)備的IP地址建立到資源服務器的TCP連接。
S303,透明緩存接收到終端設(shè)備發(fā)往資源服務器的HTTP訪問請求。
S304,透明緩存使用終端設(shè)備的IP地址將該HTTP訪問請求發(fā)送到資源服務器。
S305,資源服務器返回終端設(shè)備請求訪問的資源到透明緩存。
S306,透明緩存使用資源服務器的IP地址將資源服務器返回的資源返回給終端設(shè)備。
S307,透明緩存根據(jù)資源訪問熱度統(tǒng)計確定需要緩存該資源。
S308,透明緩存請求解析服務器對訪問請求中的資源的URL中的域名進行域名解析。透明緩存向DNS服務器發(fā)送DNS解析請求,其中攜帶該資源的URL中的域名,請求DNS服務器解析該URL中的域名。
S309,DNS服務器對該資源的URL中的域名進行DNS解析,得到指示服務器IP地址的解析結(jié)果。
S310,DNS服務器發(fā)送該解析結(jié)果到透明緩存。
S311,透明緩存進行服務器IP地址校驗。透明緩存判斷服務器的IP地址是否為該資源服務器的IP地址,如果是,則將該資源緩存在本地,否則,不緩存該資源。
根據(jù)本發(fā)明實施例提供的技術(shù)方案,通過在接收到資源服務器返回給終端設(shè)備的資源后,確定所述資源滿足第一緩存條件后,再發(fā)送解析請求到解析服務器,所述解析請求中攜帶所述資源的域名,接收所述解析服務器根據(jù)所述資源的域名進行解析得到的服務器的標識,當所述解析得到的服務器的標識為所述資源服務器的標識時,緩存所述資源,所述緩存所述資源包括將所述資源緩存在所述互聯(lián)網(wǎng)緩存裝置中,以提供給訪問所述資源的終端設(shè)備,能夠防止互聯(lián)網(wǎng)緩存裝置緩存惡意資源,從而能夠防止其將惡意資源當做源服務器資源提供給其他終端用戶。
圖4是依據(jù)本發(fā)明另一實施例的資源緩存方法的示范性信令圖。在具體實現(xiàn)過程中,資源緩存方法400可以由例如但不限于互聯(lián)網(wǎng)緩存裝置執(zhí)行。在本實施例中,互聯(lián)網(wǎng)緩存裝置可以是例如但不限于透明緩存,解析服務器可以是例如但不限于DNS服務器。資源服務器是Web服務器的一種實現(xiàn)方式。
S401,終端設(shè)備發(fā)送建立到第一資源服務器的TCP連接請求到透明緩存,其中攜帶該終端設(shè)備的IP地址和該第一資源服務器的IP地址。
S402,透明緩存使用終端設(shè)備的IP地址建立到第一資源服務器的TCP連接。
S403,透明緩存接收到終端設(shè)備發(fā)往第一資源服務器的HTTP訪問請求。
S404,透明緩存對于每個接收到的訪問請求,都請求解析服務器對訪問請求中的資源的URL中的域名進行域名解析。透明緩存向DNS服務器發(fā)送DNS解析請求,其中攜帶該HTTP訪問請求所要訪問的資源的URL中的域名,請求DNS服務器解析該URL中的域名。
S405,DNS服務器對該資源的URL中的域名進行DNS解析,得到指示服務器IP地址的解析結(jié)果。
S406,DNS服務器發(fā)送該解析結(jié)果到透明緩存。
S407,透明緩存進行服務器IP地址校驗。透明緩存確定解析結(jié)果指示的服務器的IP地址是否為該第一資源服務器的IP地址,當服務器的IP地址是第一資源服務器的IP地址時,執(zhí)行S408至S410;當服務器的IP地址是第二資源服務器的IP地址時,執(zhí)行S411至S413。
S408,透明緩存使用終端設(shè)備的IP地址將該HTTP訪問請求發(fā)送到第一資源服務器。
S409,第一資源服務器返回終端設(shè)備請求訪問的資源到透明緩存。
S410,透明緩存使用第一資源服務器的IP地址將第一資源服務器返回的資源返回給終端設(shè)備。
S411,透明緩存斷開到第一資源服務器的TCP連接。
S412,透明緩存使用終端設(shè)備的IP地址建立到第二資源服務器的TCP連接。
S413,透明緩存使用終端設(shè)備的IP地址將該HTTP訪問請求發(fā)送到第二資源服務器。
此后,透明緩存使用第一資源服務器的IP地址將第二資源服務器返回的資源返回給終端設(shè)備。
在本發(fā)明實施例的一種實現(xiàn)方式中,透明緩存在將資源返回給終端設(shè)備后,確定是否需要緩存該資源,如果需要,將該資源緩存在本地;否則,不緩存。
在本發(fā)明實施例的另一種實現(xiàn)方式中,透明緩存在將資源返回給終端設(shè)備之前,確定是否需要緩存該資源,如果需要,將該資源緩存在本地;否則,不緩存。
依據(jù)本發(fā)明實施例提供的技術(shù)方案,通過在發(fā)送資源服務器返回的資源到終端設(shè)備之前,發(fā)送解析請求到解析服務器,該解析請求中攜帶該資源的URL中的域名,接收該解析服務器返回的根據(jù)該資源 的的URL中的域名進行解析得到的服務器的標識,當解析得到的服務器的標識為第一資源服務器的標識時,緩存該資源,當解析得到的服務器的標識為第二資源服務器的標識時,斷開與第一資源服務器的連接,建立與第二資源服務器的連接,發(fā)送第二資源服務器返回的資源到終端設(shè)備,能夠防止互聯(lián)網(wǎng)緩存裝置緩存惡意資源,從而能夠防止其將惡意資源當做源服務器資源提供給其他終端用戶。
值得注意的是,本發(fā)明圖2實施例、圖3實施例、圖4實施例所提供的技術(shù)方案雖然都能夠防止互聯(lián)網(wǎng)緩存裝置緩存惡意資源,從而能夠防止其將惡意資源當做源服務器資源提供給其他終端用戶,但是圖4實施例所提供的技術(shù)方案在解析結(jié)果不是第一資源服務器時,互聯(lián)網(wǎng)緩存裝置需要重新建立與第二資源服務器的連接,而這一過程大大增加了終端設(shè)備用戶的等待時間。而且,由于圖4實施例所提供的技術(shù)方案中,互聯(lián)網(wǎng)緩存裝置對于接收到的每個資源訪問請求都要請求解析服務器進行域名解析,并進行服務器標識校驗,因此增加了解析服務器的處理負擔和響應時延。
本發(fā)明圖2實施例和圖3實施例所提供的技術(shù)方案,相對于圖4實施例所提供的技術(shù)方案來說,減少了解析服務器進行域名解析的次數(shù)和服務器標識校驗的次數(shù),降低了互聯(lián)網(wǎng)緩存裝置的系統(tǒng)開銷,避免了解析結(jié)果不是目標資源服務器后重新建立連接的過程,從而避免了由此引入的對終端設(shè)備請求的響應時延。
另外,對于圖2實施例,在本發(fā)明實施例的一種實現(xiàn)方式中,S202中,互聯(lián)網(wǎng)緩存裝置在接收到資源服務器返回給終端設(shè)備的資源后,發(fā)送該資源給該終端設(shè)備,之后,確定所述資源滿足第一緩存條件后,再執(zhí)行S204至S208。這種實現(xiàn)方式能夠最大限度的減小對終端設(shè)備請求的響應時延,最大限度的減小終端設(shè)備用戶的等待時間。
對于圖2實施例,在本發(fā)明實施例的另一種實現(xiàn)方式中,互聯(lián)網(wǎng)緩存裝置可以在執(zhí)行完S202至S208后,再發(fā)送該資源給該終端設(shè)備。這種實現(xiàn)方式雖然相對于上一種實現(xiàn)方式來說,對終端設(shè)備請求的響 應時延增大,但相對于圖4實施例所提供的技術(shù)方案而言,由于其只對滿足第一緩存條件的資源進行域名解析,而且同樣避免了解析結(jié)果不是目標資源服務器后重新建立連接的過程,因此,相對于圖4實施例所提供的技術(shù)方案,其也減少了解析服務器進行域名解析的次數(shù)和服務器標識校驗的次數(shù),降低了互聯(lián)網(wǎng)緩存裝置的系統(tǒng)開銷,同時也降低了對終端設(shè)備請求的響應時延。
圖5是依據(jù)本發(fā)明一實施例的通用計算機結(jié)構(gòu)500的硬件結(jié)構(gòu)示意圖。如圖5所示,通用計算機結(jié)構(gòu)500包括處理器502、存儲器504、通信接口506和總線508。其中,處理器502、存儲器504和通信接口506通過總線508實現(xiàn)彼此之間的通信連接。
處理器502可以采用通用的中央處理器(Central Processing Unit,CPU),微處理器,應用專用集成電路(Application Specific Integrated Circuit,ASIC),或者一個或多個集成電路,用于執(zhí)行相關(guān)程序,以實現(xiàn)本發(fā)明實施例所提供的技術(shù)方案。
存儲器504可以是只讀存儲器(Read Only Memory,ROM),靜態(tài)存儲設(shè)備,動態(tài)存儲設(shè)備或者隨機存取存儲器(Random Access Memory,RAM)。存儲器504可以存儲操作系統(tǒng)5041和其他應用程序5042。在通過軟件或者固件來實現(xiàn)本發(fā)明實施例提供的技術(shù)方案時,用于實現(xiàn)本發(fā)明實施例提供的技術(shù)方案的程序代碼保存在存儲器504中,并由處理器502來執(zhí)行。
通信接口506使用例如但不限于收發(fā)器一類的收發(fā)裝置,來實現(xiàn)接與其他設(shè)備或通信網(wǎng)絡之間的通信。
總線508可包括一通路,在各個部件(例如處理器502、存儲器504、輸和通信接口506)之間傳送信息。
如圖6所示,當數(shù)據(jù)處理裝置包括上述通用計算機結(jié)構(gòu)500時,該通用計算機結(jié)構(gòu)500進一步包括用于資源緩存的處理模塊602,發(fā)送模塊604,接收模塊606和緩存模塊608。這些模塊可以使用硬件 實現(xiàn),軟件實現(xiàn),或軟件結(jié)合硬件實現(xiàn)。作為軟件的模塊,存儲于通用計算機結(jié)構(gòu)500的存儲器504中,可以一起作為一個獨立的程序,或分別作為獨立的程序。作為一種可選的實施方式,這些軟件模塊也可以分別,或一起作為應用程序5042的一部分,或者作為操作系統(tǒng)5041的一部分。
處理模塊602,用于在所述接收模塊接收到資源服務器返回給終端設(shè)備的資源后,確定所述資源滿足第一緩存條件。
發(fā)送模塊604,用于發(fā)送解析請求到解析服務器,所述解析請求中攜帶所述資源的URL中的域名。
接收模塊606,用于接收所述解析服務器根據(jù)所述資源的URL中的域名進行解析得到的服務器的標識。
緩存模塊608,用于當所述解析得到的服務器的標識為所述資源服務器的標識時,緩存所述資源,所述緩存所述資源包括將所述資源緩存在所述緩存模塊中,以提供給訪問所述資源的終端設(shè)備。
其中,資源服務器是Web服務器的一種實現(xiàn)方式。
在本發(fā)明實施例的一種實現(xiàn)方式中,所述接收模塊606還用于在所述接收到資源服務器返回給終端設(shè)備的資源之前,接收所述終端設(shè)備發(fā)送的建立與所述資源服務器的連接的連接請求,所述連接請求中攜帶所述終端設(shè)備的標識和所述資源服務器的標識;
所述處理模塊602還用于建立所述終端設(shè)備與所述資源服務器的連接;
所述接收模塊606還用于接收所述終端設(shè)備發(fā)送的對所述資源的訪問請求,所述訪問請求中攜帶所述資源的URL中的域名;
所述發(fā)送模塊604還用于根據(jù)所述建立的所述終端設(shè)備與所述資源服務器的連接,發(fā)送所述訪問請求到所述資源服務器;
所述接收模塊606還用于接收所述資源服務器返回的所述資源。
在本發(fā)明實施例的一種實現(xiàn)方式中,所述緩存模塊608還用于當所述解析得到的服務器的標識不為所述資源服務器的標識時,不緩存所述資源。
在本發(fā)明實施例的一種實現(xiàn)方式中,所述處理模塊602還用于建立所述終端設(shè)備與所述資源服務器的連接包括:所述處理模塊602還用于通過所述終端設(shè)備的標識建立所述終端設(shè)備與所述資源服務器的連接,所述終端設(shè)備的標識包括所述終端設(shè)備的互聯(lián)網(wǎng)協(xié)議IP地址。
在本發(fā)明實施例的一種實現(xiàn)方式中,所述發(fā)送模塊604還用于發(fā)送所述資源給所述終端設(shè)備,所述發(fā)送模塊604通過所述資源服務器的標識發(fā)送所述資源給所述終端設(shè)備,所述資源服務器的標識包括所述資源服務器的IP地址。
根據(jù)本發(fā)明實施例提供的技術(shù)方案,通過在接收到資源服務器返回給終端設(shè)備的資源后,確定所述資源滿足第一緩存條件,發(fā)送解析請求到解析服務器,所述解析請求中攜帶所述資源的URL中的域名,接收所述解析服務器根據(jù)所述資源的URL中的域名進行解析得到的服務器的標識,當所述解析得到的服務器的標識為所述資源服務器的標識時,緩存所述資源,所述緩存所述資源包括將所述資源緩存在所述互聯(lián)網(wǎng)緩存裝置中,以提供給訪問所述資源的終端設(shè)備,能夠防止互聯(lián)網(wǎng)緩存裝置緩存惡意資源,從而能夠防止其將惡意資源當做源服務器資源提供給其他終端用戶。
應注意,盡管圖5所示的通用計算機結(jié)構(gòu)500僅僅示出了處理器502、存儲器504、通信接口506和總線508,但是在具體實現(xiàn)過程中,本領(lǐng)域的技術(shù)人員應當明白,上述資源緩存裝置還包含實現(xiàn)正常運行所必須的其他器件。同時,根據(jù)具體需要,本領(lǐng)域的技術(shù)人員應當明白,上述資源緩存裝置還可包含實現(xiàn)其他附加功能的硬件器件。此外,本領(lǐng)域的技術(shù)人員應當明白,上述資源緩存裝置也可僅僅包含實現(xiàn)本發(fā)明實施例所必須的器件,而不必包含圖5中所示的全部器件。
另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用軟件功能單元的形式實現(xiàn)。
所述集成的單元如果以軟件功能單元的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務器,或者網(wǎng)絡設(shè)備等)或處理器(processor)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:U盤、移動硬盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
以上所述,僅為本發(fā)明的具體實施方式,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應以所述權(quán)利要求的保護范圍為準。