提供用于基于策略的應用代理的網(wǎng)絡(luò)代理層的方法和介質(zhì)的制作方法
【技術(shù)領(lǐng)域】
[0001 ] 本發(fā)明總體上涉及數(shù)據(jù)網(wǎng)絡(luò),并且更具體地涉及基于策略的數(shù)據(jù)網(wǎng)絡(luò)。
【背景技術(shù)】
[0002]在本節(jié)中所描述的方法可以被實行,但不一定是先前已經(jīng)構(gòu)思或者實行的方法。因此,除非另外指出,否則,就不應該臆斷本節(jié)中所描述的任何方法僅由于其包含在本節(jié)中就認為是現(xiàn)有技術(shù)。
[0003]數(shù)據(jù)網(wǎng)絡(luò),諸如,互聯(lián)網(wǎng)、企業(yè)數(shù)據(jù)網(wǎng)絡(luò)、移動寬帶網(wǎng)絡(luò)、云網(wǎng)絡(luò),已經(jīng)成為我們生活中不可或缺的一部分。我們通過數(shù)據(jù)網(wǎng)絡(luò)使用應用來獲得新聞,收集產(chǎn)品信息,預定餐桌吃飯,提交付款,購買商品,閱讀書籍,查詢地圖,撥打或接聽電話,舉辦或參加會議活動,參加會議,進行文檔工作,批準晉升,與朋友聊天,看電視和視頻,預定機票,以及做我們正常生活方式和工作方式的許多其他事情。公司電腦通過數(shù)據(jù)網(wǎng)絡(luò)使用應用來進行商業(yè)交易、工廠控制、企業(yè)語音和電話服務(wù)、盤存、車隊管理和許多其他商業(yè)用途。
[0004]典型地,客戶端電腦從服務(wù)器電腦所服務(wù)的網(wǎng)絡(luò)應用請求服務(wù)。所述客戶端電腦和服務(wù)器電腦之間的通信會話通過數(shù)據(jù)網(wǎng)絡(luò)傳送。通常,出于安全原因和對負載均衡的目的,通信會話的某些類型的網(wǎng)絡(luò)應用通過數(shù)據(jù)網(wǎng)絡(luò)進行檢查,例如,使用服務(wù)器負載均衡器(SLB)、應用交付控制器(ADC)、防火墻、管理應用服務(wù)器或媒體網(wǎng)關(guān)。這些通信會話可包括HTTP會話、TCP會話和SIP會話。在一個示例中,HTTP應用希望在所述數(shù)據(jù)網(wǎng)絡(luò)中進行檢查。用于所述HTTP應用的應用代理將部署在所述數(shù)據(jù)網(wǎng)絡(luò)中的網(wǎng)絡(luò)設(shè)備中,其中所述網(wǎng)絡(luò)設(shè)備截取客戶端和服務(wù)于所述HTTP應用的服務(wù)器之間的所述HTTP應用的通信會話。所述HTTP應用代理從所述客戶端接收數(shù)據(jù)包,檢查客戶端數(shù)據(jù),進行TCP/IP層的安全控制,進行HTTP協(xié)議層的安全控制,進行針對所述HTTP應用的額外的安全性和服務(wù)處理,最后將可能基于上述的處理修改過的所述客戶端數(shù)據(jù)發(fā)送到所述服務(wù)器。在反向路徑中,所述HTTP應用代理從所述服務(wù)器接收數(shù)據(jù)并且在將必要時修改過的服務(wù)器數(shù)據(jù)發(fā)送到客戶端之前應用類似處理。所述HTTP應用代理需要處理任何數(shù)據(jù)緩沖管理,以及與所述HTTP應用和底層協(xié)議層相關(guān)聯(lián)的任何必要的安全處理。
[0005]在另一個示例中,網(wǎng)絡(luò)設(shè)備進行SIP應用代理以實現(xiàn)IP語音(VoIP)和媒體應用,其中所述網(wǎng)絡(luò)設(shè)備提供安全和流量策略服務(wù)以增強所述VoIP和所述媒體應用。
[0006]典型地,每個網(wǎng)絡(luò)應用代理在部署中的行為相似。當部署在網(wǎng)絡(luò)設(shè)備中的網(wǎng)絡(luò)應用代理的數(shù)量增加,在應用代理的處理中可能會有多余的精力。另外,不同應用代理中的代理的處理可以是不一致的,這有時候會導致所述網(wǎng)絡(luò)設(shè)備的不良行為。
[0007]因此,有必要提供一種常見的網(wǎng)絡(luò)代理層以提供一致和有效的機制給網(wǎng)絡(luò)應用代理。
【發(fā)明內(nèi)容】
[0008]提供本概述以便用簡化的形式介紹將在以下詳細說明中進一步描述的一些概念。本概述不是要確認所請求保護的主題的關(guān)鍵特征或必要特征,也不是用來幫助確定所請求保護的主題的范圍。
[0009]本公開涉及提供用于基于策略的應用代理的網(wǎng)絡(luò)代理層的方法。在本發(fā)明的實施例中,可提供常見的網(wǎng)絡(luò)代理層使得該層上的一個或多個網(wǎng)絡(luò)應用代理以相同的方式高效地處理數(shù)據(jù)。
[0010]在一種提供網(wǎng)絡(luò)代理層的示例性方法中,該方法可包括接收用于應用會話的客戶端連接的連接建立事件,以及將客戶端連接事件發(fā)送到用于應用會話的應用代理,所述應用代理與服務(wù)器的應用向相關(guān)聯(lián)。所述方法可進一步包括從客戶端連接接收一個或多個數(shù)據(jù)包,接收用于連接到所述服務(wù)器的所述應用會話的服務(wù)器連接的連接建立事件;以及從所述服務(wù)器連接接收一個或多個數(shù)據(jù)包。
[0011]在本公開的進一步的示例性實施例中,該方法步驟存儲在包括指令的計算機可讀介質(zhì)上,當所述指令由一個或多個處理器實施時,其進行所述步驟。在更進一步的示例性實施例中,硬件系統(tǒng)或設(shè)備可適于進行所述步驟。其它特征、示例和實施例描述如下。
【附圖說明】
[0012]實施例通過示例的方式而非限制的方式在附圖的各圖中示出,并且在附圖中,用類似附圖標記表示類似元件,其中:
[0013]圖1示出了具有多個使用網(wǎng)絡(luò)代理層的應用代理的服務(wù)網(wǎng)關(guān)的示例性實施例。
[0014]圖2示出了示例性服務(wù)網(wǎng)關(guān)的組件。
[0015]圖3示出了代理狀態(tài)機的示例性實施例。
[0016]圖4示出了示例性實施例中的處理通過應用會話交互的數(shù)據(jù)包的應用代理。
[0017]圖5示出了使用網(wǎng)絡(luò)代理層的示例性HTTP應用代理。
[0018]圖6示出了使用網(wǎng)絡(luò)代理層的示例性TCP代理。
[0019]圖7示出了示例性實施例中的應用會話中的多個應用代理。
[0020]圖8示出了用于計算機系統(tǒng)的示例性電子形式的機器的計算設(shè)備的示意圖,在所述系統(tǒng)中可執(zhí)行用于使所述機器執(zhí)行本文中所討論的任何一個或多個方法的一套指令。
【具體實施方式】
[0021]以下詳細說明包括參考附圖,其構(gòu)成詳細描述的一部分。附圖顯示依照示例性實施例的插圖。這些示例性實施例,在本文中也稱為“示例”,足夠詳細地進行了描述以使本領(lǐng)域的技術(shù)人員實踐本主題。這些實施例可以組合,其它實施例可以利用,或可在不脫離所要求保護的范圍做出結(jié)構(gòu),邏輯和電氣上的變化。因此,以下詳細說明不應被認為具有限制意義,并且所述范圍由所附權(quán)利要求和它們的等同物所界定。在本文檔中,使用了術(shù)語“一個(a)”和“一個(an)”,如專利文獻中常見的,以包括一個或多于一個。在本文檔中,使用了術(shù)語“或”用于指非排它性的“或”,這樣的“A或B”包括“A而不是B”,“B而不是A”,以及“A和B”,除非另有說明。
[0022]現(xiàn)在參照附圖,圖1示出了通過使用網(wǎng)絡(luò)代理層620服務(wù)于多個應用代理701,702的服務(wù)網(wǎng)關(guān)300。
[0023]在示例性實施例中,服務(wù)網(wǎng)關(guān)300通過數(shù)據(jù)網(wǎng)絡(luò)501連接到客戶端設(shè)備100。數(shù)據(jù)網(wǎng)絡(luò)501可包括互聯(lián)網(wǎng)協(xié)議(IP)網(wǎng)絡(luò),企業(yè)數(shù)據(jù)網(wǎng)絡(luò),區(qū)域企業(yè)數(shù)據(jù)網(wǎng)絡(luò),互聯(lián)網(wǎng)服務(wù)提供商網(wǎng)絡(luò),住宅數(shù)據(jù)網(wǎng)絡(luò),有線網(wǎng)絡(luò)(如以太網(wǎng)),無線網(wǎng)絡(luò)(如WiFi網(wǎng)絡(luò)),或蜂窩網(wǎng)絡(luò)。數(shù)據(jù)網(wǎng)絡(luò)501可以駐留在數(shù)據(jù)中心,或連接到任何其它網(wǎng)絡(luò)或基于云計算的網(wǎng)絡(luò)。
[0024]在示例性實施例中,服務(wù)網(wǎng)關(guān)300通過數(shù)據(jù)網(wǎng)絡(luò)503連接到服務(wù)器200。數(shù)據(jù)網(wǎng)絡(luò)503可包括互聯(lián)網(wǎng)協(xié)議(IP)網(wǎng)絡(luò)、企業(yè)數(shù)據(jù)網(wǎng)絡(luò)、區(qū)域企業(yè)數(shù)據(jù)網(wǎng)絡(luò)、互聯(lián)網(wǎng)服務(wù)提供商網(wǎng)絡(luò)、住宅數(shù)據(jù)網(wǎng)絡(luò)、有線網(wǎng)絡(luò)(如以太網(wǎng))、無線網(wǎng)絡(luò)(如WiFi網(wǎng)絡(luò)),或蜂窩網(wǎng)絡(luò)。數(shù)據(jù)網(wǎng)絡(luò)503可駐留在數(shù)據(jù)中心,或連接到任何其它網(wǎng)絡(luò)或應用網(wǎng)絡(luò)云。在一些實施例中,數(shù)據(jù)網(wǎng)絡(luò)503也可以與數(shù)據(jù)網(wǎng)絡(luò)501相同。
[0025]客戶端設(shè)備100通常是具有網(wǎng)絡(luò)接入能力的計算設(shè)備。在示例性實施例中,客戶端設(shè)備100可以是工作站、臺式個人計算機、筆記本電腦、個人數(shù)據(jù)助理(PDA)、平板電腦設(shè)備、智能電話、移動電話、機頂盒、互聯(lián)網(wǎng)媒體瀏覽器、互聯(lián)網(wǎng)媒體播放器、智能傳感器、智能醫(yī)療設(shè)備、網(wǎng)上盒、網(wǎng)絡(luò)電視機、網(wǎng)絡(luò)硬盤錄像機(DVR)、網(wǎng)絡(luò)藍光播放器、網(wǎng)絡(luò)手持游戲設(shè)備、媒體中心、移動設(shè)備,或網(wǎng)絡(luò)個人計算設(shè)備。
[0026]在其它實施例中,客戶端設(shè)備100也可以是家庭寬帶網(wǎng)關(guān)、業(yè)務(wù)互聯(lián)網(wǎng)網(wǎng)關(guān)、業(yè)務(wù)計算服務(wù)器、網(wǎng)絡(luò)客戶預定設(shè)備(CPE),或互聯(lián)網(wǎng)接入網(wǎng)關(guān)。
[0027]在示例性實施例中,客戶端設(shè)備100可包括寬帶遠程接入服務(wù)器(BRAS),數(shù)字用戶線接入復用器(DSLAM),電纜調(diào)制解調(diào)器終端系統(tǒng)(CMTS),或服務(wù)提供商接入網(wǎng)關(guān)??蛻舳嗽O(shè)備100還可包括移動寬帶接入網(wǎng)關(guān)(諸如網(wǎng)關(guān)GPRS支持節(jié)點(GGSN)),本地代理(HA),或PDN網(wǎng)關(guān)(PGW)。
[0028]在各種實施例中,客戶端設(shè)備100可包括服務(wù)器負載均衡器、應用交付控制器、流量管理器、防火墻、VPN服務(wù)器、遠程接入服務(wù)器,或企業(yè)或數(shù)據(jù)中心接入網(wǎng)關(guān)。在一個實施例中,客戶端設(shè)備100可以是類似于服務(wù)網(wǎng)關(guān)300的設(shè)備。
[0029]在示例性方法中,客戶端設(shè)備100通過服務(wù)網(wǎng)關(guān)300向服務(wù)器200發(fā)起應用會話400。
[0030]服務(wù)器200是通常耦合到處理器和存儲有計算機可讀程序代碼的計算機可讀介質(zhì)的計算設(shè)備。服務(wù)器200利用所述處理器和所述計算機可讀程序代碼,可實現(xiàn)通過使用應用會話400將應用服務(wù)提供給客戶端設(shè)備100的Web服務(wù)器、文件服務(wù)器、視頻服務(wù)器、數(shù)據(jù)庫服務(wù)器、應用服務(wù)器、語音系統(tǒng)、會議服務(wù)器、媒體網(wǎng)關(guān)、媒體中心、應用服務(wù)器或網(wǎng)絡(luò)服務(wù)器的功能。在一個實施例中,服務(wù)器200可以是類似于服務(wù)網(wǎng)關(guān)300的設(shè)備。
[0031]如圖2所示,服務(wù)網(wǎng)關(guān)300,可以可操作地耦合到處理器模塊310,存儲器模塊320,網(wǎng)絡(luò)接口模塊330,和計算機可讀介質(zhì)340