本申請要求于2014年8月21日提交的題為“基于經(jīng)過的時間在移動網(wǎng)絡(luò)中建模網(wǎng)絡(luò)信號”的美國臨時專利申請62/040,260的權(quán)益,其全部內(nèi)容通過引用并入本文。
技術(shù)領(lǐng)域
本發(fā)明涉及在移動網(wǎng)絡(luò)中建模網(wǎng)絡(luò)信號,更具體地,涉及優(yōu)化移動網(wǎng)絡(luò)中的網(wǎng)絡(luò)流量管理。
背景技術(shù):
為了解決移動網(wǎng)絡(luò)擁塞,理想的是能夠在特定擁塞區(qū)域中的設(shè)備上實施網(wǎng)絡(luò)管理策略或校正動作。不幸的是,校正動作當(dāng)前被無差別地應(yīng)用于設(shè)備。這提出了挑戰(zhàn),因為不加區(qū)別地應(yīng)用校正動作可以消極地影響終端用戶體驗。
因此,需要對一移動網(wǎng)絡(luò)中的網(wǎng)絡(luò)信號進(jìn)行建模,以便在擁塞區(qū)域中更精確地應(yīng)用校正動作。
技術(shù)實現(xiàn)要素:
根據(jù)本發(fā)明的一個實施例,一種方法包括確定在移動設(shè)備上執(zhí)行的移動應(yīng)用是否與需要相應(yīng)無線電連接的網(wǎng)絡(luò)信號相關(guān)聯(lián)。過濾由事務(wù)引起的網(wǎng)絡(luò)信號的至少一部分。被過濾的網(wǎng)絡(luò)信號不引起相應(yīng)的無線電連接。計算信號效率,該信號效率指示作為過濾的結(jié)果而節(jié)約的無線電連接的總數(shù)。
系統(tǒng)包括移動網(wǎng)絡(luò)優(yōu)化模塊,其被配置為:確定在移動設(shè)備上執(zhí)行的移動應(yīng)用是否與需要相應(yīng)無線電連接的網(wǎng)絡(luò)信號相關(guān)聯(lián),過濾由所述事務(wù)引起的網(wǎng)絡(luò)信號的至少一部分,其中被過濾的所述網(wǎng)絡(luò)信號不引起相應(yīng)的無線電連接; 信號效率模塊,被配置為計算指示作為所述過濾的結(jié)果而節(jié)約的無線電連接的總數(shù)的信號效率。
附圖說明
圖1A示出了系統(tǒng)的示例圖,其中用于資源保護(hù)的無線網(wǎng)絡(luò)(或?qū)拵ЬW(wǎng)絡(luò))中的主機(jī)服務(wù)器促進(jìn)在移動設(shè)備(例如,無線設(shè)備),應(yīng)用服務(wù)器或內(nèi)容提供商,或如廣告服務(wù)器的其他器服務(wù)器,促銷內(nèi)容服務(wù)器,或電子優(yōu)惠券服務(wù)器之間的流量,內(nèi)容緩存和/或資源保護(hù)的管理。
圖1A-1示出了一示出分布式網(wǎng)絡(luò)優(yōu)化系統(tǒng)的一般架構(gòu)概述的示例圖。
圖1B示出了一分布在主機(jī)服務(wù)器和設(shè)備之間的用于資源保護(hù)和內(nèi)容緩存的代理和緩存系統(tǒng)的示例圖,其促進(jìn)設(shè)備,應(yīng)用服務(wù)器或內(nèi)容提供商,或諸如廣告服務(wù)器的其他服務(wù)器,促銷內(nèi)容服務(wù)器,或電子優(yōu)惠券服務(wù)器之間的網(wǎng)絡(luò)流量管理。
圖1C示出了分布式代理和緩存系統(tǒng)的邏輯架構(gòu)的一示例圖。
圖1D示出了示出分布式代理和緩存系統(tǒng)中的客戶端組件的架構(gòu)的示例圖。
圖1E示出了分布式代理和緩存系統(tǒng)的服務(wù)器端組件的示例圖。
圖1F示出了示出分布式代理和緩存系統(tǒng)中的示例客戶端組件之間的數(shù)據(jù)流的示例圖。
圖2A描繪了示出駐留在移動設(shè)備(例如,無線設(shè)備)上的分布式代理和緩存系統(tǒng)中的客戶端組件的示例的一框圖,其管理無線網(wǎng)絡(luò)(或?qū)拵ЬW(wǎng)絡(luò))中的流量,用于資源保護(hù),內(nèi)容緩存,和/或流量管理??蛻舳舜恚ɑ虮镜卮恚┛梢赃M(jìn)一步基于應(yīng)用行為,內(nèi)容優(yōu)先級,用戶活動,和/或用戶期望對移動流量進(jìn)行分類和/或?qū)嵤┩哆f策略,例如,以進(jìn)一步用于促進(jìn)對齊數(shù)據(jù)傳輸以優(yōu)化在移動設(shè)備處建立的連接。
圖2B描繪了說明圖2A的示例中所示的緩存系統(tǒng)中的組件的另一示例的框圖。其能夠緩存和適配用于移動應(yīng)用行為和/或網(wǎng)絡(luò)條件的緩存策略。還示出了能夠檢測長輪詢請求和管理長輪詢的緩存的組件。
圖2C描繪了示出在圖2A的示例中所示的緩存系統(tǒng)中的應(yīng)用行為檢測器和緩存策略管理器中的附加組件的框圖。其還能夠檢測緩存失敗并執(zhí)行由指向失敗的緩存的標(biāo)識符尋址的內(nèi)容的緩存。
圖2D描繪了示出在圖2A的示例中所示的本地緩存中的附加組件的示例的框圖,其還能夠基于應(yīng)用行為和/或用戶活動來執(zhí)行移動流量的分類和策略的實現(xiàn)。
圖2E描繪了示出圖2A的示例中所示的流量整形引擎和應(yīng)用行為檢測器中的附加組件的示例的框圖,其還能夠促進(jìn)傳輸至移動或?qū)拵гO(shè)備,或其他用戶的輸入數(shù)據(jù)的對齊,以優(yōu)化需要建立的用于通過無線網(wǎng)絡(luò)或?qū)拵ЬW(wǎng)絡(luò)接收數(shù)據(jù)的連接的數(shù)量。
圖3A描繪了示出為了資源保護(hù),內(nèi)容緩存,和/或流量管理而管理在無線網(wǎng)絡(luò)(或?qū)拵ЬW(wǎng)絡(luò))中的流量的分布式代理和緩存系統(tǒng)中的服務(wù)器端組件的示例的框圖。服務(wù)器端代理(或代理服務(wù)器)可以進(jìn)一步基于應(yīng)用行為,內(nèi)容優(yōu)先級,用戶活動,和/或用戶期望對移動流量進(jìn)行分類和/或?qū)嵤┩哆f策略,例如,以進(jìn)一步用于對齊數(shù)據(jù)傳輸以優(yōu)化為到移動設(shè)備的無線傳輸而建立的連接。
圖3B描繪了示出在圖3A的示例中所示的緩存系統(tǒng)中的緩存策略管理器中的組件的另一示例的框圖,其能夠緩存和適配用于移動應(yīng)用行為和/或網(wǎng)絡(luò)條件的緩存策略。還示出了能夠檢測長輪詢請求和管理長輪詢的緩存的組件。
圖3C描繪了示出在圖3A的示例中示出的代理系統(tǒng)中的組件的另一示例的框圖,其還能夠管理和檢測緩存失敗機(jī)制并且監(jiān)視內(nèi)容源。
圖3D描繪了示出在圖3A的示例中示出的代理服務(wù)器中的附加組件的示例的框圖,其還能夠基于應(yīng)用行為和/或流量優(yōu)先級來執(zhí)行移動流量的分類和策略的實現(xiàn)。
圖3E描繪了示出圖3A的示例的流量整形引擎中的附加組件的示例的框圖,其還能夠?qū)R數(shù)據(jù)傳輸?shù)揭苿踊驅(qū)拵гO(shè)備,或其他接收者,以優(yōu)化為在無線網(wǎng)絡(luò)或?qū)拵ЬW(wǎng)絡(luò)中傳輸而建立的連接。
圖4描繪了示出用于移動設(shè)備(例如,任何無線設(shè)備)和遠(yuǎn)程代理之間的分布式內(nèi)容緩存和內(nèi)容緩存的分布式管理的示例過程的流程圖。
圖5描繪了示出由移動設(shè)備(例如,任何無線設(shè)備)到無線網(wǎng)絡(luò)(或?qū)拵ЬW(wǎng)絡(luò))中的應(yīng)用服務(wù)器/內(nèi)容提供商的數(shù)據(jù)請求如何通過分布式代理系統(tǒng)協(xié)調(diào),以使得通過使用由分布式代理系統(tǒng)執(zhí)行的內(nèi)容緩存和監(jiān)視來節(jié)約網(wǎng)絡(luò)和電池資源。
圖6描繪了示出可以在實現(xiàn)網(wǎng)絡(luò)訪問和內(nèi)容投遞策略中使用的不同流量或應(yīng)用類別類型的示例的表格。
圖7描繪了示出可以在實現(xiàn)網(wǎng)絡(luò)訪問和內(nèi)容投遞策略中使用的不同內(nèi)容類別類型的示例的表格。
圖8描繪了示出具有通過無線網(wǎng)絡(luò)(或?qū)拵ЬW(wǎng)絡(luò))從移動設(shè)備(例如,任何無線設(shè)備)到應(yīng)用服務(wù)器/內(nèi)容提供商的數(shù)據(jù)請求的輪詢可以如何被緩存在本地代理上并且由分布式緩存系統(tǒng)管理的交互圖。
圖9描繪了示出用于對移動網(wǎng)絡(luò)中的移動設(shè)備(例如,任何無線設(shè)備)的信號進(jìn)行建模的示例過程的流程圖。
圖10描繪了示出用于對移動網(wǎng)絡(luò)中的移動設(shè)備(例如,任何無線設(shè)備)的信號進(jìn)行建模的示例過程的另一流程圖。
圖11A- 圖16D描繪了用于確定一般連接和時間計算的日志/報告數(shù)據(jù)字段示例的計算。
圖17A和17B分別示出了計算連接標(biāo)志和連接時間間隔的示例以及無線電開啟間隔的示例。
圖18描繪了示出一段時間內(nèi)的日志的示例圖。
圖19A和19B分別圖示出了用于將一個網(wǎng)絡(luò)日志項分成兩個網(wǎng)絡(luò)日志項的長輪詢過程以及為了將該網(wǎng)絡(luò)日志劃分為兩部分所必須成立的條件。
圖20和21分別圖示了TIME_ON_NOT_CHARGING字段的計算和TIME_ON_NOT_CHARGING字段的示例。
圖22描繪了示例測量點,日志/報告數(shù)據(jù)分析核心模塊可以從該示例測量點執(zhí)行用于對數(shù)據(jù)網(wǎng)絡(luò)中的信號建模的測量。
圖23A-23E分別描繪了可以在日志/報告數(shù)據(jù)分析核心模塊的各種實施例中使用的輸出指標(biāo)的說明。
圖24A-24J圖形地示出了可以在日志/報告數(shù)據(jù)分析核心模塊的實施例中使用的輸出指標(biāo)的示例的各種計算。
圖25描繪了示出包括測量點的分布式網(wǎng)絡(luò)優(yōu)化系統(tǒng)的一般結(jié)構(gòu)概觀的示例圖,日志/報告數(shù)據(jù)分析核心模塊可以從該測量點執(zhí)行用于對數(shù)據(jù)網(wǎng)絡(luò)中的信號建模的測量。
圖26A-26N示出了日志/報告數(shù)據(jù)分析核心模塊可以適配的附加的和/或備選的輸出指標(biāo)的示例。
圖27示出了計算機(jī)系統(tǒng)的示例形式的機(jī)器的圖示,其可以執(zhí)行用于使機(jī)器執(zhí)行本文所討論的方法中的任何一個或多個的一組指令。
圖28示出了有效電流消耗和作為樣本W(wǎng)CDMA測試運(yùn)行的總時間的一部分的連接時間之間的關(guān)系。
圖29示出與圖28相同的數(shù)據(jù),但是根據(jù)包括具有優(yōu)化和無優(yōu)化的一結(jié)果對來評估。
圖30示出了斜率(β)與反映不同優(yōu)化量的SbS運(yùn)行的TC優(yōu)化(總體α)的一交叉圖。
圖31示出了開銷與根據(jù)本文描述的主題的實施例的α的一交叉圖。
圖32示出了在與圖30中所使用的相同的圖形表示的由無優(yōu)化與優(yōu)化產(chǎn)生的斜率的曲線圖。
具體實施例
下面的描述和附圖是說明性的,而不應(yīng)被解釋為限制性的。許多具體細(xì)節(jié)被描述用于對本公開內(nèi)容的通篇理解。然而在某些情況下為避免模糊描述,對公認(rèn)或常規(guī)的細(xì)節(jié)不做描述。在本公開內(nèi)容中,對某一實施方式或一個實施方式的引用可以是但不一定是對同一實施方式的引用;并且這類引用意味著至少一個實施方式。
在本說明書中對“某一實施方式”或“一個實施方式”的引用,意味著被描述為與該實施方式相關(guān)的一個特定的特性、結(jié)構(gòu)或特性被包括在本公開內(nèi)容中的至少一個實施方式之中。在本說明中各個地方的“在一個實施方式中”這一短語的出現(xiàn),不一定全部指同一實施方式,也不是與其它實施方式相互排斥的單獨(dú)或替代實施方式。此外,也描述了可以通過一些實施方式而不可通過其他實施方式來展示的多種特性。同樣地,也描述了可能是某些實施方式的要求但非其他實施方式要求的各種要求。
在本文件中,披露的技術(shù)包括了用于建模移動網(wǎng)絡(luò)中的信號和/或連接的系統(tǒng)和方法,特別是,任何對于包含移動網(wǎng)絡(luò)中的信號和/或連接的流量優(yōu)化技術(shù)所帶來的有益效果。實施例可以將信號分配給特定的應(yīng)用,(如,判定哪些程序是閑置無益的,哪些程序會造成錯誤信號),和/或利用這些公開的流量優(yōu)化技術(shù)進(jìn)一步建模該優(yōu)化或節(jié)約。
在一些實施例中,披露技術(shù)認(rèn)為在移動網(wǎng)絡(luò)中在一定時刻會產(chǎn)生數(shù)據(jù)信號,如,無線電連接在設(shè)置時(如建立連接)或無線電連接被移除時(如斷開連接)。每個無線電連接可用于一個或多個事務(wù)/數(shù)據(jù)傳輸,這些可源自一個或多個應(yīng)用。披露技術(shù)定義了事務(wù)是否會產(chǎn)生一個連接(從而產(chǎn)生信號),并進(jìn)一步建模、計算、或者相反的,對信號和連接的節(jié)約進(jìn)行量化。這些信號和連接的節(jié)約源自在發(fā)信號或者數(shù)據(jù)通路中使用的任何流量優(yōu)化技術(shù)。
在一些實施例中,為了啟用或增強(qiáng)網(wǎng)絡(luò)中的數(shù)據(jù)流量和信號優(yōu)化的性能,本文中包含一個或多個字段,這些字段由例如一個CRCS分析核心模塊這樣的部件計算產(chǎn)生,這些字段至少用來定義和識別如下內(nèi)容:1、一個事務(wù)是否產(chǎn)生了一個數(shù)據(jù)連接(從而產(chǎn)生了信號);2、由公開的分布式緩存和代理系統(tǒng)所減少或節(jié)約的連接數(shù)量。
圖1A展示了一個系統(tǒng)示例圖,在這個系統(tǒng)中,一個主機(jī)服務(wù)器100能促進(jìn)移動設(shè)備(如無線設(shè)備150或客戶端設(shè)備150)之間的流量管理,內(nèi)容緩存,和/或資源保護(hù),系統(tǒng)中還包含一個應(yīng)用服務(wù)器或內(nèi)容提供商110,或諸如廣告服務(wù)器120A的其他服務(wù)器,促銷內(nèi)容服務(wù)器120B,或電子優(yōu)惠券服務(wù)器120C,這些都為了資源保護(hù)而存在于無線網(wǎng)絡(luò)或?qū)拵ЬW(wǎng)絡(luò)中。主機(jī)服務(wù)器100能進(jìn)一步探知移動設(shè)備無線電的狀態(tài),從而應(yīng)用在為主機(jī)服務(wù)器所產(chǎn)生的發(fā)送信息或其他控制信號而選擇一個合適的通信通道,并且促進(jìn)使用用戶作為對在一個無線網(wǎng)絡(luò)中的內(nèi)容和數(shù)據(jù)傳遞進(jìn)行性能分析和優(yōu)化的終端。
移動/客戶端設(shè)備150可以是任何系統(tǒng)和/或設(shè)備,和/或任何設(shè)備/系統(tǒng)的組合,能夠?qū)θ魏瘟硪辉O(shè)備,服務(wù)器,和/或其他諸如主機(jī)服務(wù)器100和/或應(yīng)用服務(wù)器/內(nèi)容提供商110的系統(tǒng)建立數(shù)據(jù)連接,包括有線連接,無線連接,蜂窩連接。移動/客戶端設(shè)備150通常包含一個顯示器和/或其他輸出功能性部件從而來呈現(xiàn)在設(shè)備150和/或主機(jī)服務(wù)器100和/或應(yīng)用服務(wù)器/內(nèi)容提供商110之間的信息和數(shù)據(jù)交換。所述應(yīng)用服務(wù)器/內(nèi)容提供商110可以是任何服務(wù)器,包含第三方服務(wù)器或服務(wù)/內(nèi)容提供商,進(jìn)一步包含廣告、促銷內(nèi)容,出版、電子優(yōu)惠券服務(wù)器或服務(wù)。同樣的,單獨(dú)的廣告服務(wù)器120A,促銷內(nèi)容服務(wù)器120B,和/或電子優(yōu)惠券服務(wù)器120C作為應(yīng)用服務(wù)器或內(nèi)容提供商同樣在實施例中闡述到。
例如, 客戶端/移動設(shè)備150可以包含移動,手持或便攜式設(shè)備,無線設(shè)備,或非便攜設(shè)備,也可以是任何但不限于:一個服務(wù)器筆記本電腦,筆記本電腦,計算機(jī)集群,或便攜設(shè)備,包含筆記本電腦,手提電腦,便攜電腦,掌上電腦,移動電話,普通手機(jī),智能手機(jī),PDA,黑莓設(shè)備,掌上設(shè)備,任何平板電腦,平板手機(jī)(一類擁有更大的屏幕尺寸的智能手機(jī),屏幕尺寸在小手機(jī)和平板電腦之間),手持平板電腦(如IPAD,Galaxy系列,Nexus,Kindle,KindleFIRE系列,任何基于安卓的平板,基于windows的平板,基于亞馬遜的平板或其他類型的平板),任何便攜式閱讀器/閱讀設(shè)備、手動控制器,手持游戲設(shè)備或控制臺,頭戴式設(shè)備,頭戴式顯示屏,一個超薄客戶端或如iPhone等任何超級手機(jī),和/或其他便攜式移動手持設(shè)備,或如M2M設(shè)備這樣的固定式無線接口,等等。在一個實施例中,客戶端設(shè)備150(或移動設(shè)備150),主機(jī)服務(wù)器100,應(yīng)用服務(wù)器110通過網(wǎng)絡(luò)106和/或網(wǎng)絡(luò)108進(jìn)行耦合。在一些實施例中,設(shè)備150和主機(jī)服務(wù)器100可能直接彼此連接。
客戶端設(shè)備150的輸入機(jī)制可以包括觸摸屏鍵盤(包括單點觸摸,多點觸摸,2D或3D的手勢感應(yīng),等),一個物理鍵盤,鼠標(biāo),指示器,追蹤板,運(yùn)動檢測器(如,包括一維、二維、三維加速計,等),光傳感器,電容傳感器、電阻傳感器、溫度傳感器、距離傳感器、壓電設(shè)備,設(shè)備方向檢測器(如,電子指南針、傾角傳感器、旋轉(zhuǎn)傳感器、回轉(zhuǎn)儀、加速度計),或以上任意組合。
通過一個或多個以上輸入機(jī)制,或者其他公開技術(shù)中以獲取客戶端設(shè)備150的情境認(rèn)知的輸入機(jī)制被接收或被檢測的信號表明用戶在客戶端設(shè)備150上活動。在客戶端設(shè)備150上的情境認(rèn)知一般包括但不限于所舉例子,客戶端設(shè)備150的工作或狀態(tài)確認(rèn),管理,用戶活動/行為/交互意識,檢測,傳感,跟蹤,和/或應(yīng)用(如,移動應(yīng)用)類型,行為,活動,操作狀態(tài),等。
本文公開技術(shù)中的情境認(rèn)知還包括網(wǎng)絡(luò)端環(huán)境數(shù)據(jù)的認(rèn)識和檢測,該數(shù)據(jù)能夠包括網(wǎng)絡(luò)信息如網(wǎng)絡(luò)容量,帶寬,流量,網(wǎng)絡(luò)/連接類型,和/或任何其他操作狀態(tài)數(shù)據(jù)。網(wǎng)絡(luò)端環(huán)境數(shù)據(jù)可以通過網(wǎng)絡(luò)106和/或網(wǎng)絡(luò)108(如,通過主機(jī)服務(wù)器和/或設(shè)備150)的網(wǎng)絡(luò)服務(wù)提供商(如,蜂窩移動網(wǎng)絡(luò)提供商112和/或互聯(lián)網(wǎng)服務(wù)提供商)收集或查詢。應(yīng)用情境認(rèn)知除了由客戶端150確定外,應(yīng)用情境認(rèn)知也可以從各自的應(yīng)用服務(wù)器/服務(wù)提供商110(通過主機(jī)100和/或客戶端設(shè)備150)接收或獲得/查詢。
主機(jī)服務(wù)器100可以使用從客戶端設(shè)備150,網(wǎng)絡(luò)106/108,應(yīng)用 (如,移動應(yīng)用)、應(yīng)用服務(wù)器/提供商110,或以上的任意組合中獲得的情境信息,以管理系統(tǒng)中的流量從而滿足客戶端設(shè)備150的數(shù)據(jù)請求(如,滿足應(yīng)用請求或任何其他請求包括HTTP請求)。在一個實施例中,流量被管理以滿足數(shù)據(jù)請求,該數(shù)據(jù)請求是為了響應(yīng)明確或非明確的用戶103的請求和/或設(shè)備/應(yīng)用的維護(hù)任務(wù)。管理流量使得節(jié)約網(wǎng)絡(luò)消耗,如蜂窩移動網(wǎng)絡(luò)的使用,以實現(xiàn)有效和有效的寬帶利用。此外,主機(jī)服務(wù)器100可以管理和協(xié)調(diào)系統(tǒng)中的流量,使用設(shè)備150端資源(如,包括但不限于電池能消耗,無線電使用,處理器/儲存器使用)可以通過一般的資源節(jié)約原理被優(yōu)化,同時通優(yōu)化性能和用戶的體驗。
例如,在電池節(jié)約情境中,設(shè)備150能夠觀察用戶的活動(如,通過一個或多個輸入機(jī)制觀察用戶的鍵盤敲擊,背光狀態(tài),或其他信號,等)和改變設(shè)備150的行為。設(shè)備150也能夠要求主機(jī)服務(wù)器100改變基于用戶活動或行為的網(wǎng)絡(luò)資源消耗的行為。
在一個實施例中,用于資源節(jié)約的流量管理使用在主機(jī)服務(wù)器100和客戶端設(shè)備150之間的分布式系統(tǒng)執(zhí)行。分布式系統(tǒng)包括代理服務(wù)器和在服務(wù)器100、和設(shè)備/客戶端的緩存組件,例如,如在服務(wù)器100側(cè)上的服務(wù)器緩存135和在客戶端150側(cè)上的本地緩存185所示。
在網(wǎng)絡(luò)(如,網(wǎng)絡(luò)106和/108)和設(shè)備150中用于情境認(rèn)知流量管理的資源節(jié)約的公開功能和技術(shù)能夠存在于分布式代理和/或緩存系統(tǒng)(如(分布式)流量優(yōu)化器,流量管理系統(tǒng),用于減緩流量的(分布式)內(nèi)容緩存機(jī)制)。代理和緩存系統(tǒng)能部分或者全部分布于和位于一個給定的客戶端設(shè)備150和/或主機(jī)服務(wù)器100之間。分布式代理和/或緩存系統(tǒng)(如(分布式)流量優(yōu)化器,流量管理系統(tǒng),用于減緩流量的(分布式)內(nèi)容緩存機(jī)制)在附圖1C中有了進(jìn)一步的相關(guān)描繪。附圖2-5也進(jìn)一步分別描繪了(分布式)代理和/或在客戶端設(shè)備150中的緩存組件,主機(jī)服務(wù)器100,和相關(guān)組件的功能與技術(shù)內(nèi)容。
在一個實施例中,客戶端設(shè)備150與主機(jī)服務(wù)器100和/或應(yīng)用服務(wù)器110通過網(wǎng)絡(luò)106進(jìn)行通信,網(wǎng)絡(luò)106可以是蜂窩移動網(wǎng)絡(luò)和/或?qū)拵ЬW(wǎng)絡(luò)。為了促進(jìn)在設(shè)備150和各種應(yīng)用服務(wù)器/內(nèi)容提供商110之間的整體流量管理以實現(xiàn)網(wǎng)絡(luò)(寬帶利用)和設(shè)備資源(如,電池消耗),主機(jī)服務(wù)器100能夠與應(yīng)用服務(wù)器/提供商通過網(wǎng)絡(luò)108進(jìn)行通信,網(wǎng)絡(luò)108包括互聯(lián)網(wǎng)(如,寬帶網(wǎng)絡(luò))。
一般而言,網(wǎng)絡(luò)106和/或108通過客戶端設(shè)備150,主機(jī)服務(wù)器100,和/或應(yīng)用服務(wù)器110進(jìn)行通信,網(wǎng)絡(luò)106和/或108可以是蜂窩移動網(wǎng)絡(luò),寬帶網(wǎng)絡(luò),電話網(wǎng)絡(luò),開放式網(wǎng)絡(luò),如互聯(lián)網(wǎng)或?qū)S镁W(wǎng)絡(luò),如內(nèi)部網(wǎng)和/或外部網(wǎng),或任何組合。例如,互聯(lián)網(wǎng)可以提供文件傳輸、遠(yuǎn)程登錄、電子郵件、新聞、RSS、云端服務(wù),即時消息,可視語音郵件,郵件,網(wǎng)絡(luò)電話,和通過任何已知或便利協(xié)議的其他服務(wù),例如但不限于TCP/IP協(xié)議,UDP,HTTP、DNS、FTP、UPnP、NSF、ISDN、PDH、SDH、RS-232、SDH、SONET,等。
網(wǎng)絡(luò)106和/或108可以是任何不同網(wǎng)絡(luò)操作的全部或部分結(jié)合的任何集合,以提供客戶端設(shè)備150和主機(jī)服務(wù)器100的連通性,可以對服務(wù)系統(tǒng)和設(shè)備提供一個或多個網(wǎng)絡(luò)。在一個實施例中,客戶端設(shè)備150通信可以通過開放式網(wǎng)絡(luò)實現(xiàn),如互聯(lián)網(wǎng),私人網(wǎng)絡(luò),寬帶網(wǎng)絡(luò),如內(nèi)部網(wǎng)絡(luò)和/或外部網(wǎng)絡(luò)。在一個實施例中,通信可以通過安全通信協(xié)議實現(xiàn),如安全套接層協(xié)議(SSL),或安全傳輸層協(xié)議(TLS)。
此外,通信可以通過一個或多個網(wǎng)絡(luò)實現(xiàn),例如但不限于,一個或多個WiMax、局域網(wǎng)(LAN)、無線局域網(wǎng)(WLAN)、個人局域網(wǎng)(PAN)、校園網(wǎng)(CAN)、城域網(wǎng)(MAN)、廣域網(wǎng)(WAN)、無線廣域網(wǎng)(WWAN)、或任何寬帶網(wǎng)絡(luò),并進(jìn)一步使用技術(shù),例如,全球移動通信系統(tǒng)(GSM)、個人通信服務(wù)(PCS)、藍(lán)牙、無線網(wǎng)絡(luò)、固定無線數(shù)據(jù),2G、2.5G、3G、4G、國際移動通訊先進(jìn)技術(shù)、準(zhǔn)4G、LTE先進(jìn)技術(shù)、移動WiMax、WiMax2、無線MAN先進(jìn)網(wǎng)絡(luò)、提高GSM進(jìn)展數(shù)據(jù)率(EDGE)、通用分組無線業(yè)務(wù)(GPRS)、加強(qiáng)的GPRS、iBurst、UMTS、HSPDA、HSUPA、HSPA、UMTS-TDD、1xRTT、EV-DO、信息傳遞協(xié)議如TCP/IP、SMS、MMS、可擴(kuò)展信息傳遞和業(yè)務(wù)協(xié)議(XMPP)、實時信息傳遞協(xié)議(RTMP)、即時通信和業(yè)務(wù)協(xié)議(IMPP)、即時信息傳遞、USSD、IRC,或任何其他無線數(shù)據(jù)網(wǎng)絡(luò)、寬帶網(wǎng)絡(luò),或信息傳遞協(xié)議。
通過下文的更多細(xì)節(jié)描述和通過附圖2A-2E和3A-3E的具體描述,下文實現(xiàn)了一個或更多的實施例,這些實施例可實現(xiàn)如下技術(shù)內(nèi)容:在一個移動網(wǎng)絡(luò)(若網(wǎng)絡(luò)106)中的建模信號,給一個或更多的特定應(yīng)用分配信號,(從而判定哪個應(yīng)用產(chǎn)生了流量信號),和建模由于分布式緩存和代理系統(tǒng)導(dǎo)致的流量信號的節(jié)約(如產(chǎn)生自附圖1C中所示的客戶端代理175和/或服務(wù)器端代理125)。
在本實施例中,在移動網(wǎng)絡(luò)中的數(shù)據(jù)信號在特定時刻發(fā)生,如,在無線電連接在設(shè)置的時候(如連接時)或者無線電連接被移除的時候(如斷開連接)。此外,每個無線電連接可以被一個或更多的事務(wù)/數(shù)據(jù)傳輸所用,這些事務(wù)/數(shù)據(jù)傳輸源自一個或更多應(yīng)用。
為了啟用或增強(qiáng)網(wǎng)絡(luò)中數(shù)據(jù)流量和信號優(yōu)化的性能,本實施例中包含一個或多個字段,(如擴(kuò)展的“CRCS”字段)。這些一個或多個字段由例如客戶端代理175和/或服務(wù)器端代理125這樣的部件計算產(chǎn)生。這些字段至少用來定義和識別如下內(nèi)容:1、一個事務(wù)是否產(chǎn)生了一個數(shù)據(jù)連接(從而產(chǎn)生了信號);2、由分布式緩存的披露實施例和代理系統(tǒng)所減少或節(jié)約的連接數(shù)量。
值得注意的是,為了方便,分布式緩存系統(tǒng)的客戶端(如本地代理105,175,275)在本文中可以被指代為“網(wǎng)絡(luò)優(yōu)化客戶端”或者“優(yōu)化網(wǎng)絡(luò)客戶端”。同樣的,分布式緩存系統(tǒng)中的服務(wù)器(如主機(jī)服務(wù)器111,100,300,主機(jī)代理服務(wù)器113,125,325)在本文中可以被指代為“網(wǎng)絡(luò)優(yōu)化服務(wù)器”或者“優(yōu)化網(wǎng)絡(luò)服務(wù)器”。客戶端和/或服務(wù)器,單獨(dú)或者共同地,可以執(zhí)行分布式緩存技術(shù)。分布式緩存技術(shù)包含,但并不限于,信號優(yōu)化和擴(kuò)展緩存技術(shù),在本文中,可以被指代為“網(wǎng)絡(luò)優(yōu)化”或者“優(yōu)化網(wǎng)絡(luò)”。
在一個實施例中,一個日志/報告數(shù)據(jù)分析核心模塊能對信號的測量和建模執(zhí)行計算和/或確定。日志/報告數(shù)據(jù)分析核心模塊,可以包含在客戶端代理175和/或服務(wù)器端代理125(如附圖2E和3E所示),在下文中有更多的詳細(xì)闡述。
附圖1A-1描繪了一個分布式網(wǎng)絡(luò)優(yōu)化系統(tǒng),包括一個優(yōu)化網(wǎng)絡(luò)(網(wǎng)絡(luò)優(yōu)化)客戶端(或本地)代理175和一個網(wǎng)絡(luò)優(yōu)化(或主機(jī))服務(wù)器100,這些被單獨(dú)或者組合配置為建模移動網(wǎng)絡(luò)中的信號。
在一個實施例中,一個CRCS分析核心工具或模塊(未示出)可以計算擴(kuò)展日志/報告數(shù)據(jù)字段,它們在CRCS分析核心單元中被使用和維持,從而實現(xiàn)在移動網(wǎng)絡(luò)中的移動設(shè)備上的信號建模。更具體地說,所述CRCS分析核心單元工具能夠?qū)W(wǎng)絡(luò)優(yōu)化架構(gòu)的效果進(jìn)行建模,(如本文所討論的包含信號優(yōu)化和擴(kuò)展緩存技術(shù)的分布式緩存技術(shù))。CRCS分析核心工具或模塊可以包含硬件和/或軟件模塊,并且可以被分別包含在或全部包含在網(wǎng)絡(luò)優(yōu)化客戶端(本地)代理175和網(wǎng)絡(luò)優(yōu)化(主機(jī))服務(wù)器150之一或者兩者中。
在一個實施例中,為了對網(wǎng)絡(luò)優(yōu)化架構(gòu)(如移動數(shù)據(jù)流量優(yōu)化技術(shù))的優(yōu)化或者節(jié)約進(jìn)行建模,則對擴(kuò)展日志/報告數(shù)據(jù)字段進(jìn)行計算。如,擴(kuò)展日志/報告數(shù)據(jù)字段能為網(wǎng)絡(luò)優(yōu)化架構(gòu)的總體效率進(jìn)行測量。這些字段能被網(wǎng)絡(luò)優(yōu)化客戶端(本地)代理175和/或網(wǎng)絡(luò)優(yōu)化(主機(jī))服務(wù)器150進(jìn)行計算。另外,字段能按移動設(shè)備被計算和/或字段為了建模在移動設(shè)備上運(yùn)行的個體應(yīng)用的信號而被計算。如,信號能被標(biāo)識或者分配(歸屬)給特定的應(yīng)有程序,從而去,如,判定哪些應(yīng)用是閑置無用,那些應(yīng)用程序會產(chǎn)生問題信號,等。
移動設(shè)備150可以包含任意數(shù)量的移動設(shè)備應(yīng)用。這些應(yīng)用可以被內(nèi)置、預(yù)裝或者被移動設(shè)備的用戶下載。此外,應(yīng)用能與網(wǎng)絡(luò)優(yōu)化客戶端代理175進(jìn)行通信(被網(wǎng)絡(luò)優(yōu)化客戶端代理175處理)或者與網(wǎng)絡(luò)(如因特網(wǎng))直接連接。如附圖1A-1所描繪的實施例,應(yīng)用1-3在每一個最初事務(wù)上都有所顯示。圖中顯示,應(yīng)用1和2被網(wǎng)絡(luò)優(yōu)化客戶端175所處理,應(yīng)用3則與網(wǎng)絡(luò)(如因特網(wǎng))發(fā)生直接連接。應(yīng)用1和2在本文中也可以被稱為“無線電感知”。應(yīng)用3并不是被網(wǎng)絡(luò)優(yōu)化架構(gòu)所處理,然而依然能夠啟動無線電(即移動設(shè)備無線電連接)。無線電連接能利用無線電日志追蹤。每一個應(yīng)用程序都能形成任意數(shù)量的事務(wù),這也許能或也許不能形成網(wǎng)絡(luò)信號,這一點,非??少F。
如上文所述,本文描述的擴(kuò)展日志/報告數(shù)據(jù)字段的能夠為了測量網(wǎng)絡(luò)優(yōu)化解決方案效率,包括信號效率和連接時間效率。如,信號效率和連接時間效率能為了與一部移動設(shè)備相關(guān)聯(lián)的信號而被計算。信號效率(也常被稱為信號節(jié)約)代表著被節(jié)約和優(yōu)化的移動網(wǎng)絡(luò)連接數(shù)量。相似的,連接時間效率(也常被稱為時間節(jié)約)代表著移動網(wǎng)絡(luò)開啟時間的節(jié)約量。
在一個實施例中,擴(kuò)展日志/報告數(shù)據(jù)字段能被分割成多個類型。如,擴(kuò)展日志/報告數(shù)據(jù)字段可以包含一個連接標(biāo)志類型和一個連接時間計數(shù)類型。此外,擴(kuò)展日志/報告數(shù)據(jù)字段能被劃分成如下圖表1所示的類型。
圖表1–日志/報告數(shù)據(jù)字段類型
如上所述,一個CRCS分析核心工具或模塊(未示出)能夠計算擴(kuò)展日志/報告數(shù)據(jù)字段,這些字段能被CRCS分析核心工具來維護(hù)和使用,從而使得一個移動網(wǎng)絡(luò)中的一個移動設(shè)備的信號能被建模。在一個實施例中,對一個移動設(shè)備的信號建模包含建立多個連接和時間計算。關(guān)于多個連接和時間計算的相關(guān)細(xì)節(jié)在附圖10A—附圖26N中闡述。
附圖1B描繪了實施例的示意圖,圖中,一個代理和緩存系統(tǒng)分布在主機(jī)服務(wù)器100和設(shè)備150之間,這促進(jìn)了設(shè)備150和應(yīng)用服務(wù)器或內(nèi)容提供商110,或其他為了資源優(yōu)化和內(nèi)容緩存的服務(wù)器諸如廣告服務(wù)器120A,促銷內(nèi)容服務(wù)器120B,或電子優(yōu)惠券120C之間的網(wǎng)絡(luò)流量管理。分布在主機(jī)服務(wù)器100和設(shè)備150之間的代理系統(tǒng)能進(jìn)一步監(jiān)控移動應(yīng)用的活動,這些監(jiān)控動作是針對于在無線網(wǎng)絡(luò)環(huán)境下的移動設(shè)備的惡意流量,和/或關(guān)于惡意流量自動生成和/或分布的策略信息。
分布式代理和/或緩存系統(tǒng)(如(分布式)流量優(yōu)化器,流量管理系統(tǒng),針對流量減緩的(分布式)內(nèi)容緩存機(jī)制)(例如(分布式)流量優(yōu)化器,流量管理系統(tǒng),針對流量減緩的(分布式)內(nèi)容緩存機(jī)制)能包含,如,代理服務(wù)器125(如,遠(yuǎn)程代理)和服務(wù)器緩存135在服務(wù)器端的組件。服務(wù)器端代理125和緩存135能夠位于主機(jī)服務(wù)器100的內(nèi)部。此外,代理服務(wù)器125和服務(wù)器端的緩存135能夠部分或全部位于主機(jī)服務(wù)器100的外部并通過一個或多個網(wǎng)絡(luò)106和108進(jìn)行通信。例如,代理服務(wù)器125可以在主機(jī)服務(wù)器的外部,服務(wù)器緩存135可以在主機(jī)服務(wù)器100上被維護(hù)。另外,代理服務(wù)器125可以在主機(jī)服務(wù)器內(nèi)部,而緩存服務(wù)器在主機(jī)服務(wù)器100的外部。此外,每個代理服務(wù)器125和緩存服務(wù)器135可以部分在主機(jī)服務(wù)器100內(nèi)部,部分在主機(jī)服務(wù)器100外部。應(yīng)用服務(wù)器/內(nèi)容提供商110可以是任何服務(wù)器包括第三方服務(wù)器或服務(wù)/內(nèi)容提供商,還包括廣告、促銷內(nèi)容、出版物、或電子優(yōu)惠券服務(wù)器或服務(wù)。同樣,不同的廣告服務(wù)器120A,促銷內(nèi)容服務(wù)器120B和/或電子優(yōu)惠券服務(wù)器120C作為應(yīng)用服務(wù)器或內(nèi)容提供商由示例解釋說明。
在一個實施例中,分布式系統(tǒng)還可以包括客戶端組件,包括但不限于,本地代理175(如,移動設(shè)備上的移動客戶端)和/或本地緩存185,可位于設(shè)備150的內(nèi)部(如,移動設(shè)備)。
此外,客戶端代理175年和本地緩存185可以部分或全部位于設(shè)備150的外部,并通過一個或多個網(wǎng)絡(luò)106和108進(jìn)行通信。例如,本地代理175可能在設(shè)備150的外部,本地緩存185在設(shè)備150的內(nèi)部。另外,本地代理175在設(shè)備150的內(nèi)部,而本地緩存185在設(shè)備150的外部。此外,每個代理175和緩存185可能部分在主機(jī)服務(wù)器100的內(nèi)部,部分在主機(jī)服務(wù)器100的外部。
在一個實施例中,分布式系統(tǒng)可能包括可選緩存代理服務(wù)器199。緩存代理服務(wù)器199可能是一個被應(yīng)用服務(wù)器/內(nèi)容提供商110,主機(jī)服務(wù)器100,網(wǎng)絡(luò)服務(wù)提供商112,或任何以上組合操作以促進(jìn)用于網(wǎng)絡(luò)和設(shè)備資源節(jié)約的網(wǎng)絡(luò)流量管理的組件。代理服務(wù)器199能夠用于緩存以提供給設(shè)備150的內(nèi)容,該內(nèi)容來自一個或多個應(yīng)用服務(wù)器/提供商110,主機(jī)服務(wù)器100,和/或網(wǎng)絡(luò)服務(wù)提供商112。內(nèi)容緩存可以通過遠(yuǎn)程代理125全部或部分執(zhí)行以滿足應(yīng)用請求或設(shè)備150上的其他數(shù)據(jù)請求。
在情境認(rèn)知流量管理和網(wǎng)絡(luò)(如,蜂窩或其他無線網(wǎng)絡(luò))資源節(jié)約優(yōu)化中,在用戶活動/行為和/或移動設(shè)備150(如,任何無線設(shè)備)中應(yīng)用行為的特征可以被本地代理175追蹤,并通過網(wǎng)絡(luò)106與主機(jī)服務(wù)器100上的代理服務(wù)器125進(jìn)行通信,例如,作為連接元數(shù)據(jù)。代理服務(wù)器125輪流與應(yīng)用服務(wù)器/提供商110耦合提供內(nèi)容和數(shù)據(jù)以滿足設(shè)備150的請求。
此外,本地代理175可以識別和檢索移動設(shè)備性能,包括一個或多個電池電量,設(shè)備注冊網(wǎng)絡(luò),無線電狀態(tài),或移動設(shè)備是否被使用(如,由用戶與之交互)。在某些情況下,本地代理175可以在數(shù)據(jù)傳輸?shù)酱矸?wù)器125之前的適當(dāng)時候延遲,加快(預(yù)讀?。?,和/或修改數(shù)據(jù)。上述內(nèi)容會在附圖2-5中做進(jìn)一步的描述。
本地數(shù)據(jù)庫185可以包括在本地代理175或耦合到本地代理175中,可以查詢本地存儲以在數(shù)據(jù)請求轉(zhuǎn)發(fā)到代理服務(wù)器125之前響應(yīng)數(shù)據(jù)請求。本地代理175可以使用本地緩存響應(yīng)以滿足移動設(shè)備150的某些應(yīng)用請求,通過檢索存儲在緩存存儲器185中的緩存內(nèi)容,當(dāng)緩存內(nèi)容有效時。
同樣,主機(jī)服務(wù)器100的代理服務(wù)器125也可以在數(shù)據(jù)從本地代理傳輸?shù)絻?nèi)容來源(如,應(yīng)用服務(wù)器/內(nèi)容提供商110)之前延遲,加快,或修改數(shù)據(jù)。此外,代理服務(wù)器125使用設(shè)備特性和連接元數(shù)據(jù)以產(chǎn)生滿足移動設(shè)備150應(yīng)用請求的規(guī)則。代理服務(wù)器125能夠收集關(guān)于應(yīng)用請求的實時流量信息供以后通過移動設(shè)備150或其他移動設(shè)備優(yōu)化相似連接使用。
一般而言,本地代理175和代理服務(wù)器125對執(zhí)行在移動設(shè)備上的多個應(yīng)用來說是透明的。本地代理175對操作系統(tǒng)或移動設(shè)備平臺來說通常是透明的,具有或不具有特定的設(shè)備制造商。在某些情況下,本地代理175的部分或全部特定設(shè)備是可選可定制的。在一些實施例中,本地代理175可以打包進(jìn)無線模型,防火墻,和/或路由器中。
在一個實施例中,主機(jī)服務(wù)器100在某些情況下,可以利用短信息服務(wù)中心(SMSC)112的存儲和轉(zhuǎn)發(fā)功能,如由網(wǎng)絡(luò)服務(wù)提供商提供,與設(shè)備150通信以實現(xiàn)網(wǎng)絡(luò)流量管理。值得注意的是,短信息服務(wù)中心(SMSC)112也可以利用任何其他類型的可替代渠道,包括USSD和其他網(wǎng)絡(luò)控制機(jī)制。主機(jī)服務(wù)器100可以轉(zhuǎn)發(fā)內(nèi)容或HTTP響應(yīng)至SMSC112,這樣它就會被自動轉(zhuǎn)發(fā)給設(shè)備150如果在線的話,以及后續(xù)轉(zhuǎn)發(fā)給設(shè)備150如果不在線的話。
一般而言,本文公開的分布式代理和緩存系統(tǒng)允許優(yōu)化網(wǎng)絡(luò)使用,例如,通過服務(wù)來自于本地緩存185的請求,本地代理175減少了需要滿足網(wǎng)絡(luò)106的請求的數(shù)量。另外,本地代理175和代理服務(wù)器125可以過濾通信數(shù)據(jù)中的無關(guān)數(shù)據(jù)。此外,本地代理175和代理服務(wù)器125也能夠積累低優(yōu)先級數(shù)據(jù),并批量發(fā)送以避免發(fā)送個人數(shù)據(jù)片段的協(xié)議開銷。本地代理175和代理服務(wù)器125還能夠壓縮和譯碼視頻流量,以減少通過網(wǎng)絡(luò)106和/或108發(fā)送的數(shù)據(jù)量。在網(wǎng)絡(luò)106和/或108中的信號流量可以被減少,在網(wǎng)絡(luò)不常用的情況下,網(wǎng)絡(luò)流量在個別應(yīng)用之間可以同步。
關(guān)于移動設(shè)備150的電池壽命,通過服務(wù)來自本地緩存185的應(yīng)用或內(nèi)容請求,本地代理175能夠減少無線電模塊啟動的次數(shù)。本地代理175和代理服務(wù)器125可以一起工作累積低級優(yōu)先級數(shù)據(jù),并批量發(fā)送以減少無線電啟動的次數(shù)和/或時間。本地代理175通過為所有連接同時執(zhí)行批量數(shù)據(jù)傳送使網(wǎng)絡(luò)使用同步。
附圖1C描述了分布式代理緩存系統(tǒng)的邏輯架構(gòu)示例圖。
分布式系統(tǒng)可以包含以下組件:
客戶端代理175:安裝在智能手機(jī),移動設(shè)備或無線設(shè)備150上的與設(shè)備的操作系統(tǒng),以及安裝在設(shè)備上的數(shù)據(jù)服務(wù)和應(yīng)用程序接口的組件??蛻舳舜?75通常符合且能夠操作使用本領(lǐng)域網(wǎng)絡(luò)協(xié)議的標(biāo)準(zhǔn)或規(guī)定。附圖2A到附圖2B和附圖4A到附圖4C對客戶端代理175的額外組件和特征有了更進(jìn)一步的闡述和描繪。
服務(wù)器端代理125可以包括一個或多個服務(wù)器,該服務(wù)器可以是與第三方應(yīng)用交互的服務(wù)器(如,服務(wù)器199),移動運(yùn)營商網(wǎng)絡(luò)(可以是代理199或是沒有說明的額外服務(wù)器)和/或客戶端代理175。一般而言,服務(wù)器端代理125通常符合且能夠操作使用本領(lǐng)域網(wǎng)絡(luò)協(xié)議和/或與移動網(wǎng)絡(luò)組件交互的說明書和/或第三方服務(wù)器的標(biāo)準(zhǔn)或規(guī)定。在附圖3A到附圖3B和附圖5A到附圖5C中進(jìn)一步描述了服務(wù)器端代理125的額外組件和特征示例。
報告和使用分析服務(wù)器174:報告和使用分析系統(tǒng)或組件174能夠收集客戶端175和/或服務(wù)器端125的信息,并通過必要的工具產(chǎn)生可以用于分析流量和信號數(shù)據(jù)的報告和使用分析。這個分析可以被代理系統(tǒng)使用以管理/減少流量,或者被網(wǎng)絡(luò)運(yùn)營商使用以監(jiān)測網(wǎng)絡(luò)并盡可能使網(wǎng)絡(luò)改進(jìn)和增強(qiáng)。注意,報告和使用分析系統(tǒng)/組件174,可以作為獨(dú)立于服務(wù)器端代理125的服務(wù)器,或者可以是部分或全部位于服務(wù)器端代理125上的一個組件。
圖1D描述了分布式代理緩存系統(tǒng)中客戶端組件結(jié)構(gòu)的示例圖。
客戶端組件175可以包括軟件組件或安裝在移動設(shè)備上的代理件,能夠使流量優(yōu)化并在客戶端執(zhí)行相關(guān)功能??蛻舳舜?75組件對最終用戶和應(yīng)用163可以透明化操作。客戶端代理175可以安裝在移動設(shè)備上以進(jìn)行優(yōu)化,并完成數(shù)據(jù)路由的更改。一旦數(shù)據(jù)路由被修改,客戶端代理175能夠響應(yīng)服務(wù)器提供商或主機(jī)服務(wù)器的應(yīng)用請求,此外還能使應(yīng)用163直接訪問數(shù)據(jù)網(wǎng)絡(luò)。一般而言,移動設(shè)備上的應(yīng)用163不會注意到客戶端代理175正在響應(yīng)他們的請求。一些客戶端代理175組件的示例描述如下:
設(shè)備狀態(tài)監(jiān)視器121:設(shè)備狀態(tài)監(jiān)視器121能夠負(fù)責(zé)識別設(shè)備中的多個狀態(tài)和指標(biāo),如網(wǎng)絡(luò)狀態(tài),顯示狀態(tài),電池電量,等??蛻舳舜?75其余的組件能夠根據(jù)設(shè)備的狀態(tài)操作并做出決策,在每個狀態(tài)下以最優(yōu)的方式操作。
流量識別器122:流量識別器122分析在無線設(shè)備應(yīng)用163和各自主機(jī)服務(wù)器之間的全部流量以識別周期性模式。支持傳輸協(xié)議包括DNS,HTTP和HTTPS,這樣通過這些端口的流量直接到了客戶端代理175處。而分析流量,客戶端代理175可以識別周期性輪詢模式,該模式可作為候選被服務(wù)器端代理125遠(yuǎn)程執(zhí)行并,發(fā)送到協(xié)議優(yōu)化器123。
協(xié)議優(yōu)化器123:協(xié)議優(yōu)化器123能夠?qū)崿F(xiàn)本地緩存185的周期性請求服務(wù)的邏輯,以替代允許這些請求通過網(wǎng)絡(luò)去服務(wù)器提供商/應(yīng)用主機(jī)服務(wù)器上。它的任務(wù)是消除或減少發(fā)送請求到網(wǎng)絡(luò)的需求,對網(wǎng)絡(luò)擁塞和設(shè)備電池壽命有著積極地影響。
本地緩存185:本地緩存185能夠存儲對周期性請求的響應(yīng),能夠被協(xié)議優(yōu)化器123使用以對應(yīng)用163發(fā)送響應(yīng)。
流量調(diào)度器124:流量調(diào)度器124能夠短暫移動通信并通過統(tǒng)一的?;钚盘栆詢?yōu)化設(shè)備資源的使用,這樣一些或全部的不同應(yīng)用163能夠在同一時間發(fā)送?;钚畔ⅲ髁苛魉€)。流量調(diào)度器124也可以在給定的時間(如,設(shè)備沒有被經(jīng)常使用)決定延遲不相關(guān)的數(shù)據(jù)傳輸。
策略管理器125:策略管理器125能夠存儲和執(zhí)行流量最優(yōu)化,策略報告由策略管理服務(wù)器(PMS)提供。在客戶端代理175首次啟動時,流量最優(yōu)化和在一個特定的設(shè)備中被執(zhí)行的策略報告(策略概要文件)能夠被策略管理服務(wù)器預(yù)分配。
看門狗127:看門狗127可以監(jiān)測客戶端代理175操作可用性。如果客戶端代理175由于故障或者因為被禁用不工作,看門狗127可以重置DNS路由規(guī)則信息,并且可以恢復(fù)原來的DNS設(shè)置使設(shè)備繼續(xù)工作直到客戶端代理175服務(wù)器恢復(fù)。
報告代理126:報告代理126可以收集設(shè)備中事件發(fā)生的信息并將這些信息發(fā)送到報告服務(wù)器。事件細(xì)節(jié)暫時存儲在設(shè)備中,只有當(dāng)數(shù)據(jù)通道的狀態(tài)活躍時才會轉(zhuǎn)發(fā)到報告服務(wù)器。如果客戶端代理175沒有在24小時內(nèi)發(fā)送記錄,報告代理126可能嘗試打開連接并發(fā)送記錄條目,或者如果那里沒有條目存儲,發(fā)送一個空的報告包。所有報告設(shè)置在策略管理服務(wù)器中配置。
推送客戶端128:推送客戶端128可以負(fù)責(zé)服務(wù)器端代理125和客戶端代理175之間的流量。推送客戶端128可以發(fā)送服務(wù)請求如內(nèi)容更新請求和策略更新請求,并接收來自服務(wù)器端代理125請求的更新。此外,推送客戶端128可以發(fā)送數(shù)據(jù)到報告服務(wù)器(如,可能在服務(wù)器端代理125內(nèi)部或外部的報告和/或使用分析系統(tǒng))。
代理服務(wù)器199具有各種各樣的用途,從通過緩存重復(fù)請求加快網(wǎng)絡(luò)服務(wù)器,到一組客戶共享網(wǎng)絡(luò)資源的緩存網(wǎng)絡(luò)、DNS和其他網(wǎng)絡(luò)的查找。代理服務(wù)器199是可選的。分布式代理和緩存系統(tǒng)(125和/或175)允許使用代理199,在運(yùn)營商網(wǎng)絡(luò)中的額外代理(們),或代理199與運(yùn)營商的或其他第三方的代理的集成代理的靈活代理配置。
附圖1E描述了分布式代理的緩存系統(tǒng)中服務(wù)器端組件結(jié)構(gòu)的示例圖。
分布式系統(tǒng)的服務(wù)器端125包括,如能夠與流量協(xié)調(diào)器144交互的中繼服務(wù)器142,輪詢服務(wù)器145和/或策略管理服務(wù)器143。每個組件都能與客戶端代理175,或其他第三方(如,應(yīng)用服務(wù)器/服務(wù)提供商110和/或其他代理199)和/或報告和使用分析系統(tǒng)通信。服務(wù)器端代理125的一些組件如下所述:
中繼服務(wù)器142:中繼服務(wù)器142是分布式代理結(jié)構(gòu)中的路由代理。中繼服務(wù)器142管理安裝在設(shè)備上并與客戶端代理175連接和通信的組件,并提供一個用以報告,服務(wù)開通,平臺設(shè)置,等內(nèi)容的管理接口。
通知服務(wù)器141:通知服務(wù)器141是一個可以連接運(yùn)營商的短信息服務(wù)中心網(wǎng)關(guān)的模塊,并對客戶端代理175提供短信息服務(wù)通知。短信息服務(wù)通知可以在IP連接不活躍的時候使用,避免客戶端服務(wù)器175通過無線數(shù)據(jù)通道激活連接,從而避免額外的信號流量。然而,如果IP連接碰巧被打開用于一些其他通信,通知服務(wù)器141可以使用它對客戶端代理175發(fā)送通知。用戶數(shù)據(jù)庫可以存儲操作數(shù)據(jù),包括終端(MISISDN),組織機(jī)構(gòu)和每個資源(URIs或URLs)的通知服務(wù)器141網(wǎng)關(guān)。
流量協(xié)調(diào)器144:流量協(xié)調(diào)器144可以負(fù)責(zé)客戶端代理175和輪詢服務(wù)器145之間的通信。流量協(xié)調(diào)器144直接連接輪詢服務(wù)器145或通過數(shù)據(jù)存儲器130連接輪詢服務(wù)器145,并且通過任何開放或?qū)I(yè)協(xié)議(諸如7TP)連接到客戶端,實現(xiàn)流量優(yōu)化。流量協(xié)調(diào)器144可以負(fù)責(zé)服務(wù)器端的流量流水:如果相同客戶端的數(shù)據(jù)庫具有緩存內(nèi)容,該內(nèi)容可以在一個信息中發(fā)送到客戶端。
輪詢服務(wù)器145:輪詢服務(wù)器145可以輪詢代表被優(yōu)化的應(yīng)用的第三方應(yīng)用服務(wù)器。如果應(yīng)用發(fā)生變化(如,新數(shù)據(jù)產(chǎn)生),輪詢服務(wù)器145可以報告流量優(yōu)化器144,該流量優(yōu)化器144依次向客戶端代理175發(fā)送通知消息以清除緩存和允許應(yīng)用直接輪詢應(yīng)用服務(wù)器。
策略管理服務(wù)器143:策略管理服務(wù)器(PMS)143允許管理員為客戶端代理175(設(shè)備客戶端)配置和存儲策略。它還允許管理員通知客戶端代理175關(guān)于策略的改變。使用策略管理服務(wù)器143,每個操作者都可以為每個特定移動運(yùn)營商網(wǎng)絡(luò)的特性配置策略從而能夠以最有效的方式工作。
報告和使用分析組件:報告和使用分析組件或系統(tǒng)收集來自客戶端175和/或服務(wù)器端125的信息,并提供工具以產(chǎn)生供操作者分析應(yīng)用信號和數(shù)據(jù)消耗的報告和使用分析,。
附圖1F描繪了在分布式代理和緩存系統(tǒng)中的客戶端組件的數(shù)據(jù)流的示例圖。應(yīng)用(如應(yīng)用1,應(yīng)用2,應(yīng)用3一直到應(yīng)用N)之間的流量,客戶端代理(如本地代理)175,IP路由表(如在安卓操作系統(tǒng)層),網(wǎng)絡(luò)訪問層和無線網(wǎng)絡(luò)都在圖中被描繪。
在一個實施例中,未優(yōu)化的應(yīng)用流量數(shù)據(jù)流,如來自APP1的流量,可以完全繞開客戶端代理175組件,并經(jīng)過操作系統(tǒng)層(如安卓操作系統(tǒng)層)直接前行。未優(yōu)化的流量可以包括但不限于:多元媒體,如視頻和音頻,以及來自網(wǎng)絡(luò)和應(yīng)用的、被配置為繞過優(yōu)化和流量待決優(yōu)化的流量等。在一個實施例中,所有流量都可以被配置成繞開客戶端/服務(wù)器端代理。
在另一個實施例中,優(yōu)化過的應(yīng)用流量,比如來自APP2的流量,可以從應(yīng)用重新定向到客戶端代理175。默認(rèn)地,可以是端口80(HTTP)和端口50(DNS)的流量,也可以是端口443(HTTPS)上經(jīng)過篩選的流量。然而,其他端口的流量可以配置為直接到達(dá)客戶端代理。
在另一種實施例中,流量流可以存在在客戶端代理175和源服務(wù)器(如內(nèi)容服務(wù)器110)之間,經(jīng)過因特網(wǎng)和/或在客戶端代理175和服務(wù)器端代理(如代理服務(wù)器)125之間。
圖2A示出的塊圖顯示駐留在為了節(jié)約資源,內(nèi)容緩存,和/或流量管理而在無線網(wǎng)絡(luò)中管理流量的一移動設(shè)備250上的分布式代理和緩存系統(tǒng)中的客戶端組件的另一個例子??蛻舳舜恚ɑ虮镜卮?75)可以進(jìn)一步基于應(yīng)用行為、內(nèi)容優(yōu)先級、用戶活動和/或用戶預(yù)期為移動流量進(jìn)行分類和/或?qū)嵤┩哆f策略。
設(shè)備250可以是諸如便攜式電話的便攜式或移動式設(shè)備(例如任何無線設(shè)備),例如,其通常包括網(wǎng)絡(luò)接口208、操作系統(tǒng)204、情境API206以及可能是代理無感知210或代理感知220的移動應(yīng)用。請注意,雖然設(shè)備250在圖2A的例子中被作為移動設(shè)備特別說明,但這并非一種限制;設(shè)備250可以是任何能夠通過在包括有線或無線網(wǎng)絡(luò)(例如無線網(wǎng)絡(luò)、蜂窩、藍(lán)牙、局域網(wǎng)、廣域網(wǎng)等)的網(wǎng)絡(luò)中接收并傳輸信號以滿足數(shù)據(jù)請求的無線、寬帶、便攜式/移動式或非便攜式設(shè)備。
網(wǎng)絡(luò)接口208可以是一個聯(lián)網(wǎng)模塊,使設(shè)備250通過由主機(jī)和外部實體所支持的任何已知的和/或便利的通信協(xié)議在網(wǎng)絡(luò)中與主機(jī)服務(wù)器250之外的實體調(diào)解數(shù)據(jù)。網(wǎng)絡(luò)接口208可以包括一個或多個網(wǎng)絡(luò)適配器卡、無線網(wǎng)絡(luò)接口卡(例如SMS接口、無線網(wǎng)絡(luò)接口、包括但不限于各代移動通信標(biāo)準(zhǔn)2G、3G、3.5G、4G、LTE等的接口)、藍(lán)牙、或不管該連接是否通過路由器、訪問點、無線路由器、交換機(jī)、多層交換機(jī)、協(xié)議轉(zhuǎn)換器、網(wǎng)關(guān)、網(wǎng)橋、橋路由器、集線器、數(shù)字媒體接收器和/或中繼器。
設(shè)備250還可以包括分布式代理和緩存系統(tǒng)的客戶端組件,其可以包括但不限于本地代理275(例如移動設(shè)備的一個移動客戶端)和緩存285。在一個實施方式中,本地代理275包括用戶活動模塊215、代理API225、請求/事務(wù)管理器235、緩存策略管理器245其有一個應(yīng)用協(xié)議模塊248、流量整形引擎255和/或連接管理器265。流量整形引擎255還可以包括調(diào)整模塊256和/或批處理模塊257,連接管理器265還可以包括無線控制器266。請求/事務(wù)管理器235還可以包括應(yīng)用行為檢測器236和/或優(yōu)先級處理引擎241,應(yīng)用行為檢測器236還可以包括模式檢測器237和/或應(yīng)用配置文件生成器239。更多或更少的組件/模塊/引擎都可以被包含在本地代理275及每個圖示組件中。
按照本發(fā)明所使用的情況,“模塊”、“管理器”、“處理器”、“檢測器”、“接口”、“控制器”、“標(biāo)準(zhǔn)化器”、“發(fā)生器”、“無效驗證器”或“引擎”都包括了一個通用、專有或共享的處理器以及通常來說由處理器執(zhí)行的固件或軟件模塊。取決于特定實現(xiàn)或其他考慮,模塊、管理器、處理器、檢測器、接口、控制器、標(biāo)準(zhǔn)化器、發(fā)生器、無效驗證器或引擎都可以被集中或使其功能被分布。模塊、管理器、處理器、檢測器、接口、控制器、標(biāo)準(zhǔn)化器、發(fā)生器、無效驗證器或引擎可包括通用或?qū)S杏布?、固件或用于處理器?zhí)行的內(nèi)嵌于計算機(jī)的可讀(存儲)介質(zhì)的軟件中。
按照本發(fā)明所使用的情況,計算機(jī)可讀介質(zhì)或計算機(jī)可讀存儲介質(zhì)旨在包括所有法定(例如在美國即根據(jù)35U.S.C.101)介質(zhì)并明確排除所有性質(zhì)為非法定的介質(zhì),其程度為該排除對包括計算機(jī)可讀(存儲)介質(zhì)是有效的的權(quán)利要求是必要的。已知法定計算機(jī)可讀介質(zhì)包括硬件(例如僅舉幾例——寄存器、隨機(jī)存取存儲器(RAM)、非易失性(NV)存儲器),但可以或可以不被限于硬件。
在一個實施方式中,網(wǎng)絡(luò)流量管理的分布式代理和緩存系統(tǒng)一部分駐留在設(shè)備250中或者與之進(jìn)行通信,包括本地代理275(移動客戶端)和/或緩存285。本地代理275可以在設(shè)備250上提供一個接口,使用戶可以訪問包括電子郵件、即時消息、語音信箱、可視語音郵件、消息源、互聯(lián)網(wǎng)、游戲、生產(chǎn)力工具或其他應(yīng)用等在內(nèi)的設(shè)備應(yīng)用和服務(wù)。
代理275一般獨(dú)立于應(yīng)用之外并可以被應(yīng)用(例如代理感知和代理無感知應(yīng)用210和220或其它移動應(yīng)用)使用來打開到遠(yuǎn)程服務(wù)器(例如服務(wù)器100)的TCP連接。在一些情況下,本地代理275包括代理API225,其可被選擇用于與代理感知應(yīng)用220(或移動設(shè)備(例如任何無線設(shè)備)上的應(yīng)用(例如手機(jī)應(yīng)用))相連。
應(yīng)用210和220通??梢园ㄈ魏斡脩魬?yīng)用、窗口小部件、軟件、基于HTTP的應(yīng)用、網(wǎng)絡(luò)瀏覽器、視頻或其他多媒體流或下載應(yīng)用、視頻游戲、社交網(wǎng)絡(luò)應(yīng)用、電子郵件客戶端、RSS管理應(yīng)用、應(yīng)用商店、文檔管理應(yīng)用、生產(chǎn)率增強(qiáng)應(yīng)用等。應(yīng)用可以由設(shè)備制造商、網(wǎng)絡(luò)服務(wù)提供商與設(shè)備操作系統(tǒng)一并提供,也可由用戶下載或由其他人提供。
如圖所示,本地代理275的一個實施方式包括情境API206或者與之耦合。如圖所示,情境API206可以是操作系統(tǒng)204或設(shè)備平臺的一部分或獨(dú)立于操作系統(tǒng)204。操作系統(tǒng)204可以包括任何操作系統(tǒng),包括但不限于任何以前、當(dāng)前和/或?qū)淼腤indowsMobile、iOS、安卓、塞班、PalmOS、BrewMP、Java2微型版(J2ME)、黑莓等等的版本/發(fā)布。
情境API206可以是操作系統(tǒng)204的一個插件或設(shè)備250上的一個特定的客戶端/應(yīng)用。情境API206可檢測指示用戶或設(shè)備活動的信號,例如運(yùn)動偵測、姿態(tài)、設(shè)備位置、設(shè)備位置的改變、設(shè)備背光、擊鍵、點擊、激活了的觸摸屏、鼠標(biāo)點擊或?qū)ζ渌羔樤O(shè)備的檢測。情境API206可耦合到設(shè)備250上的輸入設(shè)備或傳感器來識別這些信號。這種信號通??梢园轫憫?yīng)在設(shè)備250的輸入設(shè)備/機(jī)制上的顯式用戶輸入所接收到的輸入和/或從設(shè)備250上或其附近(例如光、運(yùn)動、壓電等等)的環(huán)境信號/情境線索處所收集到的輸入。
在一個實施方式中,用戶活動模塊215與情境API206交互以識別、確定、推斷、檢測、計算、預(yù)測和/或推理設(shè)備250上的用戶活動特性。由情境API206收集的各種輸入都可以由用戶活動模塊215來聚合從而為用戶活動特性生成一份簡檔。這樣一個簡檔可以由用戶活動模塊215結(jié)合各種時間特性而產(chǎn)生。例如,用戶活動簡檔可被實時生成以就用戶在給定的時刻(例如由時間窗口中所定義、在最后一分鐘、在最后30秒時等)正在做什么或沒有在做什么而在給定時間內(nèi)提供說明,用戶活動簡檔也可以為一個由應(yīng)用或網(wǎng)頁定義的“會話”而生成,其描述了就在設(shè)備250上所介入的特定任務(wù)而產(chǎn)生的或為一個特定的時間段(例如在過去的2個小時內(nèi)、在過去的5小時內(nèi))的用戶行為特性。
此外,特性曲線可以由用戶活動模塊215產(chǎn)生來描繪出用戶活動和行為(例如1周、1個月、2個月等)的歷史趨勢。這樣的歷史簡檔也可以被用來推斷用戶行為趨勢,例如在一天的不同時間的訪問頻率、一周中某些日子的趨勢(周末或周天)、基于位置數(shù)據(jù)的用戶活動趨勢(例如IP地址、全球定位系統(tǒng)或蜂窩塔坐標(biāo)數(shù)據(jù))或位置數(shù)據(jù)的改變(例如基于用戶位置的用戶活動、或基于所述用戶是否在旅途中還是在歸屬區(qū)以外旅行等的用戶活動),從而獲得用戶活動特性。
在一個實施方式中,用戶活動模塊215可以檢測和跟蹤設(shè)備250上的應(yīng)用、文檔、文件、窗口、圖標(biāo)和文件夾方面的用戶活動。例如,當(dāng)應(yīng)用或者窗口(例如網(wǎng)頁瀏覽器或任何其它類型的應(yīng)用)已經(jīng)被退出、關(guān)閉、最小化、最大化、打開、移動到前臺或到背景中時,用戶活動模塊215可以檢測到多媒體內(nèi)容播放等。
在一個實施方式中,設(shè)備250上的用戶活動特性可用于在本地調(diào)節(jié)所述設(shè)備(例如移動設(shè)備或任何無線設(shè)備)的行為,以優(yōu)化資源消耗,如電池/功耗,以及更一般的,包括內(nèi)存、存儲器和處理功率等其他設(shè)備資源的消耗。在一個實施方式中,在設(shè)備上使用的無線可以根據(jù)用戶的行為(例如由連接管理器265上的無線電控制器266)特性而被耦合到用戶活動模塊215上。例如無線電控制器266可以基于設(shè)備250上的用戶活動特性而打開或關(guān)閉無線電。此外,取決于用戶活動特性,無線電控制器266可以調(diào)整無線設(shè)備的功率模式(例如使用更高的功率模式或更低的功率模式)。
在一個實施方式中,設(shè)備250上的用戶活動特性也可用于使另一個設(shè)備(其它計算機(jī)、移動設(shè)備、無線設(shè)備或者非便攜式設(shè)備)或服務(wù)器(例如圖1A-B和圖3A的示例中的主機(jī)服務(wù)器100和300),其可以與設(shè)備250進(jìn)行通信(例如通過蜂窩式網(wǎng)絡(luò)或其它網(wǎng)絡(luò))來修改其與設(shè)備250所使用的通信頻率。本地代理275可以使用由用戶活動模塊215所確定的用戶行為特性信息來指示遠(yuǎn)程設(shè)備如何調(diào)節(jié)其通信頻率(例如,如果用戶處于閑置狀態(tài),則降低如數(shù)據(jù)推送頻率的通信頻率,而在新的數(shù)據(jù)、變化了的數(shù)據(jù)或具有一定重要性水平的數(shù)據(jù)變得可用等情況下,則請求該遠(yuǎn)程設(shè)備通知設(shè)備250)。
在一個實施方式中,作為對確定表明用戶在不活躍一段時間之后開始活躍的用戶活動特性的響應(yīng),用戶活動模塊215可請求遠(yuǎn)程設(shè)備(例如圖1A-B和圖3A的示例中的服務(wù)器主機(jī)服務(wù)器100和300)發(fā)送作為先前降低通信頻率結(jié)果而被緩沖的數(shù)據(jù)。
另外,或者作為替代,本地代理275可以就設(shè)備250上的用戶活動特性與遠(yuǎn)程設(shè)備(例如圖1A-1B和圖3A中的主機(jī)服務(wù)器100和300)進(jìn)行通信,而遠(yuǎn)程設(shè)備將確定如何改變其自身與設(shè)備250的通信頻率以實現(xiàn)網(wǎng)絡(luò)資源保護(hù)和設(shè)備250的資源保護(hù)。
本地代理275的一個實施例進(jìn)一步包括一個請求/事務(wù)管理器235,可以探測、識別、攔截、處理、管理、設(shè)備250發(fā)起的數(shù)據(jù)請求,例如,通過應(yīng)用210和/或220發(fā)起的請求,和/或由用戶直接/間接發(fā)起的請求。請求/事務(wù)管理器235可以決定如何以及何時處理給定的請求或事務(wù),或一組請求/事務(wù),根據(jù)事務(wù)的特征。
請求/事務(wù)管理器235可以為在設(shè)備250上的應(yīng)用和/或用戶進(jìn)行的請求或事務(wù)進(jìn)行優(yōu)先級排序,例如由優(yōu)先級處理引擎241進(jìn)行。請求/事務(wù)的重要性或優(yōu)先級可以通過應(yīng)用規(guī)則集由請求/事務(wù)管理器235來確定,例如根據(jù)事務(wù)的時間靈敏度、事務(wù)內(nèi)容的時間靈敏度、事務(wù)的時間關(guān)鍵性、事務(wù)中所傳輸?shù)臄?shù)據(jù)的時間關(guān)鍵性和/或發(fā)出請求之應(yīng)用的時間關(guān)鍵性或重要性。
此外,事務(wù)的特性也可取決于該事務(wù)是否是設(shè)備上的用戶交互或其他用戶發(fā)起動作的結(jié)果(例如與應(yīng)用的用戶交互(例如手機(jī)應(yīng)用))。在一般情況下,一個時間關(guān)鍵性事務(wù)可包括因用戶發(fā)起的數(shù)據(jù)傳輸而產(chǎn)生的事務(wù),并且可依此被劃分優(yōu)先級。事務(wù)特性也可以取決于由所請求事務(wù)導(dǎo)致的將被傳輸或預(yù)計要被傳輸?shù)臄?shù)據(jù)量。例如,連接管理器265可基于需要傳輸?shù)臄?shù)據(jù)量而調(diào)節(jié)無線模式(例如通過無線控制器266調(diào)節(jié)高功率和低功率模式)。
此外,無線控制器266/連接管理器265可基于事務(wù)的時間關(guān)鍵性/靈敏度調(diào)節(jié)無線功率模式(高或低)。時間關(guān)鍵性事務(wù)(例如用戶發(fā)起的數(shù)據(jù)傳輸產(chǎn)生的事務(wù)、前臺運(yùn)行的應(yīng)用、任何符合一定條件的其它事件)被啟動或檢測到時,無線控制器266可以觸發(fā)使用高功率無線模式。
在一般情況下,優(yōu)先級可以被默認(rèn)設(shè)置,例如基于設(shè)備平臺、設(shè)備制造商、操作系統(tǒng)等。優(yōu)先級可由特定應(yīng)用可替代地或附加地設(shè)置;例如Facebook應(yīng)用(例如手機(jī)應(yīng)用)可以為各種事務(wù)(例如,狀態(tài)更新可以比加為好友請求或戳一下請求有更高的優(yōu)先級,再比如消息發(fā)送請求可以比消息刪除請求有更高的優(yōu)先級)配置其自己的優(yōu)先級,電子郵件客戶端或即時消息聊天客戶端也可有其自己用于優(yōu)先權(quán)的配置。優(yōu)先級處理引擎241可以包括用于分配優(yōu)先級的規(guī)則集。
優(yōu)先級處理引擎241還可以就對請求/事務(wù)的整體優(yōu)先地位的確定而追蹤網(wǎng)絡(luò)提供商的應(yīng)用或事務(wù)優(yōu)先級之限制或規(guī)范。另外,優(yōu)先級可以部分或全部由用戶偏好確定,不管其是顯式還是隱式的偏好。在一般情況下,用戶可在設(shè)置不同優(yōu)先級層次,例如對于會話或類型或應(yīng)用的具體優(yōu)先級(例如比較瀏覽會話、游戲會話與即時消息聊天會話,用戶可以把游戲會話優(yōu)先級設(shè)置為總是高于即時消息聊天會話,而后者優(yōu)先級又高于網(wǎng)頁瀏覽會話)。用戶可以就具體的事務(wù)類型(例如使跨越所有應(yīng)用之所有發(fā)送信息請求比消息刪除請求具有更高的優(yōu)先級,使所有日歷相關(guān)的事件具有更高的優(yōu)先級等)和/或特定的文件夾來設(shè)置特定應(yīng)用的優(yōu)先級(例如用戶可以設(shè)置Facebook相關(guān)的事務(wù)比LinkedIn相關(guān)的事務(wù)具有更高的優(yōu)先級)。
優(yōu)先級處理引擎241可以追蹤和解決不同實體設(shè)置的優(yōu)先級中的沖突。例如,由用戶指定的手動設(shè)置可能優(yōu)先于設(shè)備操作系統(tǒng)設(shè)置,網(wǎng)絡(luò)提供商參數(shù)/限制(例如為一個網(wǎng)絡(luò)服務(wù)區(qū)域的默認(rèn)設(shè)置、地理區(qū)域、對于一天中的特定時間的設(shè)置或基于服務(wù)/費(fèi)用類型的設(shè)置)可能會限制任何用戶指定的設(shè)置和/或應(yīng)用設(shè)定的優(yōu)先級。在一些情況下,接收自用戶的手動同步請求可以覆蓋一些、大部分或所有的優(yōu)先級設(shè)置,其中被請求的同步會在被請求時被執(zhí)行,而無論為此所請求操作單獨(dú)分配的優(yōu)先級或整體優(yōu)先級排名如何。
優(yōu)先級可以通過任何已知和/或方便的方式被內(nèi)部定義和追蹤,包括但不限于二進(jìn)制表示、多值表示、分級表示,所有方式都被認(rèn)為在所公開技術(shù)的范圍之內(nèi)。
表2
為說明起見,以上表2以二進(jìn)制表示方案示出含有已分配優(yōu)先級事務(wù)的一些例子。對額外的事件、請求、事務(wù)的類型來說,額外分配是可能的,并且如前所述,優(yōu)先級分配可以通過更多或更少的粒度級別進(jìn)行,例如在會話級或在應(yīng)用級等。
如上表中舉例所示,在一般情況下,低優(yōu)先級的請求/事務(wù)可以包括更新消息狀態(tài)為已讀、未讀、刪除消息、刪除聯(lián)系人;更高優(yōu)先級的請求/事務(wù)在某些情況下可能包括狀態(tài)更新、新的IM聊天消息、新的電子郵件、日歷事件更新/取消/刪除、手機(jī)游戲會話中的事件、或其他娛樂相關(guān)的事件、網(wǎng)購或在線購物的購買確認(rèn)、加載額外內(nèi)容或下載內(nèi)容的請求、聯(lián)絡(luò)簿相關(guān)的事件、更改設(shè)備設(shè)置的事務(wù)、位置感知或基于位置的事件/事務(wù)或任何其他由用戶引發(fā)的或已知、預(yù)期為或懷疑用戶在等待響應(yīng)等的事件/請求/事務(wù)等。
收件箱修剪事件(例如電子郵件或任何其它類型的消息)通常被認(rèn)為是低優(yōu)先級的并且缺少其他緊迫事件,通常不會觸發(fā)在設(shè)備250上的無線使用。具體來說,如果在計劃的修剪事件時間無線電沒有另外開啟,則用來刪除舊的電子郵件或其他內(nèi)容的修剪事件可以是“附帶”于其他通信的。例如,如果用戶把偏好設(shè)置為‘保持消息7天’,則不是在超過7天的那一刻打開設(shè)備無線電來從設(shè)備250啟動消息刪除,而是將消息在下次打開無線電時刪除。如果無線電功能已經(jīng)打開,則修剪可按計劃正常發(fā)生。
請求/事務(wù)管理器235可以使用請求的優(yōu)先級(如通過優(yōu)先級處理引擎241),以管理設(shè)備250輸出流量進(jìn)行資源優(yōu)化(例如更有效使用設(shè)備的無線電來實現(xiàn)電池節(jié)約)。例如,如果由連接管理器265控制尚未開啟無線電,則低于某個優(yōu)先級次序的事務(wù)/請求可能不會觸發(fā)設(shè)備250上的無線電使用。與此相反,如果事務(wù)請求被檢測到在特定優(yōu)先級,無線電控制器266可打開無線電,使這樣的請求可以得到發(fā)送。
在一個實施方式中,優(yōu)先級分配(例如由本地代理275或其他設(shè)備/實體確定的)可以用來使遠(yuǎn)程設(shè)備修改其與移動設(shè)備或無線設(shè)備進(jìn)行通信的頻率。例如,可對遠(yuǎn)程設(shè)備進(jìn)行配置,以便在有更高重要性的數(shù)據(jù)要向移動設(shè)備或無線設(shè)備發(fā)送時發(fā)送通知到設(shè)備250,但在僅有低重要性數(shù)據(jù)時不發(fā)送通知。
在一個實施方式中,事務(wù)優(yōu)先級可以結(jié)合用戶活動特性被用于整形或管理流量,例如通過流量整形引擎255。例如,流量整形引擎255可等待從設(shè)備250發(fā)送低優(yōu)先級的事務(wù),作為對檢測到用戶處于休眠狀態(tài)或非活躍狀態(tài)一段時間的響應(yīng)。此外,流量整形引擎255可以允許多個低優(yōu)先級的事務(wù)進(jìn)行積累來從設(shè)備250進(jìn)行批量傳送(例如通過批處理模塊257)。在一個實施方式中,優(yōu)先級可以由用戶設(shè)置、配置或調(diào)整。例如,與表2中所示相同或類似形式的內(nèi)容可以在設(shè)備250的用戶界面上訪問,例如由用戶使用以調(diào)節(jié)或查看優(yōu)先級。
批處理模塊257可以根據(jù)一定的標(biāo)準(zhǔn)開始批量傳輸。例如,批量傳輸(例如多次事件發(fā)生的批量傳輸,其中一些發(fā)生在不同時間)可在檢測到特定數(shù)量的低優(yōu)先級事件后、或在第一個低優(yōu)先級事件啟動后經(jīng)過一定時間之后發(fā)生。此外,批處理模塊257可以在設(shè)備250上發(fā)起或檢測到較高優(yōu)先級事件時,啟動累積起來的低優(yōu)先級事件的批量傳輸。當(dāng)無線電使用因為其他原因(例如從諸如主機(jī)服務(wù)器100或300的遠(yuǎn)程設(shè)備接收數(shù)據(jù))被觸發(fā)時,批量傳輸也可另外被啟動。在一個實施方式中,即將發(fā)生的修剪事件(收件箱修剪)或任何其他低優(yōu)先級的事件,都可以在批量傳輸發(fā)生時執(zhí)行。
在一般情況下,批處理功能可在事件/事務(wù)級、應(yīng)用級或會話級基于以下任何一項或其組合被禁用或啟用:用戶配置、設(shè)備限制/設(shè)置、制造商規(guī)范、網(wǎng)絡(luò)提供商參數(shù)/限制、特定于平臺的限制/設(shè)置、設(shè)備的OS設(shè)置等。在一個實施方式中,批量傳輸可以在應(yīng)用/窗口/文件被關(guān)閉、退出或移動到后臺時啟動;用戶可以選擇在批量傳輸之前接收提示;用戶也可以手動觸發(fā)批量傳輸。
在一個實施方式中,本地代理275通過在緩存285上緩存數(shù)據(jù)在本地本地調(diào)整設(shè)備250上的無線電使用。當(dāng)來自設(shè)備250的請求或事務(wù)可以由存儲在緩存285中的內(nèi)容來滿足時,無線電控制器266不必激活無線電來將請求發(fā)送到遠(yuǎn)程實體(例如圖1A和3A所示的主機(jī)服務(wù)器100、圖1A和1B所示的服務(wù)器/提供商110的內(nèi)容提供商/應(yīng)用服務(wù)器)上去。這樣,本地代理275可以使用本地緩存285和緩存策略管理器245在本地存儲數(shù)據(jù),用以滿足數(shù)據(jù)請求,以消除或減少對設(shè)備無線電的使用,實現(xiàn)節(jié)約網(wǎng)絡(luò)資源和設(shè)備電池消耗。
在充分利用本地緩存方面,一旦請求/事務(wù)管理器225截獲設(shè)備250上應(yīng)用的數(shù)據(jù)請求,本地資源庫285就可以被查詢,以確定是否有任何本地存儲的響應(yīng),并且還確定該響應(yīng)是否有效。當(dāng)在本地緩存285上有一個有效的響應(yīng)時,該響應(yīng)可被提供給設(shè)備250上的應(yīng)用而無需設(shè)備250訪問蜂窩網(wǎng)絡(luò)或無線寬帶網(wǎng)絡(luò)。
如果沒有一個有效的響應(yīng),本地代理275可以查詢一個遠(yuǎn)程代理以確定遠(yuǎn)程存儲的響應(yīng)是否有效(如,圖3A所示的服務(wù)器代理325)。如果有效,遠(yuǎn)程存儲的響應(yīng)(如,圖1B所示,其可存儲在服務(wù)器緩存135或可選的緩存服務(wù)器199之上)可以被提供給移動設(shè)備,可能無需移動設(shè)備250訪問蜂窩網(wǎng)絡(luò),從而減輕網(wǎng)絡(luò)資源的消耗。
如果有效的緩存響應(yīng)不可用,或者如果緩存響應(yīng)不可用于所截取的數(shù)據(jù)請求,本地代理275,例如緩存策略管理器245,可以發(fā)送數(shù)據(jù)請求到遠(yuǎn)程代理(如圖3A所示的服務(wù)器代理325),其將數(shù)據(jù)請求轉(zhuǎn)發(fā)到內(nèi)容源(如圖1A所示的應(yīng)用服務(wù)器/內(nèi)容提供商110),并且自內(nèi)容源的響應(yīng)可以通過遠(yuǎn)程代理來提供,并將與圖3A所示的主機(jī)服務(wù)器300聯(lián)系做進(jìn)一步的描述。緩存策略管理器245可以管理或處理使用各種協(xié)議的請求,包括但不限于HTTP、HTTPS、IMAP、POP、SMTP、XMPP和/或ActiveSync。緩存策略管理器245可以把本地數(shù)據(jù)庫285中的數(shù)據(jù)請求響應(yīng)作為緩存條目進(jìn)行本地存儲,以隨后用于滿足相同或相似的數(shù)據(jù)請求。
緩存策略管理器245可以請求遠(yuǎn)程代理監(jiān)視數(shù)據(jù)請求響應(yīng),而在檢測到對于數(shù)據(jù)請求的意外響應(yīng)時,遠(yuǎn)程代理可以通知設(shè)備250。在這種情況下,在被通知有對于數(shù)據(jù)請求的意外響應(yīng)時(例如新的數(shù)據(jù)、改變了的數(shù)據(jù)、附加數(shù)據(jù)等)緩存策略管理器245可擦除或替換設(shè)備250上的本地存儲的響應(yīng)。在一個實施方式中,緩存策略管理器245能夠檢測或識別用于特定請求的協(xié)議,包括但不限于HTTP、HTTPS、IMAP、POP、SMTP、XMPP和/或ActiveSync。在一個實施方式中,本地代理275上的特定應(yīng)用的處理器(例如通過緩存策略管理器245的應(yīng)用協(xié)議模塊246)允許對任何可以被端口映射到分布式代理(如圖3A所示的端口映射在代理服務(wù)器325上)中的處理器的協(xié)議進(jìn)行優(yōu)化。
在一個實施方式中,本地代理275通知遠(yuǎn)程代理,使得遠(yuǎn)程代理可以在將結(jié)果返回至設(shè)備250之前(例如當(dāng)對內(nèi)容源的數(shù)據(jù)請求取得了與要返回給移動設(shè)備的結(jié)果相同的結(jié)果時),監(jiān)視接收自內(nèi)容源進(jìn)行數(shù)據(jù)請求的響應(yīng)是否有更改的結(jié)果。在一般情況下,本地代理275可以使用本地緩存的內(nèi)容為設(shè)備250上的應(yīng)用模擬應(yīng)用服務(wù)器響應(yīng)。這能夠防止將蜂窩網(wǎng)絡(luò)的利用用于其中新的/有變化的數(shù)據(jù)不可用的事務(wù),從而解放了網(wǎng)絡(luò)資源并防止網(wǎng)絡(luò)擁塞。
在一個實施方式中,本地代理275包括了一個應(yīng)用行為檢測器236來跟蹤、檢測、觀察、監(jiān)測可在設(shè)備250上訪問或安裝的應(yīng)用(例如代理感知和/或代理無感知應(yīng)用210和220)。應(yīng)用行為或設(shè)備250上可訪問到的一個或多個應(yīng)用所檢測到行為(例如通過模式檢測器237)的模式可以由本地代理275使用,以優(yōu)化滿足這些應(yīng)用的數(shù)據(jù)需求所需的無線網(wǎng)絡(luò)流量。
例如,基于多個應(yīng)用被檢測到的行為,流量整形引擎255可以對齊至少由一些應(yīng)用通過網(wǎng)絡(luò)(無線網(wǎng)絡(luò))所作的內(nèi)容請求(例如經(jīng)由調(diào)整模塊256)。調(diào)整模塊256可延緩或加快一些早期提出的請求以實現(xiàn)對齊。當(dāng)請求被對齊時,流量整形引擎255可以利用連接管理器在網(wǎng)絡(luò)中輪詢從而滿足應(yīng)用數(shù)據(jù)請求。多個應(yīng)用的內(nèi)容請求可以基于行為模式或規(guī)則/設(shè)置來對齊,例如包括多個應(yīng)用所請求的內(nèi)容類型(音頻、視頻、文本等)、設(shè)備(例如移動或無線設(shè)備)參數(shù)和/或網(wǎng)絡(luò)參數(shù)/流量狀況、網(wǎng)絡(luò)服務(wù)提供商的約束/規(guī)范等。
在一個實施方式中,模式檢測器237可檢測在多個應(yīng)用中由其完成的重現(xiàn),例如可通過跟蹤應(yīng)用行為中的模式進(jìn)行。例如,被追蹤的模式可以包括作為后臺進(jìn)程檢測應(yīng)用定期、在一天的特定時間、在一周中的特定天、可預(yù)測方式的規(guī)則時間、以特定頻率、以響應(yīng)于特定類型事件的特定頻率、響應(yīng)于特定類型的用戶查詢、請求內(nèi)容相同的頻率、做出相同請求所用的頻率、請求之間的間隔、應(yīng)用發(fā)出請求或上述的任何組合輪詢一個應(yīng)用服務(wù)器。
此類重現(xiàn)可以由流量整形引擎255使用,以卸載來自內(nèi)容源(例如來自圖1A所示的應(yīng)用/內(nèi)容提供商110)內(nèi)容的輪詢,該內(nèi)容源將在移動設(shè)備或無線設(shè)備250上執(zhí)行的應(yīng)用請求,代替的由處于設(shè)備250遠(yuǎn)程的代理服務(wù)器(例如圖1B所示的代理服務(wù)器125或圖3A所示的代理服務(wù)器325)執(zhí)行。流量整形引擎255可以在重現(xiàn)與規(guī)則匹配時決定卸載輪詢。例如,對于具有完全相同的內(nèi)容或者返回值的相同資源的多個出現(xiàn)或請求,或基于對請求和相應(yīng)之間的可重復(fù)時長的檢測,諸如在白天的特定時間請求的資源。輪詢的卸載可以減少移動設(shè)備250為了重復(fù)的內(nèi)容輪詢與內(nèi)容源建立無線(蜂窩或其他無線寬帶)連接所需的帶寬消耗量。
作為輪詢卸載的結(jié)果,在內(nèi)容源的輪詢中沒有檢測內(nèi)容變化時,可提供存儲在本地緩存285上的本地緩存內(nèi)容來滿足設(shè)備250上的數(shù)據(jù)請求。因此,當(dāng)數(shù)據(jù)沒有變化時,應(yīng)用數(shù)據(jù)的需求可以得到滿足,而無需在無線網(wǎng)絡(luò)中啟用無線電使用或占用蜂窩帶寬。當(dāng)數(shù)據(jù)已經(jīng)改變和/或新數(shù)據(jù)已被接收時,輪詢被卸載到的遠(yuǎn)程實體可以通知設(shè)備250。遠(yuǎn)程實體可以是圖3A所示的主機(jī)服務(wù)器300。
在一個實施方式中,本地代理275可以減輕對周期?;钕ⅲㄐ奶ⅲ┑男枰?使用,以維持TCP/IP連接,這種需要/使用可能有大量功耗,從而對移動設(shè)備的電池壽命產(chǎn)生有害影響。本地代理(例如心跳管理器267)中的連接管理器265可以檢測、識別和攔截發(fā)送自應(yīng)用的任何或所有心跳(?;睿┫?。
心跳管理器267可以防止任何或所有這類心跳消息通過蜂窩或其他網(wǎng)絡(luò)發(fā)送,而是依靠分布式代理系統(tǒng)(例如圖1B中所示)的服務(wù)器組件生成并發(fā)送心跳消息,來維持與后端(例如圖1A例子中的應(yīng)用服務(wù)器/提供商110)的連接。
本地代理275一般提供單獨(dú)管理器、模塊和/或引擎描述的功能中的任何一個或一部分。本地代理275和設(shè)備250可以包括額外或更少的組件;包括全部或部分更多或更少的功能,而不偏離本公開內(nèi)容的新技術(shù)。
圖2B描繪了說明圖2A的示例中所示的緩存系統(tǒng)中的組件的另一示例的框圖。其能夠緩存和適配用于移動應(yīng)用行為和/或網(wǎng)絡(luò)條件的緩存策略。
在一個實施例中,緩存策略管理器245包括元數(shù)據(jù)生成器203,緩存查找引擎205,緩存適當(dāng)決策引擎246,輪詢調(diào)度生成器247,應(yīng)用協(xié)議模塊248,緩存或連接選擇引擎249和/或本地緩存無效器244。緩存適當(dāng)決策引擎246可以進(jìn)一步包括時間預(yù)測器246a,內(nèi)容預(yù)測器246b,請求分析儀246c,和/或響應(yīng)分析儀246d,和緩存或連接選擇引擎249,包括一個響應(yīng)調(diào)度器249a。元數(shù)據(jù)產(chǎn)生器203和/或緩存查找引擎205耦合到緩存285(或本地緩存)以修改或添加緩存條目或查詢。
緩存查找引擎205年可進(jìn)一步包括ID或URI過濾器205a,本地緩存無效器244可進(jìn)一步包括TTL管理器244a,和輪詢調(diào)度生成器247可進(jìn)一步包括調(diào)度表更新引擎247a和/或時間調(diào)整引擎247B。緩存策略管理器245的一個實施例包括應(yīng)用緩存策略庫243。在一個實施例中,應(yīng)用行為探測器236包括一個模式檢測器237、輪詢間隔探測器238,應(yīng)用概要文件生成器239,和/或優(yōu)先級引擎241。輪詢間隔探測器238可進(jìn)一步包括長輪詢探測器238a,具有響應(yīng)/請求跟蹤引擎238b。輪詢間隔探測器238可進(jìn)一步包括長輪詢尋找檢測器238C。應(yīng)用文件生成器239可進(jìn)一步包括響應(yīng)延遲間隔追蹤器239A。
模式檢測器237,應(yīng)用文件生成器239,和優(yōu)先級引擎241的描述也與圖2A所描述的模式檢測器相聯(lián)系。一個實施例進(jìn)一步包括應(yīng)用文件存儲庫242可由本地代理275使用以存儲關(guān)于應(yīng)用文件的信息或元數(shù)據(jù)(如、行為,模式,HTTP請求類型,等等)。
緩存適當(dāng)決策引擎246可以檢測,評估,或者確定來自內(nèi)容源(如圖1B所示的應(yīng)用服務(wù)器/內(nèi)容提供商110)的內(nèi)容是否與移動設(shè)備250交互,并且是否具有適合緩存的內(nèi)容。例如,決策引擎246可以使用關(guān)于為在移動設(shè)備250出發(fā)起的請求而被接收的請求和/或響應(yīng)的信息,來確定緩存能力,潛在的可緩存性或非可緩存性。在某些情況下,決策引擎246可以初步驗證請求是否直接列入黑名單目的地或請求本身是否源于一個黑名單的客戶端或應(yīng)用。如果是,額外的處理和分析可能不能被決策引擎246執(zhí)行并且請求可能被允許通過空氣發(fā)送到服務(wù)器來滿足需求。目標(biāo)黑名單或應(yīng)用/客戶端(如,移動應(yīng)用)在本地代理處維護(hù)(例如,應(yīng)用文件存儲庫242)或遠(yuǎn)程的(如,代理服務(wù)器325或另一個實體)。
在一個實施例中,決策引擎246收集關(guān)于在移動設(shè)備250處生成的應(yīng)用或客戶端請求的信息,例如經(jīng)由請求分析器246c。請求信息可以包括請求特性信息,例如包括請求方法。例如,請求方法可以指示由移動應(yīng)用或客戶端生成的HTTP請求的類型。 在一個實施例中,如果請求方法是GET請求或POST請求,則對請求的響應(yīng)可以被識別為可緩存的或潛在可緩存的。其他類型的請求(例如,OPTIONS,HEAD,PUT,DELETE,TRACE或CONNECT)可能會也可能不會被緩存。一般來說,具有不可緩存的請求方法的HTTP請求將不會被緩存。
請求特征信息可以進(jìn)一步包括關(guān)于請求大小的信息,例如,響應(yīng)體積的大小超過一定規(guī)模的請求(如,HTTP請求)將不被緩存。例如,可以確定緩存性如果請求的信息表明請求體積大小不超過特定大小。在某些情況下,最大緩存請求體積大小可以設(shè)置為8092個字節(jié)。在其他情況下,可以使用不同的值,依賴網(wǎng)絡(luò)容量或網(wǎng)絡(luò)運(yùn)營商特定設(shè)置。
在某些情況下,來自給定的應(yīng)用服務(wù)器/內(nèi)容提供商(如,圖1B所示的服務(wù)器/內(nèi)容提供商110)的內(nèi)容被確定為適合基于一組標(biāo)準(zhǔn)的緩存,例如,標(biāo)準(zhǔn)指定了被內(nèi)容源請求的內(nèi)容的時間關(guān)鍵性。在一個實施例中,本地代理(如圖1B和圖2A所示的本地代理175或275)申請選擇標(biāo)準(zhǔn)以存儲來自主機(jī)服務(wù)器內(nèi)容,主服務(wù)器被應(yīng)用請求作為移動設(shè)備本地緩存上的緩存組件以滿足應(yīng)用的后續(xù)請求。
緩存適當(dāng)決策引擎246,進(jìn)一步基于從移動設(shè)備250發(fā)送請求的檢測模式(如,通過設(shè)備250上的移動應(yīng)用或其他類型的客戶端)和/或收到響應(yīng)的模式,可以檢測請求或響應(yīng)的可預(yù)測性。例如,決策引擎246收集的請求特征信息(如,請求分析儀246C)可以進(jìn)一步包括在請求和由移動設(shè)備相同的客戶端生成的其他請求之間的周期性信息或指向相同主機(jī)的其他請求(如,具有相似或相同的檢驗參數(shù))。
周期可以被決策引擎246或請求分析儀246C周期性檢測到,當(dāng)請求和由相同的客戶端生成的其他請求在一個固定速率或近似固定速率,或與一些可識別的動態(tài)速率或部分或全部可再生的變化模式下發(fā)生。如果請求是由一些可識別的模式(如,定期,間隔探測模式,或趨勢(例如,增加,減少,常數(shù)等)作出,則時間預(yù)測器246A可以確定由設(shè)備上給定的應(yīng)用作出的請求,至少從時間的角度來看該應(yīng)用是可預(yù)測的和可以識別潛在合適緩存的。
可識別的模式或趨勢通??梢园ㄈ魏慰梢员荒M的應(yīng)用或客戶端行為,不管是否在本地。例如,在移動設(shè)備250上的本地代理275或遠(yuǎn)程模擬,例如,由主機(jī)300上的代理服務(wù)器325,或結(jié)合本地和遠(yuǎn)程模擬來仿真應(yīng)用行為。
在一個實施例中,決策引擎246,例如,通過響應(yīng)分析儀246d,可以收集信息關(guān)于響應(yīng)應(yīng)用或移動設(shè)備250生成的客戶端請求。響應(yīng)通常接收服務(wù)器或主機(jī)的應(yīng)用 (如,移動應(yīng)用)或移動設(shè)備250上發(fā)送請求的客戶端。在某些實施例中,移動客戶端或應(yīng)用可以是應(yīng)用的移動版本(如,社交網(wǎng)絡(luò)、搜索、旅游管理器、語音信箱、聯(lián)系管理器,電子郵件)或通過web瀏覽器或桌面客戶端訪問網(wǎng)站。
例如,響應(yīng)特征信息可以包括是否傳輸編碼或分塊傳輸編碼的指示用于發(fā)送響應(yīng)。在某些情況下,通過傳輸編碼或分塊傳輸編碼以響應(yīng)HTTP請求是不緩存的,因此也被進(jìn)一步分析。分塊響應(yīng)的基本原理通常是大型和非優(yōu)的,用以緩存,因為這些事物的處理可能減緩總體執(zhí)行。因此,在一個實施例中,緩存能力或潛在的緩存能力可以被確定當(dāng)傳輸編碼不是用于發(fā)送響應(yīng)時。
此外,響應(yīng)特性信息可以包括相關(guān)狀態(tài)碼的響應(yīng),可以通過響應(yīng)分析儀246d識別。在某些情況下,不可緩存狀態(tài)碼的HTTP響應(yīng)通常是不能緩存的。響應(yīng)分析儀246d可以從響應(yīng)中提取狀態(tài)代碼和確定它是否匹配緩存或不可緩存的狀態(tài)代碼。一些緩存狀態(tài)碼包括舉例:200-好的,301-重定向,302-發(fā)現(xiàn),300-查看其他,304-不修改,307-臨時重定向,或500–內(nèi)部服務(wù)器錯誤。一些不可緩存的狀態(tài)碼可以包括,例如,403-禁止或404-未找到。
在一個實施例中,可緩存性或潛在的可緩存性可以被確定,如果關(guān)于響應(yīng)的信息并不表明不可緩存的狀態(tài)代碼或表明緩存狀態(tài)代碼。如果響應(yīng)分析儀246d檢測到與一給定的響應(yīng)相關(guān)的不可緩存的狀態(tài)代碼,具體的事物(請求/響應(yīng)對)可能被排除在進(jìn)一步的處理之外并且被確定為臨時的,半永久的,或永久的不可緩存的。如果這些狀態(tài)代碼表示緩存能力,事務(wù)(例如,請求和/或響應(yīng)對)可能會受到進(jìn)一步的處理和分析來確定緩存能力。
響應(yīng)特性信息還可以包括響應(yīng)大小信息。在一般情況下,響應(yīng)可以緩存在本地移動設(shè)備250,如果響應(yīng)不超過一定規(guī)模。在某些情況下,默認(rèn)的最大緩存的響應(yīng)大小設(shè)置為128KB。在其他情況下,最大可緩存的響應(yīng)大小可能不同,和/或可根據(jù)運(yùn)行條件,網(wǎng)絡(luò)條件,網(wǎng)絡(luò)容量,用戶偏好,網(wǎng)絡(luò)運(yùn)營商的要求,或其他特定應(yīng)用,特定用戶,和/或設(shè)備的具體原因進(jìn)行動態(tài)調(diào)整。在一個實施例中,響應(yīng)分析儀246d可以識別響應(yīng)的大小,并且如果響應(yīng)的大小沒有超出給定的閾值或最大值,則可以確定緩存能力或潛在的緩存能力。
此外,響應(yīng)特性信息可以包括對于請求的響應(yīng)的響應(yīng)主體信息和對在移動設(shè)備上的同一客戶產(chǎn)生的或指向同一內(nèi)容主機(jī)或應(yīng)用服務(wù)器的其他請求的其他響應(yīng)。用于響應(yīng)的響應(yīng)主體信息可以跟其他響應(yīng)比較,例如,通過響應(yīng)分析儀246d,以防止動態(tài)內(nèi)容(或響應(yīng)內(nèi)容經(jīng)常變化并且不能有效地提供緩存條目,如財務(wù)數(shù)據(jù)、股票報價、新聞、實時的體育賽事活動,等)的緩存,如緩存條目服務(wù)的內(nèi)容不再相關(guān)或更新。
緩存適當(dāng)決策引擎246(例如,內(nèi)容預(yù)測器246b)可以確定重復(fù)性或識別標(biāo)志的可重復(fù)性,潛在可重復(fù)性和可預(yù)測性以響應(yīng)接收到的內(nèi)容源(例如,內(nèi)容主機(jī)/應(yīng)用服務(wù)器110如圖1A-B所示)??蓹z測到的可重復(fù)性,例如,通過追蹤至少兩個從內(nèi)容源接收到的響應(yīng)并確定該響應(yīng)是否相同而被檢測到。例如,緩存能力可以被確定,通過響應(yīng)分析儀246d,如果用于響應(yīng)的響應(yīng)本體信息與用同樣的手機(jī)客戶端或指向相同的主機(jī)/服務(wù)器發(fā)送的其他響應(yīng)相同或基本相同。這兩種響應(yīng)可能是或可能不是響應(yīng)于連續(xù)請求而發(fā)送的響應(yīng)。在一個實施例中,給定應(yīng)用請求響應(yīng)接收的哈希值可用于確定在一般和/或為特定請求的內(nèi)容的可重復(fù)性(有或不具有啟發(fā))。對于一些應(yīng)用或在某些情況下可能需要另外的相同響應(yīng)。
重復(fù)性在收到的內(nèi)容中不需要100%確定。例如,響應(yīng)可以被確定為是可重復(fù)的,如果某個數(shù)字或某個百分比的響應(yīng)是相同或類似的??梢栽谟赡J(rèn)設(shè)置或應(yīng)用基于生成的請求(例如,應(yīng)用在不斷更新中是否是高度動態(tài)的,或在不頻繁更新下是少動態(tài)的)設(shè)置而選擇的時間段內(nèi)追蹤特定數(shù)量或特定百分比的相同/類似響應(yīng)。任何表明預(yù)測性或可重復(fù)性,或潛在可重復(fù)性,可被分布式系統(tǒng)用于緩存提供給請求應(yīng)用或移動設(shè)備250上的客戶端的內(nèi)容。
在一個實施例中,對于一個長輪詢請求,本地代理175可以開始在第三個請求時緩存響應(yīng),當(dāng)最先兩個響應(yīng)的響應(yīng)延遲時間為相同時,大致相同時,或檢測到間隔增加時。在一般情況下,接收的響應(yīng)的最先兩個響應(yīng)應(yīng)該是相同的,在確認(rèn)收到第三請求的第三響應(yīng)是相同的(例如,如果R0=R1=R2),第三響應(yīng)可以本地緩存在移動設(shè)備上。根據(jù)應(yīng)用類型、數(shù)據(jù)類型、內(nèi)容類型、用戶偏好、或負(fù)載/網(wǎng)絡(luò)運(yùn)營商規(guī)范,較少或更多相同的響應(yīng)需要開始緩存。
對長輪詢的相同響應(yīng)增加響應(yīng)延遲可以表明搜索周期(例如,一個時期,在移動設(shè)備上的應(yīng)用/客戶端正在尋找一個在請求和響應(yīng)之間給定網(wǎng)絡(luò)允許的最長時間,時序圖顯示時序特性如圖8所示),如應(yīng)用行為檢測器236的長輪詢搜索探測器238c檢測。
下述示例使用T0,T1,T2描述,其中T表示延時,在當(dāng)請求被發(fā)送和當(dāng)響應(yīng)(如,響應(yīng)標(biāo)頭)被檢測/接受連續(xù)請求之間:
如上述時間序列所示,T0<T1<T2,這可能表明長輪詢的搜索模式當(dāng)尚未達(dá)到或超過網(wǎng)絡(luò)超時時。此外,如果響應(yīng)R0、R1和R2收到的三個請求是相同的,R2可以被緩存。在這個例子中,R2是緩存在長輪詢搜索期間無需等待長輪詢以解決,從而加快響應(yīng)緩存(例如,這是可選加速緩存行為可以實現(xiàn)所有或選定的應(yīng)用)。
因此,本地代理275可以指定可以從上面顯示的時間序列中提?。ㄈ?,輪詢表,輪詢間隔,輪詢類型)到代理服務(wù)器并開始緩存的信息,并開始要求代理服務(wù)器開始輪詢和監(jiān)控源(例如,使用任何T0,T1,T2作為輪詢間隔,但通常T2,或最大的檢測間隔是不定時的,并接收來自源的響應(yīng)并將發(fā)送到圖3A的代理服務(wù)器325中用以使用輪詢內(nèi)容源(例如,應(yīng)用服務(wù)器/服務(wù)提供商310))。
然而,如果被檢測到的時間間隔被縮短,應(yīng)用(例如,移動應(yīng)用)/客戶端可能仍在尋找一個響應(yīng)可以可靠地從內(nèi)容源接收的時間間隔(例如,應(yīng)用/服務(wù)器/供應(yīng)商110或310),并且這樣的緩存通常不會開始,直到請求/響應(yīng)間隔表示相同的時間間隔或時間間隔增加,例如,長輪詢類型請求。
下述示例使用T0,T1,T2描述,其中T表示延時,在當(dāng)請求被發(fā)送和當(dāng)響應(yīng)(如,響應(yīng)標(biāo)頭)被檢測/接收連續(xù)請求之間:
如果響應(yīng)延遲模式T1<T2<T3>T4被檢測到,如上述時間序列所示(例如,通過應(yīng)用行為檢測器236的長輪詢搜索探測器238c檢測),可以確定的是,T3可能超出網(wǎng)絡(luò)超時并在長輪詢搜索周期之外。在 Request4(t)中,由于網(wǎng)絡(luò)、應(yīng)用、服務(wù)器或其他原因,在響應(yīng)發(fā)送或可用的響應(yīng)之前,響應(yīng)可能未接收到。Request4(t)(T4后),如果一個響應(yīng)(例如,Response4(t))檢測或接收,然后本地代理275可以使用響應(yīng)緩存(如果滿足內(nèi)容重復(fù)性條件)。本地代理也可以使用T4作為代理服務(wù)器監(jiān)控/輪詢內(nèi)容源的輪詢調(diào)度集的輪詢間隔。
注意上面的說明表明,緩存當(dāng)長輪詢在檢測增加相應(yīng)延時的事件中的搜索模式時開始,只要響應(yīng)被接收并沒有超給定請求的時間。這可以被稱為在長輪詢搜索中的可選加速緩存。緩存也可以開始在搜索模式之后(例如,在輪詢請求已經(jīng)解決了一個常數(shù)或接近恒定的延遲值)已經(jīng)完成。請注意,搜索可能會或可能不會出現(xiàn)在長輪詢或當(dāng)搜索開始時;代理275一般可以檢測到這一決定,并確定是否開始在搜索期間(對相同的響應(yīng)增加時間間隔)緩存,或等待,直到找到一個穩(wěn)定值。
在一個實施例中,緩存適當(dāng)決策引擎246的時間預(yù)測器246a可以追蹤時間響應(yīng),接收自應(yīng)用的輸出請求(例如,移動應(yīng)用)或客戶端以檢測任何可識別的模式,可以部分或完全重現(xiàn),使得本地緩存的響應(yīng)可以在移動設(shè)備250上以模擬內(nèi)容源(例如,應(yīng)用服務(wù)器/內(nèi)容提供商110或310)行為的方式提供給發(fā)出請求的客戶端。例如,該方式中(如,從時間角度)響應(yīng)或內(nèi)容將被傳遞到該設(shè)備250的請求應(yīng)用/客戶端上。這確保用戶體驗保護(hù)當(dāng)相應(yīng)應(yīng)用或移動客戶端請求的響應(yīng)是服務(wù)于本地和/或遠(yuǎn)程緩存,而不是直接從內(nèi)容源(例如,應(yīng)用,內(nèi)容提供商110或310)被檢索/接收。
在一個實施例中,決策引擎246或時間預(yù)測器246a確定給定應(yīng)用(例如,移動應(yīng)用)或客戶端的時間特征,例如,請求/響應(yīng)追蹤引擎238b和/或應(yīng)用文件生成器239(例如,響應(yīng)延時間隔追蹤器239a)。使用時序特征,時間預(yù)測器246a確定響應(yīng)請求的內(nèi)容是否合適的或是潛在適合用于緩存。例如,從一個給定的應(yīng)用的連續(xù)兩個請求之間的輪詢請求間隔可以用來確定是否請求間隔是可重復(fù)的(例如,恒定的,接近恒定的,增加模式,減少模式等),可以被預(yù)測,這種重復(fù)至少有一些時間是精確或接近公差范圍內(nèi)的。
在某些情況下,特定應(yīng)用,應(yīng)用的多個請求,或者多個應(yīng)用的特定請求類型的時間特征能夠存儲在應(yīng)用文件存儲庫242中。應(yīng)用文件存儲庫242可以存儲任何類型的信息或元數(shù)據(jù)關(guān)于應(yīng)用的請求/響應(yīng)特性,包括時間模式,時間重復(fù)性,內(nèi)容可重復(fù)性,等。
應(yīng)用文件存儲庫242還可以存儲元數(shù)據(jù),表示用于給定應(yīng)用的請求類型(例如,長時間輪詢,長期持有的HTTP請求,HTTP流,推送,可控推送,等)。應(yīng)用文件表明應(yīng)用的請求類型,應(yīng)用可以用在后續(xù)被檢測的相同/相似的請求中,或當(dāng)請求從已分類的應(yīng)用中檢測。在這種方式下,給定請求類型的時間特征或特定的應(yīng)用的請求被追蹤和/或分析,不需要再分析。
應(yīng)用文件可與有效時間相關(guān)聯(lián)(例如,或一個默認(rèn)的截止時間)。應(yīng)用文件的截止時間的使用,或者對于各方面的應(yīng)用或請求文件基于一個個案例。應(yīng)用的有效時間或?qū)嶋H截止時間可以設(shè)置為默認(rèn)值或單獨(dú)確定,或?qū)⑵浣Y(jié)合。應(yīng)用文件也可以是特定于無線網(wǎng)絡(luò),物理網(wǎng)絡(luò),網(wǎng)絡(luò)運(yùn)營商,或特定的運(yùn)營商。
一個實施例包括應(yīng)用黑名單管理器201。應(yīng)用黑名單管理器201可以耦合到應(yīng)用緩存策略庫243,并且可以部分或全部內(nèi)部本地代理或緩存策略管理器245。同樣,黑名單管理器201可以部分或全部內(nèi)部到本地代理或應(yīng)用程序行為檢測器236。黑名單管理201能夠聚集,跟蹤、更新、管理、調(diào)整,或動態(tài)監(jiān)測服務(wù)器/主機(jī)的目的地列表,該目的地列表為‘黑名單’,或被永久的或暫時的標(biāo)記為不緩存的。目的地黑名單,在請求中被標(biāo)記時,可潛在的被用來允許請求發(fā)送到(蜂窩)網(wǎng)絡(luò)用于服務(wù)。對請求的額外處理可能不被執(zhí)行,因為它被檢測并直接列入黑名單目的地。
黑名單目的地可以在應(yīng)用緩存策略庫243中通過包括特定URIs標(biāo)識符或包括URI模式的標(biāo)識符模式的地址標(biāo)識符來確定。一般來說,黑名單目的地可以被任何一方于任何原因設(shè)置或修改,包括用戶(移動設(shè)備250所有者/使用者),設(shè)備250的操作系統(tǒng)/移動平臺,目的地本身,網(wǎng)絡(luò)運(yùn)營商(蜂窩網(wǎng)絡(luò)的),網(wǎng)絡(luò)服務(wù)提供商,其他第三方,或根據(jù)知道是不可緩存的/不適合緩存的一個應(yīng)用的目的地列表?;诜治龌蛱幚?,目的地黑名單中的一些條目可能包括聚集的目的地,通過本地代理進(jìn)行處理(例如,緩存適當(dāng)決策引擎246)。
例如,在移動設(shè)備上的響應(yīng)已被認(rèn)定為不適合緩存的應(yīng)用或移動客戶端能夠被添加到黑名單。其相應(yīng)的主機(jī)/服務(wù)器可以被額外添加到或代替移動設(shè)備250上的請求應(yīng)用/客戶端的標(biāo)識。一些或全部由代理系統(tǒng)識別的客戶端可以添加到黑名單。例如,對于臨時被標(biāo)識為不適合緩存的所有應(yīng)用客戶端或應(yīng)用,只有那些具有特定的檢測特征(基于時間、周期、頻率響應(yīng)內(nèi)容的變化,內(nèi)容的可預(yù)測性,大小,等等)的應(yīng)用客戶端或應(yīng)用可以被列入黑名單。
黑名單條目可能包括應(yīng)用請求列表或移動設(shè)備上的客戶端的請求(而不是目的地),這樣,當(dāng)檢測到請求從一個給定的應(yīng)用或給定的客戶端時,其可以通過網(wǎng)絡(luò)發(fā)送一個響應(yīng),由于黑名單的客戶/應(yīng)用響應(yīng)在大多數(shù)情況下不緩存。
一個給定的應(yīng)用配置文件也可以被不同對待或處理(例如,本地代理275和遠(yuǎn)程代理325的不同行為)取決于與移動設(shè)備相關(guān)的移動帳戶,通過它應(yīng)用被訪問。例如,一個較高的付費(fèi)帳戶,或首要帳戶可允許更高頻率訪問無線網(wǎng)絡(luò)或更高的帶寬余量,從而影響緩存策略在本地代理275和代理服務(wù)器325之間實現(xiàn),與資源保護(hù)相比具有更好的性能。一個給定的應(yīng)用配置文件在不同的無線網(wǎng)絡(luò)條件下可能被不同對待或被不同處理(例如,基于擁塞或網(wǎng)絡(luò)中斷,等)。
注意,緩存適當(dāng)性可以為了移動設(shè)備250上的多個客戶端或應(yīng)用而被確定、追蹤和管理。緩存適當(dāng)性也可以為了,由移動設(shè)備250的上給定的客戶端或應(yīng)用發(fā)起的不同請求或請求類型而被確定。緩存策略管理器245,隨著時間預(yù)測器246a和/或內(nèi)容預(yù)測器246b試探性地確定或估計預(yù)測性或潛在的可預(yù)測性,可以追蹤,管理和存儲緩存信息,針對不同應(yīng)用或給定應(yīng)用的不同請求。緩存信息也可能包括條件(例如,應(yīng)用可以在一天中的特定時間被緩存,或一個星期的特定幾天,或給定應(yīng)用的特定請求可以被緩存,或給定目標(biāo)地址的所有請求可以被緩存),在這些條件下緩存是合適的,其可以被緩存適當(dāng)決策引擎246確定和/或追蹤并且在適當(dāng)時在耦合到緩存適當(dāng)決策引擎246的應(yīng)用緩存策略庫243中被存儲和/或更新。
當(dāng)檢測到相同的請求時,可以在后續(xù)使用應(yīng)用緩存策略庫243中的關(guān)于請求,應(yīng)用,和/或相關(guān)條件的可緩存性的信息。在這種方式下,決策引擎246或時間和內(nèi)容的預(yù)測246a/b不需要跟蹤和分析請求/響應(yīng)時間和內(nèi)容特征做出關(guān)于緩存能力評估。此外,在某些情況下,緩存信息可以直接通信或通過主機(jī)服務(wù)器(例如,代理服務(wù)器325服務(wù)器300)與其他移動設(shè)備的本地代理服務(wù)器共享。
例如,各種移動設(shè)備上的本地代理275檢測的緩存信息可以被發(fā)送到遠(yuǎn)程主機(jī)服務(wù)器或主機(jī)服務(wù)器的代理服務(wù)器325上(如圖3A所示的主機(jī)服務(wù)器300或代理服務(wù)器325,圖1A-B所示的主機(jī)100和代理服務(wù)器125)。遠(yuǎn)程主機(jī)或代理服務(wù)器可以分發(fā)關(guān)于特定于應(yīng)用的信息,特定請求的緩存信息和/或任何相關(guān)條件到各種移動設(shè)備或無線網(wǎng)絡(luò)中的本地代理或多個無線網(wǎng)絡(luò)的本地代理(相同服務(wù)供應(yīng)商或多個無線服務(wù)提供商),供其使用。
在一般情況下,緩存的選擇標(biāo)準(zhǔn)可以進(jìn)一步包括,例如但不限于,表明是否移動設(shè)備是活躍的或不活躍的移動設(shè)備狀態(tài),網(wǎng)絡(luò)條件,和/或無線電覆蓋統(tǒng)計。緩存適當(dāng)決策引擎246可以是任何一個或任何組合的標(biāo)準(zhǔn),并以任何順序,確定緩存可能合適的來源。
一旦應(yīng)用服務(wù)器/內(nèi)容提供商識別或檢測到內(nèi)容,該內(nèi)容適合于移動設(shè)備250的本地緩存,則緩存策略管理器245可以處理緩存相關(guān)的內(nèi)容,該內(nèi)容接收于識別源,該識別源通過存儲從內(nèi)容源接收的內(nèi)容作為本地緩存中的緩存組件(例如,本地緩存185或285分別如圖1B和圖2A所示)在移動裝置250上。
響應(yīng)可以作為緩存條目被存儲在緩存285(例如,也稱為的本地緩存)。處理對請求的響應(yīng)請之外,緩存的條目可以包括具有關(guān)于響應(yīng)的緩存的附加信息的響應(yīng)元數(shù)據(jù)。元數(shù)據(jù)可能是元數(shù)據(jù)產(chǎn)生器203產(chǎn)生的并包含,例如定時數(shù)據(jù),諸如緩存的訪問時間或者緩存的創(chuàng)造時間。元數(shù)據(jù)可以包括附加信息,例如適合用于確定作為緩存條目被存儲的響應(yīng)是否被用于滿足后續(xù)響應(yīng)的任何信息。例如,元數(shù)據(jù)信息可以進(jìn)一步包括,請求定時歷史(例如,包括請求時間,請求開始時間,請求結(jié)束時間),哈希的請求和/或響應(yīng),時間間隔或時間間隔的變化等。
緩存條目通常存儲在與有效時間(TTL)關(guān)聯(lián)的緩存285中,例如,其由緩存無效器244的TTL管理器244a指定或確定。緩存條目的有效時間是條目在緩存285中維持的總時間,不管該響應(yīng)是否仍然有效,或是否與在移動設(shè)備250上的給定請求或客戶端/應(yīng)用程序相關(guān)。例如,如果給定緩存條目的有效時間設(shè)置為12小時,緩存被清除,刪除,或以其他方式表明有超過有效時間,即使響應(yīng)本身仍然包含在條目中并且適用相關(guān)請求。
默認(rèn)的有效時間可以自動使用所有條目,除非另有規(guī)定(例如,由TTL管理器244a),或每個緩存條目可以用其個別的TTL創(chuàng)建(例如,由TTL管理器244a基于各種動態(tài)或靜態(tài)標(biāo)準(zhǔn)被確定)。請注意,每個條目都可以有一個單獨(dú)的時間與響應(yīng)數(shù)據(jù)和任何相關(guān)的元數(shù)據(jù)關(guān)聯(lián)。在某些情況下,相關(guān)的元數(shù)據(jù)可能與響應(yīng)的數(shù)據(jù)有不同的有效時間(例如,一個較長的有效時間)。
具有用于緩存的內(nèi)容源可以另外或可替代的,被確定為遠(yuǎn)程的并且與移動設(shè)備250進(jìn)行無線通信的代理服務(wù)器(例如,分別示出在圖1B和圖3A中的代理服務(wù)器125或325),使得代理服務(wù)器能夠監(jiān)控內(nèi)容源(例如,應(yīng)用服務(wù)器/內(nèi)容提供商110)。同樣,本地代理(例如,分別示出在圖1B和圖2A中的本地代理175或275)可以向代理服務(wù)器標(biāo)志從一個特定的應(yīng)用服務(wù)器/內(nèi)容提供商接收到的內(nèi)容作為緩存組件被存儲在本地緩存285中。
一旦內(nèi)容被本地緩存,緩存策略管理器245,在接收以接觸應(yīng)用服務(wù)器/內(nèi)容主機(jī)(例如,110或310)的將來的輪詢請求時,可以從本地緩存檢索緩存的元素,以響應(yīng)在移動設(shè)備的輪詢請求,使得移動設(shè)備無線電未激活的服務(wù)于輪詢請求。例如,緩存查找引擎205可以查詢緩存285以確定要響應(yīng)于響應(yīng)的響應(yīng)。響應(yīng)可以從緩存中提供響應(yīng)來識別匹配的緩存條目,也可以使用存儲在緩存中的響應(yīng)的任何元數(shù)據(jù)。緩存條目可以通過一個請求的URI或另一種類型的標(biāo)識符(例如,通過ID或URI過濾器205A)的緩存查找引擎被查詢。緩存查找引擎205可以進(jìn)一步使用存儲在匹配的緩存中的元數(shù)據(jù)(例如,提取任何時間信息或其他相關(guān)信息),以確定是否響應(yīng)仍然是適合于使用在當(dāng)前請求服務(wù)。
注意到,該緩存查找可以通過引擎205使用多種策略中的一個或多個來執(zhí)行。在一個實施例中,多個查找策略可以在存儲在緩存285中的每個條目中順序執(zhí)行,直到至少有一個策略識別道一匹配的緩存條目。用于執(zhí)行緩存查找的策略可以包括一個嚴(yán)格匹配標(biāo)準(zhǔn)或允許非匹配參數(shù)的匹配標(biāo)準(zhǔn)。
例如,查找引擎205執(zhí)行嚴(yán)格的匹配策略,其搜索在代理嘗試標(biāo)識緩存條目的當(dāng)前請求中引用的標(biāo)識符(例如,主機(jī)或資源的URI)與同緩存條目一起存儲的標(biāo)識符之間的精確匹配。在這種情況下,標(biāo)識符包括URIs或URLs,嚴(yán)格匹配的匹配算法將搜索緩存條目,其中所有參數(shù)屬于URLs匹配。例如:
例1
1.緩存包含條目http://test.com/products/
2.請求被產(chǎn)生至URI http://test.com/products/
嚴(yán)格的策略會找到一個匹配,因為兩個URI是相同的。
例2
1.緩存包含條目
2.請求被產(chǎn)生至
在上述嚴(yán)格的策略下,因為URIs不同于查詢參數(shù),匹配不會被發(fā)現(xiàn)。
在另一個例子中,查找引擎205查找一個緩存條目,該標(biāo)識符部分匹配當(dāng)前請求中引用的標(biāo)識符,該代理試圖找出匹配的緩存條目。例如,查找引擎205可以通過查詢具有標(biāo)識符的緩存條目,該標(biāo)識符不同于通過查詢參數(shù)值的請求標(biāo)識符。利用該策略,查找引擎205可以收集用于多個先前的請求的信息(例如,標(biāo)識符的任意參數(shù)列表)以在稍后檢查在當(dāng)前的請求中檢測任意參數(shù)。例如,在緩存條目與URI或URL標(biāo)識符一起被存儲的情況下,查詢引擎搜索具有與查詢參數(shù)不同的URI的緩存條目。如果找到,則引擎205可以檢查在先前的請求期間收集的信息(例如任意參數(shù)列表)的緩存條目,并檢查在當(dāng)前URI/URL中檢測到的或從當(dāng)前的URI/URL提取的任意參數(shù)是否屬于任意參數(shù)列表。
例1
1.緩存包含條目,其中查詢被標(biāo)記為任意的。
2.請求被產(chǎn)生至
匹配將會被找到,因為查詢參數(shù)被標(biāo)記為任意的。
例2
1.緩存包含條目,其中查詢?yōu)闃?biāo)記為任意的。
2.請求被產(chǎn)生至
匹配將不會被找到,因為當(dāng)前請求包含在緩存條目中沒有被標(biāo)記為任意的排序參數(shù)
檢測緩存命中的附加策略可以被利用。這些策略可以單獨(dú)使用或在任何組合中實現(xiàn)。當(dāng)這些策略中的任何一個決定匹配時,可以確定緩存命中率。當(dāng)查找引擎205確定所請求的數(shù)據(jù)不能從緩存285中送達(dá)時,因為任何原因,可能會顯示一個緩存未命中。例如,沒有為任何或所有使用的查找策略標(biāo)識緩存條目時,可確定緩存未命中。
當(dāng)匹配的緩存條目存在,但被確定為無效或與當(dāng)前請求不相關(guān)時,也可以被確定為緩存未命中。例如,查找引擎205可以進(jìn)一步分析元數(shù)據(jù)(例如,它可能包括與匹配的緩存條目相關(guān)聯(lián)的緩存條目的時間數(shù)據(jù)),以確定它是否仍然適合用于響應(yīng)當(dāng)前的請求。
當(dāng)查找引擎205已確定緩存命中(例如,表示所請求的數(shù)據(jù)可以從緩存中送達(dá)),在匹配的緩存條目中存儲的響應(yīng)可以被緩存服務(wù)來滿足應(yīng)用/客戶端的請求。
通過使用存儲在緩存285的緩存條目來服務(wù)請求,網(wǎng)絡(luò)帶寬和其他資源不需要用于請求/接收可能沒有從已在移動設(shè)備250上接收到的響應(yīng)改變的輪詢響應(yīng)。通過在本地緩存285中的緩存條目如此本地的服務(wù)和實現(xiàn)應(yīng)用(例如,移動應(yīng)用)請求允許更有效的資源和移動網(wǎng)絡(luò)流量的利用以及管理,因為不需要通過進(jìn)一步消耗帶寬的無線網(wǎng)絡(luò)發(fā)送請求。在一般情況下,緩存285可以維持移動設(shè)備250電源開啟/關(guān)閉之間,并跨越應(yīng)用/客戶端保持刷新和重新啟動。
例如,本地代理275,一旦收到來自其移動設(shè)備250或移動設(shè)備250上的應(yīng)用或其他類型客戶的輸出請求,可以攔截請求并確定是否允許在移動設(shè)備250上的本地緩存285中緩存響應(yīng)。如果允許,本地代理275使用在移動設(shè)備的緩存中的緩存響應(yīng)來響應(yīng)輸出請求。因此,發(fā)出的請求可以被滿足,而不需要通過無線網(wǎng)絡(luò)發(fā)送請求,從而節(jié)約網(wǎng)絡(luò)資源和電池消耗。
在一個實施例中,對設(shè)備250上請求應(yīng)用/客戶端的響應(yīng)被定時為對應(yīng)于內(nèi)容服務(wù)器將通過持久連接對輸出請求進(jìn)行相應(yīng)的方式(例如,通過持續(xù)的連接,或長期保持的HTTP連接,長輪詢式連接,其將在沒有本地代理的情況下被建立)。響應(yīng)時間可以通過由本地代理275效仿和模擬來保存應(yīng)用的行為,由此最終用戶體驗不受影響,或者最小化來自本地緩存285的提供存儲內(nèi)容的影響,相較于將要從內(nèi)容源(例如,內(nèi)容主機(jī)/應(yīng)用服務(wù)器110的圖1A-B)收到的新內(nèi)容的影響。可在公差參數(shù)內(nèi)精確的復(fù)制或估計定時,其可以被用戶忽視或被應(yīng)用類似的處理,從而不會導(dǎo)致出現(xiàn)操作問題。
例如,輸出請求可以是一個針對內(nèi)容服務(wù)器(例如,應(yīng)用服務(wù)器/內(nèi)容提供商的圖1A-1B實例)的持續(xù)連接請求。在與一個內(nèi)容源(服務(wù)器)持久連接(例如,長輪詢,COMET式推送或異步HTTP請求中的任何其他推送模擬,長期持有的HTTP請求,HTTP流媒體,或其他)中,連接在請求被發(fā)送后將保持一段時間。在移動設(shè)備和服務(wù)器之間的連接通常持續(xù)到內(nèi)容被允許從服務(wù)器發(fā)送到移動設(shè)備。因此,當(dāng)一個長輪詢請求發(fā)送和接收來自內(nèi)容源的響應(yīng)時,通常會有一些延遲時間。如果該內(nèi)容源在一段時間內(nèi)沒有提供響應(yīng),則該連接也可能由于網(wǎng)絡(luò)原因未發(fā)送響應(yīng)而終止(例如,套接字關(guān)閉)。
因此,為了模擬從內(nèi)容服務(wù)器經(jīng)持續(xù)連接(例如,長輪詢方式連接)發(fā)送的響應(yīng),對內(nèi)容服務(wù)器響應(yīng)的方式可以通過允許在具有緩存的響應(yīng)的輸出請求之前經(jīng)過的一段時間間隔來模擬。例如,時間間隔的長度可以基于請求的請求或基于應(yīng)用的應(yīng)用(基于客戶端的客戶端)確定。
在一個實施例中,根據(jù)在移動設(shè)備上的應(yīng)用的請求特征(例如,時間特性)來確定時間間隔,該應(yīng)用來自原始輸出請求。例如,查詢請求的時間間隔(例如,它可以被追蹤,檢測,并通過輪詢間隔探測器238的長輪詢探測器238a確定)可以用來確定在響應(yīng)本地緩存條目的請求和由響應(yīng)調(diào)度器249a管理之前的等待時間間隔。
緩存策略管理器245的一個實施例包括一個輪詢調(diào)度生成器247,它可以為移動設(shè)備250上的一個或多個應(yīng)用生成輪詢調(diào)度。一個物理上可區(qū)分的和/或與移動設(shè)備250分離的實體可以利用輪詢調(diào)度指定輪詢間隔,該輪詢間隔用于代表移動設(shè)備監(jiān)視一個或多個應(yīng)用的內(nèi)容源(因此,緩存的響應(yīng)可以通過定期輪詢被直接請求的主機(jī)服務(wù)器(主機(jī)服務(wù)器110或310)被驗證)。舉一個例子,代理服務(wù)器(例如,代理服務(wù)器125或325在圖1B和圖3B-C實例)就是可以在移動設(shè)備250上的監(jiān)控內(nèi)容源的這樣一個外部實體。
如根據(jù)移動設(shè)備向內(nèi)容源的輪詢請求之間的間隔,可以確定輪詢調(diào)度(例如,包括輪詢的速率/頻率)。在移動設(shè)備250(由本地代理)可以確定輪詢時間或速率。在一個實施例中,該應(yīng)用行為檢測器236中的輪詢間隔檢測器238可以監(jiān)視來自移動設(shè)備250的內(nèi)容源的輪詢請求,以確定任何或所有應(yīng)用(例如,移動應(yīng)用)的輪詢請求之間的間隔。
舉例來說,輪詢間隔探測器238可以在設(shè)備250上為應(yīng)用或客戶端追蹤請求和響應(yīng)。在一個實施例中,在檢測到由移動設(shè)備250上的應(yīng)用(例如,移動應(yīng)用)由相同的移動客戶端或應(yīng)用(如移動應(yīng)用)發(fā)起的輸出請求之前,跟蹤連續(xù)請求。可以使用從響應(yīng)緩存請求中收集的請求信息來確定輪詢速率。在一個實施例中,該速率是由相同客戶端生成的請求產(chǎn)生的在先請求之間的平均時間間隔來確定的。例如,第一個間隔可以在當(dāng)前請求和先前請求之間計算,第二個間隔可以在兩個先前請求之間計算。輪詢速率可以由第一個間隔和第二個間隔的平均值被設(shè)置,并在設(shè)置緩存策略時發(fā)送到代理服務(wù)器。
可以在生成平均值時計算替代間隔;例如,除了兩個以前的請求外,可以使用多個先前的請求,并且可以在計算平均值中使用兩個以上的時間間隔。在一般情況下,計算時間間隔中,一個給定的請求不必導(dǎo)致從主機(jī)服務(wù)器/內(nèi)容源接收的響應(yīng),以便使用它進(jìn)行時間間隔計算。也就是說,只要該請求被檢測到,即使發(fā)送請求失敗,或者響應(yīng)檢索失敗,使用給定請求的時間特性都可以用來計算時間間隔。
輪詢進(jìn)度生成器247的一個實施例,包括一個調(diào)度更新引擎247a和/或時間調(diào)整引擎247b。調(diào)度更新引擎247a可以根據(jù)檢測到從設(shè)備250上的客戶端或應(yīng)用(例如,移動應(yīng)用)生成的實際請求的間隔變化來確定給定的應(yīng)用服務(wù)器/內(nèi)容主機(jī)的速率或輪詢間隔從預(yù)先設(shè)定的值進(jìn)行更新的需要。
舉例來說,現(xiàn)在可以以不同的請求間隔從應(yīng)用(例如,移動應(yīng)用)或客戶端發(fā)送確定了監(jiān)測速率的請求。調(diào)度更新引擎247a可以確定實際請求的更新的輪詢間隔并且生成不同于先前設(shè)定的速率的新速率,以代表移動設(shè)備250輪詢主機(jī)。在蜂窩網(wǎng)絡(luò)中,更新輪詢速率可以傳送到遠(yuǎn)程代理服務(wù)器(代理服務(wù)器325),用于遠(yuǎn)程代理來監(jiān)視給定的主機(jī)。在某些情況下,更新輪詢速率可以在遠(yuǎn)程代理或監(jiān)測主機(jī)的遠(yuǎn)程實體上確定。
在一個實施例中,時間調(diào)整引擎247b可以進(jìn)一步優(yōu)化輪詢調(diào)度生成以監(jiān)控應(yīng)用服務(wù)器/內(nèi)容源(110或310)。例如,時間調(diào)整引擎247b可以任意指定一個時間開始對代理服務(wù)器輪詢。例如,除了設(shè)置代理服務(wù)器的輪詢間隔以監(jiān)測應(yīng)用,服務(wù)器/內(nèi)容主機(jī)還可以指定在移動客戶端/應(yīng)用生成實際請求的時間。
然而,在某些情況下,由于固有傳輸延遲或增加的網(wǎng)絡(luò)延遲或其他類型的延遲,遠(yuǎn)程代理服務(wù)器接收來自本地代理的具有一些延時(例如,幾分鐘,幾秒)的輪詢設(shè)置。這具有在移動客戶端/應(yīng)用生成請求之后在源處檢測的響應(yīng)變化的效果,其導(dǎo)致當(dāng)響應(yīng)不再是當(dāng)前或有效而被再次被提供給應(yīng)用之后發(fā)生緩存響應(yīng)的無效。這種差異進(jìn)一步在圖21的數(shù)據(jù)時間圖中解釋說明。
為了解決這個在其無效之前再次服務(wù)于過期內(nèi)容的非最優(yōu)結(jié)果,時間調(diào)整引擎247b可以指定除了速率之外的輪詢應(yīng)該開始的時間(t0),當(dāng)通過移動的應(yīng)用/客戶端產(chǎn)生請求時,指定的初始時間t0可以被指定作為代理服務(wù)器325的時間,這個時間比移動應(yīng)用/客戶端產(chǎn)生請求的實際時間要少。這種方式,所述服務(wù)器在移動客戶端產(chǎn)生實際請求之前對資源稍作輪詢,以至任何內(nèi)容的變化都可以在真實的應(yīng)用請求之前被檢測到。這可以防止在提供新內(nèi)容之前再次提供無效或不相關(guān)的過時的內(nèi)容/響應(yīng)。
在一個實施例中,檢測來自于一個移動設(shè)備250的輸出請求,來完成在來自于移動設(shè)備250上同樣應(yīng)用或者客戶端的在先請求的時間特性基礎(chǔ)上的持續(xù)連接(例如一個長輪詢、COMET式推送和長期保持(HTTP)請求)。例如,請求和/或通訊響應(yīng)可以通過輪詢間隔檢測器238的長輪詢檢測器238a的請求/響應(yīng)追蹤引擎238b追蹤到。
連續(xù)請求的時間特性可以被確定以為應(yīng)用或者客戶端建立一個輪詢調(diào)度。所述輪詢調(diào)度可以用于監(jiān)控內(nèi)容源(內(nèi)容源/應(yīng)用服務(wù)器)的內(nèi)容變化,這樣,移動設(shè)備250中儲存于本地緩存的緩存內(nèi)容可以被恰當(dāng)管理(例如被更新或者被丟棄)。在一個實施例中,所述時間特性可包括,例如響應(yīng)延遲時間(‘D’)和/或空閑時間(‘IT’)。
在一個實施例中,請求/響應(yīng)追蹤引擎238b可以追蹤請求和響應(yīng)來終止、計算和/或判斷應(yīng)用或者客戶端請求的時序圖。
例如,請求/響應(yīng)追蹤引擎238b發(fā)現(xiàn)由所述移動設(shè)備上的客戶端發(fā)出的第一請求(請求0)和在接收到響應(yīng)之后由所述移動設(shè)備上的所述客戶端發(fā)出的第二請求(請求1)在移動設(shè)備處響應(yīng)于第一請求,第二請求在所述移動設(shè)備接收到第一請求之后。
在一個實施例中,請求/響應(yīng)追蹤引擎238b可以追蹤請求和響應(yīng)來終止、計算和/或判斷應(yīng)用或者客戶端請求的時序圖。所述請求/響應(yīng)追蹤引擎238b可發(fā)現(xiàn)由所述移動設(shè)備上的客戶端發(fā)出的第一請求和由所述移動設(shè)備上的所述客戶端在響應(yīng)于第一請求的響應(yīng)在移動設(shè)備處被接收后發(fā)出的第二請求。第二請求在所述移動設(shè)備接收到第一請求之后。
所述請求/響應(yīng)追蹤引擎238b還進(jìn)一步確定第一、第二請求和對所述第一請求的響應(yīng)被接收之間的相對時間。一般地,所述相對時間可以被長輪詢檢測器238a用來確定應(yīng)用生成的請求是否為長輪詢請求。
請注意,所述請求/響應(yīng)追蹤引擎238b在計算相對時間所用到的第一和第二請求是在長輪詢搜索周期結(jié)束之后或者長輪詢搜索周期并沒有出現(xiàn)的情況下被選擇使用。
在一個實施例中,長輪詢搜索檢測器238c可以通過識別增加的請求間隔(例如增加的延遲)來識別或者發(fā)現(xiàn)搜索模式,所述長輪詢檢測器238a還可以通過檢測沒有響應(yīng)的請求(例如連接超時)之前為增加的請求間隔,或者通過檢測間隔的減小之前為增加的請求間隔來發(fā)現(xiàn)搜索模式。另外,長輪詢搜索檢測器238c可以將一個濾值或者一個閾值應(yīng)用到請求-響應(yīng)時間延遲值(例如一個絕對值),當(dāng)檢測到的延遲大于這個值時可以被考慮為一個長輪詢請求-響應(yīng)延遲。所述濾值可具有長輪詢和/或網(wǎng)絡(luò)條件(例如2s、5s、10s、15s、20s等)的任何適合的特征值,并且可以用作濾波器或閾值。
所述響應(yīng)延遲時間('D')是指在一個請求發(fā)出之后接收到響應(yīng)的起始時間,所述空閑是指在所述響應(yīng)被接收到之后發(fā)出后續(xù)請求的時間。在一個實施例中,基于響應(yīng)延遲時間相對('D')或者('D')的平均值(例如任何時間周期的任何平均值)與空閑時間('IT')的比較(例如通過追蹤引擎238b完成的)檢測到輸出請求是針對持續(xù)連接的,例如,通過長輪詢檢測器238a。用于平均的數(shù)量可以是確定的、動態(tài)調(diào)整的或者在很長一段時間內(nèi)是變化的。例如,如果請求延遲時間間隔大于空閑時間間隔(D>IT或者D>>IT),客戶端發(fā)起的請求被判定是長輪詢請求。在一個實施例中,所述長輪詢檢測的所述追蹤引擎238b計算、確定或者估算請求延遲時間間隔,該延遲時間間隔作為第一請求和起始檢測或完全接收到響應(yīng)的時間之間經(jīng)過的時間。
在一個實施例中,當(dāng)在持續(xù)連接之后所述空閑時間(‘IT’)變短時,檢測到針對持續(xù)連接的輸出請求,其被建立以響應(yīng)長輪詢請求或者長輪詢HTTP請求,例如,還可以表現(xiàn)為檢測在接收到在先請求(例如IT~0)的響應(yīng)之后立即或者幾乎立即發(fā)出的后續(xù)請求。同樣地,所述空閑時間(‘IT’)還可以用于檢測這種立即的或者幾乎立即的再請求來識別長輪詢請求。所述追蹤引擎238b決定的相對或者絕對時間用于確定第二請求是否是第一請求的響應(yīng)被接收后的立即或者幾乎立即的再請求。例如,如果D+RT+IT~D+RT,則由于IT的值比較小,請求可能被分類為長輪詢請求,以維持準(zhǔn)確性。如果IT小于閾值,則可能被確定為小值。注意閾值可能是固定的或者通過一個限定的時間期限(一段、一天、一個月等)計算出來的或者通過一個更長的時間期限(幾個月或者分析的全程)計算出來的。例如,對于每個請求,平均IT可以被確定,并利用這個平均IT來確定閾值(例如平均IT減去一個特定百分比可能得到閾值)。這可以允許閾值隨著時間的推移自動適應(yīng)網(wǎng)絡(luò)環(huán)境,并改變其服務(wù)器性能、可用資源或者服務(wù)器響應(yīng)。一個固定的閾值可采用包括例子里的但不局限于此(例如1s、2s、3s、….等)的任何值。
在一個是實施例中,長輪詢檢測器238a可以比較相對時間(由跟蹤引擎238b確定的)和其他應(yīng)用的請求-響應(yīng)時間特性,以便確定應(yīng)用的請求是否是長輪詢請求。例如,如果響應(yīng)延遲間隔時間(‘D’)或者平均響應(yīng)延遲間隔時間(例如以請求數(shù)x或時間量x平均的任何數(shù)量的延遲間隔)比閾值要大,則一個客戶端或者應(yīng)用發(fā)出的請求可用確定為長輪詢請求。
所述閾值可以通過其它客戶端的發(fā)出的請求的響應(yīng)延遲間隔時間來確定,例如,通過請求/響應(yīng)追蹤引擎238b或者通過應(yīng)用配置文件生成器239(例如響應(yīng)延遲間隔時間追蹤器239a)。其它客戶端可能屬于相同的移動設(shè)備,其閾值通過移動設(shè)備的組件來在本地確定。例如,可以在所有網(wǎng)絡(luò)的所有資源服務(wù)器上為所有請求來確定閾值。例如,這個閾值可以被設(shè)定為一個特定的常量(例如30秒),用于所有請求或者沒有一個可適用的閾值(例如如果D大于30秒,檢測到長輪詢)的任何請求。
在某些實施例中,其它的客戶端屬于不同的移動設(shè)備,并且閾值可用通過一個代理服務(wù)器(例如圖3A-B中所顯示的主機(jī)300的代理服務(wù)器325)來確定,這個代理服務(wù)器是所述移動設(shè)備外部的并且能夠通過無線網(wǎng)絡(luò)與多臺不同的移動設(shè)備相通訊,參照圖3B將做進(jìn)一步描述。
在一個實施例中,緩存策略管理器245將輪詢調(diào)度發(fā)送給代理服務(wù)器(例如圖1B和圖3A例子里的代理服務(wù)器125或者325),可用于代理服務(wù)器監(jiān)控內(nèi)容源,例如,改變的或者新的內(nèi)容(更新與請求或者應(yīng)用相關(guān)聯(lián)的緩存響應(yīng)不同的響應(yīng))。發(fā)送給代理服務(wù)器的輪詢調(diào)度可包括多種時間參數(shù),時間參數(shù)包含有但不限制于間隔(從請求1到請求2的時間)或者間隔外的時間(等待響應(yīng)的時間,例如所用到的長輪詢)。時間間隔‘RI’、‘D’、‘RT’和/或‘IT’或者上述數(shù)值的一些統(tǒng)計學(xué)處理(例如平均值、標(biāo)準(zhǔn)偏差等)將全部或者部分送至所述代理服務(wù)器。
例如,當(dāng)本地代理服務(wù)器275發(fā)現(xiàn)一個長輪詢的情況下,請求/響應(yīng)時序中的各種不同時間間隔(例如‘D’、RT’和/或‘IT’)被送至代理服務(wù)器325以用于輪詢內(nèi)容源(例如應(yīng)用服務(wù)器/內(nèi)容主機(jī)110)。本地代理服務(wù)器275可以為代理服務(wù)器325標(biāo)識,要監(jiān)控的給定應(yīng)用或者請求是一個長輪詢請求(例如指示所述代理服務(wù)器設(shè)置一個“長輪詢標(biāo)志”)。另外,當(dāng)代表移動設(shè)備發(fā)送持續(xù)連接跡象時,所述代理服務(wù)器利用各種時間間隔來確定。
當(dāng)檢測到來自于應(yīng)用服務(wù)器/內(nèi)容源的新的或者變化的數(shù)據(jù)(例如,更新的響應(yīng))時,緩存策略管理器245的本地緩存無效驗證器244可以使本地高速緩存存儲器里的緩存元素對于給定請求無效。基于接收到來自于代理服務(wù)器(例如代理服務(wù)器325或者主機(jī)服務(wù)器300)的通知的輸出請求,緩存響應(yīng)可以被確定為無效的。給移動客戶端的請求提供響應(yīng)的來源可以被監(jiān)控到,來確定儲存于移動設(shè)備250的儲存器里的用于請求的存儲響應(yīng)的相關(guān)性。例如,當(dāng)所述儲存響應(yīng)對給定的請求或者給定的應(yīng)用不再有效時,本地緩存無效驗證器244可以進(jìn)一步移動/刪除來自于移動設(shè)備的儲存器的所述儲存響應(yīng)。
在一個實施例中,所述緩存響應(yīng)在再一次被提供給一個生成輸出請求的應(yīng)用,并確定所述緩存響應(yīng)不再有效之后,從緩存中移除。所述緩存響應(yīng)可以在沒有等待時間間隔或者有等待時間間隔后被再次提供(例如模擬長輪詢里的響應(yīng)延遲的特定的時間間隔)。在一個實施例中,所述時間間隔是指響應(yīng)延遲‘D’或者兩個或更多響應(yīng)延遲‘D’的平均值。
新的或者變化的數(shù)據(jù)可以,例如,被代理服務(wù)器(例如圖1B和圖3A例子里的代理服務(wù)器125或者325)所檢測到。當(dāng)一個提供給發(fā)送出的請求/輪詢的緩存條目被無效,用于移動設(shè)備250的無線電可以啟用來滿足隨后的輪詢請求,參考圖4B中的相互作用圖表作進(jìn)一步描述。
緩存策略管理器245的一個實施例包括一個緩沖器或者一個連接選擇引擎249,能夠通過一個應(yīng)用或者窗口小部件來決定是否用本地緩存條目來滿足移動設(shè)備250的輪詢/內(nèi)容請求。例如,本地代理服務(wù)器275或者緩存策略管理器245可以攔截移動設(shè)備上的應(yīng)用(例如,移動應(yīng)用)發(fā)出的輪詢請求,來聯(lián)系應(yīng)用服務(wù)器/內(nèi)容提供商。選擇引擎249可確定攔截的請求接收到的內(nèi)容是否作為緩存元素被儲存,以決定移動設(shè)備的無線電是否需要激活來滿足應(yīng)用(例如,移動應(yīng)用)發(fā)出的請求,還確定緩存響應(yīng)是否對使用該緩存響應(yīng)的在輸出請求響應(yīng)之前的輸出請求響應(yīng)仍然有效。
在一個實施例中,所述本地代理服務(wù)器275,對相關(guān)緩存內(nèi)容的存在并且仍然有效的確定進(jìn)行響應(yīng),可以從本地緩存中重新檢索復(fù)緩存元素為產(chǎn)生長輪詢請求的應(yīng)用(如,移動應(yīng)用)提供響應(yīng),因此移動設(shè)備的無線電沒有被激活用以提供對應(yīng)用(例如,移動應(yīng)用)響應(yīng)。一般地,本地代理服務(wù)器275為接收到的任何時候的輸出請求持續(xù)提供緩存響應(yīng)直到檢測到不同于緩存響應(yīng)的更新的響應(yīng)。
當(dāng)確定了緩存響應(yīng)不再有效,針對給定請求的一個新的請求通過無線網(wǎng)絡(luò)傳送以用于更新的響應(yīng)。這個請求可以被傳送至應(yīng)用服務(wù)器/內(nèi)容提供商(例如服務(wù)器/主機(jī)110)或者主機(jī)服務(wù)器(例如主機(jī)300上的代理服務(wù)器325)上的代理服務(wù)器,為了新的或者更新的響應(yīng)。在一個實施例中,如果在時間間隔內(nèi)新的響應(yīng)沒有被接收到,移動設(shè)備上緩存的緩存響應(yīng)被移除之前,可以作為輸出請求的響應(yīng)被再次提供。
圖2C描述了在圖2A中所示的分布式代理系統(tǒng)的客戶端的本地代理服務(wù)器275中的應(yīng)用行為檢測器236和緩存策略管理器245中組件的另一個例子的說明。圖示的應(yīng)用行為檢測器236和緩存策略管理器245,例如,能夠使本地代理服務(wù)器275檢測到緩存失敗,并執(zhí)行由指向失敗緩存的標(biāo)識符尋址的內(nèi)容的緩存。
在一個實施例中,緩存策略管理器245包括一個緩存失敗解決引擎221、一個標(biāo)識符成型器211、一個緩存適當(dāng)決策引擎246、一個輪詢調(diào)度發(fā)生器247、一個應(yīng)用協(xié)議模塊248、具有一個緩存查詢模塊229的緩存或者連接選擇引擎249、和/或一個本地緩存失效器244。所述緩存失敗解決引擎221進(jìn)一步包括一種模式提取模塊222和/或緩存失敗參數(shù)檢測器223。所述緩存失敗參數(shù)檢測器223進(jìn)一步包括一個隨機(jī)參數(shù)檢測器224和/或一個時間/日期參數(shù)檢測器226。一個實施例中進(jìn)一步包括耦合至所述決策引擎246的應(yīng)用緩存策略儲存庫243。
在一個實施例中,所述應(yīng)用行為檢測器236包括一個模式檢測器237、一個輪詢間隔檢測器238、應(yīng)用配置文件生成器239和/或一個優(yōu)先級引擎241。所述模式檢測器237進(jìn)一步包括一個緩存失敗參數(shù)檢測器223,也具有,例如,一個隨機(jī)參數(shù)檢測器233和/或一個時間/日期參數(shù)檢測器234。一個實施例中,進(jìn)一步包括一個耦合至所述應(yīng)用配置文件生成器239的應(yīng)用策略儲存庫242。所述應(yīng)用配置文件生成器239和所述優(yōu)先級引擎241已經(jīng)在圖2A中與所述應(yīng)用行為檢測器236的相聯(lián)系的描述了。
所述緩存失敗解決引擎221可檢測、識別、追蹤、管理和/或監(jiān)控采用標(biāo)識符和/或被標(biāo)識符(例如如URLs和/或URIs的資源識別器)尋址的內(nèi)容或內(nèi)容源(例如服務(wù)器或主機(jī))的一個或多個使得機(jī)制,該機(jī)制使得緩存失敗或者旨在使得緩存失敗。所述緩存失敗解決引擎221可以,例如,檢測來自于應(yīng)用或者客戶端生成的,標(biāo)識失敗或者可能的失敗緩存的給定數(shù)據(jù)請求,其中所述數(shù)據(jù)請求另外尋址來自主機(jī)或服務(wù)器(例如應(yīng)用服務(wù)器/內(nèi)容主機(jī)110或者310)的可緩存的內(nèi)容或響應(yīng)。
在一個實施例中,所述緩存失敗解決引擎221采用移動設(shè)備250檢測到的數(shù)據(jù)請求的標(biāo)識符檢測或者識別內(nèi)容源(例如應(yīng)用服務(wù)器/內(nèi)容主機(jī)110或者310)使用的緩存失敗機(jī)制。所述緩存失敗解決引擎221可檢測或者識別標(biāo)識符中可顯示緩存失敗機(jī)制的參數(shù)。例如,參數(shù)的格式、排列或者模式可以用于鑒定緩存失?。ɡ缒J教崛∧K222檢測或提取的模式、格式或排列)。
所述模式提取模塊222可分析進(jìn)入多個參數(shù)或者組件中的標(biāo)識符,并執(zhí)行每個參數(shù)相匹配的算法來識別任何一個或多個預(yù)先確定的格式(例如日期和/時間格式,如圖7中所舉例的參數(shù)702)。例如,從標(biāo)識符得到的相匹配的或者被解析出的參數(shù)可以用來(例如通過緩存失敗參數(shù)檢測器223)識別緩存失敗參數(shù),這里含有一個或者多個變化參數(shù)。
所述緩存失敗參數(shù)檢測器223,在一個實施例中,可檢測隨機(jī)參數(shù)(例如通過隨機(jī)參數(shù)檢測器224)和/或時間和/或日期參數(shù),這些代表性地用于緩存失敗。所述緩存失敗參數(shù)檢測器223可采用普通使用的格式檢測隨機(jī)參數(shù)(例如圖7中所描述的參數(shù)752)和/或時間/日期,并執(zhí)行模式匹配和測試。
除了檢測模式、格式、和/或排列,所述緩存失敗參數(shù)檢測器還能進(jìn)一步確定或證實一個給定的參數(shù)是否緩存失敗和尋址內(nèi)容能否被分布式緩存系統(tǒng)緩存下來。所述緩存失敗參數(shù)檢測器可以通過分析收到的被給定數(shù)據(jù)請求利用的標(biāo)識符的響應(yīng)來檢測它??傊?,當(dāng)對應(yīng)于多個數(shù)據(jù)請求的響應(yīng)相同的時候,標(biāo)識符中變化參數(shù)被標(biāo)記以指示緩存失敗,即使當(dāng)該多個數(shù)據(jù)請求使用對于多個數(shù)據(jù)請求中的每一個不同的變化參數(shù)的標(biāo)識符。
例如,至少需要兩個相同的響應(yīng)來確定指示緩存失敗的變化參數(shù)。在某些情況下,可能需要至少三個相同的響應(yīng)。確定給定請求之間的不同參數(shù)值緩存失敗的相同響應(yīng)的數(shù)量需求可能是特定應(yīng)用程序的、情境依賴的、和/或用戶依賴的/用戶指定的,或者是以上內(nèi)容的組合。這樣的需求也可能是通過分布式緩存系統(tǒng)靜態(tài)或動態(tài)調(diào)整的,以滿足特定的性能閾值和/或關(guān)于用戶體驗的顯式/隱式體驗。(例如,用戶或應(yīng)用是否收到響應(yīng)請求的相關(guān)/新鮮內(nèi)容)。可能需要更多相同的響應(yīng)來確認(rèn)緩存失敗,或者如果應(yīng)用由于響應(yīng)緩存而開始出現(xiàn)故障和/或是否用戶表示不滿(顯式用戶反饋),系統(tǒng)將給定參數(shù)視為用于緩存失敗,或系統(tǒng)檢測到用戶的失望(隱式用戶提示)。
緩存適當(dāng)決策引擎246能夠檢測、評估或決定內(nèi)容來源(例如,圖1B中的應(yīng)用服務(wù)器/內(nèi)容提供商110)的內(nèi)容是否與移動設(shè)備交互,是否有適于緩存的內(nèi)容。在某些情況下,基于一組標(biāo)準(zhǔn)(例如,指定正從內(nèi)容源中被請求的內(nèi)容的時間關(guān)鍵性的標(biāo)準(zhǔn)),確定來自于給定應(yīng)用服務(wù)器/內(nèi)容提供商的內(nèi)容(例如圖1B中的服務(wù)器/提供商)適于緩存。在一個實施例中,所述本地代理(例如,圖1B和圖2A中的本地代理175或275)申請一個選擇標(biāo)準(zhǔn)來儲存來自主機(jī)服務(wù)器的內(nèi)容,該內(nèi)容被應(yīng)用請求作為移動設(shè)備上本地緩存的已緩存元素,以此來滿足應(yīng)用的后續(xù)請求。
所述選擇標(biāo)準(zhǔn)也可以包括,舉例來說(但不作為限制),指示移動設(shè)備是否活躍或不活躍的移動設(shè)備的狀態(tài),網(wǎng)絡(luò)狀況,和/或無線電覆蓋統(tǒng)計。緩存適當(dāng)決策引擎能夠以標(biāo)準(zhǔn)中的任意一個或任意組合,以任一順序,識別適于緩存的來源。
一旦應(yīng)用服務(wù)器/內(nèi)容提供商識別或檢測到移動設(shè)備250上潛在適于本地緩存的內(nèi)容,所述緩存策略管理器245可以通過將從內(nèi)容源接收的內(nèi)容作為緩存元素存儲在移動設(shè)備250的本地緩存(例如,圖1B和圖2A中分別顯示的本地緩存185或285)中來繼續(xù)緩存從所標(biāo)識的源接收的相關(guān)內(nèi)容。所述內(nèi)容源也可以被與移動設(shè)備遠(yuǎn)程無線連接的代理服務(wù)器(例如,圖1B和圖3A例子中顯示的代理服務(wù)器125或325)識別,這樣所述代理服務(wù)器能夠監(jiān)控所述內(nèi)容源(例如,應(yīng)用服務(wù)器/內(nèi)容提供商)新的或改變了的數(shù)據(jù)。同樣的,代理服務(wù)器可以識別本地代理(例如,圖1B和圖2A分別顯示的本地代理175或275),這樣來自特定應(yīng)用服務(wù)器/內(nèi)容提供商的內(nèi)容被儲存為本地緩存中的已緩存元素。
在一個實施例中,緩存元素被儲存在本地緩存中與一個標(biāo)準(zhǔn)化版本的標(biāo)識符相聯(lián)系,標(biāo)識符使用一個或多個參數(shù)用于緩存失敗。標(biāo)識符可以通過標(biāo)識符標(biāo)準(zhǔn)化模塊來標(biāo)準(zhǔn)化,標(biāo)準(zhǔn)化過程可以包括一個或多個例子:將URI調(diào)度和宿主轉(zhuǎn)變成小寫,將百分比編碼的轉(zhuǎn)義字符大寫,刪除缺省端口,及刪除重復(fù)的斜杠。
在另一實施例中,所述標(biāo)識符可以通過刪除緩存失敗的參數(shù)和/或用一個靜態(tài)值代替該參數(shù)來標(biāo)準(zhǔn)化,所述靜態(tài)值可以用于響應(yīng)通過標(biāo)準(zhǔn)化器211或緩存失敗參數(shù)處理程序212來利用標(biāo)識符的請求而尋址或關(guān)聯(lián)已緩存響應(yīng)。例如,本地緩存285(圖2A顯示)中儲存的已緩存元素可以通過使用標(biāo)準(zhǔn)化版本的標(biāo)識符或標(biāo)識符的標(biāo)準(zhǔn)化版本的哈希值來識別。一個標(biāo)識符或所述標(biāo)準(zhǔn)化標(biāo)識符的哈希值可以由哈希引擎213產(chǎn)生。
一旦內(nèi)容在本地被緩存,所述緩存策略管理器245能夠接收進(jìn)一步輪詢請求來聯(lián)系內(nèi)容服務(wù)器,檢索本地緩存中的緩存元素以響應(yīng)移動設(shè)備250的輪詢請求,這樣,不用激活移動設(shè)備的無線電來服務(wù)輪詢請求。由于不需要使用網(wǎng)絡(luò)帶寬和其他資源來請求/接收可能未從在移動設(shè)備250處已經(jīng)接收的響應(yīng)改變的輪詢響應(yīng),因此通過本地緩存條目本地的進(jìn)行這樣的服務(wù)和滿足應(yīng)用(例如,移動應(yīng)用)請求允許了更有效的資源和移動網(wǎng)絡(luò)流量利用率和管理。
緩存策略管理器245的一個實施例包括一個輪詢調(diào)度發(fā)生器247,能為一個或多個移動設(shè)備250內(nèi)的應(yīng)用產(chǎn)生輪詢調(diào)度。輪詢調(diào)度能夠制定一個供代理服務(wù)器(例如,圖1B和圖3A例子中顯示的代理服務(wù)器125或325)使用的輪詢間隔來監(jiān)視一個或多個應(yīng)用的內(nèi)容來源。所述輪詢調(diào)度可以被確認(rèn),例如,根據(jù)移動設(shè)備內(nèi)容源的輪詢請求時間的間隔。在一個實施例中,應(yīng)用行為檢測器上的輪詢間隔檢測器可以監(jiān)視針對移動設(shè)備250中內(nèi)容源的輪詢請求,以便確定任意或所有應(yīng)用(例如,移動應(yīng)用)的輪詢請求之間的間隔。
在一個實施例中,所述緩存策略控制器245發(fā)送輪詢調(diào)度至代理服務(wù)器(例如,圖1B和圖3A例子中顯示的代理服務(wù)器125或325)且能被代理服務(wù)器用于監(jiān)視內(nèi)容源,例如,對于改變或新的內(nèi)容。當(dāng)檢測到應(yīng)用服務(wù)器/內(nèi)容源對于一個給定的請求有新的或改變的數(shù)據(jù)時,緩存策略控制器245上的本地緩存無效驗證器244能使本地緩存(例如,緩存185或285)中的緩存元素?zé)o效。新的或更改的數(shù)據(jù)能被代理服務(wù)器檢測到。當(dāng)一個給定請求/輪詢的緩存條目被無效和/或無效后被刪除(例如,從緩存中刪除)時,移動設(shè)備250上的無線電被用于(例如,通過本地代理或緩存策略控制器245)滿足后續(xù)的輪詢請求,進(jìn)一步的描述參照圖4B的交互圖。
在另一實施例中,所述代理服務(wù)器(例如,圖1B和圖3A例子中顯示的代理服務(wù)器125或325)在數(shù)據(jù)請求中使用資源標(biāo)識符的改進(jìn)版本來監(jiān)視給定內(nèi)容源(圖1A和圖1B顯示的用于處理數(shù)據(jù)請求的應(yīng)用服務(wù)器/內(nèi)容主機(jī)110)的新的或改變的數(shù)據(jù)。例如,在檢測到內(nèi)容源或標(biāo)識符以采用緩存失敗機(jī)制的情況下,可以使用修改的(例如,標(biāo)準(zhǔn)化的)標(biāo)識符來輪詢內(nèi)容源。改進(jìn)或標(biāo)準(zhǔn)化版本的標(biāo)識符能夠通過緩存策略控制器245,或者更具體地說是標(biāo)識符標(biāo)準(zhǔn)化器211上的緩存失敗參數(shù)處理器212與代理服務(wù)器聯(lián)系。
代理服務(wù)器使用的用于輪詢代表移動設(shè)備/應(yīng)用的內(nèi)容來源的改進(jìn)后的標(biāo)識符與標(biāo)準(zhǔn)化的標(biāo)識符可能相同或可能不同。例如,標(biāo)準(zhǔn)化的標(biāo)識符可能是被刪除了改變緩存失敗參數(shù)的原始標(biāo)識符,然而修改的標(biāo)識符使用一個替代參數(shù)來代替用于緩存失敗的參數(shù)(例如,改變參數(shù)被一個靜態(tài)值代替或其他已知的本地代理和/或代理服務(wù)器的預(yù)定值)。更改后參數(shù)可以由本地代理275確認(rèn)并與代理服務(wù)器相連。更改后參數(shù)也可能是由代理服務(wù)器產(chǎn)生的(例如,圖3C例子中顯示的標(biāo)識符修改模塊353)。
緩存策略管理器245的一個實施例包括一個緩存或內(nèi)容選擇引擎249,可以決定是否使用一個本地緩存條目來滿足一個通過應(yīng)用或窗口小程序在移動設(shè)備250上產(chǎn)生的輪詢/內(nèi)容請求。例如,本地代理275或緩存策略管理器245能夠攔截一個移動設(shè)備上應(yīng)用產(chǎn)生的與應(yīng)用服務(wù)器/內(nèi)容提供商商聯(lián)系的輪詢請求。所述選擇引擎249可以確認(rèn)收到的關(guān)于攔截請求的內(nèi)容是否被當(dāng)做緩存元素儲存在當(dāng)?shù)兀瑳Q定是否一個移動設(shè)備的無線電需要被激活以滿足應(yīng)用(例如,移動應(yīng)用)的請求。在一個實施例中,本地代理275為了確定相關(guān)緩存內(nèi)容的存在且仍然是有效的,可以檢索本地緩存的緩存元素來響應(yīng)應(yīng)用(例如,移動應(yīng)用),所述應(yīng)用產(chǎn)生了該輪詢請求,這樣,移動設(shè)備的無線電不用激活以為應(yīng)用(例如,移動應(yīng)用)提供響應(yīng)。
在一個實施例中,儲存于本地緩存器285(圖2A所示)中的所述緩存元素可用標(biāo)識符的標(biāo)準(zhǔn)版本或者標(biāo)識符的標(biāo)準(zhǔn)版本的哈希值來識別,例如,采用緩存查詢模塊229。緩存元素可與標(biāo)準(zhǔn)化的標(biāo)識符一起儲存,標(biāo)準(zhǔn)化的標(biāo)識符具有被移除或者被取代的緩存失敗參數(shù),這樣,相關(guān)的緩存元素在未來可被識別并恢復(fù),采用緩存失敗相同的類型來滿足其它請求。例如,當(dāng)用于隨后請求中的標(biāo)識符確定被用于相同的緩存失敗參數(shù),該標(biāo)識符的標(biāo)準(zhǔn)化版本會產(chǎn)生,并用于識別儲存于移動設(shè)備緩存器中的緩存響應(yīng)并被用來滿足數(shù)據(jù)請求。標(biāo)識符的哈希值或者標(biāo)準(zhǔn)化的標(biāo)識符可能通過標(biāo)識符標(biāo)準(zhǔn)化器211的哈希引擎213生成。
圖2D描述說明了本地代理275中附加組件的框圖,圖2A中所示的例子進(jìn)一步執(zhí)行基于應(yīng)用程序行為和/或用戶活動來執(zhí)行移動流量的分類和策略的實現(xiàn)。
本地代理275的一個實施方式中,用戶活動模塊215,進(jìn)一步包括一個或更多的用戶活動檢測器/追蹤器215a、用戶活動預(yù)測引擎215b和/或用戶預(yù)期管理器215c。應(yīng)用行為檢測器236還可以包括優(yōu)先級處理引擎241a、時間關(guān)鍵性檢測引擎241b、應(yīng)用狀態(tài)分類器241c和/或應(yīng)用流量分類器241d。本地代理275可以進(jìn)一步包括背光檢測器219和/或網(wǎng)絡(luò)配置選擇引擎251。所述網(wǎng)絡(luò)配置選擇引擎251進(jìn)一步包括無線生成標(biāo)準(zhǔn)選擇器251a、一個數(shù)據(jù)比率區(qū)分符251b、訪問通道選擇引擎251c和/或一個訪問點選擇器中的一個或多個。
在一個實施例中,應(yīng)用行為檢測器236可檢測、確定、識別或推斷移動設(shè)備250上的一個應(yīng)用的活動狀態(tài),流量源自或被導(dǎo)向(例如經(jīng)由應(yīng)用狀態(tài)分類器241c和/或應(yīng)用流量分類器241d)該移動設(shè)備?;顒訝顟B(tài)可以通過移動設(shè)備(通過應(yīng)用狀態(tài)分類器241c)上的應(yīng)用在前臺狀態(tài)還是在后臺狀態(tài)來確定,因為前臺應(yīng)用的流量與后臺應(yīng)用的流量可通過不同的方式處理。
在一個實施例中,活動狀態(tài)可以按啟發(fā)式的可靠性水平確定、檢測、識別或推斷,其基于移動設(shè)備250的背光狀態(tài)(例如通過背光檢測器219)或者在移動設(shè)備上的其他軟件代理或硬件傳感器,包括但不限于電阻傳感器、電容傳感器、環(huán)境光傳感器、運(yùn)動傳感器、觸摸傳感器等。在一般情況下,如果背光開啟,流量可以被視為正在或被確定為從活動的或處于前臺中的應(yīng)用產(chǎn)生,或者該流量是交互式的。此外,如果背光開啟,流量可以被視為或被確定來自用戶交互或用戶活動的流量,或包含用戶在某個時間段內(nèi)期望的數(shù)據(jù)的流量。
在一個實施例中,活動狀態(tài)被基于流量是否是交互式流量或維護(hù)流量來確定。交互式流量可以包括來自從用戶的應(yīng)用活動/交互直接產(chǎn)生之響應(yīng)和請求的事務(wù),并且可以包括用戶正在等待或預(yù)期接收的內(nèi)容或數(shù)據(jù)。維護(hù)流量可被用于支持不直接由用戶檢測到的應(yīng)用的功能。維護(hù)流量還包括可能發(fā)生響應(yīng)用戶動作的動作或事務(wù),但用戶沒有主動等待或預(yù)期響應(yīng)。
例如,在移動設(shè)備250上的郵件或消息刪除操作生成一個在服務(wù)器上刪除相應(yīng)郵件或消息的請求,但用戶通常不等待響應(yīng)。因此,這樣的請求可以被分類為維護(hù)流量或具有較低優(yōu)先級(例如通過優(yōu)先級處理引擎241a)的流量和/或非時間關(guān)鍵性(例如通過時間關(guān)鍵性檢測引擎214b)的流量。
與此相反,由用戶在移動設(shè)備250上發(fā)起的郵件“讀取”或消息“讀取”請求可以被歸類為“交互流量”,因為用戶請求讀取消息或郵件時通常在等待訪問內(nèi)容或數(shù)據(jù)。類似地,這樣的請求可以被歸類為具有較高優(yōu)先級(例如通過優(yōu)先級處理引擎241a)和/或時間關(guān)鍵/時間敏感(例如通過時間關(guān)鍵性檢測引擎241b)。
時間關(guān)鍵性檢測引擎241b可大致確定、識別、推斷包含在發(fā)送自移動設(shè)備250或發(fā)送至主機(jī)服務(wù)器(例如主機(jī)300)或應(yīng)用服務(wù)器(例如應(yīng)用服務(wù)器/內(nèi)容源110)的移動設(shè)備流量中數(shù)據(jù)的時間靈敏度。例如,時間敏感數(shù)據(jù)可以包括狀態(tài)更新、股票信息更新、即時通訊在線狀態(tài)信息、電子郵件或其他消息、手機(jī)游戲應(yīng)用產(chǎn)生的行動、網(wǎng)頁請求、位置更新等。根據(jù)內(nèi)容或請求性質(zhì),非時間敏感或時間關(guān)鍵性的數(shù)據(jù)可以包括刪除消息請求、標(biāo)記為已讀或已編輯的操作、添加好友或刪除好友請求等特定于應(yīng)用的操作、某些類型的消息或其他性質(zhì)不經(jīng)常變化的信息等等。在某些情況下,當(dāng)數(shù)據(jù)不是時間關(guān)鍵性時,其允許流量通過的時機(jī)是基于何時需要從移動設(shè)備250發(fā)送附加數(shù)據(jù)而設(shè)定的。例如,流量整形引擎255可以把流量與一個或多個后續(xù)事務(wù)調(diào)整,使其被一起在移動設(shè)備無線電(例如使用對齊模塊256和/或批處理模塊257)的單次啟動事件中發(fā)送。對齊模塊256也可以把被導(dǎo)向同一主機(jī)服務(wù)器的時間接近的輪詢請求進(jìn)行對齊,因為這些請求可能用相同的數(shù)據(jù)響應(yīng)。
在替代或組合中,活動狀態(tài)可以從評價、確定、評估、推斷、識別移動設(shè)備250上的用戶活動(例如通過用戶活動模塊215)確定。例如,用戶活動可以使用用戶活動跟蹤器215a直接檢測和跟蹤。然后,由此產(chǎn)生的流量可以被適當(dāng)歸類,從而用于后續(xù)處理以確定處理策略。此外,用戶活動可以由用戶活動預(yù)測引擎215b來預(yù)測或預(yù)期。通過預(yù)測用戶活動或預(yù)期用戶活動,預(yù)測后由此而產(chǎn)生的流量可以被視為是用戶活動產(chǎn)生的結(jié)果,并可被適當(dāng)分類以確定傳輸策略。
此外,用戶活動模塊215還可以管理用戶預(yù)期(例如通過用戶預(yù)期管理器215c和/或結(jié)合使用活動追蹤器215a和/或預(yù)測引擎215b),以確保流量被適當(dāng)歸類,從而大致滿足用戶預(yù)期。例如,用戶啟動操作應(yīng)被分析(例如通過預(yù)期管理器215c)以確定或推斷用戶是否將等待響應(yīng)。如果是這樣,這種流量應(yīng)按能夠使用戶在接收這種響應(yīng)或操作時不會經(jīng)歷令人不愉快延遲的策略來處理。
在一個實施例中,選擇新一代的無線標(biāo)準(zhǔn)網(wǎng)絡(luò),以供基于流量源自或被導(dǎo)向至的移動設(shè)備上應(yīng)用程序的活動狀態(tài)在無線網(wǎng)絡(luò)中的移動設(shè)備和主機(jī)服務(wù)器之間發(fā)送流量。可以選擇3G、3.5G、3G+、4G或LTE網(wǎng)絡(luò)等高級技術(shù)標(biāo)準(zhǔn),用于處理用戶交互、用戶活動所產(chǎn)生的流量,或含有用戶預(yù)期或等待數(shù)據(jù)的流量。對于響應(yīng)前臺活動的移動設(shè)備,也可選擇高級無線標(biāo)準(zhǔn)網(wǎng)絡(luò)用于傳輸包含在移動設(shè)備流量中的數(shù)據(jù)。
在為移動流量進(jìn)行流量分類或定義傳輸策略時,可以選擇網(wǎng)絡(luò)配置(例如通過網(wǎng)絡(luò)配置選擇引擎251)以在移動設(shè)備250上使用,用于在移動設(shè)備和代理服務(wù)器(325)和/或應(yīng)用服務(wù)器(例如應(yīng)用服務(wù)器/主機(jī)110)之間發(fā)送流量。所選擇的網(wǎng)絡(luò)配置可以基于由應(yīng)用行為模塊236收集的應(yīng)用活動狀態(tài)(例如后臺或前臺的流量)、應(yīng)用流量類別(例如交互或維護(hù)流量)、數(shù)據(jù)/內(nèi)容的任何優(yōu)先級、時間靈敏度/關(guān)鍵性方面的信息確定。
所述網(wǎng)絡(luò)配置選擇引擎251可選擇或者指定一個或多個生成標(biāo)準(zhǔn)(例如通過無線生成標(biāo)準(zhǔn)選擇器251a)、一個數(shù)據(jù)比率(例如通過數(shù)據(jù)比率區(qū)分符251b)、一個訪問通道(例如訪問通道選擇引擎251c)和/或一個任何結(jié)合的訪問點(例如通過訪問點選擇器251d)。
例如,當(dāng)活躍狀態(tài)與用戶交互或者在移動設(shè)備上的前臺時,可選擇或者指定更先進(jìn)的一代(例如3G、LTE或者4G或更后)用于流量。相反,當(dāng)檢測到應(yīng)用與用戶之間沒有交互,應(yīng)用位于移動設(shè)備的后臺,或者流量中包含的數(shù)據(jù)不是時間關(guān)鍵的或者另外確定具有較低優(yōu)先級中的一種或多種情況時,一種較舊的標(biāo)準(zhǔn)(例如2G、2.5G或者3G或者更老的)可指定用于流量。
同樣地,一個具有較慢數(shù)據(jù)速率的網(wǎng)絡(luò)配置可被指定用于流量,當(dāng)檢測到下述一種或多種情況時:應(yīng)用與用戶之間沒有交互,應(yīng)用位于移動設(shè)備的后臺,或者流量中包含的數(shù)據(jù)不是時間關(guān)鍵的。所述訪問通道(例如前向訪問信道或者專用信道)可被指定。
圖2E描述了圖2A中顯示的流量整形引擎255和應(yīng)用程序行為檢測器236中的附加組件例子的塊圖,其還能夠促進(jìn)傳輸至移動或?qū)拵гO(shè)備,或其他用戶的輸入數(shù)據(jù)的對齊,以優(yōu)化需要建立的用于通過無線網(wǎng)絡(luò)或?qū)拵ЬW(wǎng)絡(luò)接收數(shù)據(jù)的連接的數(shù)量。
在本地代理服務(wù)器275的一個實施例中,所述流量整形引擎255,除了所述對齊模塊256、批處理模塊257之外,還包括一個輪詢間隔調(diào)整器258。所述輪詢間隔調(diào)整器258可包括一個因素或者分母檢測引擎258a、一個關(guān)鍵應(yīng)用檢測器258b、一個關(guān)鍵間隔標(biāo)識符258c和/或一個輪詢間隔設(shè)置引擎258d。進(jìn)一步在一個實施例中,所述本地代理服務(wù)器275的應(yīng)用行為檢測器236進(jìn)一步包括一個輪詢間隔檢測器238。
在促進(jìn)跨越不同的服務(wù)器或者主機(jī)的數(shù)據(jù)突發(fā)到所述移動設(shè)備250的對準(zhǔn)中,本地代理服務(wù)器275可初始的確定、檢測、識別、計算、推斷、提取針對應(yīng)用或者移動客戶端的原始的或者默認(rèn)的輪詢間隔(例如通過所述輪詢間隔檢測器238)。原始的或者默認(rèn)的輪詢間隔是移動應(yīng)用本身和/或其主機(jī)(例如圖1A-1B所示的通信應(yīng)用服務(wù)器/內(nèi)容主機(jī)110)代表性的特性。所述輪詢間隔檢測器238可檢測到任何數(shù)量的或者所有的移動應(yīng)用的原始的或者默認(rèn)的輪詢間隔,其定期輪詢被代理服務(wù)器275用來基于那里已安裝的應(yīng)用和它們各自輪詢時間特性生成或者調(diào)整輪詢間隔以適用于設(shè)備250。
例如,設(shè)備250的應(yīng)用或者移動客戶端的輪詢時間間隔(原始的或默認(rèn)的)可以通過輪詢間隔調(diào)整器258使用。一般來說,基于第二服務(wù)的輪詢間隔來生成第一服務(wù)的調(diào)整輪詢間隔,第二服務(wù)可以由不同主機(jī)從第一服務(wù)(如,Twitter=服務(wù)1;ESPN.com=服務(wù)2)提供服務(wù)。針對第一服務(wù)和/或第二服務(wù)調(diào)整計算的調(diào)整輪詢間隔,可用于對齊至少一些由于移動設(shè)備上對第一和第二服務(wù)的訪問而從不同的主機(jī)接收到的流量。
例如,在一個實施例中,第一服務(wù)調(diào)整輪詢間隔可以是第一服務(wù)的原始輪詢間隔與第二服務(wù)的原始輪詢間隔相同的因子或分母 (例如,由因子或分母檢測引擎258a決定的),并且可以進(jìn)一步基于第一服務(wù)的原始輪詢間隔來確定。注意當(dāng)?shù)谝环?wù)的原始輪詢間隔和第二服務(wù)的輪詢間隔是彼此的因子或者分母時,第一服務(wù)的調(diào)整輪詢間隔不需要不同于第一服務(wù)原始輪詢間隔。
在一個實施例中,所述檢測引擎258a能夠進(jìn)一步確定第二服務(wù)的輪詢間隔的因子或分母的倍數(shù),并且第一服務(wù)的調(diào)整輪詢間隔是第二服務(wù)輪詢間隔的分母的因子或倍數(shù)的倍數(shù)。此外,所述引擎258a可確定移動設(shè)備250上多個應(yīng)用的多個默認(rèn)輪詢間隔的公因子或公分母的倍數(shù)。
此外,基于來自第一服務(wù)的流量的時間關(guān)鍵性相對與來自第二服務(wù)或移動設(shè)備250上的附加服務(wù)的流量的時間關(guān)鍵性可以進(jìn)一步確定、調(diào)整或重新配置(例如,通過輪詢間隔設(shè)置引擎258d) 第一服務(wù)的調(diào)整輪詢間隔。例如,關(guān)鍵應(yīng)用檢測器258b可以識別、檢測或接收輸入識別或指定移動設(shè)備250上一個或多個的應(yīng)用是比其它的更關(guān)鍵的(例如,更高優(yōu)先級的、時間敏感的內(nèi)容/流量、用戶首選應(yīng)用、操作系統(tǒng)支持的應(yīng)用、運(yùn)營贊助商內(nèi)容等等),并進(jìn)一步根據(jù)需要調(diào)整第一和/或第二服務(wù)的輪詢間隔。
例如,關(guān)鍵應(yīng)用檢測器258b可以將關(guān)鍵應(yīng)用識別為移動設(shè)備上所有應(yīng)用或正在應(yīng)用或嘗試數(shù)據(jù)突發(fā)對其的一組應(yīng)用中最時間關(guān)鍵的應(yīng)用。為了關(guān)鍵應(yīng)用(們),關(guān)鍵應(yīng)用的輪詢間隔被確定為一個最小的關(guān)鍵間隔(例如,通過關(guān)鍵間隔標(biāo)識符258c),不被賦予給一個關(guān)鍵應(yīng)用的更新的輪詢間隔的值所超過,這樣,數(shù)據(jù)的優(yōu)先級需要(例如,無論是用戶需要、裝置需要或應(yīng)用需要)從應(yīng)用服務(wù)器或內(nèi)容主機(jī)快速和及時的傳遞數(shù)據(jù)。
高優(yōu)先級信息/數(shù)據(jù)或應(yīng)用可以包括,例如,財務(wù)數(shù)據(jù)、體育數(shù)據(jù)或其他實際上不斷變化的數(shù)據(jù)、與先前的值沒有任何數(shù)據(jù)相關(guān)性的任何數(shù)據(jù),任何數(shù)據(jù)(例如,訂閱或提供的)用戶希望立即實時或接近實時的報告,任何被指示為實時的特定特征,近實時特性的應(yīng)用服務(wù)器/內(nèi)容主機(jī)(例如,實時更新狀態(tài)、或?qū)崟r通知、優(yōu)先郵件或其他信息、及時通信消息等等)或者服務(wù)任何類型的高優(yōu)先級/時間敏感內(nèi)容的應(yīng)用。
一旦在移動設(shè)備250上已經(jīng)設(shè)有一個或多個應(yīng)用的輪詢間隔,本地代理服務(wù)器275通信的輪詢調(diào)度包括代理服務(wù)器(例如,圖3A-3E的遠(yuǎn)程代理325)的調(diào)整輪詢間隔,用于在時間上對齊至少一些由于移動設(shè)備上對第一和第二服務(wù)以及任何附加服務(wù)的訪問而從不同主機(jī)接收的流量。
在一個實施例中,輪詢間隔設(shè)置引擎258d也可以選擇一個共同的起始時間點作為多個應(yīng)用的內(nèi)容主機(jī)服務(wù)輪詢間隔設(shè)置的初始輪詢。輪詢間隔設(shè)置引擎258d可以設(shè)置開始時間被錨定到設(shè)備250上的多個應(yīng)用中相同的絕對時間點。一般來說,應(yīng)用服務(wù)器/內(nèi)容主機(jī)通常是UTC,并使用NTP來保持在同一時間。例如,間隔設(shè)置引擎258d可以任意選擇分鐘標(biāo)記、秒標(biāo)記、小時標(biāo)記或其他時間指標(biāo),將其作為調(diào)整輪詢的一部分參數(shù)傳給遠(yuǎn)程代理服務(wù)器(例如,代理服務(wù)器325)。該標(biāo)記可以被所有應(yīng)用程序隨機(jī)選擇為共同的“初始時間t0”。
注意,雖然上面使用兩個應(yīng)用的例子的描述可以為移動設(shè)備250中任意或所有的應(yīng)用執(zhí)行相同的過程。在某些情況下,部分或全部的功能由一個或多個組件的輪詢間隔調(diào)整器258可以遠(yuǎn)程執(zhí)行,例如,在一個遠(yuǎn)程的代理服務(wù)器(例如,代理服務(wù)器325)上使用輪詢間隔可以檢測到本地移動設(shè)備250(例如,通過輪詢間隔檢測器238)。請注意,遠(yuǎn)程代理(例如,代理服務(wù)器325)可以接收跨多個設(shè)備的應(yīng)用的輪詢時間間隔和跟蹤多個設(shè)備的應(yīng)用的調(diào)整時間間隔,將通過圖3E的例子進(jìn)行進(jìn)一步描述。
圖3A描述了一框圖,該框圖示出了位于主機(jī)服務(wù)器300的分布式代理和緩存系統(tǒng)中的服務(wù)器端組件的示例,所述主機(jī)服務(wù)器300為了節(jié)約資源而管理無線網(wǎng)絡(luò)流量。所述服務(wù)器端代理(或代理服務(wù)器325)能進(jìn)一步基于應(yīng)用程序行為、內(nèi)容優(yōu)先級、用戶活動、和/或用戶期望對移動流量進(jìn)行分類和/或執(zhí)行投遞策略。
所述主機(jī)服務(wù)器300通常包括,例如,網(wǎng)絡(luò)接口308和/或一個或多個儲存庫312,314,316。注意所述服務(wù)器300可以是任何便攜/移動或非便攜設(shè)備、服務(wù)器、計算機(jī)集群和/或其他類型處理單元(例如,在圖11示例中示出的任意數(shù)量的機(jī)器),能夠接收或傳輸信號,以滿足通過包括任意有線或無線網(wǎng)絡(luò)的數(shù)據(jù)請求(例如,WiFi,蜂窩,藍(lán)牙等)。
所述網(wǎng)絡(luò)接口308可包括網(wǎng)絡(luò)模塊(們)或設(shè)備(們),該網(wǎng)絡(luò)模塊或設(shè)備能夠與在所述主機(jī)服務(wù)器300外部的實體在網(wǎng)絡(luò)中調(diào)節(jié)數(shù)據(jù),通過任何已知的和/或便捷的由所述主機(jī)和所述外部實體支持的通信協(xié)議。特別地,所述網(wǎng)絡(luò)接口308允許所述服務(wù)器300與多種設(shè)備通信,該多種設(shè)備包括移動手機(jī)設(shè)備350和/或一個或多個應(yīng)用服務(wù)器/內(nèi)容提供商310。
所述主機(jī)服務(wù)器300能存儲關(guān)于在連接元數(shù)據(jù)儲存庫312中的設(shè)備連接信息。另外,任何關(guān)于第三方應(yīng)用或內(nèi)容提供商的信息還能存儲在所述儲存庫312中。所述主機(jī)服務(wù)器300能存儲關(guān)于在設(shè)備信息儲存庫324中的設(shè)備信息(例如,硬件功能、性能、設(shè)備設(shè)置、設(shè)備語言、網(wǎng)絡(luò)功能、制造商、設(shè)備模型、OS、OS版等)。另外,所述主機(jī)服務(wù)器300能存儲關(guān)于在所述網(wǎng)絡(luò)服務(wù)提供商儲存庫316中的網(wǎng)絡(luò)提供商和多種網(wǎng)絡(luò)服務(wù)區(qū)域的信息。
由網(wǎng)絡(luò)接口308啟動的通信,允許設(shè)備350間的同步連接(例如,包括蜂窩連接)和/或與內(nèi)容服務(wù)器/提供商310的連接,以管理設(shè)備350和內(nèi)容提供商310之間的流量,用于優(yōu)化網(wǎng)絡(luò)資源利用和/或節(jié)約所被服務(wù)設(shè)備350上的能源(電池)消耗。所述主機(jī)服務(wù)器300能與由不同網(wǎng)絡(luò)設(shè)備提供商,和/或在相同/不同網(wǎng)絡(luò)服務(wù)區(qū)域內(nèi)服務(wù)的移動設(shè)備350通信。所述主機(jī)服務(wù)器300能操作設(shè)備350并與之相兼容,所述設(shè)備350具有不同類型或移動容量等級,包括通過此示例的方式但不限于1G,2G,2G遷移(2Gtransitional)(2.5G,2.75G),3G(IMT-2000),3G遷移(3.5G,3.75G,3.9G),4G(高級IMT),等。
通常,所述網(wǎng)絡(luò)接口308可能包括一個或多個網(wǎng)絡(luò)適配器卡、無線網(wǎng)卡(例如,SMS接口、WiFi接口、多種移動通信標(biāo)準(zhǔn)包括但不限于1G,2G,3G,3.5G,4G類型網(wǎng)絡(luò),如LTE,WiMAX等產(chǎn)生的接口)、藍(lán)牙、WiFi或任何其他是否通過路由器、接入點、無線路由器、交換機(jī)、多層交換機(jī)、協(xié)議轉(zhuǎn)換器、網(wǎng)關(guān)、網(wǎng)橋路由器、集線器、數(shù)字媒體接收器和/或中繼器連接的網(wǎng)絡(luò)。
所述主機(jī)服務(wù)器300能進(jìn)一步包括分布式代理和緩存系統(tǒng)的服務(wù)器端組件,所述系統(tǒng)能包括代理服務(wù)器325和服務(wù)器緩存335。在一實施例中,所述代理服務(wù)器325能包括HTTP訪問引擎345,緩存策略管理器355,代理控制器365,流量整形引擎375、新數(shù)據(jù)檢測器347和/或連接管理器395。
所述HTTP訪問引擎345可進(jìn)一步包括心跳管理器398;所述代理控制器365可進(jìn)一步包括數(shù)據(jù)無效驗證器368;所述流量整形引擎375可進(jìn)一步包括控制協(xié)議376和批處理模塊377。額外或少部分組件/模塊/引擎可包括在所述代理服務(wù)器325和每個所示組件中。
按照本發(fā)明所使用的情況,“模塊”、“管理器”、“處理程序”、“檢測器”、“接口”、“控制器”、“標(biāo)準(zhǔn)化器”、“發(fā)生器”、“無效驗證器”或“引擎”都包括了一個通用、專有或共享的處理器以及通常來說由處理器執(zhí)行的固件或軟件模塊。取決于特定實現(xiàn)或其他考慮,模塊、管理器、處理程序、檢測器、接口、控制器、標(biāo)準(zhǔn)化器、發(fā)生器、無效驗證器或引擎都可以被集中或使其功能被分布。模塊、管理器、處理程序、檢測器、接口、控制器、標(biāo)準(zhǔn)化器、發(fā)生器、無效驗證器或引擎可包括通用或?qū)S杏布?、固件或用于處理器?zhí)行的內(nèi)嵌于計算機(jī)的可讀(存儲)介質(zhì)的軟件中。按照本發(fā)明所使用的情況,計算機(jī)可讀介質(zhì)或計算機(jī)可讀存儲介質(zhì)旨在包括所有法定(例如在美國即根據(jù)35U.S.C.101)介質(zhì)并明確排除所有性質(zhì)為非法定的介質(zhì),其程度為該排除對包括計算機(jī)可讀(存儲)介質(zhì)是有效的的權(quán)利要求是必要的。已知法定計算機(jī)可讀介質(zhì)包括硬件(例如僅舉幾例——寄存器、隨機(jī)存取存儲器(RAM)、非易失性(NV)存儲器),但可以或可以不被限于硬件。
在向應(yīng)用服務(wù)器或內(nèi)容提供商310進(jìn)行應(yīng)用或內(nèi)容請求的設(shè)備(例如移動設(shè)備350)示例中,所述請求可被截獲并被路由至所述代理服務(wù)器325,所述代理服務(wù)器325可被耦合至所述設(shè)備350和所述應(yīng)用服務(wù)器/內(nèi)容提供商310。特別地,所述代理服務(wù)器能與移動設(shè)備350的本地代理(例如,分別在圖1和圖2中示例的代理175、275)通信,所述本地代理提出向所述代理服務(wù)器325的數(shù)據(jù)請求,在某些情況下用于進(jìn)一步處理,并且如有必要,用于傳輸對數(shù)據(jù)請求的響應(yīng)至所述應(yīng)用服務(wù)器/內(nèi)容服務(wù)器310。
在這個配置下,所述主機(jī)300,或在所述主機(jī)服務(wù)器300中的所述代理服務(wù)器325可利用由所述本地代理提供的智能信息,在優(yōu)化網(wǎng)絡(luò)和設(shè)備資源使用的方式下調(diào)節(jié)本地代理與設(shè)備通信。例如,所述代理服務(wù)器325能識別設(shè)備350上的用戶活動特性,以修改通信頻率。所述用戶活動特性可由例如在代理控制器365中的活動/行為感知模塊,通過由設(shè)備350上的本地代理收集的信息確定。
在一實施例中,通信頻率可由代理服務(wù)器325的連接管理器395控制,例如,調(diào)整內(nèi)容的推送頻率或更新至所述設(shè)備350。例如,當(dāng)用戶活動特性顯示所述用戶不活躍,推動頻率可被連接管理器395降低。在一實施例中,當(dāng)用戶活動特性顯示用戶在不活躍期后接著活躍時,所述連接管理器395能調(diào)整與設(shè)備350的通信頻率,發(fā)送因通信頻率降低而緩存至所述設(shè)備350的數(shù)據(jù)。
另外,所述代理服務(wù)器325包括多種請求、事務(wù)、會話、應(yīng)用和/或特殊事件的優(yōu)先級感知。該感知可由在設(shè)備350上的本地代理確定并提供給所述代理服務(wù)器325。代理服務(wù)器325的所述優(yōu)先級感知模塊367通常能評估多個事件或應(yīng)用的優(yōu)先級(例如,包括時間緊迫性和時間敏感性等);另外,所述優(yōu)先級感知模塊367能追蹤由設(shè)備350的本地代理確定的優(yōu)先級。
在某一實施例中,通過優(yōu)先級感知,所述連接管理器395可進(jìn)一步修改服務(wù)器300與設(shè)備350的通信頻率(例如,如無線控制器396控制的使用或無線頻率)。例如,當(dāng)符合標(biāo)準(zhǔn)的重要/優(yōu)先級數(shù)據(jù)或更新值變得可被發(fā)送時,所述服務(wù)器300可通知設(shè)備350,從而在并未準(zhǔn)備使用無線電時請求使用無線電。
在一實施例中,代理服務(wù)器325能檢測事件(例如,事務(wù)、內(nèi)容接收來自服務(wù)器/提供商310的數(shù)據(jù))的多種發(fā)生并允許所述事件積累批量傳輸至設(shè)備350。批量傳輸可被積累,且事件傳輸可基于由模塊367和/或366追蹤的優(yōu)先級感知和/或用戶活動/應(yīng)用行為感知被延遲。例如,多個事件(較低優(yōu)先級的時間)批量傳輸至設(shè)備350,當(dāng)較高優(yōu)先級(達(dá)到閾值或標(biāo)準(zhǔn))的事件在服務(wù)器300處被檢測到時,可由所述批量模塊377啟動。另外,當(dāng)服務(wù)器接收自設(shè)備350的數(shù)據(jù)時,來自服務(wù)器300的批量傳輸被觸發(fā),表明所述設(shè)備無線電已準(zhǔn)備使用且因此開啟。在一實施例中,代理服務(wù)器325能在批量中排序每個信息/數(shù)據(jù)包,用于基于每個事件/事務(wù)的優(yōu)先級的傳輸,因此一旦連接丟失或電池枯竭等,較高優(yōu)先內(nèi)容可被首先發(fā)送。
在一實施例中,所述服務(wù)器300緩存數(shù)據(jù)(例如,如由所述緩存策略管理器管理的數(shù)據(jù)),這樣可以修改(例如,降低)通過網(wǎng)絡(luò)(例如,蜂窩網(wǎng)絡(luò))與設(shè)備350的通信頻率。數(shù)據(jù)可被緩存,例如,在所述服務(wù)器緩存335中,用于之后讀取或批量發(fā)送至設(shè)備,以可能減少開啟設(shè)備350無線電的需要。所述服務(wù)器緩存335可部分或全部在主機(jī)服務(wù)器300內(nèi)部,盡管圖3A示例中在主機(jī)300的外部示出。在某些情況下,服務(wù)器緩存335可與另一個實體(例如,選擇緩存代理服務(wù)器199在圖1B示例中示出)管理的另一緩存相同和/或部分或全部集成,諸如應(yīng)用服務(wù)器/內(nèi)容提供商310、網(wǎng)絡(luò)服務(wù)提供商或另一第三方管理的緩存。
在一實施例中,內(nèi)容緩存在主機(jī)服務(wù)器300的協(xié)助下在設(shè)備350本地處完成。例如,在主機(jī)服務(wù)器300中的代理服務(wù)器325能請求查詢應(yīng)用服務(wù)器/提供商310并監(jiān)測響應(yīng)變化。當(dāng)變化或新響應(yīng)被檢測到時(例如,通過新數(shù)據(jù)檢測器347),所述代理服務(wù)器325能通知移動設(shè)備350,使得在設(shè)備350上的本地代理能作出使作為在本地緩存中的任何存儲的相關(guān)緩存條目無效(例如,顯示過時)的決定。另外,數(shù)據(jù)無效驗證器模塊368能自動指令設(shè)備350的本地代理基于接收來自應(yīng)用服務(wù)器/提供商310的響應(yīng)去無效某緩存數(shù)據(jù)。所述緩存數(shù)據(jù)被標(biāo)記為無效,并能在新內(nèi)容從內(nèi)容服務(wù)器310接收時被替代或刪除。
注意所述數(shù)據(jù)變化可被檢測器347用一種或多種方法檢測。例如,服務(wù)器/提供商310可在發(fā)生變化時通知主機(jī)服務(wù)器300。所述變化還可在主機(jī)服務(wù)器300響應(yīng)源服務(wù)器/提供商310的直接輪詢處檢測到。在一些情況下,代理服務(wù)器325能額外在設(shè)備350上預(yù)載具有新的/更新的數(shù)據(jù)的本地緩存。這可在主機(jī)服務(wù)器300檢測到移動設(shè)備上的無線電已準(zhǔn)備使用或在服務(wù)器具有額外發(fā)送至設(shè)備350的內(nèi)容/數(shù)據(jù)時被實現(xiàn)。
一個或多個上述機(jī)制可基于應(yīng)用(例如,用于不同服務(wù)器/提供商310的不同策略)同步實施或調(diào)整/配置。在一些情況下,源提供商/服務(wù)器310可通知主機(jī)300事件類型(例如,事件滿足優(yōu)先閾值級)。另外,提供商/服務(wù)器310可被配置為在特定時間間隔下通知主機(jī)300,而不管事件優(yōu)先級。
在一實施例中,主機(jī)300的代理服務(wù)器325能在將結(jié)果返回到移動設(shè)備之前監(jiān)測/追蹤響應(yīng),該響應(yīng)針對來自內(nèi)容源的數(shù)據(jù)請求所接收的針對改變的結(jié)果的響應(yīng);當(dāng)內(nèi)容源的數(shù)據(jù)請求具有返回給移動設(shè)備的相同結(jié)果時,該監(jiān)測可能合適,因此防止網(wǎng)絡(luò)/能源消耗在當(dāng)沒有新變化被特定請求時而被使用。設(shè)備350的本地代理能指令代理服務(wù)器325完成該監(jiān)測或代理服務(wù)器325能在接收到特定數(shù)量的相同響應(yīng)(例如,或者許多在某一時期內(nèi)的相同響應(yīng))時自動啟動這樣的處理。
在一實施例中,服務(wù)器300,通過活動/行為感知模塊366,能夠在設(shè)備處識別或檢測用戶活動,該設(shè)備與移動設(shè)備350分離。例如,模塊366可檢測到用戶信息收件箱(例如,郵件或收件箱類型)被訪問。這顯示用戶與他/她的應(yīng)用使用除所述移動設(shè)備350外的設(shè)備進(jìn)行交互,并不需要頻繁更新,如果發(fā)生的話。
在該情況下,所述服務(wù)器300因此能降低新的或更新的內(nèi)容被發(fā)送到移動設(shè)備350的頻率,或經(jīng)過所有通信,只要檢測到用戶正在使用另一設(shè)備進(jìn)行訪問。該降頻可能是特定應(yīng)用的(例如,用于用戶與另一設(shè)備交互的應(yīng)用),或它可能是一般性降頻(例如,因為用戶被檢測到與一服務(wù)器或一應(yīng)用通過另一設(shè)備進(jìn)行交互,他/她還能使用其訪問其他服務(wù))至所述移動設(shè)備350。
在一實施例中,所述主機(jī)服務(wù)器300能夠代表設(shè)備350輪詢內(nèi)容源310,以節(jié)約設(shè)備350上的能量或電池消耗。例如,在移動設(shè)備350上的特定應(yīng)用可以用可預(yù)測的重復(fù)方式輪詢其相應(yīng)的服務(wù)器310。此類重復(fù)或其他類型的應(yīng)用行為可以通過代理控制器365的活動/行為模塊366進(jìn)行跟蹤。因此主機(jī)服務(wù)器300可以針對移動設(shè)備350上的應(yīng)用輪詢內(nèi)容源310,否則其將由設(shè)備350通過無線執(zhí)行(例如包括蜂窩連接)。主機(jī)服務(wù)器可通過HTTP訪問引擎345來建立HTTP連接的方式,或通過無線控制器396從蜂窩網(wǎng)絡(luò)來連接到源310的方式,以輪詢源310是否有新的或有變化的數(shù)據(jù)。當(dāng)檢測到新的或有變化的數(shù)據(jù)時,新數(shù)據(jù)檢測器347可以通知設(shè)備450這樣的數(shù)據(jù)對設(shè)備450可用,并且/或者將新的/有變化的數(shù)據(jù)提供給設(shè)備350。
在一實施例中,連接管理器395確定移動設(shè)備350是不可用的(例如無線被關(guān)閉),并且利用SMS將內(nèi)容發(fā)送到設(shè)備350,例如通過圖1B例子中的SMSC。SMS用于傳輸失效消息、失效消息的批次,或者,甚至在內(nèi)容小到足以放入幾條(通常為一或兩條)SMS消息中的情況下也可傳輸內(nèi)容。這避免了訪問無線信道來發(fā)送附加信息的需要。主機(jī)服務(wù)器300可使用SMS進(jìn)行優(yōu)先級高于閾值或滿足其他某種條件的特定事務(wù)或響應(yīng)。服務(wù)器300還可以利用SMS作為帶外觸發(fā)器來維持或喚醒的IP連接,作為保持永遠(yuǎn)在線IP連接的替代。
在一實施例中,代理服務(wù)器325中的連接管理器395(例如心跳管理器398)可以代表所連接的設(shè)備350生成和/或傳輸心跳消息,以保持與提供商310的后臺連接,用于在設(shè)備上350上運(yùn)行應(yīng)用。
例如,在分布式代理系統(tǒng)中,設(shè)備450上的本地緩存可以防止用于維持應(yīng)用所需TCP/IP連接需要的任何或所有心跳消息被通過蜂窩或其他網(wǎng)絡(luò)發(fā)送,而是依賴主機(jī)服務(wù)器300上的代理服務(wù)器325來生成和/或發(fā)送心跳消息來維持與后臺的連接(例如圖1A的例子中的應(yīng)用服務(wù)器/提供商110)。代理服務(wù)器可以生成獨(dú)立于移動設(shè)備上本地代理的操作的?;睿ㄐ奶┫ⅰ?/p>
儲存庫312、314和/或316可以另外存儲軟件、描述性數(shù)據(jù)、圖像、系統(tǒng)信息、驅(qū)動程序和/或由主機(jī)服務(wù)器300和/或任何其他服務(wù)器的其它組件用于操作的任何其他數(shù)據(jù)項。儲存庫可以由一個數(shù)據(jù)庫管理系統(tǒng)(DBMS)管理,例如其可以是但不限于Oracle、DB2、MicrosoftAccess、MicrosoftSQLServer、PostgreSQL、MySQL和FileMaker等。
這些庫可以通過面向?qū)ο蟮募夹g(shù)和/或經(jīng)由文本文件來實現(xiàn),并且可以由分布式數(shù)據(jù)庫管理系統(tǒng)、面向?qū)ο蟮臄?shù)據(jù)庫管理系統(tǒng)(OODBMS)(例如ConceptBase、FastDBMainMemoryDatabaseManagementSystem、JDOInstruments、ObjectDB等)、對象關(guān)系數(shù)據(jù)庫管理系統(tǒng)(ORDBMS)(例如Informix、OpenLinkVirtuoso、VMDS等)、一個文件系統(tǒng)和/或任何其它方便的或已知的數(shù)據(jù)庫管理包來管理。
圖3B描述了一框圖,所述框圖示出了在圖3A示例的緩存系統(tǒng)中的緩存策略管理器355內(nèi)的組件的進(jìn)一步示例,其能緩存且適應(yīng)用于應(yīng)用程序(例如移動應(yīng)用)行為和/或網(wǎng)絡(luò)條件的緩存條件。
所述緩存策略管理器355,在一實施例中,可進(jìn)一步包括元數(shù)據(jù)生成器303、緩存檢查引擎305、應(yīng)用協(xié)議模塊356、具有輪詢調(diào)度管理器358的內(nèi)容源監(jiān)測引擎357、響應(yīng)分析器361、和/或更新的或新的內(nèi)容檢測器359。在一實施例中,所述輪詢調(diào)度管理器358進(jìn)一步包括主機(jī)時序模擬器358a,長輪詢請求檢測器/管理器358b,調(diào)度更新引擎358c,和/或時間調(diào)整引擎358d。所述元數(shù)據(jù)生成器303和/或緩存檢查引擎305能耦合至所述緩存335(或,服務(wù)器緩存)用于修改,或增加緩存條目或在其進(jìn)行查詢。
在一實施例中,所述代理服務(wù)器(例如圖1B和圖3A示例的代理服務(wù)器125或325)可通過監(jiān)測引擎357監(jiān)測內(nèi)容源新的或變化的數(shù)據(jù)。所述代理服務(wù)器,如圖所示,是在圖2A-B中移動設(shè)備250外部的實體。所述內(nèi)容源(例如,圖1B中應(yīng)用服務(wù)器/內(nèi)容提供商110)可以是一個被代理服務(wù)器所識別為具有本地緩存于移動設(shè)備(例如,移動設(shè)備150或250)上的內(nèi)容的源。所述內(nèi)容源可被監(jiān)測,例如通過監(jiān)測引擎357在一頻率下監(jiān)測,該頻率是基于移動設(shè)備上內(nèi)容源的輪詢頻率。所述輪詢調(diào)度可由例如本地代理產(chǎn)生并發(fā)送至代理服務(wù)器。所述輪詢頻率可被輪詢調(diào)度管理器358追蹤和/或管理。
例如,所述代理服務(wù)器能代表移動設(shè)備輪詢所述主機(jī)(例如,內(nèi)容提供商/應(yīng)用服務(wù)器)并通過主機(jī)時序模擬器358a模擬客戶端至主機(jī)的輪詢行為。輪詢行為可被模擬以包括在與主機(jī)(例如,通過長輪詢請求檢測器/管理器358b)持久連接中經(jīng)歷的長輪詢請求-響應(yīng)時序的特性。注意一旦輪詢間隔/行為被設(shè)置,在設(shè)備端的本地代理275和/或在服務(wù)器端的代理服務(wù)器325能驗證應(yīng)用服務(wù)器/內(nèi)容主機(jī)服務(wù)器是否匹配或是否能由預(yù)測形式所表示。通常,本地代理和/或代理服務(wù)器能檢測差異并在核實時,重估并計算、確定或評估另一輪詢間隔。
在一實施例中,在分布式代理的服務(wù)器端的緩存策略管理器355,能與移動設(shè)備上的代理服務(wù)器275連接或獨(dú)立于代理服務(wù)器,識別或檢測長輪詢請求。例如,所述緩存策略管理器355能確定閾值,該閾值被用于在請求-響應(yīng)時序中比較響應(yīng)延遲間隔時間(間隔時間“D”在圖17A-B的示例性時序圖中示出)用于應(yīng)用請求,以識別或檢測長輪詢請求,可能的長輪詢請求(例如,客戶端與主機(jī)通信的持久連接的請求,包括但不限于,長期保留的HTTP請求、使COMET形式推送的長久連接,HTTP流請求等),或另外可被認(rèn)為長輪詢請求的其他請求。
例如,閾值可由代理325使用移動設(shè)備處的客戶端/應(yīng)用產(chǎn)生的請求的響應(yīng)延遲間隔時間而確定,所述移動設(shè)備可由多種不同蜂窩或無線網(wǎng)絡(luò)服務(wù)。自位于所述主機(jī)300的代理325能夠通過多種網(wǎng)絡(luò)與多種移動設(shè)備通信起,緩存策略管理器355能在全局級訪問應(yīng)用程客戶信息,該全局級可被用于設(shè)定閾值來分類并檢測長輪詢。
通過在不同或相同網(wǎng)絡(luò)的設(shè)備的應(yīng)用上追蹤響應(yīng)延遲間隔時間,所述緩存策略管理器355能設(shè)置一個或多個閾值,以用于比較長輪詢檢測的響應(yīng)延遲間隔時間。由代理服務(wù)器設(shè)置的閾值325可以是靜態(tài)的或動態(tài)的,并與條件和/或生存時間(以相對或絕對值表示的過期時間/日期)相關(guān)聯(lián)。
另外,代理325的緩存策略管理器355能進(jìn)一步基于給定無線網(wǎng)絡(luò)、由給定運(yùn)營商(服務(wù)提供商)服務(wù)的網(wǎng)絡(luò)、或多種無線網(wǎng)絡(luò)的網(wǎng)絡(luò)延遲,全部或部分的確定閾值。所述代理325還可確定用于長輪詢請求識別的閾值,該長輪詢基于一個或多個應(yīng)用服務(wù)器/內(nèi)容提供商(例如,110)的延遲,應(yīng)用(例如移動應(yīng)用)或移動客戶端請求指向應(yīng)用服務(wù)器/內(nèi)容提供商。
代理服務(wù)器能在監(jiān)測內(nèi)容源處檢測新的或變化的數(shù)據(jù),并傳輸消息至移動設(shè)備通知該變化,該變化使移動設(shè)備(或在移動設(shè)備上的本地代理)能采取合適行動(例如,無效緩存在本地緩存內(nèi)的元素)。在一些情況下,代理服務(wù)器(例如,緩存策略管理器355)在檢測到新的或變化的數(shù)據(jù)時,還能在其緩存(例如,分別在圖1B和圖3A示例中的服務(wù)器緩存135或335)中存儲新的變化的數(shù)據(jù)。存儲在服務(wù)器緩存335中的新的/更新的數(shù)據(jù),可在一些情況下被使用,以滿足在移動設(shè)備處的內(nèi)容請求;例如,它可在代理服務(wù)器已通知移動設(shè)備新的/變化的內(nèi)容且本地緩存的內(nèi)容已被無效后使用。
元數(shù)據(jù)生成器303,與圖2B示例中所示的元數(shù)據(jù)生成器203相類似,能為移動設(shè)備250處的請求緩存的響應(yīng)產(chǎn)生元數(shù)據(jù)。元數(shù)據(jù)生成器303能為存儲在服務(wù)器緩存335內(nèi)的緩存條目產(chǎn)生元數(shù)據(jù)。類似地,緩存檢查引擎305可包括相同或相似功能,這些功能被描述用于圖2B示例中的緩存檢查引擎205。
響應(yīng)分析器361可執(zhí)行與在圖2B示例中所示的本地代理的響應(yīng)分析其相通或相似的方式分析在移動設(shè)備250處生成的請求而接收的響應(yīng)相關(guān)的任何或所有功能。因所述代理服務(wù)器325能夠接收從應(yīng)用服務(wù)器/內(nèi)容源310直接到移動設(shè)備250的響應(yīng),所述代理服務(wù)器325(例如,響應(yīng)分析器361)能完成相似響應(yīng)分析步驟以確定緩存性,如針對本地代理的響應(yīng)分析器所描述的。響應(yīng)分析流程示例還被描述與圖11-13示例中示出的流程圖相關(guān)聯(lián)??梢苑治鲰憫?yīng)以補(bǔ)充或代替可以在移動設(shè)備250上的本地代理275處執(zhí)行的分析。
進(jìn)一步,所述調(diào)度更新引擎358c能更新給定應(yīng)用服務(wù)器/內(nèi)容主機(jī)的輪詢間隔,該應(yīng)用服務(wù)器/內(nèi)容主機(jī)基于移動設(shè)備250處應(yīng)用的應(yīng)用請求間隔變化,如本地代理275中的調(diào)度更新引擎所描述的。時間調(diào)整引擎358d能設(shè)置初始時間,在該初始時間應(yīng)用服務(wù)器/內(nèi)容主機(jī)的輪詢將要開始阻止過期的內(nèi)容再次服務(wù),在如針對本地代理275內(nèi)的調(diào)度更新引擎所描述的服務(wù)刷新內(nèi)容之前。調(diào)度更新和時間調(diào)整算法均能與移動設(shè)備250的本地代理275處完成的相似過程相聯(lián)系或替換。
圖3C描述了一框圖,所述框圖示出了在圖3A示例中示出的分布式代理系統(tǒng)的服務(wù)器端上的代理服務(wù)器375中的緩存策略管理器355內(nèi)的組件的另一示例,其能管理和檢測緩存失敗機(jī)制并監(jiān)測內(nèi)容源。
在一個實施例中,緩存策略管理器355還可以包括一緩存失敗源管理器352,一具有輪詢調(diào)度管理器358的內(nèi)容源監(jiān)視引擎357,和/或更新的或新的內(nèi)容檢測器359。緩存失敗源管理器352 可以進(jìn)一步包括一標(biāo)識符修改模塊353和/或標(biāo)識符模式跟蹤模塊354。
在一個實施例中,代理服務(wù)器(例如,圖1B和圖3A中示例的代理服務(wù)器125或325)可以經(jīng)由監(jiān)視引擎357監(jiān)視一內(nèi)容源的新的或變化的數(shù)據(jù)。內(nèi)容源(例如, 圖1B的應(yīng)用服務(wù)器/內(nèi)容提供商110或圖3A的應(yīng)用服務(wù)器/內(nèi)容提供商310)可以是已經(jīng)被代理服務(wù)器(例如,由本地代理)識別為具有正被本地緩存在一移動設(shè)備上的內(nèi)容(例如,移動設(shè)備150或250)。 內(nèi)容源310可以被監(jiān)視,例如由監(jiān)視引擎357以基于移動設(shè)備處的內(nèi)容源的輪詢頻率的頻率。例如,可以由本地代理生成輪詢調(diào)度并將其發(fā)送到代理服務(wù)器325。輪詢頻率可以由輪詢調(diào)度管理器358跟蹤和/或管理。
在一個實施例中,代理服務(wù)器325在輪詢內(nèi)容源310中使用標(biāo)準(zhǔn)化標(biāo)識符或修改的標(biāo)識符來檢測新的或變化的數(shù)據(jù)(響應(yīng))。 標(biāo)準(zhǔn)化標(biāo)識符或修改的標(biāo)識符也可以由代理服務(wù)器325用于在服務(wù)器緩存335上存儲響應(yīng)。一般來說,當(dāng)對可緩存內(nèi)容采用緩存失敗機(jī)制時,可以使用標(biāo)準(zhǔn)化或修改的標(biāo)識符。緩存失敗機(jī)制可以是一諸如URI或URL的標(biāo)識符中的一改變參數(shù)的形式,并且可以包括改變時間/數(shù)據(jù)參數(shù),隨機(jī)變化參數(shù),或其他類型參數(shù)。
標(biāo)準(zhǔn)化標(biāo)識符或修改的標(biāo)識符刪除或以其他方式替換變化的參數(shù)以用于與后續(xù)請求相關(guān)聯(lián)并識別相關(guān)聯(lián)的響應(yīng),并且還可以用于輪詢內(nèi)容源。在一個實施例中,代理服務(wù)器325(分布式代理系統(tǒng)的服務(wù)器端組件)上的緩存策略管理器355的緩存失敗源管理器352(例如,標(biāo)識符修改器模塊353)來生成修改的標(biāo)識符。修改的標(biāo)識符可以使用一替代參數(shù)(其在一段時間內(nèi)通常是靜態(tài)的)來代替用于緩存失敗的變化參數(shù)。
緩存失敗源管理器352可選地包括標(biāo)識符模式跟蹤模塊354,以跟蹤,存儲和監(jiān)視對一個或多個內(nèi)容源(例如,應(yīng)用服務(wù)器/內(nèi)容主機(jī)110或310)的內(nèi)容進(jìn)行尋址的一個或多個標(biāo)識符的各種修改,以連續(xù)地驗證由代理服務(wù)器325使用來輪詢內(nèi)容源的修改的標(biāo)識符和/或標(biāo)準(zhǔn)化的標(biāo)識符如預(yù)測的或預(yù)期的那樣工作(例如,接收相同的響應(yīng)或者與原始的未修改的標(biāo)識符相比仍然相關(guān)的響應(yīng))。
在模式跟蹤模塊354檢測到一在內(nèi)容源上導(dǎo)致不穩(wěn)定或不可預(yù)測的行為(例如,將發(fā)送的意外響應(yīng))的標(biāo)識符的修改或標(biāo)準(zhǔn)化的情況下,跟蹤模塊354可以記錄修改并指導(dǎo)緩存失敗源管理器352生成另一修改/標(biāo)準(zhǔn)化,或通知本地代理(例如,本地代理275)生成用于輪詢內(nèi)容源的另一修改/標(biāo)準(zhǔn)化。替代地或并行地,來自移動設(shè)備(例如,移動設(shè)備250)上的給定移動應(yīng)用/客戶端的請求可以臨時地通過網(wǎng)絡(luò)發(fā)送到內(nèi)容源,以提供給移動設(shè)備的直接響應(yīng)和/或直到其工作可以生成對一標(biāo)識符的一修改。
在一個實施例中,當(dāng)針對已經(jīng)存儲在移動設(shè)備(例如,移動設(shè)備250)的一本地緩存(例如,緩存285)上的響應(yīng)檢測到新的或改變的數(shù)據(jù)時,響應(yīng)被存儲為服務(wù)器緩存中的服務(wù)器緩存元素。因此,移動設(shè)備或本地代理275可以連接到代理服務(wù)器325以檢索新的或改變的數(shù)據(jù),以便對先前在本地緩存285中本地緩存的一請求(現(xiàn)在無效,過時或以其他方式確定為不相關(guān))的一響應(yīng)。
代理服務(wù)器325可以在一被監(jiān)視的應(yīng)用服務(wù)器/內(nèi)容主機(jī)310處檢測新的或改變的數(shù)據(jù),并且向移動設(shè)備發(fā)送消息,通知它這樣的改變,使得移動設(shè)備(或移動設(shè)備上的本地代理)可以采取適當(dāng)?shù)膭幼鳎ɡ纾贡镜鼐彺嬷械木彺嬖責(zé)o效)。在一些情況下,代理服務(wù)器(例如,緩存策略管理器355)在檢測到新的或改變的數(shù)據(jù)時,還可以將新的或改變的數(shù)據(jù)存儲在其緩存(例如,分別為圖1B和圖3A的示例的服務(wù)器緩存135或335)中。在一些情況下,存儲在服務(wù)器緩存中的更新的/新的數(shù)據(jù)可以用于滿足移動設(shè)備處的內(nèi)容請求; 例如,它可以在代理服務(wù)器已經(jīng)通知移動設(shè)備新的/改變的內(nèi)容并且本地緩存的內(nèi)容已經(jīng)被無效之后使用。
圖3D描繪了在圖3A的示例中所示的代理服務(wù)器325中的附加組件的示例的一框圖,其還能夠基于應(yīng)用行為和/或流量優(yōu)先級來執(zhí)行移動流量的分類和策略的實現(xiàn)。
在代理服務(wù)器325的一個實施例中,流量整形引擎375還耦合到一流量分析器336,用于將移動流量分類以用于針對移動流量和針對一個或多個移動設(shè)備(例如,圖2A-2D的移動設(shè)備250)或一應(yīng)用服務(wù)器/內(nèi)容主機(jī)(例如,圖1A-1B的110)的流量的策略的定義和實現(xiàn)。一般來說,代理服務(wù)器325遠(yuǎn)離移動設(shè)備并且遠(yuǎn)離主機(jī)服務(wù)器,如圖1A-1B的示例所示。代理服務(wù)器325或主機(jī)服務(wù)器300可以監(jiān)視多個移動設(shè)備的業(yè)務(wù),并且能夠?qū)Σ煌苿釉O(shè)備的進(jìn)行流量分類和流量策略設(shè)計。
另外,代理服務(wù)器325或主機(jī)服務(wù)器300可以與多個運(yùn)營商或網(wǎng)絡(luò)運(yùn)營商一起操作,并且可以實現(xiàn)與流量的分類和各種類別的流量策略的實現(xiàn)相關(guān)的運(yùn)營商特定的策略。例如,代理服務(wù)器325或主機(jī)服務(wù)器300的流量分析器336可以包括一優(yōu)先化引擎341a,一時間關(guān)鍵性檢測引擎341b,一應(yīng)用狀態(tài)分類器341c,和/或一應(yīng)用流量分類器341d中的一個或多個。
這些引擎或模塊中的每一個可以基于不同的無線運(yùn)營商來跟蹤被認(rèn)為是優(yōu)先級,時間關(guān)鍵性,背景/前景或交互/維護(hù)的不同標(biāo)準(zhǔn)。不同的移動設(shè)備類型(例如,設(shè)備模型,制造商,操作系統(tǒng)等)也可能存在不同的標(biāo)準(zhǔn)。在一些情況下,移動設(shè)備的用戶可以調(diào)整關(guān)于流量類別的設(shè)置或標(biāo)準(zhǔn),并且代理服務(wù)器325能夠跟蹤和實現(xiàn)這些用戶調(diào)整/配置的設(shè)置。
在一個實施例中,流量分析器336能夠檢測,確定,識別,或推斷在流量源自或被指向的一個或多個移動設(shè)備(例如,移動設(shè)備150或250)上的一應(yīng)用的活動狀態(tài),例如,經(jīng)由應(yīng)用狀態(tài)分類器341c和/或業(yè)務(wù)分類器341d。可以基于應(yīng)用在一個或多個移動設(shè)備上(經(jīng)由應(yīng)用狀態(tài)分類器341c)是否處于前臺或后臺狀態(tài)來確定活動狀態(tài),因為前臺應(yīng)用與后臺應(yīng)用的流量可以不同地處理以優(yōu)化網(wǎng)絡(luò)使用。
在替代或組合中,應(yīng)用的活動狀態(tài)可以由無線電連接的移動設(shè)備(例如,經(jīng)由本地代理中的應(yīng)用行為檢測器)來確定并且被傳送到代理服務(wù)器325。例如,可以在基于移動設(shè)備(例如,通過背光檢測器)或移動設(shè)備上的其它軟件代理或硬件傳感器的背光狀態(tài)以啟發(fā)式的確定性水平來確定,檢測,識別或推斷,包括但不限于,電阻傳感器,電容傳感器,環(huán)境光傳感器,運(yùn)動傳感器,觸摸傳感器等。一般來說,如果背光打開,則流量可被視為是或被確定為由活動的或前臺的應(yīng)用生成,或流量是交互的。另外,如果背光打開,則流量可以被視為是或確定為來自用戶交互或用戶活動的流量,或者包含用戶在一些時間段內(nèi)期望的數(shù)據(jù)的流量。
可以通過評價,確定,評估,推斷,識別移動設(shè)備250處的用戶活動(例如,經(jīng)由用戶活動模塊215)并傳送到代理服務(wù)器325來確定活動狀態(tài)。在一個實施例中,基于流量是交互流量還是維護(hù)流量來確定活動狀態(tài)。交互流量可以包括來自直接從與用戶活動/交互的應(yīng)用的響應(yīng)和請求的流量,并且可以包括用戶正在等待或期望接收的內(nèi)容或數(shù)據(jù)。 維護(hù)流量可以用于支持未被用戶直接檢測到的應(yīng)用的功能。維護(hù)流量還可以包括可以響應(yīng)于用戶動作而發(fā)生的動作或事務(wù),但是用戶沒有主動地等待或期待該響應(yīng)。
時間關(guān)鍵性檢測引擎341b通常可以確定,識別,推斷包含在從移動設(shè)備250或從主機(jī)服務(wù)器300或代理服務(wù)器325或者應(yīng)用服務(wù)器(例如應(yīng)用/內(nèi)容源110)發(fā)送到移動設(shè)備的流量中的數(shù)據(jù)的時間敏感性。例如,時間敏感數(shù)據(jù)可以包括狀態(tài)更新,股票信息更新,IM存在信息,電子郵件消息或其他消息,從移動游戲應(yīng)用生成的動作,網(wǎng)頁請求,位置更新等。
根據(jù)內(nèi)容或請求的性質(zhì),非時間敏感或時間關(guān)鍵性的數(shù)據(jù),根據(jù)內(nèi)容或請求的性質(zhì),可以包括刪除消息,標(biāo)記為已讀或已編輯的動作的請求,諸如添加好友或刪除好友的特定應(yīng)用動作,某些類型的消息或者不經(jīng)常因性質(zhì)改變的其他信息等。在一些情況下,當(dāng)數(shù)據(jù)不是時間關(guān)鍵性時,允許將流量發(fā)送到移動設(shè)備的定時基于何時存在需要發(fā)送到相同移動設(shè)備的附加數(shù)據(jù)。例如,流量整形引擎375可以將流量與將在移動設(shè)備無線電裝置的單個通電事件中一起發(fā)送的一個或多個后續(xù)事務(wù)(例如,使用對齊模塊378和/或批處理模塊377)對齊。對齊模塊378還可以將指向同一主機(jī)服務(wù)器的在時間上接近的輪詢請求對齊,因為這些請求可能用相同的數(shù)據(jù)來響應(yīng)。
一般來說,新的或改變的數(shù)據(jù)是否從主機(jī)服務(wù)器發(fā)送到移動設(shè)備,可以基于新的或改變的數(shù)據(jù)所關(guān)聯(lián)的移動設(shè)備上的應(yīng)用是否在前臺運(yùn)行,或者新的或改變的數(shù)據(jù)的優(yōu)先級或時間關(guān)鍵性來確定。如果應(yīng)用在移動設(shè)備上的前臺中,或者如果應(yīng)用處于前臺并且處于與移動設(shè)備上的用戶交互的活動狀態(tài),以及 /或用戶是否正在等待將在新的或改變的數(shù)據(jù)中提供的響應(yīng),則代理服務(wù)器325可以向移動設(shè)備發(fā)送新的或改變的數(shù)據(jù)。 代理服務(wù)器325(或流量整形引擎375)可以發(fā)送具有高優(yōu)先級或時間關(guān)鍵性的新的或改變的數(shù)據(jù)。
類似地,如果應(yīng)用在移動設(shè)備上的后臺,則代理服務(wù)器325(或流量整形引擎375)可以禁止新的或改變的數(shù)據(jù)的發(fā)送。如果用戶沒有在等待新的或改變的數(shù)據(jù)中提供的響應(yīng),則代理服務(wù)器325也可以禁止新的或改變的數(shù)據(jù)的發(fā)送; 其中所述禁止由代理服務(wù)器執(zhí)行,該代理服務(wù)器耦合到主機(jī)服務(wù)器并能夠無線地連接到移動設(shè)備。
通常,如果包括新的或改變的數(shù)據(jù)的數(shù)據(jù)具有低優(yōu)先級或者不是時間關(guān)鍵的,則代理服務(wù)器可以等待直到一段時間之后,或者直到存在要發(fā)送的附加數(shù)據(jù)進(jìn)行數(shù)據(jù)傳送(例如,經(jīng)由對齊模塊378和/或批處理模塊377)。
圖3E描繪了示出圖3A的示例的流量整形引擎375中的附加組件的示例的框圖。其還能夠?qū)R傳輸?shù)揭苿踊驅(qū)拵гO(shè)備或其他接收者的數(shù)據(jù),以優(yōu)化為在無線網(wǎng)絡(luò)或?qū)拵ЬW(wǎng)絡(luò)中的傳輸而建立的連接。
在代理服務(wù)器325的一個實施例中,流量整形引擎375還包括通知引擎379,并且對齊模塊378包括一調(diào)整輪詢跟蹤器378a,并且批處理模塊377還包括一連接觸發(fā)器377a。
在一個實施例中,代理服務(wù)器325能夠輪詢在給定移動設(shè)備上以調(diào)度服務(wù)各種應(yīng)用(例如,第一和第二服務(wù))的不同主機(jī)。輪詢調(diào)度表可以由本地代理(例如,圖2A-2E的代理275)設(shè)置,并且可以包括的移動設(shè)備(例如,設(shè)備250)上的應(yīng)用被分配的可能已經(jīng)被調(diào)整的輪詢間隔。例如,輪詢調(diào)度表可以由代理服務(wù)器325中的流量整形引擎375的對齊模塊378中的調(diào)整輪詢跟蹤器378a跟蹤。 可以基于移動設(shè)備上的另一服務(wù)的輪詢間隔來確定服務(wù)/應(yīng)用的調(diào)整輪詢間隔,使得在遠(yuǎn)程代理325處接收的數(shù)據(jù)可以批量地提供給移動設(shè)備,例如,通過批處理模塊377。
輪詢調(diào)度表還可以包括代表給定移動設(shè)備上的多個應(yīng)用開始輪詢的初始開始時間(t0)。 服務(wù)于第一和第二服務(wù)的不同主機(jī)的第一輪詢的初始開始時間(例如,一共同的開始時間點)可以例如由本地代理275(例如,圖2A- 2E的代理275)選擇,并且在一些情況下由代理服務(wù)器325選擇。當(dāng)由本地代理確定時,本地代理傳達(dá)用于輪詢的共同的開始時間點到代理服務(wù)器325。在一個實施例中,共同的開始時間點被設(shè)置為在將來用以補(bǔ)償通信延遲。
在一個實施例中,如果給定的移動客戶端/移動應(yīng)用不是開啟的或活躍的,或者如果給定的移動設(shè)備250沒有連接到無線網(wǎng)絡(luò),則連接觸發(fā)器377a可以發(fā)送一觸發(fā)(例如,帶外 )觸發(fā)移動設(shè)備或移動設(shè)備上的本地代理以請求對無線電供電和/或激活一個或多個相關(guān)應(yīng)用。例如,批處理模塊377可以分批處理發(fā)送至給定移動設(shè)備上的多個應(yīng)用的各種內(nèi)容或數(shù)據(jù),并且如果移動客戶端/應(yīng)用不是啟動的或活躍的,則連接觸發(fā)器377a可以發(fā)送請求應(yīng)用活動的觸發(fā)。或者,通知引擎379可以向移動設(shè)備250發(fā)送存在準(zhǔn)備好要發(fā)送的數(shù)據(jù)的指示,請求移動設(shè)備250打開無線電,如果當(dāng)前處于關(guān)閉模式。
注意,代理服務(wù)器325監(jiān)視多個移動設(shè)備并且跟蹤應(yīng)用特性和用戶行為/特性,該應(yīng)用特性和用戶行為/特性跨越多個設(shè)備,用戶和網(wǎng)絡(luò)。 因此,涉及調(diào)整輪詢間隔跟蹤器的上述特征雖然涉及針對給定設(shè)備上的多個應(yīng)用的示例,但是注意,對于已經(jīng)在其上安裝有其自己的其他應(yīng)用集合的多個設(shè)備跟蹤相同,為此調(diào)整輪詢間隔或輪詢調(diào)度表是基于每個移動設(shè)備上的應(yīng)用來計算的,例如駐留在其上的本地代理(例如,可以安裝在圖2E中描述的,由代理服務(wù)器325服務(wù)的多個移動設(shè)備中的一個或多個上的一本地代理275的組件)。
注意,由于代理服務(wù)器325管理,在一個網(wǎng)絡(luò)中的,跨網(wǎng)絡(luò)的,在一個地理區(qū)域的,對于一個網(wǎng)絡(luò)運(yùn)營商而言跨越多個地理區(qū)域的,或跨越多個網(wǎng)絡(luò)的多個運(yùn)營商的,去往/來自多個移動設(shè)備的流量,代理服務(wù)器325可以基于交通狀況或網(wǎng)絡(luò)條件的概覽或合計數(shù)據(jù)來對齊流量和批量傳輸數(shù)據(jù)。例如,當(dāng)檢測到網(wǎng)絡(luò)擁塞時,代理服務(wù)器325可以劃分?jǐn)?shù)據(jù)傳輸至移動設(shè)備的優(yōu)先級。例如,代理服務(wù)器325可以向移動設(shè)備傳送數(shù)據(jù),在此處,設(shè)備用戶訂閱的類型或級別基于要被轉(zhuǎn)移至移動設(shè)備的內(nèi)容的最高優(yōu)先級而分等級或交錯(例如,當(dāng)設(shè)備A的最高優(yōu)先級數(shù)據(jù)具有比設(shè)備B高的優(yōu)先級時,與移動設(shè)備B相比,一批數(shù)據(jù)可以首先被傳送到移動設(shè)備A)
注意,例如,對于一地理區(qū)域,或?qū)τ谔囟ňW(wǎng)絡(luò)運(yùn)營商,對于一種類型的網(wǎng)絡(luò)服務(wù),或者對于上述的任何組合,可以存在一個代理服務(wù)器325?;诓煌姆?wù)實體,代理服務(wù)器325可以聚集關(guān)于網(wǎng)絡(luò)流量,運(yùn)營商設(shè)置,應(yīng)用偏好/要求,用戶偏好,相關(guān)訂閱參數(shù)的不同類型的信息,上述的各種組合可以被代理325用于優(yōu)化需要通過接收移動設(shè)備建立的連接。多個代理服務(wù)器325服務(wù)于地理區(qū)域中的不同網(wǎng)絡(luò),不同的運(yùn)營商可以在它們之間共享流量,訂閱,用戶或應(yīng)用級別信息,以進(jìn)一步促進(jìn)網(wǎng)絡(luò)資源利用,流量管理,并且在某些情況下促進(jìn)傳輸至移動設(shè)備的數(shù)據(jù)的對齊。
圖4描繪了示出用于移動設(shè)備和代理服務(wù)器之間的分布式內(nèi)容緩存以及內(nèi)容緩存的分布式管理的示例過程的另一流程圖。如本文所示,所公開的技術(shù)是具有在客戶端/移動設(shè)備側(cè)(例如,圖2的示例中的本地代理275)和服務(wù)器端(例如,圖3中的代理服務(wù)器325)之間拆分的緩存任務(wù)的各個方面的分布式緩存模型。
一般來說,設(shè)備側(cè)的職責(zé)可以包括決定對一特定請求的響應(yīng)是否可以和/或應(yīng)該被緩存。代理的設(shè)備側(cè)可以基于在請求和響應(yīng)之后/期間收集的信息(例如,定時特性,檢測到的模式,檢測到的具有啟發(fā)的模式,可預(yù)測或可重復(fù)的指示)作出這個決定并且對其進(jìn)行緩存(例如,存儲它在移動設(shè)備上的本地緩存中)。設(shè)備側(cè)還可以向分布式緩存系統(tǒng)中的服務(wù)器端通知本地緩存事件,并且通知其監(jiān)視內(nèi)容源(例如,圖1B-C的應(yīng)用服務(wù)器/內(nèi)容提供商110)。
設(shè)備側(cè)還可以指示分布式代理的服務(wù)器端周期性地驗證緩存響應(yīng)(例如,通過輪詢,或向內(nèi)容源發(fā)送輪詢請求)。設(shè)備側(cè)可以進(jìn)一步?jīng)Q定是否應(yīng)該從本地緩存返回對一特定緩存請求的響應(yīng)(例如,是否一緩存命中被檢測到)。該決定可以由設(shè)備側(cè)(例如,設(shè)備上的本地代理)利用在來自內(nèi)容源的請求和/或響應(yīng)被接收之后/期間收集的信息做出該決定。
通常,服務(wù)器端的職責(zé)可以包括驗證用于關(guān)聯(lián)的緩存響應(yīng)(例如,確定緩存響應(yīng)是否仍然有效或與其相關(guān)聯(lián)的請求相關(guān))。當(dāng)檢測到緩存的響應(yīng)不再有效或不再相關(guān)(例如,服務(wù)器使給定內(nèi)容源無效)時,服務(wù)器端可以向移動設(shè)備發(fā)送一無效請求以通知設(shè)備側(cè)。 然后,設(shè)備端可以從本地緩存中移除該響應(yīng)。
圖4的圖示出了為在移動設(shè)備(例如,分布式代理的客戶端)處檢測到的每個被檢測或被攔截的請求(例如,HTTP請求)執(zhí)行的緩存邏輯處理。在步驟602中,代理的客戶端(例如,本地代理275)接收請求(來自應(yīng)用(例如,移動應(yīng)用)或移動客戶端)。在步驟604中URL被標(biāo)準(zhǔn)化,并且在步驟606中客戶端檢查以確定請求是否可緩存。如果在步驟612中確定請求不可緩存,則在步驟608中將請求發(fā)送到源(應(yīng)用服務(wù)器/內(nèi)容提供商),并且請求被接收610并且被傳遞給請求應(yīng)用622,類似于不被客戶端代理攔截的請求-響應(yīng)序列。
如果確定請求是可緩存的,則在步驟612中,客戶端查找緩存以確定對于當(dāng)前請求是否存在緩存條目。如果是,則在步驟624中,客戶端可以確定條目是否有效,并且如果是,則客戶端可以在步驟615中檢查該請求以查看是否包括驗證器(例如,一修改的頭域或?qū)嶓w標(biāo)簽)。例如,驗證的概念在RFC 2616(超文本傳輸協(xié)議HTTP1.1)的第13.3節(jié),其描述了可能的頭域類型(例如,eTAG,Modified_Since,must_revlaidate,pragma no_cache)并且如果是則形成驗證響應(yīng)632,如果是,則在步驟622中被傳遞到請求應(yīng)用。如果該請求不包括由步驟615確定的驗證器,則響應(yīng)在步驟630中從本地緩存形成,并在步驟622中被傳送到請求應(yīng)用。該驗證步驟可以用于通常被認(rèn)為是不可緩存的內(nèi)容。
如果相反,在步驟624中找到緩存條目,但確定緩存條目不再有效或無效,則代理的客戶端將發(fā)送請求616到內(nèi)容源(應(yīng)用服務(wù)器/內(nèi)容主機(jī)),并且在步驟618中直接從該源接收響應(yīng)。類似地,如果步驟612中在查找期間沒有找到緩存條目,則該請求也在步驟616中被發(fā)送。一旦接收到該響應(yīng),客戶端在步驟626中檢查該響應(yīng)以確定它是否可緩存。如果是,則在步驟620緩存該響應(yīng)。然后在步驟614中客戶端發(fā)送另一個輪詢,然后在步驟622中將該響應(yīng)傳遞給請求應(yīng)用。
圖5描繪了示出無線網(wǎng)絡(luò)中的來自移動設(shè)備450的數(shù)據(jù)請求如何能夠由分布式代理系統(tǒng)460以某種方式協(xié)調(diào)到應(yīng)用服務(wù)器/內(nèi)容提供商495的序列圖,使得通過使用由該分布式代理系統(tǒng)460執(zhí)行的內(nèi)容緩存和監(jiān)視來保護(hù)網(wǎng)絡(luò)和電池資源。
在沒有分布式代理系統(tǒng)460的移動設(shè)備450上滿足應(yīng)用或客戶端請求時,移動設(shè)備450或在該設(shè)備450上執(zhí)行的軟件窗口小部件執(zhí)行直接到應(yīng)用服務(wù)器495的數(shù)據(jù)請求452(例如,HTTP GET,POST或其他請求 ),并直接從服務(wù)器/提供商495接收響應(yīng)404。如果數(shù)據(jù)已被更新,則移動設(shè)備450上的窗口小部件455可以刷新自身以反映該更新并且等待一小段時間,并且向服務(wù)器/提供商495發(fā)起另一數(shù)據(jù)請求。
在一個實施例中,設(shè)備450上的請求客戶端或軟件窗口小部件455可以在處理向服務(wù)器/提供商495做出的數(shù)據(jù)請求時使用分布式代理系統(tǒng)460。一般來說,分布式代理系統(tǒng)460可以包括本地代理465(其通常被認(rèn)為是系統(tǒng)460的客戶端組件并且可以駐留在移動設(shè)備450上),緩存代理475(被認(rèn)為是系統(tǒng)460的服務(wù)器端組件470,并且可以駐留在主機(jī)服務(wù)器485上,或者完全地或部分地在主機(jī)服務(wù)器485外),和主機(jī)服務(wù)器485。本地代理465可以經(jīng)由任何網(wǎng)絡(luò)或網(wǎng)絡(luò)的組合連接到緩存代理475和主機(jī)服務(wù)器485。
當(dāng)分布式代理系統(tǒng)460用于數(shù)據(jù)/應(yīng)用請求時,窗口小部件455可以經(jīng)由本地代理465執(zhí)行該數(shù)據(jù)請求456。本地代理465可以攔截由設(shè)備應(yīng)用做出的請求,并且可以識別請求的連接類型(例如,HTTP獲取請求或其他類型的請求)。然后,本地代理465可以向本地緩存查詢關(guān)于請求的任何先前信息(例如,確定本地存儲的響應(yīng)是否可用和/或仍然有效)。如果本地存儲的響應(yīng)不可用或者如果存儲了無效的響應(yīng),則本地代理465可以在本地緩存中更新或存儲關(guān)于請求的信息,該請求做出的時間以及任何附加數(shù)據(jù)。信息可以被更新信息以用于潛在的滿足后續(xù)請求。
然后,本地代理465可以將請求發(fā)送到主機(jī)服務(wù)器485,并且主機(jī)服務(wù)器485可以執(zhí)行請求456并且在響應(yīng)458中返回結(jié)果。本地代理465可以存儲該結(jié)果,并且另外存儲關(guān)于該結(jié)果的信息,并將結(jié)果返回給該請求窗口小部件455。
在一個實施例中,如果相同的請求已經(jīng)發(fā)生多次(在一特定時間段內(nèi))并且其經(jīng)常產(chǎn)生相同的結(jié)果,則本地代理465可以通知460服務(wù)器485(例如,步驟462和464 ):應(yīng)該在將結(jié)果返回到本地代理465或請求窗口小部件455之前監(jiān)視該請求的結(jié)果變化。
在一個實施例中,如果請求被標(biāo)記為監(jiān)視,則本地代理465現(xiàn)在可以將結(jié)果存儲到本地緩存中?,F(xiàn)在,當(dāng)本地響應(yīng)可用的數(shù)據(jù)請求466由窗口小部件455做出并在本地代理465處被攔截時,本地代理465可以從本地緩存返回該響應(yīng)468,而不需要通過無線網(wǎng)絡(luò)建立連接通信。
另外,服務(wù)器代理執(zhí)行標(biāo)記為監(jiān)視的請求470以確定用于給定請求的響應(yīng)472是否已經(jīng)改變。一般來說,主機(jī)服務(wù)器485可獨(dú)立于窗口小部件455或本地代理465操作來執(zhí)行此監(jiān)視。每當(dāng)接收到針對請求的意外響應(yīng)472時,服務(wù)器485可以通知本地代理465響應(yīng)已經(jīng)改變(例如,步驟474中的無效通知)并且客戶端上本地存儲的響應(yīng)應(yīng)當(dāng)被擦除或被新響應(yīng)替換。
在這種情況下,來自設(shè)備450的窗口小部件455的后續(xù)數(shù)據(jù)請求476導(dǎo)致數(shù)據(jù)被從主機(jī)服務(wù)器485(例如,經(jīng)由緩存代理475)返回,并且在步驟478中,由緩存代理滿足該請求。因此,通過利用分布式代理系統(tǒng)460,當(dāng)用于移動設(shè)備450上的窗口小部件或軟件應(yīng)用455的內(nèi)容/數(shù)據(jù)實際上已改變時,智能地使用無線(蜂窩)網(wǎng)絡(luò)。 因此,檢查應(yīng)用數(shù)據(jù)的改變所需的流量不是通過無線(蜂窩)網(wǎng)絡(luò)執(zhí)行的。 這減少了生成的網(wǎng)絡(luò)流量的量,并且縮短了無線電模塊在移動設(shè)備450上加電的總時間和次數(shù),因此減少了電池消耗,并且還釋放了網(wǎng)絡(luò)帶寬。
圖6描繪了示出可以用于實現(xiàn)網(wǎng)絡(luò)訪問和內(nèi)容傳送策略的不同流量或應(yīng)用類別類型的示例的表700。例如,業(yè)務(wù)/應(yīng)用類別可以包括交互的或后臺的,用戶是否正在等待響應(yīng),前臺/后臺應(yīng)用,以及背光是打開還是關(guān)閉。
圖7描繪了示出可以用于實現(xiàn)網(wǎng)絡(luò)訪問和內(nèi)容遞送策略的不同內(nèi)容類別類型的示例的表800。例如,內(nèi)容類別類型可以包括高或低優(yōu)先級,以及時間關(guān)鍵性或非時間關(guān)鍵性的內(nèi)容/數(shù)據(jù)。
圖8描繪了示出應(yīng)用(例如,移動應(yīng)用)955如何輪詢具有通過無線網(wǎng)絡(luò)從移動設(shè)備到應(yīng)用服務(wù)器/內(nèi)容提供商995的數(shù)據(jù)請求的交互圖,其可以被能夠被緩存在本地代理965上并且由分布式緩存系統(tǒng)(包括本地代理965和主機(jī)服務(wù)器985(具有服務(wù)器緩存935或緩存代理服務(wù)器975))管理。
在一個示例中,當(dāng)移動應(yīng)用/窗口小部件955輪詢應(yīng)用服務(wù)器/提供商932時,該輪詢可以在移動設(shè)備上被本地代理965本地攔截。本地代理965可以檢測到緩存的內(nèi)容可用于請求中被輪詢的內(nèi)容,并且因此可以從本地緩存檢索響應(yīng)以滿足被攔截的輪詢936,而不需要使用無線網(wǎng)絡(luò)帶寬或其他無線網(wǎng)絡(luò)資源。移動應(yīng)用/窗口小部件955隨后可以從緩存條目938接收對該輪詢的響應(yīng)。
在另一示例中,移動應(yīng)用窗口小部件955輪詢該應(yīng)用服務(wù)器/提供商940。該輪詢被本地代理965攔截942,并且檢測到緩存內(nèi)容在本地緩存中不可用,并且決定設(shè)置用于緩存的輪詢源944。為了滿足該請求,輪詢被轉(zhuǎn)發(fā)到內(nèi)容源946。應(yīng)用服務(wù)器/提供商995從應(yīng)用接收輪詢請求,并提供響應(yīng)以滿足當(dāng)前請求948。在950中,應(yīng)用(例如,移動應(yīng)用) /窗口小部件955從應(yīng)用服務(wù)器/提供商接收響應(yīng)以滿足該請求。
結(jié)合起來,為了建立內(nèi)容緩存,本地代理965跟蹤該應(yīng)用的輪詢頻率,并且可以建立被發(fā)送到主機(jī)服務(wù)器952的輪詢調(diào)度表。本地代理將建立的緩存發(fā)送到主機(jī)服務(wù)器954。主機(jī)服務(wù)器985可以使用該建立的緩存,其包括,例如要輪詢的應(yīng)用服務(wù)器/提供商的標(biāo)識以及可選的輪詢調(diào)度表956。主機(jī)服務(wù)器985現(xiàn)在可以輪詢應(yīng)用服務(wù)器/提供商995以為了移動設(shè)備監(jiān)視對請求958的響應(yīng)。應(yīng)用服務(wù)器從主機(jī)服務(wù)器接收該輪詢并且響應(yīng)960。主機(jī)服務(wù)器985確定已經(jīng)接收到相同的響應(yīng),并且根據(jù)指定的輪詢調(diào)度表962輪詢該應(yīng)用服務(wù)器995。應(yīng)用服務(wù)器/內(nèi)容提供商995接收該輪詢并相應(yīng)地響應(yīng)964。
主機(jī)服務(wù)器985檢測改變的或新的響應(yīng)并通知本地代理965。主機(jī)服務(wù)器985可以另外將該改變的或新的響應(yīng)存儲在服務(wù)器緩存或緩存代理968中。本地代理965從主機(jī)服務(wù)器985接收新的或改變的數(shù)據(jù)現(xiàn)在可用的通知并且可以無效受影響的緩存條目970。下一次應(yīng)用(例如,移動應(yīng)用)/窗口小部件955對相同的服務(wù)器/內(nèi)容提供商972生成相同的請求時,本地代理確定沒有有效緩存條目是可用的,并且代之以例如通過HTTP連接從服務(wù)器緩存974檢索響應(yīng)。 主機(jī)服務(wù)器985接收對新響應(yīng)的請求,并將該響應(yīng)976發(fā)送回本地代理965。該請求因此從服務(wù)器緩存或緩存代理978得到滿足,而不需要移動設(shè)備利用其無線電或消耗移動網(wǎng)絡(luò)帶寬,從而節(jié)約網(wǎng)絡(luò)資源。
或者,當(dāng)應(yīng)用(例如,移動應(yīng)用)在步驟980中生成相同的請求時,本地代理965在響應(yīng)確定沒有有效的緩存條目可用時,在步驟982中通過移動網(wǎng)絡(luò)將該輪詢轉(zhuǎn)發(fā)到應(yīng)用服務(wù)器/提供商。應(yīng)用服務(wù)器/提供商995接收該輪詢,并在步驟984中通過移動網(wǎng)絡(luò)將響應(yīng)發(fā)送回移動設(shè)備。該請求因此在步驟986中從使用移動網(wǎng)絡(luò)的服務(wù)器/提供商得到滿足。
信號或連接模型示例
圖9描繪了示出用于對移動網(wǎng)絡(luò)中的移動設(shè)備(例如,任何無線設(shè)備)的信號進(jìn)行建模的示例過程的流程圖。關(guān)于圖9示出的操作或步驟通過移動設(shè)備與性能進(jìn)行討論。然而,可以在各種實施例中通過本文所討論的網(wǎng)絡(luò)優(yōu)化架構(gòu)的一個或多個組件中的任何一個來執(zhí)行該操作或步驟。例如,操作或步驟可以由移動設(shè)備的網(wǎng)絡(luò)優(yōu)化客戶端代理(例如,圖1A-1的移動設(shè)備150的網(wǎng)絡(luò)優(yōu)化客戶端代理175),移動設(shè)備(例如,移動設(shè)備150),網(wǎng)絡(luò)優(yōu)化(主機(jī))服務(wù)器(例如,網(wǎng)絡(luò)優(yōu)化(主機(jī))服務(wù)器100),一個或多個處理器,和/或本文所討論的其他組件,模塊,引擎或工具。額外的或更少的數(shù)據(jù)流操作是可能的。
開始時,在步驟1010,移動設(shè)備跟蹤在移動網(wǎng)絡(luò)中的移動設(shè)備上執(zhí)行的移動應(yīng)用發(fā)起的事務(wù)。在步驟1012,移動設(shè)備確定事務(wù)是否導(dǎo)致網(wǎng)絡(luò)信號需要相應(yīng)的無線電連接。在步驟1014,移動設(shè)備為移動設(shè)備建模網(wǎng)絡(luò)信號。
圖10描繪了示出用于對移動網(wǎng)絡(luò)中的移動設(shè)備(例如,任何無線設(shè)備)的信號進(jìn)行建模的示例過程的流程圖。關(guān)于圖9所述的操作或步驟通過移動設(shè)備與性能進(jìn)行討論。然而,操作或步驟可以在各種實施例中由本文所討論的網(wǎng)絡(luò)優(yōu)化架構(gòu)的一個或多個組件來執(zhí)行。例如,操作或步驟可以由移動設(shè)備的網(wǎng)絡(luò)優(yōu)化客戶端代理(例如,圖1A-1的移動設(shè)備150的網(wǎng)絡(luò)優(yōu)化客戶端代理175),移動設(shè)備(例如,移動設(shè)備150),網(wǎng)絡(luò)優(yōu)化(主機(jī))服務(wù)器(例如,網(wǎng)絡(luò)優(yōu)化(主機(jī))服務(wù)器100),一個或多個處理器,和/或本文所討論的其他組件,模塊,引擎或工具。額外的或更少的數(shù)據(jù)流操作是可能的。
開始時,在步驟1020,移動設(shè)備訪問與移動設(shè)備相關(guān)聯(lián)的無線電日志。 該無線電日志可以指示移動設(shè)備無線電的狀態(tài)。在步驟1022,移動設(shè)備訪問與該移動設(shè)備相關(guān)聯(lián)的流量活動日志。該流量活動日志可以指示在移動設(shè)備中的多個測量點處被測量的各種流量指標(biāo)。在步驟1024,移動設(shè)備基于無線電日志和流量活動日志中的一個或多個來計算一個或多個日志/報告數(shù)據(jù)字段。在步驟1026,移動設(shè)備基于該一個或多個日志/報告數(shù)據(jù)字段對移動設(shè)備的網(wǎng)絡(luò)信號進(jìn)行建模。
常規(guī)連接和時間計算示例
圖11A- 圖16D描繪了用于確定一般連接和時間計算的日志/報告數(shù)據(jù)字段的計算示例。如本文所討論的,各種字段計算可以用于對移動網(wǎng)絡(luò)中的信號進(jìn)行建模。重要的是,下面討論的日志/報告數(shù)據(jù)字段計算示例包括以下標(biāo)記方法:
?短時間戳格式(例如,使用07:26:00.000代替完整格式2012-10-30 07:26:00.000);
?輸入日志中僅顯示計算所需的字段;
?使用網(wǎng)絡(luò)延遲的示例默認(rèn)值(例如,15 000毫秒);
?使用請求延遲的示例默認(rèn)值(例如,1 000毫秒);
?使用拆分比的默認(rèn)值示例(例如,3000);
?術(shù)語“休眠”和“網(wǎng)絡(luò)延遲”同義使用。
這里討論的示例連接和時間計算主要基于兩個主要數(shù)據(jù)收集:無線電開啟間隔和被過濾的網(wǎng)絡(luò)日志(netLog,也稱為流量活動日志)。
如上所述,擴(kuò)展的日志/報告數(shù)據(jù)字段可以被劃分為多種類型。例如,擴(kuò)展的日志/報告數(shù)據(jù)字段可以包括連接標(biāo)志類型和連接時間計數(shù)類型(參見,例如附錄A和B)。另外,擴(kuò)展的日志/報告數(shù)據(jù)字段可以被劃分為如上面表1中所示的幾個類別。
更具體地,圖11A和11B示出了真實的(或?qū)嶋H的)無線電時間間隔和相應(yīng)的日志/報告數(shù)據(jù)字段示例的計算。圖12A和12B示出了虛擬無線電時間間隔和相應(yīng)的日志/報告數(shù)據(jù)字段示例的計算。圖13A和13B示出了模擬無線電時間間隔和相應(yīng)的日志/報告數(shù)據(jù)字段示例的計算。圖14A和14B示出了虛擬模擬無線電時間間隔和相應(yīng)的日志/報告數(shù)據(jù)字段示例的計算。圖15A-15D示出了每個應(yīng)用的模擬無線電開啟間隔示例的計算。圖16A-16D示出了每個應(yīng)用的虛擬模擬無線電開啟間隔和相應(yīng)的日志/報告數(shù)據(jù)字段示例的計算。
真實的(或?qū)嶋H的)字段示例計算
首先參考圖11A和11B,其分別示出了用于計算真實的(或?qū)嶋H的)無線電開啟間隔示例的操作說明和真實的(或?qū)嶋H的)無線電時間間隔示例的圖形說明。該真實的(或?qū)嶋H的)字段計算包括一實際連接字段和一實際連接時間字段的計算。
實際連接字段指示一通過網(wǎng)絡(luò)發(fā)生的真實連接。無線電日志可以指示一移動設(shè)備無線電在一段時間內(nèi)的各種狀態(tài),并且因此可以用于進(jìn)行該實際連接字段的計算。也就是說,移動設(shè)備無線電的狀態(tài)可以用于確定移動設(shè)備無線電是否是/已啟動。例如,在一些實施例中,如果無線電日志的當(dāng)前狀態(tài)指示移動設(shè)備無線電的當(dāng)前狀態(tài)被設(shè)置為DATA_ACTIVITY_CONNECTED狀態(tài)或WCDMA_DCH狀態(tài),則該移動設(shè)備無線電被認(rèn)為是啟動的(或活躍的)。相反,如果移動設(shè)備無線電的當(dāng)前狀態(tài)被設(shè)置為DATA_ACTIVITY_DORMANT狀態(tài)或IDLE狀態(tài),則該移動設(shè)備無線電被認(rèn)為是關(guān)閉的(或不活躍的)。
在一個實施例中,計算的實際時間字段指示了移動設(shè)備的無線電信道在開啟期間的總的時間間隔。也就是說,實際時間字段指示了網(wǎng)絡(luò)信道用于傳送數(shù)據(jù)(例如,去往或來自客戶端)期間的時間。當(dāng)網(wǎng)絡(luò)日志項處于無線電開啟間隔時,實際時間可以計算為兩個最近的網(wǎng)絡(luò)日志項之間的所有時間間隔的總和。重要的是,當(dāng)計算實際時間字段時,如果特定的網(wǎng)絡(luò)日志項是無線電開啟日志項之后的日志中的第一個網(wǎng)絡(luò)日志項,則其連接的實際連接等于兩個值的和:
?此網(wǎng)絡(luò)日志項與其后的最近的網(wǎng)絡(luò)日志之間的時間間隔
?無線電開啟和此網(wǎng)絡(luò)日志項之間的時間間隔
如參考圖11B的示例所討論的,實際連接字段和實際時間字段可以通過首先讀取與移動設(shè)備相關(guān)聯(lián)的無線電訪問日志和流量活動日志(本文中也稱為網(wǎng)日志或網(wǎng)絡(luò)日志)來計算。無線電訪問日志和流量活動日志的相關(guān)部分可以在本文中共同被稱為與移動設(shè)備相關(guān)聯(lián)的輸入日志。在圖11A的示例中,下面的表3指示了輸入網(wǎng)絡(luò)日志和輸入無線電日志(統(tǒng)稱為輸入日志)的相關(guān)部分。
。
表3 - 輸入網(wǎng)絡(luò)日志和無線電字段
如上所述,輸入網(wǎng)絡(luò)日志和輸入無線電日志各自包括各種網(wǎng)絡(luò)日志項。網(wǎng)絡(luò)日志項由 “NLx”指示,而無線電日志項使用“RLx”指示。
諸如圖2E的日志/報告數(shù)據(jù)分析核心255a或圖3E的CRSC分析核心375a的crcs分析核心工具處理輸入日志(們),例如,以基于該一個或多個輸入日志(例如,無線電日志和流量活動日志),計算一個或多個附加的日志/報告數(shù)據(jù)字段。該過程可以包括利用一個或多個長輪詢技術(shù)將一個網(wǎng)絡(luò)日志項拆分為兩個或更多個網(wǎng)絡(luò)日志項。參考圖19A和19B更詳細(xì)地示出和討論了更多長輪詢技術(shù)中的一種的使用。如本示例所示,crcs分析核心工具為每個網(wǎng)絡(luò)日志項計算實際連接字段(或標(biāo)志)和實際時間字段。下面示出了示例輸出表4。
表4-輸出網(wǎng)絡(luò)日志字段
在此示例中,RL1是無線電開啟日志,因為其“狀態(tài)”字段是data_activity_connected,并且其前一個狀態(tài)(“prev_state”)是data_activity_dormant。 類似地,RL2是無線電關(guān)閉日志,因為其“狀態(tài)”字段是data_activity_dormant并且其前一個狀態(tài)(“prev_state”)是data_activity_connected。 因此,實際無線電開啟間隔是:07:30:00.000-07:26:00.000 = 4min = 240sec = 240 000ms。
關(guān)于實際連接的計算,NL1進(jìn)行實際連接,因為它是無線電開啟之后的第一個網(wǎng)絡(luò)日志,所以這個網(wǎng)絡(luò)日志開始了一新的連接。NL2和NL3在無線電已經(jīng)開啟時發(fā)生,因此它們不會開始新的連接。因此,實際連接NL1 = 1; 實際連接NL2 = 0; 并且實際連接NL3 = 0。關(guān)于實際時間計算:
實際時間 NL1 = [RL1, NL1] + [NL1, NL2];
實際時間 NL2 = [NL2, NL3]; 并且
實際時間 NL3 = [NL3, RL2]。
其中,
[RL1,NL1]是無線電日志項RL1和網(wǎng)絡(luò)日志項NL1之間的時間間隔;
[NL1,NL2]同樣為網(wǎng)絡(luò)日志項NL1和網(wǎng)絡(luò)日志項NL2之間的時間間隔;
[NL2,NL3]同樣為網(wǎng)絡(luò)日志項NL2和網(wǎng)絡(luò)日志項NL3之間的時間間隔;
[NL3,RL2]是網(wǎng)絡(luò)日志項NL3和無線電日志項RL2之間的時間間隔;
即,
[RL1,NL1] = 07:26:00.500 - 07:26:00.000 = 0 500
[NL1,NL2] = 07:26:20.000 - 07:26:00.500 = 19 500
[NL2,NL3] = 07:27:00.000 - 07:26:20.000 = 20 000
[NL3,RL2] = 07:30:00.000-07:27:00.000 = 180000
從而,
實際時間NL1 = [07:26:00.500 - 07:26:00.000] + [07:26:20.000 - 07:26:00.500] = 500 + 19 500 =2000;
實際時間NL2 = 07:27:00.000 - 07:26:20.000 = 40 000;
實際時間NL3 = 07:30:00.000 - 07:27:00.000 = 180 000;
虛擬字段計算示例
接下來參考圖12A和圖12B,其分別示出了用于計算虛擬無線電開啟間隔的示例操作和虛擬無線電開啟間隔示例的圖形說明。更具體地,虛擬字段計算包括虛擬連接字段和虛擬連接時間字段的計算。
如上所述,crcs分析核心工具或模塊(未示出)可以計算由crcs分析核心工具維護(hù)和利用的擴(kuò)展的日志/報告數(shù)據(jù)字段,以建模移動網(wǎng)絡(luò)中的移動設(shè)備的信號。更具體地,crcs分析核心工具可以對網(wǎng)絡(luò)優(yōu)化架構(gòu)(例如,包括本文所討論的信號優(yōu)化和擴(kuò)展緩存技術(shù)的分布式緩存技術(shù))的效果進(jìn)行建模。例如,諸如圖2E的日志/報告數(shù)據(jù)分析核心255a或者圖3E的CRSC分析核心375a之類的crcs分析核心工具或模塊,可以計算該虛擬無線電開啟間隔。該計算可以包括基于一個或多個輸入日志(例如,無線電日志和包括緩存命中信息的流量活動日志)來計算一個或多個附加的日志/報告數(shù)據(jù)字段。
更具體地,如圖12B的示例所示,crcs分析核心工具或模塊利用無線電日志和緩存命中網(wǎng)絡(luò)日志來計算該虛擬無線電開啟間隔。虛擬字段示出了移動設(shè)備上‘如果沒有’該網(wǎng)絡(luò)優(yōu)化客戶端將發(fā)生哪些“連接”。圖12A示出了用于虛擬字段的計算的架構(gòu)示例。
虛擬連接字段指示通過緩存(沒有無線電開啟)或通過真實的 (實際的)連接做出的虛擬連接。也就是說,虛擬連接示出了如果沒有網(wǎng)絡(luò)優(yōu)化客戶端在移動設(shè)備上操作則將發(fā)生什么連接。類似地,虛擬時間字段指示如果在移動設(shè)備上的操作沒有安裝網(wǎng)絡(luò)優(yōu)化客戶端則無線電信道將開啟的時間間隔。因此,總虛擬時間總是等于或大于關(guān)于圖11A和圖11B的示例計算的實際時間。
參考圖12A和圖12B的示例,下面的表5指示輸入網(wǎng)絡(luò)日志和輸入無線電日志(統(tǒng)稱為輸入日志)示例的相關(guān)部分。
表5-輸入網(wǎng)絡(luò)日志字段
在一些實施例中,記錄DL不是輸入日志(中的一項)的一部分。 如上所述,輸入網(wǎng)絡(luò)日志和輸入無線電日志各自包括各種網(wǎng)絡(luò)日志項。 如本文所討論的,網(wǎng)絡(luò)日志項由 “NLx”指示,而無線電日志項使用“RLx”來指示。
如本示例所示,crcs分析核心工具為每個網(wǎng)絡(luò)日志項計算實際連接字段(或標(biāo)志)和實際時間字段。下面示出了輸出示例表6。
表6-輸出網(wǎng)絡(luò)日志字段
在該示例中,RL1被計算為第一虛擬無線電開啟日志項或條目,因為實際上發(fā)生了真實的無線電開啟。RL2被計算為第一無線電關(guān)閉日志,因為實際上發(fā)生了真實的無線電關(guān)閉。NL4被計算為第二虛擬無線電開啟日志,因為“CLIENT_BYTES_IN”或“CLIENT_BYTES_OUT”大于零。也就是說,在NL4處,數(shù)據(jù)在網(wǎng)絡(luò)優(yōu)化客戶端和網(wǎng)絡(luò)優(yōu)化服務(wù)器之間傳輸。DL被計算為第二無線電關(guān)閉日志,因為網(wǎng)絡(luò)延遲恰好在DL處結(jié)束。此外,在該示例中,NL5不被計算為日志中的虛擬無線電開啟,因為NL4和NL5之間的時間間隔小于休眠。
關(guān)于虛擬連接字段的計算,NL1產(chǎn)生虛擬連接,因為它進(jìn)行實際連接。NL4產(chǎn)生虛擬連接,因為它使得虛擬無線電開啟。因此:
虛擬連接NL1 = 1
虛擬連接NL2 = 0
虛擬連接NL3 = 0
虛擬連接NL4 = 1
虛擬連接NL5 = 0
關(guān)于虛擬時間字段的計算:
虛擬時間NL1 =實際時間NL1
虛擬時間NL2 =實際時間NL2
虛擬時間NL3 =實際時間NL3
虛擬時間NL4 = [NL4,NL5]
虛擬時間NL5 = [NL5,DL]
其中,
[NL4,NL5]是網(wǎng)絡(luò)日志項NL4和網(wǎng)絡(luò)日志項NL5之間的時間間隔
[NL5,DL]是網(wǎng)絡(luò)日志項NL5和虛擬無線電關(guān)閉項DL之間的時間間隔
并且,
[NL4,NL5] = 07:31:01.500 - 07:31:00.000 = 1 500
[NL1,NL2] = 07:31:16.500-07:31:01.500 = 15000
這里DL是從虛擬無線電開啟開始的網(wǎng)絡(luò)延遲發(fā)生的時間。 從而,
虛擬時間NL1 = 20 000
虛擬時間NL2 = 40 000
虛擬時間NL3 = 180 000
虛擬時間NL4 = 1 500
虛擬時間NL5 = 15 000
因此,
總虛擬時間=總實際時間+休眠(網(wǎng)絡(luò)延遲)
總虛擬時間= 240 000 + 16 500 = 256 500
虛擬時間NL1 = 20 000
虛擬時間NL2 = 40 000
虛擬時間NL3 = 180 000
虛擬時間NL4 = 1 500
虛擬時間NL5 = 15 000
模擬字段計算示例
接下來參考圖13A和圖13B,其分別示出了用于模擬無線電開啟間隔的計算操作示例和模擬無線電開啟間隔示例的圖形說明。更具體地,模擬字段計算包括模擬連接字段和模擬連接時間字段的計算。
在一個實施例中,crcs分析核心工具或模塊(未示出)可以計算由crcs分析核心工具維護(hù)和利用的擴(kuò)展的日志/報告數(shù)據(jù)字段,以建模移動網(wǎng)絡(luò)中的移動設(shè)備的信號。更具體地,crcs分析核心工具可以對網(wǎng)絡(luò)優(yōu)化架構(gòu)(例如,包括本文所討論的包括信號優(yōu)化和擴(kuò)展緩存技術(shù)的分布式緩存技術(shù))的效果進(jìn)行建模。例如,諸如圖2E的日志/報告數(shù)據(jù)分析核心255a或圖3E的CRSC分析核心375a的crcs分析核心工具或模塊可以計算模擬無線電開啟間隔。該計算可以包括基于一個或多個輸入日志(例如,包括網(wǎng)絡(luò)命中信息的流量活動日志)來計算一個或多個附加的日志/報告數(shù)據(jù)字段。
更具體地,如圖13B的示例所示,crcs分析核心工具或模塊利用網(wǎng)絡(luò)命中網(wǎng)絡(luò)日志( networkHit netLogs)來計算模擬無線電開啟間隔。
為了計算模擬字段,系統(tǒng)假定移動設(shè)備中的所有應(yīng)用都使用網(wǎng)絡(luò)優(yōu)化客戶端,并且沒有應(yīng)用可以在沒有網(wǎng)絡(luò)優(yōu)化的情況下啟動連接。那種情況的無線電日志被稱為模擬無線電日志。模擬連接字段指示如果在電話上沒有其他應(yīng)代替那些在網(wǎng)絡(luò)優(yōu)化客戶端的控制下的應(yīng)用,則將通過網(wǎng)絡(luò)發(fā)生的連接。類似地,模擬時間字段指示如果在電話上沒有其他應(yīng)用代替那些在網(wǎng)絡(luò)優(yōu)化客戶端的控制下的應(yīng)用,則將通過網(wǎng)絡(luò)將發(fā)生的連接的時間。
參考圖13A和圖13B的示例,下面的表7指示了包括網(wǎng)絡(luò)命中的輸入流量活動日志的相關(guān)部分。在一些實施例中,當(dāng)計算模擬無線電開啟間隔時,可以忽略真實的(實際的)無線電日志。因此,真實的(虛擬的)無線電日志項在下面的輸入表數(shù)據(jù)中沒有示出。
表7-輸入網(wǎng)絡(luò)日志字段
在該示例中,記錄(或項)DL1,DL2和DL3不是輸入。 相反,為了描述的清楚起見而示出了這些記錄。如本文所討論的,網(wǎng)絡(luò)日志項由 “NLx”指示。
諸如例如圖2E的日志/報告數(shù)據(jù)分析核心255a或圖3E的CRSC分析核心375a的crsc分析核心工具處理輸入日志(們),例如,以基于一個或多個輸入日志(例如,流量活動日志)計算一個或多個附加的日志/報告數(shù)據(jù)字段。該過程可以包括利用一個或多個長輪詢技術(shù)將一網(wǎng)絡(luò)日志項拆分為兩個或更多個網(wǎng)絡(luò)日志項。參照圖19A更詳細(xì)地示出和討論了該過程。如本示例所示,crcs分析核心工具計算模擬連接字段(或標(biāo)志)和模擬時間字段。下面示出了一示出輸出網(wǎng)絡(luò)日志字段的輸出示例表8。
表8-輸出網(wǎng)絡(luò)日志字段
在此示例中,NL1是第一模擬無線電開啟日志,因為網(wǎng)絡(luò)日志項在此開始。DL1是第一模擬無線電關(guān)閉日志,因為網(wǎng)絡(luò)延遲恰好在那時結(jié)束。NL2是第二模擬無線電開啟日志,原因與NL1相同。DL2是第二模擬無線電關(guān)閉日志,原因與RL1相同。NL3是第三模擬無線電開啟日志,原因與NL1相同。DL3是第三模擬無線電關(guān)閉日志,原因與RL1相同。
關(guān)于模擬連接字段的計算,NL1,NL2和NL3產(chǎn)生一模擬連接,因為它們均各自產(chǎn)生一模擬無線電開啟。因此,
模擬連接NL1 = 1;
模擬連接NL2 = 1;
模擬連接NL3 = 1。
關(guān)于模擬時間字段的計算,如果兩個相鄰網(wǎng)絡(luò)日志項之間的時間間隔大于休眠,則該第一個網(wǎng)絡(luò)日志項將具有等于休眠的模擬時間。否則,兩個相鄰網(wǎng)絡(luò)日志項之間的時間間隔將是該網(wǎng)絡(luò)日志項之間的實際時間。圖13C中示出了一個示例。
因此, 在圖13A-13C的示例中
模擬時間NL1 =休眠(網(wǎng)絡(luò)延遲)= 15 000
模擬時間NL2 =休眠(網(wǎng)絡(luò)延遲)= 15 000
模擬時間NL3 =休眠(網(wǎng)絡(luò)延遲)= 15 000
虛擬模擬字段計算示例
圖14A和14B分別示出了用于虛擬模擬無線電開啟間隔的計算的示例架構(gòu)和虛擬模擬無線電時間間隔的圖示。更具體地,下面描述的虛擬模擬字段計算包括虛擬模擬字段和虛擬模擬連接時間的計算。
在一個實施例中,crcs分析核心工具或模塊(未示出)可以計算由該crcs分析核心工具維護(hù)和利用的擴(kuò)展的日志/報告數(shù)據(jù)字段,以建模移動網(wǎng)絡(luò)中的移動設(shè)備的信號。更具體地,該crcs分析核心工具可以對網(wǎng)絡(luò)優(yōu)化架構(gòu)(例如,包括本文所討論的信號優(yōu)化和擴(kuò)展緩存技術(shù)的分布式緩存技術(shù))的效果進(jìn)行建模。例如,該crcs分析核心工具或模塊,例如諸如圖2E的日志/報告數(shù)據(jù)分析核心255a或圖3E的CRSC分析核心375a的crcs分析核心工具或模塊可以計算虛擬模擬無線電開啟間隔。該計算可以包括基于一個或多個輸入日志(例如,無線電日志和包括網(wǎng)絡(luò)命中和緩存命中信息的流量活動日志)來計算一個或多個附加的日志/報告數(shù)據(jù)字段。
更具體地,如圖14B中的示例所示,該crcs分析核心工具或模塊使用網(wǎng)絡(luò)命中和緩存命中網(wǎng)絡(luò)日志來計算虛擬模擬無線電開啟間隔。 如本文所討論的,無線電開啟(或活躍)間隔。
虛擬模擬字段指示在模擬環(huán)境中發(fā)生的連接,在該模擬環(huán)境中,移動設(shè)備上的通常使用該網(wǎng)絡(luò)優(yōu)化客戶端的所有應(yīng)用被模擬,但是該移動設(shè)備上并不存在網(wǎng)絡(luò)優(yōu)化。
虛擬模擬連接字段指示在模擬環(huán)境中將通過網(wǎng)絡(luò)發(fā)生的連接(們),在該模擬環(huán)境中,移動設(shè)備上的通常使用該網(wǎng)絡(luò)優(yōu)化客戶端的所有應(yīng)用被模擬,但是在該移動設(shè)備上并不存在網(wǎng)絡(luò)優(yōu)化。類似地,虛擬模擬時間字段指示在模擬環(huán)境中將通過網(wǎng)絡(luò)發(fā)生的連接的連接時間,在該模擬環(huán)境中,移動設(shè)備上的通常使用該網(wǎng)絡(luò)優(yōu)化客戶端的所有應(yīng)用被模擬,但是在該移動設(shè)備上不存在網(wǎng)絡(luò)優(yōu)化。
參考圖14A和圖14B的示例,下面的表9指示了包括網(wǎng)絡(luò)命中的輸入日志的相關(guān)部分。模擬環(huán)境中,移動設(shè)備上的通常使用網(wǎng)絡(luò)優(yōu)化客戶端的所有應(yīng)用被模擬,但是在該移動設(shè)備上不存在網(wǎng)絡(luò)優(yōu)化。
表9-輸入網(wǎng)絡(luò)日志字段
在該示例中,記錄(或項)DL1,DL2和DL3不是輸入。相反,為了描述的清楚起見示出這些記錄。如本文所討論的,網(wǎng)絡(luò)日志項由 “NLx”指示。
諸如例如圖2E的日志/報告數(shù)據(jù)分析核心255a或圖3E的CRSC分析核心375a的crcs分析核心工具處理輸入日志(們),例如,以基于一個或多個輸入日志(例如,流量活動日志)計算一個或多個附加的日志/報告數(shù)據(jù)字段。該過程可以包括利用一個或多個長輪詢技術(shù)將一個網(wǎng)絡(luò)日志項拆分為兩個或更多個網(wǎng)絡(luò)日志項。參照圖19A更詳細(xì)地示出和討論了該過程。如本示例所示,crcs分析核心工具計算模擬連接字段(或標(biāo)志)和模擬時間字段。下面示出了描述輸出網(wǎng)絡(luò)日志字段的輸出示例表10。
表10-輸出網(wǎng)絡(luò)日志字段
在本示例中,NL4是第四虛擬模擬無線電開啟日志,因為“CLIENT_BYTES_IN”或“CLIENT_BYTES_OUT”大于零,表示數(shù)據(jù)被傳輸于網(wǎng)絡(luò)優(yōu)化客戶端和網(wǎng)絡(luò)優(yōu)化服務(wù)器之間。注意,NL5不是一虛擬模擬無線電開啟日志項,因為NL4和NL5之間的時間間隔小于休眠。
每個應(yīng)用的模擬字段計算示例
圖15A和15B分別示出了用于計算模擬無線電開啟間隔的示例架構(gòu)和模擬無線電時間間隔示例的圖示。更具體地,下面描述的模擬字段計算包括基于每個應(yīng)用的虛擬模擬字段和虛擬模擬連接時間字段的計算。
在一個實施例中,crcs分析核心工具或模塊(未示出)可以計算由crcs分析核心工具維護(hù)和利用的擴(kuò)展的日志/報告數(shù)據(jù)字段,以建模移動網(wǎng)絡(luò)中的移動設(shè)備的信號。更具體地,crcs分析核心工具可以對網(wǎng)絡(luò)優(yōu)化架構(gòu)(例如,包括本文所討論的信號優(yōu)化和擴(kuò)展緩存技術(shù)的分布式緩存技術(shù))的效果進(jìn)行建模。例如,諸如圖2E的日志/報告數(shù)據(jù)分析核心225a或圖3E的CRSC分析核心375a的crcs分析核心工具或模塊可以在每個應(yīng)用的基礎(chǔ)上計算模擬無線電開啟間隔。 該計算可以包括基于一個或多個輸入日志(例如,包括網(wǎng)絡(luò)命中信息的流量活動日志)來計算一個或多個附加的日志/報告數(shù)據(jù)字段。
更具體地,如圖15B的示例所示,crcs分析核心工具或模塊利用某些應(yīng)用的網(wǎng)絡(luò)日志來計算每個應(yīng)用的模擬的無線電開啟間隔。在圖15B的示例中,網(wǎng)絡(luò)日志NL1與第一應(yīng)用#1相關(guān)聯(lián),網(wǎng)絡(luò)日志NL2和NL3與第二應(yīng)用#2相關(guān)聯(lián)。
在圖15C的示例中示出了每個第一應(yīng)用#1的模擬無線電開啟間隔。 類似地,圖15D示出了每個第二應(yīng)用#2的模擬無線電開啟間隔。
模擬各應(yīng)用字段指示了在模擬環(huán)境中發(fā)生的連接,在該模擬環(huán)境中,移動設(shè)備上的通常使用網(wǎng)絡(luò)優(yōu)化客戶端的所有應(yīng)用被模擬,但是在該移動設(shè)備并不存在網(wǎng)絡(luò)優(yōu)化。為了計算模擬各應(yīng)用字段,系統(tǒng)僅考慮在移動設(shè)備上的一個應(yīng)用(例如,應(yīng)用#1)。該一個應(yīng)用(例如,應(yīng)用#1)利用網(wǎng)絡(luò)優(yōu)化客戶端,并且沒有應(yīng)用可以在沒有網(wǎng)絡(luò)優(yōu)化的情況下開始連接。這種情況的無線電日志稱為模擬各應(yīng)用無線電日志。
模擬各應(yīng)用連接是指如果在移動設(shè)備上安裝了一個應(yīng)用(在網(wǎng)絡(luò)優(yōu)化客戶端的控制下)并且在電話上沒有其他應(yīng)用,則將通過網(wǎng)絡(luò)發(fā)生的連接。類似地,模擬各應(yīng)用時間是指如果在移動設(shè)備上安裝了一個應(yīng)用(在網(wǎng)絡(luò)優(yōu)化客戶端的控制下)并且在電話上沒有其他應(yīng)用,則將通過網(wǎng)絡(luò)發(fā)生的連接的時間。
參考圖15A和圖15B的示例,下面的表11指示了包括網(wǎng)絡(luò)命中的輸入日志的相關(guān)部分。在計算模擬無線電開啟間隔時,我們忽略真實的(實際的)無線電日志,這就是為什么它們不在輸入數(shù)據(jù)中顯示的原因。參見表11中的示例。
表11-輸入網(wǎng)絡(luò)日志字段
在該示例中,記錄(或項)DL1,DL2和DL3不是輸入。 相反,為了描述的清楚起見,示出了這些記錄。如本文所討論的,網(wǎng)絡(luò)日志項由“NLx”指示。
諸如圖2E的日志/報告數(shù)據(jù)分析核心255a或圖3E的CRSC分析核心375a之類的crcs分析核心工具處理輸入日志(們),例如,以基于一個或多個輸入日志(例如,流量活動日志)計算一個或多個附加的日志/報告數(shù)據(jù)字段。該過程可以包括利用一個或多個長輪詢技術(shù)將一個網(wǎng)絡(luò)日志項拆分為兩個或更多個網(wǎng)絡(luò)日志項。該過程參照圖19A更詳細(xì)地被示出和討論。如本示例所示,crcss分析核心工具計算每個應(yīng)用的模擬連接字段(或標(biāo)志)和每個應(yīng)用的模擬時間字段。 下面示出了輸出網(wǎng)絡(luò)日志字段的示例輸出表12。
表12-輸出網(wǎng)絡(luò)日志字段
在此示例中,NL1是第一模擬無線電開啟日志,因為網(wǎng)絡(luò)日志項在此開始。DL1是第一模擬無線電關(guān)閉日志,因為恰好在那時網(wǎng)絡(luò)延遲結(jié)束。NL2是第二模擬無線電開啟日志,原因與NL1相同。DL2是第二模擬無線電關(guān)閉,原因與RL1相同。NL3是第三模擬無線電開啟日志,與NL1相同。DL3是第三模擬無線電關(guān)閉日志,原因與RL1相同。
關(guān)于模擬各應(yīng)用連接字段,NL1,NL2和NL3產(chǎn)生模擬連接,因為它們各自引起模擬無線電開啟事件。因此,
模擬連接NL1 = 1
模擬連接NL2 = 1
模擬連接NL3 = 1
并且,
模擬時間NL1 =休眠(網(wǎng)絡(luò)延遲)= 15 000
模擬時間NL2 =休眠(網(wǎng)絡(luò)延遲)= 15 000
模擬時間NL3 =休眠(網(wǎng)絡(luò)延遲)= 15 000
每個應(yīng)用的虛擬模擬字段計算示例
圖16A和16B分別示出了用于計算一每個應(yīng)用的虛擬模擬無線電開啟間隔的示例架構(gòu)以及一每個應(yīng)用的虛擬模擬無線電時間間隔的示例。 更具體地,下面描述每個應(yīng)用的虛擬模擬字段計算包括每個應(yīng)用的虛擬模擬字段和每個應(yīng)用的虛擬模擬連接時間字段的計算。
在一個實施例中,crcs分析核心工具或模塊(未示出)可以計算由該crcs分析核心工具維護(hù)和利用的擴(kuò)展的日志/報告數(shù)據(jù)字段,以建模移動網(wǎng)絡(luò)中的移動設(shè)備的信號。更具體地,crcs分析核心工具可以對網(wǎng)絡(luò)優(yōu)化架構(gòu)(例如,包括本文所討論的信號優(yōu)化和擴(kuò)展緩存技術(shù)的分布式緩存技術(shù))的效果進(jìn)行建模。例如,諸如圖2E的日志/報告數(shù)據(jù)分析核心255a或圖3E的CRSC分析核心375a的crcs分析核心工具或模塊可以計算虛擬模擬無線電開啟間隔。該計算可以包括基于一個或多個輸入日志(例如,無線電日志和包括網(wǎng)絡(luò)命中和緩存命中信息的流量活動日志)來計算一個或多個附加的日志/報告數(shù)據(jù)字段。
更具體地,如圖16B的示例所示,crcs分析核心工具或模塊使用網(wǎng)絡(luò)命中和緩存命中網(wǎng)絡(luò)日志來計算虛擬模擬無線電開啟間隔。如本文所討論的,該無線電開啟間隔指示了移動設(shè)備無線電活躍期間的時間段。
在圖16C的示例中,示出了與第一應(yīng)用#1相關(guān)聯(lián)的虛擬模擬無線電開啟間隔。類似地,圖16D的示例示出了與第二應(yīng)用#2相關(guān)聯(lián)的虛擬模擬無線電開啟間隔。
每個應(yīng)用的虛擬模擬用字段指示了在模擬環(huán)境中發(fā)生的連接,在該模擬環(huán)境中,移動設(shè)備上的通常使用網(wǎng)絡(luò)優(yōu)化客戶端的單個應(yīng)用被模擬,但是在該移動設(shè)備上不存在網(wǎng)絡(luò)優(yōu)化。
每個應(yīng)用的虛擬模擬連接字段指示了在模擬環(huán)境中將通過網(wǎng)絡(luò)發(fā)生的連接(們),在該模擬環(huán)境中,在移動設(shè)備上的通常使用該網(wǎng)絡(luò)優(yōu)化客戶端的單個應(yīng)用被模擬,但是在移動設(shè)備上不存在網(wǎng)絡(luò)優(yōu)化。 類似地,虛擬模擬時間字段指示了在模擬環(huán)境中通過網(wǎng)絡(luò)發(fā)生的連接的連接時間,在該模擬環(huán)境中,移動設(shè)備上的通常使用網(wǎng)絡(luò)優(yōu)化客戶端的單個應(yīng)用被模擬,但是在移動設(shè)備上不存在網(wǎng)絡(luò)優(yōu)化。
參考圖16A和圖16B的示例,下面的表13指示了包括網(wǎng)絡(luò)命中的輸入日志的相關(guān)部分。在模擬環(huán)境中,移動設(shè)備上的通常使用網(wǎng)絡(luò)優(yōu)化客戶端的所有應(yīng)用都被模擬,但是在該移動設(shè)備不存在網(wǎng)絡(luò)優(yōu)化。
表13-輸入網(wǎng)絡(luò)日志字段
在該示例中,記錄(或項)DL1,DL2和DL3不是輸入。 相反,為了描述的清楚起見,示出了這些記錄。如本文所討論的,網(wǎng)絡(luò)日志項由 “NLx”指示。
諸如圖2E的日志/報告數(shù)據(jù)分析核心255a或圖3E的CRSC分析核心375a之類的crcs分析核心工具處理輸入日志(們),例如,基于一個或多個輸入日志(例如,流量活動日志),以計算一個或多個附加的日志/報告數(shù)據(jù)字段。該過程可以包括利用一個或多個長輪詢技術(shù)將一個網(wǎng)絡(luò)日志項拆分為兩個或更多個網(wǎng)絡(luò)日志項。該過程參照圖19A更詳細(xì)地被示出和討論。如本示例所示,crcs分析核心工具計算每個應(yīng)用的模擬連接字段(或標(biāo)志)和每個應(yīng)用的模擬時間字段。下面示出了輸出網(wǎng)絡(luò)日志字段的示例輸出表14。
表14-輸出網(wǎng)絡(luò)日志字段
節(jié)約值示例
如本文所討論的,各種字段計算可以用于對移動網(wǎng)絡(luò)中的信號進(jìn)行建模。例如,該建模可以包括計算節(jié)約連接和節(jié)約時間。該節(jié)約連接指示作為使用網(wǎng)絡(luò)優(yōu)化架構(gòu)的結(jié)果而節(jié)約的連接的量,數(shù)量或總量。在一個實施例中,節(jié)約的連接可以被建模如下:
節(jié)約連接=虛擬連接 - 實際連接,
節(jié)約模擬連接=虛擬模擬連接 - 模擬連接,
節(jié)約模擬各應(yīng)用連接=每個應(yīng)用的虛擬模擬連接 - 每個應(yīng)用的模擬連接,
每個主機(jī)的節(jié)約模擬連接=每個主機(jī)的虛擬模擬連接擬 – 每個主機(jī)的模擬連接。
類似地,該節(jié)約時間是作為使用該網(wǎng)絡(luò)優(yōu)化架構(gòu)的結(jié)果而節(jié)約的連接時間的時間間隔。在一個實施例中,節(jié)約時間可以被建模如下:
節(jié)約時間=虛擬時間 - 實際時間,
節(jié)約模擬時間=虛擬模擬時間 - 模擬時間,
每個應(yīng)用的節(jié)約模擬時間=每個應(yīng)用的虛擬模擬時間 –每個應(yīng)用的模擬時間,
每個主機(jī)的節(jié)約模擬時間=每個主機(jī)的虛擬模擬時間- 每個主機(jī)的模擬時間。
連接標(biāo)志和時間
圖17A示出了計算上述連接標(biāo)志和連接時間間隔的示例。連接標(biāo)志指示了特定的網(wǎng)絡(luò)日志是否引起無線電開啟。在一個實施例中,為了確定每個無線電開啟間隔的連接標(biāo)志,最近的網(wǎng)絡(luò)日志到無線電開啟日志記錄用連接標(biāo)志標(biāo)記。重要的是,只有在請求延遲鄰域到無線電開啟日志中的網(wǎng)絡(luò)日志用標(biāo)記有連接標(biāo)志。
圖17B示出了無線電開啟間隔示例。無線電開啟間隔可以被計算,維持,和/或以其它方式獲得,以計算指示特定網(wǎng)絡(luò)日志的無線電開啟時間的影響的連接時間。對于每個無線電開啟間隔,該無線電開啟時間等于屬于該特定間隔的網(wǎng)絡(luò)日志的連接時間值的總和。
網(wǎng)絡(luò)命中
網(wǎng)絡(luò)命中是網(wǎng)絡(luò)優(yōu)化服務(wù)器端的數(shù)據(jù)傳輸?shù)钠瘘c。在一個實施例中,網(wǎng)絡(luò)日志項被認(rèn)為是網(wǎng)絡(luò)命中,當(dāng)其關(guān)聯(lián)字段的這些條件中的至少一個條件為真時:
緩存命中
緩存命中是緩存中的數(shù)據(jù)傳輸?shù)钠瘘c。在一個實施例中,網(wǎng)絡(luò)日志項被認(rèn)為是緩存命中,當(dāng)其不是網(wǎng)絡(luò)日志命中并且其關(guān)聯(lián)字段的這些條件中的至少一個為真時:
詳細(xì)計算示例
以下示例說明了另一個字段計算。首先,假設(shè)以下輸入網(wǎng)絡(luò)日志和無線電日志:
表15-輸入網(wǎng)絡(luò)日志字段
表16-輸入無線電日志字段
圖18描繪了在一段時間上的日志的示例方案。 例如,假設(shè):
t1 =(07:26:20.000 - 07:26:00.000)= 20 000 ms,
t2 =(07:27:00.000-07:26:20.000)= 40 000ms,
t3 =(07:27:00.100 - 07:27:00.000)= 100ms,
t4 =(07:29:00.000-07:27:00.100)= 119000ms,
t5 =(07:29:00.500 - 07:29:00.000)= 500ms,
t6 =(07:30:00.07:29:00.500)= 59500ms,
t7 =(07:31:00.000 - 07:30:00.000)= 60 000 ms,
網(wǎng)絡(luò)延遲= 15秒,
因此,
t1,(t2 + t3),t4,(t6 + t7)>網(wǎng)絡(luò)延遲; 并且
t5 <網(wǎng)絡(luò)延遲;
t3 <請求延遲。
下面的表17示出了計算的結(jié)果
表17-計算結(jié)果
表18顯示了輸出網(wǎng)絡(luò)日志描述。請注意,輸出時間間隔以毫秒為單位。
。
表18-輸出網(wǎng)絡(luò)日志
長輪詢處理示例
根據(jù)一實施例,圖19A圖形地示出了用于將一網(wǎng)絡(luò)日志項分割成兩個網(wǎng)絡(luò)日志項目長輪詢過程。 更具體地,本文描述的長輪詢過程是將一網(wǎng)絡(luò)日志項分割成兩個網(wǎng)絡(luò)日志項的過程。在一個實施例中,用于對網(wǎng)絡(luò)日志項執(zhí)行長輪詢過程的條件是:
?RESPONSE_TIME大于或等于網(wǎng)絡(luò)延遲(默認(rèn)值,例如15 000 ms);
?網(wǎng)絡(luò)日志項是網(wǎng)絡(luò)命中或緩存命中;
?SERVER_BYTES_IN / RESPONSE_TIME的值小于或等于拆分比(默認(rèn)值,例如3 000 ms)。
圖19B圖形地示出了為了使得網(wǎng)絡(luò)日志被分為兩部分所必須為真的條件。 更具體地,如果SERVER_BYTES_IN / RESPONSE_TIME的值小于或等于拆分比(默認(rèn)值,例如,3 000ms),則可以該網(wǎng)絡(luò)日志能夠被分為兩部分。 下面的表19示出了作為執(zhí)行長輪詢過程的結(jié)果而發(fā)生的字段修改。
表19-長輪詢處理后改變的字段
下面分別示出了輸入和輸出網(wǎng)絡(luò)日志拆分前后的示例。
。
表20-輸入網(wǎng)絡(luò)日志和無線電字段
表21-輸入網(wǎng)絡(luò)日志和無線電字段
日志預(yù)處理示例
在一些實施例中,在填充所計算的字段中的數(shù)據(jù)之前執(zhí)行日志預(yù)處理。 例如,可以執(zhí)行以下過程:
如果
那么用SERVER_BYTES_IN替換CLIENT_BYTES_OUT。
如果
那么用SERVER_BYTES_IN替換CLIENT_BYTES_OUT。
如果
那么用SERVER_BYTES_OUT替換CLIENT_BYTES_IN。
如果
那么用零值替換CLIENT_BYTES_IN。
如果RESPONSE_TIME <0,那么將RESPONSE_TIME替換為零值。
報告處理
現(xiàn)在描述各種示例字段的計算。
未充電時間計算示例
圖20圖示了TIME_ON_NOT_CHARGING字段的計算示例。 在一些實施例中,功率日志可以用于進(jìn)行該計算。 在一些實施例中,TIME_ON_NOT_CHARGING字段表示當(dāng)設(shè)備的電池狀況正在下降的間隔的總和。例如,TIME_ON_NOT_CHARGING = [電池間隔1] + [電池間隔2]。
電荷下降百分比計算示例
圖21圖形地示出CHARGE_DROP_PERCENT字段的一計算示例。 同樣,可以使用功率日志進(jìn)行該計算。在一些實施例中,該下降百分比表示當(dāng)電池狀況正在下降時電池狀況的變化的總和。例如,CHARGE_DROP_PERCENT = [89-25] + [60-10] = 64 + 50 = 114(百分比)。
無線電狀態(tài)時間示例
下面的表22描述了各種示例前一無線電狀態(tài)與相應(yīng)的報告字段之間的關(guān)系。更具體地,下面的表描述了TIME_RADIO_STATE_n字段的計算,其中n從1到10。在該示例中,使用無線電日志,并且如果該無線電日志中的INTERVAL的值大于零,則將INTERVAL字段的值保存到其中一個TIME_RADIO_STATE_n字段。
。
表22-前一無線電狀態(tài)和報告字段之間的對應(yīng)
轉(zhuǎn)換到無線電狀態(tài)的計算示例
下面的表23描述了TRANS_INTO_RADIO_STATE_n字段,其中n從1到10。在該示例中,使用無線電日志。 TRANS_INTO_RADIO_STATE_n字段表示無線電日志已轉(zhuǎn)換到某個狀態(tài)的次數(shù)。
。
表23-當(dāng)前無線電狀態(tài)和報告字段之間的對應(yīng)
WCDMA時間計算示例
下面的表24描述了WCDMA_TIME_IN_DCH,WCDMA_TIME_IN_FACH,WCDMA_TIME_IN_PCH和WCDMA_TIME_IN_IDLE字段。同樣,在該示例中使用無線電日志,并且如果該無線電日志中的INTERVAL的值大于零,則INTERVAL字段的值被保存到字段WCDMA_TIME_ <...>字段之一中。前一無線電狀態(tài)和報告字段之間的對應(yīng)關(guān)系如下表所示。
。
表24-前一無線電狀態(tài)和報告字段之間的對應(yīng)
WCDMA轉(zhuǎn)換到無線電狀態(tài)的計算示例
下面的表25描述了WCDMA_TRANS_INTO_DCH,WCDMA_TRANS_ INTO_FACH,WCDMA_TRANS_INTO_PCH,WCDMA_TRANS_INTO_IDLE計算字段。 在本示例中使用無線電日志。字段WCDMA_TRANS_INTO _ <...>表示無線電日志已轉(zhuǎn)換到某個狀態(tài)的次數(shù)。
表25-當(dāng)前無線電狀態(tài)和報告字段之間的對應(yīng)
總字節(jié)計算示例
下表26描述了TOTAL_BYTES_FROM_APP,TOTAL_BYTES_TO_APP,TOTAL_BYTES_FROM_NET,TOTAL_BYTES_TO_NET,TOTAL_BYTES_FROM_CACHE,TOTAL_BYTES_TO_CACHE計算字段。
表26-字節(jié)計算
總命中計算示例
下表27描述了TOTAL_HITS_FROM_APP,TOTAL_HITS_TO_APP,TOTAL_HITS_FROM_NET,TOTAL_HITS_TO_NET,TOTAL_HITS_FROM_CACHE和TOTAL_HITS_TO_CACHE計算字段。
。
表27-命中計算
緩存請求.字節(jié)和命中示例
下面的表28描述了TOTAL_BYTES_CACHE_REQ和TOTAL_HITS_CACHE_REQ計算字段。
。
表28-緩存請求計算
連接計算示例
下面的表29描述了SIM_RADIO_STATE_CHANGES_ACTUAL和SIM_RADIO_STATE_CHANGES_SAVED計算字段。在一些實施例中,網(wǎng)絡(luò)日志字段可以用于計算這些報告字段。計算有兩種情況:
?報告關(guān)鍵類別為“應(yīng)用”;
?報告鍵類別是其他(不是“應(yīng)用”)
報告關(guān)鍵類別為“應(yīng)用”示例
表30-連接計算
報告鍵類別是其他(不是“應(yīng)用”)示例
表31-連接計算
時間計算示例
下面的表32描述了SIM_RADIO_TIME_CONN_ACTUAL和SIM_RADIO_TIME_CONN_SAVED計算字段。在一些實施例中,網(wǎng)絡(luò)日志字段用于計算這些報告字段。計算有兩種情況:
?報告關(guān)鍵類別為“應(yīng)用”;
?報告鍵類別是其他(不是“應(yīng)用”)
報告關(guān)鍵類別為“應(yīng)用”示例
表33-時間計算
報告鍵類別是其他(不是“應(yīng)用”)示例
表34-時間計算
網(wǎng)絡(luò)日志字段示例
表35-網(wǎng)絡(luò)日志格式
報告格式字段示例
表36-報告格式
圖22示出了各種示例性測量點,諸如例如圖2E的日志/報告數(shù)據(jù)分析核心255a或圖3E的CRSC分析核心375a之類的日志/報告數(shù)據(jù)分析核心模塊可以從其執(zhí)行用于對數(shù)據(jù)網(wǎng)絡(luò)中的信號建模的測量。 可以由日志/報告數(shù)據(jù)分析核心模塊適配的輸出指標(biāo)的一些示例在圖23A-23E中列出。
如上所述,在一些實施例中,日志/報告數(shù)據(jù)分析核心可以進(jìn)行各種計算。例如,圖24A圖形地示出了網(wǎng)絡(luò)優(yōu)化字節(jié)計算的示例。
此示例中,關(guān)于HTTPS流量,該網(wǎng)絡(luò)優(yōu)化的模擬證書小于從網(wǎng)絡(luò)接收的證書,這將表現(xiàn)為負(fù)節(jié)約。對于HTTPS握手,到應(yīng)用的字節(jié)被替換為來自網(wǎng)絡(luò)的字節(jié)。僅關(guān)于來自應(yīng)用的字節(jié),網(wǎng)絡(luò)優(yōu)化接收與網(wǎng)絡(luò)可用性無關(guān)的請求。通常由網(wǎng)絡(luò)不可用引起。在請求不能去到網(wǎng)絡(luò)并且不能夠被緩存服務(wù)的情況下,調(diào)整optimization-AT-ADJ為0。
在該示例中,(調(diào)整的)應(yīng)用(App)和網(wǎng)絡(luò)流量之間的差異是節(jié)約的流量(即,[network optimization-AT-ADJ] - [network optimization-NT] = [network optimization-ST])。節(jié)約的流量加上總網(wǎng)絡(luò)流量是總應(yīng)用流量(即,[network optimization-ST] + [TNT] = [TAT])。(調(diào)整的)App流量除以總應(yīng)用流量是字節(jié)覆蓋(即,[network optimization -AT-ADJ] / [TAT] = BC。
在一些實施例中,網(wǎng)絡(luò)優(yōu)化字節(jié)計算的覆蓋可以受以下影響:
?流量直接通向網(wǎng)絡(luò)接口,而不是通過:網(wǎng)絡(luò)優(yōu)化
?配置為旁路的TCP端口:IMAP,POP,7TP
?故障轉(zhuǎn)移中的網(wǎng)絡(luò)優(yōu)化客戶端
?第三方客戶端重新配置流量流(通常為共享)
?針對不正確接口記錄的總網(wǎng)絡(luò)流量:為TNT定義的接口是手動配置的。新的設(shè)備型號需要驗證。
?時間因素:定期記錄總網(wǎng)絡(luò)流量,同時記錄每個事務(wù)的網(wǎng)絡(luò)優(yōu)化應(yīng)用流量。數(shù)據(jù)收集中斷,例如設(shè)備重新啟動可能會對這些指標(biāo)造成不同的截止。網(wǎng)絡(luò)更改通知也可能出現(xiàn)在較長事務(wù)的中間,使得不清楚哪個網(wǎng)絡(luò)接口被使用了。
?TCP / IP和UDP協(xié)議開銷和TCP重試:測量總網(wǎng)絡(luò)流量,但未測量網(wǎng)絡(luò)優(yōu)化應(yīng)用流量。
圖24A-24J圖形地示出了可以在日志/報告數(shù)據(jù)分析核心模塊的實施例中使用的示例輸出度量的各種計算。
圖25描繪了示出分布式網(wǎng)絡(luò)優(yōu)化系統(tǒng)的一般架構(gòu)概述的示例圖,該分布式網(wǎng)絡(luò)優(yōu)化系統(tǒng)包括測量點,日志/報告數(shù)據(jù)分析核心模塊可以從該測量點執(zhí)行用于對數(shù)據(jù)網(wǎng)絡(luò)中的信號建模的測量。圖26A-26N示出了日志/報告數(shù)據(jù)分析核心模塊可以適配的附加的和/或備選的輸出指標(biāo)的示例。
例如,圖26A-26C示出了數(shù)據(jù)指標(biāo)示例。圖26D-26F示出了優(yōu)化指標(biāo)示例。在一些實施例中,IS網(wǎng)絡(luò)優(yōu)化/ ISOTC可以存在異常:內(nèi)部信號優(yōu)化公式在通過協(xié)議的計算中不再使用模擬值。圖26G示出了用戶指標(biāo)示例。在一些實施例中,用戶指標(biāo)可以用于在關(guān)注的時間段內(nèi)提供唯一數(shù)量的用戶(例如,由7TP地址標(biāo)識)或用戶的組合。此外,指標(biāo)可以用于計算指標(biāo),例如每個用戶每天的字節(jié)/連接。圖26H示出了電池指標(biāo)示例。圖26I-26K示出了信號指標(biāo)示例。例如,信號總體指標(biāo)可以提供在關(guān)注的時間段內(nèi),由無線電狀態(tài)所破壞的狀態(tài)轉(zhuǎn)換的數(shù)量。同樣,總體時間連接可以提供在關(guān)注的時間段內(nèi),由無線電狀態(tài)所破壞的連接的時間。圖26L-26M示出了維度指標(biāo)示例。圖26N示出了優(yōu)化指標(biāo)示例。圖26N示出了優(yōu)化指標(biāo)示例。
圖27示出了計算機(jī)系統(tǒng)的示例形式的機(jī)器的圖示,在其中,可以執(zhí)行用于使該機(jī)器執(zhí)行本文所討論的方法中的任何一個或多個的一組指令。
在替代實施例中,該機(jī)器作為獨(dú)立設(shè)備操作或者可以被連接(例如,聯(lián)網(wǎng))到其他機(jī)器。在聯(lián)網(wǎng)部署中,該機(jī)器可以在客戶端-服務(wù)器網(wǎng)絡(luò)環(huán)境中作為服務(wù)器或客戶端機(jī)器操作,或者在對等(或分布式)網(wǎng)絡(luò)環(huán)境中作為對等機(jī)器操作。
該機(jī)器可以是服務(wù)器計算機(jī),客戶端計算機(jī),個人計算機(jī)(PC),用戶設(shè)備,平板PC,膝上型計算機(jī),機(jī)頂盒(STB),個人數(shù)字助理(PDA) 移動電話,iPhone,iPad,黑莓,處理器,電話,網(wǎng)絡(luò)設(shè)備,網(wǎng)絡(luò)路由器,交換機(jī)或網(wǎng)橋,控制臺,手持控制臺,(手持)游戲設(shè)備,音樂播放器 ,任何便攜式,移動的,手持設(shè)備或能夠執(zhí)行指定要由該機(jī)器采取的動作的一組指令(序列或其他)的任何機(jī)器。
雖然機(jī)器可讀介質(zhì)或機(jī)器可讀存儲介質(zhì)在示例性實施例中被示為是單個的介質(zhì),但是術(shù)語“機(jī)器可讀介質(zhì)”和“機(jī)器可讀存儲介質(zhì)”應(yīng)該被認(rèn)為包括單個介質(zhì)或多個媒體(例如,集中式或分布式數(shù)據(jù)庫和/或相關(guān)聯(lián)的緩存和服務(wù)器),其存儲一個或多個指令集。術(shù)語“機(jī)器可讀介質(zhì)”和“機(jī)器可讀存儲介質(zhì)”還將被認(rèn)為包括能夠存儲,編碼或攜帶用于由機(jī)器執(zhí)行的一組指令的任何介質(zhì),并且使得機(jī)器執(zhí)行任何一個或多個本公開的技術(shù)和創(chuàng)新的方法。
一般來說,被執(zhí)行以實現(xiàn)本公開的實施例的例程可以被實現(xiàn)為被稱為“計算機(jī)程序”的操作系統(tǒng)或特定應(yīng)用,組件,程序,對象,模塊或指令序列的一部分。計算機(jī)程序通常包括在各種事件在計算機(jī)的各種存儲器和存儲設(shè)備中的一個或多個指令,當(dāng)由計算機(jī)中的一個或多個處理單元或處理器讀取和執(zhí)行時,使得計算機(jī)執(zhí)行操作以執(zhí)行涉及本公開的各個方面的元件。
此外,盡管已經(jīng)在功能齊全的計算機(jī)和計算機(jī)系統(tǒng)的環(huán)境下描述了實施例,但是本領(lǐng)域技術(shù)人員將理解,各種實施例能夠作為程序產(chǎn)品以各種形式分發(fā),并且本公開能夠同樣的應(yīng)用,而不考慮用于實際實現(xiàn)分發(fā)的機(jī)器或計算機(jī)可讀介質(zhì)的特定類型。
機(jī)器可讀存儲介質(zhì),機(jī)器可讀介質(zhì)或計算機(jī)可讀(存儲)介質(zhì)包括括但不限于可記錄類型介質(zhì),諸如易失性和非易失性存儲設(shè)備,軟盤和其他可移動盤,硬盤驅(qū)動器 ,光盤(例如,只讀光盤存儲器(CD ROM),數(shù)字通用盤(DVD)等)等以及諸如數(shù)字和模擬通信鏈路的傳輸型介質(zhì)。
附加實施例
在一些實施例中,公開了一種在移動網(wǎng)絡(luò)中建模信號的方法。 該方法包括:確定由在移動網(wǎng)絡(luò)中的移動設(shè)備上執(zhí)行的移動應(yīng)用發(fā)起的事務(wù)是否引起需要相應(yīng)的無線電連接的網(wǎng)絡(luò)信號,其中由該事務(wù)引起的網(wǎng)絡(luò)信號的至少一部分由流量優(yōu)化引擎過濾; 并且至少部分地基于過濾的網(wǎng)絡(luò)信號來對移動設(shè)備的網(wǎng)絡(luò)信號進(jìn)行建模。
在一些實施例中,過濾的網(wǎng)絡(luò)信令不引起相應(yīng)的無線電連接。
在一些實施例中,為移動設(shè)備建模網(wǎng)絡(luò)信號還包括計算指示作為過濾的結(jié)果而被節(jié)約的無線電連接的總數(shù)的信號效率。
在一些實施例中,計算信號效率還包括:訪問與移動設(shè)備相關(guān)聯(lián)的無線電日志和流量活動日志; 基于無線電日志和流量活動日志對虛擬無線電連接的數(shù)量進(jìn)行建模,其中虛擬無線電連接指示如果沒有所述過濾將發(fā)生的無線電連接; 基于無線電日志確定實際無線電連接的數(shù)量,其中所節(jié)約的無線電連接的總數(shù)包括虛擬無線電連接的數(shù)量與實際無線電連接的數(shù)量之間的差。
在一些實施例中,為移動設(shè)備建模網(wǎng)絡(luò)信號還包括計算指示作為過濾的結(jié)果而節(jié)約的總的無線電連接時間的連接時間效率。
在一些實施例中,所述方法還包括由流量優(yōu)化引擎應(yīng)用流量優(yōu)化技術(shù)以過濾網(wǎng)絡(luò)信號,使得網(wǎng)絡(luò)信號的至少一部分被過濾。
在一些實施例中,所述方法還包括訪問指示在移動設(shè)備中的多個流量測量點處測量的流量指標(biāo)的流量活動日志,其中建模網(wǎng)絡(luò)信號還包括基于流量指標(biāo)計算連接狀態(tài)和連接時間間隔。
在一些實施例中,為移動設(shè)備建模網(wǎng)絡(luò)信號還包括將網(wǎng)絡(luò)信號歸因于在移動設(shè)備上執(zhí)行的移動應(yīng)用的單獨(dú)應(yīng)用。
在一些實施例中,所述方法還包括訪問與移動設(shè)備相關(guān)聯(lián)的無線電日志和流量活動日志,其中所述無線電日志指示移動設(shè)備無線電的狀態(tài),其中所述流量活動日志指示在該移動設(shè)備中的多個測量點處測量的各種流量指標(biāo);以及通過計算一個或多個日志/報告數(shù)據(jù)字段來維護(hù)所述流量活動日志。
在一些實施例中,基于一個或多個日志/報告數(shù)據(jù)字段來對網(wǎng)絡(luò)信號進(jìn)行建模。
在一些實施例中,維護(hù)流量活動日志包括長輪詢。
在一些實施例中,一個或多個日志/報告數(shù)據(jù)字段被劃分為連接標(biāo)志字段和連接時間計數(shù)字段。
在一些實施例中,一個或多個日志/報告數(shù)據(jù)字段被分類為以下類別中的一個或多個:實際的,模擬的,實際模擬的,虛擬模擬的,每個應(yīng)用的實際模擬,以及每個應(yīng)用的虛擬模擬。
在一些實施方案中,流量優(yōu)化引擎包括分布式緩存和代理系統(tǒng)的一個或多個元件。
在一些實施例中,分布式緩存和代理系統(tǒng)包括代理客戶端和代理服務(wù)器。
在一些實施例中,經(jīng)過濾的無線電連接由代理客戶端本地緩存。
在一些實施例中,公開了一種在移動網(wǎng)絡(luò)中建模網(wǎng)絡(luò)信號的方法。 該方法包括:訪問與在移動網(wǎng)絡(luò)中操作的移動設(shè)備相關(guān)聯(lián)的無線電日志,所述無線電日志指示移動設(shè)備無線電的狀態(tài); 訪問與所述移動設(shè)備相關(guān)聯(lián)的流量活動日志,所述流量活動日志指示在所述移動設(shè)備中的多個測量點處測量的各種流量指標(biāo); 基于所述無線電日志和所述流量活動日志中的一個或多個來計算一個或多個日志/報告數(shù)據(jù)字段; 以及基于所述一個或多個日志/報告數(shù)據(jù)字段對所述移動設(shè)備的網(wǎng)絡(luò)信號進(jìn)行建模。
在一些實施例中,該方法還包括確定由在移動網(wǎng)絡(luò)中的移動設(shè)備上執(zhí)行的移動應(yīng)用發(fā)起的事務(wù)是否導(dǎo)致網(wǎng)絡(luò)信號需要在移動設(shè)備上的相應(yīng)的無線電連接,其中由所述事務(wù)引起的網(wǎng)絡(luò)信號的至少一部分由流量優(yōu)化引起過濾。
在一些實施例中,經(jīng)過濾的網(wǎng)絡(luò)信號不會引起移動設(shè)備上相應(yīng)的無線電連接,并且未過濾的網(wǎng)絡(luò)信號引起移動設(shè)備上相應(yīng)的無線電連接。
在一些實施例中,對網(wǎng)絡(luò)信號進(jìn)行建模還包括至少部分地基于一個或多個計算的日志/報告數(shù)據(jù)字段來計算連接狀態(tài)和連接時間間隔。
在一些實施例中,為移動設(shè)備建模網(wǎng)絡(luò)信號還包括計算指示作為過濾的結(jié)果而節(jié)約的無線電連接的總數(shù)的信號效率。
在一些實施例中,計算信號效率還包括:訪問與移動設(shè)備相關(guān)聯(lián)的無線電日志和流量活動日志; 基于所述無線電日志和所述流量活動日志對虛擬無線電連接的數(shù)量進(jìn)行建模,其中所述虛擬無線電連接指示了如果沒有所述過濾將發(fā)生的無線電連接; 基于所述無線電日志確定實際無線電連接的數(shù)量,其中所述無線電連接的總數(shù)包括所述虛擬無線電連接的數(shù)量和所述實際無線電連接的數(shù)量之間的差。
在一些實施例中,為移動設(shè)備建模網(wǎng)絡(luò)信號還包括計算指示作為過濾的結(jié)果節(jié)約的總無線電連接時間的連接時間效率。
在一些實施例中,計算連接時間效率還包括:訪問與移動設(shè)備相關(guān)聯(lián)的無線電日志和流量活動日志; 基于所述無線電日志和所述業(yè)務(wù)活動日志對虛擬無線電連接時間建模,其中所述虛擬無線電連接時間指示所述移動設(shè)備無線電將是活動的但用于所述過濾的時間量; 確定基于所述無線電日志的實際無線電連接時間,其中所述實際無線電連接時間指示所述移動設(shè)備無線電活躍的時間量; 其中所節(jié)約的總無線電連接時間包括虛擬無線電連接時間與實際無線電連接時間之間的差。
在一些實施例中,所述方法還包括通過跟蹤事務(wù)和測量在移動設(shè)備中的多個測量點處的各種流量指標(biāo)來維護(hù)流量活動日志。
在一些實施例中,一個或多個日志/報告數(shù)據(jù)字段被劃分為連接標(biāo)志字段和連接時間計數(shù)字段。
在一些實施例中,一個或多個日志/報告數(shù)據(jù)字段被分類為以下類別中的一個或多個:實際的,模擬的,實際模擬的,虛擬模擬的,每個應(yīng)用的實際模擬,以及每個應(yīng)用的虛擬模擬。
在一些實施例中,公開了一種移動設(shè)備。移動設(shè)備包括無線電裝置; 處理器; 以及存儲指令的存儲器,其中當(dāng)該指令由所述處理器執(zhí)行時,導(dǎo)致所述移動設(shè)備:訪問與在所述移動網(wǎng)絡(luò)中操作的移動設(shè)備相關(guān)聯(lián)的無線電日志,所述無線電日志指示移動設(shè)備無線電的狀態(tài); 訪問與所述移動設(shè)備相關(guān)聯(lián)的流量活動日志,所述流量活動日志指示在所述移動設(shè)備中的多個測量點處測量的各種流量指標(biāo); 基于所述無線電日志和所述流量活動日志中的一個或多個來計算一個或多個日志/報告數(shù)據(jù)字段; 以及基于所述一個或多個日志/報告數(shù)據(jù)字段對所述移動設(shè)備的網(wǎng)絡(luò)信號進(jìn)行建模。
在一些實施例中,其中所述指令在由所述處理器執(zhí)行時進(jìn)一步致使所述移動設(shè)備:確定由在所述移動網(wǎng)絡(luò)中的所述移動設(shè)備上執(zhí)行的移動應(yīng)用發(fā)起的事務(wù)是否導(dǎo)致網(wǎng)絡(luò)信號需要在所述移動設(shè)備上的相應(yīng)的無線電連接,其中由所述事務(wù)引起的所述網(wǎng)絡(luò)信號的至少一部分被流量優(yōu)化引擎過濾,其中所述經(jīng)過濾的網(wǎng)絡(luò)信號不引起移動設(shè)備上的相應(yīng)的無線電連接,并且所述未過濾的網(wǎng)絡(luò)信號引起移動設(shè)備上的相應(yīng)的無線電連接。
在一些實施例中,移動設(shè)備還包括流量優(yōu)化引擎,該流量優(yōu)化引擎包括分布式緩存和代理系統(tǒng)的一個或多個元件。
在一些實施例中,分布式緩存和代理系統(tǒng)包括代理客戶端和代理服務(wù)器,并且其中經(jīng)過過濾的無線電連接由該代理客戶端本地緩存。
在一些實施例中,當(dāng)指令由處理器執(zhí)行時還使得移動設(shè)備:跟蹤由在移動網(wǎng)絡(luò)中的移動設(shè)備上執(zhí)行的移動應(yīng)用發(fā)起的事務(wù); 測量所述移動設(shè)備中的多個測量點處的各種流量指標(biāo); 并基于所述測量來維護(hù)所述流量活動日志。
在一些實施例中,為了對移動設(shè)備的網(wǎng)絡(luò)信號進(jìn)行建模,當(dāng)指令由處理器執(zhí)行時,還使得移動設(shè)備計算指示作為過濾的結(jié)果而節(jié)約的無線電連接的總數(shù)的信號效率。
在一些實施例中,為了計算信號效率,指令在由處理器執(zhí)行時還使得移動設(shè)備:訪問與移動設(shè)備相關(guān)聯(lián)的無線電日志和流量活動日志; 基于所述無線電日志和所述流量活動日志對虛擬無線電連接的數(shù)量進(jìn)行建模,其中所述虛擬無線電連接指示了如果沒有所述過濾將發(fā)生的無線電連接; 基于所述無線電日志確定實際無線電連接的數(shù)量,其中無線電連接的總數(shù)包括所述虛擬無線電連接的數(shù)量和所述實際無線電連接的數(shù)量之間的差。
在一些實施例中,為了對移動設(shè)備的網(wǎng)絡(luò)信號進(jìn)行建模,當(dāng)指令由處理器執(zhí)行時,還使得移動設(shè)備計算指示作為過濾的結(jié)果節(jié)約的總無線電連接時間的連接時間效率 。
在一些實施例中,為了計算連接時間效率,指令在由處理器執(zhí)行時還使得移動設(shè)備:訪問與移動設(shè)備相關(guān)聯(lián)的無線電日志和流量活動日志; 基于所述無線電日志和所述業(yè)務(wù)活動日志對虛擬無線電連接時間進(jìn)行建模,其中所述虛擬無線電連接時間指示如果沒有所述過濾,所述移動設(shè)備無線電將活躍的時間量; 基于所述無線電日志確定實際無線電連接時間,其中實際無線電連接時間指示所述移動設(shè)備無線電活躍的時間量; 其中所節(jié)約的總無線電連接時間包括虛擬無線電連接時間與實際無線電連接時間之間的差。
在一些實施例中,公開了一計算機(jī)可讀存儲介質(zhì),其存儲的指令由具有處理器的移動設(shè)備執(zhí)行。所述指令在由處理器執(zhí)行時使得移動設(shè)備:確定由在移動網(wǎng)絡(luò)中的移動設(shè)備上執(zhí)行的移動應(yīng)用發(fā)起的事務(wù)是否導(dǎo)致網(wǎng)絡(luò)信號需要相應(yīng)無線電連接,其中由所述事務(wù)引起的網(wǎng)絡(luò)信號的至少一部分由流量優(yōu)化引擎過濾,其中被過濾的網(wǎng)絡(luò)信號不引起相應(yīng)的無線電連接; 以及至少部分地基于所述過濾的網(wǎng)絡(luò)信號來對所述移動設(shè)備的網(wǎng)絡(luò)信號進(jìn)行建模。
在一些實施例中,為移動設(shè)備建模網(wǎng)絡(luò)信號還包括計算指示作為過濾的結(jié)果而節(jié)約的無線電連接的總數(shù)的信號效率。
在一些實施例中,為移動設(shè)備建模網(wǎng)絡(luò)信號還包括計算指示作為過濾的結(jié)果節(jié)約的總無線電連接時間的連接時間效率。
在一些實施例中,當(dāng)指令由處理器執(zhí)行時還使得處理器:訪問與移動設(shè)備相關(guān)聯(lián)的無線電日志和流量活動日志,其中所述無線電日志指示移動設(shè)備無線電的狀態(tài),其中所述流量活動日志指示在所述移動設(shè)備中的多個測量點處測量的各種流量指標(biāo); 并通過計算一個或多個日志/報告數(shù)據(jù)字段來維護(hù)流量活動日志。
在一些實施例中,對網(wǎng)絡(luò)信號進(jìn)行建模是基于一個或多個日志/報告數(shù)據(jù)字段。
如本文所使用的,網(wǎng)絡(luò)優(yōu)化或關(guān)于一個或多個應(yīng)用和系統(tǒng)的網(wǎng)絡(luò)優(yōu)化可以體現(xiàn)在被配置用于優(yōu)化網(wǎng)絡(luò)流量管理的任何適當(dāng)?shù)挠布稀榱擞懻摰暮唵纹鹨?,“?yōu)化”可以指利用本文描述的網(wǎng)絡(luò)優(yōu)化架構(gòu)和/或由移動設(shè)備發(fā)送或接收的網(wǎng)絡(luò)信號的過濾的系統(tǒng)或方法,以便減少移動設(shè)備的蜂窩無線電的使用。
本文公開的一個或多個應(yīng)用和相關(guān)聯(lián)的用戶界面可以顯示由于優(yōu)化而延長的“分鐘”的數(shù)量。此外,UI可以顯示使用的分鐘數(shù)('分鐘')以及由于每個優(yōu)化的應(yīng)用程序的優(yōu)化而擴(kuò)展的“分鐘”。
將包含要顯示的數(shù)據(jù)的表將被維持。表的結(jié)構(gòu)應(yīng)確保UI上的最小休眠/延遲。對于性能問題,預(yù)先計算一些信息將是很好的。
在一些實施例中,可以在每個流量日志捕獲上插入數(shù)據(jù)。數(shù)據(jù)庫可以保留最近七天的數(shù)據(jù)。
方案
在一個或多個實施例中,數(shù)據(jù)可以存儲在一個或多個表中。在一個實施例中可以有兩個表。第一個表可以包含總體統(tǒng)計。這可以稱為表'O'。 另一個表可以具有應(yīng)用級數(shù)據(jù)。這可以稱為表'A'。UI可以訪問用于顯示整體指標(biāo)的表'O'和用于顯示應(yīng)用級指標(biāo)的表'A'。
表'O'可包括以下列中的每一個,全部或組合:日期時間,電池電量,充電狀態(tài),空閑時間和連接時間。
表'A'可以包括以下列中的每一個,全部或組合:日期和/或時間,應(yīng)用,各應(yīng)用的字節(jié)使用(表示為百分比),連接時間(針對每個應(yīng)用計算)**,每個應(yīng)用程序的優(yōu)化量,以及節(jié)約的連接時間(針對每個應(yīng)用計算)**。 **可以理解,可以根據(jù)需要或?qū)τ诿總€間隔來計算這些參數(shù)并且填充到DB中。前一個選項使得DB更小/更簡單; 第二個在需要時執(zhí)行更少的計算(即,在UI中向用戶顯示結(jié)果)。
空閑期的定義
當(dāng)以下條件滿足時,移動設(shè)備可以與空閑期相關(guān)聯(lián):屏幕關(guān)閉,移動網(wǎng)絡(luò)上的設(shè)備(不在Wi-Fi上),無呼叫,沒有GPS,音頻未播放。
邏輯
表‘O’
日期和/或時間可以表示事件的時間戳。該事件將與流量日志事件同步。電池電量可以表示該時間戳處的電池電量。充電狀態(tài)可以表示指示設(shè)備是否在充電的布爾值。空閑時間可以表示當(dāng)設(shè)備空閑時的從上一個時間戳開始的累積時間。連接的時間可以表示從上一個時間戳(或從最后一次設(shè)備重新啟動)起的累積時間(整個期間,而不是僅空閑)。
表‘A’
日期和/或時間可以表示事件的時間戳。事該件可以與流量日志事件同步。應(yīng)與表'O'中的相同。應(yīng)用可以表示應(yīng)用的名稱。
字節(jié)使用可以表示特定應(yīng)用從上時間戳以來的分享的字節(jié)。 網(wǎng)絡(luò)日志可用于獲取應(yīng)用字節(jié)和流量日志以獲取總字節(jié)數(shù)。字節(jié)使用可能表示應(yīng)用字節(jié)/總字節(jié)。應(yīng)用連接時間**可以是計算字段。表'A'可以每時間戳添加到表'O'。它被計算為字節(jié)用量*連接時間(從表'O')。 一個選項包括將連接時間(從表'O')存儲在變量中,并且在插入表'A'之前使用該變量來計算值。
用于每個應(yīng)用的優(yōu)化量可以表示單位的數(shù)量; 其中“單位”定義了用于每個應(yīng)用的節(jié)約的測量單位。對于所使用的每個優(yōu)化策略,單位將不同。(為了啟動,它將僅為該應(yīng)用的連接時間,但可能需要多個變量)。
節(jié)約的連接時間** - 將是計算字段。 它將被計算為‘
各app的優(yōu)化量‘*α(在參數(shù)下定義)
要在每天結(jié)束時或其他預(yù)定時間段執(zhí)行的動作
在一個或多個實施例中,數(shù)據(jù)將被聚集在適當(dāng)?shù)牡燃墶?/p>
參數(shù)
該模型將填充以下提到的預(yù)定參數(shù) –
聚集
根據(jù)一些實施例,在先的數(shù)據(jù)可以任何等級(例如,每天)聚集。
用于電池優(yōu)化的計算算法
電池改善顯示參數(shù)
在一個或多個實施例中,要顯示給體現(xiàn)在本文公開的一個或多個硬件設(shè)備上的一個或多個應(yīng)用的用戶的參數(shù)如下:
'x'延長的分鐘
用于每個被優(yōu)化的應(yīng)用的'x'分鐘
對于每個被優(yōu)化的應(yīng)用延長的'x'分鐘
第一參數(shù)將被顯示為單個總數(shù),并且后兩個參數(shù)是每個應(yīng)用的分解。這需要能夠在一天中的任何時間向給定用戶顯示,并且應(yīng)當(dāng)表示過去24小時累積的節(jié)約(例如,以滾動24小時時間段)。
延長的“x”分鐘的計算如下:
其中
并且
節(jié)約的時間計算如下:
其中
每個應(yīng)用所節(jié)約的時間計算如下:
其中
并且
其中
并且
分配的(即,計算的)連接時間。
。
其中
空閑時間被定義為以下各項為真的期間:
屏幕關(guān)閉
移動網(wǎng)絡(luò)上的設(shè)備(不在wifi上)
音頻未播放
沒有電話呼叫
沒有GPS使用
第二顯示參數(shù)(用于每個被優(yōu)化的應(yīng)用的“'x'分鐘”)計算如下:
其中
第三顯示參數(shù)(對于每個被優(yōu)化的應(yīng)用延長的“x”分鐘)是簡單的
如上所定義。
已經(jīng)確定,當(dāng)網(wǎng)絡(luò)優(yōu)化是優(yōu)化時(與不是優(yōu)化相比),在連接時間和能量之間的關(guān)系中似乎存在一小的變化。這可能主要作為與網(wǎng)絡(luò)優(yōu)化優(yōu)化相關(guān)聯(lián)的額外開銷來計算。如果/當(dāng)包括這個因素時,整體節(jié)約的能量看起來像這樣:
其中
表示給定的連接時間的偏移(以電流表示)。
并且
表示累積的空閑時間
確定合適的值以使功耗與連接時間相關(guān)是建立合理準(zhǔn)確的電池節(jié)約模型的依賴之一。
圖28示出了有效電流消耗和作為WCDMA樣本測試運(yùn)行總時間的一部分的連接時間之間的關(guān)系。為了這個模型的目的,從WCDMA測試運(yùn)行開始使用一些并行測試。對于這些運(yùn)行,有效電流消耗和連接時間(作為總時間的一部分)之間的關(guān)系如圖28所示,對于具有和不具有本文公開的一個或多個應(yīng)用的??設(shè)備(作為用于一個或多個應(yīng)用的網(wǎng)絡(luò)優(yōu)化在圖中公開并且利用菱形形狀描繪以及利用方形形狀描繪的非網(wǎng)絡(luò)優(yōu)化版本)。在圖28中,兩條線的y截距非常接近,因此被固定為相同的值(6.5)?;貧w線的斜率表示有效電流消耗和連接時間之間的關(guān)系。在這種情況下,無網(wǎng)絡(luò)優(yōu)化(即,沒有優(yōu)化)的斜率是165,而網(wǎng)絡(luò)優(yōu)化數(shù)據(jù)(即,具有優(yōu)化)高出50%,為246。
圖29示出與圖28相同的數(shù)據(jù),但是根據(jù)包括一個具有優(yōu)化和一個沒有優(yōu)化的結(jié)果對來評估。線表示網(wǎng)絡(luò)優(yōu)化在mA和連接時間方面的效果,其中右上點表示沒有網(wǎng)絡(luò)優(yōu)化的設(shè)備,左下反映了具有網(wǎng)絡(luò)優(yōu)化的設(shè)備的優(yōu)化。在圖29中,圖中的虛線是與前面的圖中所示相同的回歸線。圖例顯示每個數(shù)據(jù)集的三個值:SbS測試運(yùn)行(Jira)數(shù),根據(jù)連接時間的優(yōu)化百分比(對于每個應(yīng)用集的總體)和結(jié)果線的斜率。最粗的線顯示所有這整個數(shù)據(jù)集的聚合結(jié)果。當(dāng)確定由于網(wǎng)絡(luò)優(yōu)化而導(dǎo)致的能量消耗的網(wǎng)絡(luò)節(jié)約時,這些數(shù)據(jù)對的斜率為確定提供了最有價值的信息。從網(wǎng)絡(luò)優(yōu)化節(jié)約的連接時間的量被推斷,并且然后使用將其轉(zhuǎn)換為節(jié)約的能量,所以這些斜率是最重要的。
這些結(jié)果的一個方面是網(wǎng)絡(luò)優(yōu)化對節(jié)約的以mA為單位的能量效率相對于TC的節(jié)約在效率上是非常一致的(即,斜率非常相似)。 注意,斜率既不遵循“無網(wǎng)絡(luò)優(yōu)化”也不遵循“網(wǎng)絡(luò)優(yōu)化”回歸線,并且明顯比任何一個淺。 這是定性的。如果網(wǎng)絡(luò)優(yōu)化除了減少連接時間,對能量使用沒有影響,則隨著網(wǎng)絡(luò)優(yōu)化優(yōu)化連接時間,人們將期望向下移動“無網(wǎng)絡(luò)優(yōu)化”回歸線。 然而,已知網(wǎng)絡(luò)優(yōu)化對能量消耗具有額外的影響,因為它做什么以及如何做。這導(dǎo)致對于給定的節(jié)約的連接時間量的以mA為單位的一略微減小的節(jié)約,或者對于每個線路一略微減少陡峭的斜率。
圖30示出了反映不同優(yōu)化量的SbS運(yùn)行的斜率()對TC優(yōu)化(總體)的交叉圖。這些SbS運(yùn)行反映不同的網(wǎng)絡(luò)優(yōu)化的優(yōu)化量(按照節(jié)約的TC或整體值)。為了理解上述線的斜率和網(wǎng)絡(luò)優(yōu)化量之間是否存在系統(tǒng)關(guān)系,圖30是斜率()對TC優(yōu)化(總體)的交叉圖。 圖30示出和之間的關(guān)系。 如果與優(yōu)化相關(guān)的開銷(以mA為單位的一偏移量)是一個常數(shù),與TC優(yōu)化的量無關(guān),人們將期望隨著的下降而下降,因為該開銷的相對影響將增加。
圖31示出了根據(jù)本文描述的主題的實施例的開銷對的交叉圖。 為了評估優(yōu)化“開銷”是否為常數(shù),通過沿“無網(wǎng)絡(luò)優(yōu)化”回歸線的斜率移動,將該開銷值計算為網(wǎng)絡(luò)優(yōu)化優(yōu)化數(shù)據(jù)點的mA與相關(guān)聯(lián)的mA之間的差。產(chǎn)生的開銷對比看起來像圖31。圖31示出了“開銷在1.5mA量級至高達(dá)6.5mA,與輕微(負(fù))相關(guān)?;诖?,如何確定在客戶端V4.0中使用的有效這里有三個選項要考慮:
定義和使用常數(shù)值(例如來自上面數(shù)據(jù)集合的聚合值112)。創(chuàng)建一個簡單的方程作為總體的函數(shù)(如)。 以mA為單位定義網(wǎng)絡(luò)優(yōu)化的開銷(固定值或變量值),并使用“無網(wǎng)絡(luò)優(yōu)化回歸”線作為節(jié)約的mA與節(jié)約的TC之間的主要關(guān)系。然后將從使用無網(wǎng)絡(luò)優(yōu)化回歸關(guān)系計算的節(jié)約mA中減去該開銷(這與將該開銷值添加到為網(wǎng)絡(luò)優(yōu)化的優(yōu)化結(jié)果計算的mA相同)。
與以前的SbS電池建模結(jié)果的比較
在一個或多個實驗中,進(jìn)行SbS電池組運(yùn)行的分析,并且其得出以下等式:
WCDMA:
電池消耗(mAh)= 165.1201 *連接時間(小時)-0.8732 oc_status(開或關(guān))+ 7.5975 [R2 = 0.85]
LTE:
電池消耗(mAh)= 103.8353 *連接時間(小時)+2.0123 oc_status(開或關(guān))+2.3717 [R2 = 0.75]
這里的關(guān)鍵因素是指出,他對WCDMA SbS運(yùn)行的分析產(chǎn)生了165(mAh每小時連接時間;或mA的單位)的有效系數(shù)。 這相當(dāng)接近112以上的導(dǎo)出值,并且考慮到Andy的分析跨越比上述分析中使用的更寬的數(shù)據(jù)集,可以考慮使用更高(不太保守)的值165。
與客戶試驗結(jié)果的比較
與最近的客戶試驗結(jié)果的定性比較如下。
尚未針對空閑期分析試驗結(jié)果。 因此,結(jié)果反映了活躍和空閑時段,并且屏幕開啟影響不被考慮在內(nèi)。因此,與連接時間產(chǎn)生的相關(guān)性夸大了連接時間的效果(因為在活動時段期間,大部分電池使用量與顯示相關(guān)聯(lián),雖然它在這里被集成到連接時間參數(shù)中。
在此處的差異中的另一個關(guān)鍵因素是試驗在各種網(wǎng)絡(luò)上運(yùn)行,并且在試驗期間使用2G,3G和LTE。這些影響在這里也沒有被考慮。
圖32示出了在與圖30中使用的相同的圖形表示中由無優(yōu)化與優(yōu)化產(chǎn)生的斜率的曲線圖。在圖32中以與上面對SbS結(jié)果使用的相同的圖形表示示出了無網(wǎng)絡(luò)優(yōu)化與網(wǎng)絡(luò)優(yōu)化的優(yōu)化(來自試驗中的A / B周期)得到的線。注意,mA的值遠(yuǎn)遠(yuǎn)高于在SbS空閑期間看到的值,這再次表明在活動期間屏幕開啟對結(jié)果具有顯著影響。
由此得到的斜率如下:
聚集結(jié)果表明系數(shù)大約為400(相對于上面得出的大約112)。再一次,這里的關(guān)鍵區(qū)別是客戶試驗數(shù)據(jù)沒有排除活動(或屏幕打開)周期,因此已知系數(shù)太高。該值400表示上限,并提供可能有用的定性比較。
本文描述的主題包括估計與執(zhí)行網(wǎng)絡(luò)優(yōu)化相關(guān)聯(lián)的節(jié)約,而不計算在一段時間內(nèi)節(jié)約的虛擬連接。
根據(jù)一個方面,計算“節(jié)約的無線電連接時間”或“節(jié)約的連接時間”。 該機(jī)制可以取決于所使用的優(yōu)化策略。下面描述用于計算節(jié)約的無線電連接時間的量的各種替代性優(yōu)化策略和方法。
在一個示例中,節(jié)約的連接時間可以包括實際連接時間*α,其中α是應(yīng)用/策略特定因素。實際連接的時間可以用算法在應(yīng)用之間劃分。該算法可以使用每個應(yīng)用使用的字節(jié)的比率來劃分在應(yīng)用之間的總連接時間。
在另一個示例中,節(jié)約的連接時間可以包括“當(dāng)優(yōu)化時經(jīng)過的時間” ,其中是應(yīng)用/策略特定因素。
在另一個示例中,節(jié)約的連接時間可以包括“優(yōu)化事件的數(shù)量*休眠定時器,其中是應(yīng)用/策略特定因素。應(yīng)當(dāng)理解,可以反映不是所有的優(yōu)化事件都會導(dǎo)致節(jié)約。
在另一個示例中,保存的連接時間可以包括(客戶端保持活躍的數(shù)量* k1 - 服務(wù)器端保持活躍的數(shù)量)*休眠定時器。k1和k2可以包括用于從保持活躍的事件轉(zhuǎn)換到連接的因素。例如,k1可以包括客戶端保持活躍信息的縮減因子,其不會導(dǎo)致連接。k2可以包括未引起連接的服務(wù)器端保持活動消息的減少,包括未被無線電對準(zhǔn)的消息。
在另一示例中,節(jié)約的連接時間可以包括(保持活動的客戶端的數(shù)量* k1 -保持活動的服務(wù)器端的數(shù)量)*休眠定時器。k1和k2可以包括用于從保持活躍事件轉(zhuǎn)換到連接的因素。例如,k1可以包括客戶端保持活躍消息的縮減因子,其不會導(dǎo)致連接。k2可以包括不引起連接的服務(wù)器端保持活躍的消息的減少,包括沒有無線電對齊的消息。
根據(jù)另一方面,節(jié)約的無線電連接時間還可以通過將節(jié)約的連接時間轉(zhuǎn)換為節(jié)約的能量,并使用每TC能量和空閑能量來計算電池壽命的延長,來進(jìn)一步轉(zhuǎn)換為節(jié)約/延長的電池壽命。下面提供了該計算的幾個例子。
如本文所使用的,功耗[W]可以除以電壓[V]并以[mA]表示,其中W表示瓦特,J表示焦耳,V表示伏特,s表示秒,mA 指毫安。在一個示例中,節(jié)約/延長的電池壽命[S]等于節(jié)約的能量[J] /空閑時的平均功耗[W],其中節(jié)約的能量[J]等于節(jié)約的TC(計算的,[s])*每連接時間的額外功率[TC](參數(shù),[W]),并且空閑時的平均功耗[W]等于每個TC的額外功率[W] *總空閑時間(計算的,無單位)的TC的比率+平均非TC功耗(參數(shù),[W])。
在一個實施例中,移動設(shè)備可以使用固定為3.6V的電流(這可以根據(jù)設(shè)備而不同)。換句話說,如果它們以瓦特表示,有些功耗參數(shù)可以是其3.6倍大。
可以理解,本文描述的參數(shù)可以針對WCDMA和/或LTE來計算,并且與設(shè)備和網(wǎng)絡(luò)相關(guān)。
在另一示例中,每TC的額外功率可以等于高于非TC功耗的功率消耗,當(dāng)設(shè)備其他空閑時。相反,非TC功耗可以等于當(dāng)無線電未開啟但設(shè)備空閑時的平均功耗。
除非上下文明確要求,否則在整個說明書和權(quán)利要求書中,詞語“包括”,“包含”等應(yīng)以包括的意義來理解,而不是排除性的或窮盡性的意義;也就是說,在“包括但不限于”的意義上。如本文所使用的,術(shù)語“連接”,“耦合”或其任何變體意味著兩個或更多元件之間的直接或間接的任何連接或耦合;元件之間的連接的耦合可以是物理的,邏輯的或其組合。另外,當(dāng)詞語“本文”,“上方”,“下方”和類似含義的詞語在本申請中使用時,應(yīng)當(dāng)是指本申請的整體,而不是本申請的任何特定部分。在上下文允許的情況下,上述具體實施方式中使用單數(shù)或復(fù)數(shù)的詞語也可以分別包括復(fù)數(shù)或單數(shù)。關(guān)于兩個或更多個項的列表的詞語“或”涵蓋該詞語的所有以下解釋:列表中的任何項目,列表中的所有項目,以及列表中項目的任何組合。
本公開的實施例的上述詳細(xì)描述不旨在窮舉的或?qū)⒔虒?dǎo)限于上面公開的精確形式。雖然上面出于說明的目的描述了本公開的具體實施例和示例,但是如相關(guān)領(lǐng)域的技術(shù)人員將認(rèn)識到的,在本公開的范圍內(nèi)的各種等同修改是可能的。例如,雖然以給定順序呈現(xiàn)過程或塊,但是備選實施例可以以不同順序執(zhí)行具有步驟的例程或采用具有塊的系統(tǒng),并且一些過程或塊可以被刪除,移動,添加,細(xì)分,組合,和/或修改以提供替代或子組合。這些過程或塊中的每一個可以以各種不同的方式來實現(xiàn)。此外,盡管過程或塊有時被示為是串行執(zhí)行,但是這些過程或塊可以代替地并行執(zhí)行,或者可以在不同時間執(zhí)行。此外,本文中提到的任何特定數(shù)字僅是示例:替代實施方式可以采用不同的值或范圍。
本文提供的本公開的教導(dǎo)可以應(yīng)用于其他系統(tǒng),不一定是上述系統(tǒng)。 上述各種實施例的元件和動作可以組合以提供另外的實施例。
上述任何專利和申請以及其他參考文獻(xiàn),包括可能在所附申請文件中列出的任何文獻(xiàn),通過引用并入本文。如果需要,可以修改本公開的方面以采用上述各種參考文獻(xiàn)的系統(tǒng),功能和概念,以提供本公開的又一些實施例。
根據(jù)上述具體實施方式,可以對本公開進(jìn)行這些和其他改變。雖然以上描述描述了本公開的某些實施例,并且描述了預(yù)期的最佳模式,但是無論上述內(nèi)容在文本中出現(xiàn)多么詳細(xì),都可以以許多方式實踐教導(dǎo)。系統(tǒng)的細(xì)節(jié)可以在其實施細(xì)節(jié)方面顯著變化,同時仍被本文公開的主題所涵蓋。如上所述,當(dāng)描述本公開的某些特征或方面時使用的特定術(shù)語不應(yīng)被認(rèn)為暗示該術(shù)語在本文中被重新定義為限于與該術(shù)語相關(guān)聯(lián)的本公開的任何特定特性,特征或方面。一般來說,除非上述具體實施方式部分明確地定義了這樣的術(shù)語,否則在所附權(quán)利要求中使用的術(shù)語不應(yīng)被解釋為將本公開限制在說明書中公開的具體實施例。因此,本公開的實際范圍不僅包括所公開的實施例,而且包括根據(jù)本文提出的權(quán)利要求實施或?qū)嵤┍竟_的或者關(guān)于要求其優(yōu)先權(quán)的任何申請?zhí)岢龅乃械韧绞健?/p>
盡管給出了本公開的某些方面,但是發(fā)明人以任何數(shù)量的權(quán)利要求形式考慮了本公開的各個方面。例如,雖然在美國法
下僅將本公開的一個方面描述為裝置加功能的權(quán)利要求,但是其他方面同樣可以被體現(xiàn)為裝置加功能的權(quán)利要求,或者其他形式,例如被包含在計算機(jī)可讀介質(zhì)中。(任何根據(jù)美國法處理的任何權(quán)利要求將以“用于...的手段”開頭)。因此,申請人保留在提交申請之后增加額外權(quán)利要求以追求用于本公開的其他方面的附加權(quán)利要求形式。