5G 现网信令参数学习(3) - RrcSetup(1)

打印 上一主题 下一主题

主题 784|帖子 784|积分 2352

目录
1. rlc-BearerToAddModList
1.1 rlc-Config
1.1.1 ul-AM-RLC
1.1.2 dl-AM-RLC
1.2 mac-LogicalChannelConfig
2. mac-CellGroupConfig
2.1 schedulingRequestConfig
2.2 bsr-Config 
2.3 tag-Config
2.4 phr-Config
2.5 skipUplinkTxDynamic
3. physicalCellGroupConfig
3.1 p-NR-FR1
3.2 pdsch-HARQ-ACK-Codebook


RRCSetup消息主要包含radioBearerConfigmasterCellGroup两个IE,此中radioBearerConfig包含了SRB1的配置
  1. radioBearerConfig
  2. {
  3.   srb-ToAddModList
  4.   {
  5.     {
  6.       srb-Identity 1,
  7.       pdcp-Config
  8.       {
  9.         t-Reordering ms3000
  10.       }
  11.     }
  12.   }
  13. },
复制代码
masterCellGroup则包含了较为复杂的内容,下面重点描述这个IE。
masterCellGroup在RRC协议中的IE范例是CellGroupConfig,这个IE可以用于配置主小区组(master cell group ,MCG)或者辅小区组(secondary cell group,SCG)。该IE可以由一个MAC实体、逻辑信道集、一个主小区(SpCell)以及一个或多个辅小区(SCells)构成。

此中,cellGroupId用于标识这个小区组,取值范围0~maxSecondaryCellGroups。在当前协议版本中(R18),maxSecondaryCellGroups = 3。示例中,该参数的值为0
  1. cellGroupId 0,
复制代码
1. rlc-BearerToAddModList

示例中,这个list只有一个RLC-BearerConfig,即SRB1的无线承载配置。
logicalChannelIdentityBearer
无线承载对应的逻辑信道ID,示例中为1
servedRadioBearer
对应的无线承载,可以是SRB或者DRB,示例中为SRB1
  1. logicalChannelIdentity 1,
  2. servedRadioBearer srb-Identity : 1,
复制代码
1.1 rlc-Config

RLC配置可以分为AM或者UM两种模式。示例中的SRB1一定是一个AM配置。
  1. rlc-Config am :
  2. {
  3.   ul-AM-RLC
  4.   {
  5.     sn-FieldLength size12,
  6.     t-PollRetransmit ms40,
  7.     pollPDU infinity,
  8.     pollByte infinity,
  9.     maxRetxThreshold t32
  10.   },
  11.   dl-AM-RLC
  12.   {
  13.     sn-FieldLength size12,
  14.     t-Reassembly ms40,
  15.     t-StatusProhibit ms0
  16.   }
  17. },
复制代码
1.1.1 ul-AM-RLC

sn-FieldLength
指示RLC PDU的序列号(长度)。对于RLC AM而言,仅有size12size18两种,见38.322 6.2.2.4。示例中为size12,表示序列号长度为12比特,因此序列号取值范围为0~4095。
t-PollRetransmit
RLC AM中用于Poll机制的一个定时器,单位:ms。示例中的值为40ms。
Poll机制是RLC AM中一种用于检测吸收端是否正确地收到了数据包的机制,它是一种反馈机制。大致如下:


  • 发送端发送一个带有poll bit的RLC PDU,此中polling bit设置在RLC header中
  • 吸收端收到这个poll bit时,会反馈一个Status PDU,包含全部已经ACK或者NACK的PDU。此中ACK表示正确地吸收了这个PDU,NACK表示错误或者丢失的PDU
  • 发送端吸收这个Status PDU,并决定是否对全部NACK的PDU举行重传
pollPDU
该参数用于在poll机制中、决定是否设置一个Poll,见38.322 5.3.3.2


该参数假如取值p4则对应4个PDUs,p8对应8个PDUs;示例中的infinity则对应无穷个PDUs,即不通过PDU_WITHOUT_POLL的计数来添加Poll。
pollByte
和前面的参数pollPdu作用雷同,只是门限值为bytes。
该参数假如取值kB25则对应25 kBytes,kB50对应50 kBytes;示例中的infinity则对应无穷bytes,即不通过BYTE_WITHOUT_POLL的计数来添加Poll。
maxRetxThreshold
该参数用于在发送端限定一个RLC SDU的重传次数。当重传次数达到这个最大值门限时,RLC会向上层陈诉重传次数达到最大(见38.322 5.3.2),上层一样平常会Call drop。

该参数的值tx表示有x次重传,示例中t32表示最大32次重传。
1.1.2 dl-AM-RLC

sn-FieldLength
ul-AM-RLC中的sn-FieldLength
t-Reassembly
重新组装(Reassembly)的定时器,单位ms。
在RLC层,分段(Segmentation)和组装(Reassembly)是一对互逆的过程。RLC层此中一个职能是负责数据有序地发送,因此,在吸收端,当收到的数据出现序次庞杂时,RLC会等待直到全部有序数据都收到为止,再将全部这些数据段组装(Reassembly)然后提交给上层。有时间,RLC大概一直等不到全部有序数据都到达,为了防止RLC吸收端无穷制地等下去,因此设置了这个t-Reassembly定时器。当这个定时器超时的时间,即使没有等到全部有序数据到达,RLC也会将受到的数据提交个上层,并更新相关参数。
RLC AM和UM都存在分段(Segmentation)和组装(Reassembly),因此两种模式均有对应的t-Reassembly。示例中的t-Reassembly为ms40,表示定时器超时时长为40ms。
RLC AM的t-Reassembly用法见38.322 5.2.3.2
t-StatusProhibit
该定时器用于AM RLC吸收端、决定是否克制STATUS PDU的发送。只有在该定时器超时的时间,才会产生并发送STATUS PDU。该定时器的详细用法见38.322 5.3.4
示例中的ms0表示该定时器不会运行,即这个定时器不会制止STATUS PDU的产生和发送。
1.2 mac-LogicalChannelConfig

  1. mac-LogicalChannelConfig
  2. {
  3.   ul-SpecificParameters
  4.   {
  5.     priority 3,
  6.     prioritisedBitRate infinity,
  7.     bucketSizeDuration ms300,
  8.     logicalChannelGroup 0,
  9.     schedulingRequestID 0,
  10.     logicalChannelSR-Mask FALSE,
  11.     logicalChannelSR-DelayTimerApplied FALSE
  12.   }
  13. }
复制代码
LogicalChannelConfig IE中主要包含ul-SpecificParameters这个IE,包含以下参数:
priority
逻辑信道优先级,取值范围1~16,该参数的值越大,优先级越低。见38.321 5.4.3.1.1
prioritisedBitRate
即PBR,MAC层根据上行grant、分配上行数据的令牌桶算法参数之一。该参数表示单位时间内应该给某个逻辑信道分配的数据量(比特数),因此该参数实际上相当于这个逻辑信道的一个包管速率。每个逻辑信道都具有自己的PBR。
示例中,PBR为infinity,表示对当前逻辑信道的包管速率无穷大,即尽大概满足。由于该PBR所属的逻辑信道对应的是SRB1,优先级很高(值为3),实际上infinity就是优先且最大满足。另外,按照38.331的描述,对于SRB,prioritisedBitRate也只能设置为infinity。
bucketSizeDuration
即BSD,和PBR一样、也是MAC层令牌桶算法参数之一。该参数表示PBR持续增长的最大时长,即令牌桶的桶深。(PBR x BSD)表示的寄义就是当前逻辑信道可以分配的最大比特数。这个当前即指MAC实行当前Logical Channel Prioritization过程的时间。和PBR一样,每个逻辑信道都具有自己的BSD。
示例中,BSD=300ms,由于PBR=infinity,所以这个参数的值在算法中并不是很重要,因为(PBR x BSD)相当于还是“infinity"。
关于令牌桶算法的讲解,可以参考LTE MAC层令牌桶算法_prioritisedbitrate-CSDN博客,协议部门可以参考38.321 5.4.3.1。
logicalChannelGroup
逻辑信道组ID。取值范围0~maxLCG-ID,R18协议下,maxLCG-ID=7。
schedulingRequestID
指示这个逻辑信道的调度请求(SR)配置。这个ID是一个SR配置集合的索引,这个SR配置集合在后面的IE schedulingRequestToAddModList中给出。
logicalChannelSR-Mask
该参数用于控制配置的上行grants(CUG)是否可以触发调度请求(SR)。此中配置的上行grants是指预先配置好的上行grant,好比半持续调度(SPS)。CUG分为type1和type2两种,type1是指通过RRC配置的上行grant,type2是指通过PDCCH配置的上行grant(见38.321 5.8.2)。type1最典型的就是LTE中的SPS,常用于voice等业务;type2用于突发的上行数据。
示例中参数的值为false,表示该逻辑信道没有SR masking,即允许触发SR。
logicalChannelSR-DelayTimerApplied
该参数指示当前逻辑信道在准备触发SR发送的时间,使用应用一个耽误定时器,即logicalChannelSR-DelayTimer。
示例中参数的值为false,表示不应用这个耽误定时器,一旦有SR触发,则立刻发送SR。
2. mac-CellGroupConfig

2.1 schedulingRequestConfig

  1. schedulingRequestConfig
  2. {
  3.   schedulingRequestToAddModList
  4.   {
  5.     {
  6.       schedulingRequestId 0,
  7.       sr-ProhibitTimer ms16,
  8.       sr-TransMax n32
  9.     }
  10.   }
  11. },
复制代码
该IE包含一个schedulingRequestToAddModList和一个schedulingRequestToReleaseList,示例中没有release list。此中,schedulingRequestToAddModList包含了一个由SchedulingRequestToAddMod构成的list。SchedulingRequestToAddMod中的IE如下说明。
schedulingRequestId
当前SR配置的索引,对于某个逻辑信道而言,其对应的SR配置中会携带这个索引(见mac-LogicalChannelConfig中的schedulingRequestID),以便映射到这里对应的SR配置。
示例中,该参数的值为0,且前面mac-LogicalChannelConfig中的schedulingRequestID也为0
sr-ProhibitTimer
这个定时器的作用是,当UE发送一个SR之后,至少在这个定时器给出的时间范围内,不能再次发送SR。
示例中的值ms16,表示16毫秒。
sr-TransMax
表示一个SR的最大发送次数,当超过这个次数后,UE一样平常会call drop。
一个SR一定会有其对应的MAC PDU,假如这个MAC PDU发送了,则这个SR就会被cancel,SR_COUNTER就会从0开始计数。
示例中的值n32,表示32次。
2.2 bsr-Config 

  1. bsr-Config
  2. {
  3.   periodicBSR-Timer sf5,
  4.   retxBSR-Timer sf320
  5. },
复制代码
BSR(Buffer Status Report)配置。
periodicBSR-Timer
周期BSR(Periodic BSR)的定时器,顾名思义即周期性发送的BSR。参数值中的"sf"表示子帧。
示例中sf5表示5个子帧。和LTE一样,5G中一个子帧也是1ms,区别是一个子帧包含的slot数不同,和numerology有关。
retxBSR-Timer
我的明白,这个timer的作用是为了给BSR引入“重传”机制。见下面38.321 5.4.5中的描述:

上面这段协议的描述,意思就是当发送了一个BSR之后,就会启动retxBSR-Timer这个定时器。
再看下面这段:

retxBSR-Timer这个定时器超时之后,MAC实体会认为这个BSR对应的逻辑信道具有最高优先级。
将上面两点结合起来,就是一个典型的“重传”机制。
既然有了周期BSR,为什么还要引入BSR重传机制?
需要注意的是,BSR是MAC CE,是需要UL grant才气发送的。假如没有ul grant,即使是周期BSR,也是无法发送的。另一方面,当没有ul grant、同时又有BSR需要发送的时间,只有Regular BSR可以触发SR(调度请求)以等待获取ul grant。

retxBSR-Timer超时后触发的BSR恰好是Regular BSR

因此,周期BSR和重传BSR其实是不会相互冲突的。周期BSR用于数据量比力大、且数据流比力平稳的一段时期,此时,由于有稳定和持续不断的ul grant,可以供UE提供周期BSR上报。而重传BSR用于偶发的数据,通过SR/Regular  BSR的机制上报,当初次触发了Regular  BSR之后,也依然无法获取ul grant举行BSR的上报之后,一旦retxBSR-Timer超时,便会再次触发这个BSR(即重传BSR),和初次触发BSR不同的是:此时重新触发的BSR对应的逻辑信道具有最高优先级。
示例中,值sf320即320个子帧,320ms。
2.3 tag-Config

  1. tag-Config
  2. {
  3.   tag-ToAddModList
  4.   {
  5.     {
  6.       tag-Id 0,
  7.       timeAlignmentTimer infinity
  8.     }
  9.   }
  10. },
复制代码
TAG-Config包含两个list

示例中仅有tag-ToAddModList。该list包含一组TAG的配置参数
tag-Id
指示当前SpCell或者SCell的TAG的索引。该值在一个小区组(MCG或者SCG)中是唯一的。
timeAlignmentTimer
该timer定义在38.321中,表示在多长时间范围内MAC实体认为属于该TAG的服务小区是上行时间对齐的。当这个定时器超时时,UE一样平常会call drop。
示例中,infinity表示该定时器不会超时。
2.4 phr-Config

  1. phr-Config setup :
  2. {
  3.   phr-PeriodicTimer sf100,
  4.   phr-ProhibitTimer sf100,
  5.   phr-Tx-PowerFactorChange dB1,
  6.   multiplePHR FALSE,
  7.   dummy FALSE,
  8.   phr-Type2OtherCell FALSE,
  9.   phr-ModeOtherCG virtual
  10. },
复制代码
该IE用于配置UE的功率余量上报(Power Headroom Report,PHR)的相关参数。
phr-PeriodicTimer
周期PHR的定时器,该定时器超时后,会触发PHR。
示例中sf100表示100个子帧,即100ms。
phr-ProhibitTimer
PHR的克订定时器,该定时器超时后,假如满足一定条件,会触发PHR。此中,“一定条件”是指对功率余量的影响因素改变了、且达到一定的门限,具体见38.321 5.4.6。
示例中sf100表示100个子帧,即100ms。
phr-Tx-PowerFactorChange
前面提到的“一定条件”中的“门限”,具体见38.321 5.4.6。
示例中的dB1表示1dB。
multiplePHR 
指示功率余量是使用Single Entry PHR MAC CE上报还是使用Multiple Entry PHR MAC CE上报。对于MR-DC以及NR UL CA,网络会配置这个参数为true;否则为false。
示例中,FALSE表示使用Single Entry PHR MAC CE上报。
phr-Type2OtherCell
指示是否为别的MAC实体的SpCell配置type 2的PHR。假如没有E-UTRA MAC实体,网络会设置这个参数为false。
Type 2 PH:UE在别的MAC实体的SpCell上的名义最大发送功率和其UL-SCH/PUCCH发送功率之间的差异。而Type 1PH则是指当前服务小区上的名义和实际发送功率之差。
Type 2 PH用于EN-DC、NE-DC、以及NGEN-DC(4G主站,5G核心网)中的E-UTRA MAC实体。
示例中的FALSE表示没有配置Type 2的PHR,因为示例是一个5G SA的信令。
phr-ModeOtherCG
当配置了DC时,指示别的小区组(MCG或SCG)中激活小区使用的PHR模式(real或者virtual)。假如没有配置DC,即只有一个小区组时,该字段会被忽略。
从38.321中对于此参数的描述来看,只有当该参数的值为real时才会有意义,协议中没有virtual对应的行为。

示例中的值为virtual,表示没有特殊的行为,当前由于示例为SA的信令,该字段自己也会被忽略。
2.5 skipUplinkTxDynamic

  1. skipUplinkTxDynamic FALSE
复制代码
该参数指示在某些条件满足的情况下、是否跳过上行发送。这些条件定义在38.321 5.4.3.1.3中,

简单来说,就是当UE获得了ul grant之后,假如没有A-CSI请求、且没有用户数据、且没有重要的MAC CE(仅有周期BSR或者padding BSR),则UE会跳过此次上行发送。
示例中,该参数的值配置为FALSE,表示不会跳过上行发送。
3. physicalCellGroupConfig

  1. physicalCellGroupConfig
  2. {
  3.   p-NR-FR1 23,
  4.   pdsch-HARQ-ACK-Codebook dynamic
  5. },
复制代码
3.1 p-NR-FR1

在FR1频段、在当前NR小区组中的全部服务小区中、UE最大的发送功率。UE最大发送功率同时也会收到p-Max(配置在FrequencyInfoUL中)、以及p-UE-FR1(FR1上UE在全部服务小区上的总功率)的限定
示例中23表示23dBm。
3.2 pdsch-HARQ-ACK-Codebook

该参数指示PDSCH的HARQ-ACK码本、是半静态还是动态产生的。


  • Semi-Static:半静态码本, 也称为Type-1 HARQ-ACK codebook。即UE根据RRC层PDSCH相关半静态配置, 天生需要发送的半静态的HARQ-ACK码本。
  • dynamic:动态码本, 也称为Type-2 HARQ-ACK codebook。即UE根据DCI下举措态调度的情况, 天生需要发送的动态HARQ-ACK码本。
关于semi-static和dynamic码本的具体寄义,比力复杂,详见38.213 9.1。
示例中参数的值为dynamic,指示使用动态HARQ-ACK码本。




免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

我爱普洱茶

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表