1. 程式人生 > >LTE RLC理解(一)

LTE RLC理解(一)

Based on 36.322 R10

5.1 資料傳輸過程

5.1.1 TM資料傳輸

不管是傳送還是接收,都不對資料包做任何修改,透傳給上層或下層,且不做任何流控或錯誤檢測等。

5.1.2 UM資料傳輸

5.1.2.1 傳送

當傳送一個新的UMD PDU給下層時,傳送者RLC實體應該:

    - 設定VT(US)為UMD PDU的SN,然後將VT(US)增加1

5.1.2.2 接收

5.1.2.2.1 一般

接收者UM RLC實體應根據狀態變數VR(UH)維護一個重排序視窗,如下:

    - 若滿足(VR(UH) - UM_Window_Size) <= SN < VR(UH),則SN落在視窗內

    - 否則SN落於視窗外

當從底層收到UMD PDU,接收者UM RLC實體應該:

    - 要麼丟棄這個UMD PDU,要麼將其放入接收緩衝區內(5.1.2.2.2)

    - 如果將其放入接收緩衝區,那麼:

        - 更新狀態變數,重新組裝並傳送給上層,根據需要開始/停止t_Reordering(5.1.2.2.3)

當t_Reordering超時,接收者UM RLC實體應該:

    - 更新狀態變數,重新組裝並傳送給上層,根據需要開始t_Reordering(5.1.2.2.4)

5.1.2.2.2 從下層收到UMD PDU時的行動

當SN=x的UMD PDU從下層收到,接收者UM RLC實體應該:

    - 如果 VR(UR) < x < VR(UH) 且 SN=x的PDU已經收到過;或者

    - 如果 VR(UH) - UM_Window_Size) <= x < VR(UR)

        - 丟棄這個UMD PDU

    - 否則

        - 將收到的UMD PDU放入接收緩衝區

5.1.2.2.3 當UMD PDU放入接收緩衝區時的行動

當SN=x的UMD PDU放入到接收緩衝區,接收者UM RLC實體應該:

    - 如果x落於重排序視窗之外

        - 更新VR(UH)=VR(UH)+1

        - 重組任何沒有落入重排序視窗的PDU,這個過程包括去除RLC包頭,並按照升序方式遞交到上層實體

        - 如果VR(UR)沒有落入排序視窗,那麼:

            - 更新VR(UR) = VR(UH) -UM_window_size

如果接收緩衝裡存有一個PDU,它的SN=VR(UR),那麼:

    - 更新VR(UR)為第一個沒有接收到的PDU,它的SN大於當前的VR(UR),

    - 然後重組所有SN < 更新後的VR(UR)的PDU,這個過程包括去除RLC包頭,並按照升序方式遞交到上層實體

如果T_ordering正在執行:

    - 如果VR(UX) <= VR(UR),或則,

    - 如果VR(UX)沒有落入排序視窗,並且VR(UX)不等於VR(UH),則

        - 停止並重啟T_ordering計時器

如果T_ordering沒有執行:

    - 如果VR(UH) > VR(UR):

        - 啟動該計時器

        - 設定VR(UX) = VR (UH)

5.1.2.2.4 t_Reordering超時後的動作

當T_ordering計時器超時,接收者UM RLC實體應該:

    - 更新VR(UR)為SN > VR(UX)的第一個沒有收到的UMD PDU

    - 重組所有SN小於更新後的VR(UR)的UMD PDU,這個過程包括去除RLC包頭,並按照升序方式遞交到上層實體

    - 如果VR(UH) > VR(UR):

        - 啟動該計時器

        - 設定VR(UX) = VR (UH)

eg for UM receiving:


1. If SN=31 or SN= 5 arrives,discard it.

2. If SN=3 arrives,reassemble SN=3 to 5, update VR(UR)=6, VR(UX)=7, VR(UH)=11.

3. If SN=3 and 6 arrives, reassemble SN=3 to 8, update VR(UR)=9. Since VR(UR)>VR(UX), stop the timer. Since VR(R)<VR(UH) then start the timer, VR(UX)=11

4. If Timer expires,VR(UR)= 9, reassemble SN=4 to 8, then then start the timer, VR(UX)=11.

5. If SN=22 arrives,update VR(UH)=23, reassemble from SN=4 to 8, update VR(UR)=9, VR(UX)=23.