動態(tài)壓縮覆蓋的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及用于估計壓縮長度供優(yōu)化網(wǎng)絡(luò)中的包業(yè)務(wù)的優(yōu)化壓縮/解壓的方法和 裝置。
【背景技術(shù)】
[0002] 分組交換(PS)網(wǎng)絡(luò)中的數(shù)據(jù)通信包括數(shù)據(jù)通過網(wǎng)絡(luò)作為小的數(shù)據(jù)段或大小合適 的數(shù)據(jù)塊(叫作包)的序列的傳輸。每個包經(jīng)由一個或多個網(wǎng)絡(luò)實體或節(jié)點從源(例如,用戶 設(shè)備(UE)、終端、移動設(shè)備或其他網(wǎng)絡(luò)實體)傳遞通過網(wǎng)絡(luò)到目的地(例如,另一個UE、終端、 移動設(shè)備或另一個網(wǎng)絡(luò)實體)。每個包典型地包括數(shù)據(jù)有效載荷(其是傳輸?shù)男〉臄?shù)據(jù)段) 或包報頭,其典型地提供例如目的地和/或源地址和使用的包或通信協(xié)議的類型等信息。
[0003] PS網(wǎng)絡(luò)可包括或代表使所有傳輸數(shù)據(jù)分組為大小合適的數(shù)據(jù)塊(叫作包)的通信 網(wǎng)絡(luò)??稍诿枋龅木W(wǎng)絡(luò)的某些實施例中使用的特定PS網(wǎng)絡(luò)的示例包括但不限于例如第二代 (26)、2.5代(2.56)、第三代(36)和第四代及以后(46及以后)型網(wǎng)絡(luò)等遺留?5網(wǎng)絡(luò),和/或演 進分組交換(EPS)網(wǎng)絡(luò)和/或所有基于全互聯(lián)網(wǎng)協(xié)議(IP)的PS網(wǎng)絡(luò)。
[0004] 例如,所謂的通用移動電話系統(tǒng)(UMTS)(遺留PS網(wǎng)絡(luò),通常稱為3G無線電通信網(wǎng) 絡(luò))是用例如高速分組接入(HSPA)技術(shù)等增強PS網(wǎng)絡(luò)技術(shù)而演進成的PS網(wǎng)絡(luò)標準。另外, UMTS框架內(nèi)的空中接口技術(shù)開始朝在所謂的長期演進(LTE)和LTE高級系統(tǒng)中定義的新空 中接口技術(shù)演進。
[0005] 下一代無線電通信系統(tǒng)和網(wǎng)絡(luò)(例如LTE和LTE高級)視為全IP網(wǎng)絡(luò)。這些網(wǎng)絡(luò)將具 有升級的PS網(wǎng)絡(luò)基礎(chǔ)設(shè)施,叫作演進分組系統(tǒng)(EPS)』PS包括演進分組核心(EPC),其對全 IP網(wǎng)絡(luò)形成核心PS網(wǎng)絡(luò)的基礎(chǔ)。這些增強PS網(wǎng)絡(luò)將提供所有移動核心功能性,其在前代 (26、2.56和36)中通過現(xiàn)有03網(wǎng)絡(luò)和遺留?3網(wǎng)絡(luò)而實現(xiàn)。
[0006] UE可包括或代表用于通信的任何設(shè)備。可在描述的網(wǎng)絡(luò)的某些實施例中使用的UE 的示例是無線設(shè)備,例如移動電話、移動設(shè)備、終端、智能電話、便攜式計算設(shè)備(例如手提 電腦、手持設(shè)備、平板、筆記本、計算機、個人數(shù)字助理)和其他無線通信設(shè)備或例如電話、計 算設(shè)備(例如臺式機、機頂盒)等有線通信設(shè)備和其他固定通信設(shè)備。
[0007] 網(wǎng)絡(luò)元件或?qū)嶓w可包括或代表供在可以在特定接口上管理的電信網(wǎng)絡(luò)中使用的 任何網(wǎng)絡(luò)節(jié)點、設(shè)備、功能或?qū)嶓w。可在描述的網(wǎng)絡(luò)的某些實施例中使用的網(wǎng)絡(luò)元件或?qū)嶓w 的示例是組成核心網(wǎng)絡(luò)、接入網(wǎng)絡(luò)(例如分組或電路交換網(wǎng)絡(luò))、基于IP的網(wǎng)絡(luò)、2G、3G、4G和 下一代網(wǎng)絡(luò)、IMS核心網(wǎng)絡(luò)、IMS服務(wù)網(wǎng)絡(luò)以及服務(wù)和外部網(wǎng)絡(luò)及類似物的網(wǎng)絡(luò)元件、節(jié)點、 設(shè)備、功能或?qū)嶓w。
[0008] 數(shù)據(jù)通信演進以使用許多不同通信協(xié)議或標準(例如,互聯(lián)網(wǎng)協(xié)議、TCP/IP協(xié)議、 UDP協(xié)議等)以供在將數(shù)據(jù)從源傳輸?shù)侥康牡刂惺褂?。這些通信協(xié)議可在所謂的協(xié)議棧中分 層,其中協(xié)議棧的層服務(wù)于在它上面的層和在它下面的層。
[0009] 典型地,協(xié)議棧包括應(yīng)用層、傳輸層和網(wǎng)絡(luò)層。應(yīng)用層包括支持各種用戶應(yīng)用或應(yīng) 用程序所需要的邏輯,傳輸層包括提供由應(yīng)用層控制的應(yīng)用數(shù)據(jù)的可靠通信的機制,并且 網(wǎng)絡(luò)層關(guān)于網(wǎng)絡(luò)中的源與目的地或物理設(shè)備之間的數(shù)據(jù)交換。協(xié)議棧的示例包括TCP/IP協(xié) 議族(提供應(yīng)用、傳輸、互聯(lián)網(wǎng)、網(wǎng)絡(luò)接入和物理層)或開放系統(tǒng)互連(OSI)模型(提供應(yīng)用、 呈現(xiàn)、會話、傳輸、網(wǎng)絡(luò)、數(shù)據(jù)鏈路和物理層)。
[0010] 數(shù)據(jù)通信(例如無線和/或有線通信)在世界上很多地方變得普遍存在。隨著通信 網(wǎng)絡(luò)技術(shù)、UE能力和應(yīng)用的發(fā)展和擴展,在UE與通信網(wǎng)絡(luò)之間傳輸或傳送數(shù)量日益增加的 數(shù)據(jù)。傳輸數(shù)量日益增加的數(shù)據(jù)將給當(dāng)前和未來通信網(wǎng)絡(luò)技術(shù)的容量和吞吐量施加壓力。 例如,許多當(dāng)代無線通信網(wǎng)絡(luò)的容量有限;使每個UE與通信網(wǎng)絡(luò)之間傳送的數(shù)據(jù)量減小將 提高整體性能和系統(tǒng)容量。
[0011] 圖1圖示示例包100的結(jié)構(gòu),其包括包報頭102、后跟包有效載荷104。在該示例中, 包報頭102包括互聯(lián)網(wǎng)協(xié)議(IP)報頭102a和傳輸協(xié)議報頭102b(例如,TCP/UDP報頭)。包有 效載荷104包括更高層協(xié)議信息和傳輸?shù)臄?shù)據(jù)或數(shù)據(jù)段。為了提供可靠通信,數(shù)據(jù)采用包的 形式在層之間傳遞,其中在每個層處可將與該層有關(guān)的額外數(shù)據(jù)插到包的有效載荷和與該 層有關(guān)的報頭。這意指包可包括與可在將數(shù)據(jù)從源傳達到目的地時使用的協(xié)議棧的各種通 信協(xié)議和/或?qū)雨P(guān)聯(lián)的一個或多個包報頭(例如,IP報頭l〇2a和TCP/TDP報頭102b)。報頭取 決于包數(shù)據(jù)位于網(wǎng)絡(luò)中的什么地方或在通信協(xié)議或系統(tǒng)的什么級/層(例如,應(yīng)用層、傳輸 層或網(wǎng)絡(luò)層)處。要意識到從傳輸協(xié)議層(例如,IP報頭102a和TCP/UDP報頭102b)方面來看, 為了簡單起見并且僅通過示例描述示例包100和報頭102以及有效載荷104。本領(lǐng)域內(nèi)技術(shù) 人員將理解本文的描述適用于任何包(其包括任何報頭和任何有效載荷)并且可基于任何 協(xié)議或?qū)印?br>[0012] 可通過在傳輸之前壓縮包來提高包的傳輸效率。存在可用于壓縮包的許多壓縮方 法/算法。典型地,文件壓縮方法/算法或壓縮方法/算法將包視為位流并且操作來壓縮位 流。這樣的壓縮算法可包括壓縮函數(shù)和對應(yīng)的解壓函數(shù)。例如,GNU ' s Not Unix(GNU)ZIP或 GZIP是用于文件壓縮和解壓的許多軟件應(yīng)用或壓縮算法中的一個。GZIP使用Lempel-Ziv編 碼(LZ77)無損壓縮結(jié)合霍夫曼熵編碼。由于過多壓縮/解壓算法可用,僅通過示例并且為了 簡單起見,使用GZIP壓縮算法,要意識到本領(lǐng)域內(nèi)技術(shù)人員將理解本發(fā)明并不如此受限并 且可使用任何適合的壓縮方法/算法和/或解壓方法/算法。
[0013] 常規(guī)地,可通過獨立對包報頭102和包有效載荷104進行壓縮來壓縮包100。大部分 的包報頭信息是靜態(tài)的或可以根據(jù)可預(yù)測模式來更新。因為包報頭僅包括文本信息字段, 它們可以易于被壓縮來提高傳輸效率。常規(guī)地,通過網(wǎng)絡(luò)傳輸?shù)陌鼧I(yè)務(wù)中的包報頭通過分 析每個包的報頭來確定要壓縮的位的數(shù)量而壓縮。例如,在應(yīng)用包報頭壓縮時,詳細分析包 報頭,并且特定包報頭字段分成靜態(tài)、半動態(tài)和動態(tài)字段。在該情況下,包報頭應(yīng)被視為位 流而沒有做出關(guān)于報頭的特定考量,但限制壓縮范圍以涵蓋報頭的位除外。例如,壓縮方 法/算法(例如GZIP)可應(yīng)用于位流的特定部分,例如包報頭。
[0014] 存在可在包報頭102中使用的各種協(xié)議報頭格式,例如,各種傳輸和IP協(xié)議報頭格 式可基于用戶數(shù)據(jù)報協(xié)議(UDP)協(xié)議、互聯(lián)網(wǎng)協(xié)議版本4(IPv4)協(xié)議、互聯(lián)網(wǎng)協(xié)議版本6 (IPv6)協(xié)議和傳輸控制協(xié)議(TCP)。要意識到這些示例協(xié)議報頭格式(例如,UDP、IPv4、IPv6 和TCP)為了說明目的并且僅通過示例描述;本領(lǐng)域內(nèi)技術(shù)人員將理解本文的描述適用于任 何報頭格式或甚至任何有效載荷,而獨立于用于定義包的協(xié)議。對于這些不同IP級協(xié)議的 包的大小在表1中示出。
[0015] 表1:示例IP級協(xié)議報頭和大小 每個協(xié)議使用具有不同大小的不同報頭格式,這是明顯的。在報頭中,IP版本在IP報頭 中的"版本"字段中可見,并且底層傳輸協(xié)議也在IP報頭中給出。為了高效壓縮包報頭102, 可使用用于識別報頭大小的分析方法,例如IP包檢查(PI),其可足以識別在特定連接上使 用哪些協(xié)議并且因此估計每個包100的包報頭大小。
[0016] 另外,包100的包有效載荷104可使用對包數(shù)據(jù)業(yè)務(wù)起作用的壓縮方法/算法來壓 縮。例如,可以采用例如GZIP或相似物等壓縮算法。存在不同的有效載荷壓縮方法,一些壓 縮個別數(shù)據(jù)包并且其他跨數(shù)據(jù)包邊界起作用(更確切地說,將包流看作位流),而其他壓縮 整個數(shù)據(jù)包并且其他在數(shù)據(jù)包的特定選擇部分上應(yīng)用壓縮。從該最后的角度來看,選擇部 分可以是像許多報頭壓縮算法中的特定包報頭。這樣的壓縮算法包括壓縮函數(shù)和對應(yīng)的解 壓函數(shù)。
[0017] 典型地,當(dāng)在傳輸級之上的有效載荷104不可壓縮時,壓縮比(其可定義為壓縮包 大小與未壓縮包大小的比率)將未提高而無法壓縮包報頭102。例如,在使用使用傳輸層安 全(TLS)的加密時壓縮有效載荷104沒有益處。然而,如果在傳輸層之上的數(shù)據(jù)未被加密,則 數(shù)據(jù)可高度可壓縮,這取決于數(shù)據(jù)類型,例如應(yīng)用層信令和開銷。再者,為了高效壓縮包有 效載荷104,可使用用于識別有效載荷類型和有效載荷大小的分析方法,例如PI。
[0018] PI可包括或代表在不同級的包分析,從IP報頭歸類到深度包檢查(DPI)。下面描述 可進行的不同級別的包檢查和分析中的一些;這些包括但不限于IP報頭歸類、淺層檢查、 DPI和啟發(fā)式檢測。
[0019] IP報頭歸類(又叫5元組檢查)用于檢查包直至互聯(lián)網(wǎng)層:所謂的5元組(源IP地址、 源IP端口、目的IP地址、目的IP端口、協(xié)議(其在傳輸層上運行,例如TCP、用戶數(shù)據(jù)報協(xié)議 (UDP)等)等XIP報頭歸類對于識別以特定端口號或特定協(xié)議為目標的業(yè)務(wù)有用。它在來自 某些業(yè)務(wù)領(lǐng)域(例如互聯(lián)網(wǎng)或虛擬專用網(wǎng)(VPN))的業(yè)務(wù)應(yīng)采用特定方式對待時也是有用 的。例如,給出全互聯(lián)網(wǎng)業(yè)務(wù)、一定質(zhì)量的服務(wù)對待(例如,優(yōu)先級)或向VPN添加不同的安全 協(xié)議。
[0020] 淺層檢查(又叫狀態(tài)檢查)是通過檢查當(dāng)前協(xié)議報頭(TCP、UDP等)來分析傳輸層協(xié) 議狀態(tài)。例如,分析TCP報頭標志(像SYN、ACK和FIN)的序列告知連接狀態(tài),和接收器窗口大 小。淺層檢查在鏈路層算法被更高層協(xié)議交互事件序列觸發(fā)時有用,而不需要知道攜帶什 么內(nèi)容。一個使用示例是通過使更低層協(xié)議狀態(tài)遵循更高層協(xié)議層來使用戶終端電池消耗 減小。淺層檢查還包括IP報頭的所有字段的分析。
[0021] 深度包檢查(DPI)是應(yīng)用層上數(shù)據(jù)內(nèi)容的分析,例如超文本傳送協(xié)議(HTTP)狀態(tài)、 視頻幀內(nèi)容等。使用DPI的一個常見示例是高速緩存,其中分析HTTP請求來識別從高速緩存 提取哪些內(nèi)容。鏈路層算法也可以變成適應(yīng)于特定類型的內(nèi)容或應(yīng)用。
[0022] 啟發(fā)式檢測包括對應(yīng)用層數(shù)據(jù)的模式檢測或統(tǒng)計識別方法。這典型地是具有加密 內(nèi)容的服務(wù)歸類或?qū)τ谝庠谠O(shè)法避免識別(例如,以避免阻斷IP應(yīng)用的免費語音)的應(yīng)用所 需的。
[0023] 常規(guī)地,由于通過網(wǎng)絡(luò)傳輸?shù)陌鼧I(yè)務(wù)中可能包報頭和有效載荷的大的變化,在應(yīng) 用包報頭和包有效載荷壓縮時需要對每個包進行PI。必須詳細分析包報頭和/或包有效載 荷。PI可用于確定包報頭102的長度使得報頭可在傳輸之前使用包壓縮算法來壓縮。相似 地,PI可用于確定包有效載荷104的長度使得有效載荷可在傳輸之前使用包壓縮算法來壓 縮。報頭長度可代表包報頭的位或字節(jié)的數(shù)量,并且有效載荷長度可代表有效載荷的位或 字節(jié)的數(shù)量。
[0024] 給出在網(wǎng)絡(luò)中傳輸?shù)凝嫶髷?shù)量的包,對每個包進行PI (例如IP報頭歸類、淺層檢 查、DPI和/或啟發(fā)式檢測)以便確定可壓縮的包報頭長度和包有效載荷長度,這變得不可 行。這是由于大量的包業(yè)務(wù)、在每個包上對于PI所需要的計算資源(由于不足的硬件或軟件 (例如,UE))和/或用于對每個包進行PI引起的延遲。另外,設(shè)法壓縮整個包100而僅一部分 可壓縮,這在要壓縮全部包時需要不必要大的計算量。在一些情形中,可期望僅壓縮報頭 102而不是包100的有效載荷104部分。然而,在其他情形中,有效載荷可是可壓縮的并且從 而報頭和有效載荷壓縮兩者都可期望減少帶寬使用并且提高通信網(wǎng)絡(luò)中的吞吐量。從而, 典型地需要PI來確定包100的哪些部分可壓縮以及哪些部分不可壓縮。在僅一部分可壓縮 時壓縮整個包或使用PI功能性來觀察包內(nèi)容需要許多不必要的計算量,這是明顯的。因此, 對于網(wǎng)絡(luò)中的包業(yè)務(wù)非常需要優(yōu)化包的壓縮和解壓同時使在網(wǎng)絡(luò)中傳輸包方面的計算資 源和延遲最小化并且使網(wǎng)絡(luò)中的帶寬效率和數(shù)據(jù)傳輸吞吐量最大化。
【發(fā)明內(nèi)容】
[0025] 盡管對網(wǎng)絡(luò)中的每一個包進行包檢查(PI)可確定每個包的報頭長度和/或有效載 荷以及有效載荷是否可壓縮,更確定地說它是計算密集型的并且可以引起相當(dāng)大的延遲。 本發(fā)明的目標是提供用于估計壓縮比并且動態(tài)調(diào)整壓縮長度以用于壓縮要傳輸?shù)陌?或 網(wǎng)絡(luò)中的包業(yè)務(wù)來使壓縮包方面的計算資源和延遲最小化同時優(yōu)化對于UE包業(yè)務(wù)的可能 壓縮增益、由此優(yōu)化網(wǎng)絡(luò)性能的方法和裝置。
[0