專利名稱:一種非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒ê拖到y(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及寬帶移動(dòng)通信領(lǐng)域,特別是涉及一種非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆?法和系統(tǒng)。
背景技術(shù):
第三代合作伙伴計(jì)劃(3rd Generation Partnership Project, 3GPP)是一 個(gè)國際標(biāo)準(zhǔn)化機(jī)構(gòu)。作為傳統(tǒng)移動(dòng)通信領(lǐng)域的領(lǐng)導(dǎo)者,無論是為了促進(jìn)新技術(shù) 的產(chǎn)業(yè)化,還是應(yīng)對行業(yè)內(nèi)激烈的技術(shù)競爭,保持移動(dòng)通信領(lǐng)域的領(lǐng)導(dǎo)地位, 都要求3GPP加快對具有更高傳輸速率的第三代移動(dòng)通信演進(jìn)型技術(shù)的研究和 標(biāo)準(zhǔn)化進(jìn)程。2004年11月,3GPP通過了關(guān)于3G長期演進(jìn)(Long Term Evolution, LTE)的立項(xiàng)工作。LTE系統(tǒng)改進(jìn)并增強(qiáng)了 3GPP的空中接入技術(shù), 采用OFDM和MIM0作為其無線網(wǎng)絡(luò)演進(jìn)的唯一標(biāo)準(zhǔn)。在20腿z頻譜帶寬下能夠 提供下行100Mbit/s與上行50Mbit,/s的峰值速率。改善了小區(qū)邊緣用戶的性 能,提高小區(qū)容量和降低系統(tǒng)延遲。
LTE采用接入網(wǎng)關(guān)(Access Gateway, AGW)和演進(jìn)型eNodeB直聯(lián)的方式 以實(shí)現(xiàn)用戶面的快速接入。這種接入方式下,各功能體的功能也有了變化。其 中MAC層主要用于,邏輯信道和傳輸信道的映射,復(fù)用和解復(fù)用;數(shù)據(jù)量測量; HARQ功能;用戶設(shè)備(User Equipment, UE)內(nèi)的優(yōu)先級調(diào)度和UE間的優(yōu)先 級調(diào)度;傳輸格式(TF)選擇;無線邏輯鏈路控制層協(xié)議數(shù)據(jù)單元(RLCPDU) 的按序提交。RLC層功能主要是支持確認(rèn)模式(Acknowledged Mode, AM)、 非確認(rèn)模式(Unacknowledged Mode , UM)、透明模式(Transparent lfode ,
TM)數(shù)據(jù)傳輸;ARQ;數(shù)據(jù)切分(重切分)和重組(級聯(lián));SDU的按序投遞;
數(shù)據(jù)的重復(fù)檢測;協(xié)議錯(cuò)誤檢測和恢復(fù);AGW和eNodeB間的流量控制;業(yè)務(wù) 數(shù)據(jù)單元(SDU)丟棄。分組數(shù)據(jù)的包頭壓縮層(PDCP)位于UPE,主要任務(wù) 是頭壓縮,只支持ROHC算法;用戶面數(shù)據(jù)加密;下層RLC按序投遞時(shí),PDCP 分組數(shù)據(jù)的包頭壓縮的重排緩沖(主要用于跨eNodeB切換)。非確認(rèn)模式(畫)的數(shù)據(jù)傳輸是采用對上層數(shù)據(jù)包進(jìn)行分段打包來滿足帶 寬分配,并在接收時(shí)采用接收窗口來控制對于接收到的數(shù)據(jù)包的重排序并解打 包解分段,完成對上層按序遞交數(shù)據(jù)包的功能。該模式又提供了兩種的數(shù)據(jù)包 序列號(hào)表示方式,以適應(yīng)不同的業(yè)務(wù)需求。
在寬帶移動(dòng)通信草案中,雖然大致給出了數(shù)據(jù)非確認(rèn)模式傳輸?shù)闹饕?程,但是對數(shù)據(jù)非確認(rèn)模式傳輸?shù)膶?shí)現(xiàn)方法并未詳細(xì)規(guī)定。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒ê拖到y(tǒng),其為采用 非確認(rèn)模式的傳輸模式提供了具體的實(shí)現(xiàn)方法。
為實(shí)現(xiàn)本發(fā)明的目的而提供的一種非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒?,用于通過 對上層數(shù)據(jù)包進(jìn)行打包分段,并在接收時(shí)采用解打包、解分段來完成對上層數(shù) 據(jù)包的傳輸,所述方法包括下列步驟
步驟IOO.發(fā)送側(cè)建立發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列,并根據(jù)MAC層 分配的帶寬對上層數(shù)據(jù)包進(jìn)行分段打包,將由數(shù)據(jù)包分段組成的RLC PDU發(fā)往 MAC層;
步驟200.接收側(cè)建立與發(fā)送側(cè)相應(yīng)的接收側(cè)無線承載邏輯信道信息隊(duì) 列,并對從MAC層收到的RLCPDU進(jìn)行合法性檢測,對從合法的RLC PDU解析 出的數(shù)據(jù)包分段進(jìn)行解打包解分段,丟棄無法重組的數(shù)據(jù)包分段,將完整的數(shù) 據(jù)包遞交給上層。
所述步驟100還包括下列步驟
步驟110.發(fā)送側(cè)建立描述無線承載邏輯信道信息的發(fā)送側(cè)無線承載邏輯 信道信息隊(duì)列;
步驟120.發(fā)送側(cè)計(jì)算上層數(shù)據(jù)的大小,并將上層數(shù)據(jù)的大小值保存在所 述發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列的發(fā)送隊(duì)列節(jié)點(diǎn)中,等待MAC層根據(jù)該值 分配帶寬;
步驟130.發(fā)送側(cè)根據(jù)MAC層分配的帶寬,在所述發(fā)送隊(duì)列節(jié)點(diǎn)中對保存 的上層數(shù)據(jù)進(jìn)行分段打包,并將由數(shù)據(jù)包分段組成的RLC PDU發(fā)往MAC層。
所述發(fā)送隊(duì)列節(jié)點(diǎn)中包括緩存隊(duì)列,所述緩存隊(duì)列由緩存隊(duì)列節(jié)點(diǎn)組成, 每一個(gè)緩存隊(duì)列節(jié)點(diǎn)對應(yīng)一個(gè)放入緩存隊(duì)列的上層數(shù)據(jù)包。所述步驟i30包括下列步驟
歩驟i3i.發(fā)送側(cè)根據(jù)MAC層分配的帶寬,輪詢所述緩存隊(duì)列節(jié)點(diǎn); 步驟132.判斷分配的帶寬是否能裝入所述緩存隊(duì)列節(jié)點(diǎn)所保存的上層數(shù)
據(jù)包,若能則進(jìn)入歩驟133,否則進(jìn)入步驟134;
步驟133.從分配的帶寬的大小中減去所述上層數(shù)據(jù)包的大小,生成相應(yīng)
的子頭信息,將取出的所述上層數(shù)據(jù)包作為一個(gè)數(shù)據(jù)包分段,并將所述上層數(shù)
據(jù)包對應(yīng)的緩存隊(duì)列節(jié)點(diǎn)從緩存隊(duì)列中刪除;繼續(xù)詢問緩存隊(duì)列中下一個(gè)緩存 隊(duì)列節(jié)點(diǎn),返回步驟132;
步驟134,在所述緩存隊(duì)列節(jié)點(diǎn)的數(shù)據(jù)分段位置標(biāo)識(shí)中記錄下根據(jù)所述分 配的帶寬能被取走的上層數(shù)據(jù)包分段的位置,生成相應(yīng)的子頭信息,并將取走 的上層數(shù)據(jù)包分段作為一個(gè)數(shù)據(jù)包分段;
步驟135.將取出的各個(gè)數(shù)據(jù)包分段以及生成的各個(gè)數(shù)據(jù)包分段對應(yīng)的子 頭信息組成所述RLC PDU發(fā)往MAC層。
所述步驟200還包括下列步驟
步驟210.接收側(cè)建立與發(fā)送側(cè)相應(yīng)的非確認(rèn)模式的傳輸模式的接收側(cè)無 線承載邏輯信道信息隊(duì)列,并對收到的所述RLCPDU進(jìn)行合法性檢測,若不合 法則丟棄該RLC PDU,繼續(xù)接收下一個(gè)RLC PDU,若合法則進(jìn)行RLC PDU解析, 并將解析結(jié)果添加到上層分段隊(duì)列;
步驟220.接收側(cè)將所述上層分段隊(duì)列中的上層分段隊(duì)列節(jié)點(diǎn)添加到接收 側(cè)無線承載邏輯信道信息隊(duì)列的接收隊(duì)列節(jié)點(diǎn)中;
步驟230.接收側(cè)將所述接收隊(duì)列節(jié)點(diǎn)維護(hù)的提交隊(duì)列中的上層分段隊(duì)列 節(jié)點(diǎn)包含的數(shù)據(jù)包分段進(jìn)行解打包解分段,丟棄無法重組的數(shù)據(jù)包分段,將完 整的數(shù)據(jù)包遞交給上層。
所述步驟210包括下列步驟
步驟2ii.接收側(cè)對收到的RLC PDU進(jìn)行解析,首先解析出該RLC PDU的 PDU序列號(hào),并將該P(yáng)DU序列號(hào)與所述上層分段隊(duì)列關(guān)聯(lián)起來;
歩驟212.將從RLC PDU中解析出的每一個(gè)數(shù)據(jù)包分段作為一個(gè)上層分段
隊(duì)列節(jié)點(diǎn),并為所述上層分段隊(duì)列節(jié)點(diǎn)附上分段標(biāo)識(shí)的值;
步驟213.將屬于該RLC PDU的所有數(shù)據(jù)包分段組成所述上層分段隊(duì)列。 所述步驟212包括下列步驟歩驟2121.解析出所述RLC PDU頭中字段FI的值,并且解析出所述RLC PDU 頭中E字段,查看是否被置位,若置位為1則進(jìn)入步驟2122,若置位為0則 進(jìn)入步驟2129;
步驟2122.解析出所述RLC PDU中第一個(gè)子頭信息的E字段和長度標(biāo)識(shí) 的值;
步驟2123.為該子頭信息對應(yīng)的數(shù)據(jù)包分段建立一個(gè)上層分段隊(duì)列節(jié)點(diǎn), 保存該數(shù)據(jù)包分段的長度標(biāo)識(shí),并判斷解析的是否是該RLCPDU的第一個(gè)數(shù)據(jù) 包分段,若是,則進(jìn)入步驟2124,否則迸入步驟2125;
步驟2124.根據(jù)解析出的所述RLC PDU頭中字段FI的值,則為所述上層 分段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí)附值,進(jìn)入步驟2126;
步驟2125.為所述上層分段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí),附上標(biāo)識(shí)該數(shù)據(jù)包分段 是一個(gè)完整上層數(shù)據(jù)包的值;
步驟2126.將所述RLC PDU的PDU序列號(hào)與所述上層分段隊(duì)列節(jié)點(diǎn)保存到 上層分段隊(duì)列中并判斷下一個(gè)子頭信息解析出的子頭信息的E字段是否被置 位,若E字段為1則解析出下一個(gè)子頭信息的E字段和長度標(biāo)識(shí)的值并返回步 驟2123,若E字段為0,則進(jìn)入步驟2127;
步驟2127.計(jì)算所述RLC PDU中最后一個(gè)數(shù)據(jù)包分段的長度,為所述最后 一個(gè)數(shù)據(jù)包分段建立一個(gè)上層分段隊(duì)列節(jié)點(diǎn),保存計(jì)算出的該數(shù)據(jù)包分段的長 度值;
步驟2128.依據(jù)解析出的所述RLC PDU頭中字段Fl的值,為所述上層分 段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí)附值并將所述PDU序列號(hào)與所述上層分段隊(duì)列節(jié)點(diǎn)添 加到上層分段隊(duì)列中,進(jìn)入步驟21210;
步驟2129,為所述數(shù)據(jù)包分段建立一個(gè)上層分段隊(duì)列節(jié)點(diǎn),將減去PDU 頭的長度的數(shù)據(jù)包分段的長度值,保存在所述上層分段隊(duì)列節(jié)點(diǎn)中并為所述上 層分段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí)附值;將所述PDU序列號(hào)與所述上層分段隊(duì)列節(jié)點(diǎn) 添加到上層分段隊(duì)列中;
步驟21210,按照所述上層分段隊(duì)列中每個(gè)上層分段隊(duì)列節(jié)點(diǎn)描述的長 度,從所述RLCPDU的總數(shù)據(jù)包凈荷中取出相應(yīng)的長度,保存在每個(gè)上層分段 隊(duì)列節(jié)點(diǎn)中。
步驟213中,所述上層分段隊(duì)列中的所有上層分段隊(duì)列節(jié)點(diǎn)具有同一個(gè)PDU序列號(hào)。
所述步驟220包括下列步驟
步驟22L將所述上層分段隊(duì)列的數(shù)據(jù)保存到所述接收隊(duì)列節(jié)點(diǎn)維護(hù)的接 收緩存隊(duì)列下,再將接收緩存隊(duì)列中接收緩存節(jié)點(diǎn)的起始序列號(hào)標(biāo)識(shí)和最末序 列號(hào)標(biāo)識(shí)都填上該—t層分段隊(duì)列所具有的PDU序列號(hào)的值;
歩驟222.將所述接收緩存節(jié)點(diǎn)按照其具有的PDU序列號(hào)的值,按序插入 到所述接收緩存隊(duì)列中;
歩驟223.輪詢所述接收緩存隊(duì)列,檢查在插入新的接收緩存節(jié)點(diǎn)后,是 否能合并接收緩存節(jié)點(diǎn),若不能則直接進(jìn)入步驟225;若能則進(jìn)入步驟224;
步驟224.按照合并規(guī)則,將多個(gè)接收緩存節(jié)點(diǎn)合并為單個(gè)接收緩存節(jié)點(diǎn);
歩驟225.根據(jù)收到的所述RLC PDU的PDU序列號(hào),按照更新規(guī)則更新對 應(yīng)的所述接收對列節(jié)點(diǎn)中的接收窗口變量組;
步驟226.更新所述接收窗口變量組后,判斷在接收緩存隊(duì)列中是否有需 要上傳的數(shù)據(jù),若有則進(jìn)入歩驟227;若無則進(jìn)入步驟228;
步驟227.根據(jù)更新接收窗口變量組得到需要上傳的最大PDU序列號(hào),將 所述接收緩存隊(duì)列中的數(shù)據(jù)添加到所述提交隊(duì)列中,進(jìn)行數(shù)據(jù)的提交并進(jìn)入步 驟230;
歩驟228.繼續(xù)接收下一個(gè)RLC rau,返回歩驟210。
步驟222中,所述按序插入,是指所述接收緩存節(jié)點(diǎn)插入后,該接收緩存 節(jié)點(diǎn)前向的接收緩存節(jié)點(diǎn)的最末序列號(hào)小于等于該接收緩存節(jié)點(diǎn)的序列號(hào)值, 而該接收緩存節(jié)點(diǎn)的后向接收緩存節(jié)點(diǎn)的起始序列號(hào)標(biāo)識(shí)大于等于該接收緩 存節(jié)點(diǎn)的序列號(hào)值。
步驟224中,所述合并規(guī)則,指的是插入新的接收緩存節(jié)點(diǎn)后,按照該接 收緩存節(jié)點(diǎn)與其前向接收緩存節(jié)點(diǎn)的最末序列號(hào)和/或后向接收緩存節(jié)點(diǎn)的起 始序列號(hào)是否連接,若連接則將該接收緩存節(jié)點(diǎn)和其前向接收緩存節(jié)點(diǎn)和/或 其后向接收緩存節(jié)點(diǎn)合并為一個(gè)接收緩存節(jié)點(diǎn),并同步更新新合并的接收緩存 節(jié)點(diǎn)的起始序列號(hào)和最末序列號(hào)。
所述步驟230,包括下列步驟
步驟231.接收側(cè)從所述提交隊(duì)列中的第一個(gè)提交隊(duì)列節(jié)點(diǎn)開始逐個(gè)輪
詢;歩驟232.查看所述提交隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí),若是完整上層數(shù)據(jù)包則進(jìn) 入步驟233;若是完整的上層數(shù)據(jù)包的開頭部分則進(jìn)入歩驟234;若是完整的 上層數(shù)據(jù)包的結(jié)尾部分則進(jìn)入歩驟235;若是完整的上層數(shù)據(jù)包的中間部分則 進(jìn)入歩驟236;
歩驟233.直接將該完整上層數(shù)據(jù)包遞交到上層,并從所述提交隊(duì)列中刪 除該提交隊(duì)列節(jié)點(diǎn),進(jìn)入歩驟237;
步驟234.將在所述提交隊(duì)列節(jié)點(diǎn)之前的所有提交隊(duì)列節(jié)點(diǎn)都丟去,不再 上傳,僅保存當(dāng)前提交隊(duì)列節(jié)點(diǎn),并記錄當(dāng)前提交隊(duì)列節(jié)點(diǎn)的PDU序列號(hào),進(jìn) 入步驟237;
步驟235.將該所述提交隊(duì)列節(jié)點(diǎn)的PDU序列號(hào)與記錄的PDU序列號(hào)比較, 判斷是否連續(xù),若連續(xù)則將所述提交隊(duì)列節(jié)點(diǎn)之前的所有提交隊(duì)列節(jié)點(diǎn)包括本 提交隊(duì)列節(jié)點(diǎn)在內(nèi)組成一個(gè)完整的上層數(shù)據(jù)包,并遞交到上層;若不連續(xù)則將 該提交隊(duì)列節(jié)點(diǎn)之前的所有提交隊(duì)列節(jié)點(diǎn)包括本提交隊(duì)列節(jié)點(diǎn)在內(nèi)都丟去,進(jìn) 入步驟237;
步驟236.將所述提交隊(duì)列節(jié)點(diǎn)的PDU序列號(hào)與記錄的PDU序列號(hào)比較, 判斷是否連續(xù),若連續(xù)則記錄當(dāng)前提交隊(duì)列節(jié)點(diǎn)的PDU序列號(hào);若不連續(xù)則將 該提交隊(duì)列節(jié)點(diǎn)之前的所有提交隊(duì)列節(jié)點(diǎn)包括本提交隊(duì)列節(jié)點(diǎn)在內(nèi)都丟去,進(jìn) 入步驟237;
步驟237.查找下一個(gè)提交隊(duì)列節(jié)點(diǎn),若下一個(gè)提交隊(duì)列節(jié)點(diǎn)存在則進(jìn)入 步驟232,若不存在則繼續(xù)接收下一個(gè)RLC PDU,返回步驟210。
為實(shí)現(xiàn)本發(fā)明的目的還提供一種非確認(rèn)模式數(shù)據(jù)傳輸系統(tǒng),所述系統(tǒng)包
括
發(fā)送側(cè)用于通過建立發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列,根據(jù)MAC層分 配的帶寬對保存的上層數(shù)據(jù)進(jìn)行分段打包操作,并將結(jié)果發(fā)往MAC層;
接收側(cè)用于通過建立與發(fā)送側(cè)對應(yīng)的接收側(cè)無線承載邏輯信道信息隊(duì)
列,對接收到的數(shù)據(jù)進(jìn)行解打包解分段操作,并將完整的數(shù)據(jù)遞交給上層。
所述發(fā)送側(cè),包括
發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列,用于保存發(fā)送側(cè)的所有邏輯信道的信自.
所述發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列,又包含緩存隊(duì)列,用于保存上層發(fā)送來的數(shù)據(jù)。
所述接收側(cè),包括
接收側(cè)無線承載邏輯信道信息隊(duì)列,用于接收由所述發(fā)送側(cè)發(fā)送的信息; 上層分段隊(duì)列,用于保存解析RLC PDU得到的數(shù)據(jù)包分段; 所述接收側(cè)無線承載邏輯信道信息隊(duì)列,包括 接收緩存隊(duì)列,用于保存解析后收到的所有正確的數(shù)據(jù)包分段; 提交隊(duì)列,用于保存滿足上傳條件的屬于不同PDli序列號(hào)的所有接收緩存 節(jié)點(diǎn)。
本發(fā)明的有益效果在于為采用非確認(rèn)模式的傳輸模式提供了具體的實(shí)現(xiàn) 方法。
圖1是本發(fā)明一種非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒ǖ牧鞒虉D2A是本發(fā)明中發(fā)送隊(duì)列的結(jié)構(gòu)圖2B是本發(fā)明中接收隊(duì)列的結(jié)構(gòu)圖3是本發(fā)明中發(fā)送上層數(shù)據(jù)的流程圖4A是本發(fā)明中接收數(shù)據(jù)的流程圖4B是本發(fā)明中上層分段隊(duì)列的結(jié)構(gòu)圖5是本發(fā)明中解析收到的RLC PDU的流程圖6是本發(fā)明中接收側(cè)添加接收緩存的流程圖; 圖7是提交數(shù)據(jù)的解打包解分段流程圖8是本發(fā)明一種非確認(rèn)模式數(shù)據(jù)傳輸系統(tǒng)的結(jié)構(gòu)圖。
具體實(shí)施例方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí) 施例,對本發(fā)明的一種非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒ê拖到y(tǒng)進(jìn)行進(jìn)一步詳細(xì)說 明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定 本發(fā)明。
本發(fā)明的一種非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒ê拖到y(tǒng),是通過構(gòu)建無線承載邏
輯信道信息隊(duì)列;構(gòu)造發(fā)送緩存隊(duì)列維護(hù)發(fā)送數(shù)據(jù);構(gòu)造接收緩存隊(duì)列用于接收數(shù)據(jù)以及完成窗口操作;維護(hù)數(shù)據(jù)提交隊(duì)列用于解打包解分段,重組上層數(shù) 據(jù);并通過基于....:匕述隊(duì)列的數(shù)據(jù)操作的一定歩驟完成LTE系統(tǒng)屮非確認(rèn)模式的 數(shù)據(jù)傳輸?shù)氖瞻l(fā)過程。為采用非確認(rèn)模式的傳輸模式提供了具體的實(shí)現(xiàn)方法。 圖1是本發(fā)明一種非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒ǖ牧鞒虉D,下面結(jié)合上述目 標(biāo)詳細(xì)介紹本發(fā)明-一種非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒?,如圖1所示,包括下列步 驟
歩驟i00.發(fā)送側(cè)建立發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列,并根據(jù)MAC層 分配的帶寬對上層數(shù)據(jù)包分段打包,將由數(shù)據(jù)包分段組成的RLC PDU發(fā)往MAC 層;
在LTE系統(tǒng)中,為了達(dá)到簡化網(wǎng)絡(luò)、縮短延遲的目的,接入網(wǎng)E-UTRAN 完全由演進(jìn)型NodeB (eNB)組成。演進(jìn)型NodeB(eNB)建立描述無線承載邏輯 信道信息的無線承載邏輯信道信息隊(duì)列。
圖2A是本發(fā)明中發(fā)送隊(duì)列的結(jié)構(gòu)圖,圖2B是本發(fā)明中接收隊(duì)列的結(jié)構(gòu)圖, 如圖2A、圖2B所示,步驟100具體包括如下步驟
步驟U0,發(fā)送側(cè)建立描述無線承載邏輯信道信息的無線承載邏輯信道信 息隊(duì)列;
所述信息隊(duì)列又稱為發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列,由發(fā)送隊(duì)列節(jié)點(diǎn) 構(gòu)成,每一個(gè)發(fā)送隊(duì)列節(jié)點(diǎn)對應(yīng)一條邏輯信道,包括無線承載標(biāo)識(shí)符、邏輯 信道號(hào)、傳輸模式標(biāo)識(shí)、該邏輯信道上緩存隊(duì)列中的總數(shù)據(jù)大小、對應(yīng)傳輸模 式發(fā)送參數(shù)以及一條用于發(fā)送的緩存隊(duì)列。
作為一種可實(shí)施方式,假設(shè)eNB與移動(dòng)終端建立了一條無線承載,這條無 線承載包括了兩條邏輯信道, 一條邏輯信道m(xù)用于eNB向移動(dòng)終端發(fā)送數(shù)據(jù), 一條邏輯信道n用于移動(dòng)終端向eNB發(fā)送數(shù)據(jù)。即無線承載建立后,移動(dòng)終端 和eNB任意一方都可作為發(fā)送側(cè)和接收側(cè),故以下提到的發(fā)送側(cè)和接收側(cè)不再 區(qū)分移動(dòng)終端和eNB。這里假設(shè)eNB作為發(fā)送側(cè),移動(dòng)終端作為接收側(cè),那么 在eNB端將為邏輯信道m(xù)建立一個(gè)用于發(fā)送的無線承載邏輯信道信息節(jié)點(diǎn),該 節(jié)點(diǎn)將包含邏輯信道號(hào)、傳輸模式標(biāo)識(shí)、該邏輯信道上緩存隊(duì)列中的總數(shù)據(jù)大 小、對應(yīng)傳輸模式發(fā)送參數(shù)以及一條用于發(fā)送的緩存隊(duì)列。并將其加入eNB 端的無線承載邏輯信道信息隊(duì)列中。'
步驟120,發(fā)送側(cè)計(jì)算上層數(shù)據(jù)的大小,并將其值保存在發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列的發(fā)送隊(duì)列節(jié)點(diǎn)中,等待MAC層根據(jù)該值分配帶寬;
發(fā)送側(cè)計(jì)算放入緩存隊(duì)列的上層數(shù)據(jù)的大小,并將其值保存在發(fā)送側(cè)無線
承載邏輯信道信息隊(duì)列的發(fā)送隊(duì)列節(jié)點(diǎn)的緩存總數(shù)據(jù)大小值中,等待MAC層根 據(jù)該值進(jìn)行分配帶寬(如圖2A所示)。
其中,緩存隊(duì)列包含緩存隊(duì)列節(jié)點(diǎn),每一個(gè)緩存隊(duì)列節(jié)點(diǎn)對應(yīng)放入緩存隊(duì) 列的一個(gè)上層數(shù)據(jù)包。每一個(gè)緩存隊(duì)列節(jié)點(diǎn)包括數(shù)據(jù)分段位置標(biāo)識(shí)和數(shù)據(jù)包 凈荷。
歩驟130,發(fā)送側(cè)根據(jù)MAC層分配的帶寬,在發(fā)送側(cè)無線承載邏輯信道 信息隊(duì)列的節(jié)點(diǎn)中對保存的上層數(shù)據(jù)進(jìn)行分段打包操作,將由數(shù)據(jù)包分段組成 的RLC PDU發(fā)往MAC層;
為了更好的解釋本發(fā)明,需要區(qū)分?jǐn)?shù)據(jù)包分段和上層數(shù)據(jù)包分段的概念
上層數(shù)據(jù)包分段,是指不完整的上層數(shù)據(jù)包,即根據(jù)分配的帶寬只取走一 個(gè)上層數(shù)據(jù)包的部分字節(jié)。
數(shù)據(jù)包分段,是RLCPDU的組成部分,是指根據(jù)分配的帶寬,從緩存隊(duì)列 的隊(duì)列節(jié)點(diǎn)中取出的完整上層數(shù)據(jù)包或上層數(shù)據(jù)包分段。
假設(shè)上層數(shù)據(jù)包為A,根據(jù)分配的帶寬,上層數(shù)據(jù)包A在傳輸過程中既可 能被一次性傳輸,也可能被分為A1、 A2、 A3進(jìn)行傳輸,那么當(dāng)A被一次性傳 輸時(shí),數(shù)據(jù)包分段為A;當(dāng)被分為Al、 A2、 A3進(jìn)行傳輸時(shí),數(shù)據(jù)包分段分別 為A1、 A2、 A3。
圖3是本發(fā)明中發(fā)送上層數(shù)據(jù)的流程圖,如圖2A、圖3所示,步驟130 具體包括如下步驟
步驟131,發(fā)送側(cè)根據(jù)MAC層分配的帶寬,輪詢緩存隊(duì)列的隊(duì)列節(jié)點(diǎn);
步驟132,判斷分配的帶寬是否能裝入所述緩存隊(duì)列的隊(duì)列節(jié)點(diǎn)所保存 的上層數(shù)據(jù)包,若能則進(jìn)入歩驟133,否則進(jìn)入步驟134;
歩驟133,從分配的帶寬的大小中減去所述上層數(shù)據(jù)包的大小,生成相 應(yīng)的子頭信息,將取出的上層數(shù)據(jù)包作為一個(gè)數(shù)據(jù)包分段,并將所述上層數(shù)據(jù) 包對應(yīng)的隊(duì)列節(jié)點(diǎn)從緩存隊(duì)列中刪除;繼續(xù)詢問緩存隊(duì)列中下一個(gè)隊(duì)列節(jié)點(diǎn), 返回歩驟132;
步驟134,在所述緩存隊(duì)列的隊(duì)列節(jié)點(diǎn)的數(shù)據(jù)分段位置標(biāo)識(shí)中記錄下根據(jù) 所述分配的帶寬能被取走的上層數(shù)據(jù)包分段的位置,生成相應(yīng)的子頭信息,并將取走的上層數(shù)據(jù)包分段作為 -個(gè)數(shù)據(jù)包分段;
作為一種可實(shí)施方式,假設(shè)當(dāng)前整個(gè)上層數(shù)據(jù)包大小為N字節(jié),而分配帶 寬大小為N-X字節(jié)(其中X為小于N的整數(shù)),那么數(shù)據(jù)分段位置標(biāo)識(shí)就將記 錄下N-X的位置,當(dāng)下--次給予分配帶寬大于X時(shí),那么就將從該上層數(shù)據(jù)包 分段的N-X位置處開始,往后取走X字節(jié)的數(shù)據(jù),若該上層數(shù)據(jù)包被完全取走 則該隊(duì)列節(jié)點(diǎn)將被刪除,若只取走一個(gè)上層數(shù)據(jù)包部分字節(jié)(即取走 個(gè)上層 數(shù)據(jù)包分段)時(shí),該隊(duì)列節(jié)點(diǎn)將保留到所有上層數(shù)據(jù)包被取完為止。
步驟135,將取出的各個(gè)數(shù)據(jù)包分段以及生成的各個(gè)數(shù)據(jù)包分段對應(yīng)的 子頭信息組成一個(gè)無線邏輯鏈路控制層協(xié)議數(shù)據(jù)單元(RLCPDU)發(fā)往MAC層。
所述子頭信息,由子頭的E字段和長度標(biāo)識(shí)構(gòu)成。
步驟200.接收側(cè)建立與發(fā)送側(cè)相應(yīng)的接收側(cè)無線承載邏輯信道信息隊(duì) 列,并對收到的所述RLC PDU進(jìn)行合法性檢測,將對合法的RLC PDU解析出的 數(shù)據(jù)包分段進(jìn)行解打包解分段,丟棄無法重組的數(shù)據(jù)包分段,將完整的數(shù)據(jù)包 遞交給上層;
為使發(fā)送與接收對應(yīng)起來,對應(yīng)的移動(dòng)終端則建立與之相應(yīng)的非確認(rèn)模式 的傳輸模式的無線承載邏輯信道信息隊(duì)列。
所述信息隊(duì)列又稱為接收側(cè)無線承載邏輯信道信息隊(duì)列,由接收隊(duì)列節(jié)點(diǎn) 構(gòu)成,每一個(gè)接收隊(duì)列節(jié)點(diǎn)對應(yīng)與發(fā)送隊(duì)列節(jié)點(diǎn)相同的邏輯信道,包括無線 承載標(biāo)識(shí)符、邏輯信道號(hào)、傳輸模式標(biāo)識(shí)、對應(yīng)傳輸模式的接收參數(shù)、同時(shí)該 節(jié)點(diǎn)還維護(hù)了兩條隊(duì)列, 一條接收緩存隊(duì)列和一條提交隊(duì)列。
同歩驟110中的假設(shè),在移動(dòng)終端也將為邏輯信道m(xù)建立一個(gè)用于接收的 無線承載邏輯信道信息節(jié)點(diǎn),該節(jié)點(diǎn)用于接收eNB從邏輯信道m(xù)上發(fā)來的數(shù)據(jù), 該節(jié)點(diǎn)將包含邏輯信道號(hào)、傳輸模式標(biāo)識(shí)、對應(yīng)傳輸模式的接收參數(shù)、同時(shí)該 節(jié)點(diǎn)還維護(hù)了兩條隊(duì)列, 一條接收緩存隊(duì)列和一條提交隊(duì)列。并將其加入移動(dòng) 終端端的無線承載邏輯信道信息隊(duì)列中。
步驟210,接收側(cè)建立與發(fā)送側(cè)相應(yīng)的非確認(rèn)模式的傳輸模式的接收側(cè)無 線承載邏輯信道信息隊(duì)列,并對收到的所述RLCPDU進(jìn)行合法性檢測,若不合 法則丟棄該RLC PDU,繼續(xù)接收下一個(gè)RLC PDU,若合法則進(jìn)行RLC PDU解析, 并將解析結(jié)果添加到上層分段隊(duì)列;
所述合法性檢測,是指對于收到的RLCPDU的重復(fù)性監(jiān)測,還有錯(cuò)誤的檢觀!|,保證遞交處理的RLC PDU都是不重復(fù)的并且正確的RLC PDU。
圖4A是本發(fā)明中接收數(shù)據(jù)的流程圖,圖4B是本發(fā)明中上層分段隊(duì)列的結(jié)
構(gòu)圖,如圖4A、圖4B所示,歩驟210具體包括如下步驟
歩驟211,接收側(cè)對收到的RLC PDU進(jìn)行解析,首先解析出該RLC PDLI的
PDU序列號(hào),并將該P(yáng)DU序列號(hào)與該上層分段隊(duì)列關(guān)聯(lián)起來; 每一個(gè)所述PDU序列號(hào),對應(yīng)一個(gè)上層分段隊(duì)列。
歩驟2i2,將從RLC PDU中解析出的每--個(gè)數(shù)據(jù)包分段作為一個(gè)上層分段 隊(duì)列節(jié)點(diǎn),并為其附上分段標(biāo)識(shí)的值;
一個(gè)無線邏輯鏈路控制層協(xié)議數(shù)據(jù)單元(RLCPDU)由以下兩種情況組成, 第-^種情況是由多個(gè)或一個(gè)完整上層數(shù)據(jù)包構(gòu)成,第二種情況是由單個(gè)上層數(shù) 據(jù)包分段構(gòu)成或者是多個(gè)完整上層數(shù)據(jù)包加上兩個(gè)或一個(gè)上層數(shù)據(jù)包分段構(gòu) 成。若是只由單個(gè)上層數(shù)據(jù)包分段構(gòu)成RLCPDU,則該上層分段隊(duì)列將只具有 一個(gè)上層分段隊(duì)列節(jié)點(diǎn)。
作為一種可實(shí)施方式,假設(shè)一個(gè)RLC PDU具有PDU序列號(hào)N,包含了 3個(gè) 數(shù)據(jù)包分段,如包含了一個(gè)上層數(shù)據(jù)包x的結(jié)尾部分, 一個(gè)完整上層數(shù)據(jù)包y, 以及一個(gè)上層數(shù)據(jù)包z的開頭部分。那么得出的上層分段隊(duì)列將具有三個(gè)上層 分段隊(duì)列節(jié)點(diǎn),每一個(gè)數(shù)據(jù)包分段屬于一個(gè)上層分段隊(duì)列節(jié)點(diǎn)。并且三個(gè)上層 分段隊(duì)列節(jié)點(diǎn)具有同樣的PDU序列號(hào)N。
步驟213.將屬于該RLC PDU的所有數(shù)據(jù)包分段組成上層分段隊(duì)列。
圖5是本發(fā)明中解析收到的RLC PDU的流程圖,如圖5所示,步驟212 具體包括如下步驟
步驟2121,解析出整個(gè)RLC PDU頭中字段FI (framing info)的值,并 且解析出RLC PDU頭中E字段,查看是否被置位,若為1則進(jìn)入歩驟2122, 若為0則進(jìn)入步驟2129;
RLC PDU頭中E字段被置位為1,說明RLC PDU中包含多個(gè)數(shù)據(jù)包分段; 置位為0,說明RLC PDU中只包含一個(gè)數(shù)據(jù)包分段。
步驟2122,解析出RLC PDU中第一個(gè)子頭信息的E字段和長度標(biāo)識(shí)的值;
歩驟2123,為該子頭信息對應(yīng)的數(shù)據(jù)包分段建立一個(gè)上層分段隊(duì)列節(jié)點(diǎn), 保存該數(shù)據(jù)包分段的長度標(biāo)識(shí),以表示該數(shù)據(jù)包分段的長度;并判斷解析的是 否是該RLC PDU的第一個(gè)數(shù)據(jù)包分段,是則進(jìn)入步驟2124,否則進(jìn)入歩驟2125;歩驟2124,根據(jù)解析出的所述RLC PDU頭中字段F]:的值,則為所述上層 分段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí)附值,進(jìn)入步驟2126;
如果解析出的RLC PDU頭中字段FI為01或者00時(shí),則為該上層分段隊(duì) 列節(jié)點(diǎn)的分段標(biāo)識(shí),附上表示該數(shù)據(jù)包分段是一個(gè)完整上層數(shù)據(jù)包的值;如果 解析出的字段FI為10或者11時(shí),則為該上層分段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí),附 上表示該數(shù)據(jù)包分段是一個(gè)完整的上層數(shù)據(jù)包的結(jié)尾部分的值,進(jìn)入歩驟 2126;
步驟2125,為該上層分段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí),附上標(biāo)識(shí)該數(shù)據(jù)包分段 是一個(gè)完整上層數(shù)據(jù)包的值;
歩驟2126,將該RLC PDU的PDU序列號(hào)與該上層分段隊(duì)列節(jié)點(diǎn)保存到上 層分段隊(duì)列中;判斷下一個(gè)子頭信息解析出的子頭信息的E字段是否被置位, 若E字段為1則解析出下一個(gè)子頭信息的E字段和長度標(biāo)識(shí)的值并進(jìn)入歩驟 2123,若為0 (說明無子頭信息需要被解析),則進(jìn)入步驟2127。
歩驟2127,計(jì)算所述RLC PDU中最后一個(gè)數(shù)據(jù)包分段的長度,為所述最 后一個(gè)數(shù)據(jù)包分段建立一個(gè)上層分段隊(duì)列節(jié)點(diǎn),保存計(jì)算出的該數(shù)據(jù)包分段的 長度值;
通過從R1X PDU總長度中減去PDU頭和子頭信息長度以及所有子頭信息對 應(yīng)的數(shù)據(jù)包分段的長度后,計(jì)算該RLCPDU中最后一個(gè)數(shù)據(jù)包分段的長度(最 后一個(gè)數(shù)據(jù)包分段沒有子頭信息描述)。為所述最后一個(gè)數(shù)據(jù)包分段建立一個(gè) 上層分段隊(duì)列節(jié)點(diǎn),保存計(jì)算出的該數(shù)據(jù)包分段的長度值,以表示該數(shù)據(jù)包分 段的長度;
歩驟2128,依據(jù)解析出的所述RLC PDU頭中字段FI的值,為所述上層分 段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí)附值并將所述PDU序列號(hào)與所述上層分段隊(duì)列節(jié)點(diǎn)添 加到上層分段隊(duì)列中,迸入步驟21210;
依據(jù)解析出的RLC PDU頭中字段FI的值,若為10或者00時(shí),則為該上 層分段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí),附上表示該數(shù)據(jù)包分段是一個(gè)完整上層數(shù)據(jù)包的 值;若為01或者11時(shí),則為該上層分段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí),附上表示該數(shù) 據(jù)包分段是一個(gè)完整的上層數(shù)據(jù)包的開頭部分的值。將該P(yáng)DU序列號(hào)與該上層 分段隊(duì)列節(jié)點(diǎn)添加到上層分段隊(duì)列中。進(jìn)入步驟21210。
歩驟2129,為所述數(shù)據(jù)包分段建立一個(gè)上層分段隊(duì)列節(jié)點(diǎn),將減去PDU頭的長度數(shù)據(jù)包分段的長度值,保存在所述上層分段隊(duì)列節(jié)點(diǎn)屮并為所述上層 分段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí)附值;將所述PDU序列號(hào)與所述上層分段隊(duì)列節(jié)點(diǎn)添 加到上層分段隊(duì)列中;
為該數(shù)據(jù)包分段建立一個(gè)上層分段隊(duì)列節(jié)點(diǎn),通過從RLC PDU總K:度中減 去PDU頭的長度后計(jì)算出該單獨(dú)的數(shù)據(jù)包分段的長度值,保存在上層分段隊(duì)列 節(jié)點(diǎn)中。依據(jù)從RLCPDU頭中字段FI解析出的值,若為00時(shí),則為該上層分 段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí)附上表示該數(shù)據(jù)包分段是一個(gè)完整上層數(shù)據(jù)包的值;若 為01時(shí),則為該上層分段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí)附上表示該數(shù)據(jù)包分段是一個(gè) 完整上層數(shù)據(jù)包的開頭部分的值;若為10時(shí),則為該上層分段隊(duì)列節(jié)點(diǎn)的分 段標(biāo)識(shí)附上表示該數(shù)據(jù)包分段是一個(gè)完整上層數(shù)據(jù)包的結(jié)尾部分的值;若為 U時(shí),則為該上層分段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí)附上表示該數(shù)據(jù)包分段是一個(gè)完 整上層數(shù)據(jù)包的中間部分的值。將該P(yáng)DU序列號(hào)與該上層分段隊(duì)列節(jié)點(diǎn)添加到 上層分段隊(duì)列中;
步驟21210,按照該上層分段隊(duì)列中每個(gè)隊(duì)列節(jié)點(diǎn)描述的長度,從RLC PDU 的總數(shù)據(jù)包凈荷中取出相應(yīng)的長度,保存在每個(gè)上層分段隊(duì)列節(jié)點(diǎn)中。這樣就 構(gòu)成了該RLC PDU所對應(yīng)的上層分段隊(duì)列。
作為一種可實(shí)施方式,同以上的假設(shè),那么這里得到分段標(biāo)識(shí)就為上層數(shù) 據(jù)包x由于只有開頭部分,所以分段標(biāo)識(shí)為標(biāo)明該數(shù)據(jù)包分段是 一個(gè)完整的上 層數(shù)據(jù)包的開頭部分;而第二個(gè)上層分段隊(duì)列節(jié)點(diǎn)中的上層數(shù)據(jù)包y是完整的 數(shù)據(jù)包,所以分段標(biāo)識(shí)為標(biāo)明該數(shù)據(jù)包分段是一個(gè)完整的上層數(shù)據(jù)包;第三個(gè) 上層分段隊(duì)列節(jié)點(diǎn)中的上層數(shù)據(jù)包z由于只有結(jié)尾部分,所以分段標(biāo)識(shí)為標(biāo)明 該數(shù)據(jù)包分段是一個(gè)完整的上層數(shù)據(jù)包的結(jié)尾部分。
步驟213,將屬于該RLC PDli的所有數(shù)據(jù)包分段組成上層分段隊(duì)列,該 隊(duì)列中的所有隊(duì)列節(jié)點(diǎn)均只有一個(gè)PDU序列號(hào)。
由于所述上層分段隊(duì)列中的所有隊(duì)列節(jié)點(diǎn)都是由一個(gè)RLC PDU解析得出, 故該隊(duì)列所有隊(duì)列節(jié)點(diǎn)均具有相同的一個(gè)PDU序列號(hào)。
步驟220,接收側(cè)將所述上層分段隊(duì)列中的隊(duì)列節(jié)點(diǎn)添加到接收側(cè)無線 承載邏輯信道信息隊(duì)列的接收隊(duì)列節(jié)點(diǎn)中;
接收側(cè)將所述上層分段隊(duì)列中的隊(duì)列節(jié)點(diǎn)添加到接收緩存隊(duì)列中,并更新 傳輸模式接收參數(shù)中的接收窗口變量組,更新接收窗口變量組的同時(shí)將滿足遞交要求的接收緩存隊(duì)列的隊(duì)列節(jié)點(diǎn)添加到提交隊(duì)列中。
圖6是本發(fā)明中接收側(cè)添加接收緩存的流程圖,如圖2B、圖6所示,歩
驟220具體包括如下歩驟
步驟221,將解析出的上層分段隊(duì)列的數(shù)據(jù)保存到接收隊(duì)列節(jié)點(diǎn)維護(hù)的接 收緩存隊(duì)列下,再將接收緩存隊(duì)列中接收緩存節(jié)點(diǎn)的起始序列號(hào)標(biāo)識(shí)和最末序
列號(hào)標(biāo)識(shí)都填上該上層分段隊(duì)列所具有的PDU序列號(hào)的值;
構(gòu)建接收緩存節(jié)點(diǎn),將解析出的上層分段隊(duì)列的數(shù)據(jù)保存到接收緩存隊(duì)列
節(jié)點(diǎn)維護(hù)的數(shù)據(jù)隊(duì)列下;初始建立接收緩存節(jié)點(diǎn),其中的起始序列號(hào)標(biāo)識(shí)和最 末序列號(hào)標(biāo)識(shí)都是上層分段隊(duì)列所具有的PDU序列號(hào)的值;接收緩存節(jié)點(diǎn)進(jìn)行 合并后,起始序列號(hào)標(biāo)識(shí)和最末序列號(hào)標(biāo)識(shí)才出現(xiàn)不同,之前均為PDU序列號(hào) 的值。
步驟222,將構(gòu)建好的接收緩存節(jié)點(diǎn)按照其具有的PDU序列號(hào)的值(即接 收緩存節(jié)點(diǎn)的起始序列號(hào)標(biāo)識(shí)和最末序列號(hào)標(biāo)識(shí)的一樣的PDU序列號(hào)的值), 按序插入到接收緩存隊(duì)列中;
所述按序插入,是指接收緩存節(jié)點(diǎn)插入后,該接收緩存節(jié)點(diǎn)前向的接收緩 存節(jié)點(diǎn)的最末序列號(hào)小于等于該接收緩存節(jié)點(diǎn)的序列號(hào)值,而該接收緩存節(jié)點(diǎn) 的后向接收緩存節(jié)點(diǎn)的起始序列號(hào)標(biāo)識(shí)大于等于該接收緩存節(jié)點(diǎn)的序列號(hào)值。
步驟223,輪詢整個(gè)接收緩存隊(duì)列,檢查在插入新的接收緩存節(jié)點(diǎn)后,是 否能合并接收緩存節(jié)點(diǎn),若不能則直接進(jìn)入步驟225;若能則進(jìn)入歩驟224;
步驟224,按照合并規(guī)則,將多個(gè)接收緩存節(jié)點(diǎn)合并為單個(gè)接收緩存節(jié)點(diǎn);
所述合并規(guī)則,指的是插入新的接收緩存節(jié)點(diǎn)后,若該接收緩存節(jié)點(diǎn)的前 向接收緩存節(jié)點(diǎn)的最末序列號(hào)與該接收緩存節(jié)點(diǎn)的序列號(hào)連續(xù),則將其前向接 收緩存節(jié)點(diǎn)和該接收緩存節(jié)點(diǎn)合并為一個(gè)接收緩存節(jié)點(diǎn),并同步更新新合并的 接收緩存節(jié)點(diǎn)的起始序列號(hào)和最末序列號(hào);若該接收緩存節(jié)點(diǎn)的后向接收緩存 節(jié)點(diǎn)的起始序列號(hào)與該節(jié)點(diǎn)的序列號(hào)連續(xù),則將其后向接收緩存節(jié)點(diǎn)和該接收 緩存節(jié)點(diǎn)合并為一個(gè)接收緩存節(jié)點(diǎn),并同步更新新合并的接收緩存節(jié)點(diǎn)的起始 序列號(hào)和最末序列號(hào)。若該接收緩存節(jié)點(diǎn)的前向接收緩存節(jié)點(diǎn)的最末序列號(hào)和 該接收緩存節(jié)點(diǎn)的序列號(hào)以及該接收緩存節(jié)點(diǎn)的后向接收緩存節(jié)點(diǎn)的起始序 列號(hào)都連續(xù),則將該接收緩存節(jié)點(diǎn)和其前向接收緩存節(jié)點(diǎn)以及其后向接收緩存 節(jié)點(diǎn)這三個(gè)接收緩存節(jié)點(diǎn)合并為一個(gè)接收緩存節(jié)點(diǎn),并同步更新新合并的接收緩存節(jié)點(diǎn)的起始序列號(hào)和最末序列號(hào)。
作為-種可實(shí)施方式,同上述的假設(shè),再假設(shè)插入位置的前一個(gè)接收緩存
隊(duì)列節(jié)點(diǎn)為起始序列號(hào)為X (X小于N-i),最末序列號(hào)為N--1,而剛插入的接 收緩存節(jié)點(diǎn)的起始序列號(hào)和最末序列號(hào)都為N,所以這里應(yīng)該將剛插入的接收
緩存節(jié)點(diǎn)和其前一個(gè)接收緩存節(jié)點(diǎn)合并,將具有PDU序列號(hào)N的三個(gè)上層分段 隊(duì)列節(jié)點(diǎn)連接在前一個(gè)接收緩存節(jié)點(diǎn)的數(shù)據(jù)隊(duì)列之后,與其他具有其他PDU 序列號(hào)的上層分段隊(duì)列節(jié)點(diǎn)共同連接在一起構(gòu)成隊(duì)列。合并后的接收緩存節(jié)點(diǎn) 的起始序列號(hào)為X,而最末序列號(hào)應(yīng)更新為N。
步驟225,根據(jù)收到的RLC PDU的PDU序列號(hào),按照更新規(guī)則更新對應(yīng)的 接收側(cè)無線承載邏輯信道信息隊(duì)列節(jié)點(diǎn)中的接收窗口變量組;
所謂更新規(guī)則,指的是LTE協(xié)議中提到的窗口移動(dòng)的原則,由于LTE協(xié)議 中已做了詳盡的說明,這里不再贅述。
歩驟226,更新接收窗口變量組后,判斷在接收緩存隊(duì)列中是否有需要上 傳的數(shù)據(jù),若有則進(jìn)入歩驟227;若無則進(jìn)入步驟228;
歩驟227,根據(jù)更新接收窗口變量組得到需要上傳的最大PDU序列號(hào)(即 表示在接收緩存中的該P(yáng)DU序列號(hào)之前的所有RLCPDU均需要上傳),將接收 緩存中的數(shù)據(jù)添加到提交隊(duì)列中,進(jìn)行數(shù)據(jù)的提交并進(jìn)入步驟230;
所述數(shù)據(jù)的提交,是指將緩存隊(duì)列中的保存上層分段隊(duì)列的PDU序列號(hào)在 所得到的需要上傳的最大PDU序列號(hào)之前的所有接收緩存節(jié)點(diǎn)中的數(shù)據(jù)隊(duì)列 的隊(duì)列節(jié)點(diǎn)添加到提交隊(duì)列的尾部,提交隊(duì)列即由需要按序提交的所有隊(duì)列節(jié) 點(diǎn)串接而成,每一個(gè)隊(duì)列節(jié)點(diǎn)對應(yīng)一個(gè)提交隊(duì)列節(jié)點(diǎn)。
作為一種可實(shí)施方式,同上述的假設(shè),再假設(shè)此時(shí)從更新接收窗口變量組 所得到的需要上傳的最大PDU序列號(hào)為N,那么即將接收緩存隊(duì)列中的起始序 列號(hào)為X,而最末序列號(hào)應(yīng)更新為N的接收緩存隊(duì)列節(jié)點(diǎn)之前的所有接收緩存 節(jié)點(diǎn)(包括該接收緩存節(jié)點(diǎn)本身)的數(shù)據(jù)隊(duì)列中的所有隊(duì)列節(jié)點(diǎn)添加到提交隊(duì) 列的尾部。
步驟228,繼續(xù)接收下一個(gè)RLC PDU,返回步驟210。
步驟230,接收側(cè)將接收側(cè)無線承載邏輯信道信息隊(duì)列的接收隊(duì)列節(jié)點(diǎn)維 護(hù)的提交隊(duì)列中的上層分段隊(duì)列節(jié)點(diǎn)包含的數(shù)據(jù)包分段進(jìn)行解打包解分段,丟 棄無法重組的數(shù)據(jù)包分段,將完整的數(shù)據(jù)包遞交給上層;所述解打包解分段的工作都是在提交隊(duì)列中完成的,也是對已經(jīng)被添加到 提交隊(duì)列中保存的上層分段隊(duì)列節(jié)點(diǎn)進(jìn)行操作。
圖7是提交數(shù)據(jù)的解打包解分段流程圖,如圖2B、圖7所示,步驟230
具體包括如下步驟
步驟231,接收側(cè)從接收側(cè)無線承載邏輯信道信息隊(duì)列節(jié)點(diǎn)維護(hù)的提交
隊(duì)列中的第一個(gè)提交隊(duì)列節(jié)點(diǎn)開始逐個(gè)輪詢;
步驟232,查看該提交隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí),若是完整上層數(shù)據(jù)包則進(jìn) 入步驟233;若是完整的上層數(shù)據(jù)包的開頭部分則進(jìn)入歩驟234;若是完整的 上層數(shù)據(jù)包的結(jié)尾部分則進(jìn)入步驟235;若是完整的上層數(shù)據(jù)包的中間部分則 進(jìn)入步驟236;
歩驟233,直接將該完整上層數(shù)據(jù)包遞交到上層,并從提交隊(duì)列中刪除該 提交隊(duì)列節(jié)點(diǎn),進(jìn)入步驟237;
步驟234,將在提交隊(duì)列中該提交隊(duì)列節(jié)點(diǎn)之前的所有提交隊(duì)列節(jié)點(diǎn)都丟 去,不再上傳,僅保存當(dāng)前提交隊(duì)列節(jié)點(diǎn),并記錄當(dāng)前提交隊(duì)列節(jié)點(diǎn)的PDU 序列號(hào),進(jìn)入步驟237;
步驟235,將該提交隊(duì)列節(jié)點(diǎn)的PDU序列號(hào)與記錄的PDU序列號(hào)比較,判 斷是否連續(xù),若連續(xù)則將該提交隊(duì)列節(jié)點(diǎn)之前的所有提交隊(duì)列節(jié)點(diǎn)包括本提交 隊(duì)列節(jié)點(diǎn)在內(nèi)組成一個(gè)完整的上層數(shù)據(jù)包,并遞交到上層;若不連續(xù)則將該提 交隊(duì)列節(jié)點(diǎn)之前的所有提交隊(duì)列節(jié)點(diǎn)包括本提交隊(duì)列節(jié)點(diǎn)在內(nèi)都丟去,進(jìn)入步 驟237;
步驟236,將該提交隊(duì)列節(jié)點(diǎn)的PDU序列號(hào)與記錄的PDU序列號(hào)比較,判 斷是否連續(xù),若連續(xù)則記錄當(dāng)前提交隊(duì)列節(jié)點(diǎn)的PDU序列號(hào);若不連續(xù)則將該 提交隊(duì)列節(jié)點(diǎn)之前的所有提交隊(duì)列節(jié)點(diǎn)包括本提交隊(duì)列節(jié)點(diǎn)在內(nèi)都丟去,進(jìn)入 步驟237;
步驟237,査找下一個(gè)提交隊(duì)列節(jié)點(diǎn),若下一個(gè)提交隊(duì)列節(jié)點(diǎn)存在則迸入 步驟232,若不存在則繼續(xù)接收下一個(gè)RLC PDU,進(jìn)入步驟210。
相應(yīng)于本發(fā)明的一種非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒?,本發(fā)明還提供一種非確 認(rèn)模式數(shù)據(jù)傳輸系統(tǒng)。
圖8是本發(fā)明-一種非確認(rèn)模式數(shù)據(jù)傳輸系統(tǒng)的結(jié)構(gòu)圖,如圖8所示, -種 非確認(rèn)模式數(shù)據(jù)傳輸系統(tǒng),包括發(fā)送側(cè)l:用于通過建立發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列根據(jù)MAC層
分配的帶寬對保存的上層數(shù)據(jù)進(jìn)行分段打包操作,并將結(jié)果發(fā)往層; 所述發(fā)送側(cè)l,包括
發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列11,用于保存發(fā)送側(cè)的所有邏輯信道
所述發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列11,包括 緩存隊(duì)列l(wèi)ll,用于保存上層發(fā)送來的數(shù)據(jù);
接收側(cè)2:用于通過建立與發(fā)送側(cè)對應(yīng)的接收側(cè)無線承載邏輯信道信息隊(duì) 列,對接收到的數(shù)據(jù)進(jìn)行解打包解分段操作,并將完整的數(shù)據(jù)遞交給上層; 所述接收側(cè)2,包括
接收側(cè)無線承載邏輯信道信息隊(duì)列21,用于接收由所述發(fā)送側(cè)發(fā)送的信
息;
上層分段隊(duì)列22,用于保存解析RLC PDU得到的數(shù)據(jù)包分段; 在LTE系統(tǒng)中,上層分段隊(duì)列,是由解析某一個(gè)無限邏輯鏈路控制層協(xié)議
數(shù)據(jù)單元(RLCPDU)而得到的該協(xié)議數(shù)據(jù)單元(PDU)包括的各個(gè)數(shù)據(jù)包分段
構(gòu)成的隊(duì)列,所以整條隊(duì)列擁有一個(gè)PDU序列號(hào)。
所述接收側(cè)無線承載邏輯信道信息隊(duì)列21,包括
接收緩存隊(duì)列211,用于保存解析后收到的所有正確的數(shù)據(jù)包分段;
提交隊(duì)列212,用于保存滿足上傳條件的屬于不同PDU序列號(hào)的所有接收
緩存節(jié)點(diǎn)。
發(fā)送側(cè)通過建立發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列,保存上層發(fā)送的在所 有邏輯信道上傳輸?shù)男畔?,并維護(hù)一條緩存隊(duì)列,用于保存上層發(fā)送來的數(shù)據(jù), 緩存隊(duì)列中的每一個(gè)緩存隊(duì)列節(jié)點(diǎn)保存一個(gè)上層數(shù)據(jù)包;發(fā)送側(cè)根據(jù)MAC層分 配的帶寬對緩存隊(duì)列節(jié)點(diǎn)中的上層數(shù)據(jù)包進(jìn)行分段打包,并將多個(gè)數(shù)據(jù)包分段 組成一個(gè)RLC PDU,并發(fā)往MAC層;接收側(cè)對接收到的RLC PDU進(jìn)行合法性檢 測,解析合法的RLCPDU得到數(shù)據(jù)包分段,并將數(shù)據(jù)包分段保存到上層分段隊(duì) 列;接收側(cè)再將上層分段隊(duì)列節(jié)點(diǎn)添加到接收緩存隊(duì)列的接收緩存節(jié)點(diǎn)中,并 將符合上傳條件的接收緩存節(jié)點(diǎn)中保存的數(shù)據(jù)添加到提交隊(duì)列中;對提交隊(duì)列 中的保存的數(shù)據(jù)進(jìn)行解打包解分段,組成完整的數(shù)據(jù)包遞交給上層,實(shí)現(xiàn)LTE 系統(tǒng)中,非確認(rèn)模式的數(shù)據(jù)傳輸。本發(fā)明的有益效果在于為釆用非確認(rèn)模式的傳輸模式提供了具體的實(shí)現(xiàn) 方法。
通過結(jié)合附圖對本發(fā)明具體實(shí)施例的描述,本發(fā)明的其它方面及特征對本 領(lǐng)域的技術(shù)人員而言是顯而易見的。
以上對本發(fā)明的具體實(shí)施例進(jìn)行了描述和說明,這些實(shí)施例應(yīng)被認(rèn)為其只 是示例性的,并不用于對本發(fā)明進(jìn)行限制,本發(fā)明應(yīng)根據(jù)所附的權(quán)利要求進(jìn)行 解釋。
權(quán)利要求
1. 一種非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒?,用于通過對上層數(shù)據(jù)包進(jìn)行分段打包,并在接收時(shí)采用解打包解分段來完成對上層數(shù)據(jù)包的傳輸,其特征在于,所述方法包括下列步驟步驟100. 發(fā)送側(cè)建立發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列,并根據(jù)MAC層分配的帶寬對上層數(shù)據(jù)包進(jìn)行分段打包,將由數(shù)據(jù)包分段組成的RLC PDU發(fā)往MAC層;步驟200. 接收側(cè)建立與發(fā)送側(cè)相應(yīng)的接收側(cè)無線承載邏輯信道信息隊(duì)列,并對從MAC層收到的RLC PDU進(jìn)行合法性檢測,對從合法的RLC PDU解析出的數(shù)據(jù)包分段進(jìn)行解打包解分段,丟棄無法重組的數(shù)據(jù)包分段,將完整的數(shù)據(jù)包遞交給上層。
2. 根據(jù)權(quán)利要求1所述的非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,?述步驟100還包括下列歩驟步驟110.發(fā)送側(cè)建立描述無線承載邏輯信道信息的發(fā)送側(cè)無線承載邏輯 信道信息隊(duì)列;步驟120.發(fā)送側(cè)計(jì)算上層數(shù)據(jù)的大小,并將上層數(shù)據(jù)的大小值保存在所 述發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列的發(fā)送隊(duì)列節(jié)點(diǎn)中,等待MAC層根據(jù)該值 分配帶寬;歩驟130.發(fā)送側(cè)根據(jù)MAC層分配的帶寬,在所述發(fā)送隊(duì)列節(jié)點(diǎn)中對保存 的上層數(shù)據(jù)進(jìn)行分段打包,并將由數(shù)據(jù)包分段組成的RLC PDU發(fā)往MAC層。
3. 根據(jù)權(quán)利要求2所述的非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒ǎ涮卣髟谟?,?述發(fā)送隊(duì)列節(jié)點(diǎn)中包括緩存隊(duì)列,所述緩存隊(duì)列由緩存隊(duì)列節(jié)點(diǎn)組成,每一個(gè) 緩存隊(duì)列節(jié)點(diǎn)對應(yīng)一個(gè)放入緩存隊(duì)列的上層數(shù)據(jù)包。
4. 根據(jù)權(quán)利要求3所述的非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒ǎ涮卣髟谟?,?述步驟130包括下列步驟步驟131.發(fā)送側(cè)根據(jù)MAC層分配的帶寬,輪詢所述緩存隊(duì)列節(jié)點(diǎn); 步驟132.判斷分配的帶寬是否能裝入所述緩存隊(duì)列節(jié)點(diǎn)所保存的上層數(shù) 據(jù)包,若能則進(jìn)入歩驟133,否則進(jìn)入步驟134;步驟133.從分配的帶寬的大小中減去所述上層數(shù)據(jù)包的大小,生成相應(yīng)的子頭信息,將取出的所述上層數(shù)據(jù)包作為一個(gè)數(shù)據(jù)包分段,并將所述上層數(shù) 據(jù)包對應(yīng)的緩存隊(duì)列節(jié)點(diǎn)從緩存隊(duì)列中刪除;繼續(xù)詢問緩存隊(duì)列中下 -個(gè)緩存 隊(duì)列節(jié)點(diǎn),返回步驟132;步驟134,在所述緩存隊(duì)列節(jié)點(diǎn)的數(shù)據(jù)分段位置標(biāo)識(shí)中記錄F根據(jù)所述分 配的帶寬能被取走的上層數(shù)據(jù)包分段的位置,生成相應(yīng)的子頭信息,并將取走的上層數(shù)據(jù)包分段作為一個(gè)數(shù)據(jù)包分段;步驟135.將取出的各個(gè)數(shù)據(jù)包分段以及生成的各個(gè)數(shù)據(jù)包分段對應(yīng)的子 頭信息組成所述RLC PDU發(fā)往MAC層。
5. 根據(jù)權(quán)利要求1所述的非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,所述歩驟200還包括下列步驟步驟210.接收側(cè)建立與發(fā)送側(cè)相應(yīng)的非確認(rèn)模式的傳輸模式的接收側(cè)無 線承載邏輯信道信息隊(duì)列,并對收到的所述RLC PDU進(jìn)行合法性檢測,若不合 法則丟棄該RLC PDL',繼續(xù)接收下一個(gè)RLC PDU,若合法則進(jìn)行RLC PDU解析, 并將解析結(jié)果添加到上層分段隊(duì)列;步驟220.接收側(cè)將所述上層分段隊(duì)列中的上層分段隊(duì)列節(jié)點(diǎn)添加到接收 側(cè)無線承載邏輯信道信息隊(duì)列的接收隊(duì)列節(jié)點(diǎn)中;歩驟230.接收側(cè)將所述接收隊(duì)列節(jié)點(diǎn)維護(hù)的提交隊(duì)列中的上層分段隊(duì)列 節(jié)點(diǎn)包含的數(shù)據(jù)包分段進(jìn)行解打包解分段,丟棄無法重組的數(shù)據(jù)包分段,將完 整的數(shù)據(jù)包遞交給上層。
6. 根據(jù)權(quán)利要求5所述的非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,?述步驟210包括下列步驟步驟211.接收側(cè)對收到的RLC PDU進(jìn)行解析,首先解析出該RLC PDU的 PDU序列號(hào),并將該P(yáng)DU序列號(hào)與所述上層分段隊(duì)列關(guān)聯(lián)起來;步驟212.將從RLC P冊中解析出的每一個(gè)數(shù)據(jù)包分段作為一個(gè)上層分段 隊(duì)列節(jié)點(diǎn),并為所述上層分段隊(duì)列節(jié)點(diǎn)附上分段標(biāo)識(shí)的值;步驟213.將屬于該RLC PDU的所有數(shù)據(jù)包分段組成所述上層分段隊(duì)列。
7. 根據(jù)權(quán)利要求6所述的非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒ǎ涮卣髟谟冢?述步驟212包括下列步驟步驟2121.解析出所述RLC PDU頭中字段FI的值,并且解析出所述RLC PDU 頭中E字段,査看是否被置位,若置位為l,則進(jìn)入步驟2122,若置位為O,則進(jìn)入步驟2129;歩驟2122.解祈出所述RIX PDU中第一個(gè)子頭信息的E字段和長度標(biāo)識(shí) 的值;步驟2123.為該子頭信息對應(yīng)的數(shù)據(jù)包分段建立一個(gè)上層分段隊(duì)列節(jié)點(diǎn), 保存該數(shù)據(jù)包分段的長度標(biāo)識(shí),并判斷解析的是否是該RLC PDU的第一個(gè)數(shù)據(jù) 包分段,若是,則進(jìn)入歩驟2124,否則進(jìn)入步驟2125;步驟2124.根據(jù)解析出的所述RLC PDU頭中字段FI的值,則為所述上層 分段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí)附值,進(jìn)入步驟2126;歩驟2125.為所述上層分段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí),附上標(biāo)識(shí)該數(shù)據(jù)包分段 是一個(gè)完整上層數(shù)據(jù)包的值;歩驟2126.將所述RLC PDU的PDU序列號(hào)與所述上層分段隊(duì)列節(jié)點(diǎn)保存到 上層分段隊(duì)列中并判斷下一個(gè)子頭信息解析出的子頭信息的E字段是否被置 位,若E字段為1則解析出下一個(gè)子頭信息的E字段和長度標(biāo)識(shí)的值并返回歩 驟2123,若E字段為0,則進(jìn)入步驟2127;步驟2127.計(jì)算所述RLC PDU中最后 一個(gè)數(shù)據(jù)包分段的長度,為所述最后 一個(gè)數(shù)據(jù)包分段建立一個(gè)上層分段隊(duì)列節(jié)點(diǎn),保存計(jì)算出的該數(shù)據(jù)包分段的長 度值;步驟2128.依據(jù)解析出的所述RLC PDU頭中字段FI的值,為所述上層分 段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí)附值并將所述PDU序列號(hào)與所述上層分段隊(duì)列節(jié)點(diǎn)添 加到上層分段隊(duì)列中,進(jìn)入步驟21210;歩驟2129,為所述數(shù)據(jù)包分段建立一個(gè)上層分段隊(duì)列節(jié)點(diǎn),將減去PDU 頭的長度的數(shù)據(jù)包分段的長度值,保存在所述上層分段隊(duì)列節(jié)點(diǎn)中并為所述上 層分段隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí)附值;將所述PDU序列號(hào)與所述上層分段隊(duì)列節(jié)點(diǎn) 添加到上層分段隊(duì)列中;步驟21210,按照所述上層分段隊(duì)列中每個(gè)上層分段隊(duì)列節(jié)點(diǎn)描述的長 度,從所述RLCPDU的總數(shù)據(jù)包凈荷中取出相應(yīng)的長度,保存在每個(gè)上層分段 隊(duì)列節(jié)點(diǎn)中。
8.根據(jù)權(quán)利要求6所述的非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,?驟213中,所述上層分段隊(duì)列中的所有上層分段隊(duì)列節(jié)點(diǎn)具有同一個(gè)PDU序列 號(hào)。
9. 根據(jù)權(quán)利要求5所述的非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,?述步驟220包括下列歩驟步驟221.將所述上層分段隊(duì)列的數(shù)據(jù)保存到所述接收隊(duì)列節(jié)點(diǎn)維護(hù)的接 收緩存隊(duì)列下,再將接收緩存隊(duì)列中接收緩存節(jié)點(diǎn)的起始序列號(hào)標(biāo)識(shí)和最末序 列號(hào)標(biāo)識(shí)都填上該上層分段隊(duì)列所具有的PDU序列號(hào)的值;步驟222.將所述接收緩存節(jié)點(diǎn)按照其具有的PDU序列號(hào)的值,按序插入 到所述接收緩存隊(duì)列中;步驟223.輪詢所述接收緩存隊(duì)列,檢査在插入新的接收緩存節(jié)點(diǎn)后,是 否能合并接收緩存節(jié)點(diǎn),若不能則直接進(jìn)入步驟225;若能則進(jìn)入步驟224;步驟224.按照合并規(guī)則,將多個(gè)接收緩存節(jié)點(diǎn)合并為單個(gè)接收緩存節(jié)點(diǎn);歩驟225.根據(jù)收到的所述RLC PDU的PDU序列號(hào),按照更新規(guī)則更新對 應(yīng)的所述接收對列節(jié)點(diǎn)中的接收窗口變量組;步驟226.更新所述接收窗口變量組后,判斷在接收緩存隊(duì)列中是否有需 要上傳的數(shù)據(jù),若有則進(jìn)入歩驟227;若無則進(jìn)入步驟228;步驟227.根據(jù)更新接收窗口變量組得到需要上傳的最大PDU序列號(hào),將 所述接收緩存隊(duì)列中的數(shù)據(jù)添加到所述提交隊(duì)列中,進(jìn)行數(shù)據(jù)的提交并進(jìn)入步 驟230;步驟228.繼續(xù)接收下一個(gè)RLC PDU,返回步驟210。
10. 根據(jù)權(quán)利要求9所述的非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒ǎ涮卣髟谟?,?驟222中,所述按序插入,是指所述接收緩存節(jié)點(diǎn)插入后,該接收緩存節(jié)點(diǎn)前 向的接收緩存節(jié)點(diǎn)的最末序列號(hào)小于等于該接收緩存節(jié)點(diǎn)的序列號(hào)值,而該接 收緩存節(jié)點(diǎn)的后向接收緩存節(jié)點(diǎn)的起始序列號(hào)標(biāo)識(shí)大于等于該接收緩存節(jié)點(diǎn) 的序列號(hào)值。
11. 根據(jù)權(quán)利要求9所述的非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒ǎ涮卣髟谟?,?驟224中,所述合并規(guī)則,指的是插入新的接收緩存節(jié)點(diǎn)后,按照該接收緩存 節(jié)點(diǎn)與其前向接收緩存節(jié)點(diǎn)的最末序列號(hào)和/或后向接收緩存節(jié)點(diǎn)的起始序列 號(hào)是否連接,若連接則將該接收緩存節(jié)點(diǎn)和其前向接收緩存節(jié)點(diǎn)和/或其后向 接收緩存節(jié)點(diǎn)合并為一個(gè)接收緩存節(jié)點(diǎn),并同步更新新合并的接收緩存節(jié)點(diǎn)的 起始序列號(hào)和最末序列號(hào)。
12. 根據(jù)權(quán)利要求9所述的非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,所述步驟230,包括下列步驟歩驟231.接收側(cè)從所述提交隊(duì)列中的第一個(gè)提交隊(duì)列節(jié)點(diǎn)開始逐個(gè)輪詢;歩驟232.查看所述提交隊(duì)列節(jié)點(diǎn)的分段標(biāo)識(shí),若是完整上層數(shù)據(jù)包則進(jìn) 入歩驟233;若是完整的上層數(shù)據(jù)包的開頭部分則進(jìn)入歩驟234;若是完整的 上層數(shù)據(jù)包的結(jié)尾部分則進(jìn)入歩驟235;若是完整的上層數(shù)據(jù)包的中間部分則 進(jìn)入步驟236;歩驟233.直接將該完整上層數(shù)據(jù)包遞交到上層,并從所述提交隊(duì)列中刪 除該提交隊(duì)列節(jié)點(diǎn),進(jìn)入步驟237;步驟234.將在所述提交隊(duì)列節(jié)點(diǎn)之前的所有提交隊(duì)列節(jié)點(diǎn)都丟去,不再 上傳,僅保存當(dāng)前提交隊(duì)列節(jié)點(diǎn),并記錄當(dāng)前提交隊(duì)列節(jié)點(diǎn)的PDU序列號(hào),進(jìn) 入步驟237;步驟235.將該所述提交隊(duì)列節(jié)點(diǎn)的PDU序列號(hào)與記錄的PDU序列號(hào)比較, 判斷是否連續(xù),若連續(xù)則將所述提交隊(duì)列節(jié)點(diǎn)之前的所有提交隊(duì)列節(jié)點(diǎn)包括本 提交隊(duì)列節(jié)點(diǎn)在內(nèi)組成一個(gè)完整的上層數(shù)據(jù)包,并遞交到上層;若不連續(xù)則將 該提交隊(duì)列節(jié)點(diǎn)之前的所有提交隊(duì)列節(jié)點(diǎn)包括本提交隊(duì)列節(jié)點(diǎn)在內(nèi)都丟去,進(jìn) 入步驟237;步驟236.將所述提交隊(duì)列節(jié)點(diǎn)的PDU序列號(hào)與記錄的PDU序列號(hào)比較, 判斷是否連續(xù),若連續(xù)則記錄當(dāng)前提交隊(duì)列節(jié)點(diǎn)的PDU序列號(hào);若不連續(xù)則將 該提交隊(duì)列節(jié)點(diǎn)之前的所有提交隊(duì)列節(jié)點(diǎn)包括本提交隊(duì)列節(jié)點(diǎn)在內(nèi)都丟去,進(jìn) 入步驟237;步驟237.查找下一個(gè)提交隊(duì)列節(jié)點(diǎn),若下一個(gè)提交隊(duì)列節(jié)點(diǎn)存在則進(jìn)入 歩驟232,若不存在則繼續(xù)接收下一個(gè)RLC PDU,返回步驟210。
13. —種非確認(rèn)模式數(shù)據(jù)傳輸系統(tǒng),其特征在于,所述系統(tǒng)包括 發(fā)送側(cè)用于通過建立發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列,根據(jù)MAC層分配的帶寬對保存的上層數(shù)據(jù)進(jìn)行分段打包操作,并將結(jié)果發(fā)往MAC層;接收側(cè)用于通過建立與發(fā)送側(cè)對應(yīng)的接收側(cè)無線承載邏輯信道信息隊(duì)列,對接收到的數(shù)據(jù)進(jìn)行解打包解分段操作,并將完整的數(shù)據(jù)遞交給上層。
14. 根據(jù)權(quán)利要求13所述的非確認(rèn)模式數(shù)據(jù)傳輸系統(tǒng),其特征在于,所述發(fā)送側(cè),包括發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列,用于保存發(fā)送側(cè)的所有邏輯信道的信息;所述發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列,又包含緩存隊(duì)列,用于保存上層 發(fā)送來的數(shù)據(jù)。
15.根據(jù)權(quán)利要求13所述的非確認(rèn)模式數(shù)據(jù)傳輸系統(tǒng),其特征在于,所述接收側(cè),包括接收側(cè)無線承載邏輯信道信息隊(duì)列,用于接收由所述發(fā)送側(cè)發(fā)送的信息; 上層分段隊(duì)列,用于保存解析RLC PDU得到的數(shù)據(jù)包分段; 所述接收側(cè)無線承載邏輯信道信息隊(duì)列,包括 接收緩存隊(duì)列,用于保存解析后收到的所有正確的數(shù)據(jù)包分段; 提交隊(duì)列,用于保存滿足上傳條件的屬于不同PDU序列號(hào)的所有接收緩存 節(jié)點(diǎn)。
全文摘要
本發(fā)明公開了一種非確認(rèn)模式數(shù)據(jù)傳輸?shù)姆椒ê拖到y(tǒng)。該方法包括下列步驟發(fā)送側(cè)建立發(fā)送側(cè)無線承載邏輯信道信息隊(duì)列,并根據(jù)MAC層分配的帶寬對上層數(shù)據(jù)包進(jìn)行分段打包,將由數(shù)據(jù)包分段組成的RLC PDU發(fā)往MAC層;接收側(cè)建立與發(fā)送側(cè)相應(yīng)的接收側(cè)無線承載邏輯信道信息隊(duì)列,并對從MAC層收到的RLC PDU進(jìn)行合法性檢測,對從合法的RLC PDU解析出的數(shù)據(jù)包分段進(jìn)行解打包解分段,丟棄無法重組的數(shù)據(jù)包分段,將完整的數(shù)據(jù)包遞交給上層。其為采用非確認(rèn)模式的傳輸模式提供了具體的實(shí)現(xiàn)方法。
文檔編號(hào)H04L1/00GK101431515SQ20081017895
公開日2009年5月13日 申請日期2008年12月3日 優(yōu)先權(quán)日2008年11月7日
發(fā)明者張玉成, 施淵籍, 石晶林, 董江濤 申請人:中國科學(xué)院計(jì)算技術(shù)研究所