NR SRB and message transfer
微信同步更新歡迎關注同名modem協議筆記
這篇所說的消息是指SM(session management) MM(mobility management)和RRC(?Radio Resource Control)層的信令,即空口信令,這里不會看每條信令的具體IE,只是簡單看下每層信令的傳輸流程。
和LTE一樣,NAS 層的SM信令需要特定的MM信令承載然后傳遞給RRC層,MM信令也需要RRC層的信令的承載,傳遞給L2->L1最后通過天線發送到網絡端。先看下SM/MM消息都包含哪些。
NAS SM/MM message如下
5GSM消息會通過特定的5GMM消息傳輸,主要過程就是通過特定5GMM消息的IE表示具體的5GSM消息。5GSM消息僅僅只能在5GMM context建立后觸發,例如initial注冊過程,完成注冊后,有需要建立PDU時,才會觸發PDU session establishment request。
?
而5GMM用于承載5GSM的消息就是UL NAS TRANSPORT/DL NAS TRANSPORT。
24.501中有詳細描述了初始化UL/DL NAS TRANSPORT 的場景,如下圖是UL?NAS TRANSPORT的規定比較繁瑣,這里僅對一些場景舉例說明。
例如?在connected mode,UE要發送單個5GSM消息時,就會觸發UL NAS TRANSPORT,這時候UL NAS TRANSPORT中的IE有其規定,例如要包含PDU session 信息(PDU session ID,old PDU session ID,S-NSSAI,mapped S-NSSAI,DNN,request type);要將Payload container type 設置為“N1 SM information”,Payload container對應的就是特定的5GMS消息。?
下圖示實際log中建立ims PDU session時UL NAS transport的截圖,對照看下對應的就是上面的設置要求。
下面是其他各個場景對應UL NAS transport的設置規定,僅僅是列出來,方便后續查找,不做說明。
再看下RRC層如何承載NAS信令,類似的RRC層通過ULInformationTransfer/DLInformation transfer來傳輸NAS 或non-3GPP dedicated消息。
ULInformationTransfer 消息用來傳輸上行NAS或non-3GPP dedicated消息。
UL information transfer的目的就是傳遞UE發送給網絡端的NAS dedicated information,當UE在RRC connected mode,有NAS dedicated information 發送時,就會進行這個過程。UE會將ULinfirmationTransfer 的IE dedicatedNAS-Message 設置為NAS PDU,然后交由底層(L2->L1)發送出去。
如果發生Failure,比如在AS security沒有激活時發生了RLF或者發生PDCP?重建及傳輸UL information transfer的SRB release/addtiton ,或者PCell/PSCell?發生改變,RRC connection re-establishment等場景,這時候RRC層要將failure告知NAS層,這時候NAS要根據RRC層報上的failure原因進行特定的處理,這部分異常處理主要在24.501 5.4.5.2.6章節中描述,比如由于?UAC?fail,access attempt barred,TAI?發生變化等等。
如上圖是RRC層的定義,主要將其中的IE dedicatedNAS-message 設置成NAS傳下來的消息,送出去即可。傳輸ULInformationTransfer?的Signalling radio bearer:是SRB2 或SRB1 (在SRB2沒有建立起來之前用SRB1傳輸). 如果SRB2由于某些原因被suspend,UE要等到SRB2恢復正常后才能傳輸。傳輸方式對應的是RLC AM 模式,即可以通過RLC ARQ過程,在得到網絡端ack消息后才能確認網絡端有正常收到這條消息,常見的fail原因 ,比如在信號狀況不佳或者網絡異常的情況下,UE一直收不到RLC ack,UE就會重傳, UL RLC 重傳達到最大次數后會引發RLF等等。下圖是實際log的截圖。
DLInformationTransfer對應的就是DL NAS消息的傳輸過程。
在RRC connected mode ,當網絡端NG-RAN有NAS dedicated消息發送給UE時就會觸發。過程類似,網絡端會將IE dedicatedNAS-message 設置為接收到的NAS層消息,如果還包含referenceTimeInfo IE時,要將對應的time,referenceSFN timeInfoType等都設置好,這個Time相關的IE是R16才新增的,在23.501 5.27.1.2中描述,主要用于UE端的時間同步,RRC層結構如下。
傳輸ULInformationTransfer?的Signalling radio bearer:是SRB2 或SRB1 (在SRB2沒有建立起來之前用SRB1傳輸). 如果SRB2由于某些原因被suspend,UE要等到SRB2恢復正常后才能傳輸。傳輸方式對應的是RLC AM 模式,下圖是實際log,對應的是R15版本協議,肯定沒有上面提到的time相關的IE。
除了上述DLInformationtransfer/ULInformationtransfer,還有一些其他消息也會順帶傳輸NAS層的消息,例如RRCSetupComplete,RRCReconfiguration,RRCResumeComplete等,具體情況就不說了,可以搜下38.331看下,下面是實際log中的一些截圖。
?
?
?SM/MM/RRC層的消息傳輸,基本上說完了,下面順帶看下SRB的內容。
SRB 全稱signalling Radio Bearers,即傳輸RRC/NAS消息的RB,通常包含SRB0/SRB1/SRB2,在某些DC場景可能會有SRB3。SRB1主要發送RRC信令,SRB2建立后主要用于發送DL/ULInformationTransfer,下面通過一張圖說明下SRB的使用場景。
上圖是UE從RRC idle進入connected的信令圖,簡單的說在SRB1 沒有建立前的消息用SRB0傳輸,此時對應的是CCCH 邏輯信道,例如初始注冊進行RA的場景,SRB0傳輸的消息對應的就是第一步的RRCSetuprequest 和第二步的RRC setup消息;而SRB1一般在RRC setup信令中配置下來,這之后的信令都由SRB1收發。
第一條NAS消息Registration request就是通過RRCSetupComplete發送給網絡端;4/4a/5/5a 步對應的過程可以是authentication或identity過程。
第6步網絡端AMF將準備的UE context data (包括PDU session context, the Security Key, UE Radio Capability and UE Security Capabilities等) 發送給gNB,之后第7步gNB就會和UE激活AS security,在AS security激活后就會建立SRB2。
第8步 gNB下發RRCreconfiguration讓UE建立SRB2和對應的DRBs,對應實際log一般會在UE送出去第一條PDU session establishment request后,通過接下來的第一條RRCreconfiguration配置SRB2和DRB下來,之后的RRC信令DL/ULInformationTransfer都由SRB2進行收發。
第9步 gNB通知AMF完成setup過程。
?
實際log中SRB1/SRB2 配置下來的對應消息如下。
?
上述是SA場景不會出現SRB3,接下來就來看看SRB3相關的內容。
SRB3適用的場景是EN-DC NGEN-DC NR-DC,SRB3就是SN和UE之間建立的一個SRB,是否建立SRB3是由SN決定,SRB3的建立和release是通過Secondary Node Addition和Secondary Node Change過程完成的,如果要對SRB3 進行重配置,可以通過Secondary Node Modification完成。
在SRB3建立起來后,SN和UE之間就可以直接通信,不必再通過SN->MN->UE的路徑發送消息,例如可以在SN和UE之間直接發送RRC Reconfiguration ?,RRC Reconfiguration ?complete,Measurement report failure Information等消息,如下圖,但是實際上ENDC場景一般都沒有enable SRB3,看不到SRB3的傳輸過程。
還有一個概念Split SRB?也是僅適用于MR-DC場景,其是一個在MN和UE 間建立的SRB,如下圖。
SRB1和SRB2均支持Split SRB(SRB0和SRB3不支持Split SRB)。Split SRB的RRC PDU通過NR PDCP進行加密和完整性保護。
Split SRB可由MN在輔助節點添加或修改過程中配置,SN配置部分由SN提供。UE可同時配置Split SRB和SRB3,SRB3和Split SRB在SCG可獨立配置。
對于Split SRB下行傳輸路徑的選擇取決于網絡實現;對于上行鏈路根據MN RRC信令配置決定是用MCG path還是在MCG和SCG path進行重復傳輸。
如果未配置Split SRB1,UE可以使用SRB3在ULInformationTransfer MRDC消息中向MN發送封裝的MCG Failure Information消息,并在響應中接收封裝的 RRC重配置、MobilityFromNRCommand 消息;在DLInformation TransferMRDC消息中發送Mobility From EUTRA Command或RRC釋放消息。
SRB3是38.331中定義的一種SRB,使用的是NR-DCCH邏輯信道。SRB3上的RRC PDU使用NR PDCP加密和完整性保護,安全密鑰來自S-KgNB。SN為SRB3選擇加密和完整性保護算法,并在SCG配置中將它們提供給MN以傳輸給UE。
SRB3比所有的DRB的優先級都高,而split SRB1和SRB3的優先級是相同的,在SCG 釋放掉的同時,SRB3也會release掉。
最后是幾張從協議中截取的相關應用場景的流程圖,主要在TS 37.340中,這個spec不算長,感興趣可以看下。
?
?
?
總結
以上是生活随笔為你收集整理的NR SRB and message transfer的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 掌财社:一边亏钱一边被骂,爱奇艺需要出路
- 下一篇: 用Qt实现一个桌面弹幕程序(六)-- -