一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种5G下行TCP的ACK包防拥塞方法、基站、终端与系统与流程

2022-06-05 02:03:06 来源:中国专利 TAG:

一种5g下行tcp的ack包防拥塞方法、基站、终端与系统
技术领域
1.本发明涉及移动通信技术领域,尤其是涉及一种5g下行tcp的ack包防拥塞方法、基站、终端与系统。


背景技术:

2.3gpp的ftp(file transfer protocol,文件传输协议)业务是一种非常典型的业务,其承载在tcp(transmission control protocol,传输控制协议)上传输。其中ftp业务的上下行同传的速率和稳定性是重点考核指标之一。比如发生丢包重传、网络拥塞等现象,会造成文件上传下载过程漫长及中断。
3.在tcp的通信过程中,用户终端收到基站发送的tcp数据包后会反馈一个ack(acknowledge character)确认包,表示已经确认接收到ack前面的所有tcp数据包,基站可以继续发送下一份数据了。
4.但是由于频谱的局限性,在tdd方式下,上行的空口资源经常是受限的。在这种情况下,下行tcp数据包的ack确认包要通过上行通道传递给发送端。由于上行受限,导致ack确认包不能稳定及时的发送,从而影响下行ftp数据的传输速率来回波动,严重的情况下,甚至下行速率缩窗为0。
5.在5g系统中,基站侧gnb采用了分布式布局,分为cu(centralized unit,集中单元)和du(distributed unit,分布单元)两个节点。cu和du之间的通信引入了f1接口,sdap层(service data adaptation protocol,业务数据适配协议)和pdcp层(packet data convergence protocol,分组数据汇聚协议)在cu上,rlc层(radio link control,无线链路层控制协议)和mac层(mediu maccess control,介质访问控制)在du上,参见图1:5g基站协议栈示意图。在pdcp层设置了支持按序投递的可选功能,rlc层没有按序投递的功能。在这种架构下,ack包就不能实现优先发送了。因为ue的rlc层即便对ack包优先发送,但是到了基站的pdcp层还是会对ack包重排序,ack包仍然会被阻塞,必须等前面的数据包到齐后依次投递给服务器端。如果pdcp层选择了不按序投递,这样又会影响上行ftp业务,由于空口必须保序,所以在5g系统中,存在因上行通道受限导致ack包不能及时发送,而影响下行ftp业务速率的问题。
6.因此,有必要提出一种可防止5g系统中下行tcp的 ack包拥塞的方法和系统,以便下行ftp业务顺利进行,不影响下行ftp数据的传输速率。


技术实现要素:

7.本发明所要解决的技术问题是提供一种5g下行tcp的ack包防拥塞方法、基站、终端与系统,可防止ack包拥塞,以便下行ftp业务顺利进行,不影响下行ftp数据的传输速率。
8.为解决上述技术问题,本发明提供一种5g下行tcp的ack包防拥塞方法,包括以下步骤:s1:用户终端接收5g基站发送的下行tcp数据包,调用tcp协议栈,对所述下行tcp
数据包进行ack反馈,生成ack确认包,将所述ack确认包发送到pdcp层模块;所述pdcp层模块接收所述ack确认包和/或上行tcp数据包,经tcp解析,识别并标记ack确认包和/或上行tcp数据包,并缓存在数据队列中,将接收的数据量发送给rlc层模块;所述rlc层模块根据pdcp层模块发送的数据量,更新缓存状态,并发送当前缓存状态报告给mac层模块;所述mac层模块将所述当前缓存状态报告发送给5g基站;s2:所述5g基站的上行调度器根据所述当前缓存状态报告,分配相适配的授权量,并发送给所述用户终端;s3:所述用户终端的mac层模块接收所述授权量,向所述rlc层模块发送与所述授权量一致的每个承载可容纳的数据量;所述rlc层模块给pdcp层发送与所述每个承载可容纳的数据量相一致的需求的数据量;所述pdcp层模块按照数据包到达的顺序,从缓存队列中优先选取与所述需求的数据量相同数量的ack确认包,分配pdcp序列号并封装pdcp头,生成pdcp pdu数据包发送到rlc层模块;若ack确认包的数据量不满足所述需求的数据量,且缓存队列中含有上行tcp数据包时,再选取上行tcp数据包,分配pdcp序列号并封装pdcp头,生成pdcp pdu数据包发送到rlc层模块;所述rlc层模块对pdcp pdu数据包进行分片处理,再封装rlc头,发送分片后的数据包给mac层模块,若有分片剩余的pdcp pdu数据包,则,暂存入缓存队列,待下次优先发送;所述mac层模块经信道复用后将所述分片后的数据包投递到空口;s4:所述5g基站的phy层单元接收到所述分片后的数据包后,投递给mac层单元;所述mac层单元将所述分片后的数据包解复用后投递给rlc层单元;所述rlc层单元将所述分片后的数据包进行重组,将重组后的数据包投递给pdcp层单元;所述pdcp层单元接收到所述数据包后,根据数据包的pdcp序列号,按序发送给服务端。
9.更进一步的,所述当前缓存状态报告用于报告所述用户终端pdcp层模块当前缓存队列中的数据量。
10.更进一步的,所述步骤s2具体包括:所述5g基站接收所述用户终端的当前缓存状态报告后,调用上行调度器,所述上行调度器分配与所述用户终端pdcp层模块当前缓存队列中的数据量相同的授权量,并将所述授权量发送给所述用户终端。
11.为解决上述技术问题,本发明还提供一种用户终端,包括控制模块,pdcp层模块,rlc层模块和mac层模块;所述控制模块用于接收5g基站发送的下行tcp数据包,调用tcp协议栈,对所述下行tcp数据包进行ack反馈,生成ack确认包,将所述ack确认包发送到pdcp层模块;所述pdcp层模块用于接收所述ack确认包和/或上行tcp数据包,经tcp解析,识别并标记ack确认包和/或上行tcp数据包,并缓存在数据队列中,将接收的数据量发送给rlc层模块;以及按照数据包到达的顺序,从缓存队列中优先选取与所述rlc层模块发送的需求的数据量相同数量的ack确认包,分配pdcp序列号并封装pdcp头,生成pdcp pdu数据包发送到rlc层模块;若ack确认包的数据量不满足所述需求的数据量,且缓存队列中含有上行tcp数据包时,再选取上行tcp数据包,分配pdcp序列号并封装pdcp头,生成pdcp pdu数据包发送到rlc层模块;所述rlc层模块用于根据所述pdcp层模块发送的数据量,更新缓存状态,并发送当前缓存状态报告给mac层模块;以及向pdcp层发送与所述每个承载可容纳的数据量相一致
的需求的数据量;以及对接收到的pdcp pdu数据包进行分片处理,再封装rlc头,发送分片后的数据包给mac层模块,若有分片剩余的pdcp pdu数据包,则,暂存入缓存队列,待下次优先发送;所述mac层模块用于将所述当前缓存状态报告发送给5g基站;以及接收所述5g基站发送的授权量,向所述rlc层模块发送与所述授权量一致的每个承载可容纳的数据量;以及经信道复用后将所述分片后的数据包投递到空口。
12.更进一步的,所述当前缓存状态报告用于报告所述用户终端的pdcp层模块当前缓存队列中的数据量。
13.为解决上述技术问题,本发明还提供一种5g基站,包括数据发送单元,数据接收单元,上行调度器,phy层单元,pdcp层单元,rlc层单元和mac层单元;所述数据发送单元用于发送下行tcp数据包给用户终端;所述数据接收单元用于接收所述用户终端发送的分片后的数据包和当前缓存状态报告;所述上行调度器用于根据所述用户终端发送的当前缓存状态报告,分配相适配的授权量,并将所述授权量发送给所述用户终端;所述phy层单元用于接收所述用户终端发送的分片后的数据包,并投递给mac层单元;所述mac层单元用于将所述分片后的数据包解复用后投递给rlc层单元;所述rlc层单元用于所述分片后的数据包进行重组,将重组后的数据包投递给pdcp层单元;所述pdcp层单元用于接收到所述数据包后,根据数据包的pdcp序列号,按序发送给服务端;所述分片后的数据包是所述用户终端的rlc层模块对接收到的pdcp pdu数据包分片处理后,再封装rlc头发送给所述用户终端的mac层模块后,再通过所述用户终端的mac层模块发送到5g基站的;所述pdcp pdu数据包是所述用户终端的pdcp层模块按照ack确认包和/或上行tcp数据包到达的顺序,从缓存队列中优先选取与所述rlc层模块发送的需求的数据量相同数量的ack确认包,并分配pdcp序列号及封装pdcp头而生成的数据包;若缓存队列中ack确认包的数据量不满足所述需求的数据量,且缓存队列中含有上行tcp数据包时,所述pdcp pdu数据包还包括所述pdcp层模块对所述上行tcp数据包分配pdcp序列号并封装pdcp头而生成的数据包。
14.更进一步的,所述当前缓存状态报告用于报告所述用户终端的pdcp层模块当前缓存队列中的数据量。
15.更进一步的,所述上行调度器用于分配与所述用户终端pdcp层模块当前缓存队列中的数据量相同的授权量,并将所述授权量发送给所述用户终端。
16.为解决上述技术问题,本发明还提供一种5g系统的下行tcp的ack包防拥塞系统,包括上述的用户终端,和与上述用户终端通信连接的5g基站。
17.与现有技术相比,本发明具有如下有益效果:本发明通过用户终端的pdcp层优先选择ack确认包分配pdcp序列号及封装pdcp头再发送,同时,在5g基站侧开启pdcp层按序投
递功能,从而保证了下行tcp数据包的ack确认包可优先发送到服务端,防止出现拥塞的情况;本发明的防止ack包拥塞的方法,适用于具备复杂功能处理能力的5g基站,可广泛应用于需处理复杂业务的应用场景。
附图说明
18.图1是现有技术的5g基站协议栈示意图;图2是本发明实施例的5g下行tcp的ack包防拥塞方法流程图;图3是本发明实施例的5g下行tcp的ack包防拥塞系统结构图。
具体实施方式
19.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
20.参考图1,本发明实施例提供的5g下行tcp的ack包防拥塞方法,包括以下步骤:s1:用户终端接收5g基站发送的下行tcp数据包,调用tcp协议栈,对下行tcp数据包进行ack反馈,生成ack确认包,将ack确认包发送到pdcp层模块;pdcp层模块接收ack确认包和/或上行tcp数据包,经tcp解析,识别并标记ack确认包和/或上行tcp数据包,并缓存在数据队列中,将接收的数据量发送给rlc层模块;rlc层模块根据pdcp层模块发送的数据量,更新缓存状态,并发送当前缓存状态报告给mac层模块;mac层模块将所述当前缓存状态报告发送给5g基站。
21.具体的,在本实施例中,需预先开启5g基站的pdcp层的按序投递功能。当用户终端ue正常接入,建立ftp承载,开始ftp上下行业务时,5g基站接收到服务端(server端)发送的ftp下行业务数据后,经空口协议栈处理后,向ue发送下行tcp数据包。
22.ue接收到下行tcp数据包后,控制模块调用tcp协议栈,对该下行tcp数据包进行ack反馈,生成相应的ack确认包再发送到ue的pdcp层模块。
23.pdcp层模块接收该ack确认包,另外,如果存在上行ftp业务,pdcp层也会接收上行tcp数据包,因此,在pdcp层模块接收的数据包有ack确认包和/或上行tcp数据包。pdcp层模块调用tcp协议栈对数据包进行tcp解析,识别并标记ack确认包和/或上行tcp数据包,放入缓存队列中,然后将缓存队列中的数据量发送给rlc层模块。
24.rlc层模块接收后,更新缓存状态,向mac层模块报告当前缓存状态。mac层模块再向5g基站发送用户终端的当前缓存状态报告。在本实施例中,当前缓存状态报告用于报告ue的pdcp层模块当前缓存队列中的数据量。
25.s2:5g基站的上行调度器根据当前缓存状态报告,分配相适配的授权量,并发送给用户终端。
26.具体的,5g基站收到当前缓存状态报告后,调用上行调度器,分配相适配的授权量给用户终端。假设,当前用户终端的pdcp层模块的缓存队列中有20m数据量,则上行调度器可相应分配20m授权量给用户终端。或者,也可以根据实际情况,分配小于缓存队列中数据量的授权量给用户终端,例如18m、15m、12m等。
27.s3:用户终端的mac层模块接收授权量,向rlc层模块发送与授权量一致的每个承载可容纳的数据量;rlc层模块给pdcp层模块发送与每个承载可容纳的数据量相一致的需求的数据量;pdcp层模块按照数据包到达的顺序,从缓存队列中优先选取与需求的数据量相同数量的ack确认包,分配pdcp序列号并封装pdcp头,生成pdcp pdu数据包发送到rlc层模块;若ack确认包的数据量不满足需求的数量,且缓存队列中含有上行tcp数据包时,再选取上行tcp数据包,分配pdcp序列号并封装pdcp头,生成pdcp pdu数据包发送到rlc层模块;rlc层模块对pdcp pdu数据包进行分片处理,再封装rlc头,发送分片后的数据包给mac层模块,若有分片剩余的pdcp pdu数据包,则,暂存入缓存队列,待下次优先发送;mac层模块经信道复用后将分片后的数据包投递到空口。
28.具体的,ue的mac层模块接收到授权量后,向rlc层模块指示与授权量一致的每个承载可容纳的数据量。rlc层模块收到该指示后,给pdcp 层模块发送与每个承载可容纳的数据量相一致的需求的数据量。
29.假设,授权量为20m,即每个承载可容纳的数据量和需求的数据量也为20m,在pdcp层的缓存队列中,ack确认包有5m,下行tcp数据包有20m,则,pdcp层模块按数据包到达的顺序,优先选择5m ack确认包分配pdcp序列号及封装pdcp头,生成pdcp pdu数据包,再选择15m下行tcp数据包分配pdcp序列号及封装pdcp头,生成pdcp pdu数据包,将5m ack确认包和15m下行tcp数据包的pdcp pdu数据包发送到rlc层模块;剩余5m下行tcp数据包待下次发送到rlc层模块。
30.rlc层模块接受数据包后,对pdcp pdu数据包进行分片处理,再封装rlc头,发送分片后的数据包给mac层模块,由于每次发送的pdcp pdu数据量并不固定,因此,分片处理后,会有分片剩余的pdcp pdu数据包,则先将分片剩余的pdcp pdu数据暂存入缓存队列,待下次优先发送。
31.由于每次发送,都是ack确认包优先分配pdcp序列号,因此,ack确认包的pdcp序列号始终在前,并且基站侧pdcp层单元又配置了按序投递功能,即pdcp序号在前的优先投递。因此,可以保证ack确认包不会被堵塞。
32.s4:5g基站的phy层(物理层)单元接收到分片后的数据包后,投递给mac层单元;mac层单元将分片后的数据包解复用后投递给rlc层单元;rlc层单元将分片后的数据包进行重组,将重组后的数据包投递给pdcp层单元;pdcp层单元接收到数据包后,根据数据包的pdcp序列号,按序发送给服务端。
33.具体的,5g基站的rlc层单元接收到分片后的数据包后,将数据包重组,然后投递给pdcp层单元。pdcp层单元接收到重组后的数据包后,由于开启了pdcp层按序投递功能,因此,pdcp层单元按数据包的pdcp序列号的顺序,从小到大依次向服务端(server端)发送,从而可以保证优先发送ack确认包。
34.综上所述,本发明通过用户终端的pdcp层优先选择ack确认包分配pdcp序列号及封装pdcp头再发送,同时,在5g基站侧开启pdcp层按序投递功能,从而保证了下行tcp数据包的ack确认包可优先发送到服务端,防止出现拥塞的情况;本发明的防止ack包拥塞的方法,适用于具备复杂功能处理能力的5g基站,可广泛应用于需处理复杂业务的应用场景。
35.以上实施例仅表达了本发明的优选实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,
在不脱离本发明构思的前提下,还可以做出若干变形和改进,如对各个实施例中的不同特征进行组合等,这些都属于本发明的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献