CN111066272B - 移动无线电接入网络中的分组延迟减少 - Google Patents
移动无线电接入网络中的分组延迟减少 Download PDFInfo
- Publication number
- CN111066272B CN111066272B CN201780094781.7A CN201780094781A CN111066272B CN 111066272 B CN111066272 B CN 111066272B CN 201780094781 A CN201780094781 A CN 201780094781A CN 111066272 B CN111066272 B CN 111066272B
- Authority
- CN
- China
- Prior art keywords
- sublayer
- buffer
- delay
- data unit
- queue length
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/0252—Traffic management, e.g. flow control or congestion control per individual bearer or channel
- H04W28/0257—Traffic management, e.g. flow control or congestion control per individual bearer or channel the individual bearer or channel having a maximum bit rate or a bit rate guarantee
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/30—Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/0278—Traffic management, e.g. flow control or congestion control using buffer status reports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/08—Load balancing or load distribution
- H04W28/082—Load balancing or load distribution among bearers or channels
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/02—Processing of mobility data, e.g. registration information at HLR [Home Location Register] or VLR [Visitor Location Register]; Transfer of mobility data, e.g. between HLR, VLR or external networks
- H04W8/04—Registration at HLR or HSS [Home Subscriber Server]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W80/00—Wireless network protocols or protocol adaptations to wireless operation
- H04W80/02—Data link layer protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/1874—Buffer management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
用于减少移动无线电接入网络中的分组延迟的系统、方法、设备和计算机程序产品。一种方法可包括:当无线接入链路的第一子层的缓冲器为空并且第一子层中存在新数据单元时,或者当第一子层缓冲器不为空并且数据单元离开第二子层缓冲器时,将当前存储在第二子层缓冲器中的数据单元的数量与定义了第二子层缓冲器中的总空间量的队列长度阈值进行比较。当所述当前存储在第二子层缓冲器中的数据单元的数量小于所述队列长度阈值时,该方法还可包括将数据单元从第一子层传输到第二子层。
Description
技术领域
本发明的实施例通常涉及移动无线电接入网络,例如但不限于通用移动电信系统(UMTS)地面无线电接入网络(UTRAN)、长期演进(LTE)、演进的UTRAN(E-UTRAN)、高级LTE(LTE-A)、LTE-A Pro和/或5G无线电接入技术或新无线电(NR)接入技术。例如,一些实施例通常可涉及减少无线电接入网络(RAN)的协议栈中的数据分组的延迟时间。
背景技术
通用移动电信系统(UMTS)地面无线电接入网络(UTRAN)指的是一种通信网络,包括基站或节点B,以及例如无线电网络控制器(RNC)。UTRAN允许用户设备(UE)与核心网络之间的连接。RNC为一个或多个节点B提供控制功能。RNC及其对应的节点B称为无线电网络子系统(RNS)。在演进UTRAN(E-UTRAN)的情况下,空中接口设计、协议架构和多址原则比UTRAN的更为新颖,不存在RNC,并且由演进的节点B(eNodeB或eNB)或许多eNB提供无线电接入功能。例如,在协作多点传输(CoMP)的情况下和在双连接中,对于单个UE连接涉及多个eNB。
与前几代相比,长期演进(LTE)或E-UTRAN提高了效率和服务,提供了更低的成本,并提供了新的频谱机会。特别地,LTE是3GPP标准,其规定至少例如每载波75兆比特/秒(Mbps)的上行链路峰值速率和至少例如每载波300Mbps的下行链路峰值速率。LTE支持从20MHz到1.4MHz的可扩展载波带宽,并支持频分双工(FDD)和时分双工(TDD)。载波聚合或所述双连接还允许同时在多个分量载波上操作,因此使性能(例如每用户的数据速率)成倍增长。
如上所述,LTE还可提高网络中的频谱效率,从而允许载波在给定带宽上提供更多的数据和语音服务。因此,除了高容量语音支持之外,LTE还被设计为满足高速数据和媒体传输的需求。LTE的优势包括,例如高吞吐量、低延迟、在同一平台上支持FDD和TDD、改善的最终用户体验以及导致低运营成本的简单架构。
3GPP LTE的某些另外的版本(例如LTE Rel-10、LTE Rel-11)针对于高级国际移动电信(IMT-A)系统,在本文中为方便起见简称为高级LTE(LTE-A)。
LTE-A针对扩展和优化3GPP LTE无线电接入技术。LTE-A的目标是通过更高的数据速率和更低的延迟以及降低的成本来提供显著增强的服务。LTE-A是一种更优化的无线电系统,满足高级IMT的国际电信联盟无线电(ITU-R)要求,同时保持向后兼容性。LTE Rel-10中引入的LTE-A的关键特征之一是载波聚合,其允许通过聚合两个或更多个LTE载波来提高数据速率。3GPP LTE的下一个版本(例如LTE Rel-12、LTE Rel-13、LTE Rel-14、LTE Rel-15)的目标是进一步改进专用服务,缩短延迟并满足接近5G的要求。
第五代(5G)或新无线电(NR)无线系统是指下一代(NG)无线电系统和网络架构。5G也被称为看起来如IMT-2020系统一样。据估计,5G将提供10-20Gbit/s级别或更高的比特率。5G将至少支持增强型移动宽带(eMBB)和超可靠的低延迟通信(URLLC)。预计5G还将网络扩展性提高到数十万个连接。预计5G的信号技术将具有更大的覆盖以及频谱和信令效率。预计5G将提供极端的宽带和超鲁棒的低延迟连接性以及大规模联网,以支持物联网(IoT)。随着IoT和机器对机器(M2M)通信的日益普及,对满足低功耗、低数据速率和长电池寿命需求的网络的需求将日益增长。在5G或NR中,节点B或eNB可称为下一代或5G节点B(gNB)。
发明内容
一个实施例针对一种方法,该方法可包括:当无线接入链路的第一子层的缓冲器为空并且第一子层中存在新数据单元时,或者当第一子层缓冲器不为空并且数据单元离开第二子层缓冲器时,将当前存储在第二子层缓冲器中的数据单元的数量与定义第二子层缓冲器中的空间总量的队列长度阈值进行比较。当所述当前存储在第二子层缓冲器中的数据单元的数量小于所述队列长度阈值时,该方法还可包括将数据单元从所述第一子层传输到所述第二子层。
另一实施例针对一种设备,该设备包括比较装置,该比较装置用于:当无线接入链路的第一子层的缓冲器为空并且第一子层中存在新数据单元时,或者当第一子层缓冲器不为空并且数据单元离开第二子层缓冲器时,将当前存储在第二子层缓冲器中的数据单元的数量与定义第二子层缓冲器中的空间总量的队列长度阈值进行比较。当所述当前存储在第二子层缓冲器中的数据单元的数量小于所述队列长度阈值时,该设备还可包括用于将数据单元从所述第一子层传输到所述第二子层的传输装置。
另一实施例针对一种设备,其可包括至少一个处理器和至少一个包括计算机程序代码的存储器。所述至少一个存储器和计算机程序代码可被配置为与所述至少一个处理器一起使所述设备至少:当无线接入链路的第一子层的缓冲器为空并且第一子层中存在新数据单元时,或者当第一子层缓冲器不为空并且数据单元离开第二子层缓冲器时,将当前存储在第二子层缓冲器中的数据单元的数量与定义第二子层缓冲器中的空间总量的队列长度阈值进行比较。当所述当前存储在第二子层缓冲器中的数据单元的数量小于所述队列长度阈值时,所述至少一个处理器和计算机程序代码还可被配置为与所述至少一个存储器使设备至少将数据单元从所述第一子层传输到所述第二子层。
另一实施例针对一种体现在非暂时性计算机可读介质上的计算机程序。该计算机程序可被配置为控制处理器执行过程,该过程包括:当无线接入链路的第一子层的缓冲器为空并且第一子层中存在新数据单元时,或者当第一子层缓冲器不为空并且数据单元离开第二子层缓冲器时,将当前存储在第二子层缓冲器中的数据单元的数量与定义第二子层缓冲器中的空间总量的队列长度阈值进行比较。当所述当前存储在第二子层缓冲器中的数据单元的数量小于所述队列长度阈值时,该过程还可包括将数据单元从所述第一子层传输到所述第二子层。
附图说明
为了适当地理解本发明,应参考附图,其中:
图1示出了根据一个实施例的系统的示例框图;
图2示出了根据一个实施例的通过移动RAN协议栈的应用客户端-服务器连接的示例框图;
图3a示出了根据一个实施例的方法的示例流程图;
图3b示出了根据另一实施例的方法的示例流程图;
图4示出了根据一个实施例的系统或架构的示例框图;
图5示出了根据另一实施例的方法的示例流程图;
图6示出了根据另一实施例的方法的示例流程图;
图7示出了根据另一实施例的方法的示例流程图;
图8示出了根据一个实施例的设备的框图;以及
图9示出了根据一些实施例的存储介质的一些示例。
具体实施方式
将容易理解,如本文的附图中一般性描述和示出的,本发明的组件可以各种不同的配置来布置和设计。因此,如附图所示和以下所描述的,用于减少移动无线电接入网络中的分组延迟的系统、方法、设备和计算机程序产品的实施例的以下详细描述,并不旨在限制本发明的范围,而是代表本发明的选定实施例。
在整个说明书中描述的本发明的特征、结构或特性可在一个或多个实施例中以任何合适的方式组合。例如,在整个说明书中,短语“某些实施例”、“一些实施例”或其他类似语言的使用是指结合该实施例描述的特定特征、结构或特性可包括在本发明的至少一个实施例中的事实。因此,在整个说明书中,短语“在某些实施例中”、“在一些实施例中”、“在其他实施例中”或其他类似语言的出现不一定全都指同一组实施例,并且所描述的特征、结构或特性可以任何合适的方式组合在一个或多个实施例中。
另外,如果需要,下面讨论的不同功能可以不同的顺序和/或彼此同时执行。此外,如果需要,所描述的功能中的一个或多个可是可选的或可被组合。这样,以下描述应被认为仅是本发明的原理、教导和实施例的说明,而不是对其的限制。
本公开的某些实施例使得能够减少移动无线电接入网络(RAN)的协议栈中的数据分组的停留时间(sojourn time)。因此,一些实施例减少了相同分组在网络应用的端点之间移动时的端到端延迟。
端到端分组延迟是指在网络连接的发送器端创建数据分组与在同一连接的接收端消耗数据分组之间的时间。图1示出了包括应用服务器101、应用客户端102和端点105的系统的示例框图。在本公开的某些实施例中,数据分组的创建是指将其有效载荷置于发送器的传输套接字缓冲器中的动作,发送器是图1中的应用服务器101;分组的消耗是从接收器的套接字缓冲器中删除其有效载荷的动作,接收器是图1中所示的应用客户端102。这两种事务都可发生在传输层套接字和应用层端点之间。
端到端分组延迟对于涉及连接端点之间一定程度的交互性的不断增长的网络应用集的体验质量(QoE)尤其重要。例如,语音和视频会议分组应该在固定的时间量(例如100ms)内到达接收器以完全可用。作为另一个示例,如果用户动作与其在屏幕上的效果之间的往返时间(RTT)大大低于100ms,则认为远程桌面应用和视频流会话的远程控制功能正常。在线游戏也有类似的要求。对于更新的应用(例如增强现实(AR)和虚拟现实(VR))的成功运行,延迟边界变得更加严格,在这些应用中,RTT超过10ms就会立即感觉到质量下降。
图2示出了通过移动RAN协议栈的应用客户端-服务器连接的示例框图。移动RAN的协议栈包括多个层和子层。本公开的某些实施例可集中于无线接入链路的链路层。以3GPP移动无线网络(UMTS和LTE)的协议栈为例,将链路层细分为三个不同的子层。从上到下,它们分别称为分组数据汇聚协议(PDCP)、无线电链路控制(RLC)和媒体访问控制(MAC)。RLC子层可以三种不同的模式运行:透明(RLC-TM)、未确认(RLC-UM)和确认(RLC-AM)。
在RLC-AM中,仅在发送器已从接收器获得成功发送的明确确认之后,才将数据单元视为已传递到无线链路的接收器端。这意味着每个RLC-AM实例必须包括至少用于保存尚未被接收器确认的已发送的分组的分组缓冲器。由于无线链路必须能够在链路带宽降至源的发送速率以下时缓冲分组,因此RLC-AM缓冲器的必要性最终使RLC子层成为链路层缓冲的默认位置。这种选择不是3GPP标准的强制性要求,而是在试图避免协议栈中的多个缓冲点时,尤其是在需要延迟最小化时,这是一个直接选择。但是,在PDCP子层中缓冲并不罕见,尤其是当PDCP和RLC实例不在同处(co-located)时(例如因为它们是在不同的硬件组件中实现的)。
RLC-UM和RLC-AM的重要特征是将RLC服务数据单元(SDU)分段和级联为RLC协议数据单元(PDU)。作为最大化空中接口带宽的使用效率所需要的该功能的立即结果,IP分组可分布在多个RLC PDU上,并且RLC PDU可包含多个IP分组的分段。后一点与延迟最小化特别相关。由于相同的RLC PDU可携带不同IP分组的分段,并且这些IP分组可属于来自不同应用的流,因此,服务到由相同RLC实例所服务的流的分布可完全由RLC PDU的发送(RLC-UM)或确认(RLC-AM)顺序控制。这意味着不可能在RLC子层内按流区分服务。而是,仅在不支持分段和级联的RLC实例中才可能进行这种服务区分。对于相同承载所携带的所有应用流,缺乏按流服务区分转化为RLC子层内的先进先出(FIFO)共享队列布置。来自多个应用的流所共享的队列中的延迟最小化完全依赖于将RLC缓冲器的占用率保持在不降低承载吞吐量的最低水平。
确保始终满足应用的端到端延迟要求的蛮力方法是过度提供端到端数据路径的带宽。如果数据路径中每条链路的带宽始终超过应用的分组流的需求,则端到端延迟实际上由传播组件因此也由路径的物理长度支配。但是,由于下面讨论的至少三个常见原因,这种条件不容易获得和维持。
如果应用使用TCP协议进行传输,则其分组流通常趋于使数据路径中最慢的链路(通常称为“瓶颈链路”)上的可用带宽饱和。在瓶颈带宽饱和之后,发送器的发送速率与链路带宽之间的任何差异都转化为链路缓冲器中排队时延的累积,进而导致端到端延迟增加,超出裸(bare)传播分量。原则上,永远不可能为TCP流的瓶颈带宽过度提供带宽,因为TCP源的设计完全是为了使该带宽达到饱和。
当TCP连接的分组流与其他应用生成的分组流共享瓶颈链路的分组缓冲器时,它增加那些流的端到端分组延迟。尽管已经设计了许多队列管理策略来限制共享分组缓冲器的延迟贡献,但是相同的策略也会引入分组丢失,这可能会干扰其中一些应用的预期操作。
在包括无线链路的端到端数据路径中,瓶颈带宽通常由那些链路之一的状态确定。由于无线链路物理条件的可变性,应用流可用的带宽变化与在有线介质上建立数据路径中所有链路的情况相比更为广泛和迅速。链路带宽的下降增加数据源与瓶颈链路之间已经传输的分组的延迟,这可能影响整个端到端延迟。
解决上述限制的一种综合方法包括在无线链路(3GPP无线电承载)的前面分配每流队列,然后在传输连接的服务器端在每个流队列与对应数据源之间建立直接信令关系。流队列布置还涉及轮询调度器(round-robin scheduler),该轮询调度器为给定时间繁忙的所有队列分配相等的带宽份额,确保流隔离,从而防止一个应用的分组流当其分组到达无线链路缓冲器的时间未均匀分布时使另一个流的分组的端到端延迟上涨。队列和对应源之间的直接信令关系还使得能够控制自我施加的排队延迟,该排队延迟是一个流的分组当该同一流的许多先前分组已经位于瓶颈缓冲器中时所遭受的延迟。
如上所述,由于在RLC-AM和RLC-UM中发生的数据单元的分段和级联,RLC子层不适合流排队布置。因此,必须在3GPP RAN堆栈的PDCP子层中实现流排队(请注意,至少对于要针对第五代移动无线网络或5G进行标准化的某些无线接口,设想将类似的堆栈布置保留在适当的位置)。为了在不损害承载的吞吐量的情况下最小化延迟,RLC子层必须配备分组缓冲器,分组缓冲器的尺寸动态调整以适应承载所经历的带宽波动。
本公开的某些实施例定义了一种用于使RLC缓冲器中的数据单元的停留时间最小化而不会造成吞吐量的明显损失的系统和方法。鉴于以上所述,一些实施例可至少解决针对在移动接入网络上运行的应用的不可预测的和高的端到端分组延迟的问题。
如上所述,本文描述的某些实施例可适用于3GPP移动无线网络的协议栈,该协议栈包括PDCP子层、RLC子层和MAC子层。然而,应当注意,这仅是一个示例,并且其他实施例也可适用于其他接口层,并且不限于一种类型的协议层或协议栈。
低延迟和超低延迟通常包括在即将到来的5G无线网络和新的移动RAN协议将启用的一组新能力中。应当注意,在那些能力与通过本公开的实施例实现的延迟改善之间存在明显的区别。5G延迟改善主要针对无线接口的物理和MAC层,例如采用新的调制和调度方案。到达空的链路缓冲器的分组几乎立即通过无线接口发送,等待时间远低于1ms。这确实是相对于现有的移动无线接口(例如用于UMTS和LTE的那些)的重大进步。其他增强利用核心网络协议的简化,来减少在移动设备的网络附着时间与其与网络成功交换第一数据分组的时间之间的延迟。
为5G设想的新解决方案将有益于所有类型的应用,但不会消除对端到端延迟的所有贡献。例如,特别是对于使用弹性端到端传输以最大化利用可用无线电资源的应用而言,新的5G解决方案无法解决当应用数据源的发送速率超过无线链路的带宽时的排队延迟的累积(“自发延迟”),也无法解决由共享相同链路的其他弹性应用的活动引起的排队延迟的累积(“外源延迟”)。本公开的某些实施例集中于减轻由两个或更多个应用共享的无线链路中的外源延迟。
流排队是众所周知的缓冲器管理方案,其通过确保每个流接收的短期带宽仅取决于具有排队分组的流的数量而不取决于其分组到达的速率和模式,从而有效地隔离了并发应用的业务流。当链路拥塞时,每个流将其分组存储在专用队列中,并且调度器基于预定义的公平性准则访问队列以发送其分组。随机公平排队(SFQ)是一种运行流排队布置的简单方法,无需要处理的应用流量的性质和要求的先验知识。在SFQ中,每个输入(incoming)分组通过散列其报头中对于各自的流唯一的部分而被映射到队列。这样,流的所有分组最终都将在相同队列中。轮询调度器以均匀的频率访问繁忙的队列,以提取和发送它们的分组。每次访问时,调度器都可提取固定数量的排队分组或固定数量的字节(以确保精确的吞吐量公平性)。散列函数的使用消除了为已建立的每个新流提供分组分类规则以及在流被拆除时删除分组分类规则的需要。缺点是散列冲突的可能性,其中不同流的分组最终在同一队列中。但是,通过适当调整哈希值范围的大小,可将冲突的可能性保持在舒适的较低水平。当共享瓶颈缓冲器的两个流的分组到达速率不同时,较快的流比较慢的流更快地填充其专用队列。当存储的分组耗尽分配给单个链路的流队列的缓冲器空间并且有新的分组到达时,如果从集合中最长的队列中删除分组,则最好强制执行流隔离。
在移动RAN协议栈中,如果只有一个排队阶段并且该阶段可布置有流队列,则对于最小化排队延迟和端到端延迟将是理想的。然而,如上所述,有效使用无线链路带宽的要求强加了RLC子层中每承载的单个FIFO队列的实例化。流队列只能在更高的子层中实现,最好与RLC相邻。因此,追求最小化外源排队延迟的承载必须将RLC子层中的共享FIFO队列与PDCP子层中的一组流队列组合起来。因此,某些实施例提供了一种设备和方法,用于以不降低共享无线电承载(无线链路)的应用的总数据吞吐量的方式来最小化RLC子层的共享FIFO队列中的排队延迟。
一个实施例针对通过控制来自PDCP子层中的流排队阶段的分组的准入来限制RLC分组缓冲器中的排队延迟。准入控制可由延迟阈值(DLT)驱动,并受队列长度阈值(QLT)影响。
根据某些实施例,RLC缓冲器控制的操作的示例如下。在一个实施例中,RLC缓冲器可基于优选延迟度量(DLM)来监控其存储的服务数据单元(SDU)的排队延迟。例如,DLM可包括,但不限于,在给定时间间隔内收集的延迟样本的平均值、在该时间间隔期间收集的最小延迟样本、最大样本和/或所收集样本的移动平均值。对于每个SDU,延迟样本可被获得或被计算为在从缓冲器离开的时间与SDU到达时间戳之间的差,该SDU到达时间戳与SDU存储在一起。RLC缓冲器可例如按照持续时间DMT或延迟测量时间的间隔而周期性地计算或采样度量DLM。每次获得新的DLM样本时,都可将其与DLT进行比较。在一个实施例中,该比较可导致对QLT的至少三种可能的影响。例如,基于该比较,可将QLT保持相同、增加或减少。
根据一个实施例,每当SDU离开RLC缓冲器时,可将当前存储在RLC SDU缓冲器(RQL)中的SDU的数量与QLT进行比较。如果RQL<QLT,则RLC缓冲器可向PDCP流队列调度器请求将PDCP服务数据单元(SDU)传输到RLC子层。如果找到了PDCP SDU,则可先将其格式化为PDCP PDU,然后再格式化为RLC SDU,并如此存储在RLC FIFO队列的尾部。还可基于标准过程将SDU分段为RLC PDU。SDU的分段可最终与其他SDU的分段(可能来自其他流)级联在共同RLC PDU中。
在一个实施例中,在RLC-UM中,当已通过无线介质发送所有对应的PDU以及最重要的其尾部PDU时,可从RLC-UM SDU缓冲器中删除SDU。根据一个实施例,在RLC-AM中,当接收器已经确认了所有对应的PDU时,可从RLC-AM SDU缓冲器中删除SDU(因此,当QLT相同时,所测量的排队延迟对于RLC-AM通常比对于RLC-UM更大)。从PDCP到RLC的数据单元传输完成后,可再次比较RQL和QLT,然后可重复比较直到发现RQL和QLT相等。当新数据单元到达PDCP子层并发现其缓冲器为空时,也可比较RQL和QLT。在这种情况下,如果RQL<QLT,则PDCP SDU可立即移至RLC缓冲器,否则可将其存储在PDCP缓冲器中。
结果,某些实施例能够独立于可用于承载的带宽而在RLC子层中执行期望的排队延迟。因此,建立期望的排队延迟的队列长度阈值随着承载可用的带宽而增加。固定的QLT会随着承载的带宽的减少而使排队延迟增加。从理论上讲,可将期望的排队延迟DLT设为任意小,以满足非常严格的延迟要求。然而,实践中,每个RLC实例的操作和配置可对延迟阈值DLT的选择施加困难的约束。在RLC-UM的情况下,MAC调度器可在PDU传输之间施加时间间隙。延迟阈值DLT不应小于此类间隙。在RLC-AM的情况下,协议配置可在确认数据PDU接收的状态PDU的传输(从RLC接收器到RLC发送器)之间施加时间间隙。这些时间间隙有助于提高空中接口带宽的整体利用率。但是,如果状态PDU之间的时间间隙大于数据PDU之间的时间间隙,则它成为调整延迟阈值DLT大小的支配因素。因此,实施例包括一种方法,该方法用于检测RLC-AM配置在连续状态PDU传输之间施加的时间间隙,并用于相应地调整延迟阈值DLT。例如,一个实施例可测量时间间隙(例如通过累积在称为平均时间间隙(ATG)的移动平均值中的样本),并将固定的乘数FMX应用于该度量以动态地设置延迟阈值DLT。
图3a示出了根据一个实施例的用于基于优选延迟度量来监控存储在第二子层缓冲器中的服务数据单元(SDU)的排队延迟的方法的示例流程图。在一个实施例中,图3a的方法可由例如服务器、应用服务器、基站、节点B、eNB或gNB的网络节点执行。在一个示例中,第二子层可是RLC子层。如图3a的示例所示,该方法可包括:在300处,对于每个SDU,将优选延迟度量(DLM)的样本计算为在离开第二子层缓冲器的时间与SDU到达时间戳之间的差,SDU到达时间戳与SDU存储在一起。在一个实施例中,如上所述,优选延迟度量可包括在给定时间间隔期间收集的延迟样本的平均值、在该间隔期间收集的最小延迟样本、最大样本和/或所收集样本的移动平均值。
根据一个实施例,计算300可包括周期性地,例如以延迟测量时间的间隔,来计算延迟度量(DLM)。在一个实施例中,该方法可进一步包括,在310,每当获得延迟度量的新样本时或经过一定时间段后,将延迟度量(DLM)与延迟阈值(DLT)进行比较。在一个实施例中,该方法可包括在320处基于DLM和DLT之间的比较结果来修改队列长度阈值(QLT)。例如,修改320可包括基于该比较使QLT保持相同、增加QLT或减少QLT。
图3b示出了根据一个实施例的用于通过控制来自第一子层中的流排队阶段的分组的准入来限制第二子层分组缓冲器中的排队延迟的方法的示例流程图。在一个实施例中,图3b的方法可例如由例如服务器、应用服务器、基站、节点B、eNB或gNB的网络节点执行。在某些实施例中,第一子层可是PDCP子层,第二子层可是RLC子层。如图3b的示例所示,该方法可包括在340处确定在第一子层中是否存在新数据单元。如果在第一子层中存在新数据单元,则该方法可包括在342处确定第一子层缓冲器是否为空。如果第一子层缓冲器不为空,则该方法可包括在348处将数据单元存储在第一子层缓冲器中并返回至步骤340。如果第一子层缓冲器为空,则该方法可进行至下面讨论的步骤350。
如果在340处确定在第一子层中不存在新数据单元,则该方法可包括在344处确定数据单元是否已经离开第二子层缓冲器。如果确定数据单元还没有离开第二子层缓冲器,则该方法可返回到步骤340。如果在344处确定数据单元已经离开了第二子层缓冲器,则该方法可包括在346处确定第一子层是否为空。如果第一子层缓冲器为空,则该方法可返回到步骤340。如果在346处确定第一子层缓冲器不为空,则该方法可进行至以下讨论的步骤350。
在350处,该方法可包括将当前存储在第二子层缓冲器(RQL)中的数据单元的数量与QLT进行比较。例如,在一个实施例中,可以每当数据单元离开第二子层缓冲器时执行比较350。根据一个实施例,如果在355处确定RQL不小于QLT,则该方法可返回到步骤340。
如果在355处确定RQL小于QLT,则该方法可包括在360处从第一子层流队列调度器请求数据单元的传输和/或将数据单元从第一子层传输到第二子层。该方法然后可包括在370处将数据单元排队或存储在第二子层缓冲器中。
根据某些实施例,数据单元可是SDU。在一个实施例中,当第一子层SDU到达第二子层时,该SDU可首先被格式化为第一子层PDU,然后被格式化为第二子层SDU,并如此存储在第二子层FIFO队列的尾部。SDU还可被分段成第二子层PDU,并且SDU的分段可最终与其他SDU的分段(可能来自其他流)级联在共同第二子层PDU中。
在一个实施例中,在未确认模式(例如RLC-UM)中,可以当所有对应的PDU及其尾部PDU已经通过无线介质发送时,从第二子层SDU缓冲器中删除SDU。根据一个实施例,在确认模式(例如RLC-AM)中,可以当所有对应的PDU已经被接收器确认时,从第二子层SDU缓冲器中删除SDU。在一个实施例中,比较350可包括在完成从第一子层向第二子层的数据单元传输之后再次比较RQL和QLT,然后可重复比较直到发现RQL和QLT相等。
在一个实施例中,比较350可包括:当新数据单元到达第一子层并发现其缓冲器为空时,比较RQL和QLT。在这种情况下,如果RQL<QLT,则数据单元可立即从第一子层移动到第二子层缓冲器,否则可将其存储在第一子层缓冲器中。
图4示出了根据一个实施例的系统或架构的示例框图。特别地,图4示出了携带从左向右向下游流动的用户数据以及从右向左向上游流动的控制消息的数据单元。在一个实施例中,仅当RLC子层410向PDCP子层400提供对RLC缓冲器具有需要的可用空间的显式指示时,才发生向RLC子层中的数据单元传输,在此首先将它们作为RLC SDU进行缓冲。总RLC缓冲器空间由队列长度阈值(QLT)定义。如上所述,当RLC队列长度(RQL)小于QLT时,可认为空间可用。当底层MAC子层发现在空中接口上的无线电承载的传输机会时,RLC子层410发送RLC数据PDU。使用RLC-UM,当已将RLC SDU被分段成的所有PDU已发送后,从RLC缓冲器中删除该RLC SDU。对于RLC-AM,仅当RLC-AM接收器已通过无线链路确认所有PDU时,才进行删除。如图4所示,确认可由状态PDU携带。
某些实施例可包括两个独立运行但共享一些数据结构和/或物理资源的过程。一个过程针对“SDU到达”,另一过程针对“SDU离开”。每当一个进程访问共享数据结构时,它就可锁定该数据结构以阻止另一进程访问。阻塞过程会在使用完数据结构后立即将其解锁。
图5示出了根据一个实施例的描绘“SDU到达”过程的操作的示例流程图。如图5所示,该方法可从步骤500开始,然后前进到步骤510,在步骤510中,确定PDCP子层是否已经接收到新的SDU。如果确定尚未接收到新的SDU,则该方法可返回到步骤510。如果它已经接收到新的SDU,则该方法可包括在520处确定无线电承载的PDCP缓冲器当前是否为空以及RLC缓冲器(RQL)的占用率是否当前低于新RLC SDU的准入阈值QLT。如果不是,则该方法可返回到步骤510。如果是,则该方法可包括在530处从PDCP子层接收数据单元并将其格式化为RLCSDU。该方法还可包括在540处将新SDU的到达时间戳设置为等于当前系统时间并且将SDU与时间戳一起排队到RLC缓冲器,并且返回到步骤510。
图6示出了根据一个实施例的在RLC-AM的情况下描绘“SDU离开”方法的操作的示例流程图。如图6所示,该方法在步骤600开始,然后在605包括检查RLC子层是否已经从底层MAC子层接收到新状态PDU。如果已经接收到新状态PDU,则该方法可包括在610处测量状态PDU的到达与前一个状态PDU的到达之间的时间间隙。如果时间间隙样本被验证为有意义的(例如因为自从前一个样本收集以来,RLC缓冲器从未为空),则将其用于更新加权移动平均ATG。然后将ATG与固定乘数FMX相乘以获得延迟阈值DLT的新值(DLT=ATG·FMX)。如果尚未接收到新状态PDU,则该方法可返回到步骤605以再次检查。然后该方法可包括在615检查刚接收到的状态PDU是否确认至少一个RLC SDU的尾部PDU,如果是,则该方法可进行到步骤620,否则该方法可返回到步骤605。
该方法可进一步包括在620处收集由刚接收到的状态PDU所确认的头部SDU的延迟样本,作为当前系统时间与利用SDU找到的到达时间戳之间的差。该方法然后可包括在625处使用新的延迟样本来更新用于控制缓冲器阈值QLT的延迟度量DLM。例如,可将新的延迟样本与自最小持续时间DMT的上一个采样周期开始以来收集的延迟样本的运行最小值(running minimum)进行比较。如果它更小,则新的延迟样本将成为新的最小值。作为第一替代方案,可将新的延迟样本与在当前采样周期期间收集的延迟样本的运行最大值(running maximum)进行比较。作为第二替代方案,可将延迟样本添加到在当前采样周期开始时重置的样本累加器。作为第三替代方案,可将新的延迟样本添加到自建立无线电承载以来收集的延迟样本的指数加权移动平均值中。
在更新了SDU延迟度量之后,该方法然后可包括在630处检查自从DLM与延迟阈值DLT的前一次比较以来是否已经经过了DMT时间。如果自上次执行比较以来的时间等于或长于DMT,则可发生新的比较,并且重置用于执行比较的计时器。如果DLM≥DLT,则可减少队列长度阈值,例如减少固定量或其当前值的固定比例。减少可受到被认为是RLC适当运行所必需的最小QLT值的限制。如果取而代之的是DLM<DLT,则可增加QLT,或增加固定量或增加其当前值的固定比例。该增加可受到最大QLT的限制,该最大QLT被认为足以使RLC充分利用承载可接收的最高带宽。基于具有单个DLT值的DLM比较的二进制决策只是QLT控制规则的实例化的一个示例。根据其他实施例,也可应用涉及多个阈值和用于计算QLT的新值的扩展选项集的其他规则。然后,过程转到步骤635。
继续图6,在635,该方法可包括从SDU缓冲器中删除报头SDU,然后在640,检查RLC队列(RQL)的当前长度是否小于QLT。如果是,则该方法可移至步骤645,否则该方法返回至步骤615以检查新的头部SDU是否也使其尾部PDU通过接收的上一个状态PDU确认了。在步骤645,该方法可包括检查在PDCP缓冲器中是否存储有至少一个PDCP SDU。如果是,则方法可继续至步骤650。否则,该方法可返回至步骤615以确定RLC缓冲器中的新头部SDU是否也使其尾部PDU通过上一个到达状态PDU确认了。在步骤650,该方法可包括:如由PDCP流调度器立即指定的那样,从PDCP缓冲器请求头部SDU,将其转换为RLC SDU,以及将其与被设置为等于当前系统时间的时间戳一起存储到RLC SDU缓冲器中。然后,该方法可返回到步骤615。
图7示出了根据实施例在RLC-UM情况下描绘“SDU离开”方法的操作的示例流程图。与RLC-AM情况相比,RLC-UM中的SDU延迟不包括SDU的尾部PDU等待带有对应确认的状态PDU到达的时间。因此,无需调整延迟阈值DLT以适应连续状态PDU到达之间的所测量时间间隙。
如图7所示,RLC-UM的SDU离开过程开始于步骤700,然后移至步骤705,在步骤705该方法包括检查RLC子层是否已在SDU缓冲器中发送了头部SDU的尾部PDU。如果是,则该方法进入步骤710,否则返回步骤705。该方法可包括在710处,通过从当前系统时间中减去SDU的时间戳来测量报头SDU的延迟。然后该方法可包括在715处使用新的延迟样本来更新可用于控制缓冲器阈值QLT的延迟度量DLM。例如,可将新的延迟样本与自上一个采样周期开始以来收集的延迟样本的运行最小值进行比较。如果它更小,则新的延迟样本可成为新的最小值。作为第一替代方案,可将新的延迟样本与在当前采样周期期间收集的延迟样本的运行最大值进行比较。作为第二替代方案,可将延迟样本添加到在当前采样周期开始时重置的样本累加器。作为第三替代方案,可将新的延迟样本添加到自建立无线电承载以来收集的延迟样本的指数加权移动平均值中。
在更新了SDU延迟度量之后,该方法可包括在720处检查自从先前将DLM与延迟阈值DLT进行比较以来是否已经经过了时间DMT。如果自上次执行比较以来的时间长于DMT,则发生新的比较,并且重置用于执行比较的计时器。如果DLM≥DLT,则可减少队列长度阈值,例如减少固定量或其当前值的固定比例。该减少可受到被认为是RLC适当运行所必需的最小QLT值的限制。如果取而代之的是DLM<DLT,则可增加QLT,或增加固定量或增加其当前值的固定比例。该增加可受到最大QLT的限制,该最大QLT被认为足以使RLC充分利用承载可接收的最高带宽。基于具有单个DLT值的DLM比较的二进制决策只是QLT控制规则的实例化的一个示例。根据其他实施例,也可应用涉及多个阈值和用于设置QLT的新值的扩展选项集的其他规则。
继续图7,在725,该方法可包括从SDU缓冲器中删除头部SDU。然后该方法可包括在730处将RLC队列的当前长度RQL与队列长度阈值QLT进行比较。如果RQL小于QLT,则该方法可包括在735处检查PDCP流排队缓冲器中是否有另一个PDCP SDU可用于传输到RLC缓冲器。如果没有另一个PDCP SDU可用,则该方法可返回到步骤705。如果PDCP SDU可用于传输到RLC缓冲器,则该方法可包括在740处设置新RLC SDU的时间戳并将该SDU及其时间戳存储到RLC缓冲器中。然后,该方法可返回到步骤730以检查是否可将另一个SDU从PDCP缓冲器移动到RLC缓冲器。
图8示出了根据实施例的设备10的示例。在一个实施例中,设备10可是通信网络中或服务于这样的网络的节点、主机或服务器。例如,设备10可是应用服务器、基站、节点B、演进型节点B、5G节点B(gNB)或接入点、下一代节点B(NG-NB)、WLAN接入点、移动性管理实体(MME)或与无线电接入网络(例如UMTS网络、LTE网络或5G无线电接入技术)相关联的订阅服务器。应当注意,本领域的普通技术人员将理解,设备10可包括图8中未示出的组件或特征。
如图8所示,设备10可包括用于处理信息并执行指令或操作的处理器12。处理器12可是任何类型的通用或专用处理器。虽然在图8中示出了单个处理器12,但是根据其他实施例,可利用多个处理器。实际上,处理器12可包括通用计算机、专用计算机、微处理器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、专用集成电路(ASIC)和基于多核处理器架构的处理器中的一个或多个作为示例。
处理器12可执行与设备10的操作相关联的功能,其可包括例如天线增益/相位参数的预编码、形成通信消息的单独比特的编码和解码、信息的格式化以及对设备10的整体控制,包括与通信资源的管理有关的过程。
设备10还可包括或耦合至存储器14(内部或外部),存储器14可耦合至处理器12、用于存储可由处理器12执行的信息和指令。存储器14可包括易失性存储器24和/或非易失性存储器25。因此,存储器14可是一个或多个存储器,并且可以是适合于本地应用环境的任何类型,并且可使用任何适当的易失性或非易失性数据存储技术(例如基于半导体的存储设备、磁存储设备和系统、光存储设备和系统、固定存储器和可移动存储器)来实现。例如,易失性存储器24可包括随机存取存储器(RAM),诸如动态或静态RAM。非易失性存储器25可包括例如只读存储器(ROM)、闪存和/或机械盘(诸如硬盘或光盘)。因此,存储器14可包括随机存取存储器(RAM)、只读存储器(ROM)、诸如磁盘或光盘的静态存储器、硬盘驱动器(HDD)或任何其他类型的非暂时性机器或计算机可读介质的任何组合。存储在存储器14中的指令可包括在由处理器12执行时使设备10能够执行如本文所述的任务的程序指令或计算机程序代码。
在一些实施例中,设备10还可包括或耦合到用于向设备10发送信号和/或数据从设备10接收信号和/或数据的一个或多个天线15。设备10可进一步包括或耦合到被配置为发送和接收信息的收发器18。收发器18可包括例如可耦合到天线15的多个无线电接口。无线电接口可对应于多种无线电接入技术,包括GSM、NB-IoT、LTE、5G、WLAN、蓝牙、BT-LE、NFC、射频标识符(RFID)、超宽带(UWB)等中的一个或多个。无线电接口可包括诸如滤波器、转换器(例如数模转换器等)、映射器、快速傅立叶变换(FFT)模块等之类的组件,以生成用于经由一个或多个下行链路发送的符号并接收符号(例如经由上行链路)。这样,收发器18可被配置为将信息调制到载波波形上以供天线15发送,并且解调经由天线15接收的信息以供设备10的其他元件进一步处理。在其他实施例中,收发器18可能能够直接发送和接收信号或数据。
在一个实施例中,存储器14可存储在由处理器12执行时提供功能的软件模块。该模块可包括例如为设备10提供操作系统功能的操作系统。存储器还可存储例如应用或程序的一个或多个功能模块,以为设备10提供附加功能。设备10的组件可以硬件或硬件和软件的任何适当组合来实现。
在一个实施例中,设备10可是网络节点或服务器,例如基站、节点B、eNB、5G节点B或接入点、或下一代节点B(NG-NB)。根据某些实施例,设备10可由存储器14和处理器12控制以执行与本文描述的实施例相关联的功能。例如,在一些实施例中,设备10可由存储器14和处理器12控制,以执行图3a、3b、5、6或7中所示的至少任何一种方法。
根据实施例,设备10可由存储器14和处理器12控制,以确定无线接入链路的链路层的第一子层是否已经接收到新的SDU,和/或在第一子层接收到SDU。在某些实施例中,第一子层可是PDCP子层。然而,在其他实施例中,第一子层可是任何协议层,包括例如其中流排队可用的协议层。
在一个实施例中,当在无线接入链路的第一子层处接收到第一子层SDU时,设备10可由存储器14和处理器12控制,以将当前存储在第二子层缓冲器中的SDU的数量与定义或表示第二子层缓冲器中空间总量的QLT进行比较。根据一个实施例,每当SDU离开第二子层缓冲器时,可将当前存储在第二子层缓冲器中的SDU的数量与QLT进行比较。在某些实施例中,当当前存储在第二子层缓冲器中的SDU的数量小于QLT时,设备10可由存储器14和处理器12控制以将第一子层SDU传输到第二子层。注意,在一些实施例中,第二子层可以是RLC子层。然而,在其他实施例中,第二子层可以是任何协议层,包括例如其中流排队不可用的协议层。
根据实施例,当在第二子层处接收到第一子层SDU时,设备10可由存储器14和处理器12控制,以将第一子层SDU格式化为第二子层SDU,并将第二子层SDU与到达时间戳一起排队到第二子层缓冲器中,所述到达时间戳等于当第二子层SDU到达第二子层缓冲器时的系统时间。在一个实施例中,设备10可由存储器14和处理器12控制,以基于针对每个SDU获得的至少一个延迟样本周期性地确定、计算或更新延迟度量(DLM)等于在SDU离开第二子层缓冲器的时间和到达时间戳之间的差。根据某些实施例,设备10可由存储器14和处理器12控制,以通过将延迟度量设置为在给定时间间隔内收集的延迟样本的平均值、或者设置为在给定时间间隔期间收集的最小延迟样本、或者设置为在给定时间间隔期间收集的最大延迟样本、或者设置为延迟样本的移动平均值,来周期性地获得延迟度量。
在某些实施例中,每当计算延迟度量时或经过一定时间段后,设备10就可由存储器14和处理器12控制以将延迟度量(DLM)与延迟阈值(DLT)进行比较。根据一个实施例,设备10然后可由存储器14和处理器12控制以基于延迟度量(DLM)和延迟阈值(DLT)之间的比较结果来修改QLT。
在一些实施例中,当延迟度量(DLM)大于或等于延迟阈值(DLT)时,设备10可由存储器14和处理器12控制以通过将QLT减少固定量或QLT当前值的固定比例来修改QLT。在其他实施例中,当延迟度量(DLM)小于延迟阈值(DLT)时,设备10可由存储器14和处理器12控制以通过将QLT增加固定量或QLT当前值的固定比例来修改QLT。根据某些实施例,设备10可由存储器14和处理器12控制以通过将加权移动平均值(ATG)乘以固定乘数(FMX)来获得延迟阈值。在一个实施例中,加权移动平均值(ATG)可基于在状态PDU的到达与前一个状态PDU的到达之间的时间间隙。
在一个实施例中,当处于未确认模式(例如RLC-UM)时,设备10可由存储器14和处理器12控制以仅在已通过无线接入链路发送了包括其尾部PDU的所有对应PDU时才从第二子层缓冲器中删除第二子层SDU。在另一个实施例中,当处于确认模式(例如RLC-AM)时,设备10可由存储器14和处理器12控制以仅在接收器已经确认了所有对应的PDU时从第二子层缓冲器中删除第二子层SDU。
注意,本发明的实施例例如通过将PDCP子层中的流排队布置与动态调整大小的RLC缓冲器相结合,提供了优于常规方法的显著性能优势。例如,某些实施例可使平均PING延迟与最大FTP吞吐量一致,该平均PING延迟非常接近最小可达值,并且比从RLC缓冲器的超大型静态配置获得的小50%。
例如,本文描述的系统、方法和设备的实施例使得能够减少RLC缓冲器中的排队延迟,这对于低吞吐量交互式应用(诸如IP电话、在线游戏、远程桌面控制和机械设备的自动远程控制,特别是在那些应用的分组流可共享相同的无线接入链路或无线电承载的情况下)以及吞吐量密集型应用(例如自适应流视频和批量文件传输)特别有用。这些场景例如当移动设备用作多个用户设备的接入点时(如在连接的车辆或移动热点中)很常见。另外,通过可在前台或甚至在普通移动用户设备中运行多个应用的单个用户设备,当它们在后台与网络交换文件而在前台运行交互式应用时,这些场景也可能越来越多地发生。
鉴于以上内容,实施例提供了几种技术效果和/或优点。例如,某些实施例可减少数据分组在无线电接入网络中的停留时间或延迟。结果,某些实施例可提高包括例如基站、eNB、gNB和/或UE的设备和网络节点的性能和吞吐量。因此,本发明实施例的使用导致通信网络及其节点的功能改善。
本文所讨论的某些实施例是在包括PDCP子层、RLC子层和MAC子层的RAN协议栈的上下文中描述的。然而,应注意,某些实施例也适用于任何协议栈。例如,一些实施例还适用于其中可能进行用于减少延迟的流排队的任何协议层以及其中不可能进行流排队的任何其他协议层。
在一些实施例中,本文描述的方法、过程、信令图或流程图中的任何功能可通过存储在存储器或其他计算机可读的或有形媒体中的软件和/或计算机程序代码或部分代码来实现,并可由处理器执行。图9示出了可在其中存储软件或计算机程序代码的计算机存储媒体的一些示例。例如,图9示出了用于存储软件或计算机程序代码的USB存储器或闪存驱动器910、硬盘驱动器920或CD 930。注意,图9示出了存储媒体的一些示例,但是根据其他实施例,可使用能够存储计算机程序的任何其他媒体。
在某些实施例中,一种设备可被包括或与被配置作为算术运算或作为程序或其部分(包括添加或更新的软件例程)并由至少一个操作处理器执行的至少一个软件应用、模块、单元或实体相关联。程序(也称为计算机程序产品或计算机程序)包括软件例程、小程序和宏,可存储在任何设备可读数据存储介质中,并且包括执行特定任务的程序指令。
一种计算机程序产品可包括一个或多个计算机可执行组件,该计算机可执行组件被配置为当程序被运行时执行本文所述的实施例。一个或多个计算机可执行组件可包括至少一个软件代码或代码部分。实现实施例的功能所需的修改和配置可作为例程来执行,该例程可作为添加或更新的软件例程来实现。在一些实施例中,可将软件例程下载到设备中。
软件或计算机程序代码或部分代码可是源代码形式、目标代码形式或某种中间形式,并且可存储在可是能够携带程序的任何实体或设备的某种载体、分发介质或计算机可读介质中。这样的介质可包括例如非易失性存储器、只读存储器、硬盘或光盘、光电和/或电载波信号、电信信号和/或软件分发包。取决于所需的处理能力,计算机程序可在单个电子数字设备中执行,或者可分布在多个设备或计算机中。所述计算机可读介质或计算机可读存储介质可是非暂时性介质。
在其他实施例中,该功能可由硬件执行,例如通过使用专用集成电路(ASIC)、可编程门阵列(PGA)、现场可编程门阵列(FPGA)或硬件和软件的任何其他组合。在又一个实施例中,该功能可被实现为信号,一种可由从因特网或其他网络下载的电磁信号来携带的非有形手段。
根据一个实施例,诸如节点、器件或对应组件之类的设备可被配置为计算机或微处理器(诸如单芯片计算机元件)或者包括至少一个存储器(例如RAM和/或ROM)的芯片集,用于提供用于算术运算的存储容量以及用于执行算术运算的运算处理器。
本领域的普通技术人员将容易地理解,可以不同顺序的步骤和/或以与所公开的那些不同的配置的硬件元件来实践如上所讨论的本发明。因此,尽管已经基于这些优选实施例描述了本发明,但是对于本领域技术人员显而易见的是,在不脱离本发明的精神和范围的情况下,某些修改、变型和替代构造将是显而易见的。因此,为了确定本发明的界限,应参考所附权利要求。
Claims (20)
1.一种方法,包括:
当无线接入链路的第一子层的缓冲器为空并且所述第一子层中存在新数据单元时,或者当所述第一子层缓冲器不为空并且数据单元离开第二子层缓冲器时,将当前存储在所述第二子层缓冲器中的数据单元的数量与队列长度阈值进行比较,
其中,所述队列长度阈值定义了所述第二子层缓冲器中的总空间量;以及
当所述当前存储在所述第二子层缓冲器中的数据单元的数量小于所述队列长度阈值时,将所述数据单元从所述第一子层传输到所述第二子层;
所述方法还包括:
当在所述第二子层接收到所述数据单元时,将所述数据单元格式化为第二子层数据单元;以及
将所述第二子层数据单元与到达时间戳一起排队到所述第二子层缓冲器,所述到达时间戳等于所述第二子层数据单元到达所述第二子层缓冲器时的系统时间;以及
基于针对每个数据单元获得的至少一个延迟样本,周期性地计算延迟度量为在所述数据单元离开所述第二子层缓冲器的时间与所述到达时间戳之间的差。
2.根据权利要求1所述的方法,还包括:
每次计算了所述延迟度量时或经过一定时间段后,将所述延迟度量与延迟阈值进行比较;以及
基于所述延迟度量和所述延迟阈值之间的所述比较的结果来修改所述队列长度阈值。
3.根据权利要求2所述的方法,还包括:
当所述延迟度量大于或等于所述延迟阈值时,所述修改包括将所述队列长度阈值减少固定量或所述队列长度阈值的当前值的固定比例;或者
当所述延迟度量小于所述延迟阈值时,所述修改包括将所述队列长度阈值增加固定量或所述队列长度阈值的当前值的固定比例。
4.根据权利要求1至3中的任一项所述的方法,其中,所述周期性地计算所述延迟度量包括:将所述延迟度量设置为在给定时间间隔内收集的所述延迟样本的平均值、或者设置为在所述给定时间间隔期间收集的最小延迟样本、或者设置为在所述给定时间间隔期间收集的最大延迟样本、或者设置为所述延迟样本的移动平均值。
5.根据权利要求1至4中的任一项所述的方法,还包括:在处于确认模式时,仅当来自接收器的状态协议数据单元已经确认了所有对应的分组数据单元时,才从所述第二子层缓冲器删除所述数据单元。
6.根据权利要求5所述的方法,其中,通过将加权移动平均值与固定乘数相乘来获得延迟阈值,其中,所述加权移动平均值基于在所述状态协议数据单元的到达与前一个状态协议数据单元的到达之间的时间间隙。
7.根据权利要求1至4中的任一项所述的方法,还包括:当处于未确认模式时,仅当已经通过所述无线接入链路发送了包括其尾部分组数据单元的所有对应分组数据单元时,才从所述第二子层缓冲器删除所述数据单元。
8.根据权利要求1至7中的任一项所述的方法,其中,所述将所述数据单元的数量与所述队列长度阈值进行比较还包括:每当数据单元离开所述第二子层缓冲器时,就执行所述比较。
9.根据权利要求1至8中的任一项所述的方法,其中,所述第一子层包括分组数据汇聚协议子层,其中,所述第二子层包括无线电链路控制子层,并且其中,所述数据单元包括服务数据单元。
10.一种设备,包括:
比较装置,用于当无线接入链路的第一子层的缓冲器为空并且所述第一子层中存在新数据单元时,或者当所述第一子层缓冲器不为空并且数据单元离开第二子层缓冲器时,将当前存储在所述第二子层缓冲器中的数据单元的数量与队列长度阈值进行比较,
其中,所述队列长度阈值定义了所述第二子层缓冲器中的总空间量;以及
传输装置,用于当所述当前存储在所述第二子层缓冲器中的数据单元的数量小于所述队列长度阈值时,将所述数据单元从所述第一子层传输到所述第二子层;
所述设备还包括:
格式化装置,用于当在所述第二子层接收到所述数据单元时,将所述数据单元格式化为第二子层数据单元;以及
排队装置,用于将所述第二子层数据单元与到达时间戳一起排队到所述第二子层缓冲器,所述到达时间戳等于所述第二子层数据单元到达所述第二子层缓冲器时的系统时间;以及
计算装置,用于基于针对每个数据单元获得的至少一个延迟样本,周期性地计算延迟度量为所述数据单元离开所述第二子层缓冲器的时间与所述到达时间戳之间的差。
11.根据权利要求10所述的设备,还包括:
比较装置,用于每次计算了所述延迟度量时或经过一定时间段后,将所述延迟度量与延迟阈值进行比较;以及
修改装置,用于基于所述延迟度量和所述延迟阈值之间的所述比较的结果来修改所述队列长度阈值。
12.根据权利要求11所述的设备,还包括:
当所述延迟度量大于或等于所述延迟阈值时,所述修改装置包括减少装置,所述减少装置用于将所述队列长度阈值减少固定量或所述队列长度阈值的当前值的固定比例;或者
当所述延迟度量小于所述延迟阈值时,所述修改装置包括增加装置,所述增加装置用于将所述队列长度阈值增加固定量或所述队列长度阈值的当前值的固定比例。
13.根据权利要求10至12中任一项所述的设备,其中,所述计算装置包括用于将所述延迟度量设置为在给定时间间隔内收集的所述延迟样本的平均值、或者设置为在所述给定时间间隔期间收集的最小延迟样本、或者设置为在所述给定时间间隔期间收集的最大延迟样本、或者设置为所述延迟样本的移动平均值的装置。
14.根据权利要求10至13中的任一项所述的设备,还包括删除装置,所述删除装置用于当处于确认模式时,仅当来自接收器的状态协议数据单元已经确认了所有对应的分组数据单元时,才从所述第二子层缓冲器删除所述数据单元。
15.根据权利要求11至14中的任一项所述的设备,还包括确定装置,所述确定装置用于通过将加权移动平均值与固定乘数相乘来获得延迟阈值,其中,所述加权移动平均值基于在状态协议数据单元的到达与前一个状态协议数据单元的到达之间的时间间隙。
16.根据权利要求10至13中的任一项所述的设备,还包括删除装置,所述删除装置用于当处于未确认模式时,仅当已经通过所述无线接入链路发送了包括其尾部分组数据单元的所有对应分组数据单元时,才从所述第二子层缓冲器删除所述数据单元。
17.根据权利要求10至16中的任一项所述的设备,其中,所述用于将所述数据单元的数量与所述队列长度阈值进行比较的比较装置还包括用于每当数据单元离开所述第二子层缓冲器时就执行所述比较的执行装置。
18.根据权利要求10至17中的任一项所述的设备 ,其中,所述第一子层包括分组数据汇聚协议子层,其中,所述第二子层包括无线电链路控制子层,并且其中,所述数据单元包括服务数据单元。
19.一种设备,包括:
至少一个处理器;以及
至少一个存储器,包括计算机程序代码,
所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述设备至少:
当无线接入链路的第一子层的缓冲器为空并且所述第一子层中存在新数据单元时,或者当所述第一子层缓冲器不为空并且数据单元离开第二子层缓冲器时,将当前存储在所述第二子层缓冲器中的数据单元的数量与队列长度阈值进行比较,
其中,所述队列长度阈值定义了所述第二子层缓冲器中的总空间量;
当所述当前存储在所述第二子层缓冲器中的数据单元的数量小于所述队列长度阈值时,将所述数据单元从所述第一子层传输到所述第二子层;
当在所述第二子层接收到所述数据单元时,将所述数据单元格式化为第二子层数据单元;
将所述第二子层数据单元与到达时间戳一起排队到所述第二子层缓冲器,所述到达时间戳等于所述第二子层数据单元到达所述第二子层缓冲器时的系统时间;以及
基于针对每个数据单元获得的至少一个延迟样本,周期性地计算延迟度量为在所述数据单元离开所述第二子层缓冲器的时间与所述到达时间戳之间的差。
20.一种体现在非暂时性计算机可读介质上的计算机程序,其中,所述计算机程序被配置为控制处理器以执行根据权利要求1至9中任一项所述的过程。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2017/051083 WO2019054984A1 (en) | 2017-09-12 | 2017-09-12 | PACKET LATENCY REDUCTION IN MOBILE RADIO ACCESS NETWORKS |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111066272A CN111066272A (zh) | 2020-04-24 |
CN111066272B true CN111066272B (zh) | 2022-09-09 |
Family
ID=65723835
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780094781.7A Active CN111066272B (zh) | 2017-09-12 | 2017-09-12 | 移动无线电接入网络中的分组延迟减少 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11425592B2 (zh) |
EP (1) | EP3682665B1 (zh) |
CN (1) | CN111066272B (zh) |
WO (1) | WO2019054984A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220286399A1 (en) * | 2019-09-11 | 2022-09-08 | Intel Corporation | Hardware queue scheduling for multi-core computing environments |
US11677666B2 (en) | 2019-10-11 | 2023-06-13 | Nokia Solutions And Networks Oy | Application-based queue management |
US11812518B2 (en) * | 2020-11-17 | 2023-11-07 | Microsoft Technology Licensing, Llc | Virtualized radio access network (vRAN) decoding as a service |
US20220165035A1 (en) * | 2020-11-24 | 2022-05-26 | At&T Intellectual Property I, L.P. | Latency indicator for extended reality applications |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1669019A (zh) * | 2002-07-16 | 2005-09-14 | 诺基亚有限公司 | 多媒体流中实现分组交换延迟补偿的方法 |
CN1771686A (zh) * | 2003-04-07 | 2006-05-10 | 艾利森电话股份有限公司 | Rlc窗口大小的重新配置 |
CN101483583A (zh) * | 2008-01-07 | 2009-07-15 | 上海贝尔阿尔卡特股份有限公司 | eNB分组丢弃方法和装置 |
CN101589565A (zh) * | 2006-11-27 | 2009-11-25 | 三星电子株式会社 | 移动通信系统中无线链路控制层的数据发送的方法和装置 |
WO2016186697A1 (en) * | 2015-05-21 | 2016-11-24 | Intel IP Corporation | Pdcp status reporting for multi-rat offloading |
CN107113649A (zh) * | 2014-11-14 | 2017-08-29 | 高通股份有限公司 | 用于eDCS的缓存器状态报告 |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2372172B (en) | 2001-05-31 | 2002-12-24 | Ericsson Telefon Ab L M | Congestion handling in a packet data network |
US7477604B2 (en) | 2003-05-14 | 2009-01-13 | Ntt Docomo, Inc. | Packet communications system |
CN101040491B (zh) * | 2004-10-08 | 2011-03-30 | 艾利森电话股份有限公司 | 无线接入网内的拥塞控制 |
US20060133309A1 (en) * | 2004-12-21 | 2006-06-22 | Mathis James E | Methods for synchronization of communications between a circuit switched network and a packet data network |
US8121115B2 (en) | 2006-07-10 | 2012-02-21 | Telefonaktiebolaget Lm Ericsson (Publ) | Compressed delay packet transmission scheduling |
DE602007009799D1 (de) * | 2007-04-20 | 2010-11-25 | Panasonic Corp | Verbessertes Übertragungsschema für Protokolldateneinheiten während eines Vorgangs mit Zurücksetzung der Protokollschicht |
US8437306B2 (en) * | 2007-08-08 | 2013-05-07 | Qualcomm Incorporated | Layer 2 tunneling of data during handover in a wireless communication system |
JP5190514B2 (ja) * | 2007-10-01 | 2013-04-24 | インターデイジタル パテント ホールディングス インコーポレイテッド | Pdcp破棄の方法および装置 |
JP2009159467A (ja) * | 2007-12-27 | 2009-07-16 | Fujitsu Ltd | 無線通信装置、無線通信プログラム、および無線通信方法 |
CN102027794B (zh) * | 2008-03-19 | 2014-06-11 | 株式会社Ntt都科摩 | 基站装置以及通信控制方法 |
US8964539B2 (en) * | 2009-03-20 | 2015-02-24 | Telefonaktiebolaget L M Ericsson (Publ) | Active queue management for wireless communication network uplink |
CN102484585B (zh) | 2009-08-21 | 2015-11-25 | 三星电子株式会社 | 用于处理对于语音帧的延长的非接收时段的安全同步的方法和系统 |
KR101638195B1 (ko) * | 2010-02-01 | 2016-07-08 | 삼성전자주식회사 | 통신 시스템에서 무선 링크 제어 계층 및 패킷 데이터 융합 프로토콜 계층 간의 플로우 제어를 위한 방법 및 장치 |
US8379855B2 (en) | 2010-06-03 | 2013-02-19 | Nokia Corporation | Ciphering in a packet-switched telecommunications system |
US8854958B2 (en) * | 2011-12-22 | 2014-10-07 | Cygnus Broadband, Inc. | Congestion induced video scaling |
US8988994B2 (en) * | 2013-05-16 | 2015-03-24 | Freescale Semiconductor, Inc. | System and method for creating logical radio link control (RLC) and medium access control (MAC) protocol data units (PDUs) in mobile communication system |
US9179357B2 (en) * | 2014-03-10 | 2015-11-03 | Wipro Limited | Systems and methods for buffer status reporting in wireless communication systems |
WO2015143606A1 (zh) * | 2014-03-24 | 2015-10-01 | 华为技术有限公司 | 无线接入网设备、用户设备及缓冲区状态上报方法 |
US9497299B2 (en) * | 2014-09-18 | 2016-11-15 | Blackberry Limited | Configuring a discard timer |
EP3300424B1 (en) * | 2015-05-22 | 2019-11-13 | NTT DoCoMo, Inc. | User equipment, base station, and communication method |
KR102699241B1 (ko) * | 2015-08-11 | 2024-08-27 | 엘지전자 주식회사 | 무선 통신 시스템에서 상향링크 패킷 지연 측정을 수행하기 위한 방법 및 이를 위한 장치 |
US20170295113A1 (en) | 2016-04-06 | 2017-10-12 | Alcatel-Lucent Usa Inc. | Longest queue identification |
US10038639B2 (en) | 2016-09-16 | 2018-07-31 | Alcatel Lucent | Congestion control based on flow control |
US10237197B2 (en) * | 2017-01-31 | 2019-03-19 | Wipro Limited | System and method for processing data packets for transmission in a wireless communication network |
CN108419275B (zh) * | 2017-02-10 | 2022-01-14 | 华为技术有限公司 | 一种数据传输方法、通信设备、终端和基站 |
EP4236616A3 (en) * | 2017-04-27 | 2023-12-13 | Mitsubishi Electric Corporation | Communication system |
EP3446448B1 (en) * | 2017-05-17 | 2020-01-01 | Telefonaktiebolaget LM Ericsson (Publ) | Methods and apparatus for discarding packets in a wireless communication network |
KR102384282B1 (ko) * | 2017-06-09 | 2022-04-07 | 삼성전자주식회사 | 무선 통신 시스템에서 혼잡을 제어하기 위한 장치 및 방법 |
CN112106325B (zh) * | 2018-05-10 | 2022-10-04 | 华为技术有限公司 | 通信方法、通信装置和系统 |
-
2017
- 2017-09-12 WO PCT/US2017/051083 patent/WO2019054984A1/en unknown
- 2017-09-12 US US16/639,823 patent/US11425592B2/en active Active
- 2017-09-12 EP EP17925447.9A patent/EP3682665B1/en active Active
- 2017-09-12 CN CN201780094781.7A patent/CN111066272B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1669019A (zh) * | 2002-07-16 | 2005-09-14 | 诺基亚有限公司 | 多媒体流中实现分组交换延迟补偿的方法 |
CN1771686A (zh) * | 2003-04-07 | 2006-05-10 | 艾利森电话股份有限公司 | Rlc窗口大小的重新配置 |
CN101589565A (zh) * | 2006-11-27 | 2009-11-25 | 三星电子株式会社 | 移动通信系统中无线链路控制层的数据发送的方法和装置 |
CN101483583A (zh) * | 2008-01-07 | 2009-07-15 | 上海贝尔阿尔卡特股份有限公司 | eNB分组丢弃方法和装置 |
CN107113649A (zh) * | 2014-11-14 | 2017-08-29 | 高通股份有限公司 | 用于eDCS的缓存器状态报告 |
WO2016186697A1 (en) * | 2015-05-21 | 2016-11-24 | Intel IP Corporation | Pdcp status reporting for multi-rat offloading |
Non-Patent Citations (4)
Title |
---|
Dynamic RLC mode based upon link adaptation to reduce latency and improve throughput in cellular networks;Ritesh Shreevastav et.al.;《IEEE》;20161022;全文 * |
R2-152397 "Enhanced QoS use case scope";Nokia Networks;《3GPP tsg_ran\WG2_RL2》;20150515;全文 * |
R2-154549 "UL Scheduling Delay Measurement";Qualcomm Incorporated;《3GPP tsg_ran\WG2_RL2》;20150926;全文 * |
基于TDMA的无线自组织网RLC层协议软件设计与实现;李恒;《中国优秀硕士学位论文全文数据库 (信息科技辑)》;20150313;全文 * |
Also Published As
Publication number | Publication date |
---|---|
WO2019054984A1 (en) | 2019-03-21 |
CN111066272A (zh) | 2020-04-24 |
US11425592B2 (en) | 2022-08-23 |
EP3682665A4 (en) | 2021-01-13 |
EP3682665B1 (en) | 2024-04-10 |
EP3682665A1 (en) | 2020-07-22 |
US20200260317A1 (en) | 2020-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11432223B2 (en) | Methods and apparatuses for selecting a first base station or a second base station to transmit a packet data unit (PDU) to a user equipment (UE) | |
US10721754B2 (en) | Data transmission method and apparatus | |
US10708940B2 (en) | Method and apparatus for reporting buffer state by user equipment in communication system | |
US10038639B2 (en) | Congestion control based on flow control | |
TWI657708B (zh) | 用於新型無線電系統的分段與級聯方法及使用者設備 | |
CN111066272B (zh) | 移动无线电接入网络中的分组延迟减少 | |
CN108337633B (zh) | 数据分流配置方法、基站系统和用户终端 | |
KR20230141800A (ko) | 롱 텀 에볼루션 통신 시스템을 위한 다중-기술 집적아키텍처 | |
CN110944358B (zh) | 数据传输方法和设备 | |
CN109314884B (zh) | 业务数据分流方法及装置 | |
CN107534890B (zh) | 适应性tti调整的方法以及用户设备 | |
CA2910662C (en) | Data transmission method, base station, and wireless communications device | |
US20230209591A1 (en) | Systems and methods for prioritizing bi-directional traffic flows | |
US11647419B2 (en) | Adjusting window size based on quality of experience | |
Pupiales et al. | Capacity and congestion aware flow control mechanism for efficient traffic aggregation in multi-radio dual connectivity | |
CN116261170A (zh) | 一种通信方法、装置及系统 | |
US20180191628A1 (en) | Scheduling granularity based on application type | |
EP3625916B1 (en) | Techniques for wireless access and wireline network integration | |
KR20120012865A (ko) | 이동통신 시스템에서 기지국의 자원 할당 방법 및 장치 | |
Yang et al. | Cross-Layer Assisted Early Congestion Control for Cloud VR Applications in 5G Edge Networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |