RLC協議學習總結_第1頁
RLC協議學習總結_第2頁
RLC協議學習總結_第3頁
RLC協議學習總結_第4頁
RLC協議學習總結_第5頁
已閱讀5頁,還剩10頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 RLC協議學習總結1、RLC構架圖1 RLC架構2、RLC實體(1)TM RLC實體:適用于不需要RLC配置的RRC消息使用TM RLC(BCCH、DL/UL CCCH、PCCH) 業務類型:廣播消息的固定部分、尋呼消息、RRC消息等圖2 TM模式兩個對等實體 發送實體:不對RLC SDU進行串聯、分段 沒有RLC頭 對RLC SDU不做任何改動,向下層發送 接收實體:不做任何修改,一腳RLC SDU到上層協議實體(2)UM RLC實體:適用于延時敏感和容忍差錯的實時應用 (DL/UL DTCH)RLC SDU分塊、串聯、重排序、重復檢測、重組 業務類型:VoIP、MBMS圖3 UM模式兩個

2、對等實體 發送實體:在獲得特定的發送機會時,要根據MAC層指示期待的RLC PDU大小進行分段或者串接RLC SDU 添加相應的RLC頭 接收實體:檢測收到的UMD PDU是否重復,重復則丟棄 重排失序的UMD PDU 能夠檢測出UMD PDU在MAC是否丟失,避免過長的重排序時延 若發現某RLC SDU的UMD PDU丟失,則丟棄其他同RLC SDU的PDU(3)AM RLC實體:適用于錯誤敏感、時延容忍的非實時應用 (DL/UL DCCH/DTCH)UM RLC功能+RLC數據PDU重傳、重傳RLC數據PDU再分快、輪詢、狀態報告、狀態禁止 業務類型:FTP、WWW、RRC消息等圖4 AM

3、模式實體3、RLC層服務RLC層向上層提供的服務:(RLC層向PDCP層提供服務)(1)TM數據傳輸:分段和重組、用戶數據的傳輸(2)UM數據傳輸:分段和重組、串聯、填充、用戶數據的傳輸、加密、序號檢查(3)AM數據傳輸:分段和重組、串聯、填充、用戶數據的傳輸、糾錯、按序傳送高層PDU、副本檢測、流量控制、協議錯誤檢測和恢復、加密RLC層從下層得到的服務(1)數據傳輸(2)通知發送時機,同時提供當次傳輸時發送RLC PDU的總大小(3)通知HARQ重傳失敗4、RLC層功能(1)高層PDU傳輸(2)通過ARQ進行糾錯(AM)(3)RLC SDU的分段、串接和重組(UM、AM)(4)RLC數據PD

4、U的再分段(AM)(5)高層PDU的按序遞交(UM、TM)(6)重復檢測(UM、AM)(7)RLC SDU丟棄(UM、AM)(8)RLC重建(9)協議錯誤及恢復5、RLC過程(具體過程見page 6)(1)數據傳輸過程TM:UM:AM:(2)ARQ過程(AM)重傳:輪詢:(防止發送端buffer溢出)AMD PDU或AMD PDU片段重傳、接收狀態報告、t-PollRetransmit超時狀態報告:接收側向對等段發送側反饋,那些PDU或PDU分段已經正確接收,那些沒有。(3)SDU丟棄過程:來自PDCP的指示,若被指示的RLC SDU沒有任何分段映射到一個RLC Data PDU,AM RLC

5、實體發送側或者發送UM RLC實體丟棄該RLC PDU(4)重建過程:由RRC請求觸發,應用于AM、UM、TM 丟棄、重組、提交、停止、復位、初始化(5)對于未知的、意外的以及錯誤的協議數據的處理:丟棄6、RLC協議數據單元及格式(1)TMD PDU:僅有數據域組成,沒有任何RLC頭(2)UMD PDU:UMDPDU頭(固定部分、擴展部分)+數據域(可對RLC SUD進行分段、串接、重組)(3)AMD PDU:AMD PDU頭(固定部分、數據部分)+數據域(可對RCL SDU進行分段、串接、重組)7、參數(1)SN:RLC PDU序號,增量為1(保證按序接收)(2)FI:指示在數據域的開始和最

6、后是否飽飯RLC SDU分段(3)E:指示數據域或LI域和E域的集合(4)LI:對應數據域長度(5)R1:保留域,置0(6)D/C:控制PDU/數據PDU(7)RFAMD PDU/AMD PDU分段(8)LSF:是否原始AMD PDU的最后一個分段(9)SO:AMD PDU分段數據域中第一個字節在原始AMD PDU數據域中的位置(10)CPT:RLC控制PDU類型:STATUA PDU(11)ACK_SN:第一個沒有收到且在STATUS PDU中報告丟失的RLC data PDU的SN(12)E1:其后是否包括一組NACK_SN(13)E2:其后是否包括一組SOStart和SOend域(14)

7、NACK_SN:AM RLC實體接收側已檢測到丟失AMD PDU(或其一部分)的SN(15)SOstart、SOend:相關SN=NACK_SN的AMD PDU的丟失部分8、變量(1)UM發送端1)VT(US): 給出下一個要傳送的UMD PDU的序列號。UMD PDU沒傳送一次,該變量就更新一次,其初值為0.(2)UM接收端1)VR(US):接受者發送順序狀態變量 被接收的下一個PDU的序列號,初始值為0。當接收到一個PDU,其值設置為SN+1。2)VR(UR):UM接收狀態變量 記錄等待重排序的最早的UMD PDU的序列號。在重排序窗口之內,序列號低于該變量的UMD PDU,其接收狀態為已

8、確定,放棄對此范圍內的接收空隙處PDU的等待,將其余正確接收到的PDU重組形成SDU,順序遞交到高層,后續即使正確接收到此范圍內序列空隙處的PDU也采取刪除數據包的操作。該狀態變量的初始值為0。3)VR(UX):UM重排序計時器狀態變量 記錄觸發重排序計時器的UMD PDU緊接著的下一個序列號。當重排序計時器啟動時,該變量與VR(UR)分別記錄當前重排序計時器對應的序列號范圍內的上邊界和下邊界。當該范圍內全部接收序列空隙處的PDU都正確接收后,終止當前重排序計時器。當重排序計時器不存在時,該變量無意義。4)VR(UH):UM最高期望狀態變量記錄接收到的PDU中最高序列號緊接著的下一個序列號,作

9、為重排序窗口的上邊界。其初始值為0。(3)AM發送端1)VT(A):確認狀態變量記錄已經收到肯定確認的連續PDU中最高序列號緊接著下一個序列號,座位發送窗口的下邊界。其初始值為0,只有當RM ELC實體發送端收到序列號等于當前VT(A)變量值的PDU的肯定確認時,該變量才會更新(SN=VT(A)。序列號小于該變量的PDU全部經過接收端肯定確認,表明已經全部正確接收。2)VT(MS):最大發送狀態變量 VT(MS)=VT(A)+AM_Window_Size,座位發送窗口的上邊界。任何序列號發出超出該變量的PDU都不允許發送。當窗口溢出時,AM RLC實體發送端不能發送任何新產生的PDU。3)VT

10、(S):發送狀態變量 記錄下一個新產生的AMD PDU的序列號,初始值為0。在當前VT(S)值被賦予一個新產生的AMD PDU后,該變量做+1操作。4)POLL_SN_Pollsend :發送狀態變量(4)AM接收端1)VR(R):接收狀態變量 記錄最新完整接收到的連續AMD PDU緊接著的下一個序列號,座位接收窗口的下邊界。該變量初始值為0,僅當當前R變量值對應的PDU被正確接收后才會更新。低于該變量。2)VR(MR):最大可接收狀態變量 VR(R)=VR(R)+AM_Window_Size,座位接收窗口的上邊界且是第一個長處接收窗口的AMD PDU的序列號,序列號超出該變量的PDU不能被A

11、M RLC實體接收端接收。3)VR(X):重排序計時狀態變量 記錄發出重排序計時器的AMD PDU緊接著的下一個序列號。當沖排序計時器啟動時,fai變量與MS分別記錄當前重排序計時器對應的序列號范圍的上邊界與下邊界,當該范圍內全部接受序列號空隙處的PDI都正確接收后,終止當前重排序計時器。4)VR(MS)最大狀態發送狀態變量 記錄作為狀態報告中的ACK_SN的最高序列號值,初始值為0。處于接收窗口中,序列號低于該狀態變量的AMD PDU,要么確認接收,要么已經經過重排序計時器檢測認定為丟失的PDU;高于該狀態變量的接收序列號空隙處為沒有完成的重排序計時器檢測的,仍舊等待HARQ重傳的AMD P

12、DU9、常量(1)AM_Window_Size:發送側為VT(A)到VT(MS);接收側為VR(R)到VR(MR)(2)UM_Window_Size:可排序的SN范圍10、計數器(1)t-PollRetransmit:接收側AM RLC實體在進行重傳輪詢時使用(2)t-Reordering:接收側AM RLC實體和UM RLC實體檢查下層傳送的RLC PDU是否丟失時使用。如果t-Reordering正在運行,其他的t-Reordering計時器不能被啟動,在一個給定的時間內,每個RLC實體只能運行一個t-Reordering計時器。(3)t-StatusProhibit:只有在使用了基于計時

13、器的狀態發送時,使用該計時器。當RLC實體建立時,該計時器 啟動,每次計時器超時,就發送一個狀態報告并且計時器重啟。其值由RRC告知。11、可配置參數(1)maxRetxThreshold:AM RLC實體用于限制每個AMD PDU重傳次數。(2)pollPDU:AM RLC實體發送端用于觸發一次輪詢(3)pollByte:每個AM RLC實體在觸發一個輪詢(4)sn-RieldLength:UM SN域的大小1、數據傳輸過程1.1 TM數據傳輸(1)發送:當向下層發送一個新的TMD PDU時 接收端TM RLC實體應當給下層發送一個沒有經過任何處理的RLC SDU(2)接收:當從下層接收到一

14、個新的TMD PDU時 發送端TM RLC實體應當向上層提交一個沒有經過任何處理的TMD PDU1.2 UM數據傳輸(1)發送:當向下層發送一個新的UMD PDU時發送端UM RLC應當將該UMD PDU的SN置為VT(US),并將VT(US)加1(2)接收: 一、概述:UM RLC實體接收端需要根據狀態變量VR(UH)來維護重排序窗口1)當接收到的PDU SN滿足VR(UH)-UM_Window_size=SN<VR(UH),則這個PDU的SN落入重排序窗內 2)否則,該SN落在重排序窗口之外當從下層接收到UMD PUD時1)UM RLC實體接收端應當丟棄接收到的UMD PDU或將其存

15、儲在接收緩存中2)如果接受到UMD PDU并將其存儲在接受緩存器中 UM RLC實體接收端應當更新狀態變量、重組并向上層傳送RLC SDUs,在需要的時候,開始或停止t-Reordering計數器。當t-Reordering計數器超時UM RLC接受端實體應更新狀態變量、重組并向上層傳送RLC SDUs,在需要的時候開始t-Reordering計數器。二、當從下層接受到UMD PDU時:當從下層接收到一個SN=x的UMD PDU時:如果VR(UR)<x<VR(UH),且SN=x的UMD PDU已經在之前被接收到;或者(VR(UH)-UM_Window_Size)x<VR(UR

16、)時 UM RLC接收實體丟棄該UMD PDU否則: UM RLC接收實體應把這個UMD PDU存入接收緩存器中三、當一個UMD PDU被存儲到接收緩存器時:當一個SN=x的UMD PDU唄存入接收緩存器中時:(1)如果x落在重排序窗口之外 1)UM RLC接收實體應更新VR(UH)為x+1 2)UM RLC接收實體應從UMD PDU中重組所有SN落在重排序窗口之外的RLC SDU,去掉RLC頭并且按照RLC SN的升序方式向上層發送重組完成的RLC SDU。 3)如果VR(UR)落在重排序窗口之外: UM RLC接收實體應將VR(UR)置為(VR(UH)-UM_Window_Size)(2)

17、如果接收緩存器中有一個SN=VR(UR)的UMD PDU: 1)UM RLC接收實體應將VR(UR)更新為第一個沒有被接收的UMD PDU SN>當前VR(UR)的PDU 2)UM RLC接收實體應從UMD PDU中重組所有SN<更新后的VR(UR)的RLC SDU,去掉RLC頭并按照RLC SN的升序方式向上層發送重組后的RLC SDU。(3)如果t-Reordering計時器正在運行: 1)如果VR(UX)VR(UR),或者 2)如果VR(UX)落在重排序窗口之外且VR(UX)VR(UH) UMD PDU接收實體應停止并重啟t-Reordering計時器(4)如果t-Reord

18、ering計數器沒有運行 1)如果VR(UH)VR(UR) UMD PDU接收實體應啟動該t-Reordering計時器 UMD PDU接收實體應將VR(UX)置為VR(UH)四、當t-Reordering計數器超時當t-Reordering計數器超時:(1)UM RLC接收實體應更新RLC SDU為第一個沒有被接收的UMD PDU的SN(SNVR(UX)(2)UM RLC接收實體應重組所有SN更新后的VR(UR)的UMD PDU(3)如果VR(UH)VR(UR) 1)UM RLC接收實體應啟動t-Reordering計數器 2)UM RLC接收實體應將VR(UX)置為VR(UH)1.3 AM

19、數據傳輸(1)發送:1)AM RLC實體接收端應比RLC數據PDU優先發送RLC控制PDU;2)AM RLC實體接收端應比新的AMD PDU優先發送重傳的RLC數據PDU;3)發送端AM RLC實體應根據狀態變量VT(A)和VT(MS)維護發送窗口: 如果VT(A)SNVT(MS),則SN落入發送窗口之內 否則,SN落在發送窗口之外4)發送端SM RLC實體不應將任何SN落在傳送窗口之外的RLC數據PDU傳送給下層5)當傳送一個新的AMD PDU給下層時,發送端AM RLC實體應將該AMD PDU的SN置為VT(S),并將VT(S)加1;6)AM RLC實體接收端可以通過如下方式接收一個RLC

20、數據PDU的確認: AM RCL實體的發送端可以通過每個AM RLC實體的STATUS PDU來確認7)當接收到一個SN=VT(A)的AMD PDU的確認時: a.接收端AM RLC 實體應將VT (A)置為還沒有被確認的最小SN的AMD PDU的SN值,且該SN滿足VT(A)SNVT(S) b.如果屬于同一個RLC SDU的PDU都收到了確認,則AM RLC實體接收端應向上層發送RLC SDU成功發送的通知(2)接收:一、概述(1)AM RLC實體接收端應根據狀態變量VR(R)和VR(MR)維護接收窗口: 1)如果VR(R)SNVR(MR),則SN落入接收窗口之內 2)否則,SN落在接收窗口

21、之外(2)當從下層接收到一個RLC數據PDU時: 1)AM RLC實體接收端或者丟棄該接收到的RLC數據PDU,或者將其存入接收緩存器 2)如果接收到的RLC數據PDU被存入接收緩存器: AM RLC實體接收端應更新狀態變量、重組并向上層傳送RLC SDU,且在需要的時候啟動或停止t-Reordering計數器 3)當t-Reordering計數器超時,AM RLC實體接收端應更新狀態變量,并在需要的時候啟動t-Reordering計數器二、當從下層接收到RLC數據PDU時:當從下層接收到一個RLC數據PDU時,當它包含SN=x的AMD PDU分段字節為y到z時(1)如果x落在接收窗口之外,或

22、者(2)SN=x的AMD PDU的分段字節為y到z已經被接收時: AM RLC實體接收端應丟棄該RLC數據PDU(3)否則:1)接收AM RLC實體應將接收到的RLC數據PDU存入接收緩存器中 2)如果AMD PDU的有些字節分段包含之前已經接收到的RLC數據PDU: AM RLC實體接收端應丟棄該重復的字節段三、當已給RLC數據PDU被存入接收緩存器中時:當一個SN=x的RLC數據PDU被存入接收緩存器中時:(1)如果xVR(H) 接收AM RLC實體應更新VR(H)為x+1(2)如果SN=VR(MS)的AMD PDU的字節段已經接收: 接收AM RLC實體應更新VR(MS)為第一個不是所有

23、字節段都被接收的AMD PDU的SN,且該SN大于當前VR(MS)(3)如果x=VR(R):1)如果AMD PDU的所有SNVR(R)的字節段都被接收: a.接收AM RLC實體應更新VR(R)為第一個不是所有字節段都被接收的AMD PDU的SN,且該SN大于當前VR(R) b.接收AM RLC實體應更新VR(MR)為已更新的VR(R)AM_Window_Size2)從所有SN落在接收窗口之外的AMD PDU以及的字節段中重組RLC SDU,如果之前沒有提交過,則去掉RLC頭并將重組的RLC SDU按順序發送給上層。(4)如果t-Reordering計數器正在運行: 1)如果VR(X)VR(R

24、);或者 2)如果VR(X)落在接收窗口之外,且VR(X)VR(MR) 接收AM RLC實體應停止并重置t-Reordering計數器(5)如果t-Reordering計數器沒有運行(包含因上述過程而停止的情況): 1)如果VR(H)VR(R) a.接收AM RLC實體應啟動t-Reordering計數器 b.接收AM RLC實體應置VR(X)為VR(H)四、當t-Reordering計數器超時:當t-Reordering計數器超時:(1)接收AM RLC實體應更新VR(MS)為第一個不是所有字節段都被接收的AMD PDU的SN,且該SNVR(X)(2)如果VR(H)VR(MS): 1)接收A

25、M RLC實體應啟動t-Reordering計數器 2)接收AM RLC實體應置VR(X)為VR(H)2、ARQ過程(ARQ過程只在AM RLC實體執行)2.1 重傳(1)AM RLC實體接收端可以通過如下方式收到AMD PDU或AMD PDU部分的確認(其對等端AM RLC實體通知接收失敗): 由對等端的AM RLC實體發送的STATUS PDU(2)當接收到從對等端AM RLC實體發送的STATUS PDU所獲取的AMD PDU或AMD PDU部分的否認:1)如果對應的AMD PDU的SN落入VT(A)SNVT(S)的范圍內: 則認為這個AMD PDU或AMD PDU的一部分要求重傳(3)

26、當一個AMD PDU或AMD PDU的部分被認為需要重傳時: 1)如果該AMD PDU被認為是第一次重傳 接收AM RLC實體應將與該AMD PDU關聯的RETX_COUNT置02)否則,如果它或者它的一部分重傳沒有被掛起: 接收AM RLC實體應遞增RETX_COUNT3)如果RETX_COUNT=maxRetxThreshold: 接收AM RLC實體應通知上層已經達到最大重傳次數(4)當重傳一個AMD PDU時 1)如果該AMD PDU的大小能夠完全容納在由下層指示的RLC PDU重傳機會中: 接收AM RLC實體應傳輸這個AMD PDU(除了P域)2)否則: 接收AM RLC將這個AM

27、D PDU進行分段,使得分段后的AMD PDU片段大小可以完全被容納在有下層指示的傳輸機會中(5)當傳輸一個AMD PDU的一部分時: 1)AM RLC實體接收端應在需要的情況下對該AMD PDU部分進行分段,使得分段后的心AMD PDU片段可以完全被容納在下層指示的重傳機會中。(6)當形成一個新的AMD PDU片段時 1)只要把原來的AMD PDU數據字段映射到新的AMD PDU分段的數據部分 2)設置新的AMD PDU分段包頭 3)設置P域2.2 輪詢一個AM RLC實體可以輪詢它的對等端實體來觸發對等端的發送狀態報告一、發送一個AMD PDU或AMD PDU分段(1)當產生一個新的AMD

28、 PDU時 1)AM RLC實體接收端應對PDU_WITHOUT_POLL加1 2)對于每一個映射到RLC數據PDU數據域的新數據單元,AM RLC實體接收端應將BYTE_WITHOUT_POLL增加相應的字節數 3)如果PDU_WITHOUT_POLLpollPDU;或者 4)如果BYTE_WITHOUT_POLLpollBYTE AM RLC實體發送端應按照如下所述在RLC數據PDU中包含一個POLL(2)當組成一個AMD PDU或者AMD PDU分段時 1)如果在傳送了RLC數據PDU之后,發送緩存器和接收緩存器同時為空(不包括還沒有被確認的RLC數據PDU);或者 2)如果在傳送了RL

29、C數據PDU之后沒有新的RLC數據PDU需要被傳送 AM RLC發送實體應按照如下所述在RLC數據PDU中包含一個POLL(3)要在RLC數據PDU中包含一個POLL 1)AM RLC實體發送端應設置RLC數據PDU的P域為1 2)AM RLC實體發送端應設置PDU_WITHOUT_POLL為0 3)AM RLC試題發送端應設置BYTE_WITHOUT_POLL為0(4)在根據需要輕狂對VT(S)進行增值后,當向下層發送一個含poll的RLC數據PDU時 1)AM RLC實體發送端應設置POLL_SN為VT(S)1 2)如果t-PollRetransmit沒有運行AM RLC實體發送端應啟動t

30、-PollRetransmit計數器 3)否則 AM RLC實體發送端應重啟t-Pollretransmit計數器二、接收一個STATUS報告當從接收端RLC AM實體接收到一個STATUS報告時(1)如果狀態報告包含的RLC數據PDU的確認或否認序號等于POLL_SN 1)如果t-Pollretransmit計數器正在運行 AM RLC實體接收端應停止并重置t-Pollretransmit計數器三、t-Pollretransmit計數器超時(1)如果發送緩存器和接收緩存器同時為空(不包括還沒有被確認的RLC數據PDU);或者(2)如果沒有新的RLC數據PDU能夠傳輸(如,窗口溢出)、 1)A

31、M RLC實體發送端認為SNVT(S)1的AMD PDU需要重傳;或者 2)AMRLC實體發送端認為沒有被確認的AMD PDU需要重傳(3)AM RLC實體發送端在RLC數據PDU中包含一個poll2.3 狀態報告(1)AM RLC實體向它的對等端AM RLC實體發送STATUS來提供RLC PDU的確認或否認(2)RRC層可以配置RLC是否啟動狀態報告禁止功能(3)初始化STATUS報告觸發包括:1)從對等端AM RLC實體發起的輪詢 當從下層接收到一個SN=x且P域被置為1的RLC數據PDU時a.如果該PDU要被丟棄;或者b.如果xVR(MS)或xVR(MR) 觸發STATUS報告c.否則

32、 延遲觸發STATUS直到xVR(MS)(基于此可以確保RLC狀態報告是在HARQ重排序之后發送)2)檢測到一個RLC數據PDU接收失敗 AM RLC實體接收端應在t-Reordering計數器超時時觸發一次STATUS報告 (t-Reordering計數器的超同時觸發了VR(MS)的更新和STATUS報告的觸發。但STATUS報告的觸發應該在VR(MS)更新觸發之后)(2)當STATUS報告被觸發: 1)如果t-StatusProhibit計數器沒有運行 在下層指示的第一次重傳機會中,構建一個STATUS PDU并將其傳給下層 2)否則 在t-StatusProhibit計數器超時后,在下層

33、指示的第一次重傳機會中,構建一個STATUS PDU即使在t-StatusProhibit計數器運行時已經觸發過很多次,并將此傳送給下層(3)當一個STATUS PDU被傳送給下層時 1)AM RLC實體接收端應啟動t-StatusProhibit計數器(4)當構建一個STATUS PDU時 1)對于滿足VR(R)SNVR(MS)的還沒有被完全接收到的AMD PDU,按照SN的升序和PDU字節段升序的方式,從SNVR(R)開始知道這個STATUS PDU的大小已經達到下層只是發送機會的大小為止。 a.對于一個還沒有被接收到任何字節分段的AMD PDU AM RLC實體接收端應在STATUS P

34、DU中包含一個NACK_SN,并將其設為該AMD PDU的SN值 b.對于一個部分接收到的AMD PDU,它的一個還沒有被接收到的連續的字節分段 AM RLC實體接收端應在STATUS PDU中包含NACK_SN、SOstart及SOend 2)將ACK_SN設為下一個沒有被接收到的RLC數據PDU的SN,且其在STATUS PDU中并不是丟失狀態3、SDU丟棄過程當上層指示丟棄一個特定的RLC SDU時,AM RLC實體發送端或UM RLC實體接收端應將還沒有任何分段映射到RLC AMD PDU的RLC SDU直接丟棄。4、重建過程RLC重建是在RRC層的請求下執行,這個功能為AM、UM和T

35、M RLC實體均適用(1)當RRC層指示一個RLC實體需要一次重建時1)如果該實體為TM RLC發送實體則丟棄所有RLC SDU2)如果該實體為UM RLC接收實體 a.在可能的情況下,在接收側從所有沒有被傳送的SNVT(MR)的AMD PDU中重組RLC SDU,并將所有重組完成的RLC SDU按照RLC SN的升序傳送給上層。 b.丟棄所有剩余的RLC SDU 3)如果該實體為UM RLC發送實體 丟棄所有的RLC SDU 4)如果該實體為AM RLC實體 a.在可能的情況下,在接收側將所有沒有被傳送的SNVR(MR)的UMD PDU重組為RLC SDU,去掉RLC頭,并將所有重組完成的R

36、LC SDU按照RLC SN的升序傳送給上層。 b.丟棄接收側剩余的AMD PDU和AMD PDU字節分段 c.丟棄發送側所有的RLC SDU和AMD PDU d.丟棄所有的RLC控制PDU 5)RLC實體應停止并重置所有計數器 6)RLC實體應重置所有狀態變量為初始值5、對未知的、意外的以及錯誤的協議數據的處理當一個RLC實體接收到包含著保留值或無效值的RLC PDU時 RLC實體應丟棄該接收到的PDU零碎:(不在總結的整體結構之中但覺得應該對以后也有用的零散東西)1、UM 傳輸解析已提交的PDU重排序窗口還未接收到PDU丟失的PDU丟失的PDUVR(UH)-UM_window_sizeVR

37、(UR)需要重排序PDU的下邊界VR(UH)接收到的PDU最大序列號加1已丟失PDU已提交的PDU還未收到的PDU待組包的PDU其中重排序窗口的上邊界為當前收到的所有UMD PDU中序列號中最高的序列號加一獲得:用VR(UH)表示;重排序窗口的下邊界是由上邊界減去重排序窗口大小而得到的一個數值。如果新接收到的UMD PDU其序列號位于重排序窗口之外,則接收UM RLC實體認為其為新數據,相應更新重排序窗口的上邊界,并將該數據放入接收緩存,等待進一步處理。如果接收到的UMD PDU其序列號位于重排序窗口之內,則需要進一步判斷該序列號的 PDU 是否屬于重復接收或則已經超過了重排序等待時間,如果是

38、這兩類PDU,則UM RLC接收實體直接采取刪除這個PDU;否則,這個UMD PDU是一個正常接收到的PDU,則放入接收緩存,等待進一步處理。 UM RLC接收實體基于重排序計時器進行重排序操作,重排序計時器的具體取值由高層配置。UM RLC 接收實體對未接收到的PDU對應的序列號啟動重排序計時器,在重排序計時器超時后,如果該PDU仍然沒有收到,則放棄對該PDU的等待并相應的更新重排序等待的下邊界;在重排序計時器超時前,收到了該PDU,則按照正常接收處理,將PDU放入接收緩存。UM RLC 接收實體并對每一個還沒有接收到的PDU對應序列號都啟動一個重排序計時器,而是整個接收UM RLC實體最多

39、維護一個重排序計時器,以相應的變量記錄每一次啟動重排序計時器對應的序列號上邊界和下邊界,對該范圍內的所有序列號空缺統一處理,當該范圍內所有序列號空缺中的PDU都正確接收,則停止該重排序計時器;當該重排序計時器超時后,如果仍然有新的接收序列號空隙,則對后續所有新的空隙重啟重排序計時器,并記錄相應的重排序等待的序列號上邊界和下邊界。 對于UM RLC接收實體中放置于接收緩存中的PDU,一旦該PDU序列號超出了重排序窗口或者超出了目前重排序等待的下邊界,則將該UMD PDU去掉RLC頭部,重組成為RLC SDU并按照序列號的升序順序遞交到高層。2、AM傳輸解析已經收到的肯定確認的PDU發送窗口 VT

40、(MS)=VT(A)+AM_Window_SizeVT(S)下一個將傳輸的PDU序列號已提交PDU后請求重傳的PDUVT(A)下一個將收到確認的PDU序列號AM RLC實體發送端優先發送重傳的RLC PDU,AM RLC實體發送端維護狀態變量VT(S),含義為分配給下一個新生成的RLC PDU的序列號數值。該變量初始值為零,當生成一個新的 AMD PDU 時,將該變量作為該PDU的序列號,然后將該變量的數值加一。AM RLC 實體發送端維護一個發送窗口,如圖所示,發送窗口的下邊界定義為收到接收端肯定確認且連續的最高PDU緊接著的下一個序列號的數值。發送窗口的上邊界為下邊界的數值加上窗口的大小。

41、窗口大小為常數值 512,即為AM序列號空間長度 1024的一半。AM RLC實體發送端不會發送任何序列號位于發送窗口之外的AMD PDU到底層。AM RLC實體發送端根據對端發來的狀態PDU中包含的肯定確認來更新發送窗口變量,發送窗口的下邊界總是更新為當前發送窗口內的最小需要收到肯定確認的PDU的序列號。AM RLC實體發送端根據對端發來的狀態PDU中包含的肯定確認來更新發送窗口變量,發送窗口的下邊界總是更新為當前發送窗口內的最小需要收到肯定確認的PDU的序列號。接收窗口重排序以及狀態報告操作的時間窗已提交的PDU未成功接收未成功接收丟失的PDUVR(H)接收到的PDU最大序列號加1VR(M

42、S)經過重排序檢測的PDU序列號上邊界VR(R)下一個完整接收的連續PDU的序列號AM RLC 實體接收端基于AMD PDU的序列號來完成窗口維護和更新,重復接收檢測、重排序和狀態報告等功能。AMD PDU的序列號10比特,窗口大小為512在進行序列號比較和判斷等操作時,需要考慮序列號翻轉問題。序列號實際取值范圍為0,1023,在對序列號進行比較判斷是需要進行模1024。AM RLC實體接收端維護一個接收窗口,如圖所示,其中接收窗口的下邊界為當前接收到的連續AMD PDU中序列號最高的緊接著的一個序列號數值VR(R);接收窗口的上邊界是由下邊界加上窗口大小而得到的數值。如果新接收到的AMD P

43、DU其序列號位于接收窗口之外或者該PDU分段已經收到過,則AM RLC實體接收端刪除收到的數據;否則放入接收緩存,等待進一步處理,對已經收到的PDU分段,刪除其重復接收部分。AM RLC實體接收端基于重排序計時器來進行重排序操作,重排序進行重排序操作,重排序計時器的具體取值由高層配置。在重排序計時器時后,該空隙處的 PDU 仍舊沒有收到,則認為檢測到RLC PDU接收失敗,根據情況發起狀態報告過程;在重排序計時器超時前,收到了空隙出的 PDU,則按照正常接受處理,將PDU放入接收緩存中,AM RLC實體接收端并不是對每一處序列號空隙都啟動一個重排序計時器,而是整個AM RLC實體接收端僅維護最

44、多一個重排序計時器,以相應變量記錄每次啟動的重排序計時器對應的序列號上邊界和下邊界,對該范圍內的序列號空隙統一對待;該范圍內所有序列號空隙處的PDU都正確接收后,停止該重排序計時器;當該重排序計時器超時后,如果后續仍舊有新的接收序列號空隙,則對后續的空隙重啟重排序計時器,并記錄相應的重排序等待的序列號上邊界和下邊界。位于AM RLC實體接收端接收緩存中的PDU,一旦它們的序列號超出了接收窗口,則將該AMD PDU去掉RLC頭部,重組成為了RLC SDU并按照序列號的升序順序發送到高層。ARQ過程AMRLC實體發送端收到接收端的STATUS PDU有關AMD PDU或AMD PDU分段的否定確認,對于AMDPDU序列號位于發送窗口內的已發送部分,認為該確認的AMD PDU或AMD PDU分段需要重傳,記錄該AMD PDU或AMD PDU分段的重傳次數,初次重傳計數器為0,以后每次重傳計數器加1,當計數器大于重傳次數是,向上層報告。重傳AMD PDU或AMD PDU分段式其輪詢比特需根據當前需要重新設置,當下層指示的傳輸機會中RLC PDU的大小足夠容納需要重傳的AMD PDU時,則直接發送該AMD PDU至下層,否則需要根據下層傳輸機會中指示的大小重新對需要重傳的AMD PDU進行分段,如果需要重傳數據本身為AMD PDU分段式,則根據需要

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論