第三章 LTE MAC协议解读MAC 格式Word文件下载.docx
《第三章 LTE MAC协议解读MAC 格式Word文件下载.docx》由会员分享,可在线阅读,更多相关《第三章 LTE MAC协议解读MAC 格式Word文件下载.docx(10页珍藏版)》请在冰豆网上搜索。
R/R/E/LCIDMAC子头部
MACPDU子头部的顺序跟MACSDU,MAC控制信息单元以及填充部分出现的顺序是相应的。
MAC控制信息单元处于任何MACSDU的前面。
填充部分一般放在MACPDU的最后面,不过如果只有一个字节或者两个字节的填充部分时,它就放在MACPDU的最前面。
填充部分的内容可以是任何值,因为接收方会直接忽略掉这里面的内容。
对于一个UE,每次一个传输块只能携带一个MACPDU,当然它也告诉我们,如果有两个传输块时,可以携带两个PDU(这就是当使用空间复用的传输方式时)。
图3.3.2-3:
具有头部、控制信息单元、SDUs以及填充部分的MACPDU例子
MAC头部是可变长的,它包含以下参数:
∙LCID:
用于指示逻辑信道、控制消息类型或者填充域;
∙L:
指示SDU或者控制消息的长度,除了最后一个子头以及固定长度的控制消息对应的字头,每一个子头都有一个L域,它的长度由F域指示;
∙F:
如果SDU或者控制消息的长度大于128byte,那么设置F=1,否则设为0,通过F的值,我们就可以知道对应的L值的大小了,也就是知道这个内容(MACSDU或者控制消息单元的长度了);
∙E:
指示MAC头部是否有多个域,当E=1时,意味着接下来存在另外一组R/R/E/LCID域,如果是0,那么接下来就是payload了;
∙R:
预留比特位,设为“0”
3.3.3控制信息单元
由于MAC存在多个控制信息单元,这里为了节约篇幅,只对几个重要的控制信息单元进行说明。
3.3.3.1缓冲状态报告控制信息单元(BSR)
这个控制信息单元,对于上行调度是至关重要的,作为eNB分配给UE资源的一个凭据,UE有多少数据要发送就是通过它来告诉eNB的,BSR有两种:
∙短BSR和截断BSR格式:
一个LCGID(逻辑信道标识)域以及对应的缓冲区大小域,eNB收到这个消息后,就知道对应的UE的这个上行逻辑信道组有多少业务数据要发送,由于eNB是对一个逻辑信道组分配资源,那么就意味着这些资源可以被这个组的逻辑信道共享,每一个逻辑信道能够获得多少资源这就取决于UE的调度了,因此UE必须按照业务属性来分配资源,否则无法保证对应的业务的服务质量(QoS)如图3.3.3-1所示;
∙长BSR格式:
四个缓冲区大小域,对应于LCGIDs#0到#3,如图3.3.3-2所示。
图3.3.3-1:
短BSR以及截断BSRMAC控制信息单元
图3.3.3-2:
长BSR控制信息单元
BSR格式可以通过MACPDU字头部中LCID域来指示,如下表3.3.3-1所示:
表3.3.3-1UL-SCH的LCID值
Index
LCIDvalues
00000
CCCH
00001-01010
逻辑信道标识
01011-11001
预留
11010
功率预留报告(PHR)
11011
C-RNTI
11100
截断BSR
11101
短BSR
11110
长BSR
11111
填充
LCGID域和缓冲区大小定义如下:
∙LCGID:
逻辑信道组标识域指示了上报的缓冲区状态对于的逻辑信道组,它的长度为两个比特,也就意味着系统只设置了4个逻辑信道组;
∙缓冲区大小:
它指示了在构造了这个BSR控制信息单元之后的逻辑信道组内所有逻辑信道总的可以发送的数据量,数据量大小的单位是字节数。
它应该包含在RLC层以及PDCP层可以传输的数据,这里的含义是指应该包含从PDCP发送到RLC的业务数据部分以及由RLC产生的RLC控制信息部分,我们可以参考【3】和【4】;
值得注意的是这里不包含RLC以及MAC的头部信息所要占用的字节数,因此我们在给这个逻辑信道组分配资源的时候需要考虑到这一点,可以适当的多分配一点,这样就可以减少BSR的数量,从而也就节约了空口资源。
这个域由六个比特位来指示,如表3.2所示,MAC层对不同的缓冲大小区间进行了量化,量化成为64个等级(可以用六比特表示),因此只需要传索引值而不是实际的大小,这样可以节约控制信息的长度。
Table6.1.3.1-1:
BSR承载的缓冲区大小水平
索引
缓冲区大小(BS)值[字节]
BS=0
32
1132<
BS<
=1326
1
0<
=10
33
1326<
=1552
2
10<
=12
34
1552<
=1817
3
12<
=14
35
1817<
=2127
4
14<
=17
36
2127<
=2490
5
17<
=19
37
2490<
=2915
6
19<
=22
38
2915<
=3413
7
22<
=26
39
3413<
=3995
8
26<
=31
40
3995<
=4677
9
31<
=36
41
4677<
=5476
10
36<
=42
42
5476<
=6411
11
42<
=49
43
6411<
=7505
12
49<
=57
44
7505<
=8787
13
57<
=67
45
8787<
=10287
14
67<
=78
46
10287<
=12043
15
78<
=91
47
12043<
=14099
16
91<
=107
48
14099<
=16507
17
107<
=125
49
16507<
=19325
18
125<
=146
50
19325<
=22624
19
146<
=171
51
22624<
=26487
20
171<
=200
52
26487<
=31009
21
200<
=234
53
31009<
=36304
22
234<
=274
54
36304<
=42502
23
274<
=321
55
42502<
=49759
24
321<
=376
56
49759<
=58255
25
376<
=440
57
58255<
=68201
26
440<
=515
58
68201<
=79846
27
515<
=603
59
79846<
=93479
28
603<
=706
60
93479<
=109439
29
706<
=826
61
109439<
=128125
30
826<
=967
62
128125<
=150000
31
967<
=1132
63
BS>
150000
3.3.3.1MACPDURAR(随机接入响应)
随机接入响应对于的PDU遵循MACPDU的规则,只是里面的内容有所不同而已,它可以包含多个随机接入响应
除了BACKOFF对应的子头部外,每一个子头部对应于一个RAR消息,如果存在BACKOFF指示,那么它对应的子头部要放在第一个MAC子头部的位置上,并且只能出现一次。
一个RAR的PDU其实可以不包含RAR消息,而只是包含一个BACKOFF指示信息,如图3.3.3-4所示。
一个MACPDU子头部由三个头部域组成(E/T/RAPID),如图图3.3.3-1所示。
但是对于BACKOFF指示的子头部包含五个域(E/T/R/R/BI)如图图3.3.3-2所示。
AMACRAR包含四个域R/TimingAdvanceCommand/ULGrant/TemporaryC-RNTI图3.3.3-3
最后也可能存在填充,这个是隐含的,跟通常的填充规则不同,通过传输块大小减去MAC头部大小以及RAR大小就可以推断出来。
E/T/RAPIDMAC子头部
E/T/R/R/BIMAC字头部
图3.3.3-3:
MACRAR
图3.3.3-4:
含有头部与多个RAR的MACPDU的例子
3.3.3.2
RAR消息的MAC头部
RAR消息对应的MAC头部是可变长度的,定义如下
扩展域用于指示MAC头部还有其它域(例如其它RAR消息对于的子头部),如果E被置为“1”,也就是说随后至少还有一个(E/T/RAPID)域,否则,就指示随后是RAR消息或者填充部分,这里我们会发现对于RAR的填充部分它是紧随MAC头部的;
∙T:
类型域,用于指示这个MAC子头部包含的是随机接入ID(前导序列ID)还是BACKOFF指示,T置为“0”,也就是说这个子头部包含的是BI值,如果是“1”,就意味着在这个子头部出现的是随机接入前导ID域;
预留比特,置为"
0"
;
∙BI:
BACKOFF指示,通常是在小区过载的情况下,指示UE延后发送随机接入过程。
4比特位表示;
∙RAPID:
随机接入前导与指示发送的随机接入前导序列,6比特位表示。
6.2.3
RAR消息内容
MACRAR消息大小是固定的,包含如下域:
-
R:
预留比特,置为“0”;
TimingAdvanceCommand:
TheTimingAdvanceCommandfieldindicatestheindexvalueTA(0