專利名稱:基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)姆椒ê脱b置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳 輸?shù)姆椒ê脱b置。
背景技術(shù):
由于物理?xiàng)l件的限制,無線鏈路與有線鏈路相比,傳輸速率較低,而誤碼率偏高。 當(dāng)將IP協(xié)議技術(shù)應(yīng)用在無線網(wǎng)絡(luò)小區(qū)環(huán)境中時,存在分組頭標(biāo)開銷過大的問題。例如,一 個IPv6語音通信分組,用戶真正需要的分組凈荷往往只占整個分組的22%。這樣不僅浪費(fèi) 帶寬,還增大了由于分組出錯而導(dǎo)致的該分組被丟棄的概率。若不采取有效措施,在浪費(fèi)寶 貴無線網(wǎng)絡(luò)資源的同時,還會降低用戶的服務(wù)質(zhì)量。采用頭壓縮機(jī)制可以解決上述問題,同時可保證IP協(xié)議固有的靈活性。頭壓 縮機(jī)制可包括R0HC(Robust Header Compression,魯棒性頭標(biāo)壓縮)、CRTP (Real-time Transport Protocol Header Compression,實(shí)時傳輸協(xié)議頭壓縮)機(jī)制,以及 ECRTP(Extended RTP Header Compression,擴(kuò)展實(shí)時傳輸協(xié)議頭壓縮)機(jī)制等。以ROHC為例,ROHC是一種基于流的頭標(biāo)壓縮方案。在網(wǎng)絡(luò)數(shù)據(jù)傳輸過程中,同一 個流的分組中大部分頭標(biāo)域具有相同的域值。ROHC機(jī)制在某個流中取一個參考分組,對于 其他分組僅僅發(fā)送頭標(biāo)域中相對參考分組變化的信息,以達(dá)到壓縮目的,從而節(jié)省分組頭 標(biāo)開銷,更加有效地利用帶寬。通過ROHC機(jī)制在無線網(wǎng)絡(luò)中進(jìn)行通信,需要建立ROHC信道,ROHC信道為一個邏 輯信道,在這個邏輯信道中,入口是壓縮器,出口是解壓縮器,壓縮器和解壓縮器一一對應(yīng)。 壓縮器把原始數(shù)據(jù)進(jìn)行頭壓縮以后通過該邏輯信道發(fā)送給解壓縮器。該ROHC信道為單向 邏輯信道。同時,為了支持雙向壓縮,解壓縮器必須能夠給壓縮器提供反饋信息,因此ROHC 反饋信道為承載所述反饋信息的邏輯信道,入口是解壓縮器,出口是壓縮器。ROHC頭壓縮機(jī)制可以被簡單描述為兩個狀態(tài)機(jī)(一個壓縮狀態(tài)機(jī)和一個解壓狀 態(tài)機(jī))之間的互作用。兩個狀態(tài)機(jī)各自都有三種不同的狀態(tài)。兩個狀態(tài)機(jī)都是由最低的壓 縮狀態(tài)開始逐步轉(zhuǎn)變到更高的狀態(tài)。其中壓縮機(jī)的狀態(tài)轉(zhuǎn)移方式如圖1所示,解壓縮機(jī)的 狀態(tài)轉(zhuǎn)移方式如圖2所示。如上圖1所示,ROHC壓縮機(jī)包含三種狀態(tài)IRanitial and Refresh,初始狀態(tài)), FO (First Order,第一等級),SO (Second Order,第二等級)。初始的狀態(tài)為IR狀態(tài),這時 解壓縮端幾乎沒有解壓縮所需的靜態(tài)和動態(tài)信息,ROHC壓縮端發(fā)送頂或是IR-DYM數(shù)據(jù)包, 其中包含了數(shù)據(jù)包頭中的靜態(tài)信息(源IP地址,目的IP地址等)和一些動態(tài)信息(SN序 列號,Timestamp時間戳等)。頂包既包含靜態(tài)信息又包含動態(tài)信息,而IR-DYM包可以只 包含動態(tài)信息。當(dāng)解壓縮端得到靜態(tài)信息和部分動態(tài)信息時,壓縮端處于FO狀態(tài)。當(dāng)解壓 縮端得到所有的靜態(tài)和動態(tài)信息,壓縮端進(jìn)入SO狀態(tài),報頭的數(shù)據(jù)壓縮到最小。如圖2所示,ROHC解壓縮機(jī)包含三種狀態(tài)NC (No Context,沒有上下文), SC(Satic Context,靜態(tài)上下文),F(xiàn)C(Full Context,全部上下文)。NC就是解壓縮端的初始狀態(tài),這時解壓縮端沒有收到數(shù)據(jù)包,沒有解壓縮需要的任何信息;SC就是解壓縮端得 到了全部的靜態(tài)解壓縮的信息以及部分動態(tài)解壓縮的信息;FC就是解壓縮端已經(jīng)獲得了 全部的靜態(tài)和動態(tài)解壓縮信息。ROHC的Context (上下文)信息分成兩種不同類型靜態(tài)Context信息和動態(tài)的 Context信息,其中靜態(tài)Context信息是很少變化的,所以一般只要接收端正確接收到,壓 縮端就可以不需要再傳輸;而動態(tài)的Context信息是變化的,現(xiàn)有的IP數(shù)據(jù)包頭中的動態(tài) Context 信息主要為 SN, Timestamp, IP-id。如果包含了靜態(tài)Context信息更新的數(shù)據(jù)包發(fā)生了錯誤或是丟失,會導(dǎo)致之后所 有的數(shù)據(jù)包都無法獲取靜態(tài)Context信息,以致于后繼大量的解頭壓縮失?。蝗绻B續(xù)丟 失了一定數(shù)量的數(shù)據(jù)包,也會導(dǎo)致后繼數(shù)據(jù)包不能解析動態(tài)Context信息,以致于解頭壓 縮失敗。ARQ(auto repeat request,自動重傳請求)是通過接收方請求發(fā)送方重傳出錯的 數(shù)據(jù)包文來恢復(fù)出錯的報文的一種技術(shù),是通信中用于處理信道所帶來差錯的方法之一。ARQ包括三種方式即停等式(stop-and-wait),回退η幀(go-back-n) ARQ,選擇 性重傳(selective r印eat)ARQ,以及混合ARQ(HARQ)。它們的區(qū)別在于對于出錯的數(shù)據(jù)包 文的處理機(jī)制不同。HARQ系統(tǒng)就是在 ARQ系統(tǒng)中引入了 FECO^orward Error Correction,前向糾錯), 該FEC可以用來糾正傳輸過程中的數(shù)據(jù)差錯,即如果錯誤在FEC的糾錯范圍內(nèi),那么FEC就 進(jìn)行糾錯,如果超出了其糾錯范圍,那么接收方指示發(fā)送方重傳出錯報文的部分或者全部 信息,然后,接收方將再次收到的報文信息與上次收到的報文信息進(jìn)行合并,以恢復(fù)報文信 肩、ο采用ROHC機(jī)制可以節(jié)約無線網(wǎng)絡(luò)資源,提高服務(wù)質(zhì)量,但由于現(xiàn)有的ROHC機(jī)制對 于錯誤報頭的處理為直接丟棄而不作進(jìn)一步處理,在錯包率達(dá)到一定程度的情況下,導(dǎo)致 狀態(tài)回退并更新context信息,重新同步解壓狀態(tài),在無線鏈路狀況較差時,會導(dǎo)致頻繁的 狀態(tài)回退,極大降低壓縮效率。而自動重傳機(jī)制可以提高報文發(fā)送的正確率和可靠性,在現(xiàn)有技術(shù)的一些無線傳輸系統(tǒng)中,比如在IEEE(Institute of Electricaland Electronics Engineers,電子電氣工禾呈師協(xié)會)16m, LTE (Long TermEvolution,長其月演進(jìn)) 系統(tǒng)中,雖然同時應(yīng)用了 ROHC機(jī)制和自動重傳機(jī)制,但是將ROHG機(jī)制和自動重傳機(jī)制作為 兩個相對獨(dú)立的技術(shù)進(jìn)行應(yīng)用,沒有利用ROHC機(jī)制和自動重傳機(jī)制之間的關(guān)聯(lián)性特點(diǎn)來 提升系統(tǒng)性能。
發(fā)明內(nèi)容
本發(fā)明的實(shí)施例提供了一種基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)姆椒ê?裝置,以實(shí)現(xiàn)頭壓縮端利用重傳機(jī)制的反饋信息確定所述頭壓縮端的狀態(tài),根據(jù)所述頭壓 縮端的狀態(tài)對數(shù)據(jù)包進(jìn)行頭壓縮。一種基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)姆椒?,包括發(fā)送設(shè)備的頭壓縮端獲取頭壓縮數(shù)據(jù)包在傳輸過程中的反饋信息;所述頭壓縮端根據(jù)所述反饋信息確定所述頭壓縮端的狀態(tài),根據(jù)所述頭壓縮端的 狀態(tài)對數(shù)據(jù)包進(jìn)行頭壓縮并發(fā)送給接收設(shè)備的解壓縮端。
一種基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)难b置,包括反饋信息獲取模塊,用于獲取頭壓縮數(shù)據(jù)包在傳輸過程中的反饋信息;頭壓縮狀態(tài)處理模塊,用于根據(jù)所述反饋信息確定所述頭壓縮端的狀態(tài),根據(jù)所 述頭壓縮端的狀態(tài)對數(shù)據(jù)包進(jìn)行頭壓縮并發(fā)送給接收設(shè)備的解壓縮端。由上述本發(fā)明的實(shí)施例提供的技術(shù)方案可以看出,本發(fā)明實(shí)施例通過將頭壓縮機(jī) 制和重傳機(jī)制進(jìn)行結(jié)合,使頭壓縮端獲取重傳機(jī)制的反饋信息,可以使頭壓縮端利用該反 饋信息確定所述頭壓縮端的狀態(tài),在必要時進(jìn)行相應(yīng)的狀態(tài)轉(zhuǎn)移,根據(jù)所述頭壓縮端的狀 態(tài)對數(shù)據(jù)包進(jìn)行頭壓縮,提高數(shù)據(jù)包的傳輸效率。
為了更清楚地說明本發(fā)明實(shí)施例的技術(shù)方案,下面將對實(shí)施例描述中所需要使用 的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本 領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他 的附圖。圖1R0HC頭壓縮機(jī)制中的壓縮機(jī)的狀態(tài)轉(zhuǎn)移方式示意圖;圖2R0HC頭壓縮機(jī)制中的解壓縮機(jī)的狀態(tài)轉(zhuǎn)移方式示意圖;圖3本發(fā)明實(shí)施例一提供的一種基于HARQ的對數(shù)據(jù)包進(jìn)行ROHC壓縮方法的處理 流程圖;圖4為本發(fā)明實(shí)施例一提供的在IEEE 16m系統(tǒng)中的數(shù)據(jù)包從高層傳輸?shù)娇湛诘?傳輸過程示意圖;圖5為本發(fā)明實(shí)施例二提供的一種基于自動重傳技術(shù)的對數(shù)據(jù)包進(jìn)行頭壓縮的 裝置的具體實(shí)現(xiàn)結(jié)構(gòu)圖。
具體實(shí)施例方式在本發(fā)明實(shí)施例中,發(fā)送設(shè)備的頭壓縮端獲取頭壓縮數(shù)據(jù)包在傳輸過程中的反饋 信息,所述頭壓縮端根據(jù)所述反饋信息確定所述頭壓縮端的狀態(tài),根據(jù)所述頭壓縮端的狀 態(tài)對數(shù)據(jù)包進(jìn)行頭壓縮并發(fā)送給接收設(shè)備的解壓縮端。為便于對本發(fā)明實(shí)施例的理解,下面將結(jié)合附圖以幾個具體實(shí)施例為例做進(jìn)一步 的解釋說明,且各個實(shí)施例并不構(gòu)成對本發(fā)明實(shí)施例的限定。實(shí)施例一該實(shí)施例利用HARQ機(jī)制中的反饋信息,HARQ發(fā)送端獲取數(shù)據(jù)包在HARQ接收端上 的傳輸狀態(tài)信息,HARQ發(fā)送端再將該傳輸狀態(tài)信息反饋到ROHC頭壓縮端,ROHC頭壓縮端根 據(jù)這些傳輸狀態(tài)信息,可以預(yù)測出ROHC解頭壓縮器的解頭壓縮狀態(tài),從而確定所述ROHC頭 壓縮端的狀態(tài),在必要時相應(yīng)地改變ROHC頭壓縮端的狀態(tài)機(jī)。該實(shí)施例提供的一種基于HARQ的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)姆椒ǖ奶幚砹鞒倘?圖3所示,包括如下處理步驟步驟31,在ROHC頭壓縮端對每個數(shù)據(jù)包都保存和管理一個傳輸狀態(tài)信息表。在該實(shí)施例中,為了能夠使ROHC頭壓縮端得知數(shù)據(jù)包在網(wǎng)絡(luò)中實(shí)際的傳輸狀況, ROHC頭壓縮端對每個進(jìn)行頭壓縮的數(shù)據(jù)包都需要保存一個傳輸狀態(tài)信息表,該傳輸狀態(tài)信息表中保存的傳輸狀態(tài)信息包括頭壓縮序列號,數(shù)據(jù)包頭信息,數(shù)據(jù)包的傳輸成功或失敗 信息,數(shù)據(jù)包封裝信息和HARQ進(jìn)程信息等信息中的至少一項(xiàng)。上述數(shù)據(jù)包頭信息中可以包 括R0HC的頭壓縮Context信息,其中包括靜態(tài)Context信息和/或動態(tài)的Context信息。下面以IEEE 16m系統(tǒng)來說明該實(shí)施例。在IEEE 16m系統(tǒng)中,數(shù)據(jù)包從高層傳輸?shù)娇湛诘膫鬏斶^程如圖4所示, CS (Convergence Sublayer,匯聚子層)子層從高層網(wǎng)絡(luò)接收數(shù)據(jù)包,根據(jù)數(shù)據(jù)包的特性 將數(shù)據(jù)包分配到不同的ROHC Context上,對數(shù)據(jù)包進(jìn)行頭壓縮。如果該數(shù)據(jù)包中包含有 RTP (Transport Protocol HeaderCompression,實(shí)時傳輸協(xié)議頭壓縮)包頭,則該RTP包頭 中會包含有SN信息,將該SN信息作為該數(shù)據(jù)包頭壓縮的序列號;如果該數(shù)據(jù)包中沒有包含 RTP包頭,系統(tǒng)會從0開始逐一遞增為該數(shù)據(jù)包產(chǎn)生虛擬的SN號作為該數(shù)據(jù)包頭壓縮的序 列號。上述數(shù)據(jù)包被頭壓縮后,被映射到不同的MAC(Medium AccessControl,媒質(zhì)接入 控制層)連接上,根據(jù)實(shí)際的系統(tǒng)資源狀況,將該數(shù)據(jù)包打包分片為不同MAC數(shù)據(jù)包。如果 是分片的情況,一個頭壓縮后的數(shù)據(jù)包可以被分成多個不同的MAC數(shù)據(jù)包傳輸。每個MAC 數(shù)據(jù)包中包含頭壓縮數(shù)據(jù)包的一部分信息,比如有的數(shù)據(jù)包只包含數(shù)據(jù)包頭信息,有的只 包含數(shù)據(jù)包載荷信息。MAC數(shù)據(jù)包中沒有序列號信息,但是系統(tǒng)可以在每個MAC連接上,生 成一個虛擬的MAC序列號作為MAC數(shù)據(jù)包的標(biāo)識。如果MAC層支持ARQ,系統(tǒng)可以使用MAC 數(shù)據(jù)包中第一個ARQ block (塊)的SN作為MAC包的標(biāo)識。ARQ block也是一個虛擬數(shù)據(jù) 塊,它對MAC連接上所有MAC數(shù)據(jù)包根據(jù)一個固定大小分塊、排序,產(chǎn)生一個ARQ序列號。 在MAC層封裝為大小合適的MAC數(shù)據(jù)包后,將MAC數(shù)據(jù)包映射到不同的HARQ進(jìn)程上傳輸。 當(dāng)前幀上,相同HARQ進(jìn)程上傳輸?shù)腗AC數(shù)據(jù)包組成一個HARQ包。由Ibit的AISN標(biāo)識該 HARQ包是否為重傳數(shù)據(jù)包。在上述IEEE 16m系統(tǒng)中,上述數(shù)據(jù)包封裝信息包括MAC的CID信息,ARQ block 信息,虛擬MAC SN信息,數(shù)據(jù)包是否被打包分片等信息,上述HARQ進(jìn)程信息包括HARQ進(jìn) 程信息,HARQ數(shù)據(jù)包重傳標(biāo)識等信息。步驟32、HARQ發(fā)送端將數(shù)據(jù)包的傳輸情況作為反饋信息上報給ROHC頭壓縮端。 ROHC頭壓縮端根據(jù)存儲的數(shù)據(jù)包的傳輸狀態(tài)信息表和反饋信息,確定ROHC頭壓縮端的狀 態(tài),判斷是否需要進(jìn)行狀態(tài)轉(zhuǎn)移或是進(jìn)行其他操作。在該實(shí)施例中,下層對數(shù)據(jù)包的任何處理都要上報給ROHC頭壓縮端,比如,數(shù)據(jù) 封裝實(shí)體根據(jù)網(wǎng)絡(luò)資源狀況對頭壓縮后的數(shù)據(jù)包進(jìn)行封裝后,需要將數(shù)據(jù)包的封裝信息上 報給ROHC頭壓縮端。上述經(jīng)過封裝后的數(shù)據(jù)包通過HARQ進(jìn)程傳輸?shù)紿ARQ接收端后,HARQ接收端需要 向HARQ發(fā)送端反饋數(shù)據(jù)包的傳輸情況,HARQ發(fā)送端將接收到的數(shù)據(jù)包的傳輸情況作為反 饋信息上報給ROHC頭壓縮端。ROHC頭壓縮端根據(jù)自身存儲的數(shù)據(jù)包的傳輸狀態(tài)信息表找 出對應(yīng)的數(shù)據(jù)包。再根據(jù)數(shù)據(jù)包的傳輸狀態(tài)信息表和接收到的數(shù)據(jù)包的傳輸情況,判斷是 否需要進(jìn)行狀態(tài)轉(zhuǎn)移或是進(jìn)行其他操作,比如,更新緩存中的MAC數(shù)據(jù)包里的頭壓縮信息。 若是數(shù)據(jù)包被正確接收,根據(jù)ROHC現(xiàn)有技術(shù)更新壓縮狀態(tài),將IR狀態(tài)遷移為FO或SO狀態(tài) 或是將FO狀態(tài)遷移為SO狀態(tài)。若是數(shù)據(jù)包傳輸錯誤,具體狀態(tài)遷移方式見下面介紹。下面分兩種情況來討論上述HARQ接收端向HARQ發(fā)送端反饋數(shù)據(jù)包的傳輸情況。
情況1 一個context ID的相關(guān)ROHC數(shù)據(jù)包都對應(yīng)到一個MAC連接上傳輸,對應(yīng) 到一個物理層HARQ進(jìn)程上傳輸。這種情況下,如果HARQ包被正確接收,則HARQ接收端向HARQ發(fā)送端反饋 ACK (ACKnowledge,應(yīng)答);若是HARQ包被錯誤接收,則HARQ接收端向HARQ發(fā)送端反饋 NACK (Unacknowledged,接收出錯應(yīng)答);若是數(shù)據(jù)包在傳輸過程中丟失,HARQ接收端沒有 收到數(shù)據(jù)包不會發(fā)送任何反饋信息或是反饋數(shù)據(jù)包在傳輸中丟失,則HARQ發(fā)送端沒有收 到任何應(yīng)答信息。HARQ接收端若是收到和前一個包的AISN相同的HARQ包,就知道這個 HARQ包為重傳包,針對一個重傳包,HARQ接收端也要向HARQ發(fā)送端反饋上述ACK和NACK 或無應(yīng)答信息。由于一個HARQ數(shù)據(jù)包中可能包含多個不同的頭壓縮數(shù)據(jù)包,所以HARQ接 收端反饋的ACK和NACK或無應(yīng)答信息,指示的是該HARQ數(shù)據(jù)包的是否正確接收,ROHC頭 壓縮端根據(jù)述ACK和NACK或無應(yīng)答信息和傳輸狀態(tài)信息表中的HARQ數(shù)據(jù)包所封裝的頭壓 縮數(shù)據(jù)包信息,獲取傳輸正確和/或失敗的頭壓縮數(shù)據(jù)包,再根據(jù)傳輸正確和/或失敗的頭 壓縮數(shù)據(jù)包獲取HARQ接收端正確接收到的頭壓縮數(shù)據(jù)包的次序和解頭壓縮端解壓縮失敗 的數(shù)據(jù)包的數(shù)量。所述頭壓縮端根據(jù)所述傳輸失敗的頭壓縮數(shù)據(jù)包和/或解壓縮端正確接收到的 頭壓縮數(shù)據(jù)包的次序,以及保存的頭壓縮數(shù)據(jù)包的傳輸狀態(tài)信息,判斷解壓縮端是否能夠 解壓縮后續(xù)頭壓縮數(shù)據(jù)包,如果是,則所述頭壓縮端保持現(xiàn)有壓縮狀態(tài)不變或者從非完全 壓縮狀態(tài)遷移為完全壓縮狀態(tài);否則,所述頭壓縮端將狀態(tài)從完全壓縮狀態(tài)遷移為非完全 壓縮狀態(tài)。在ROHC機(jī)制中,所述的非完全壓縮狀態(tài)包括初始狀態(tài)或第一等級狀態(tài),所述的 完全壓縮狀態(tài)包括第二等級狀態(tài)。在實(shí)際應(yīng)用中,HARQ發(fā)送端不一定需要把ACK和NAK或無應(yīng)答信息傳到ROHC壓 縮端,可以是由HARQ發(fā)送端根據(jù)上述ACK和NACK或無應(yīng)答信息確定傳輸正確和/或失敗 的數(shù)據(jù)包,再根據(jù)傳輸正確和/或失敗的數(shù)據(jù)包獲取HARQ接收端正確接收到的數(shù)據(jù)包的次 序和解頭壓縮端解壓縮失敗的數(shù)據(jù)包的數(shù)量。HARQ發(fā)送端再將獲取的傳輸正確和/或失敗 的數(shù)據(jù)包和/或HARQ接收端正確接收到的數(shù)據(jù)包的次序,以及和解頭壓縮端解壓縮失敗的 數(shù)據(jù)包的數(shù)量上報到ROHC壓縮端。由于HARQ是停等協(xié)議,一個數(shù)據(jù)包正確傳輸或是被丟棄之前是不會傳輸下一個 數(shù)據(jù)包的,所以除非下面的數(shù)據(jù)包傳輸?shù)阶畲蟠螖?shù)被丟棄,是不可能出現(xiàn)亂序的情況。當(dāng) HARQ數(shù)據(jù)包傳輸超過最大次數(shù)被丟棄時,HARQ發(fā)送端向ROHC頭壓縮端反饋數(shù)據(jù)包傳輸失 敗。ROHC頭壓縮端獲取數(shù)據(jù)包傳輸失敗后,根據(jù)所述傳輸失敗的數(shù)據(jù)包,查詢該數(shù)據(jù) 包以及該數(shù)據(jù)包的一定數(shù)量的后續(xù)數(shù)據(jù)包對應(yīng)的傳輸狀態(tài)信息表,當(dāng)當(dāng)所述解頭壓縮端解 壓縮失敗的數(shù)據(jù)包的數(shù)量與解頭壓縮端接收到的頭壓縮數(shù)據(jù)包的總數(shù)量的比例得到了預(yù) 先設(shè)置的閾值,即達(dá)到了 k of η的狀態(tài)轉(zhuǎn)移的要求,則判斷上述后續(xù)數(shù)據(jù)包中是否包含有 IR或IR-Dyn數(shù)據(jù)包,如果是,則判斷ROHC解壓縮端可以恢復(fù)上述后續(xù)數(shù)據(jù)包,ROHC頭壓縮 端不做任何處理;否則,則判斷ROHC解壓縮端不能恢復(fù)上述后續(xù)數(shù)據(jù)包,ROHC頭壓縮端的 狀態(tài)轉(zhuǎn)移為頂或FO狀態(tài),發(fā)送頂或IR-Dyn數(shù)據(jù)包來更新ROHC解壓縮端的頭壓縮信息。若是ROHC頭壓縮端判決出由于丟包,導(dǎo)致后續(xù)還處于MAC緩存尚未發(fā)送的MAC數(shù) 據(jù)包即使發(fā)送到解壓縮端,解壓縮端不能夠?qū)υ揗AC數(shù)據(jù)包進(jìn)行正確解壓縮,則有兩種處理方式一是ROHC頭壓縮端通知MAC以及HARQ發(fā)送端發(fā)送端直接丟棄上述處于緩存尚未 發(fā)送的數(shù)據(jù)包,減少空口資源;二是ROHC頭壓縮端通過層間傳輸?shù)姆绞酵ㄖ狹AC子層,對于 位于MAC緩存沒有發(fā)送的已經(jīng)進(jìn)行MAC封裝的頭壓縮數(shù)據(jù)包,通過MAC子頭的形式,在其中 添加必要的可以協(xié)助解頭壓縮的信息和規(guī)則(信息包括SN和/或TS和/或IP-ID等頭 壓縮context信息,上述規(guī)則包括相關(guān)信息如何增加到對應(yīng)的MAC頭),這些信息規(guī)則和 通過協(xié)議層間原語由ROHC發(fā)到MAC,MAC層收到該原語后,按照接收到的信息和規(guī)則對處于 MAC緩存尚未發(fā)送的MAC數(shù)據(jù)包進(jìn)行處理。 如果一個ROHC之后的頭壓縮數(shù)據(jù)包被拆分成多個不同的MAC/RLC數(shù)據(jù)包數(shù)據(jù)包, 其ROHC數(shù)據(jù)包的包頭和payloacK負(fù)荷)可能被分在不同的MAC/RLC數(shù)據(jù)包中傳輸,如果 ROHC頭壓縮端不能獲知包頭和pay load分別在哪個MAC/RLC數(shù)據(jù)包中,則如果這幾個MAC/ RLC數(shù)據(jù)包中的一個MAC/RLC數(shù)據(jù)包傳輸失敗,其他的MAC/RLC數(shù)據(jù)包可以直接丟棄。如 果ROHC頭壓縮端可以獲知包頭和payload分別在哪個MAC/RLC數(shù)據(jù)包中,則如果包頭所 在的MAC/RLC數(shù)據(jù)包傳輸失敗,ROHC頭壓縮端要求下層丟棄這幾個MAC/RLC數(shù)據(jù)包中的 其他MAC/RLC數(shù)據(jù)包;如果只是payload所在的MAC數(shù)據(jù)包傳輸失敗,則包頭所在的MAC/ RLC數(shù)據(jù)包繼續(xù)傳輸,并通知接收端將此包頭信息傳輸給ROHC解壓縮端,解頭壓縮端收到 該包頭所在的MAC/RLC數(shù)據(jù)包后,利用其中的數(shù)據(jù)包頭信息進(jìn)行解頭壓縮和更新解頭壓縮 context信息,之后丟棄該包頭所在的MAC/RLC數(shù)據(jù)包。對于一條MAC連接對應(yīng)到多個頭壓縮Context的情況,處理方式與上面描述相似, ROHC頭壓縮端根據(jù)收到的數(shù)據(jù)包丟失信息和自身保存的數(shù)據(jù)包的傳輸狀態(tài)信息表,針對每 個受影響的Context,判斷其是否需要狀態(tài)轉(zhuǎn)移或是更新緩存中的MAC數(shù)據(jù)包里的頭壓縮
fn息ο情況2 如果一個context ID的相關(guān)ROHC數(shù)據(jù)包承載在不同的HARQ進(jìn)程,那么 在不同的HARQ進(jìn)程上的傳輸?shù)臄?shù)據(jù)包會有不同的數(shù)據(jù)出錯概率。例如,HARQ進(jìn)程1上承 載了序列號1-3的數(shù)據(jù)包,HARQ進(jìn)程2上承載了序列號4-6的數(shù)據(jù)包,HARQ進(jìn)程1和HARQ 進(jìn)程2同時開始傳輸;但是,在傳輸過程中,序列號4-6的數(shù)據(jù)包重傳一次后,被接收端正確 接收;而序列號1-3的數(shù)據(jù)包重傳三次后,才被接收端正確接收,那么序列號4-6的數(shù)據(jù)包 將先于序列號1-3的數(shù)據(jù)包被傳送到ROHC解壓器,這種數(shù)據(jù)包到達(dá)的亂序,如果超出了解 壓窗口的大小,就可能造成數(shù)據(jù)包解壓的出錯。在這種情況下,HARQ發(fā)送端接收到頭壓縮后的ROHC數(shù)據(jù)包后,并需要對ROHC數(shù) 據(jù)包承載在不同的HARQ進(jìn)程上發(fā)送時,則在每個自動重傳進(jìn)程上的首個數(shù)據(jù)包為包含頭 壓縮上下文信息的初始頭壓縮數(shù)據(jù)包。HARQ發(fā)送端盡量根據(jù)IR或IR-DYN包的位置進(jìn)行 HARQ進(jìn)程劃分,將IR或IR-DYN包或者特定地生成IR或IR-DYN包,放在每個HARQ進(jìn)程上 的HARQ包的首位置,這樣,即使一個HARQ進(jìn)程上的HARQ包發(fā)生了丟失,不會影響到其他 HARQ進(jìn)程上的HARQ包的解壓縮。在該情況下,HARQ接收端也要向HARQ發(fā)送端反饋上述ACK和NACK信息,HARQ發(fā)送 端根據(jù)接收到的ACK/NACK,判斷并維護(hù)接收端接收的數(shù)據(jù)包的SDU(SerVice Data Unit,業(yè) 務(wù)數(shù)據(jù)單元)狀態(tài)和順序,將該數(shù)據(jù)包的SDU接收狀態(tài)和順序發(fā)送到ROHC頭壓縮端。ROHC 頭壓縮端根據(jù)上述數(shù)據(jù)包的SDU接收狀態(tài)和順序和數(shù)據(jù)包的正常發(fā)送次序,得出數(shù)據(jù)包的 傳輸亂序的情況。然后,根據(jù)所述數(shù)據(jù)包的傳輸亂序的情況,以及保存的數(shù)據(jù)包的傳輸狀態(tài)信息,判斷解壓縮端是否能夠解壓縮所述亂序數(shù)據(jù)包,如果不能,則ROHC頭壓縮端的狀態(tài) 轉(zhuǎn)移為IR或FO狀態(tài),發(fā)送IR或IR-Dyn數(shù)據(jù)包來更新ROHC解壓縮端的頭壓縮信息;否 則, ROHC頭壓縮端不進(jìn)行狀態(tài)轉(zhuǎn)移。比如數(shù)據(jù)包RTP SN號為1,2,3在進(jìn)程一中傳輸,RTP SN號為4,5,6在進(jìn)程二中 傳輸,RTP SN號為7,8,9在進(jìn)程三傳輸。由于進(jìn)程二發(fā)生重傳,進(jìn)程三中的7,8,9先到達(dá) 解壓縮端,造成亂序。如果解壓縮窗口小于3,則當(dāng)前解壓縮器中保持的解頭壓縮上下文不 能解RTP SN序列號超過3的數(shù)據(jù)包。這個時候壓縮端根據(jù)重傳技術(shù)中的反饋得知數(shù)據(jù)包 到達(dá)解壓縮端的次序,知道解頭壓縮端不能正確解壓序列號為7,8,9的數(shù)據(jù)包,并且錯誤 的數(shù)據(jù)包達(dá)到了 k of η的狀態(tài)轉(zhuǎn)移的要求,而其后正在傳輸?shù)囊呀?jīng)進(jìn)行頭壓縮的數(shù)據(jù)包沒 有IR/IR-Dyn數(shù)據(jù)包,則頭壓縮端進(jìn)行狀態(tài)轉(zhuǎn)移,從SO狀態(tài)轉(zhuǎn)移到FO或IR狀態(tài)。步驟33、HARQ接收端根據(jù)收到的調(diào)度指示和ACID的序列信息,對數(shù)據(jù)包進(jìn)行正確 排序。在HARQ發(fā)送端進(jìn)行數(shù)據(jù)包調(diào)度時,可以按照數(shù)據(jù)包的順序?qū)?shù)據(jù)包順序地置于 ACID遞增的HARQ進(jìn)程上傳輸。HARQ接收端根據(jù)調(diào)度指示和ACID的序列信息,就可以知道來自不同HARQ進(jìn)程的 數(shù)據(jù)包的次序,從而對數(shù)據(jù)包進(jìn)行正確排序。HARQ接收端要盡量保證屬于一個頭壓縮Context的數(shù)據(jù)包順序發(fā)送給ROHC解頭 壓縮端,減少因?yàn)閬y序造成的解壓縮失敗。若是ROHC頭壓縮端根據(jù)HARQ的反饋信息判決出由于丟包,導(dǎo)致后續(xù)還處于緩存 尚未發(fā)送的數(shù)據(jù)包即使發(fā)送到解壓縮端,解壓縮端不能夠?qū)υ揗AC數(shù)據(jù)包進(jìn)行正確解壓 縮,則有兩種處理方式一是通知MAC和HARQ發(fā)送端直接丟棄上述處于緩存尚未發(fā)送的數(shù) 據(jù)包,減少空口資源;二是通過層間傳輸?shù)姆绞酵ㄖ狹AC子層,對于位于MAC緩存沒有發(fā)送 的已經(jīng)進(jìn)行MAC封裝的頭壓縮數(shù)據(jù)包,通過MAC子頭的形式,在其中添加必要的可以協(xié)助解 頭壓縮的信息和規(guī)則,按照接收到的信息和規(guī)則對處于MAC緩存尚未發(fā)送的MAC數(shù)據(jù)包進(jìn) 行處理。在采用上述實(shí)施例一提供的基于HARQ的對數(shù)據(jù)包進(jìn)行ROHC壓縮方法的處理流程 后,可選的可以將頭壓縮后的數(shù)據(jù)包中的CRC(cyClic redundancycheck code,循環(huán)冗余校 驗(yàn)碼)省略,以減少空口資源消耗?;蚴菍⒃械腃RC校驗(yàn)位所占的比特位改為增加一些 協(xié)助解頭壓縮的信息,如增加SN,IP-ID, TS等頭壓縮信息,有助于解頭壓縮的成功率。這種省略CRC校驗(yàn)的方式是可選實(shí)現(xiàn)的,若是使用這種方式進(jìn)行頭壓縮,需要在 頭壓縮Context初始建立時,進(jìn)行相關(guān)能力協(xié)商,確定使用省略CRC校驗(yàn)的方式進(jìn)行數(shù)據(jù)包 的頭壓縮。上述實(shí)施例一提供的基于HARQ的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)姆椒ǖ奶幚砹鞒踢€ 可以應(yīng)用于LTE系統(tǒng)。該傳輸狀態(tài)信息表中保存的傳輸狀態(tài)信息包括頭壓縮序列號,數(shù)據(jù)包頭信息,數(shù) 據(jù)包的傳輸成功或失敗信息和HARQ進(jìn)程信息等信息中的至少一項(xiàng),上述數(shù)據(jù)包頭信息中 可以包括R0HC的Context信息,其中包括靜態(tài)Context信息和動態(tài)的Context信息。由于LTE系統(tǒng)與16m系統(tǒng)有所不同,其傳輸信息也有所變化,主要不同之處有,上 述HARQ進(jìn)程信息中包括有RLC(Radio Link Control,無線鏈路控制)序列號、邏輯進(jìn)程id和HARQ進(jìn)程號等。 在LTE接收端,其RLC的UM(Unacknowledged Mode,無應(yīng)答模式)和 AM (Acknowledged Mode,應(yīng)答模式)模式有對收到的數(shù)據(jù)包根據(jù)RLC數(shù)據(jù)包頭中的序列號 對數(shù)據(jù)包排序。這種情況下,系統(tǒng)有自動排序的功能,不需要利用調(diào)度信息和重傳信息排 序。對于RLC的TM模式,沒有排序的功能,需要和IEEE 16m系統(tǒng)一樣通過調(diào)度信息和重傳 信息對數(shù)據(jù)包進(jìn)行排序。在實(shí)際應(yīng)用中,上述實(shí)施例一中的HARQ還可以用ARQ來代替,具體處理過程為ARQ 接收端將數(shù)據(jù)包的傳輸情況反饋給ROHC頭壓縮端。ROHC頭壓縮端根據(jù)存儲的數(shù)據(jù)包的傳 輸狀態(tài)信息表和數(shù)據(jù)包的傳輸情況,判斷是否需要進(jìn)行狀態(tài)轉(zhuǎn)移或是進(jìn)行其他操作。所述 ROHC頭壓縮端存儲的數(shù)據(jù)包傳輸狀態(tài)信息與實(shí)施例一中的與HARQ相關(guān)的操作相同。所述 數(shù)據(jù)包的傳輸情況,即ARQ發(fā)送端接收到ARQ接收端發(fā)送來的數(shù)據(jù)是否正確接收的反饋信 息,其具體包含數(shù)據(jù)包正確接收的應(yīng)答信息,數(shù)據(jù)包錯誤接收的應(yīng)答信息與數(shù)據(jù)包丟失造 成的無應(yīng)答信息。所述狀態(tài)轉(zhuǎn)移或是進(jìn)行其他操作的具體判決過程與HARQ相關(guān)操作相同。本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,是可以 通過計算機(jī)程序來指令相關(guān)的硬件來完成,所述的程序可存儲于一計算機(jī)可讀取存儲介質(zhì) 中,該程序在執(zhí)行時,可包括如上述各方法的實(shí)施例的流程。其中,所述的存儲介質(zhì)可為磁 碟、光盤、只讀存儲記憶體(Read-Only Memory, ROM)或隨機(jī)存儲記憶體(Random Access Memory, RAM)等。實(shí)施例二本發(fā)明實(shí)施例還提供了一種基于重傳技術(shù)的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)难b置,該 裝置設(shè)置在發(fā)送設(shè)備的頭壓縮端,其具體實(shí)現(xiàn)結(jié)構(gòu)如圖5所示,具體可以包括反饋信息獲取模塊51,用于獲取頭壓縮數(shù)據(jù)包在傳輸過程中的反饋信息;頭壓縮狀態(tài)處理模塊52,用于根據(jù)所述反饋信息確定所述頭壓縮端的狀態(tài),根據(jù) 所述頭壓縮端的狀態(tài)對數(shù)據(jù)包進(jìn)行頭壓縮并發(fā)送給接收設(shè)備的解壓縮端。所述的裝置還可以包括傳輸狀態(tài)信息管理模塊53,用于保存和管理數(shù)據(jù)包的傳輸狀態(tài)信息,所述的數(shù)據(jù) 包的傳輸狀態(tài)信息包括頭壓縮序列號,數(shù)據(jù)包頭信息,傳輸成功或失敗信息、封裝信息和 重傳進(jìn)程信息中的至少一項(xiàng)。所述的反饋信息獲取模塊51包括信息接收模塊511,用于接收基于重傳機(jī)制的發(fā)送設(shè)備的發(fā)送端上報的所述反饋 信息,所述反饋信息為基于重傳機(jī)制的接收設(shè)備的接收端根據(jù)數(shù)據(jù)包的傳輸情況,反饋給 所述發(fā)送設(shè)備的發(fā)送端的;信息處理模塊512,用于根據(jù)所述反饋信息獲取傳輸正確和/或失敗的頭壓縮數(shù) 據(jù)包,并根據(jù)所述傳輸正確和/或失敗的頭壓縮數(shù)據(jù)包確定解壓縮端正確接收到的頭壓縮 數(shù)據(jù)包的次序。在實(shí)際應(yīng)用中,可以根據(jù)所述反饋信息中包括的數(shù)據(jù)包的應(yīng)答、接收出錯應(yīng) 答和無應(yīng)答信息確定傳輸正確和/或失敗的頭壓縮數(shù)據(jù)包和/或解壓縮端正確接收到的頭 壓縮數(shù)據(jù)包的次序?;蛘?,由基于重傳機(jī)制的發(fā)送設(shè)備的發(fā)送端根據(jù)所述反饋信息中包括 的數(shù)據(jù)包的應(yīng)答、接收出錯應(yīng)答和無應(yīng)答信息確定傳輸正確和/或失敗的頭壓縮數(shù)據(jù)包和 /或解壓縮端正確接收到的頭壓縮數(shù)據(jù)包的次序,再上報給信息處理模塊。
所述的頭壓縮狀態(tài)處理模塊52包括 第一處理模塊521,用于根據(jù)所述信息處理模塊獲取的解壓縮端正確接收到的頭 壓縮數(shù)據(jù)包的次序,以及頭壓縮端保存的頭壓縮數(shù)據(jù)包的傳輸狀態(tài)信息,判斷解壓縮端是 否能夠解壓縮后續(xù)頭壓縮數(shù)據(jù)包,如果是,則所述頭壓縮端保持現(xiàn)有壓縮狀態(tài)不變或者將 壓縮狀態(tài)從非完全壓縮狀態(tài)遷移為完全壓縮狀態(tài);否則,所述頭壓縮端將壓縮狀態(tài)從完全 壓縮狀態(tài)遷移為非完全壓縮狀態(tài)。在ROHC中,所述的非完全壓縮狀態(tài)包括初始狀態(tài)或第一等級狀態(tài),所述的完全 壓縮狀態(tài)包括第二等級狀態(tài)。比如,所述頭壓縮端根據(jù)所述反饋信息中包括的頭壓縮數(shù)據(jù)包的應(yīng)答、接收出錯 應(yīng)答和無應(yīng)答信息,確定傳輸失敗的頭壓縮數(shù)據(jù)包以及解頭壓縮端解壓縮失敗的數(shù)據(jù)包的數(shù)量。當(dāng)所述解頭壓縮端解壓縮失敗的數(shù)據(jù)包的數(shù)量與解頭壓縮端接收到的頭壓縮數(shù) 據(jù)包的總數(shù)量的比例達(dá)到了預(yù)先設(shè)置的閾值時,判斷所述后續(xù)數(shù)據(jù)包中包含的頭壓縮上下 文信息是否足夠,如果是,則判斷解壓縮端能夠解壓縮所述后續(xù)頭壓縮數(shù)據(jù)包;否則,判斷 解壓縮端不能解壓縮所述后續(xù)頭壓縮數(shù)據(jù)包。再比如,所述頭壓縮端根據(jù)所述反饋信息中包括的頭壓縮數(shù)據(jù)包的應(yīng)答、接收出 錯應(yīng)答信息和無應(yīng)答信息,確定解壓縮端正確接收到的頭壓縮數(shù)據(jù)包的次序;當(dāng)屬于一個頭壓縮上下文連接上的多個頭壓縮數(shù)據(jù)包被承載在不同的重傳進(jìn)程 上傳輸時,所述頭壓縮端根據(jù)所述解壓縮端正確接收到的頭壓縮數(shù)據(jù)包的次序,以及頭壓 縮數(shù)據(jù)包的正常發(fā)送次序,得出頭壓縮數(shù)據(jù)包的傳輸亂序的情況;所述頭壓縮端根據(jù)所述頭壓縮數(shù)據(jù)包的傳輸亂序的情況,以及頭壓縮端保存的數(shù) 據(jù)包的傳輸狀態(tài)信息,判斷解壓縮端是否能夠解壓縮后續(xù)頭壓縮數(shù)據(jù)包。所述的頭壓縮端將壓縮狀態(tài)從完全壓縮狀態(tài)遷移為非完全壓縮狀態(tài)之后,所述頭 壓縮端還通知基于重傳機(jī)制的發(fā)送設(shè)備的發(fā)送端丟棄處于重傳緩存中的頭壓縮數(shù)據(jù)包;或 者,通知所述基于重傳機(jī)制的發(fā)送設(shè)備的發(fā)送端在所述處于重傳緩存中的頭壓縮數(shù)據(jù)包中 添加頭壓縮上下文信息后,再發(fā)送給基于重傳機(jī)制的接收設(shè)備的接收端。第二處理模塊522,用于當(dāng)一個頭壓縮數(shù)據(jù)包被拆分成多個MAC或無線鏈路控制 RLC數(shù)據(jù)包,所述頭壓縮端不能確定頭壓縮的包頭和負(fù)荷信息分別放在哪個MAC或RLC數(shù)據(jù) 包時,所述頭壓縮端根據(jù)所述反饋信息中包括的頭壓縮數(shù)據(jù)包的應(yīng)答、接收出錯應(yīng)答和無 應(yīng)答信息確定所述多個MAC或RLC數(shù)據(jù)包中的至少一個丟失后,則所述頭壓縮端通知基于 重傳機(jī)制的接收設(shè)備的接收端丟棄所述多個MAC或RLC數(shù)據(jù)包;當(dāng)一個頭壓縮數(shù)據(jù)包被拆分成多個MAC或RLC數(shù)據(jù)包,所述頭壓縮端能夠確定頭 壓縮的包頭和負(fù)荷信息分別放在哪個MAC或RLC數(shù)據(jù)包時,所述頭壓縮端根據(jù)所述反饋信 息中包括的頭壓縮數(shù)據(jù)包的應(yīng)答、接收出錯應(yīng)答和無應(yīng)答信息確定頭壓縮的包頭所在的 MAC或RLC數(shù)據(jù)包丟失后,則所述頭壓縮端通知基于重傳機(jī)制的接收設(shè)備的接收端丟棄所 述多個MAC或RLC數(shù)據(jù)包;當(dāng)一個頭壓縮數(shù)據(jù)包被拆分成多個MAC或RLC數(shù)據(jù)包,所述頭壓縮端能夠確定頭 壓縮的包頭和負(fù)荷信息分別放在哪個MAC或RLC數(shù)據(jù)包時,所述頭壓縮端根據(jù)所述反饋信 息中包括的頭壓縮數(shù)據(jù)包的應(yīng)答、接收出錯應(yīng)答和無應(yīng)答信息確定頭壓縮的負(fù)荷所在的MAC或RLC數(shù)據(jù)包丟失后,則所述基于重傳機(jī)制的接收設(shè)備的接收端繼續(xù)傳輸頭壓縮的包頭所在的MAC或RLC數(shù)據(jù)包給解壓縮端,所述解頭壓縮端收到該頭壓縮的包頭所在的MAC 或RLC數(shù)據(jù)包后,利用其中的數(shù)據(jù)包頭信息進(jìn)行解頭壓縮和更新解頭壓縮上下文信息,之 后丟棄該頭壓縮的包頭所在的MAC或RLC數(shù)據(jù)包。第三處理模塊523,用于在根據(jù)所述頭壓縮端的狀態(tài)對數(shù)據(jù)包進(jìn)行頭壓縮的過程 中,將頭壓縮后的數(shù)據(jù)包中的循環(huán)冗余校驗(yàn)碼省略;或者,在頭壓縮后的數(shù)據(jù)包中的循環(huán)冗 余校驗(yàn)碼所占的比特位中設(shè)置協(xié)助解頭壓縮的信息。綜上所述,本發(fā)明實(shí)施例通過將頭壓縮機(jī)制和自動重傳機(jī)制進(jìn)行結(jié)合,使ROHC頭 壓縮端獲取HARQ等自動重傳技術(shù)的反饋信息,以及數(shù)據(jù)包在無線傳輸中的其他有用信息, 并利用保存的數(shù)據(jù)包的傳輸狀態(tài)信息,正確估計ROHC解壓縮端的解頭壓縮信息,從而適時 地改變ROHC頭壓縮端的狀態(tài)機(jī)或者進(jìn)行其他數(shù)據(jù)處理操作,從而提高數(shù)據(jù)包的傳輸效率, 提高系統(tǒng)性能。本發(fā)明實(shí)施例由于使頭壓縮端利用了自動重傳技術(shù)的反饋信息,可以減少來自解 壓縮端向頭壓縮端發(fā)送的頭壓縮反饋信息,從而節(jié)省系統(tǒng)資源。以上所述,僅為本發(fā)明較佳的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此, 任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換, 都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求的保護(hù)范圍 為準(zhǔn)。
權(quán)利要求
1.一種基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)姆椒ǎ涮卣髟谟?,包括發(fā)送設(shè)備的頭壓縮端獲取頭壓縮數(shù)據(jù)包在傳輸過程中的反饋信息;所述頭壓縮端根據(jù)所述反饋信息確定所述頭壓縮端的狀態(tài),根據(jù)所述頭壓縮端的狀態(tài) 對數(shù)據(jù)包進(jìn)行頭壓縮并發(fā)送給接收設(shè)備的解壓縮端。
2.根據(jù)權(quán)利要求1所述的基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)姆椒?,其特征?于,所述的發(fā)送設(shè)備的頭壓縮端獲取頭壓縮數(shù)據(jù)包在重傳過程中的反饋信息,包括所述頭壓縮端接收基于重傳機(jī)制的發(fā)送設(shè)備的發(fā)送端上報的所述反饋信息,所述反饋 信息為基于重傳機(jī)制的接收設(shè)備的接收端根據(jù)數(shù)據(jù)包的傳輸情況,反饋給所述自動重傳的 發(fā)送端的。
3.根據(jù)權(quán)利要求1或2所述的基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)姆椒?,其?征在于,所述頭壓縮端根據(jù)所述反饋信息確定所述頭壓縮端的狀態(tài),包括所述頭壓縮端根據(jù)所述反饋信息獲取傳輸正確和/或失敗的頭壓縮數(shù)據(jù)包,并根據(jù)所 述傳輸正確和/或失敗的頭壓縮數(shù)據(jù)包確定解壓縮端正確接收到的頭壓縮數(shù)據(jù)包的次序;所述頭壓縮端根據(jù)所述解壓縮端正確接收到的頭壓縮數(shù)據(jù)包的次序,以及頭壓縮端保 存的頭壓縮數(shù)據(jù)包的傳輸狀態(tài)信息,判斷解壓縮端是否能夠解壓縮后續(xù)頭壓縮數(shù)據(jù)包,如 果是,則所述頭壓縮端保持現(xiàn)有壓縮狀態(tài)不變或者將壓縮狀態(tài)從非完全壓縮狀態(tài)遷移為完 全壓縮狀態(tài);否則,所述頭壓縮端將壓縮狀態(tài)從完全壓縮狀態(tài)遷移為非完全壓縮狀態(tài)。
4.根據(jù)權(quán)利要求3所述的基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)姆椒ǎ涮卣髟?于,在魯棒性頭標(biāo)壓縮ROHC中,所述的非完全壓縮狀態(tài)包括初始狀態(tài)或第一等級狀態(tài),所 述的完全壓縮狀態(tài)包括第二等級狀態(tài)。
5.根據(jù)權(quán)利要求3所述的基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)姆椒ǎ涮卣髟?于,所述的判斷解壓縮端是否能夠解壓縮后續(xù)頭壓縮數(shù)據(jù)包,包括所述頭壓縮端根據(jù)所述反饋信息中包括的頭壓縮數(shù)據(jù)包的應(yīng)答、接收出錯應(yīng)答和無應(yīng) 答信息,確定傳輸失敗的頭壓縮數(shù)據(jù)包,以及解頭壓縮端解壓縮失敗的數(shù)據(jù)包的數(shù)量;當(dāng)所述解頭壓縮端解壓縮失敗的數(shù)據(jù)包的數(shù)量與解頭壓縮端接收到的頭壓縮數(shù)據(jù)包 的總數(shù)量的比例達(dá)到了預(yù)先設(shè)置的閾值時,判斷所述后續(xù)數(shù)據(jù)包中包含的頭壓縮上下文信 息是否足夠,如果是,則判斷解壓縮端能夠解壓縮所述后續(xù)頭壓縮數(shù)據(jù)包;否則,判斷解壓 縮端不能解壓縮所述后續(xù)頭壓縮數(shù)據(jù)包。
6.根據(jù)權(quán)利要求3所述的基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)姆椒?,其特征?于,所述的判斷解壓縮端是否能夠解壓縮后續(xù)頭壓縮數(shù)據(jù)包,包括所述頭壓縮端根據(jù)所述反饋信息中包括的頭壓縮數(shù)據(jù)包的應(yīng)答、接收出錯應(yīng)答信息和 無應(yīng)答信息,確定解壓縮端正確接收到的頭壓縮數(shù)據(jù)包的次序;當(dāng)屬于一個頭壓縮上下文連接上的多個頭壓縮數(shù)據(jù)包被承載在不同的重傳進(jìn)程上傳 輸時,所述頭壓縮端根據(jù)所述解壓縮端正確接收到的頭壓縮數(shù)據(jù)包的次序,以及頭壓縮數(shù) 據(jù)包的正常發(fā)送次序,得出頭壓縮數(shù)據(jù)包的傳輸亂序的情況;所述頭壓縮端根據(jù)所述頭壓縮數(shù)據(jù)包的傳輸亂序的情況,以及頭壓縮端保存的數(shù)據(jù)包 的傳輸狀態(tài)信息,判斷解壓縮端是否能夠解壓縮后續(xù)頭壓縮數(shù)據(jù)包。
7.根據(jù)權(quán)利要求3所述的基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)姆椒?,其特征?于,所述的頭壓縮數(shù)據(jù)包的傳輸狀態(tài)信息包括頭壓縮序列號,數(shù)據(jù)包頭信息,傳輸成功或失敗信息、封裝信息和重傳進(jìn)程信息中的至少一項(xiàng)。
8.根據(jù)權(quán)利要求3所述的基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)姆椒?,其特征?于,所述的頭壓縮端將壓縮狀態(tài)從完全壓縮狀態(tài)遷移為非完全壓縮狀態(tài)之后,還包括所述頭壓縮端通知基于重傳機(jī)制的發(fā)送設(shè)備的發(fā)送端丟棄處于重傳緩存中的頭壓縮 數(shù)據(jù)包;或者,通知所述基于重傳機(jī)制的發(fā)送設(shè)備的發(fā)送端在所述處于重傳緩存中的頭壓 縮數(shù)據(jù)包中添加頭壓縮上下文信息后,再發(fā)送給基于重傳機(jī)制的接收設(shè)備的接收端。
9.根據(jù)權(quán)利要求1或2所述的基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)姆椒?,其?征在于,所述的方法還包括當(dāng)一個頭壓縮數(shù)據(jù)包被拆分成多個MAC或無線鏈路控制RLC數(shù)據(jù)包,所述頭壓縮端不 能確定頭壓縮的包頭和負(fù)荷信息分別放在哪個MAC或RLC數(shù)據(jù)包時,所述頭壓縮端根據(jù)所 述反饋信息中包括的頭壓縮數(shù)據(jù)包的應(yīng)答、接收出錯應(yīng)答和無應(yīng)答信息確定所述多個MAC 或RLC數(shù)據(jù)包中的至少一個丟失后,則所述頭壓縮端通知基于重傳機(jī)制的接收設(shè)備的接收 端丟棄所述多個MAC或RLC數(shù)據(jù)包;當(dāng)一個頭壓縮數(shù)據(jù)包被拆分成多個MAC或RLC數(shù)據(jù)包,所述頭壓縮端能夠確定頭壓縮 的包頭和負(fù)荷信息分別放在哪個MAC或RLC數(shù)據(jù)包時,所述頭壓縮端根據(jù)所述反饋信息中 包括的頭壓縮數(shù)據(jù)包的應(yīng)答、接收出錯應(yīng)答和無應(yīng)答信息確定頭壓縮的包頭所在的MAC或 RLC數(shù)據(jù)包丟失后,則所述頭壓縮端通知基于重傳機(jī)制的接收設(shè)備的接收端丟棄所述多個 MAC或RLC數(shù)據(jù)包;當(dāng)一個頭壓縮數(shù)據(jù)包被拆分成多個MAC或RLC數(shù)據(jù)包,所述頭壓縮端能夠確定頭壓縮 的包頭和負(fù)荷信息分別放在哪個MAC或RLC數(shù)據(jù)包時,所述頭壓縮端根據(jù)所述反饋信息中 包括的頭壓縮數(shù)據(jù)包的應(yīng)答、接收出錯應(yīng)答和無應(yīng)答信息確定頭壓縮的負(fù)荷所在的MAC或 RLC數(shù)據(jù)包丟失后,則所述基于重傳機(jī)制的接收設(shè)備的接收端繼續(xù)傳輸頭壓縮的包頭所在 的MAC或RLC數(shù)據(jù)包給解壓縮端,所述解頭壓縮端收到該頭壓縮的包頭所在的MAC或RLC 數(shù)據(jù)包后,利用其中的數(shù)據(jù)包頭信息進(jìn)行解頭壓縮和更新解頭壓縮上下文信息,之后丟棄 該頭壓縮的包頭所在的MAC或RLC數(shù)據(jù)包。
10.根據(jù)權(quán)利要求1或2所述的基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)姆椒?,其?征在于,所述的方法還包括當(dāng)屬于一個頭壓縮上下文連接上的多個頭壓縮數(shù)據(jù)包被承載在不同的重傳進(jìn)程上傳 輸時,如果所述多個頭壓縮數(shù)據(jù)包中有包含頭壓縮信息的初始頭壓縮數(shù)據(jù)包,則每個重傳 進(jìn)程中的首個頭壓縮數(shù)據(jù)包為包含頭壓縮信息的初始頭壓縮數(shù)據(jù)包。
11.根據(jù)權(quán)利要求1或2所述的基于自動重傳技術(shù)的對數(shù)據(jù)包進(jìn)行頭壓縮的方法,其特 征在于,所述的方法還包括當(dāng)一個頭壓縮數(shù)據(jù)包需要承載在多個重傳進(jìn)程上傳輸時,基于重傳機(jī)制的發(fā)送設(shè)備的 發(fā)送端將所述頭壓縮數(shù)據(jù)包順序地置于標(biāo)識遞增的重傳進(jìn)程上傳輸;基于重傳機(jī)制的接收設(shè)備的接收端根據(jù)接收到的數(shù)據(jù)包的調(diào)度信息和所述多個重傳 進(jìn)程的標(biāo)識的序列信息,對接收到的所述多個重傳進(jìn)程上傳輸?shù)臄?shù)據(jù)包進(jìn)行排序。
12.根據(jù)權(quán)利要求1或2所述的基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)姆椒?,其?征在于,在根據(jù)所述頭壓縮端的狀態(tài)對數(shù)據(jù)包進(jìn)行頭壓縮的過程中,將頭壓縮后的數(shù)據(jù)包 中的循環(huán)冗余校驗(yàn)碼省略;或者,在頭壓縮后的數(shù)據(jù)包中的循環(huán)冗余校驗(yàn)碼所占的比特位中設(shè)置協(xié)助解頭壓縮的信息。
13.一種基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)难b置,其特征在于,包括反饋信息獲取模塊,用于獲取頭壓縮數(shù)據(jù)包在傳輸過程中的反饋信息;頭壓縮狀態(tài)處理模塊,用于根據(jù)所述反饋信息確定所述頭壓縮端的狀態(tài),根據(jù)所述頭 壓縮端的狀態(tài)對數(shù)據(jù)包進(jìn)行頭壓縮并發(fā)送給接收設(shè)備的解壓縮端。
14.根據(jù)權(quán)利要求13所述的基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)难b置,其特征 在于,所述的裝置還包括傳輸狀態(tài)信息管理模塊,用于保存和管理數(shù)據(jù)包的傳輸狀態(tài)信息,所述的數(shù)據(jù)包的傳 輸狀態(tài)信息包括頭壓縮序列號,數(shù)據(jù)包頭信息,傳輸成功或失敗信息、封裝信息和重傳進(jìn) 程信息中的至少一項(xiàng)。
15.根據(jù)權(quán)利要求13所述的基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)难b置,其特征 在于,所述的反饋信息獲取模塊包括信息接收模塊,用于接收基于重傳機(jī)制的發(fā)送設(shè)備的發(fā)送端上報的所述反饋信息,所 述反饋信息為基于重傳機(jī)制的接收設(shè)備的接收端根據(jù)數(shù)據(jù)包的傳輸情況,反饋給所述發(fā)送 設(shè)備的發(fā)送端的;信息處理模塊,用于根據(jù)所述反饋信息獲取傳輸正確和/或失敗的頭壓縮數(shù)據(jù)包,并 根據(jù)所述傳輸正確和/或失敗的頭壓縮數(shù)據(jù)包確定解壓縮端正確接收到的頭壓縮數(shù)據(jù)包 的次序。
16.根據(jù)權(quán)利要求15所述的基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)难b置,其特征 在于,所述的頭壓縮狀態(tài)處理模塊包括第一處理模塊,用于根據(jù)所述信息處理模塊獲取的所述解壓縮端正確接收到的頭壓縮 數(shù)據(jù)包的次序,以及頭壓縮端保存的頭壓縮數(shù)據(jù)包的傳輸狀態(tài)信息,判斷解壓縮端是否能 夠解壓縮后續(xù)頭壓縮數(shù)據(jù)包,如果是,則所述頭壓縮端保持現(xiàn)有壓縮狀態(tài)不變或者將壓縮 狀態(tài)從非完全壓縮狀態(tài)遷移為完全壓縮狀態(tài);否則,所述頭壓縮端將壓縮狀態(tài)從完全壓縮 狀態(tài)遷移為非完全壓縮狀態(tài)。
17.根據(jù)權(quán)利要求13所述的基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)难b置,其特征 在于,所述的頭壓縮狀態(tài)處理模塊包括第二處理模塊,用于當(dāng)一個頭壓縮數(shù)據(jù)包被拆分成多個MAC或無線鏈路控制RLC數(shù)據(jù) 包,所述頭壓縮端不能確定頭壓縮的包頭和負(fù)荷信息分別放在哪個MAC或RLC數(shù)據(jù)包時,所 述頭壓縮端根據(jù)所述反饋信息中包括的頭壓縮數(shù)據(jù)包的應(yīng)答、接收出錯應(yīng)答和無應(yīng)答信息 確定所述多個MAC或RLC數(shù)據(jù)包中的至少一個丟失后,則所述頭壓縮端通知基于重傳機(jī)制 的接收設(shè)備的接收端丟棄所述多個MAC或RLC數(shù)據(jù)包;當(dāng)一個頭壓縮數(shù)據(jù)包被拆分成多個MAC或RLC數(shù)據(jù)包,所述頭壓縮端能夠確定頭壓縮 的包頭和負(fù)荷信息分別放在哪個MAC或RLC數(shù)據(jù)包時,所述頭壓縮端根據(jù)所述反饋信息中 包括的頭壓縮數(shù)據(jù)包的應(yīng)答、接收出錯應(yīng)答和無應(yīng)答信息確定頭壓縮的包頭所在的MAC或 RLC數(shù)據(jù)包丟失后,則所述頭壓縮端通知基于重傳機(jī)制的接收設(shè)備的接收端丟棄所述多個 MAC或RLC數(shù)據(jù)包;當(dāng)一個頭壓縮數(shù)據(jù)包被拆分成多個MAC或RLC數(shù)據(jù)包,所述頭壓縮端能夠確定頭壓縮 的包頭和負(fù)荷信息分別放在哪個MAC或RLC數(shù)據(jù)包時,所述頭壓縮端根據(jù)所述反饋信息中包括的頭壓縮數(shù)據(jù)包的應(yīng)答、接收出錯應(yīng)答和無應(yīng)答信息確定頭壓縮的負(fù)荷所在的MAC或 RLC數(shù)據(jù)包丟失后,則所述基于重傳機(jī)制的接收設(shè)備的接收端繼續(xù)傳輸頭壓縮的包頭所在 的MAC或RLC數(shù)據(jù)包給解壓縮端,所述解頭壓縮端收到該頭壓縮的包頭所在的MAC或RLC 數(shù)據(jù)包后,利用其中的數(shù)據(jù)包頭信息進(jìn)行解頭壓縮和更新解頭壓縮上下文信息,之后丟棄 該頭壓縮的包頭所在的MAC或RLC數(shù)據(jù)包。
18.根據(jù)權(quán)利要求13所述的基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)难b置,其特征 在于,所述的頭壓縮狀態(tài)處理模塊包括第三處理模塊,用于在根據(jù)所述頭壓縮端的狀態(tài)對數(shù)據(jù)包進(jìn)行頭壓縮的過程中,將頭 壓縮后的數(shù)據(jù)包中的循環(huán)冗余校驗(yàn)碼省略;或者,在頭壓縮后的數(shù)據(jù)包中的循環(huán)冗余校驗(yàn) 碼所占的比特位中設(shè)置協(xié)助解頭壓縮的信息。
全文摘要
本發(fā)明提供了一種基于重傳機(jī)制的對頭壓縮數(shù)據(jù)包進(jìn)行傳輸?shù)姆椒?,該方法主要包括發(fā)送設(shè)備的頭壓縮端獲取頭壓縮數(shù)據(jù)包在傳輸過程中的反饋信息;所述頭壓縮端根據(jù)所述反饋信息確定所述頭壓縮端的狀態(tài),根據(jù)所述頭壓縮端的狀態(tài)對數(shù)據(jù)包進(jìn)行頭壓縮并發(fā)送給接收設(shè)備的解壓縮端。本發(fā)明通過將頭壓縮機(jī)制和自動重傳機(jī)制進(jìn)行結(jié)合,使頭壓縮端獲取自動重傳技術(shù)的反饋信息,可以使頭壓縮端正確估計解壓縮端的解壓縮信息,從而適時地改變頭壓縮端的狀態(tài)機(jī),提高數(shù)據(jù)包的傳輸效率。
文檔編號H04W28/04GK102045132SQ20091023648
公開日2011年5月4日 申請日期2009年10月23日 優(yōu)先權(quán)日2009年10月23日
發(fā)明者盧磊, 時代, 梁文亮, 黃罡 申請人:華為技術(shù)有限公司