lte_mac协议总结

lte_mac协议总结

ID:20657345

大小:561.46 KB

页数:36页

时间:2018-10-14

上传者:U-3204
lte_mac协议总结_第1页
lte_mac协议总结_第2页
lte_mac协议总结_第3页
lte_mac协议总结_第4页
lte_mac协议总结_第5页
资源描述:

《lte_mac协议总结》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

3.1序言刚刚开始学习LTE的一段时间,曾经写过一个幻灯片在我们组内分享,后来发到了网站,承蒙大家厚爱到处传阅,如果现在在google上搜索一下,还是能看到很多网站上都有。但是现在自己仔细看看原来的幻灯片,发现有很多地方说得过于模糊,还有一些地方存在错误,内心感到惶恐,趁这个机会,重新整理一下对MAC的理解,结合MAC协议(3GPP36.321)与自己在MAC层工作的经验,提供更加丰富的内容,同时也希望能够纠正谬误,开启讨论之门。3.2概述36.321里面主要描述的是MAC的架构与处于MAC层的功能实体,并没有涉及到具体的实现,而且由于LTE取消了向以前的协议专门提供的专用信道,所有的用户数据都使用共享信道,因此对MAC的在资源以及业务调度的功能上提出了很高的要求,这也是不同设备供应商可以大显神通的地方了;而协议本身主要描述的是接受端的行为,因此在基站端可以发挥的余地就更大了。3.2.1MAC架构MAC协议层在LTE协议栈的位置如下所示:图3.1MAC层在LTE协议栈的位置MAC实体在UE以及eNB上都存在的,它们主要处理如下传输信道:-广播信道(BroadcastChannel,BCH); -下行共享信道(DownlinkSharedChannel,DL-SCH);-呼叫信道(PagingChannel,PCH);-上行共享信道(UplinkSharedChannel,UL-SCH);-随机接入信道(RandomAccessChannel,RACH)。其实这些信道只是概念上的,因为传输信道的管理上不像逻辑信道那样设立专门的逻辑信道号,它只是从功能是进行了描述,因此实现上是否真正存在这样的传输信道,这在于个厂商自己。对于MAC层与物理层之间的处理,自然可以设置专门的通道,也可以只是通过一些简单的标识来处理,当然这也是信道的一种表现形式。下图3.1与3.2分别为层二的上下行功能框架图:图3.1层二下行功能框架图 图3.1层二上行功能框架图3.2.2服务3.2.2.1提供给上层的服务MAC层给上层(RLC层,也可以泛指MAC层以上的协议层)提供的服务有:-数据传输,这里面隐含了对上层数据处理,比如优先级处理,逻辑信道数据的复用;-无线资源分配与管理,包括MCS的选择,数据在物理层传输格式的选择,以及无线资源的使用管理,从这里我们可以知道MAC层掌握了所有物理层资源的信息。3.2.2.2期待物理层提供的服务物理层向MAC层提供以下服务:-数据传输,MAC层通过传输信道访问物理层的数据传输服务,而传输信道的特征通过传输格式进行定义,它指示物理层如何处理相应的传输信道,例如信道编码,交织,速率匹配等;-HARQ反馈信令(HARQACK/NACK);-调度请求信令(SR);-测量(比如信道质量CQI,与编码矩阵PMI等)3.2.3MAC层功能MAC层的各个子功能实体提供以下的功能: -实现逻辑信道映射到传输信道;-复用从一条或多条逻辑信道下来的数据(MACSDUs)到传输块,并通过传输信道发给到物理层;-把从传输信道传送上来的传输块解复用成MACSDU,并通过相应的逻辑信道,上交给RLC层;-调度信息的报告,UE向eNODEB请求传输资源等;-基于HARQ机制的错误纠正功能;-通过动态调度的方式,处理不同用户的优先级;以及对同一用户的不同逻辑信道的优先级处理,这里主要在UE端实现;-传输格式的选择,通过物理层上报的测量信息,用户能力等,选择相应的传输格式,从而达到最有效的资源利用。以上功能与上下行以及MAC实体的对应关系如下表所示:表3.1MACfunctionlocationandlinkdirectionassociationMAC功能UEeNB下行上行逻辑信道和传输信道之间的映射XXXXXX复用XX XX 解复用XXXX HARQXXX XXX传输格式的选择XXX不同用户间优先级处理XXX同一用户不同逻辑信道优先级处理XXX逻辑信道优先级设置XX调度信息报告XX3.2.4信道结构在描述与MAC相关的信道前,这里先对信道做一些简单的解释,信道可以认为是不同协议层之间的业务接入点(SAP),是下一层向它的上层提供的服务。LTE沿用了UMTS里面的三种信道,逻辑信道,传输信道与物理信道。从协议栈的角度来看,物理信道是物理层的,传输信道是物理层和MAC层之间的,逻辑信道是MAC层和RLC层之间的,它们的含义是:-逻辑信道,传输什么内容,比如广播信道(BCCH),也就是说用来传广播消息的;-传输信道,怎样传,比如说下行共享信道DL-SCH,也就是业务甚至一些控制消息都是通过共享空中资源来传输的,它会指定MCS,空间复用等等方式,也就说是告诉物理层如何去传这些信息;-物理信道,信号在空中传输的承载,比如PBCH,也就是在实际的物理位置上采用特地的调制编码方式来传输广播消息了。进一步解释,逻辑信道按照消息的类别不同,将业务和信令消息进行分类,获得相应的信道称为逻辑信道,这种信道的定义只是逻辑上人为的定义。传输信道对应的是空中接口上 不同信号的基带处理方式,根据不同的处理方式来描述信道的特性参数,构成了传输信道的概念,具体来说,就是信号的信道编码、选择的交织方式(交织周期、块内块间交织方式等)、CRC冗余校验的选择以及块的分段等过程的不同,而定义了不同类别的传输信道;物理信道,就是在特定的频域与时域乃至于码域上采用特地的调制编码等方式发送数据的通道,物理信道就是空中接口的承载媒体,根据它所承载的上层信息的不同定义了不同类的物理信道。跟MAC层相关的信道有传输信道与逻辑信道,比如传输信道是物理层提供给MAC的服务,MAC可以利用传输信道向物理层发送与接收数据,而逻辑信道是MAC层向RLC层提供的服务,RLC可以使用这些逻辑信道想MAC层发送与接收数据。3.2.4.1传输信道MAC使用的传输信道如下表所示:表3.2跟上下行相关的传输信道传输信道名缩写下行上行BroadcastChannel广播信道BCHXDownlinkSharedChannel下行共享信道DL-SCHXPagingChannel呼叫信道PCHXUplinkSharedChannel上行共享信道UL-SCHXRandomAccessChannel随机接入信道RACHX这些传输信道的用途与处理方式如下:-BCH(广播信道),下行,固定的,预定义传输格式的,例如具有固定大小,固定发送周期,调制编码方式等等;除了MIB消息在专属的物理信道上传输外,其它的广播消息(SIB)都是在物理共享信道上传输的,不再像UMTS那样留有专门的物理信道用于传输广播消息;-PCH(呼叫信道),下行,支持UE的非连续接收达到省电的目的;映射到物理下行共享信道,与BCH类似;-DL-SCH/UL-SCH,可以传输业务数据以及系统控制信息;-RACH(随机接入信道),上行,用于指定传输随机接入前导,发射功率等等信息。由上可知,除了指定特定的资源用于系统广播消息、上行的接入信息以及上下行信道控制信息外,其他的资源对所有用户来说都是共享的,进行统一调度。如果我们对比UMTS与LTE的传输信道,就会发现LTE的传输信道要少,例如针对业务数据,不再有专用传输信道与专用控制信道,通通并入了共享信道;这样的传输信道安排,已经跟WiMAX对资源管理的方式非常相似。由于业务资源都是共享的,那么MAC的调度就要做到兼顾业务优先级,无线资源高效使用以及公平性,这对MAC的设计提出了比较高的要求。可以说不同设备商的基站性能跟MAC层的调度非常相关。3.2.4.2逻辑信道MAC提供的逻辑信道如下表3.3所示:表3.3逻辑信道逻辑信道名缩写控制信道业务信道 BroadcastControlChannel广播控制信道BCCHXPagingControlChannel呼叫控制信道PCCHXCommonControlChannel通用控制信道CCCHXDedicatedControlChannel专用控制信道DCCHXDedicatedTrafficChannel专用数据信道DTCHX这些逻辑信道的用途与处理方式如下:-BCCH(广播控制信道),下行信道,用于广播系统控制信息,例如系统带宽,天线个数以及各种信道的配置参数等等;-PCCH(呼叫控制信道),下行信道,用于传输呼叫信息(被叫号码等等)以及系统信息改变时的通知;这个信道用于系统不知道这个UE所在的小区位置时的呼叫,另外,当系统知道UE的具体位置时,可以使用共享信道来呼叫,但是对于系统信息改变还是必须使用PCCH,因为那时它呼叫的是小区内的所有UE;-CCCH(通用控制信道),下行信道,用于传递UE与系统之间的控制信息,当UE还没有RRC连接时,使用这个控制信道来传递控制信息,例如传输接入时,由于还没有RRC连接,RRC连接请求消息就是发在这个逻辑信道上的。因此没有RRC连接的UE都可以使用这个信道-DCCH(专用控制信道),上/下行信道,点对点的双向信道,用于传递UE与系统之间的专用控制信息,因此UE必须建立了RRC连接;-DTCH(专用数据信道),上/下行信道,点对点的双向信道,用于传递用户数据当MAC通过PDCCH物理信道指示无线资源的使用的时候,MAC会根据逻辑信道的类型把相应的RNTI映射到PDCCH,这样用户通过匹配不同的RNTI可以获取到相应的逻辑信道的数据-C-RNTI,TemporaryC-RNTIand半静态调度C-RNTI用于DCCH与DTCH;-P-RNTI用于PCCH;-RA-RNTI用于在DL-SCH上接收随机接入相应;-TemporaryC-RNTI用于在随机接入过程中接收CCCH;-SI-RNTI用于BCCH.如下图所示:图3.3RNTI与逻辑信道映射关系 3.2.4.3逻辑信道到传输信道的映射MAC实体负责把上行的逻辑信道映射到相应的上行传输信道,映射关系如图3.4与表3.4所示:图3.4上行逻辑信道与传输信道映射下行映射图3.5下行逻辑信道与传输信道映射3.3MAC格式(协议数据单元,格式与参数)3.3.1概述MACPDU是八位对齐的比特流,最高位第一行的最左边比特,最低位在最后一行的最右边的比特;MACSDU也是八位对齐的比特流,而MACPDU里面的参数也是按照相同的顺序,高位在左边,低位在右边的顺序。3.3.2MACPDU(DL-SCH和UL-SCH,除了透明MAC和随机接入响应)MACPDU具有一个头部,零个或多个SDU,零个或多个控制单元,可能还有填充位。MAC头部与MACSDU都是可变长度的。一个MACPDU头部,MACPDU头部可能有一个或多个子头部(subheader),每一个对应一个SDU、控制信息单元(controlelement)或者填充位。 一个普通MACPDU子头部由六个域(R/R/E/LCID/F/L)组成,但是对于最后一个子头部、固定长度的MAC控制信息单元以及填充位对应的子头部,它们只包含四个域(R/R/E/LCID)图3.3.2-1:R/R/E/LCID/F/LMAC子头部图3.3.2-2: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值IndexLCIDvalues00000CCCH00001-01010逻辑信道标识01011-11001预留11010功率预留报告(PHR)11011C-RNTI11100截断BSR11101短BSR11110长BSR11111填充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)值[字节]0BS=03211321500003.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大小就可以推断出来。图3.3.3-1:E/T/RAPIDMAC子头部图3.3.3-2:E/T/R/R/BIMAC子头部图3.3.3-3:MACRAR 图3.3.3-4:含有头部与多个RAR的MACPDU的例子3.3.3.2RAR消息的MAC头部RAR消息对应的MAC头部是可变长度的,定义如下-E:扩展域用于指示MAC头部还有其它域(例如其它RAR消息对于的子头部),如果E被置为“1”,也就是说随后至少还有一个(E/T/RAPID)域,否则,就指示随后是RAR消息或者填充部分,这里我们会发现对于RAR的填充部分它是紧随MAC头部的;-T:类型域,用于指示这个MAC子头部包含的是随机接入ID(前导序列ID)还是BACKOFF指示,T置为“0”,也就是说这个子头部包含的是BI值,如果是“1”,就意味着在这个子头部出现的是随机接入前导ID域;-R:预留比特,置为"0";-BI:BACKOFF指示,通常是在小区过载的情况下,指示UE延后发送随机接入过程。4比特位表示;-RAPID:随机接入前导与指示发送的随机接入前导序列,6比特位表示。3.3.3.3RAR消息内容MACRAR消息大小是固定的,包含如下域:-R:预留比特,置为“0”;-TimingAdvanceCommand:TheTimingAdvanceCommandfieldindicatestheindexvalueTA(0,1,2…1282)usedtocontroltheamountoftimingadjustmentthatUEhastoapply(seesubclause4.2.3of[2]).11比特位表示;-ULGrant:TheUpLinkGrantfieldindicatestheresourcestobeusedontheuplink(seesubclause6.2of[2]).20比特位表示; -TemporaryC-RNTI:TheTemporaryC-RNTIfieldindicatesthetemporaryidentitythatisusedbytheUEduringRandomAccess.ThesizeoftheTemporaryC-RNTIfieldis16bits.3.4MAC过程3.4.1随机接入过程3.4.1.1概述随机接入是蜂窝系统一个最基本的功能,它使终端与网络建立连接成为可能,诚如其名,这样的接入的发起以及采用的资源具有随机性,当然接入成功也具有随机性,那么在什么情况下需要发起随机接入的过程呢?随机的接入场景如下:基于竞争模式的随机接入:RRC_IDLE状态下的初始接入;无线链路出错以后的初始接入;RRC_CONNECTED状态下,当有上行数据传输时,例如在上行失步后“non-synchronised”,或者没有PUCCH资源用于发送调度请求消息,也就是说在这个时候除了通过随机接入的方式外,没有其它途径告诉eNB,UE存在上行数据需要发送基于非竞争模式的随机接入:RRC_CONNECTED状态下,当下行有数据传输时,这时上行失步“non-synchronised”,因为数据的传输除了接收外,还需要确认,如果上行失步的话,eNB无法保证能够收到UE的确认信息,因为这时下行还是同步的,因此可以通过下行消息告诉UE发起随机接入需要使用的资源,比如前导序列以及发送时机等,因为这些资源都是双方已知的,因此不需要通过竞争的方式接入系统;切换过程中的随机接入,在切换的过程中,目标eNB可以通过服务eNB来告诉UE它可以使用的资源;是否基于竞争在于在当时终端能否监听到eNB传递的下行控制信道,以便获得特定的资源用于传输上行前导,当然这个判断是由eNB作出的,而不是UE自己来决定的。3.4.1.2随机接入过程初始化随机接入过程可以由PDCCHorder或者MAC子层自己来触发,如果UE收到一个发给它的PDCCH传输含有一个PDCCHorder,那么它就会发起一个随机接入过程,PDCCHorder或者是RRC消息会指示ra-PreambleIndex与ra-PRACH-MaskIndex信息以告诉UE它可以使用的前导序列以及发送机会。在发起随机接入过程之前,下面的信息必须已经具备了:-用于发送随机接入前导的PRACH资源已经准备好了,由prach-ConfigIndex指示; -有可用的随机接入前导,在MAC层有可能设置两组随机接入前导:GroupB与GroupA,分布用于指示发送的MSG3的大小,GroupB的前导序列个数由下面的参数推导可得GroupB前导序列个数=numberOfRA-Preambles-sizeOfRA-PreamblesGroupA在SIB2里面定义的PRACH的无线资源里面会提供上面的两个参数,从上面可以知道如果GroupA的前导序列跟总的随机接入前导序列相等,那么UE就知道不存在GroupB的前导序列,GroupA与GroupB的前导序列编号如下:[0sizeOfRA-PreamblesGroupA–1]以及[sizeOfRA-PreamblesGroupAnumberOfRA-Preambles–1]UE选择GroupA还是选择GroupB就看是否有这个需要以及满足一定的条件,比如UE希望在发送MSG3里面携带VoIP的包,那么自然需要的资源就要大一些,那么当eNB收到UE发送的前导序列属于GroupB时,它就会分配多一点资源给UE来发送MSG3-如果存在GroupB的前导序列,那么由于GroupB对于的MSG3消息比较大,因此必须满足一些额外的要求,messagePowerOffsetGroupB与messageSizeGroupA,配置的UE发射功率PCMAX,前导序列与MSG3的功率偏移量,这些值跟当前的UE功率情况决定了最终选择GroupA还是B的前导序列-获得了接收随机接入响应的窗口大小参数ra-ResponseWindowSize,UE会在这个窗口期监听eNB是否给它回了响应,这个响应有eNB分配给UE的资源用于发送MSG3的。因此这个窗口大小就是UE等待的时间了,如果没有收到响应,那么UE就认为它发的前导没有被eNB收到,那么就要开始后面的处理了;-功率提升步长powerRampingStep.假如在前面发起的接入过程失败了,但是还没有达到最大尝试次数,那么UE就会提升功率发送下一次前导以提供发送成功的机会;-可以尝试发送的次数preambleTransMax,一般超过这个次数就认为UE无法接入了,至少可以认为这次的接入是失败的,会报告给上层协议层;-eNB期待接收到的前导序列目标功率preambleInitialReceivedTargetPower,这个值太高了,会造成干扰,太低了可能无法收到前导序列;-前导序列格式对应的功率偏移量,我们知道有5种前导序列,每一种格式都对应一个基准选择发射功率;-MSG3HARQ重传最大次数maxHARQ-Msg3Tx.-竞争消除定时器mac-ContentionResolutionTimer.注:在某一时刻只能有一个随机接入过程,如果这个UE在处于一个随机接入过程,但是同时又收到新的随机接入的请求,这取决于UE的实现,是继续当前的过程,还是取消当前过程,然后根据新的请求发起一个新的过程 3.4.1.3初始随机接入这里我们对这种最初需要使用的接入模式进行详细的介绍,这个过程一般分成四步,如前一页图所示:图3.4.1-1竞争随机接入过程步骤一、在发送上行接入前导序列之前,终端应该已经和系统下行同步好了,下行同步意味着UE获得了帧同步以及系统广播消息,但是上行并没有同步。通过前导序列,让eNB知道存在一个终端试图跟基站建立连接;根据确认的前导分配相应的资源用于发送消息3(MSG3);步骤二、eNB通过时隙调整确保上行同步,也就是发送time-advance消息实现;同时分配上行资源,这些内容就是由随机接入响应消息携带;步骤三、在已经分配的资源上发送用户ID,以及相应的UL-SCH信息用于发送用户ID以及RRC连接请求之类的等基本信息,也就是所谓的消息3了(MSG3),具体内容跟用户所处的状态相关;步骤四、通过DL-SCH发送冲突解决消息到终端。只有第一步是纯粹的物理层过层,后面三个步骤跟普通的数据传输过程没有区别,看MAC协议经常看到MSG3或者MSG4等等,因为在随机接入的过程中,这些消息的内容不是固定,有时候可能携带的是RRC连接请求,有时候可能会带一些控制消息甚至业务数据包,因此简称为消息3之类,其意思就是第三条消息。步骤一、发送随机接入前导图3.4.1-2随机接入资源 预留的资源带宽为6个RB,那么对于LTE支持的所有带宽都是可以满足的,这样可以非常方便的实现系统扩展,在物理层设计都会基于这样的考虑的,比如同步信道以及物理广播信道都是如此。考虑到在发送前导序列时,上行并没有同步,需要防止对其他非接入资源的干扰,因此前导的序列长度大约0.9ms,留下0.1ms作为保护时间前导序列基于Zadoff–Chu(ZC),通过特定的移位获得,这种序列有一些很好的特性,比如具有很好的自相关性,恒定幅度等,具体的前导序列设计与检测原理看本系列的物理信道设计部分,使用什么样的前导,终端通过广播消息获得,然后从某一范围的序列随机选取一前导序列。步骤二、随机接入响应当eNB检测到这个前导序列,则在DL-SCH上发送一个响应,包含:该序列索引号、时间调整信息、资源调度信息(也就是分配给该用户的上行资源)以及临时RNTI,用于接下来的交互过程中让UE监听相应的PDCCH信道所有发送前导序列的终端则使用一个预留给随机接入响应使用的ID(RA-RNTI)监听来L1/L2控制信道用于解码DL-SCH,从而获得上面的的信息;RA-RNTI=1+t_id+10*f_id其中,t_id,指定PRACH的第一个subframe索引号(0<=t_id<10)f_id,在这个subframe里的PRACH索引,也就是频域位置索引,不过对于FDD系统来说,只有一个频域位置,因此f_id永远为零,但是对于TDD就不一样了,由于本文不涉及TDD系统,因此不再延伸来讲。监听时间从发送前导后的三个子帧开始,并持续ra-ResponseWindowSize个子帧数,该窗口大小通过读取系统广播消息(SIB2)获得,在前面有说明。这个值最大可设为10,因为大于10的话,有可能造成误解,因为在下一个无线帧里也有发生随机接入的机会,因此为了防止这种情况,这个窗口最大设为10,大家可以去查看36.331里面这个参数范围就知道,具体原理如下图所示:图3.4.1-3随机接入响应监听示意图红色为发送RA的地方,绿色部分为UE最大可监听随机接入响应的窗口范围,点格子是窗口之外的地方。如果在同一时间,多个终端选择同一个前导,这些终端都可能获得这些信息,那么就会导致冲突,而冲突的解决消除需要在后面两个步骤里面来消除,接收响应的过程如下:1.当终端成功接收RA响应,终端调节上行发送时间,保存从这个响应里面获得临时C-RNTI用于随后的通信,直到获得最终的C-RNTI,最后发送前导序列的功率信息;2.如果没有成功接收到响应;(出现了退避问题)计数器PREAMBLE_TRANSMISSION_COUNTER加一a.如果计数器等于PREAMBLE_TRANS_MAX+1,以及达到最大发送次数了:向上层报告随机接入出错了。b.如果RA前导是由MAC选择的,那么 从0到backoff时间之间随机选择一个值,然后延迟上面所选择值的时间,重新开始一个RA过程。c.否则,重选RA资源,例如功率,前导,相应的PRACH,发起新的随机接入过程。为了避免完全翻译协议,中间一些过程省略了,具体过程请大家看协议。步骤三、终端识别通过前面两步,终端已经获得上行同步,以及随后通信的必要信息,但是要能够实现上行数据传输,则必须获得唯一的C-RNTI,根据不同的用户状态,这个过程会有不同的消息交互;如果需要消除竞争,那么还有可能发送竞争消除ID以备在第四步的时候用做竞争消除确认操作。因为多个UE可能选择了相同的前导序列,因此在第二步他们获得的资源是一样的,那么发送消息3时,就会在相同的地方选择相同的方式发送,那么自然就会有冲突,这就相当于大家都要竞争接入了。也许大家会问,大家使用相同的资源发送,不是会冲突么,为什么还要做竞争消除呢?那是因为虽然有冲突,但是eNB还是有可能解出某个UE发送的MSG3,那么通过第四步的竞争消除消息,就可以让这个UE成功接入了。例如某一个UE离基站比较远,信号比较弱,而另外一个UE离基站近,信号比较强,较远的UE可能造成的干扰并不是很大,那么eNB还是可以解出较近的那个UE的消息3了。另外在消息3,还会携带竞争消除ID,这个ID是唯一的,不会跟其他UE重复的,因此最好就是这个UEIMSI之类的。提前说一下,在消息4里面会把这个ID带上,发给UE,那么UE自然知道它已经成功接入了。步骤四、竞争消除我们知道消息3是有可能冲突的,在发完消息后就要立刻启动竞争消除定时器(而随后每一次重传消息3都要重启这个定时器)。对于初始接入来说,如果在第三步上行消息包含CCCHSDU(例如RRC连接请求消息),而收到下行PDCCH发送给临时C-RNTI:如果MACPDU解码成功:停止竞争消除定时器,如果MACPDU包含UE竞争消除ID的控制消息单元并且这个ID跟上行发送的竞争消除ID匹配,则认为竞争消除成功,并对这个MACPDU解复用并提取里面的内容,把临时C-RNTI设置为C-RNTI,同时丢弃临时C-RNTI,然后确认随机接入成功;否则,丢弃临时C-RNTI,UE会认为随机接入失败并丢弃这个MACPDU;如果竞争消除定时器超时,则认为接入失败;失败后,会按照后退机制重新开始随机接入过程直到尝试次数超过门限值,那时则会向上层报告接入失败。(出现了退避问题)注:值得注意的是,消息四是没有重传机制的,我们设想一下,如果消息四采用重传,由于这个时候竞争没有消除,那么如果有些UE解码成功,有些解码失败;或者有些收到有些没有收到,那么就会出现同时ACK/NACK的情况;虽然消息三也会出现类似的情况,但是由于会确认信息的是eNB,它一次只会回一种确认信息,因此不会影响后面的处理。 3.4.1.4后退机制在系统处于过载的情况下,例如它无法再分配更多的MSG3使用的资源等等,这个时候它自然希望一些UE能够晚一点发,我们也注意到了在接收随机接入响应的时候以及RAR消息格式里面有一个backoff的东西,这就是后退机制的参数了,如果监听RAR消息的UE发现有一个backoff指示,那么它就会把这个值保存起来,在随后需要重新做随机接入的时候,可以随机从0到backoff值里的选一个值作为推迟发前导序列的时间。在通信系统里面我们碰到很多的后退机制,比如WiMAX系统的截断二进制后退机制,那么这两者的区别是什么呢?LTE系统里,后退的范围是由基站确定的,基站可以根据系统当前的负载情况来选择一个恰当的值;而在WiMAX里面由UE自己确定,当UE发现没有收到基站响应,就会按照二的指数增加后退窗口的长度,然后在这个窗口里面随机选一个时延来发送前导序列。两者各有优劣。下表是backoff取值情况:IndexBackoffParametervalue(ms)0011022033044056068071208160924010320114801296013Reserved14Reserved15Reserved基站在发送RAR消息的时候,根据负载情况选择backoff值的一个索引发给UE。由于协议的撰写,每一步都需要考虑所有的情况,因此里面存在大量的if…else,这造成了阅读上的不便,在这里,我建议大家,把不同场景从里面抽取出来。例如随机接入,那么我们可以先分别出那些是描述初始接入,那些事描述非竞争接入的,比如非竞争接入,我们自然不需要查看竞争消除部分的内容了。 3.4.3DRX(非连续接收)DRX,在一段时间里停止监听PDCCH信道,DRX分两种:IDLEDRX,顾名思义,也就是当UE处于IDLE状态下的非连续性接收,由于处于IDLE状态时,已经没有RRC连接以及用户的专有资源,因此这个主要是监听呼叫信道与广播信道,只要定义好固定的周期,就可以达到非连续接收的目的。但是UE要监听用户数据信道,则必须从IDLE状态先进入连接状态。而另一种就是ACTIVEDRX,也就是UE处在RRC-CONNECTED状态下的DRX,可以优化系统资源配置,更重要的是可以节约手机功率,而不需要通过让手机进入到RRC_IDLE模式来达到这个目的,例如一些非实时应用,像web浏览,即时通信等,总是存在一段时间,手机不需要不停的监听下行数据以及相关处理,那么DRX就可以应用到这样的情况,另外由于这个状态下依然存在RRC连接,因此UE要转到支持状态的速度非常快。这里我们先介绍ACTIVEDRX,而IDLEDRX我打算放在呼叫那部分来介绍。而要理解DRX,我们就必须理解下面要描述的几个定时器与概念(所有的时间都是基于子帧的,也就是ms为单位):OndurationTimerUE每次从DRX醒来后维持醒着的时间,UE在该段时间内会搜索PDCCH。InactivityTimerUE在醒着时每次成功解码HARQ初始发送的PDCCH后保持active的时间,它的意思就是,当UE收到的PDCCH指示的是一个UL/DL的初始传输,而不是重传。UE在醒着时每次成功解码HARQ初始发送的PDCCH后保持active的时间ActiveTimeUE从DRX醒来后保持醒着的总时间,在此时间段,UE监听PDCCH,包括所有导致UE处于ACTIVE的状态,比如是DRX周期开始“OnDuration”,或者收到初始传输的PDCCH,或者是监听重传,等等,在36.3215.7节,是这样定义ACTIVETIME的:如果配置了DRX,那么ACTIVETime包括以下时间:-onDurationTimer、drx-InactivityTimer、drx-RetransmissionTimer以及mac-ContentionResolutionTimer运行的时间,或者-有SR(调度请求)已近发送到PUCCH,并且处于挂起的状态(也就是这个调度请求还没有满足,如此之类的)或者,-对一个挂起的HARQ重传存在上行授权,并且在对应的HARQ缓冲区里面有数据;或者-在非竞争随机接入后,成功收到随机接入响应消息,此时应该有PDCCH发送给UE指示一个新的传输,但是这个PDCCH还没有收到,此时UE还是必须处于ACTIVE状态HARQRTTTimerUE预期DLRetransmission到达的最少间隔时间,也就是说重传最早会什么时候到,那么UE暂且不需要理会,也就是说这一段时间,改怎样就怎样,等到这个定时器超时了,那么它就要处于醒着的状态。DRXRetransmissionTimerUE预期接收DLRetransmission的时间,也就是需要这么多时间来接受下行重传。 DRXcyclelengthDRXcyclelength一旦配置/重配置就固定,即不会因为activetime大于onduration而变化。DRX运行:-如果在使用短DRX周期,检查当前子帧是否满足下面的公式:-或者在使用长DRX周期,那么检查如下的公式:当上面的两个条件满足其中之一,那么就启动定时器onDurationTimer,此时UE就要开始监听PDCCH信道了-如果在这个子帧HARQRTT定时器超时,从前面的定时器介绍我们已经知道它是期望重发的最短时间,那么这个定时器超时后,重发就有可能到来了。如果这时对于的HARQ进程的软缓冲区还有没有解码成功的数据(也就是前面的数据接收失败了,要求重传的数据),那么就启动定时器drx-RetransmissionTimer开始监听PDCCH重传相关的内容。-如果收到DRXMAC控制信息单元,也就意味着eNB要求UE进入睡眠状态,那么这时就会停止两个定时器onDurationTimer和drx-InactivityTimer,但是并不会停止跟重传相关的定时器,我想这是因为eNB即使这时还是希望那个继续监听重传的内容。-如果drx-InactivityTimer超时或者收到DRXMAC控制信息单元:-如果配置了短DRX周期:-那么启动或者重启drxShortCycleTimer;-使用短DRX周期。-否则;-使用长DRX周期。-如果drxShortCycleTimer超时,那么-使用长DRX周期。由于在短周期里面没有收到PDCCH,则就认为确实没什么数据发送接收,那么短周期的监听似乎没有必要,因此把监听的周期变长一点,这样长短周期配合能够达到更好的DRX效果。上面一段话大部分摘自协议,并且加了自己的理解,但是也省略了一些我认为对协议理解无关的内容,如果大家还想完全了解,建议完整的读完协议。看来这么多文字描述,我想最好用一个图列来说明问题了,下面就是一个稍微复杂的例子: 我们来看看上图,一开始的时候无论是长或者短周期都会启动onDurationTimer定时器,开始监听PDCCH,一开始收到下行的一个新包(1),但是解码失败,此时就要启动两个定时器一个是drx-InactivityTimer定时器用来延长监听的时间的,还有一个是HARQRTT定时器,因为失败了,所以它估计最早重传会这个定时器超时后来到,所以在这一段时间里,它还是可以不理会重传。接着有一个上行的包发送(2),此时需要重启drx-InactivityTimer定时器,因为现在要完成这个上行的包发送的处理,所以它还会持续监听这么长时间,不过这个包成功了,所以没有什么意外它就会得到定时器超时;然后定时器还没有超时,这个时候又来了一个下行的新包(3),所以又要启动drx-InactivityTimer定时器,不过由于新包解码成功,因此得到定时器超时,它就进入了睡眠状态了,此时要启动drxShortCycleTimer定时器,图上没有画出来。经过一段时间,这个周期结束了,进入下一个短周期的开始点了,因此需要重启onDurationTimer定时器。这个定时器没结束之前,HARQRTT定时器超时,UE认为此后重传可能会到,所以要启动HARQ重传定时器监听重传的PDCCH信息,接着重传到了,并且成功了。随后又发送了一个上行包,没有出错,因此得到定时器超时,就进入睡眠状态,此时需要启动drxShortCycleTimer定时器,但是到它超时这段时间都没有收到PDCCH,因此它就进入了长DRX周期了。这一个过程就完成了。DRX、跟WiMAXpower-saving模式的实现机制是一样的,多个定时器的配合在于对于特定情况下,虽然从DRXcycle情况处于睡眠状态的时间,但是依然需要监听PDCCHLong和Short周期的交互配合在于提高DRX的效果,当shortDRXtimer超时但是没有任何PDCCH只是接收,那么转入到Long周期提高powersaving效果降低系统延时 3.4.4调度方式3.4.4.1前言在前面我们经常提到LTE系统的共享信道,除了很少的几个信道有专门对应的物理信道,例如广播信道(PBCH),而且它传的主要也是MIB消息,而其余的SIB消息依然使用共享信道传输,因此它而显然的告诉我们,资源是以共享的方式存在。那么对调度器的设计的要求自然就提高了,跟早期的很多接入系统不同每个用户的业务都有专门的信道。当然到了HSPA时已经是共享信道的概念,但是主要还是针对数据业务。因此LTE于此之前的系统都有很大的区别了。调度器的设计,需要考虑它的目的与基本的调度原则,在此略微列出,目的:调度的好坏对于系统的性能影响很大,对于LTE十分重要,我们在前面讲了,LTE的几乎所有的应用与业务都是使用共享信道,由于各个业务与应用的对服务质量(QoS)的要求是不同的,因此调度的好坏直接影响的就是QoS是否可以满足,也即是用户的使用体验是否比较好;最好的利用时/频/空/功率资源用于不同的UEs和不同的业务,保证各种业务的QoS,提高系统的容量,另外除了满足业务的服务质量外,我们还必须保证系统的容量能够得到保证,否则一个系统除了只能支持少数用户,那也没有意义,如何充分提高系统容量,那么就必须把链路性能跟服务质量结合起来作为调度的考虑因素。基本调度原则eNB负责上下行的调度,上下行是不同的调度器负责,因为上下行使用完全独立的资源,而且在链路性能的监测方面几乎也是独立的,因此设计时,尽量能够独立,但是如果采用TD-LTE的制式,能够结合上下行结合起来调度呢?我想这是应该做的,比如上行调度,完全可以参考下行反馈的信道质量,乃至于空间复用方式选择上;调度器需要考虑的因素包括业务的QoS,业务量以及相关的无线承载,无线条件以及UE能力等;给于UE的UL-SCH的资源是对应一个UE逻辑信道组,而不是对应一个无线承载的。调度器因此调度器的设计需要考虑以下的因素:QoS,针对不同业务,需要保证的业务质量;不同用户之间的优先级处理;同用户的不同业务的优先级处理,这体现在对不同的逻辑信道的处理上;用户所处的无线信号状况,选择最好的信号用户,可以最大的吞吐量,但是缺乏公平公平性考虑,如果考虑轮询,那么系统的性能有可能降低,因此以上两个原因都必须考虑在内基本调度资源:ResourceBlock(RB)调度间隔:(基本TTI)1ms,但是多个TTI可以绑定组成更长的TTI,这样可以获得更大带宽效率,这对高速率业务很有用负责选择TB大小,MCS,天线映射由于取消了专用传输信道,因此除了分配给特定的管理消息的资源,例如同步信道,系统广播消息,参考信号,随机接入等,其他资源都是共享的,因此相对于3G的调度方式,它更像WiMAX的调度方式,是一个完全动态的调度方式,因此系统的性能完全取决于它的调度算法的好坏上,以下因素将是它的调度需要考虑的:虽然我们一再强调资源是共享的,但是在调度方式上面依然有很多选择,主要是针对不 同业务特性设计的,如下所示:动态调度对于UL-SCH和DL-SCH是最基本的调度方式,下图是上行动态调度示意图:图3.4.4-1上行动态调度示意图上图说明简单描述了一个上行动态调度的示意图,1.首先在UE端有一个事件产生,一般是上行有数据发送,已经放在了缓冲区里了,那么它需要为这些数据申请上行资源用于发送。它可以通过SR-PUCCH上行SR控制信道来发送调度请求,或者通过PRACH,此时是采用竞争的方式发送调度请求;2.eNB按照一定的调度原则,如果可以的话就会分配一些资源用于发送BO(BufferOccupation)信息,通过上行调度授权(ULgrant)告诉UE;3.UE发送BO报告告诉eNB对应的逻辑信道组有多少数据要发送,对于上行eNB调度是针对逻辑信道组而不是一个无线承载;4.然后eNB对用户请求的资源情况,分配相应的资源,然后通过ULgrant通知UE;5.UE在自己的逻辑信道直接,根据一定的优先级原则,发送上行数据。半静态调度是一种优化的方式(例如对于UL&DLVoIP),RRC信令负责静态调度参数(周期)的配置,PDCCH信令负责激活/去激活半静态调度资源。静态调度静态调度,显然是有周期性,可配置性的。这些主要是针对广播消息,也就是SIB消息映射到共享信道,然后周期性的发送,还有就是基本上一旦系统起来,它占用的资源就是按照静态分配的形式来使用。还有就是呼叫,它总是周期性的获得调度资源,虽然呼叫不是什么时候都有的,不过考虑到它的周期性,也可以看成静态调度。对动态调度在系统设计上的支持:更加灵活的传输格式完全可变长的RLCPDU大小的结构,这根以前3G的半静态RLCPDU大小非常不同,这种结构的设计对高数据率的时候,可以采用很长的RLCPDU,因为额外开销所占比例降低了,这样可以提高带宽的利用率。 3.4.4.2半静态调度(SPS)半静态调度跟WIMAX系统的UGS相似,由于这些资源主要是分配那些需要周期性调度的业务,比如VoIP,既然是周期性需要的,那么为何不采用事先配置来做呢?这样就可以减少PDCCH的资源,要知道在LTEPDCCH的资源是非常宝贵,上下行共用的;而且如果不发自然也相应的减少了空口资源的使用。当通过RRC消息激活SPS调度,则需要提供以下信息,(可以查36.331来获得这些参数的具体描述与定义):SPSC-RNTI-上行调度间隔semiPersistSchedIntervalUL与隐含指示多少个空传之后释放连接参数implicitReleaseAfter;-下行调度间隔semiPersistSchedIntervalDL以及多少个HARQ进程用于半静态调度numberOfConfSPS-Processes;如果RRC去激活上行或者下行连接,那么相应的配置授权与配置的资源要丢弃。3.4.4.2.1下行当下行SPS资源分配配置好以后,在每一个子帧,UE通过计算下面的公式来判断是不是在这个子帧有这个资源分配:-(10*SFN+subframe)=[(10*SFNstarttime+subframestarttime)+N*semiPersistSchedIntervalDL]modulo10240,N>0其中SFNstarttime和subframestarttime是配置资源分配的起始SFN与起始子帧,这两个值的设置可以在初始化或者重配的时候告诉UE的。3.4.4.2.2上行当上行SPS授权(Grant)配置好,则UE-认为在满足下式的子帧都会存在这个授权:-(10*SFN+subframe)=[(10*SFNstarttime+subframestarttime)+N*semiPersistSchedIntervalUL+Subframe_Offset*(Nmodulo2)]modulo10240,N>0。其中SFNstarttime和subframestarttime是配置资源分配的起始SFN与起始子帧,这两个值的设置可以在初始化或者重配的时候告诉UE的。UE在经过连续implicitReleaseAfter次在SPS分配的资源上空传(MACPDU不包含任何MACSDU)后就要清掉这个配置好的上行授权。注:在清掉配置的上行授权后,还可以继续发送SPS的重传,当然这个资源就要按照通常的调度来获得了。 3.4.5调度请求调度请求(SR)用于请求上行共享信道资源用于发送上行数据所用,当触发了SR时,它就会一直处于挂起的状态直到它被取消为止,也就是要么当这次请求得到满足或者这个SR没有必要了等。由于必须有上行资源,UE才能够发送上行的数据,UE要求被调度的缓冲区状态报告(BSR),它是MAC控制信息单元,在共享信道上发送的,也是需要资源来发送的,那么如何获得用于发送BSR的上行资源呢?这就要先在PUCCH上发送SR或者通过PRACH发送。由于分配给UE的PUCCH是周期性的独占式的资源,UE应该总是有资源的;但是如果在PUCCH上发送的SR总是失败,那么也就需要通过PRACH的竞争方式来获得调度机会。如果触发了一个SR,并且同时没有其它的SR被挂起,那么UE就要把SR_COUNTER设置为0,只要有一个SR正被挂起,那么在每一个TTI,UE都要按照下面流程处理:如果在这个TTI,没有UL-SCH资源可用于发送数据:如果在任何TTI内,UE都没有合法的PUCCH资源用于发送SR,那么就要发起一个随机接入的过程,并且取消所有挂起的SR,这段话的意思就是,当UE有数据要发送,这是就要向eNB请求上行资源,但是却没有PUCCH来发送SR,那么就要通过随机接入来发送调度请求。如果在这个TTIUE有合法的PUCCH资源用于发送SR,并且这个TTI不属于测量时间(由于在切换的情况下,UE要测量邻小区的信号,根本无法处理当前服务小区的服务,因此即使在当前属于UE的服务时间,它也不能够做任何发送与接收的任务,其它过程跟SR类似)-如果SR_COUNTER

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭