国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      供二進(jìn)制壓縮方法使用的靜態(tài)信息知識的制作方法

      文檔序號:7536882閱讀:244來源:國知局
      專利名稱:供二進(jìn)制壓縮方法使用的靜態(tài)信息知識的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及在使用數(shù)據(jù)協(xié)議(如互聯(lián)網(wǎng)協(xié)議)的通信中的消息壓縮。
      發(fā)明的背景和目的近年來被公眾廣泛使用的兩種通信技術(shù)是蜂窩電話和互聯(lián)網(wǎng)。蜂窩電話提供的某些好處是具有自由的移動性和可訪問性,不論用戶的位置如何都可以獲得良好的服務(wù)質(zhì)量。到最近為止,蜂窩電話提供的主要服務(wù)是話音。相對地,互聯(lián)網(wǎng)在提供用于各種用途的靈活性的同時,著重于固定連接和大型終端。然而,某些服務(wù)(例如互聯(lián)網(wǎng)電話)的所感受的質(zhì)量已被普遍認(rèn)為很低。
      已經(jīng)開發(fā)出多個互聯(lián)網(wǎng)協(xié)議(IP),以提供給在互聯(lián)網(wǎng)和其它網(wǎng)絡(luò)上的通信。這種互聯(lián)網(wǎng)協(xié)議的一個例子是會話發(fā)起協(xié)議(SIP)。SIP是一種應(yīng)用層協(xié)議,用于建立、修改和終止多媒體會話或呼叫。這些會話可包含互聯(lián)網(wǎng)多媒體會議、互聯(lián)網(wǎng)電話以及類似應(yīng)用。如本領(lǐng)域技術(shù)人員所知,SIP可被用在傳輸控制協(xié)議(TCP)或用戶數(shù)據(jù)報(bào)協(xié)議(UDP)上。
      互聯(lián)網(wǎng)協(xié)議的另一個例子是實(shí)時流協(xié)議(RTSP),它是一個應(yīng)用級協(xié)議,用于控制具有實(shí)時屬性的數(shù)據(jù)(如音頻和視頻數(shù)據(jù))的傳遞,RTSP也可與UDP、TCP或其它協(xié)議一同作為傳輸協(xié)議使用?;ヂ?lián)網(wǎng)協(xié)議還有另一個例子是會話描述協(xié)議(SDP),它用于通告多媒體會議和通信會議地址以及會議工具特定的信息。SDP還用于一般的實(shí)時多媒體會話描述的目的。SDP被攜帶于SIP和RTSP消息的消息主體中。SIP,RTSP和SDP都是基于ASCII文本的,使用UTF-8編碼中的ISO 10646字符集。
      由于新技術(shù)的發(fā)展,互聯(lián)網(wǎng)和蜂窩電話技術(shù)開始融合。未來的蜂窩設(shè)備將包含互聯(lián)網(wǎng)協(xié)議(IP)堆棧并支持IP上的話音和網(wǎng)頁瀏覽、電子郵件以及其它希望的服務(wù)。在一個“全I(xiàn)P(all-IP)”或“自始至終IP(IP all the way)”的實(shí)施中,互聯(lián)網(wǎng)協(xié)議在通信系統(tǒng)中被端對端地使用。在一個蜂窩系統(tǒng)中,這可能在蜂窩鏈路和無線電跳越(hop)上包含IP。互聯(lián)網(wǎng)協(xié)議可用于所有類型的業(yè)務(wù),包括用戶數(shù)據(jù)(如語音或流數(shù)據(jù))和控制數(shù)據(jù)(如SIP或RTSP數(shù)據(jù))。各個技術(shù)的這種融合同時提供了IP的靈活性優(yōu)點(diǎn)和蜂窩技術(shù)的移動性優(yōu)點(diǎn)。
      如本技術(shù)領(lǐng)域所知的,SIP,RTSP和SDP協(xié)議共享相似的特征,所述特征已經(jīng)蘊(yùn)含在它們對蜂窩無線電接入的使用中。這些相似性之一是協(xié)議通用的請求和答復(fù)性質(zhì)。通常,當(dāng)發(fā)送者發(fā)送一個請求時,該發(fā)送者保持空閑,直到接收到一個響應(yīng)。如上所述,另一個相似性是SIP、RTSP和SDP均基于ASCII文本,使用UTF-8編碼的ISO 10646字符集。作為結(jié)果,信息通常使用比以二進(jìn)制表示相同信息時所需的更多的比特?cái)?shù)來表示。這些協(xié)議共享的另一個特征是它們通常在尺寸上很大,以便提供必要的信息給會話的參與者。
      IP的一個缺點(diǎn)是由IP協(xié)議組引入的相對較大的開銷,這是因?yàn)閳?bào)頭和基于文本的信令協(xié)議較大的緣故。在蜂窩系統(tǒng)中重要的一點(diǎn)是以有效的方式使用稀有的無線電資源。在蜂窩系統(tǒng)中,在每個小區(qū)中支持足夠數(shù)量的用戶是很重要的,否則實(shí)施和運(yùn)行成本將高不可攀。頻譜,進(jìn)而帶寬是蜂窩鏈路中昂貴的資源,應(yīng)該有效地使用它們以使系統(tǒng)資源最大化。
      在UMTS和EDGE移動通信系統(tǒng)以及第二代系統(tǒng)(如GSM和IS-95)的未來版中,很多信令業(yè)務(wù)將被使用互聯(lián)網(wǎng)協(xié)議執(zhí)行。然而如討論的,大多數(shù)互聯(lián)網(wǎng)協(xié)議被開發(fā)用于固定的、相對寬帶的連接。當(dāng)訪問發(fā)生在窄帶蜂窩鏈路上,則需要對協(xié)議消息進(jìn)行壓縮來滿足服務(wù)質(zhì)量的要求,比如是建立時間和延遲的要求。通常,在整個通信路徑上的壓縮是不需要的。然而,在無線電鏈路上(例如從無線用戶終端到核心網(wǎng)絡(luò))的業(yè)務(wù)的壓縮是非常需要的。
      例如Lempel-Ziv和Huffman編碼的標(biāo)準(zhǔn)二進(jìn)制壓縮方法在某種意義上非常通用,因?yàn)樗鼈儾皇褂萌魏未龎嚎s數(shù)據(jù)的結(jié)構(gòu)的明確知識。在互聯(lián)網(wǎng)數(shù)據(jù)協(xié)議(如SIP和RTSP)上使用這種方法使通信消息的有效壓縮出現(xiàn)困難。今天可用的標(biāo)準(zhǔn)二進(jìn)制壓縮方法通常被設(shè)計(jì)成用于大的數(shù)據(jù)文件。作為結(jié)果,將這種方法用于小消息或具有較少重復(fù)串的消息的壓縮通常會使壓縮性能被認(rèn)為很差。事實(shí)上,如果待壓縮的消息很小和/或包含很少的重復(fù)串,那么使用一些標(biāo)準(zhǔn)壓縮方法就會導(dǎo)致已壓縮的分組實(shí)際大于原始未壓縮的分組,由此會獲得相反的效果。
      實(shí)施二進(jìn)制壓縮方案的一個方法是使用基于字典的壓縮技術(shù)。通常,字典壓縮方案使用已知為字典的數(shù)據(jù)結(jié)構(gòu)來存儲在輸入數(shù)據(jù)中找到的符號串。此方案讀入輸入數(shù)據(jù)并尋找與字典中的符號串相匹配的符號串。如果一個串匹配被找到,則有一個指向該串在字典中的位置的指針或索引被輸出,并代替該串被發(fā)送。如果索引小于它所替換的串,則將進(jìn)行壓縮。一個解壓縮器包含一個壓縮器字典的表示,以便使原始串可從接收的索引中再現(xiàn)。字典壓縮方法的一個例子是Lempel-Ziv(LZ77)算法。此算法通過對先前在該文件中已出現(xiàn)的字符串,用對該先前出現(xiàn)的引用來替換該字符串而操作。當(dāng)然,本發(fā)明在常有重復(fù)串的文件中是尤其成功的。
      字典壓縮方案通常可以被分類為靜態(tài)或動態(tài)。靜態(tài)字典是一種預(yù)定義的字典,它是在壓縮發(fā)生之前構(gòu)建的,并在壓縮過程期間不發(fā)生改變。靜態(tài)字典通常在使用前存儲在壓縮器和解壓縮器中,或在壓縮操作開始之前被發(fā)送并存儲于存儲器中。
      另一方面,動態(tài)或自適應(yīng)字典方案,允許字典的內(nèi)容在壓縮發(fā)生時改變。通常,動態(tài)字典方案開始于沒有字典或有一個默認(rèn)、預(yù)定義的字典,并在壓縮過程期間向字典加入新的串。如果輸入數(shù)據(jù)的一個串在字典中沒有找到,則將該串加入字典的一個新位置中,并分配一個新索引值。新串被發(fā)送到解壓縮器,以便可將其加入解壓縮器的字典。新串的位置不必被發(fā)送,因?yàn)榻鈮嚎s器能識別已經(jīng)被接收的一個新串,并將該串加到解壓縮器的字典中,加入位置與在壓縮器字典中的加入位置相同。以這種方式,可以利用已更新的字典來壓縮將來出現(xiàn)在輸入數(shù)據(jù)中的該串。作為結(jié)果,當(dāng)壓縮發(fā)生時,壓縮器和解壓縮器處的字典被動態(tài)地構(gòu)建和更新。
      字典壓縮的一個方法是已知為滑動窗口壓縮的類型。根據(jù)這種方法,在壓縮期間壓縮器使一個固定尺寸的滑動窗口從左向右移動通過文件。壓縮算法在該窗口左邊的文件中搜索與該窗口中的當(dāng)前串的匹配。如果找到一個匹配,則用文件中該匹配位置的引用和該匹配長度的引用一起來替換該串??商鎿Q地,該窗口可以包含一個文本窗口,該文本窗口包含一大塊最近解碼的文本和一個先行緩沖器(look-ahead buffer)。在這種版本中,先行緩沖器被用于搜索文本窗口中的匹配。如果找到一個匹配,則將該串替換為文本窗口中匹配位置的引用和匹配長度的引用。這一信息由解壓縮器使用,該解壓縮器維護(hù)相同的字典以便再現(xiàn)原始信息。
      數(shù)據(jù)壓縮的另一個方法是使用二進(jìn)制代碼樹。在二進(jìn)制代碼樹中,待壓縮的符號或串在一種樹結(jié)構(gòu)中以可變數(shù)量的比特表示,使每個符號都可被唯一地解碼。通常,在輸入數(shù)據(jù)中出現(xiàn)幾率高的符號與那些出現(xiàn)幾率低的符號相比由更少數(shù)量的比特來代表。在二進(jìn)制代碼樹的構(gòu)建中,個體符號被布置為連接到二進(jìn)制代碼樹的葉節(jié)點(diǎn)的串。出現(xiàn)幾率高的符號由樹的較短枝表示,結(jié)果是只需要較少數(shù)量的比特來表示它們。相反,出現(xiàn)幾率低的符號由樹的較長枝表示,則需要較多數(shù)量的表示比特。當(dāng)輸入數(shù)據(jù)的一個串匹配于壓縮器的二進(jìn)制代碼樹中的一個符號時,該符號的代碼代替符號本身被發(fā)送,從而形成數(shù)據(jù)的壓縮。接收該代碼的解壓縮器使用一個相同的二進(jìn)制代碼樹來重建原始符號或串。
      與字典壓縮相似,二進(jìn)制代碼樹可以是靜態(tài)或動態(tài)的。在靜態(tài)二進(jìn)制代碼樹方案中,一個預(yù)定義的二進(jìn)制代碼樹在壓縮之前被構(gòu)建,并在壓縮過程中不改變。與靜態(tài)字典相同,靜態(tài)二進(jìn)制代碼樹可以預(yù)先存入壓縮器和解壓縮器中,或在壓縮開始之前被發(fā)送并存儲下來。
      動態(tài)或自適應(yīng)二進(jìn)制代碼樹允許在壓縮過程期間加入新的符號或串到代碼樹。根據(jù)使用的二進(jìn)制代碼樹壓縮類型,可以使用不同的方法來更新樹的節(jié)點(diǎn),以允許加入新符號并對代碼樹進(jìn)行重新調(diào)整。在解壓縮器中的二進(jìn)制代碼樹必須根據(jù)與壓縮器申的二進(jìn)制代碼樹相同的規(guī)則也進(jìn)行更新。
      二進(jìn)制代碼樹壓縮方案的一個例子是Huffman編碼壓縮方案。Huffman壓縮是一種通用的壓縮方法,主要用于壓縮ASCII文件。在這些文件中頻繁出現(xiàn)的字符被用更短的代碼(即ASCII代碼使用的小于8比特的代碼)替換。Huffman壓縮在使用相對較少字符的文件中是可以成功的。
      使用上述二進(jìn)制壓縮算法的成功壓縮的一個通用準(zhǔn)則是待壓縮的文件是相當(dāng)大。用于Huffman壓縮的代碼相比于正被壓縮的文件不能過大。對于標(biāo)準(zhǔn)的Lempel-Ziv壓縮,待壓縮的文件必須足夠大以致包含很多重復(fù)的串來獲得有效壓縮。由上述協(xié)議產(chǎn)生的消息多數(shù)為幾百字節(jié),沒有大到足以基于逐個消息地使用上述的算法來有效地壓縮消息。
      因此,在本領(lǐng)域存在一種需求,希望提高利用通信協(xié)議發(fā)送的消息的壓縮效率和性能,以使它們可用于帶寬有限的通信鏈路和信道。
      發(fā)明概要本發(fā)明指導(dǎo)的是用于在帶寬有限的通信鏈路中提高通信協(xié)議的壓縮效率的一種方法、系統(tǒng)和設(shè)備。本發(fā)明的一方面使用通信協(xié)議的結(jié)構(gòu)和內(nèi)容的知識來形成一個靜態(tài)字典或靜態(tài)二進(jìn)制代碼樹。作為結(jié)果,壓縮效率可被大幅提高。本發(fā)明的另一方面提供一種組合的靜態(tài)和動態(tài)字典或二進(jìn)制代碼樹來執(zhí)行通信協(xié)議壓縮。在本發(fā)明的一個方面,靜態(tài)二進(jìn)制代碼樹或靜態(tài)字典是通過研究在它們預(yù)期的使用環(huán)境中的數(shù)據(jù)協(xié)議流而構(gòu)建的。
      附圖簡述當(dāng)結(jié)合附圖參考下面的詳細(xì)描述時,可獲得對本發(fā)明的系統(tǒng)、方法和設(shè)備的更完整的理解,其中

      圖1說明了根據(jù)本發(fā)明進(jìn)行通信的一個示例性系統(tǒng);圖2說明了根據(jù)本發(fā)明的一個示例性實(shí)施例;圖3說明了根據(jù)本發(fā)明的用于壓縮和解壓縮的一個示例性數(shù)據(jù)分組;圖4說明了根據(jù)本發(fā)明的另一個示例性實(shí)施例;和圖5說明了根據(jù)本發(fā)明的又一個示例性實(shí)施例。
      具體實(shí)施例方式
      下面將參照附圖更完整地描述本發(fā)明,在附圖中顯示了本發(fā)明的優(yōu)選實(shí)施例。然而,本發(fā)明能夠以很多不同的形式來實(shí)施,不應(yīng)被理解為限于這里給出的實(shí)施例;相反,提供這些實(shí)施例是為了使公開更徹底和完整,并完全地將本發(fā)明的范圍傳達(dá)給本領(lǐng)域的技術(shù)人員。
      圖1說明了根據(jù)本發(fā)明進(jìn)行通信的一個示例性系統(tǒng)。一個移動終端110利用通信協(xié)議經(jīng)過通信鏈路115(例如一條無線鏈路)與基站120通信。基站120通過鏈路125與一個固定網(wǎng)絡(luò)130(如PSTN)通信。固定網(wǎng)絡(luò)130通過鏈路135與基站140通信?;?40使用通信鏈路145與終端150通信,終端150可以是一個移動終端或一個固定終端。根據(jù)本發(fā)明的一個實(shí)施例,移動終端110使用壓縮數(shù)據(jù)經(jīng)過通信鏈路115與基站120通信。類似地,基站140可使用壓縮數(shù)據(jù)與終端150通信。應(yīng)該理解,圖1系統(tǒng)中的部分,如移動終端110和基站140,可以包含一個存儲器160和處理器155,用于存儲和執(zhí)行軟件指令,這些軟件指令實(shí)現(xiàn)壓縮和解壓縮算法。還應(yīng)該理解,本發(fā)明可用于其它通信系統(tǒng),例如蜂窩網(wǎng)絡(luò),該網(wǎng)絡(luò)在其中需要壓縮的鏈路上使用通信協(xié)議。
      圖2說明了本發(fā)明的一個示例性實(shí)施例。在此實(shí)施例中,一個實(shí)體A(210)使用通信鏈路(250,255)與實(shí)體B(230)通信,在該通信鏈路(250,255)中使用了數(shù)據(jù)壓縮。每個實(shí)體包含一個數(shù)據(jù)壓縮器(215,245)和一個數(shù)據(jù)解壓縮器(225,235)。根據(jù)本發(fā)明的一個示例性實(shí)施例,使用了一種字典壓縮方法。在此實(shí)施例中,每個實(shí)體中的靜態(tài)字典220被用于壓縮和解壓縮那些將要使用數(shù)據(jù)協(xié)議在通信鏈路上進(jìn)行通信的數(shù)據(jù)。應(yīng)該理解,壓縮器和/或解壓縮器可以使用一個處理器和其中存有壓縮/解壓縮算法指令的相關(guān)存儲器來實(shí)現(xiàn)。還應(yīng)該理解,通信實(shí)體可包含多個通信設(shè)備。例如,實(shí)體A可包含一個移動終端110,實(shí)體B可包含一個基站140。
      根據(jù)本發(fā)明的一個實(shí)施例,實(shí)體A(210)和實(shí)體B(230)使用相同的靜態(tài)字典220。靜態(tài)字典220可由通信協(xié)議使用的協(xié)議字段名和公用符號串來構(gòu)成,所述通信協(xié)議是在通信鏈路(250,255)上將被用于通信的協(xié)議,例如互聯(lián)網(wǎng)協(xié)議。應(yīng)該理解,通信實(shí)體可包含多個通信設(shè)備。例如,實(shí)體A可包含一個移動終端,實(shí)體B可包含一個基站。
      可用于形成字典的實(shí)體的一個例子包含媒體類型的信息,例如音頻、視頻和圖象信息??捎糜谛纬勺值涞淖值鋵?shí)體的其它例子包含使用的協(xié)議令牌(token)方法,例如GET,HEAD和POST或在特定協(xié)議中使用的報(bào)頭字段名,例如連接(Connection)、日期(Date)和接受(Accept)。在此示例性實(shí)施例中,只有在字典中可以找到的一部分?jǐn)?shù)據(jù)分組被壓縮,而剩下的數(shù)據(jù)分組可以不經(jīng)過壓縮或使用本領(lǐng)域技術(shù)人員已知的替換方法壓縮后進(jìn)行發(fā)送。
      圖3說明了根據(jù)本發(fā)明的用于壓縮和解壓縮的一種示例性數(shù)據(jù)分組310。根據(jù)此實(shí)施例,數(shù)據(jù)分組310代表根據(jù)給定數(shù)據(jù)協(xié)議將被發(fā)送的信息。串A(320)和串C(340)代表在靜態(tài)字典中沒有找到的數(shù)據(jù)分組310的部分。串B(330)和串D(350)代表在靜態(tài)字典中找到的數(shù)據(jù)分組310的部分。代替發(fā)送串B(330)和串D(350),只需要為數(shù)據(jù)分組310的串B和串D部分發(fā)送索引370和索引380,其中索引370指向串B在靜態(tài)字典中的位置,索引380指向串D在靜態(tài)字典中的位置。然后可將串A(320)和串C(340)作為未壓縮數(shù)據(jù)加入索引370和索引380以形成壓縮的數(shù)據(jù)分組360。作為替換,串A(320)和串C(340)可以使用本領(lǐng)域技術(shù)人員已知的多種壓縮方法中的任一個方法進(jìn)行壓縮。然后將壓縮數(shù)據(jù)分組360發(fā)送給接收實(shí)體。
      在接收實(shí)體接收到壓縮數(shù)據(jù)分組360之后,索引370和索引380被匹配到接收實(shí)體的相同靜態(tài)字典中的相應(yīng)入口,以形成重建的串B(330’)和串D(350’)。接收到的串A(320’)和串C(340’)與重建的串B(330’)和串D(350’)相組合以形成重建的原始數(shù)據(jù)分組(310’)。作為替換,如果串A(320)和串C(340)在發(fā)送之前被壓縮,則將它們在與重建的串B(330’)和串D(350’)相組合以形成重建的原始數(shù)據(jù)分組(310’)之前進(jìn)行解壓縮。
      圖4說明了本發(fā)明的另一個示例性實(shí)施例。由于使用雙向通信進(jìn)行發(fā)送的數(shù)據(jù)的性質(zhì)和格式通常對于每個通信方向是不同的,因此能為每個通信方向單獨(dú)定制的壓縮方案是有益的。在此實(shí)施例中,實(shí)體A(410)包含一個具有相關(guān)靜態(tài)字典A(420)的數(shù)據(jù)壓縮器415,和一個具有相關(guān)靜態(tài)字典B(430)的數(shù)據(jù)解壓縮器425。實(shí)體B(440)包含一個具有相關(guān)靜態(tài)字典A(420)的數(shù)據(jù)解壓縮器445,和一個具有相關(guān)靜態(tài)字典B(430)的數(shù)據(jù)壓縮器455。
      在操作期間,實(shí)體A(410)將使用數(shù)據(jù)壓縮器415壓縮的消息或數(shù)據(jù)經(jīng)過通信鏈路460發(fā)送到實(shí)體B(440),然后該消息或數(shù)據(jù)通過解壓縮器445使用靜態(tài)字典A(420)解壓縮。用這種方法,實(shí)體A(410)的壓縮器415和實(shí)體B(440)的解壓縮器445使用相同的靜態(tài)字典A(420)來進(jìn)行壓縮和解壓縮。類似地,實(shí)體B(440)將使用數(shù)據(jù)壓縮器455壓縮的消息或數(shù)據(jù)經(jīng)過通信鏈路465發(fā)送到實(shí)體A(410),然后該消息或數(shù)據(jù)被使用解壓縮器425解壓縮。實(shí)體B(440)的壓縮器455和實(shí)體A(410)的解壓縮器425使用相同的靜態(tài)字典B(430)來進(jìn)行壓縮和解壓縮。本發(fā)明的這一示例性實(shí)施例允許對通信的每個方向進(jìn)行優(yōu)化的靜態(tài)字典設(shè)計(jì)。
      圖5說明了根據(jù)本發(fā)明的又一個示例性實(shí)施例,其中使用了一個組合的靜態(tài)和動態(tài)字典。在此實(shí)施例中,使用一個初始的靜態(tài)字典作為每個通信實(shí)體的壓縮器和解壓縮器的開始字典。只要通信一開始,該字典就作為一個動態(tài)字典來操作。在此實(shí)施例中,實(shí)體A(510)使用第一通信鏈路550與實(shí)體B(530)通信,其中實(shí)體A(510)包含具有相關(guān)靜態(tài)/動態(tài)字典520的壓縮器515,而實(shí)體B(530)包含具有相關(guān)靜態(tài)/動態(tài)字典540的解壓縮器535。
      在實(shí)體A(510)中,將被壓縮并發(fā)送給實(shí)體B(530)的消息被對照字典520進(jìn)行測試。如果該消息的一部分匹配于一個字典入口,則該部分由其相應(yīng)的索引替換。接著將不匹配于字典520中入口的消息部分或者是從該消息部分所選擇的字段加入字典520,以用于將來的壓縮。然后在第一通信鏈路550上將該索引和未壓縮部分發(fā)送給實(shí)體B(530)。
      之后,實(shí)體B(530)對接收到的消息解碼并分隔成索引信息和未壓縮部分。實(shí)體B(530)中的解壓縮器535通過將該索引匹配到字典540中的入口,該詞條接著被增加到該未壓縮數(shù)據(jù)來形成原始消息,從而重現(xiàn)該壓縮信息。然后將加入實(shí)體A(510)的字典520中的消息部分加入到實(shí)體B(530)的字典540中,以使每個實(shí)體維護(hù)匹配的字典。
      此后從實(shí)體A(510)發(fā)送給實(shí)體B(530)的消息使用更新的字典520進(jìn)行壓縮,并由實(shí)體B(530)使用更新的字典540進(jìn)行解壓縮。作為結(jié)果,實(shí)體A(520)的字典520和實(shí)體B的字典540被動態(tài)更新,從而允許壓縮方法適應(yīng)于待發(fā)送的數(shù)據(jù),這將使壓縮效率不斷地提高。
      另外,實(shí)體A(510)可包含解壓縮器525,實(shí)體B(530)可包含壓縮器545,以便允許實(shí)體B(530)使用第二通信鏈路555向?qū)嶓wA(510)傳送壓縮的消息。這種配置提供了雙向壓縮通信的能力。實(shí)體A(510)的解壓縮器525可以使用與壓縮器515的相同的靜態(tài)/動態(tài)字典520。類似地,實(shí)體B(530)的壓縮器545可以使用與解壓縮器535的相同的靜態(tài)/動態(tài)字典540。作為替換,每對壓縮器/解壓縮器可以使用單獨(dú)的靜態(tài)/動態(tài)字典,并允許使用能針對各自通信方向進(jìn)行優(yōu)化的靜態(tài)/動態(tài)字典。
      在包含組合的靜態(tài)/動態(tài)字典的本發(fā)明另一個示例性實(shí)施例中,可以使用滑動窗口字典壓縮方法。與上一實(shí)施例一樣,使用一個初始的靜態(tài)字典作為壓縮器和解壓縮器的開始字典,只要通信一開始,該字典就作為動態(tài)字典來操作。在第一步驟中,待壓縮的消息被添加到包含壓縮器的第一實(shí)體的字典中。在下一步驟中,根據(jù)滑動窗口壓縮方法(如Lempel-Ziv)對包含所加消息的字典進(jìn)行處理以產(chǎn)生壓縮的消息。在此步驟中,字典可能與附加的消息一起被壓縮。
      在另一步驟中,對應(yīng)于靜態(tài)/動態(tài)字典的一部分壓縮消息被刪除,并被替換為指向字典中相應(yīng)位置的一個引用或索引。在下一步驟中,剩余的壓縮消息與引用信息一起被發(fā)送到第二實(shí)體中的解壓縮器。
      在另一步驟中,將接收到的壓縮消息添加到第二實(shí)體中的靜態(tài)/動態(tài)字典的壓縮版本,以使該解壓縮器具有與該壓縮器相同的字典。在下一步驟中,該結(jié)果由相應(yīng)的解壓縮方法(如Lempel-Ziv)進(jìn)行處理,以產(chǎn)生該原始消息。
      在上述方法的一種替換實(shí)施例中,不使用該壓縮方法來壓縮字典。在此實(shí)施例中,在操作之前,可將字典預(yù)先載入執(zhí)行壓縮算法使用的緩沖器和搜索樹中。當(dāng)待壓縮的消息到達(dá)時,在該消息被載入的緩沖器中的位置開始實(shí)際壓縮。由此,不壓縮字典,只壓縮消息本身。根據(jù)此實(shí)施例,該解壓縮器的相應(yīng)字典也可以是未壓縮的形式。
      本發(fā)明的一個重要方面是靜態(tài)字典的構(gòu)建。根據(jù)本發(fā)明構(gòu)建靜態(tài)字典的一個示例性方法包含研究數(shù)據(jù)分組流,以收集其中需要壓縮的通信鏈路上的所需通信協(xié)議的統(tǒng)計(jì)數(shù)據(jù)。
      通過使用該統(tǒng)計(jì)數(shù)據(jù),就可以應(yīng)用一個給定通信協(xié)議中最頻繁使用的協(xié)議字段名和其它公共串來構(gòu)建靜態(tài)字典,以便為待發(fā)送的數(shù)據(jù)或消息提供最優(yōu)的壓縮。然后,可以在使用之前,構(gòu)建靜態(tài)字典并將其存儲在第一通信實(shí)體和第二通信實(shí)體處。這種在使用之前的存儲特別有利于用在短通信會話中,使得降低了在通信會話開始時可能產(chǎn)生的開銷。作為替換,可以在壓縮發(fā)生之前,在通信會話開始時將靜態(tài)字典從壓縮器傳送到解壓縮器。
      作為一種字典壓縮方案的替換,可以使用一種靜態(tài)二進(jìn)制代碼樹的方案。靜態(tài)二進(jìn)制代碼樹可以使用統(tǒng)計(jì)方法來構(gòu)建,例如研究通信鏈路上所需數(shù)據(jù)協(xié)議的數(shù)據(jù)分組的流。使用這一統(tǒng)計(jì)信息,可將靜態(tài)二進(jìn)制代碼樹構(gòu)建成這樣使數(shù)據(jù)協(xié)議中出現(xiàn)幾率高的協(xié)議字段名和其它公共串比那些出現(xiàn)幾率低的協(xié)議字段名和其它公共串用更少數(shù)量的比特來表示。作為結(jié)果,提高了壓縮效率??捎糜趯?shí)施本發(fā)明的二進(jìn)制代碼樹壓縮方案的一個這樣的例子是Huffman編碼方法。
      在本發(fā)明的另一示例性實(shí)施例中,可以將靜態(tài)二進(jìn)制代碼樹與靜態(tài)字典組合使用。在此示例性實(shí)施例中,使用所需的方法來首先構(gòu)建靜態(tài)字典,所述方法是例如根據(jù)本發(fā)明的上述方法的一種。然后,可以通過在使用靜態(tài)字典的情況下研究用于所需數(shù)據(jù)協(xié)議的數(shù)據(jù)分組的流并依此構(gòu)建靜態(tài)二進(jìn)制代碼樹,從而來完成靜態(tài)二進(jìn)制代碼樹的構(gòu)建。靜態(tài)字典壓縮與靜態(tài)二進(jìn)制代碼樹壓縮(如Huffman編碼)的組合使用可用于提高被發(fā)送數(shù)據(jù)的壓縮效率。
      盡管本發(fā)明的方法、系統(tǒng)和設(shè)備的各種實(shí)施例已經(jīng)在附圖中進(jìn)行了說明,并在前面的具體描述中進(jìn)行了描述,但應(yīng)該明白,本發(fā)明不限于所公開的實(shí)施例,而是可以在不偏離如前面給出和后面權(quán)利要求限定的本發(fā)明范圍的情況下,進(jìn)行多次重新配置、修改和替換。
      權(quán)利要求
      1.一種用于對使用通信協(xié)議傳送的消息進(jìn)行壓縮的通信實(shí)體,所述通信實(shí)體包含一個其中包含至少一個符號串的字典,所述至少一個符號串對應(yīng)于給定通信協(xié)議的至少一個符號;和一個與所述字典通信的壓縮器,所述壓縮器使用所述字典來壓縮依照所述給定通信協(xié)議的第一通信消息中的所述至少一個符號串。
      2.根據(jù)權(quán)利要求1所述的通信實(shí)體,所述通信實(shí)體還包含一個與所述字典通信的解壓縮器,所述解壓縮器使用所述字典來解壓縮依照所述給定通信協(xié)議的第二通信消息中的至少一個符號串。
      3.根據(jù)權(quán)利要求1所述的通信實(shí)體,所述通信實(shí)體還包含一個與所述壓縮器通信的二進(jìn)制代碼樹,所述壓縮器使用所述二進(jìn)制代碼樹來壓縮依照所述給定通信協(xié)議的所述第一通信消息中的所述至少一個符號串。
      4.根據(jù)權(quán)利要求3所述的通信實(shí)體,其中所述二進(jìn)制代碼樹包含Huffman二進(jìn)制代碼樹。
      5.根據(jù)權(quán)利要求3所述的通信實(shí)體,其中所述二進(jìn)制代碼樹包含靜態(tài)二進(jìn)制代碼樹。
      6.根據(jù)權(quán)利要求1所述的通信實(shí)體,其中所述字典包含靜態(tài)字典。
      7.根據(jù)權(quán)利要求1所述的通信實(shí)體,其中所述給定通信協(xié)議的所述至少一個符號包含所述給定通信協(xié)議的至少一個字段名。
      8.根據(jù)權(quán)利要求1所述的通信實(shí)體,其中所述字典中的至少一個入口是基于所述給定通信協(xié)議的統(tǒng)計(jì)數(shù)據(jù)流的。
      9.根據(jù)權(quán)利要求1所述的通信實(shí)體,所述通信實(shí)體還包含一個與所述壓縮器通信的動態(tài)字典,在所述動態(tài)字典中包含至少一個第二符號串,所述至少一個第二符號串對應(yīng)于給定通信協(xié)議的至少一個第二符號,所述壓縮器使用所述動態(tài)字典和所述字典兩者中的至少一個字典來壓縮依照所述給定通信協(xié)議的隨后的通信消息中的至少一個符號串。
      10.根據(jù)權(quán)利要求9所述的通信實(shí)體,其中所述壓縮器使用一滑動窗口字典壓縮方法。
      11.一種用于對使用通信協(xié)議接收的消息進(jìn)行解壓縮的通信實(shí)體,所述通信實(shí)體包含一個其中包含至少一個符號串的字典,所述至少一個符號串對應(yīng)于給定通信協(xié)議的至少一個符號;和一個與所述字典通信的解壓縮器,所述解壓縮器使用所述字典來解壓縮依照所述給定通信協(xié)議的第一通信消息中的所述至少一個符號串。
      12.根據(jù)權(quán)利要求11所述的通信實(shí)體,所述通信實(shí)體還包含一個與所述字典通信的壓縮器,所述壓縮器使用所述字典來壓縮依照所述給定通信協(xié)議的第二通信消息中的至少一個符號串。
      13.根據(jù)權(quán)利要求11所述的通信實(shí)體,所述通信實(shí)體還包含一個與所述解壓縮器通信的二進(jìn)制代碼樹,所述解壓縮器使用所述二進(jìn)制代碼樹來解壓縮依照所述給定通信協(xié)議的所述第一通信消息中的所述至少一個符號串。
      14.根據(jù)權(quán)利要求13所述的通信實(shí)體,其中所述二進(jìn)制代碼樹包含靜態(tài)二進(jìn)制代碼樹。
      15.根據(jù)權(quán)利要求13所述的通信實(shí)體,其中所述二進(jìn)制代碼樹包含Huffman二進(jìn)制代碼樹。
      16.根據(jù)權(quán)利要求11所述的通信實(shí)體,其中所述字典包含靜態(tài)字典。
      17.根據(jù)權(quán)利要求11所述的通信實(shí)體,其中所述給定通信協(xié)議的所述至少一個符號包含所述給定通信協(xié)議的至少一個字段名。
      18.根據(jù)權(quán)利要求11所述的通信實(shí)體,其中所述字典中的至少一個入口是基于所述給定通信協(xié)議的統(tǒng)計(jì)數(shù)據(jù)流的。
      19.根據(jù)權(quán)利要求11所述的通信實(shí)體,所述通信實(shí)體還包含一個與所述解壓縮器通信的動態(tài)字典,在所述動態(tài)字典中包含至少一個第二符號串,所述至少一個第二符號串對應(yīng)于給定通信協(xié)議的至少一個第二符號,所述壓縮器使用所述動態(tài)字典和所述字典兩者中的至少一個字典來解壓縮依照所述給定通信協(xié)議的隨后的通信消息中的至少一個符號串。
      20.根據(jù)權(quán)利要求19的通信實(shí)體,其中所述解壓縮器使用一滑動窗口字典解壓縮方法。
      21.一種便于壓縮消息通信的通信系統(tǒng),所述通信系統(tǒng)包括一個第一通信實(shí)體,用于發(fā)送第一通信消息,所述第一通信實(shí)體包含一個其中包含至少一個符號串的第一字典,所述至少一個符號串對應(yīng)于給定通信協(xié)議的至少一個符號;和一個與所述第一字典通信的第一壓縮器,所述第一壓縮器使用所述第一字典來壓縮依照所述給定通信協(xié)議的第一通信消息中的一個給定符號串;和一個與所述第一通信實(shí)體通信的第二通信實(shí)體,用于接收所述第一通信消息,所述第二通信實(shí)體包含一個其中包含至少一個符號串的第二字典,所述至少一個符號串對應(yīng)于所述給定通信協(xié)議的所述至少一個符號;和一個與所述第二字典通信的第一解壓縮器,所述第一解壓縮器使用所述第二字典來解壓縮依照所述給定通信協(xié)議的所述第一通信消息中的所述給定符號串,所述第一字典與所述第二字典基本上等同。
      22.根據(jù)權(quán)利要求21所述的通信系統(tǒng),其中所述第一通信實(shí)體還包含一個與所述第一字典通信的第二解壓縮器,所述第二解壓縮器使用所述第一字典來解壓縮依照所述給定通信協(xié)議的第二通信消息中的一個給定的符號串,所述第二通信消息是從所述第二通信實(shí)體接收的。
      23.根據(jù)權(quán)利要求22所述的通信系統(tǒng),其中所述第二通信實(shí)體還包含一個與所述第二字典通信的第二壓縮器,所述第二壓縮器使用所述第二字典來壓縮依照所述給定通信協(xié)議的所述第二通信消息中的一個給定的符號串。
      24.根據(jù)權(quán)利要求21所述的通信系統(tǒng),其中所述第一通信實(shí)體還包含一個其中包含至少一個符號串的第三字典,所述至少一個符號串對應(yīng)于給定通信協(xié)議的至少一個符號;和一個與所述第三字典通信的第二解壓縮器,所述第二解壓縮器使用所述第三字典來解壓縮依照所述給定通信協(xié)議的第二通信消息中的一個給定符號串,所述第二通信消息是從所述第二通信實(shí)體接收的。
      25.根據(jù)權(quán)利要求24所述的通信系統(tǒng),其中所述第二通信實(shí)體還包含一個其中包含至少一個符號串的第四字典,所述至少一個符號串對應(yīng)于給定通信協(xié)議的至少一個符號;和一個與所述第四字典通信的第二壓縮器,所述第二壓縮器使用所述第四字典來壓縮依照所述給定通信協(xié)議的所述第二通信消息中的所述給定符號串,所述第三字典與所述第四字典基本上等同。
      26.根據(jù)權(quán)利要求21所述的通信系統(tǒng),其中所述給定通信協(xié)議的所述至少一個符號包含所述給定通信協(xié)議的至少一個字段名。
      27.根據(jù)權(quán)利要求21所述的通信系統(tǒng),其中所述第一字典中的至少一個入口是基于所述給定通信協(xié)議的統(tǒng)計(jì)數(shù)據(jù)流的。
      28.根據(jù)權(quán)利要求24所述的通信系統(tǒng),其中所述第三字典中的至少一個入口是基于所述給定通信協(xié)議的統(tǒng)計(jì)數(shù)據(jù)流的。
      29.根據(jù)權(quán)利要求21所述的通信系統(tǒng),其中所述第一字典包含靜態(tài)字典。
      30.根據(jù)權(quán)利要求21所述的通信系統(tǒng),其中所述第二字典包含靜態(tài)字典。
      31.根據(jù)權(quán)利要求24所述的通信系統(tǒng),其中所述第三字典包含靜態(tài)字典。
      32.根據(jù)權(quán)利要求25所述的通信系統(tǒng),其中所述第四字典包含靜態(tài)字典。
      33.一種于便使用通信協(xié)議進(jìn)行壓縮消息通信的方法,所述方法包含以下步驟將第一通信消息中的至少一個符號串匹配到第一字典中的至少一個匹配的符號串;傳送指示所述至少一個匹配符號串在所述第一字典中位置的引用信息;接收指示所述至少一個匹配符號串在所述第一字典中位置的所述引用信息;將所述接收的引用信息與第二字典中的至少一個相應(yīng)符號串關(guān)聯(lián)起來,所述第二字典中的所述至少一個相應(yīng)符號串基本等于所述第一字典中的所述至少一個匹配符號串;和用所述第二字典中的所述至少一個相應(yīng)符號串重建所述第一通信消息。
      34.根據(jù)權(quán)利要求33所述的方法,其中所述第一字典和所述第二字典的至少一個包含靜態(tài)字典。
      35.根據(jù)權(quán)利要求33所述的方法,其中所述第一字典和所述第二字典的至少一個包含動態(tài)字典。
      36.一種便于使用通信協(xié)議進(jìn)行壓縮消息通信的方法,所述方法包含以下步驟在一個字典中搜索對應(yīng)于所述通信協(xié)議的符號串,所述符號串被包含在一個通信消息中;一肯定地確認(rèn)所述字典包含所述符號串,就從所述字典檢索與所述符號串相關(guān)聯(lián)的壓縮符號串;在所述通信消息中,用所述壓縮符號串替換所述的符號串;和使用所述通信協(xié)議發(fā)送所述通信消息。
      37.根據(jù)權(quán)利要求36所述的方法,其中所述字典包含靜態(tài)字典。
      38.根據(jù)權(quán)利要求36所述的方法,其中所述字典包含動態(tài)字典。
      39.一種便于使用通信協(xié)議進(jìn)行壓縮消息通信的方法,所述方法包含以下步驟接收一個基于所述通信協(xié)議的通信消息,所述通信消息包含一個壓縮符號串;從一字典中檢索與所述壓縮符號串相關(guān)聯(lián)的一個未壓縮符號串,所述未壓縮符號串對應(yīng)于所述通信協(xié)議;和在所述通信消息中,用所述未壓縮符號串替換所述壓縮符號串。
      40.根據(jù)權(quán)利要求39所述的方法,其中所述字典包含靜態(tài)字典。
      41.根據(jù)權(quán)利要求39所述的方法,其中所述字典包含動態(tài)字典。
      全文摘要
      用于在帶寬受限的通信鏈路(250,255,550)上提高通信協(xié)議的壓縮效率的一種系統(tǒng)、方法和設(shè)備。本發(fā)明的一方面運(yùn)用通信協(xié)議的結(jié)構(gòu)和內(nèi)容的知識來形成一個靜態(tài)字典(220,420,430)或靜態(tài)二進(jìn)制代碼樹。作為結(jié)果,壓縮效率可被大幅提高。本發(fā)明的另一方面提供一種組合的靜態(tài)和動態(tài)字典(520,540)或二進(jìn)制代碼樹來執(zhí)行通信協(xié)議壓縮。在本發(fā)明的一個方面,靜態(tài)二進(jìn)制代碼樹或靜態(tài)字典(220,420,430)是通過研究在它們預(yù)期的使用環(huán)境中的數(shù)據(jù)協(xié)議流而構(gòu)建的。
      文檔編號H03M7/40GK1486536SQ01822069
      公開日2004年3月31日 申請日期2001年11月15日 優(yōu)先權(quán)日2000年11月16日
      發(fā)明者H·汗努, K·斯范布羅, J·克里斯托費(fèi)爾松, H 汗努, 恫悸, 鎪雇蟹訊 申請人:艾利森電話股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1