LTE资源调度 -- 上行调度请求(2)SR

2024-01-06 20:20
文章标签 请求 资源 调度 lte sr 上行

本文主要是介绍LTE资源调度 -- 上行调度请求(2)SR,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前文已经提到,如果UE不能通过BSR申请上行资源,则会继续尝试通过SR申请,本篇博文就描述通过SR来申请资源的相关内容。

1.什么是SR

SR,全称Scheduling Request,即调度请求,是UE向网侧申请资源用于新数据传输的一种方式。重传是不需要通过SR申请资源的,因为:如果是自适应重传,网侧会主动下发DCI0配置上行资源;如果是非自适应重传,UE直接使用上一次的RB资源。

       SR属于物理层的信息,UE发送SR不需要RB资源,通过PUCCH控制信道传输。网侧成功解码到某个UE的SR信号之后,可能会通过DCI0给该UE分配RB资源,也可能不会分配,UE不应该假设网侧的结果。很多时候,UE为了得到上行RB资源,需要多次发送SR申请。

2.SR的发送时机

当UE触发了一个SR时,该SR就处于“Pending”态,意思就是UE准备但还没有向网侧发送SR。当UE已经组装了一个MAC PDU,并且该PDU包含了最近触发的BSR控制单元,或者上行授权提供的资源可以容纳所有待传的数据,那么处于”Pending“态的SR就会被取消,同时禁止定时器sr-ProhibitTimer也会被停止。换句话说,如果已经准备发送BSR,或者当前的RB资源已经足够,就没有必要再通过SR申请资源了。

sr-ProhibitTimer定时器

sr-ProhibitTimer定时器用于监视在PUCCH中传输的SR信号,当该定时器正在运行时,是不能发送SR的,一旦该定时器超时,UE就需要重新发送SR,直到达到最大发送次数dsr-TransMax。sr-ProhibitTimer定时器的值由RRC配置,在MAC-MainConfig信元中下发到UE,如图1所示。取值范围是0~7,单位是SR周期,值为0表示不配置该定时器,如果值为5,则表示UE发送SR后,如果等待了5个SR周期仍然没有收到DCI0的资源授权,那么将向网侧再次发送SR。


(图1)

       那为什么需要这个sr-ProhibitTimer定时器呢?其实在最开始的R9协议里是没有sr-ProhibitTimer定时器的,只是后来发现如果网侧配置的SR周期比较短,或者如果正在执行VOIP业务,那么UE就会发送不必要的SR。为了避免UE发送不必要的SR,2009年11月份,爱立信、诺西等公司联合提出引入sr-ProhibitTimer定时器,规定只有等该定时器超时了才能继续发送SR,这样也大大降低了PUCCH上的负载。

最大发送次数dsr-TransMax

       该参数在PhysicalConfigDedicated中的schedulingRequestConfig信元中携带,如图2所示,n4表示SR可以最多发送4次,最大值可以取到n64。如果SR重传到最大次数后仍然没有收到DCI0的资源配置,UE将如何处理呢?会发起竞争随机接入。

(图2)

既然有最大次数dsr-TransMax的概念,那么必然需要有一个变量用来记录当前SR的传输次数,协议把这个变量记为SR_COUNTER。如果一个SR被触发,同时没有其他的SR处于”Pending“态,那么UE会把SR_COUNTER设置为0。

只要有一个SR处于”Pending“态,那么UE在每个TTI内均应该按以下的流程处理:

如果当前TTI没有可用的UL-SCH上行资源,那么:
(1)如果UE没有被网侧配置SR资源,则发起竞争随机接入过程,并取消所有处于”Pending“态的SR。
(2)否则,如果UE在当前TTI有可用的PUCCH资源发送SR,且该TTI不在测量GAP中,同时sr-ProhibitTimer定时器也不在运行,那么:
-------(A)如果当前发送次数SR_COUNTER<dsr-TransMax,即还没有达到最大发送次数,则:
                  (a)将SR_COUNTER加1
                  (b)通知物理层在PUCCH上发送SR
                  (c)启动SR禁止定时器sr-ProhibitTimer
-------(B)否则,
                  (a)通知RRC释放PUCCH/SRS
                  (b)清除所有配置过的上下行授权
                  (c)发起一次竞争随机接入过程,并取消所有处于”Pending“态的SR。

上面的流程可以简单图示如下:

(图3)

一旦sr-ProhibitTimer定时器启动,则将进入循环检测状态,此时流程简单示意如下图4所示。


(图4)

3.SR的发送时刻

UE并不是在任意时刻都可以发送SR的,发送SR请求的时刻点需要满足下面的公式。


其中:nf是当前的系统帧号,范围是0~1023。ns是当前的时隙号,范围是0~19。子帧偏移N_OFFSET_SR和SR传输周期SR_PERIODICITY由参数I_SR决定,如图5所示,I_SR的值等于RRC配置的参数sr-ConfigIndex,被放在RadioResourceConfigDedicated->PhysicalConfigDedicated->SchedulingRequestConfig字段中,见前文的图2所示,范围是0~157。需要注意的是,R8版本的协议不支持SR周期等于1ms和2ms的场景。


(图5)

下面举个例子。假定RRC配置的I_SR=6,则SR周期=10ms,SR子帧偏移量=6-5=1。代入上面的公式,可知SR的周期时刻需要满足:( 10×nf + floor( ns / 2 ) -1 ) mod 10 = 0。此时系统帧号nf=0且时隙号ns=2和3(即子帧1的两个时隙)就可以使上面的公式成立,因此就是一个SR周期点。SR周期时序如图6所示。


(图6)

       如果当前是TDD-LTE制式,那么上面这个例子中假定的RRC配置参数是有问题的,为什么呢?因为TDD-LTE制式的所有上下行子帧配置中,1号子帧都是特殊子帧,并不是上行子帧,而UE发送SR只能在上行子帧中发送,因此eNB侧的RRC在配置sr-ConfigIndex参数的时候需要注意到这点。

       图7是一个发送SR过程的示意图。从图中可以看到,这个SR的周期是10ms,在第一个SR周期时刻,由于UE没有可传数据,因此并没有向网侧发送SR请求。到了第二个SR周期时刻点,因为有可传数据且触发了SR,因此向网侧发送了SR,并且在n时刻点收到了来自网侧的上行授权,之后UE在(n+4)时刻向网侧发送了数据。由于没有了可传数据,UE在第三个SR周期不再向网侧申请资源。


(图7)

参考文献:

(1)3GPP TS 36.321 V9.6.0 (2012-03) Medium Access Control (MAC) protocol specification

(2)3GPP TS 36.331 V9.18.0 (2014-06) Radio Resource Control (RRC)

(3)3GPP TS 36.213 V9.3.0 (2010-09) Physical layer procedures

(4)《4G LTE/LTE-Advanced for Mobile Broadband》

这篇关于LTE资源调度 -- 上行调度请求(2)SR的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/577502

相关文章

搭建Kafka+zookeeper集群调度

前言 硬件环境 172.18.0.5        kafkazk1        Kafka+zookeeper                Kafka Broker集群 172.18.0.6        kafkazk2        Kafka+zookeeper                Kafka Broker集群 172.18.0.7        kafkazk3

一种改进的red5集群方案的应用、基于Red5服务器集群负载均衡调度算法研究

转自: 一种改进的red5集群方案的应用: http://wenku.baidu.com/link?url=jYQ1wNwHVBqJ-5XCYq0PRligp6Y5q6BYXyISUsF56My8DP8dc9CZ4pZvpPz1abxJn8fojMrL0IyfmMHStpvkotqC1RWlRMGnzVL1X4IPOa_  基于Red5服务器集群负载均衡调度算法研究 http://ww

49个权威的网上学习资源网站

艺术与音乐 Dave Conservatoire — 一个完全免费的音乐学习网站,口号是“让每一个人都可以接受世界级的音乐教育”,有视频,有练习。 Drawspace — 如果你想学习绘画,或者提高自己的绘画技能,就来Drawspace吧。 Justin Guitar — 超过800节免费的吉他课程,有自己的app,还有电子书、DVD等实用内容。 数学,数据科学与工程 Codecad

Golang进程权限调度包runtime

关于 runtime 包几个方法: Gosched:让当前线程让出 cpu 以让其它线程运行,它不会挂起当前线程,因此当前线程未来会继续执行GOMAXPROCS:设置最大的可同时使用的 CPU 核数Goexit:退出当前 goroutine(但是defer语句会照常执行)NumGoroutine:返回正在执行和排队的任务总数GOOS:目标操作系统NumCPU:返回当前系统的 CPU 核数量 p

Java http请求示例

使用HttpURLConnection public static String httpGet(String host) {HttpURLConnection connection = null;try {URL url = new URL(host);connection = (HttpURLConnection) url.openConnection();connection.setReq

文章解读与仿真程序复现思路——电力自动化设备EI\CSCD\北大核心《考虑燃料电池和电解槽虚拟惯量支撑的电力系统优化调度方法》

本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源程序擅长文章解读,论文与完整源程序,等方面的知识,电网论文源程序关注python

10 Source-Get-Post-JsonP 网络请求

划重点 使用vue-resource.js库 进行网络请求操作POST : this.$http.post ( … )GET : this.$http.get ( … ) 小鸡炖蘑菇 <!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-w

汇编:嵌入式软件架构学习资源

成为嵌入式软件架构设计师需要掌握多方面的知识,包括嵌入式系统、实时操作系统、硬件接口、软件设计模式等。 以下是一些推荐的博客和网站,可以帮助你深入学习嵌入式软件架构设计: ### 1. **Embedded.com**    - **网址**: [Embedded.com](https://www.embedded.com/)    - **简介**: 这是一个专注于嵌入式系统设计的专业网

Unity 资源 之 Super Confetti FX:点亮项目的璀璨粒子之光

Unity 资源 之 Super Confetti FX:点亮项目的璀璨粒子之光 一,前言二,资源包内容三,免费获取资源包 一,前言 在创意的世界里,每一个细节都能决定一个项目的独特魅力。今天,要向大家介绍一款令人惊艳的粒子效果包 ——Super Confetti FX。 二,资源包内容 💥充满活力与动态,是 Super Confetti FX 最显著的标签。它宛如一位

项目一(一) HttpClient中的POST请求和GET请求

HttpClient中的POST请求和GET请求 一、HttpClient简述 HttpClient是Apache Jakarta Common下的子项目,用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包,并且它支持HTTP协议最新的版本和建议。HttpClient已经应用在很多的项目中,比如Apache Jakarta上很著名的另外两个开源项目Cactus和HTMLU