將應(yīng)用流量分載至共享通信信道進(jìn)行無線網(wǎng)絡(luò)中的信令優(yōu)化用于使用專有和非專有協(xié)議 ...的制作方法
【專利說明】將應(yīng)用流量分載至共享通信信道進(jìn)行無線網(wǎng)絡(luò)中的信令優(yōu)化 用于使用專有和非專有協(xié)議的流量
[0001] 相關(guān)申請的交叉引用 本申請要求2013年6月11日提交,申請?zhí)枮?1/833844,名稱為"將應(yīng)用流量分載至共享 通信信道進(jìn)行無線網(wǎng)絡(luò)中的信令優(yōu)化用于使用專有和非專有協(xié)議的流量"的美國臨時專 利申請的優(yōu)先權(quán)。本申請參考引用上述申請的全部內(nèi)容。
【背景技術(shù)】
[0002] 越來越多的移動流量正轉(zhuǎn)向特定于提供商的專有協(xié)議。例子包括谷歌通過TCP端 口 5228的流量、WhatsApp、各種應(yīng)用提供商所使用的Urban Airship推送通知、Skype和雅虎 郵件2.0等。運意味著,除了使用HTTP/fflTPS等標(biāo)準(zhǔn)化協(xié)議的流量之外,越來越多引發(fā)信令 的應(yīng)用流量現(xiàn)在也包括來自專有協(xié)議的顯著貢獻(xiàn)。所公開的技術(shù)包括一個體系結(jié)構(gòu)(例如 包括本地代理和/或代理服務(wù)器的分布式系統(tǒng)),W便通過將應(yīng)用流量從專有或應(yīng)用專有通 信信道分載至共享通信信道,來針對HTTP或HTlTS等標(biāo)準(zhǔn)協(xié)議之外的任意的、專有的、和/或 非標(biāo)準(zhǔn)協(xié)議優(yōu)化信令。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明中公開了一種或多種方法。一種或多種方法可包括確定設(shè)備正在通過至少 兩個重疊的推送信道進(jìn)行通信,并阻斷推送信道之一,W消除或減少至少兩個重疊推送信 道之間的重疊。阻斷可包括丟棄接收自被阻斷推送信道的IP數(shù)據(jù)包。阻斷可包括拒絕接收 自被阻斷推送信道的IP數(shù)據(jù)包。阻斷可包括阻斷接收自被阻斷推送信道之通信的應(yīng)用層。 一種或多種方法可包括確定設(shè)備上的應(yīng)用進(jìn)行通信的任何現(xiàn)有連接的狀態(tài)。一種或多種方 法可包括,關(guān)閉應(yīng)用的連接作為對確定現(xiàn)有連接狀態(tài)的響應(yīng)。一種或多種方法可包括從附 加推送信道接收推送消息和疏通被阻斷的推送信道,W使應(yīng)用可執(zhí)行響應(yīng)附加推送信道消 息的操作。一種或多種方法可包括將操作通知用戶。一種或多種方法可包括在操作完成后 重新阻斷被疏通的推送信道。一種或多種方法可包括確定該操作已完成并在操作完成后重 新阻斷被疏通的推送信道。一種或多種方法可包括直到所述移動設(shè)備的無線被啟動之前拒 絕對此推送信道的阻斷。推送信道可W是專有的,也可W是特定于應(yīng)用的。阻斷推送信道之 一可包括阻斷非共用推送信道,W將通信分載至一個共用推送信道。
[0004] 提供了一種減少網(wǎng)絡(luò)流量的方法。該方法可包括識別應(yīng)用中的多個重疊推送信 道;確定所述多個重疊推送信道中的第一推送信道可被阻斷,同時伴隨最小的用戶體驗影 響;阻斷第一推送信道W減少網(wǎng)絡(luò)信令和電池消耗;監(jiān)測所述多個重疊推送信道中第二推 送信道上應(yīng)用流量;基于被監(jiān)測的應(yīng)用流量疏通第一推送信道W服務(wù)于應(yīng)用流量;W及在 應(yīng)用服務(wù)了應(yīng)用流量后重新阻斷第一推送信道。對多個重疊推送信道的識別可離線進(jìn)行。 對到多個重疊推送信道的識別可實時進(jìn)行。在一個或多個實施方式中,第一信道可W是第 =方信道。阻斷可能通過下列方式之一執(zhí)行:丟棄IP數(shù)據(jù)包、拒絕IP數(shù)據(jù)包及阻斷一個應(yīng)用 層。對應(yīng)用流量提供服務(wù)可包括通知用戶。
[0005] 本發(fā)明提供的是包含計算機代碼的非臨時性計算機可讀介質(zhì),用于實現(xiàn)處理器控 制的系統(tǒng),用來確定設(shè)備通過至少兩個重疊推送信道進(jìn)行通信并阻斷推送信道之一W減少 所述至少兩個重疊的推送信道之間的重疊。計算機代碼執(zhí)行一個通過丟棄IP數(shù)據(jù)包進(jìn)行阻 斷的處理器控制系統(tǒng)。計算機代碼執(zhí)行一個通過拒絕IP數(shù)據(jù)包進(jìn)行阻斷的處理器控制系 統(tǒng)。計算機代碼執(zhí)行一個阻斷應(yīng)用層的處理器控制系統(tǒng)。計算機代碼執(zhí)行一個處理器控制 系統(tǒng),該系統(tǒng)確定系統(tǒng)通信所在任何現(xiàn)有連接的狀態(tài)。計算機代碼執(zhí)行一個關(guān)閉應(yīng)用連接 的處理器控制系統(tǒng)。計算機代碼執(zhí)行一個處理器控制系統(tǒng),其從一個附加推送信道接收推 送消息并疏通被阻斷的推送信道,W使系統(tǒng)可執(zhí)行響應(yīng)來自附加推送信道消息的操作。計 算機代碼可執(zhí)行一個將操作通知用戶的處理器控制系統(tǒng)。計算機代碼執(zhí)行一個在操作完成 后重新阻斷被疏通通信信道的處理器控制系統(tǒng)。計算機代碼執(zhí)行一個確定操作已完成并在 操作完成之后重新阻斷被疏通通信信道的處理器控制系統(tǒng)。非暫時性計算機可讀介質(zhì),其 包含用于W執(zhí)行一個減少網(wǎng)絡(luò)流量的處理器控制系統(tǒng)的計算機代碼,其被提供和配置W用 于:用于識別應(yīng)用中的多個重疊推送信道,確定所述多個重疊推送信道中的第一推送信道 可被阻斷,同時伴隨最小的用戶體驗影響,阻斷第一推送信道使網(wǎng)絡(luò)信令和電池消耗降低, 監(jiān)測所述多個重疊推送信道中第二推送信道上應(yīng)用流量,基于被監(jiān)測的第二信道應(yīng)用流量 疏通第一推送信道來啟動對應(yīng)用流量提供服務(wù),并在應(yīng)用執(zhí)行對應(yīng)用流量提供服務(wù)的必要 網(wǎng)絡(luò)訪問之后重新阻斷第一推送信道。對多個重疊推送信道的識別可離線進(jìn)行。對到多個 重疊推送信道的識別可實時進(jìn)行。所述多個重疊的推送信道中至少一個可W是第=方信 道。阻斷可能通過下列方式之一執(zhí)行:丟棄IP數(shù)據(jù)包,拒絕IP數(shù)據(jù)包及阻斷對應(yīng)用層的輸 入。
[0006] 可提供一個通信網(wǎng)絡(luò)。該網(wǎng)絡(luò)可W包括具有處理器、用于存儲信息的存儲器W及 用戶界面的移動設(shè)備,該移動設(shè)備根據(jù)操作系統(tǒng)和推送客戶端應(yīng)用運行。還提供有第一服 務(wù)器、第二服務(wù)器、主機服務(wù)器、可操作地將所述主機服務(wù)器連接到所述第一服務(wù)器和所述 第二服務(wù)器的第一網(wǎng)絡(luò)、W及可操作地將所述移動設(shè)備連接所述第一網(wǎng)絡(luò)的第二網(wǎng)絡(luò)。推 送客戶端應(yīng)用控制處理器,W使移動設(shè)備確定第一服務(wù)器和第二服務(wù)器產(chǎn)生重疊的第一和 第二推送信道,并阻斷第一推送信道W減少在第一和第二推送信道之間的重疊。移動設(shè)備 可W通過丟棄IP數(shù)據(jù)包、拒絕IP數(shù)據(jù)包或阻斷應(yīng)用層來阻斷第一推送信道。處理器可進(jìn)一 步包括確定所述設(shè)備上的應(yīng)用進(jìn)行通信的任何現(xiàn)有連接的狀態(tài)。
[0007] 提供一個通信網(wǎng)絡(luò)。該網(wǎng)絡(luò)包括具有處理器、用于存儲操作系統(tǒng)的存儲器W及推 送客戶端應(yīng)用和用戶界面的移動設(shè)備。移動設(shè)備根據(jù)操作系統(tǒng)和推送客戶端應(yīng)用運行。提 供具有第一推送信道的第一服務(wù)器和具有與第一推送信道重疊的第二推送信道的第二服 務(wù)器。提供一個主機服務(wù)器。第一網(wǎng)絡(luò)可操作地將所述主機服務(wù)器連接到所述第一服務(wù)器 和所述第二服務(wù)器,第二網(wǎng)絡(luò)可操作地將第一網(wǎng)絡(luò)連接到所述移動設(shè)備。推送客戶端應(yīng)用 控制處理器W確定第一和第二推送信道重疊,確定第一推送信道可被阻斷,同時伴隨最小 的用戶體驗影響,阻斷第一推送信道W減少網(wǎng)絡(luò)信令和電池消耗,監(jiān)測第二推送信道上的 流量,基于第二推送信道流量疏通第一推送信道,并在推送客戶端應(yīng)用執(zhí)行對應(yīng)用流量提 供服務(wù)的必要網(wǎng)絡(luò)訪問之后重新阻斷第一推送信道。
【附圖說明】
[0008] 圖IA示出根據(jù)本發(fā)明公開的一個或多個實施方式的系統(tǒng); 圖IB示出根據(jù)本發(fā)明公開的一個或多個實施方式的示例示意圖; 圖IC示出根據(jù)本發(fā)明公開的一個或多個實施方式的示例示意圖; 圖2A示出根據(jù)本發(fā)明公開的一個或多個實施方式的客戶端組件的塊圖; 圖2B示出根據(jù)本發(fā)明公開的一個或多個實施方式的適配引擎塊圖; 圖2C示出根據(jù)本發(fā)明公開的一個或多個實施方式的客戶端代理的塊圖; 圖3示出根據(jù)本發(fā)明公開的一個或多個實施方式的計算機系統(tǒng)的示意圖。
【具體實施方式】
[0009] 下面的描述和附圖是說明性的,而不應(yīng)被解釋為限制性的。許多具體細(xì)節(jié)被描述 用于對本公開內(nèi)容的徹底理解。然而在某些情況下為避免模糊描述,對公認(rèn)或常規(guī)的細(xì)節(jié) 不做描述。在本公開內(nèi)容中,對某一實施方式或一個實施方式的引用可W是但不一定是對 同一實施方式的引用;并且運類引用意味著至少一個實施方式。
[0010] 在本說明書中對"某一實施方式"或"一個實施方式"的引用,意味著被描述為與該 實施方式相關(guān)的一個特定的特性、結(jié)構(gòu)或特性被包括在本公開內(nèi)容中的至少一個實施方式 之中。在本說明中各個地方的"在一個實施方式中"運一短語的出現(xiàn),不一定全部指同一實 施方式,也不是與其它實施方式相互排斥的單獨或替代實施方式。此外,也描述了可W通過 一些實施方式而不可通過其他實施方式來展示的多種特性。同樣地,也描述了可能是某些 實施方式的要求但非其他實施方式要求的各種要求。
[0011] 在本公開內(nèi)容內(nèi)的上下文W及本說明書中所使用每條術(shù)語在使用時的具體的上 下文中,運些術(shù)語通常具有其在本領(lǐng)域中的普通含義。被用于描述本公開內(nèi)容的某些術(shù)語 將在下面或在本說明書中的其他地方討論,W就本公開內(nèi)容所描述內(nèi)容向從業(yè)人員提供進(jìn) 一步的指導(dǎo)。為了方便起見,某些術(shù)語可被突出顯示,例如使用斜體和/或引號。突出顯示的 使用對術(shù)語的范圍和含義沒有影響;在相同上下文中,不論術(shù)語是否被突出顯示,其范圍和 含義都是相同的。應(yīng)該理解,同樣的東西可W有多種講法。
[0012] 因此,替代語言和同義詞可用于任何一個或多個本發(fā)明所討論的術(shù)語,某個術(shù)語 是否在本發(fā)明中被詳細(xì)闡述或討論并不具有任何特殊意義。提供了某些術(shù)語的同義詞。對 一個或多個同義詞的詳述并不排除對其它同義詞的使用。在本說明書中的任何位置對實例 的使用(包括本說明書所討論的任何術(shù)語的實例)都僅僅是說明性的,而并非旨在進(jìn)一步限 制任何示例性術(shù)語的公開內(nèi)容或范圍和含義。同樣地,本公開內(nèi)容并不限于本說明書中給 出的各種實施方式。
[0013] 在不旨在限制本公開內(nèi)容范圍的前提下,如下給出根據(jù)本公開內(nèi)容實施方式的儀 器、設(shè)備、方法及其相關(guān)結(jié)果實例。注意,在實例中可使用標(biāo)題或副標(biāo)題為讀者提供方便,其 決不應(yīng)限制本公開內(nèi)容的范圍。除非另有定義,否則本發(fā)明使用的所有技術(shù)和科學(xué)術(shù)語,都 具有與本發(fā)明所設(shè)及領(lǐng)域中普通技術(shù)人員所共同理解的含義相同的含義。在沖突的情況 下,W本發(fā)明件包括其中定義為準(zhǔn)。
[0014] 用于降低移動網(wǎng)絡(luò)擁塞的現(xiàn)有信令優(yōu)化的系統(tǒng)和方法可W優(yōu)化標(biāo)準(zhǔn)的和非專有 的應(yīng)用級協(xié)議上的移動流量,運些協(xié)議包括但不限于:超文本傳輸協(xié)議(HTTP)、超文本傳 輸安全協(xié)議(HTTPS)、文件傳輸協(xié)議(FTP)、簡單郵件傳輸協(xié)議(SMTP)、互聯(lián)網(wǎng)消息訪問 協(xié)議(IMAP)、郵局協(xié)議(POP)和類似物。然而,許多移動應(yīng)用正在棄用標(biāo)準(zhǔn)協(xié)議而啟用廠商 專有協(xié)議。例如,谷歌利用一種非標(biāo)準(zhǔn)的傳輸控制協(xié)議(TCP)端口 5228。舉另一個例子來說, "WhatsApp"移動應(yīng)用使用可擴展消息處理現(xiàn)場協(xié)議(XMPP)的定制版本。與此類似,Skype和 雅虎郵箱等一些應(yīng)用使用自己的專有協(xié)議,而許多提供商也使用化ban Airship之推送通 知協(xié)議等其他協(xié)議。
[0015] 現(xiàn)有信令優(yōu)化的系統(tǒng)和方法按客戶端指示重播或復(fù)制整個事務(wù),運意味著執(zhí)行信 號優(yōu)化的服務(wù)器需要自主建立任何會話(TCP socket和任何應(yīng)用層握手,安全Socket層 (SSL)等)。然而要運樣做,運些協(xié)議必須被很好地理解。例如,在任何優(yōu)化能夠執(zhí)行之前報 頭和其它協(xié)議特定的數(shù)據(jù)必須是已知的。如果因為專有協(xié)議不規(guī)范而不能被很好理解的 話,此類專有協(xié)議上的移動流量就不能由現(xiàn)有的優(yōu)化系統(tǒng)和方法進(jìn)行優(yōu)化。
[0016] 本公開內(nèi)容的實施方式,包括將應(yīng)用流量分載至共享通信信道進(jìn)行無線網(wǎng)絡(luò)中的 信令優(yōu)化用于使用專有和非專有協(xié)議的流量。在一個實施方式中,所公開的技術(shù)包括一個 架構(gòu)(例如由本地代理和/或代理服務(wù)器組成的分布式系統(tǒng)),除了HTTP、HTTPS、FTP、SMTP、 IMAP、P0P、XMPP等類似標(biāo)準(zhǔn)協(xié)議之外,該架構(gòu)還為任意的、專有的和/或非標(biāo)準(zhǔn)協(xié)議優(yōu)化信 令。在另一個的實施方式中,所公開的技術(shù)為無線網(wǎng)絡(luò)中任何流量提供了一種協(xié)議無關(guān)的 信令優(yōu)化系統(tǒng)和方法。
[0017] 在一個實施方式中,傳輸控制協(xié)議(TCP)流作為字節(jié)流通過第一次會話從應(yīng)用傳 送到本地代理,通過第二次TCP會話從本地代理傳送到代理服務(wù)器,通過第S次TCP會話從 本地代理服務(wù)器傳送到內(nèi)容服務(wù)器。本地代理在不知道底層協(xié)議的情況下觀察并且識別字 節(jié)流內(nèi)的模式。一旦識別出模式,第二次TCP會話就會被關(guān)閉,使得第一次TCP會話對應(yīng)用重 復(fù)此模式,而第S次TCP會話對內(nèi)容服務(wù)器重復(fù)此模式。一旦任一端檢測到模式中的變 化,第二次TCP會話就會被重新建立來把變化內(nèi)容傳輸?shù)搅硪欢恕?br>[0018] 當(dāng)不可能識別一個字節(jié)流中的模式并執(zhí)行二進(jìn)制事務(wù)的直接重復(fù)和/或在TCP流 優(yōu)化之外時,本發(fā)明所公開的創(chuàng)新提供了用于將應(yīng)用流量從應(yīng)用特定信道分載或重新導(dǎo)向 至谷歌云消息(GCM)信道等共享信道的系統(tǒng)和方法;其可W在無線網(wǎng)絡(luò)中優(yōu)化信令,用于使 用各種專有和非專有協(xié)議的流量。如果由本地代理和/或代理服務(wù)器協(xié)助,應(yīng)用將流量分載 至賭如谷歌云消息(GCM)服務(wù)器的遠(yuǎn)程或郵件服務(wù)器。按照本發(fā)明所使用的情況,GCM可W 指任何共享信道。
[0019] GCM服務(wù)器允許從應(yīng)用服務(wù)器或內(nèi)容提供商向使用XMPP的用戶設(shè)備(上游和下游, 即設(shè)備到云和云到設(shè)備)傳送數(shù)據(jù)。GCM服務(wù)器可W為消息進(jìn)行排序并將消息發(fā)送到用戶設(shè) 備上的目標(biāo)應(yīng)用中。運些消息可W通知移動應(yīng)用有要從內(nèi)容提供商或應(yīng)用服務(wù)器獲取的新 數(shù)據(jù),且/或可W包括實際數(shù)據(jù)(例如即時消息)。
[0020] 圖IA示出一個系統(tǒng)的示例示意圖,其中一個主機服務(wù)器在無線網(wǎng)絡(luò)(或?qū)拵ЬW(wǎng)絡(luò)) 中為資源節(jié)約而在諸如移動設(shè)備(例如無線設(shè)備)、應(yīng)用服務(wù)器或內(nèi)容提供商或其它諸如廣 告服務(wù)器、促銷內(nèi)容服務(wù)器、電子優(yōu)惠券服務(wù)器或諸如谷歌云消息傳遞(GCM)服務(wù)器的郵件 服務(wù)器之間協(xié)助流量管理、內(nèi)容緩存和/或資源節(jié)約。主機服務(wù)器可W在無線網(wǎng)絡(luò)中為使用 專有(非標(biāo)準(zhǔn))和非專有(例如HTTP)協(xié)議的流量進(jìn)一步優(yōu)化信令。
[0021] 客戶端設(shè)備150可W是能與另一設(shè)備、基站112、服務(wù)器和/或諸如主機服務(wù)器100 和/或應(yīng)用服務(wù)器/內(nèi)容提供商110的其他系統(tǒng)建立包括有線、無線和蜂窩連接的任何系統(tǒng) 和/或設(shè)備、和/或設(shè)備/系統(tǒng)的任何組合??蛻舳嗽O(shè)備150通常包括顯示器和/或其他輸出功 能,W表現(xiàn)設(shè)備150和/或主機服務(wù)器100和/或應(yīng)用服務(wù)器/內(nèi)容提供商110之間交換的信息 和數(shù)據(jù)。應(yīng)用服務(wù)器/內(nèi)容提供商110可W是包括第=方服務(wù)器或服務(wù)/內(nèi)容提供商在內(nèi)的 任何服務(wù)器,其進(jìn)一步包括廣告、促銷內(nèi)容、出版物或電子優(yōu)惠券服務(wù)器或服務(wù)。同樣的,作 為應(yīng)用服務(wù)器或內(nèi)容提供商的獨立的廣告服務(wù)器120A、促銷內(nèi)容服務(wù)器120B和/或電子優(yōu) 惠券服務(wù)器120CW舉例的方式示出。
[0022] 例如,客戶端/移動設(shè)備150可包括移動、手持或便攜式設(shè)備、無線設(shè)備或者非便攜 式設(shè)備,并且可W是任何(但不限于)桌面服務(wù)器、臺式計算機、計算機集群或便攜式設(shè)備, 包括筆記本、膝上型電腦、手持式計算機、掌上型計算機、移動電話、蜂窩電話、智能電話、 PDA、黑替設(shè)備、Palm設(shè)備、任何平板電腦、平板手機(一類介于典型的智能手機和平板電腦 之間的更大屏幕尺寸的智能手機)、手持式平板電腦(例如iPad、Galaxy系列、Nexus、Kindle 系列、Kindle Fire系列、任何基于An化oid的平板電腦、基于Windows的平板電腦或任何其 他平板電腦)、任何便攜式讀取器/讀取設(shè)備、手持控制臺、手持游戲設(shè)備或控制臺、頭戴式 設(shè)備、頭戴式顯示器、超薄客戶端或如iPhone之類的任何超級手機和/或任何其它便攜式、 移動式、手持式設(shè)備,或諸如一個M2M設(shè)備的固定無線接口等。在一個實施方式中,客戶端設(shè) 備150(或移動設(shè)備150)、主機服務(wù)器100和應(yīng)用服務(wù)器110經(jīng)由網(wǎng)絡(luò)106和/或網(wǎng)絡(luò)108相連。 在一些實施方式中,該設(shè)備150和主機服務(wù)器100可W直接相互連接。
[0023] 客戶端設(shè)備150的輸入機制可包括觸摸屏小鍵盤(包括單次觸摸、多次觸、二維或 =維手勢檢測等)、物理鍵盤、鼠標(biāo)、指針、跟蹤板、觸筆、觸筆檢測器/傳感器/受體運動檢測 器/傳感器(例如包括1軸、2軸、3軸加速度計等)、面部檢測器/識別器、視網(wǎng)膜檢測器/掃描 儀、光傳感器、電容傳感器、電阻傳感器、溫度傳感器、接近傳感器、壓電設(shè)備、設(shè)備取向檢測 器(例如電子羅盤、傾斜傳感器、旋轉(zhuǎn)傳感器、巧螺儀、加速計)或上述的任何組合。
[0024] 通過一個或多個上述輸入機制或其它機制在客戶端設(shè)備150上接收或檢測到用W 表明用戶活動的信號,