TCP数据的传输方法、装置及电子设备与流程

专利2022-05-09  82


tcp数据的传输方法、装置及电子设备
技术领域
1.本发明涉及数据传输技术领域,尤其涉及一种tcp数据的传输方法、装置及电子设备。


背景技术:

2.随着移动通信设备使用的激增,人们对移动互联网和基于web的应用日渐显现出浓厚的兴趣。tcp(transmission control protocol,传输控制协议)是互联网上流行的传输层协议,负责提供高可靠性的有线和无线链路的数据传输。由于tcp发送吞吐率的理想值受限于发送窗大小和rtt(round

trip time,往返时间)的比值,在发送窗大小不变的前提下,各种原因(例如丢包、重传、链路资源调度延迟等)引起的rtt增大都会降低发送端整体的吞吐率。
3.双连接的引入旨在给用户带来更高的数据收发速率,数据发送端在双连接的分离承载上分发tcp数据,以便提高tcp数据发送的吞吐率。由于分离承载各个rlc(radio link control,无线链路控制)实体连接不同的传输路径,因此由其承载的tcp数据往往会有不同的rtt值。通常,发送端在某一包tcp数据到达分离承载前,依据rlc实体最近时间段内的吞吐率评估该包应该选择在哪个具体的rlc实体上发送,即选择能够尽快提供发送时机的rlc实体。然而,尽快发送不等于发送后能尽快得到对端的确认。tcp数据按序分发给分离承载并发送后,对应较小rtt值的rlc实体(由其承载的tcp数据具有较小的rtt值)上能先收到tcp ack(tcp发送确认)。随着时间的推移,发送端需要等待对应较大rtt值的那个rlc实体收到tcp ack后才能发送新数据。于是,发送端的总体吞吐率被限制到了较低的水平。


技术实现要素:

4.本发明提供的tcp数据的传输方法、装置及电子设备,能够提高发送端的整体吞吐率。
5.第一方面,本发明提供一种tcp数据的传输方法,所述方法包括:
6.在接收到tcp数据之后,根据各rlc实体所承载的tcp数据的rtt统计值、各rlc实体的吞吐率统计值以及已缓存的数据量,选择用于传输tcp数据的rlc实体;
7.将所述tcp数据传递给所选择的rlc实体,并更新所述rlc实体上已缓存的数据量;
8.在所述rlc实体完成tcp数据发送之后,更新所述rlc实体上已缓存的数据量,并定期更新所述rlc实体对应的吞吐率统计值;
9.根据所述rlc实体反馈的tcp ack报文,对所述rtt统计值进行更新。
10.可选地,所述根据各无线链路控制rlc实体所承载的tcp数据的往返时间rtt统计值、各rlc实体的吞吐率统计值以及已缓存的数据量,选择用于传输tcp数据的rlc实体包括:
11.选择rtt与的加权和较小的rlc实体,作为用于传输tcp数据的rlc实体,其中t为
吞吐率统计值,v为已缓存的数据量。
12.可选地,所述根据各无线链路控制rlc实体所承载的tcp数据的往返时间rtt统计值、各rlc实体的吞吐率统计值以及已缓存的数据量,选择用于传输tcp数据的rlc实体包括:
13.根据各rlc实体所承载的tcp数据的rtt统计值、各rlc实体的吞吐率统计值、已缓存的数据量以及环境变量,选择用于传输tcp数据的rlc实体。
14.可选地,所述环境变量包括信号强度rsrp和/或信噪比snr;
15.所述根据各rlc实体所承载的tcp数据的rtt统计值、各rlc实体的吞吐率统计值、已缓存的数据量以及环境变量,选择用于传输tcp数据的rlc实体包括:对于两个rlc实体,若其对应的rtt与的加权和相差在预定范围内,则再比较其对应的rsrp或snr,并选择链路的rsrp和/或snr较大的rlc实体,作为用于传输tcp数据的rlc实体。
16.第二方面,本发明提供一种tcp数据的传输装置,所述装置包括:
17.选择单元,用于在接收到tcp数据之后,根据各rlc实体所承载的tcp数据的rtt统计值、各rlc实体的吞吐率统计值以及已缓存的数据量,选择用于传输tcp数据的rlc实体;
18.传递单元,用于将所述tcp数据传递给所选择的rlc实体,并更新所述rlc实体上已缓存的数据量;
19.第一更新单元,用于在所述rlc实体完成tcp数据发送之后,更新所述rlc实体上已缓存的数据量,并定期更新所述rlc实体对应的吞吐率统计值;
20.第二更新单元,用于根据所述rlc实体反馈的tcp ack报文,对所述rtt统计值进行更新。
21.可选地,所述选择单元,用于选择rtt与的加权和较小的rlc实体,作为用于传输tcp数据的rlc实体,其中t为吞吐率统计值,v为已缓存的数据量。
22.可选地,所述选择单元,用于根据各rlc实体所承载的tcp数据的rtt统计值、各rlc实体的吞吐率统计值、已缓存的数据量以及环境变量,选择用于传输tcp数据的rlc实体。
23.可选地,所述环境变量包括信号强度rsrp和/或信噪比snr;
24.所述选择单元,用于对于两个rlc实体,若其对应的rtt与的加权和相差在预定范围内,则再比较其对应的rsrp或snr,并选择链路的rsrp和/或snr较大的rlc实体,作为用于传输tcp数据的rlc实体。
25.第三方面,本发明提供一种电子设备,所述电子设备包括:
26.至少一个处理器;以及
27.与所述至少一个处理器通信连接的存储器;其中,
28.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述tcp数据的传输方法。
29.第四方面,本发明提供一种芯片,所述芯片包括:
30.至少一个处理器;以及
31.与所述至少一个处理器通信连接的存储器;其中,
32.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述tcp数据的传输方法。
33.第五方面,本发明提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现上述tcp数据的传输方法。
34.本发明实施例提供的tcp数据的传输方法、装置及电子设备,优先选择对应较低rtt值的rlc实体,且在不增加整体rtt值的前提下分发数据给其他rlc实体,保证总体rtt值尽量得小,进而保证发送端的吞吐率维持在较高的水平。
附图说明
35.图1为本发明一实施例tcp数据的传输方法的流程图;
36.图2为本发明另一实施例tcp数据的传输方法的流程图;
37.图3为本发明一实施例tcp数据的传输装置的结构示意图。
具体实施方式
38.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
39.本发明实施例提供一种tcp数据的传输方法,所述方法应用于电子设备,如图1所示,所述方法包括:
40.s11、在接收到tcp数据之后,根据各rlc实体所承载的tcp数据的rtt统计值、各rlc实体的吞吐率统计值以及已缓存的数据量,选择用于传输tcp数据的rlc实体。
41.可选地,可以选择rtt与的加权和较小的rlc实体,作为用于传输tcp数据的rlc实体,其中t为吞吐率统计值,v为已缓存的数据量。
42.s12、将所述tcp数据传递给所选择的rlc实体,并更新所述rlc实体上已缓存的数据量。
43.s13、在所述rlc实体完成tcp数据发送之后,更新所述rlc实体上已缓存的数据量,并定期更新所述rlc实体对应的吞吐率统计值。
44.s14、根据所述rlc实体反馈的tcp ack报文,对所述rtt统计值进行更新。
45.本发明实施例提供的tcp数据的传输方法,优先选择对应较低rtt值的rlc实体,且在不增加整体rtt值的前提下分发数据给其他rlc实体,保证总体rtt值尽量得小,进而保证发送端的吞吐率维持在较高的水平。
46.下面结合具体实施例对本发明tcp数据的传输方法进行详细说明。
47.如图2所示,本实施例提供的tcp数据的传输方法包括如下步骤:
48.s21、数据传输模块收到应用处理器发送的tcp数据后,依据应用处理器提供的关联各个rlc实体的tcp数据的rtt值、rlc实体自己的t值和v值,选择rtt与的加权和较小的rlc实体。
49.其中,分离承载的rlc实体所承载的tcp数据的rtt统计值为rtt值,rlc实体的吞吐率统计值为t值,rlc实体上已缓存的数据量为v值。
50.s22、数据传输模块将所述tcp数据传递给所选择的rlc实体,并更新v值。
51.s23、在所述rlc实体完成tcp数据发送之后,更新v值,并定期更新所述rlc实体对应的t的统计值。
52.s24、应用处理器根据各个rlc实体反馈的tcp ack报文,计算和统计rtt值,并将该信息分享给数据传输模块。
53.在本实施例中,将rtt值的统计功能放在了应用处理器是为了减少额外的报文解析开销,但并不限定该功能只能放在应用处理器。
54.需要说明的是,其中的rtt值是回路时间,而v/t评估的是延迟发送的时间。本实施例选取的是rtt与的加权和较小的rlc实体,在对rtt与进行加权和时,rtt和的系数并不限定。
55.另外,由于rtt、v和t值都是过去一段时间的统计值,为了更好地评估现在和预测将来的情况,也可以引入环境变量,例如rsrp(reference signal receiving power,参考信号接收功率)和snr(signal

to

noise ratio,信噪比)等。引入后,rtt与的加权和与rsrp、snr的关系可以是:优先考虑某一个量,并在一定差距范围内再考量另一个量的大小关系,从而确定比较关系。
56.例如,对于两个rlc实体,若其对应的rtt与的加权和相差在预定范围内,则再比较其对应的rsrp或snr,并选择链路的rsrp和/或snr较大的rlc实体,作为用于传输tcp数据的rlc实体;若两个rlc实体,各自对应的rtt与的加权和相差在预定范围内,比较其对应的rsrp/snr,也在预定范围内,则再比较snr/rsrp,并选择链路的snr/rsrp较大的rlc实体,作为用于传输tcp数据的rlc实体。
57.本发明实施例tcp数据的传输方法,通过引入对rtt的考量,将不同路径上tcp数据发送和接收tcp ack的节奏协调至接近一致,减少了某一连接因为回路比较慢而阻塞tcp发送窗推进情况的发生,进而确保发送吞吐率保持在较高的水平。
58.需要说明的是,本发明实施例中的分离承载连接的rlc实体的数量可能不一定是两个,也可能是多于两个连接并存的情形(即扩展至多连接的场景),同时rlc实体概念也可能由其他功能类似的其他模块所替代。
59.本发明实施例还提供一种tcp数据的传输装置,所述装置位于电子设备,如图3所示,所述装置包括:
60.选择单元11,用于在接收到tcp数据之后,根据各rlc实体所承载的tcp数据的rtt统计值、各rlc实体的吞吐率统计值以及已缓存的数据量,选择用于传输tcp数据的rlc实体;
61.传递单元12,用于将所述tcp数据传递给所选择的rlc实体,并更新所述rlc实体上已缓存的数据量;
62.第一更新单元13,用于在所述rlc实体完成tcp数据发送之后,更新所述rlc实体上已缓存的数据量,并定期更新所述rlc实体对应的吞吐率统计值;
63.第二更新单元14,用于根据所述rlc实体反馈的tcp ack报文,对所述rtt统计值进行更新。
64.本发明实施例提供的tcp数据的传输装置,优先选择对应较低rtt值的rlc实体,且在不增加整体rtt值的前提下分发数据给其他rlc实体,保证总体rtt值尽量得小,进而保证发送端的吞吐率维持在较高的水平。
65.可选地,所述选择单元11,用于选择rtt与的加权和较小的rlc实体,作为用于传输tcp数据的rlc实体,其中t为吞吐率统计值,v为已缓存的数据量。
66.可选地,所述选择单元11,用于根据各rlc实体所承载的tcp数据的rtt统计值、各rlc实体的吞吐率统计值、已缓存的数据量以及环境变量,选择用于传输tcp数据的rlc实体。
67.可选地,所述环境变量包括信号强度rsrp和/或信噪比snr;
68.所述选择单元11,用于对于两个rlc实体,若其对应的rtt与的加权和相差在预定范围内,则再比较其对应的rsrp或snr,并选择链路的rsrp和/或snr较大的rlc实体,作为用于传输tcp数据的rlc实体。
69.本实施例的装置,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
70.本发明实施例还提供一种电子设备,所述电子设备包括:
71.至少一个处理器;以及
72.与所述至少一个处理器通信连接的存储器;其中,
73.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述tcp数据的传输方法。
74.本发明实施例还提供一种芯片,所述芯片包括:
75.至少一个处理器;以及
76.与所述至少一个处理器通信连接的存储器;其中,
77.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述tcp数据的传输方法。
78.本发明实施例还提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现上述tcp数据的传输方法。
79.本领域普通技术人员可以理解实现上述方法实施例中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read

only memory,rom)或随机存储记忆体(random access memory,ram)等。
80.以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应
涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

技术特征:
1.一种tcp数据的传输方法,其特征在于,所述方法包括:在接收到传输控制协议tcp数据之后,根据各无线链路控制rlc实体所承载的tcp数据的往返时间rtt统计值、各rlc实体的吞吐率统计值以及已缓存的数据量,选择用于传输tcp数据的rlc实体;将所述tcp数据传递给所选择的rlc实体,并更新所述rlc实体上已缓存的数据量;在所述rlc实体完成tcp数据发送之后,更新所述rlc实体上已缓存的数据量,并定期更新所述rlc实体对应的吞吐率统计值;根据所述rlc实体反馈的tcp ack报文,对所述rtt统计值进行更新。2.根据权利要求1所述的方法,其特征在于,所述根据各无线链路控制rlc实体所承载的tcp数据的往返时间rtt统计值、各rlc实体的吞吐率统计值以及已缓存的数据量,选择用于传输tcp数据的rlc实体包括:选择rtt与tv的加权和较小的rlc实体,作为用于传输tcp数据的rlc实体,其中t为吞吐率统计值,v为已缓存的数据量。3.根据权利要求1或2所述的方法,其特征在于,所述根据各无线链路控制rlc实体所承载的tcp数据的往返时间rtt统计值、各rlc实体的吞吐率统计值以及已缓存的数据量,选择用于传输tcp数据的rlc实体包括:根据各rlc实体所承载的tcp数据的rtt统计值、各rlc实体的吞吐率统计值、已缓存的数据量以及环境变量,选择用于传输tcp数据的rlc实体。4.根据权利要求3所述的方法,其特征在于,所述环境变量包括信号强度rsrp和/或信噪比snr;所述根据各rlc实体所承载的tcp数据的rtt统计值、各rlc实体的吞吐率统计值、已缓存的数据量以及环境变量,选择用于传输tcp数据的rlc实体包括:对于两个rlc实体,若其对应的rtt与的加权和相差在预定范围内,则再比较其对应的rsrp或snr,并选择链路的rsrp和/或snr较大的rlc实体,作为用于传输tcp数据的rlc实体。5.一种tcp数据的传输装置,其特征在于,所述装置包括:选择单元,用于在接收到tcp数据之后,根据各rlc实体所承载的tcp数据的rtt统计值、各rlc实体的吞吐率统计值以及已缓存的数据量,选择用于传输tcp数据的rlc实体;传递单元,用于将所述tcp数据传递给所选择的rlc实体,并更新所述rlc实体上已缓存的数据量;第一更新单元,用于在所述rlc实体完成tcp数据发送之后,更新所述rlc实体上已缓存的数据量,并定期更新所述rlc实体对应的吞吐率统计值;第二更新单元,用于根据所述rlc实体反馈的tcp ack报文,对所述rtt统计值进行更新。6.根据权利要求5所述的装置,其特征在于,所述选择单元,用于选择rtt与的加权和较小的rlc实体,作为用于传输tcp数据的rlc实体,其中t为吞吐率统计值,v为已缓存的数据量。
7.根据权利要求5或6所述的装置,其特征在于,所述选择单元,用于根据各rlc实体所承载的tcp数据的rtt统计值、各rlc实体的吞吐率统计值、已缓存的数据量以及环境变量,选择用于传输tcp数据的rlc实体。8.根据权利要求7所述的装置,其特征在于,所述环境变量包括信号强度rsrp和/或信噪比snr;所述选择单元,用于对于两个rlc实体,若其对应的rtt与tv的加权和相差在预定范围内,则再比较其对应的rsrp或snr,并选择链路的rsrp和/或snr较大的rlc实体,作为用于传输tcp数据的rlc实体。9.一种电子设备,其特征在于,所述电子设备包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至4中任一项所述的方法。10.一种芯片,其特征在于,所述芯片包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至4中任一项所述的方法。11.一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现如权利要求1至4中任一项所述的方法。
技术总结
本发明提供一种TCP数据的传输方法、装置及电子设备。所述方法包括:在接收到传输控制协议TCP数据之后,根据各无线链路控制RLC实体所承载的TCP数据的往返时间RTT统计值、各RLC实体的吞吐率统计值以及已缓存的数据量,选择用于传输TCP数据的RLC实体;将所述TCP数据传递给所选择的RLC实体,并更新所述RLC实体上已缓存的数据量;在所述RLC实体完成TCP数据发送之后,更新所述RLC实体上已缓存的数据量,并定期更新所述RLC实体对应的吞吐率统计值;根据所述RLC实体反馈的TCP ACK报文,对所述RTT统计值进行更新。本发明能够提高发送端的整体吞吐率。吐率。吐率。


技术研发人员:周斌
受保护的技术使用者:展讯通信(上海)有限公司
技术研发日:2021.03.03
技术公布日:2021/6/29

转载请注明原文地址:https://doc.8miu.com/read-293.html

最新回复(0)