CN114079544B - 一种rlc数据重传方法及装置 - Google Patents
一种rlc数据重传方法及装置 Download PDFInfo
- Publication number
- CN114079544B CN114079544B CN202010831109.5A CN202010831109A CN114079544B CN 114079544 B CN114079544 B CN 114079544B CN 202010831109 A CN202010831109 A CN 202010831109A CN 114079544 B CN114079544 B CN 114079544B
- Authority
- CN
- China
- Prior art keywords
- pdu
- sending
- mac layer
- capacity
- buffer
- 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
- 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
-
- 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
Abstract
本公开涉及通信技术领域,特别涉及一种RLC数据重传方法及装置,用于提高数据重传效率,该方法为:发送设备根据MAC层的发送缓存容量,从RLC层的待重传的各个PDU中选取至少一个PDU,发送设备将选取的至少一个PDU填充至MAC层的发送缓存中,其中,填充后的发送缓存的剩余容量小于任意一个未被选取的PDU的长度,然后,发送设备发送至少一个PDU。这样,根据MAC层的发送缓存,对重传数据进行选择性传输,能够减少PDU被分段的次数,降低了网络数据传输的碎片化,从而提升了数据传输效率,同时,减少了系统资源的消耗。
Description
技术领域
本公开涉及通信技术领域,特别涉及一种RLC数据重传方法及装置。
背景技术
无线链路控制(Radio Link Control,RLC)的(Acknowledged Mode,AM)模式中,通过自动重传请求(Automatic Repeat-reQuest,ARQ)机制,重传丢失或传输出错的数据包,以实现可靠数据传输。
参阅图1所示,采用AM模式发送数据时,发送设备将新传服务数据单元(ServiceData Unit,SDU)依次发送至接收设备,接收设备在数据接收错误或者数据丢失时,向发送设备发送状态协议数据单元(Protocol Data Unit,PDU),通知发送设备对进行数据重传。
发送设备按照待重传的SDU或SDU切片插入重传队列的顺序,依次填充至媒体介入控制(Media Access Control,MAC)层的发送缓存进行发送。例如,参阅图2所示,发送设备依次发送状态PDU中指示的待重传SDU1、SDU2和SDU3-切片1。
然而,在小区边缘、人口密集、干扰较多、信号不稳定等区域,MAC层的发送缓存容量小于当前所有待重传数据的总长度,在发送缓存不能刚好填充完整的SDU或SDU切片时,需要对重传队列中的SDU或SDU切片进行分段或再分段,例如,MAC层的发送缓存填充SDU1后,对SDU2进行分段,这样,造成了网络数据传输碎片化,增加了发送设备分段与接收设备重组负担,从而影响了数据传输效率。
发明内容
本公开提供了一种RLC数据重传方法及装置,用以解决由于RLC数据重传时数据传输碎片化导致的数据传输效率较低的问题。
本公开实施例提供的具体技术方案如下:
第一方面,一种RLC数据重传方法,包括:
发送设备根据MAC层的发送缓存容量,从RLC层的待重传的各个PDU中选取至少一个PDU;
所述发送设备将选取的所述至少一个PDU填充至所述MAC层的发送缓存中,其中,填充后的发送缓存的剩余容量小于任意一个未被选取的PDU的长度;
所述发送设备发送所述至少一个PDU。
可选的,所述发送设备根据MAC层的发送缓存容量,从RLC层的待重传的各个PDU中选取至少一个PDU之前,还包括:
所述发送设备收到重传请求后,根据所述重传请求中携带的所述各个PDU的标识信息对应的所述各个PDU的长度,对所述各个PDU进行排序。
可选的,所述发送设备根据MAC层的发送缓存容量,从RLC层的待重传的各个PDU中选取至少一个PDU,具体包括:
所述发送设备根据MAC层的发送缓存容量,依次针对所述各个PDU,判断所述发送缓存的当前剩余容量不小于当前PDU的长度时,选取所述当前PDU。
可选的,所述方法还包括:
若所述发送设备未从所述各个PDU中选取出至少一个PDU,则根据所述发送缓存容量,对所述各个PDU中长度最小的PDU进行分段;
所述发送设备将分段得到的PDU切片填充至所述发送缓存中,并发送所述PDU切片。
可选的,所述发送设备将选取的所述至少一个PDU填充至所述MAC层的发送缓存中,具体包括:
所述发送设备每选取一个PDU后,将选取的一个PDU填充至所述MAC层的发送缓存中,直至将选取的所述至少一个PDU填充至所述MAC层的发送缓存中;或者
所述发送设备将选取的所述至少一个PDU,按照PDU选取顺序,依次填充至所述MAC层的发送缓存中。
第二方面,一种RLC数据重传装置,包括:
存储器,用于存储可执行指令;
处理器,用于读取并执行存储器中存储的可执行指令,执行下列过程:
根据MAC层的发送缓存容量,从RLC层的待重传的各个协议数据单元PDU中选取至少一个PDU;
将选取的所述至少一个PDU填充至所述MAC层的发送缓存中,其中,填充后的发送缓存的剩余容量小于任意一个未被选取的PDU的长度;
发送所述至少一个PDU。
可选的,根据MAC层的发送缓存容量,从RLC层的待重传的各个PDU中选取至少一个PDU之前,所述处理器还用于:
收到重传请求后,根据所述重传请求中携带的所述各个PDU的标识信息对应的所述各个PDU的长度,对所述各个PDU进行排序。
可选的,根据MAC层的发送缓存容量,从RLC层的待重传的各个PDU中选取至少一个PDU时,所述处理器具体用于:
根据MAC层的发送缓存容量,依次针对所述各个PDU,判断所述发送缓存的当前剩余容量不小于当前PDU的长度时,选取所述当前PDU。
可选的,所述处理器还用于:
若未从所述各个PDU中选取出至少一个PDU,则根据所述发送缓存容量,对所述各个PDU中长度最小的PDU进行分段;
将分段得到的PDU切片填充至所述发送缓存中,并发送所述PDU切片。
可选的,将选取的所述至少一个PDU填充至所述MAC层的发送缓存中时,所述处理器具体用于:
每选取一个PDU后,将选取的一个PDU填充至所述MAC层的发送缓存中,直至将选取的所述至少一个PDU填充至所述MAC层的发送缓存中;或者
将选取的所述至少一个PDU,按照PDU选取顺序,依次填充至所述MAC层的发送缓存中。
第三方面,一种RLC数据重传装置,包括:
选取单元,用于根据MAC层的发送缓存容量,从RLC层的待重传的各个协议数据单元PDU中选取至少一个PDU;
填充单元,用于将选取的所述至少一个PDU填充至所述MAC层的发送缓存中,其中,填充后的发送缓存的剩余容量小于任意一个未被选取的PDU的长度;
发送单元,用于发送所述至少一个PDU。
第四方面,一种存储介质,当所述存储介质中的指令由处理器执行时,使得所述处理器能够执行如上述任一项所述的RLC数据重传方法。
综上所述,本公开实施例中,根据MAC层的发送缓存,对重传数据进行选择性传输,能够减少PDU被分段的次数,降低了网络数据传输的碎片化,从而提升了数据传输效率,同时,使得接收设备减少重组次数,提高了PDU重组成功率,提升了接收设备数据接收效率,此外,发送设备减少分段次数,接收设备减少重组次数,均能够减少系统资源的消耗。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中RLC数据重传的交互示意图;
图2为现有技术中RLC数据分段传输示意图;
图3为本公开实施例中提供的一种RLC数据重传方法的流程示意图;
图4A为本公开实施例中提供的一种待重传PDU示意图;
图4B为本公开实施例中提供的一种待重传PDU的传输示意图;
图4C为本公开实施例中提供的另一种待重传PDU的传输示意图;
图4D为本公开实施例中提供的另一种待重传PDU的传输示意图;
图5为本公开实施例中提供的一种RLC数据重传装置的实体结构示意图;
图6为本公开实施例中提供的一种RLC数据重传装置的逻辑结构示意图。
具体实施方式
为了降低网络数据传输的碎片化,减轻发送设备与接收设备负担,从而提高数据传输效率,在本公开实施例中,提供一种RLC数据重传的解决方案。
该方案为:发送设备根据MAC层的发送缓存容量,从RLC层的待重传的各个PDU中选取至少一个PDU,发送设备将选取的至少一个PDU填充至MAC层的发送缓存中,其中,填充后的发送缓存的剩余容量小于任意一个未被选取的PDU的长度,然后,发送设备发送至少一个PDU。
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
参阅图3所示,本公开实施例中,进行RLC数据包重传的流程如下:
步骤S301:发送设备根据MAC层的发送缓存容量,从RLC层的待重传的各个PDU中选取至少一个PDU。
需要说明的是,本公开实施例中,PDU可以是SDU,也可以是SDU切片,本公开对此不作限定。
为了提高重传效率,在执行步骤S301之前,发送设备收到重传请求后,根据重传请求中携带的各个PDU的标识信息对应的各个PDU的长度,对各个PDU进行排序。
发送设备对各个PDU进行排序时,根据各个PDU的长度,可以按照从大到小的顺序进行排序,也可以按照从小到大的顺序进行排序,本公开对此并不限制。为了便于描述,本公开实施例中,仅以按照从大到小的顺序进行排序作为举例。
例如,采用(Sequence Number,SN)序列号作为PDU的标识信息,发送设备收到重传请求后,重传请求中携带PDU1、PDU2、PDU3、PDU4、PDU5的SN序列号,SN序列号对应的PDU1、PDU2、PDU3、PDU4、PDU5的长度依次为15、8、6、4、2,根据PDU1、PDU2、PDU3、PDU4、PDU5的长度,对PDU1、PDU2、PDU3、PDU4、PDU5进行排序,参阅图4A所示,排序后依次为PDU1、PDU2、PDU3、PDU4、PDU5。
执行步骤S301时,发送设备根据MAC层的发送缓存容量,依次针对各个PDU,判断发送缓存的当前剩余容量不小于当前PDU的长度时,选取当前PDU。
需要说明的是,本公开实施例中,由于网络传输信道传输能力的影响,因此,MAC层的发送缓存容量是动态变化的,若一次无法全部发送待重传的PDU,则可以根据MAC层的发送缓存容量,通过多次发送,将待重传的PDU全部发送至接收设备,下文中,仅以一次发送过程作为举例。
需要说明的是,在重传过程中,待重传数据的发送优先级高于从未发送过的新传数据的发送优先级,在待重传数据未全部发送之前,不发送新传数据,也可以理解为,在待重传数据未全部填充至发送缓存之前,发送缓存中不填充新传数据,因此不存在因新传数据而触发新的重传请求。
例如,假设,MAC层的发送缓存容量为9,参阅图4B所示,发送设备根据MAC层的发送缓存容量,首先,针对PDU1,发送缓存的当前剩余容量为9,发送缓存的当前剩余容量小于PDU1的长度,因此,不选取PDU1;针对PDU2,发送缓存的当前剩余容量为9,发送缓存的当前剩余容量不小于PDU2的长度,因此,选取PDU2;针对PDU3,发送缓存的当前剩余容量为1,发送缓存的当前剩余容量小于PDU3的长度,因此,不选取PDU3;针对PDU4,发送缓存的当前剩余容量为1,发送缓存的当前剩余容量小于PDU4的长度,不选取PDU4;针对PDU5,发送缓存的当前剩余容量1,发送缓存的当前剩余容量小于PDU5的长度,不选取PDU5。
又例如,假设,MAC层的发送缓存容量为13,参阅图4C所示,发送设备根据MAC层的发送缓存容量,首先,针对PDU1,发送缓存的当前剩余容量为13,发送缓存的当前剩余容量小于PDU1的长度,因此,不选取PDU1;针对PDU2,发送缓存的当前剩余容量为13,发送缓存的当前剩余容量不小于PDU2的长度,因此,选取PDU2;针对PDU3,发送缓存的当前剩余容量为5,发送缓存的当前剩余容量小于PDU3的长度,因此,不选取PDU3;针对PDU4,发送缓存的当前剩余容量为5,发送缓存的当前剩余容量不小于PDU4的长度,选取PDU4;针对PDU5,发送缓存的当前剩余容量1,发送缓存的当前剩余容量小于PDU5的长度,不选取PDU5。
步骤S302:发送设备将选取的至少一个PDU填充至MAC层的发送缓存中,其中,填充后的发送缓存的剩余容量小于任意一个未被选取的PDU的长度。
需要说明的是,本公开实施例中,任意一个未被选取的PDU是指任意一个未被选取的待重传的PDU。
例如,MAC层的发送缓存容量为9,发送设备将选取的PDU2填充至MAC层的发送缓存中,此时,填充后的发送缓存的剩余容量为1,填充后的发送缓存的剩余容量小于未被选取的PDU1、PDU3、PDU4、PDU5中的任意一个PDU的长度。
又例如,MAC层的发送缓存容量为13,发送设备将选取的PDU2和PDU4填充至MAC层的发送缓存中,此时,填充后的发送缓存的剩余容量为1,填充后的发送缓存的剩余容量小于未被选取的PDU1、PDU3、PDU5中的任意一个PDU的长度。
步骤S303:发送设备发送至少一个PDU。
具体的,发送设备将至少一个PDU发送至接收设备。
例如,发送设备将PDU2发送至接收设备。
又例如,发送设备将PDU2和PDU4发送至接收设备。
进一步的,若发送设备未从各个PDU中选取出至少一个PDU,则根据发送缓存容量,对各个PDU中长度最小的PDU进行分段;
发送设备将分段得到的PDU切片填充至发送缓存中,并发送PDU切片。
为了进一步避免数据碎片化,从而减少接收设备重组次数,提高接收设备的数据接收效率,根据发送缓存容量,对各个PDU中长度最小的PDU进行分段时,得到第一PDU切片和第二PDU切片,其中,第一PDU切片的长度与发送缓存容量相同,进而,将第一PDU切片填充至发送缓存中,并发送第一PDU切片。
需要说明的是,本公开实施例中,分段可以是指对SDU进行分段,也可以是指对SDU切片进行再分段。
例如,假设,发送缓存容量为1,参阅图4D所示,发送设备未从PDU1、PDU2、PDU3、PDU4、PDU5中选取出至少一个PDU,则根据发送缓存容量,对PDU1、PDU2、PDU3、PDU4、PDU5中长度最小的PDU5进行分段,得到PDU5-切片1和PDU5-切片2,其中,PDU5-切片1的长度与发送缓存容量相同,PDU5-切片2为PDU5的剩余部分,然后,将PDU5-切片1填充至发送缓存中,将PDU5-切片1发送至接收设备。
作为一种可能的实施方式,可以先选取至少一个PDU,再将选取的至少一个PDU依次填充至MAC层的发送缓存中,即,执行步骤S302时,发送设备将选取的至少一个PDU,按照PDU选取顺序,依次填充至MAC层的发送缓存中。
接下来,以一个具体的通信场景为例,对该实施方式进行进一步说明。
发送设备向接收设备发送SDU1、SDU2、SDU3-切片1、SDU3-切片2。接收设备仅接收到SDU3-切片2,那么,启动重组定时器,若在重组定时器超时时,仍未收到SDU1、SDU2、SDU3-切片1,则向发送设备发送重传请求,重传请求中携带待重传的SDU1、SDU2、SDU3-切片1的SN序列号。
发送设备根据重传请求中携带的各个PDU的标识信息对应的各个PDU的长度,按照从大到小的顺序,对SDU1、SDU2、SDU3-切片1进行排序,其中,SDU1、SDU2、SDU3-切片1的长度依次为5、10、4,得到重传队列SDU2、SDU1、SDU3-切片1。
首先,假设,MAC层的发送缓存容量为6,发送设备根据MAC层的发送缓存容量,针对重传队列SDU2、SDU1、SDU3-切片1,依次执行以下操作:
针对SDU2,发送缓存的当前剩余容量为6,发送缓存的当前剩余容量小于SDU2的长度,因此,不选取SDU2;针对SDU1,发送缓存的当前剩余容量为6,发送缓存的当前剩余容量不小于SDU1的长度,因此,选取SDU1;针对SDU3-切片1,发送缓存的当前剩余容量为1,发送缓存的当前剩余容量小于SDU3-切片1的长度,因此,不选取SDU3-切片1。
发送设备选取SDU1之后,将选取的SDU1填充至MAC层的发送缓存中,此时,填充后的发送缓存的剩余容量为1,填充后的发送缓存的剩余容量小于未被选取的SDU2、SDU3-切片1中的任意一个PDU的长度。
发送设备发送SDU1之后,仍存在待重传的SDU2、SDU3-切片1,此时,重传队列为SDU2、SDU3-切片1。
然后,假设,MAC层的发送缓存容量为3,发送设备根据MAC层的发送缓存容量,针对重传队列SDU2、SDU3-切片1,依次执行以下操作:
针对SDU2,发送缓存的当前剩余容量为3,发送缓存的当前剩余容量小于SDU2的长度,因此,不选取SDU2;针对SDU3-切片1,发送缓存的当前剩余容量为3,发送缓存的当前剩余容量小于SDU3-切片1的长度,因此,不选取SDU3-切片1。
发送设备未从SDU2、SDU3-切片1中选取出至少一个PDU,则根据发送缓存容量3,对SDU2、SDU3-切片1中长度最小的SDU3-切片1进行分段,得到SDU3-切片1-切片1和SDU3-切片1-切片2,其中,SDU3-切片1-切片1的长度为3,SDU3-切片1-切片2的长度为1,并将SDU3-切片1-切片1填充至发送缓存中,将SDU3-切片1-切片1发送至接收设备。
发送设备发送SDU3-切片1-切片1之后,仍存在待重传的SDU2、SDU3-切片1-切片2,此时,重传队列为SDU2、SDU3-切片1-切片2。
之后,假设,MAC层的发送缓存容量为12,发送设备根据MAC层的发送缓存容量,针对重传队列SDU2、SDU3-切片1-切片2,依次执行以下操作:
针对SDU2,发送缓存的当前剩余容量为12,发送缓存的当前剩余容量不小于SDU2的长度,因此,选取SDU2;针对SDU3-切片1-切片2,发送缓存的当前剩余容量为2,发送缓存的当前剩余容量不小于SDU3-切片1-切片2的长度,因此,选取SDU3-切片1-切片2。
发送设备选取SDU2、SDU3-切片1-切片2之后,将选取的SDU2、SDU3-切片1-切片2填充至MAC层的发送缓存中,此时,填充后的发送缓存的剩余容量为1,不存在未被选取的待重传的PDU。
发送设备将SDU2、SDU3-切片1-切片2发送至接收设备,此时,待重传的PDU全部发送至接收设备。
作为另一种可能的实施方式,也可以选取一个PDU之后,将该PDU填充至发送缓存中,再选取下一个PDU,这样不断循环重复选取、填充操作,即,执行步骤S302时,发送设备每选取一个PDU后,将选取的一个PDU填充至MAC层的发送缓存中,直至将选取的至少一个PDU填充至MAC层的发送缓存中,直至填充后的发送缓存的剩余容量小于任意一个未被选取的PDU的长度。
接下来,以一个具体的通信场景为例,对该实施方式进行进一步说明。
发送设备向接收设备发送SDU1、SDU2、SDU3-切片1、SDU3-切片2、SDU4-切片1、SDU4-切片2。接收设备仅接收到SDU4-切片2,那么,启动重组定时器,若在重组定时器超时时,仍未收到SDU1、SDU2、SDU3-切片1、SDU3-切片2、SDU4-切片1,则向发送设备发送重传请求,重传请求中携带待重传的SDU1、SDU2、SDU3-切片1、SDU3-切片2、SDU4-切片1的SN序列号。
发送设备根据重传请求中携带的各个PDU的标识信息对应的各个PDU的长度,按照从大到小的顺序,对SDU1、SDU2、SDU3-切片1、SDU3-切片2、SDU4-切片1进行排序,其中,SDU1、SDU2、SDU3-切片1、SDU3-切片2、SDU4-切片1的长度依次为5、10、4、3、6,得到重传队列SDU2、SDU4-切片1、SDU1、SDU3-切片1、SDU3-切片2。
首先,发送设备根据MAC层的发送缓存容量,针对重传队列SDU2、SDU4-切片1、SDU1、SDU3-切片1、SDU3-切片2,依次执行以下操作:
假设,MAC层的发送缓存容量为9,针对SDU2,发送缓存的当前剩余容量为9,发送缓存的当前剩余容量小于SDU2的长度,因此,不选取SDU2填充至发送缓存;针对SDU4-切片1,发送缓存的当前剩余容量为9,发送缓存的当前剩余容量不小于SDU4-切片1的长度,因此,选取SDU4-切片1,并将SDU4-切片1填充至发送缓存;针对SDU1,发送缓存的当前剩余容量为3,发送缓存的当前剩余容量小于SDU1的长度,不选取SDU1填充至发送缓存;针对SDU3-切片1,发送缓存的当前剩余容量为3,发送缓存的当前剩余容量小于SDU3-切片1的长度,不选取SDU3-切片1填充至发送缓存;针对SDU3-切片2,发送缓存的当前剩余容量为3,发送缓存的当前剩余容量不小于SDU3-切片2的长度,选取SDU3-切片2,并将SDU3-切片2填充至发送缓存。
发送设备发送SDU4-切片1、SDU3-切片2之后,仍存在待重传的SDU2、SDU1、SDU3-切片1,此时,重传队列为SDU2、SDU1、SDU3-切片1。
然后,发送设备根据MAC层的发送缓存容量,针对重传队列SDU2、SDU1、SDU3-切片1,依次执行以下操作:
假设,MAC层的发送缓存容量为3,针对SDU2,发送缓存的当前剩余容量为3,发送缓存的当前剩余容量小于SDU2的长度,因此,不选取SDU2填充至发送缓存;针对SDU1,发送缓存的当前剩余容量为3,发送缓存的当前剩余容量小于SDU1的长度,不选取SDU1填充至发送缓存;针对SDU3-切片1,发送缓存的当前剩余容量为3,发送缓存的当前剩余容量小于SDU3-切片1的长度,不选取SDU3-切片1填充至发送缓存。
发送设备未从SDU2、SDU1、SDU3-切片1中选取出至少一个PDU填充至发送缓存,则根据MAC层的发送缓存容量为3,对SDU2、SDU1、SDU3-切片1中长度最小的SDU3-切片1进行分段,也可以理解为对SDU3-切片1进行再分段,得到SDU3-切片1-切片1和SDU3-切片1-切片2,其中,SDU3-切片1-切片1的长度为3,SDU3-切片1-切片2的长度为1,并将SDU3-切片1-切片1填充至发送缓存中,将SDU3-切片1-切片1发送至接收设备。
发送设备发送SDU3-切片1-切片1之后,仍存在待重传的SDU2、SDU1、SDU3-切片1-切片2,此时,重传队列为SDU2、SDU1、SDU3-切片1-切片2。
接着,发送设备根据MAC层的发送缓存容量,针对重传队列SDU2、SDU1、SDU3-切片1-切片2,依次执行以下操作:
假设,MAC层的发送缓存容量为3,针对SDU2,发送缓存的当前剩余容量为3,发送缓存的当前剩余容量小于SDU2的长度,因此,不选取SDU2填充至发送缓存;针对SDU1,发送缓存的当前剩余容量为3,发送缓存的当前剩余容量小于SDU1的长度,不选取SDU1填充至发送缓存;针对SDU3-切片1-切片2,发送缓存的当前剩余容量为3,发送缓存的当前剩余容量不小于SDU3-切片1-切片2的长度,选取SDU3-切片1-切片2填充至发送缓存。
发送设备发送SDU3-切片1-切片2之后,仍存在待重传的SDU2、SDU1,此时,重传队列为SDU2、SDU1。
接着,发送设备根据MAC层的发送缓存容量,针对重传队列SDU2、SDU1,依次执行以下操作:
假设,MAC层的发送缓存容量为16,针对SDU2,发送缓存的当前剩余容量为16,发送缓存的当前剩余容量不小于SDU2的长度,选取SDU2填充至发送缓存;针对SDU1,发送缓存的当前剩余容量为6,发送缓存的当前剩余容量不小于SDU1的长度,选取SDU1填充至发送缓存。此时,填充后的发送缓存的剩余容量为1,不存在未被选取的待重传的PDU。
发送设备将SDU2、SDU1发送至接收设备,此时,待重传的PDU全部发送至接收设备。
基于同一发明构思,参阅图5所示,本公开实施例提供一种RLC数据重传装置,至少包括:
存储器501,用于存储可执行指令;
处理器502,用于读取并执行存储器中存储的可执行指令,执行下列过程:
根据媒体介入控制MAC层的发送缓存容量,从RLC层的待重传的各个协议数据单元PDU中选取至少一个PDU;
将选取的所述至少一个PDU填充至所述MAC层的发送缓存中,其中,填充后的发送缓存的剩余容量小于任意一个未被选取的PDU的长度;
发送所述至少一个PDU;
收发机503,用于在处理器502的控制下接收和发送数据。
可选的,根据MAC层的发送缓存容量,从RLC层的待重传的各个PDU中选取至少一个PDU之前,所述处理器502还用于:
收到重传请求后,根据所述重传请求中携带的所述各个PDU的标识信息对应的所述各个PDU的长度,对所述各个PDU进行排序。
可选的,根据MAC层的发送缓存容量,从RLC层的待重传的各个PDU中选取至少一个PDU时,所述处理器502具体用于:
根据MAC层的发送缓存容量,依次针对所述各个PDU,判断所述发送缓存的当前剩余容量不小于当前PDU的长度时,选取所述当前PDU。
可选的,所述处理器502还用于:
若未从所述各个PDU中选取出至少一个PDU,则根据所述发送缓存容量,对所述各个PDU中长度最小的PDU进行分段;
将分段得到的PDU切片填充至所述发送缓存中,并发送所述PDU切片。
可选的,将选取的所述至少一个PDU填充至所述MAC层的发送缓存中时,所述处理器502具体用于:
每选取一个PDU后,将选取的一个PDU填充至所述MAC层的发送缓存中,直至将选取的所述至少一个PDU填充至所述MAC层的发送缓存中;或者
将选取的所述至少一个PDU,按照PDU选取顺序,依次填充至所述MAC层的发送缓存中。
其中,在图5中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器502代表的一个或多个处理器和存储器501代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机503可以是多个元件,即包括发送机和收发机,提供用于在传输介质上与各种其他装置通信的单元。处理器502负责管理总线架构和通常的处理,存储器501可以存储处理器502在执行操作时所使用的数据。
基于同一发明构思,本公开实施例中,提供一种RLC数据重传装置,参阅图6所示,至少包括:选取单元601、填充单元602和发送单元603,其中,
选取单元601,用于根据媒体介入控制MAC层的发送缓存容量,从RLC层的待重传的各个协议数据单元PDU中选取至少一个PDU;
填充单元602,用于将选取的所述至少一个PDU填充至所述MAC层的发送缓存中,其中,填充后的发送缓存的剩余容量小于任意一个未被选取的PDU的长度;
发送单元603,用于发送所述至少一个PDU。
选取单元601、填充单元602和发送单元603相互配合,以实现RLC数据重传装置在上述各个实施例中的功能。
基于同一发明构思,本公开实施例提供一种存储介质,当所述存储介质中的指令由处理器执行时,使得所述处理器能够执行上述流程中RLC数据重传装置实现的任一项方法。
综上所述,本公开实施例中,发送设备根据MAC层的发送缓存容量,从RLC层的待重传的各个PDU中选取至少一个PDU,发送设备将选取的至少一个PDU填充至MAC层的发送缓存中,其中,填充后的发送缓存的剩余容量小于任意一个未被选取的PDU的长度,然后,发送设备发送至少一个PDU。这样,根据MAC层的发送缓存,对重传数据进行选择性传输,能够减少PDU被分段的次数,降低了网络数据传输的碎片化,从而提升了数据传输效率,同时,使得接收设备减少重组次数,提高了PDU重组成功率,提升了接收设备数据接收效率,此外,发送设备减少分段次数,接收设备减少重组次数,均能够减少系统资源的消耗。
对于系统/装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者一个操作与另一个实体或者另一个操作区分开来,而不一定要求或者暗示这些实体或者操作之间存在任何这种实际的关系或者顺序。
本领域内的技术人员应明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本公开实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本公开的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本公开范围的所有变更和修改。
显然,本领域的技术人员可以对本公开进行各种改动和变型而不脱离本公开的精神和范围。这样,倘若本公开的这些修改和变型属于本公开权利要求及其等同技术的范围之内,则本公开也意图包含这些改动和变型在内。
Claims (12)
1.一种无线链路控制RLC数据重传方法,其特征在于,包括:
发送设备根据媒体介入控制MAC层的发送缓存容量,从RLC层的待重传的各个协议数据单元PDU中选取至少一个PDU;
所述发送设备将选取的所述至少一个PDU填充至所述MAC层的发送缓存中,其中,填充后的发送缓存的剩余容量小于任意一个未被选取的PDU的长度;
所述发送设备发送所述至少一个PDU。
2.如权利要求1所述的方法,其特征在于,所述发送设备根据MAC层的发送缓存容量,从RLC层的待重传的各个PDU中选取至少一个PDU之前,还包括:
所述发送设备收到重传请求后,根据所述重传请求中携带的所述各个PDU的标识信息对应的所述各个PDU的长度,对所述各个PDU进行排序。
3.如权利要求2所述的方法,其特征在于,所述发送设备根据MAC层的发送缓存容量,从RLC层的待重传的各个PDU中选取至少一个PDU,具体包括:
所述发送设备根据MAC层的发送缓存容量,依次针对所述各个PDU,判断所述发送缓存的当前剩余容量不小于当前PDU的长度时,选取所述当前PDU。
4.如权利要求1或2所述的方法,其特征在于,还包括:
若所述发送设备未从所述各个PDU中选取出至少一个PDU,则根据所述发送缓存容量,对所述各个PDU中长度最小的PDU进行分段;
所述发送设备将分段得到的PDU切片填充至所述发送缓存中,并发送所述PDU切片。
5.如权利要求1或2所述的方法,其特征在于,所述发送设备将选取的所述至少一个PDU填充至所述MAC层的发送缓存中,具体包括:
所述发送设备每选取一个PDU后,将选取的一个PDU填充至所述MAC层的发送缓存中,直至将选取的所述至少一个PDU填充至所述MAC层的发送缓存中;或者
所述发送设备将选取的所述至少一个PDU,按照PDU选取顺序,依次填充至所述MAC层的发送缓存中。
6.一种无线链路控制RLC数据重传装置,其特征在于,包括:
存储器,用于存储可执行指令;
处理器,用于读取并执行存储器中存储的可执行指令,执行下列过程:
根据媒体介入控制MAC层的发送缓存容量,从RLC层的待重传的各个协议数据单元PDU中选取至少一个PDU;
将选取的所述至少一个PDU填充至所述MAC层的发送缓存中,其中,填充后的发送缓存的剩余容量小于任意一个未被选取的PDU的长度;
发送所述至少一个PDU。
7.如权利要求6所述的装置,其特征在于,根据MAC层的发送缓存容量,从RLC层的待重传的各个PDU中选取至少一个PDU之前,所述处理器还用于:
收到重传请求后,根据所述重传请求中携带的所述各个PDU的标识信息对应的所述各个PDU的长度,对所述各个PDU进行排序。
8.如权利要求7所述的装置,其特征在于,根据MAC层的发送缓存容量,从RLC层的待重传的各个PDU中选取至少一个PDU时,所述处理器具体用于:
根据MAC层的发送缓存容量,依次针对所述各个PDU,判断所述发送缓存的当前剩余容量不小于当前PDU的长度时,选取所述当前PDU。
9.如权利要求6或7所述的装置,其特征在于,所述处理器还用于:
若未从所述各个PDU中选取出至少一个PDU,则根据所述发送缓存容量,对所述各个PDU中长度最小的PDU进行分段;
将分段得到的PDU切片填充至所述发送缓存中,并发送所述PDU切片。
10.如权利要求6或7所述的装置,其特征在于,将选取的所述至少一个PDU填充至所述MAC层的发送缓存中时,所述处理器具体用于:
每选取一个PDU后,将选取的一个PDU填充至所述MAC层的发送缓存中,直至将选取的所述至少一个PDU填充至所述MAC层的发送缓存中;或者
将选取的所述至少一个PDU,按照PDU选取顺序,依次填充至所述MAC层的发送缓存中。
11.一种无线链路控制RLC数据重传装置,其特征在于,包括:
选取单元,用于根据媒体介入控制MAC层的发送缓存容量,从RLC层的待重传的各个协议数据单元PDU中选取至少一个PDU;
填充单元,用于将选取的所述至少一个PDU填充至所述MAC层的发送缓存中,其中,填充后的发送缓存的剩余容量小于任意一个未被选取的PDU的长度;
发送单元,用于发送所述至少一个PDU。
12.一种存储介质,其特征在于,当所述存储介质中的指令由处理器执行时,使得所述处理器能够执行如权利要求1至5中任一项所述的无线链路控制RLC数据重传方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010831109.5A CN114079544B (zh) | 2020-08-18 | 2020-08-18 | 一种rlc数据重传方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010831109.5A CN114079544B (zh) | 2020-08-18 | 2020-08-18 | 一种rlc数据重传方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114079544A CN114079544A (zh) | 2022-02-22 |
CN114079544B true CN114079544B (zh) | 2023-04-14 |
Family
ID=80281384
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010831109.5A Active CN114079544B (zh) | 2020-08-18 | 2020-08-18 | 一种rlc数据重传方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114079544B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102104535A (zh) * | 2009-12-18 | 2011-06-22 | 华为技术有限公司 | 一种pdcp数据发送方法、装置及系统 |
CN107333298A (zh) * | 2016-04-29 | 2017-11-07 | 电信科学技术研究院 | 一种数据传输方法及相关设备 |
CN109274467A (zh) * | 2017-07-17 | 2019-01-25 | 中国移动通信有限公司研究院 | 一种数据重传处理方法、rlc实体和mac实体 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101170389B (zh) * | 2006-10-27 | 2014-07-16 | 中兴通讯股份有限公司 | 选择无线链路控制层协议数据单元首传传输块尺寸的方法 |
CN101170570B (zh) * | 2006-10-27 | 2011-05-11 | 中兴通讯股份有限公司 | 无线链路控制层服务数据单元的分段方法 |
US8306059B2 (en) * | 2008-11-05 | 2012-11-06 | Htc Corporation | Method of constructing and transmitting packets with MIMO configuration in a wireless communication system and related communication device |
CN101431515B (zh) * | 2008-11-07 | 2011-12-14 | 中国科学院计算技术研究所 | 一种非确认模式数据传输的方法和系统 |
CN101699898B (zh) * | 2009-11-03 | 2012-11-28 | 中兴通讯股份有限公司 | 一种分组业务域传输分组数据的方法和系统 |
CN102790667B (zh) * | 2011-05-18 | 2016-08-03 | 中兴通讯股份有限公司 | 一种处理重传数据的方法及基站 |
CN107294653A (zh) * | 2016-04-13 | 2017-10-24 | 中兴通讯股份有限公司 | 一种无线链路控制层的数据处理方法和系统 |
WO2018000320A1 (en) * | 2016-06-30 | 2018-01-04 | Qualcomm Incorporated | Handling retransmission grants in mobile communication devices |
-
2020
- 2020-08-18 CN CN202010831109.5A patent/CN114079544B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102104535A (zh) * | 2009-12-18 | 2011-06-22 | 华为技术有限公司 | 一种pdcp数据发送方法、装置及系统 |
CN107333298A (zh) * | 2016-04-29 | 2017-11-07 | 电信科学技术研究院 | 一种数据传输方法及相关设备 |
CN109274467A (zh) * | 2017-07-17 | 2019-01-25 | 中国移动通信有限公司研究院 | 一种数据重传处理方法、rlc实体和mac实体 |
Also Published As
Publication number | Publication date |
---|---|
CN114079544A (zh) | 2022-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7298730B2 (en) | Scheme to prevent HFN un-synchronization for UM RLC in a high speed wireless communication system | |
KR100779753B1 (ko) | 무선 통신 시스템에서 송신 상태를 폴링하는 방법 및 장치 | |
US6567375B2 (en) | Method and apparatus for packet size dependent link adaptation for wireless packet | |
US7284179B2 (en) | Window based stall avoidance mechanism for high speed wireless communication system | |
US8089879B2 (en) | In-band flow control methods for communications systems | |
KR100459557B1 (ko) | 고속 순방향 패킷 접속 통신 시스템에서 데이터 상태정보를 나타내기 위한 혼화 자동 재전송 요구 채널 번호할당 방법 | |
US20040177307A1 (en) | System and method for transmitting a sequence of data blocks | |
US8239718B2 (en) | Wireless communication apparatus, transmitting method and receiving method | |
US20050152350A1 (en) | System and method for transmitting/receiving automatic repeat request | |
RU2008131794A (ru) | Гибкая схема сегментации для систем связи | |
CN108768596B (zh) | 信号自动重传请求方法与装置 | |
JP2003283596A (ja) | 高速ダウンリンクパケット接続システムにおけるタイマーを利用した交錯状況回避システム及び方法 | |
JP2012105332A (ja) | 無線リンク制御における再送を支援する目的でプロトコルデータユニットの再送の優先順位を上げるためのシステムおよび方法 | |
EP2557741B1 (en) | Method and apparatus for sending / receiving downlink control signaling | |
CN104518856B (zh) | 基站和lte系统中处理下行harq反馈的方法、装置 | |
CN103999394B (zh) | 数据重传、反馈方法,以及相应的装置 | |
CN113473532B (zh) | 一种无线链路控制状态报告优化传输方法及系统 | |
Sayenko et al. | Performance analysis of the IEEE 802.16 ARQ mechanism | |
EP3490182A1 (en) | Hybrid automatic repeat request method and system | |
CN114079544B (zh) | 一种rlc数据重传方法及装置 | |
US7609639B2 (en) | Negative acknowledgment (NAK) suppression | |
CN102238735B (zh) | 可用软信道比特最大值的分配方法及系统 | |
KR100612654B1 (ko) | 자동 재송신 요청을 위한 프레임 생성 장치 및 방법 | |
EP4228318A1 (en) | Data transmission method and apparatus, and storage medium | |
CN110730141B (zh) | 一种聚合调度方法、发送端及计算机可读存储介质 |
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 |