CN113242318A - 数据传输方法和电子设备 - Google Patents
数据传输方法和电子设备 Download PDFInfo
- Publication number
- CN113242318A CN113242318A CN202110700256.3A CN202110700256A CN113242318A CN 113242318 A CN113242318 A CN 113242318A CN 202110700256 A CN202110700256 A CN 202110700256A CN 113242318 A CN113242318 A CN 113242318A
- Authority
- CN
- China
- Prior art keywords
- data
- retransmission
- retransmitted
- transmission
- processing layer
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W80/00—Wireless network protocols or protocol adaptations to wireless operation
- H04W80/08—Upper layer protocols
- H04W80/12—Application layer protocols, e.g. WAP [Wireless Application Protocol]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Communication Control (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请公开了一种数据传输方法和电子设备,属于通信技术领域。该数据传输方法包括:获取第一数据处理层反馈的数据传输信息;在所述数据传输信息满足异常条件的情况下,确定所述数据传输信息中待重传数据的重传信息;第三数据处理层根据所述重传信息重传所述待重传数据,其中,所述第三数据处理层重传所述待重传数据的第一重传等待时间小于第二数据处理层重传所述待重传数据的第二重传等待时间。
Description
技术领域
本申请属于通信技术领域,具体涉及一种数据传输方法和电子设备。
背景技术
随着互联网的发展,人们可以通过网络进行信息交互以满足各种各样的娱乐、办公、社交需求等。在网络数据传输过程中,通过设置的网络协议能够实现数据在各个不同节点之间的传输。如常见的传输层协议TCP协议和UDP协议。
为了保证数据传输的可靠性,在网络数据传输中引入了数据重传机制。如一个节点向另一个节点发送数据后,会等待反馈结果,如果在设定的时间内没有接收到反馈结果或者反馈结果为数据异常,则相应的进行数据的重新发送。然而在现有的数据传输过程中,针对多层网络架构的数据重传机制存在设计缺陷,导致较低的数据传输效率,需要改进。
发明内容
本发明实施例提供了一种数据传输方法、装置、设备和存储介质,解决了现有技术中数据重传效率较低的问题,能够加快数据传输效率以及传输成功率,显著提升了数据传输速度。
第一方面,本申请实施例提供了一种数据传输方法,该方法包括:
获取第一数据处理层反馈的数据传输信息;
在所述数据传输信息满足异常条件的情况下,确定所述数据传输信息中待重传数据的重传信息;
第三数据处理层根据所述重传信息重传所述待重传数据,其中,所述第三数据处理层重传所述待重传数据的第一重传等待时间小于第二数据处理层重传所述待重传数据的第二重传等待时间。
第二方面,本申请实施例提供了一种数据传输的装置,该装置包括:
传输信息获取模块,用于获取第一数据处理层反馈的数据传输信息;
重传信息确定模块,用于在所述数据传输信息满足异常条件的情况下,确定所述数据传输信息中待重传数据的重传信息;
数据重传模块,用于根据所述重传信息重传所述待重传数据,所述数据重传模块设置于第三数据处理层,其中,所述数据重传模块重传所述待重传数据的第一重传等待时间小于第二数据处理层重传所述待重传数据的第二重传等待时间。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。
第四方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。
第五方面,本申请实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的方法。
在本申请实施例中,通过获取第一数据处理层反馈的数据传输信息,在数据传输信息满足异常条件的情况下,确定数据传输信息中待重传数据的重传信息,第三数据处理层根据重传信息重传所述待重传数据,其中,第三数据处理层重传所述待重传数据的第一重传等待时间小于第二数据处理层重传所述待重传数据的第二重传等待时间。通过上述的数据传输方法,解决了现有技术中数据重传效率较低的问题,能够加快数据传输效率以及传输成功率,显著提升了数据传输速度。
附图说明
图1是本发明实施例提供的一种数据传输方法的流程图;
图2是本发明实施例提供的另一种数据传输方法的流程图;
图2a是本发明实施例提供的一种通过第一数据处理层进行数据发送的示意图;
图3是本发明实施例提供的另一种数据传输方法的流程图;
图3a是本发明实施例提供的基于传输控制协议类型的数据传输方法的流程图;
图4是本发明实施例提供的一种添加有第三数据处理层的网络传输架构示意图;
图5是本发明实施例提供的一种基于图4所示网络架构下的具备数据缓存处理功能的架构示意图;
图6是本申请实施例提供的一种数据传输装置的模块示意图;
图7是本申请实施例提供的一种电子设备结构示意图;
图8为实现本申请实施例的一种电子设备的硬件结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
下面结合附图,通过具体的实施例对本申请实施例提供的数据传输方法进行详细地说明。
图1是本发明实施例提供的一种数据传输方法的流程图。如图1所示,具体包括如下步骤:
步骤S101、获取第一数据处理层反馈的数据传输信息。
在一个实施例中,数据的传输通过多层网络架构实现。不同的层级实现不同的功能以最终完成数据传输。如常见的七层网络设计架构,其包含物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。其中,该第一数据处理层为根据不同网络架构划分出的多层处理层中的一层。
其中,第一数据处理层自身具备重传机制。即当数据发送失败时,对该发送失败的数据进行重传以保证接收端可以成功接收到传输的数据。在一个实施例中,获取第一数据处理层的数据传输信息,该数据传输信息用于表征第一数据处理层进行数据传输的情况。示例性的,如传输数据的发送时间、发送地址、是否发送成功等。
步骤S102、在所述数据传输信息满足异常条件的情况下,确定所述数据传输信息中待重传数据的重传信息。
在获取到第一数据处理层的数据传输信息后,在数据传输信息满足异常条件的情况下,进一步确定该数据传输信息中待重传数据的重传信息。其中,该异常条件指数据传输过程中发生传输异常的条件。示例性的,如物理设备发送失败、信道获取失败、重传次数达到上限等。在数据传输信息满足异常条件的情况下,相应的将该数据传输信息对应的传输数据作为待重传数据对其进行数据重传。
其中,数据传输信息包括描述数据传输情况的信息,如重传次数、传输失败原因类型等;以及传输数据的报文信息,如报文协议类型、源地址和端口、目的地址和端口和报文序号等。
步骤S103、第三数据处理层根据所述重传信息重传所述待重传数据,其中,所述第三数据处理层重传所述待重传数据的第一重传等待时间小于第二数据处理层重传所述待重传数据的第二重传等待时间。
其中,数据重传指对接收端未成功接收到的或接收到的数据产生错误的原始发送数据进行再次发送。在一个实施例中,针对第一数据处理层中满足异常条件的传输数据即待重传数据,通过设置的重传机制对其进行数据重传。该设置的重传机制区别于第一数据处理层的重传机制,如该重传机制的重传逻辑、重传等待时间等和数据重传关联的信息区别于第一数据处理层的数据重传机制。
其中,第二数据处理层为区别于第一数据处理层的另一层网络传输中的结构层,其自身具备另一种重传机制。在一个实施例中,由于该第一数据处理层和第二数据处理层的数据传输机制的不同,其自身对应的重传机制中设置的重传等待时间存在显著差异。示例性的,第一数据处理层采用无线电波的方式进行数据发送与接收,其达到最大重传次数的时间可以不超过10毫秒,相应的其设置的重传等待时间可以非常小;第二数据处理层根据整个网络通路的往返时间确定其重传等待时间,如首次发送数据后其等待反馈的时间超过1秒,则相较于第一数据处理层设置的重传等待时间,该第二数据处理层设置的重传等待时间要显著变长。由于第三数据处理层基于获取到的第一数据处理层反馈的数据传输信息来进行数据重传,如在数据传输信息满足异常条件的情况下(该异常条件可以是数据传输信息中的数据在第一数据处理层达到最大重传次数)进行数据重传,由前所述,第一数据处理层中传输的数据达到最大重传次数的时间可以不超过10毫秒,此时第三数据处理层对待重传数据的重传等待时间示例性的可设置为30毫秒。其中,第三数据处理层设置的待重传数据的重传等待时间以第一重传等待时间表征,第二数据处理层设置的待重传数据的重传等待时间以第二重传等待时间表征,该第一重传等待时间显著小于该第二重传等待时间。可选的,该第一重传等待时间可以是预先设置的固定时间值,也可以是针对不同的数据传输信息确定出的动态时间值。
需要说明的是,上述第一数据处理层和第二数据处理层为现有网络传输结构中已经划分确定现有的数据处理层,上述的第三数据处理层为本方案中创建设置的并非现有网络传输结构中划分的数据处理层,在获取到的第一数据处理层反馈的数据传输信息满足异常条件的情况下,通过第三数据处理层中自定义设置的重传机制对待重传数据进行重传。上述的获取第一数据处理层反馈的数据传输信息,以及确定数据传输信息中待重传数据的重传信息的具体实现可以在第三数据处理层实现,也可以在第一数据处理层实现,本实施例不做限定。
由上述方案可知,通过获取第一数据处理层反馈的数据传输信息,在所述数据传输信息满足异常条件的情况下,确定该数据传输信息中待重传数据的重传信息,第三数据处理层根据该数据传输信息进行数据重传,其中,第三数据处理层重传待重传数据的第一重传等待时间小于第二数据处理层重传待重传数据的第二重传等待时间,解决了现有技术中包含多层网络传输架构下的重传效率低的问题。以本方案为例,第一数据处理层由于其数据传输特性,其重传等待时间很短。而第二数据处理层由于其所属的架构层的传输机制,其重传等待时间显著高于第一数据处理层的重传等待时间,如果等待该第二数据处理层进行数据重传则整体的数据传输效率会显著降低,本方案能够明显的加快数据传输效率,显著提升了数据传输速度;与此同时,由于重传等待时间的显著缩短可以在满足数据传输要求和用户体验的前提下提升重传次数的限制,得以进一步提升数据传输的成功率。
图2是本发明实施例提供的另一种数据传输方法的流程图,给出了一种具体的触发数据重传的机制。其中,该数据传输信息包括数据重传次数。如图2所示,技术方案具体如下:
步骤S201、获取第一数据处理层反馈的数据重传次数。
其中,数据重传次数指对同一发送数据重复发送的次数。针对数据a为例,第一数据处理层对该数据a进行发送,此时其数据重传次数默认为0。如果在设置的重传等待时间(例如5毫秒)内没有接收到应答消息,或者确定出该数据发送失败、接收到数据错误的应答消息时,对该数据进行重传,此时其数据重传次数记为1,以此类推。
在一个实施例中,第一数据处理层对数据的发送可以采用单一进程或多进程进行数据发送的方式。以多进程数据发送为例,图2a是本发明实施例提供的一种通过第一数据处理层进行数据发送的示意图,如图2a所示,进程1和进程2分别进行数据的发送,进程1在发送数据1后在重传等待时间内接收到数据接收成功的应答消息,之后进行数据2的发送;在重传等待时间内接收到数据接收成功的应答消息,之后进行数据3的发送,即数据1和数据2均在一次数据发送过程中完成数据的成功传输。进程2为区别与进程1的另一进程,二者可并行进行数据的发送。示例性的,进程2发送数据5后,在重传等待时间内未接收到成功传输的应答消息,此时对该数据5进行重传,相应的重传次数记录为1;如果在数据重传后,重传等待时间内未接收到成功传输的应答消息,则对该数据5进行二次重传,相应的重传次数记录为2;如果在数据重传后,重传等待时间内未接收到成功传输的应答消息,则对该数据5进行再次重传,相应的重传次数记录为3。
步骤S202、判断所述数据重传次数是否大于或等于第一预设次数,如果是,则进行步骤S203,如果否,则继续进行步骤S201。
可选的,数据传输信息满足异常条件为数据重传次数大于或等于第一预设次数。具体的,在重传次数大于或等于第一预设次数的情况下,执行步骤S203。其中,该第一预设次数可以是第一数据处理层设置的重传机制中的最大重传次数,在重传机制中通常会设置最大重传次数(如3次、5次或10次等),当同一数据重传次数达到该最大重传次数后为避免数据传输阻塞,则不再对该数据进行重传。也可以根据实际需求重新设置的次数,还可以是根据不同通信环境动态调整后的次数。示例性的,该第一预设次数可以为3、5、8或10等。
步骤S203、确定获取到的数据重传次数对应的待重传数据的重传信息,根据所述重传信息进行数据重传。
在一个实施例中,针对重传数据会相应记录其数据重传次数,该数据重传次数可以和相应的数据记录在一起,如和具体的数据报文进行对应记录,还可以是单独进行数据重传次数的记录,同时记录下该数据重传次数对应的数据的标识,将该标识对应的数据确定未待重传数据。其中,如前述步骤S103的解释部分,该待重传数据的重传信息可以包括重传次数、传输失败原因类型等;以及传输数据的报文信息,如报文协议类型、源地址和端口、目的地址和端口和报文序号等。基于该数据传输信息进行数据重传。
由上述方案可知,获取第一数据处理层反馈的数据重传次数,在该数据重传次数满足异常条件的情况下,即大于或等于第一预设次数时,响应于该异常,对该待重传数据进行数据重传,可以是对第一数据处理层反馈的信息直接进行响应,进行数据重传,而无需如现有技术中的,第二数据处理层采用自身设置的网络整体通路时间作为重传等待时间进行数据重传,能够加快数据传输效率,显著提升了数据传输速度。
在另一个实施例中,该数据传输信息还可以传输失败消息,相应的,如果所述数据传输信息满足异常条件,则确定所述数据传输信息中待重传数据的重传信息,包括:如果检测到第一数据处理层反馈的传输失败消息,则确定所述传输失败消息对应的待重传数据的重传信息。当然,该传输失败消息本身也可包含有待重传数据的重传信息,本方案中对于数据传输信息的表征形式不做限定。
图3是本发明实施例提供的另一种数据传输方法的流程图,给出了具体的根据数据传输信息进行数据重传的方法。如图3所示,技术方案具体如下:
步骤S301、获取第一数据处理层反馈的数据传输信息。
步骤S302、在所述数据传输信息满足异常条件的情况下,确定所述数据传输信息中待重传数据的传输协议类型。
在一个实施例中,针对不同传输协议类型的数据采用不同的数据重传逻辑机制。其中,该传输协议类型包括传输控制协议类型(TCP)和用户数据报协议类型(UDP)。其中,TCP协议是面向连接的协议,而UDP协议则是无连接的协议。传输层在进行基于TCP协议的数据传输时,通过校验和机制、重传控制、序号标识、滑动窗口和确认应答机制的实施,保证传输数据的无差错、不丢失和不重复;而在进行基于UDP协议的数据传输时,不提供任何有序性或序列性的保证,即UDP协议不具有重传机制。
步骤S303、根据所述传输协议类型采用对应的重传策略进行数据重传。
在一个实施例中,基于不同的传输协议类型采用不同的数据重传机制。具体的,以传输协议类型为传输控制协议类型为例,如图3a所示,图3a为本发明实施例提供的基于传输控制协议类型的数据传输方法,其包括以下步骤:
步骤S3031、获取所述待重传数据的数据重传次数。
其中,待重传数据的数据重传次数为确定出在第一数据处理层存在异常后,进行的数据重传次数的统计。示例性的,针对数据1在第一数据处理层的传输被确定为异常后,基于本方案设置的重传机制进行数据重传,同时进行数据1的数据重传次数的统计。
步骤S3032、在所述数据重传次数小于第一阈值的情况下,确定所述数据重传次数对应的重传等待时间。
其中,如果当前的数据重传次数小于第一阈值则确定对应的重传等待时间。示例性的,该第一阈值为大于或等于2的正整数,如3、5或10等。其中,该重传等待时间可以是设置的固定的时间值,也可以是根据当前的数据重传次动态确定的时间值。
在一个实施例中,确定对应的重传等待时间的方式可以是:
如果当前的数据重传次数小于第三阈值,则确定对应的重传等待时间为0。其中,该第三阈值为小于或等于第二预设次数的正整数。示例性的,该第三阈值可以是1,即当前的待重传数据未进行过在重新设置的重传机制下的数据重传(数据重传次数为0),则立即进行待重传数据的重传。同时,相应的记录该待重传数据的数据重传次数为1。如果当前的数据重传次数不小于第三阈值,则表征其不是第一次进行数据重传,此时获取相应的已经被更新过的重传等待时间,将更新后的重传等待时间作为需要等待的时间,或者基于当前的重传次数进行重传等待时间的计算,将计算结果确定为需要等待的时间。
具体的,对重传等待时间进行更新的方式可以是:根据第一数据处理层的最大重传次数和数据重传耗时时间更新对应的重传等待时间。其中,数据重传耗时时间为第一数据处理层的重传机制中,针对一传输数据达到最大重传次数的耗时上限(示例性的记为R0,R0取值可以是10毫秒),第一数据处理层的最大重传次数记为C0。具体的更新过程可以是第一数据处理层的最大重传次数加一后乘以该数据重传耗时时间作为更新后的重传等待时间。即重传等待时间=R0*(C0+1),以C0=3,R0=10毫秒为例,更新后的重传等待时间为40毫秒。相应的,当该待重传数据被再次确定需要进行数据重传后,等待40毫秒后进行再次的数据重传,并相应进行重传等待时间的再次更新。
进一步的,在另一个实施例中,在所述数据重传次数小于第一阈值的情况下,保持第二数据处理层的数据发送窗口不变。通常第二数据处理层在阻塞后会减小数据发送窗口,以减小数据发送量,由此会导致网络速度下降进而出现卡顿的现象。基于本方案设置的重传机制对待重传数据进行重传的同时,变更原有的第二数据处理层的拥塞处理机制,即在第二数据处理层中,对重传数据未收到确认应答时,不变更数据发送窗口大小,以优化用户体验,避免卡顿现象发生。具体的,保持第二数据处理层的数据发送窗口不变的具体实现方式可以是:第三数据处理层发送设置指令至第二数据处理层,当第二数据处理层接收到该设置指令后,保持数据发送窗口不变。当然,也可以是第三数据处理层发送一消息通知,该消息通知包含由保持数据发送窗口不变的特征值,第二数据处理层在接收到该消息通知后,解析得到该保持数据发送窗口不变的特征值,进而控制数据发送窗口保持不变。
步骤S3033、在等待时间满足所述重传等待时间的情况下,重传所述待重传数据。
在另一个实施例中,以传输协议类型为用户数据报协议类型为例,进行数据重传的步骤包括:获取所述待重传数据的数据重传次数,在所述数据重传次数小于第二阈值的情况下,重传所述待重传数据,在所述数据重传次数大于或等于所述第二阈值的情况下,不做处理。即针对面向无连接的传输协议类型,在不改变原有的数据传输协议的前提下,增加数据重传机制。其中,针对需要进行数据重传的情况,具体的数据重传过程可采用和传输控制协议类型一致的重传方式,在数据重传次数大于或等于第二阈值的情况下,则不做处理,该第二阈值的具体大小可以和第一阈值相同,也可以设置为不同,如设置为2、4或6等。
由上述方案可知,本方案设置的重传机制可以基于不同的传输协议类型选择对应的重传逻辑,显著提高了数据传输的灵活性,针对传输控制协议类型而言,动态确定重传等待时间的同时,进一步包含了对发送窗口的控制,提高数据传输效率的同时,优化了用户体验。针对用户数据报协议类型,在不改变又有协议的前提下,新增了重传机制,对该用户数据报协议类型的数据传输进行了优化。
图4是本发明实施例提供的一种添加有第三数据处理层的网络传输架构示意图。如图4所示,本实施例在原有的数据链路层和传输层之间创建第三数据处理层。该实施例中,数据链路层相当于第一数据处理层,传输层相当于第二数据处理层。本方案新增设置重传反馈机制通过第三数据处理层实现。
具体的,系统上层应用程序(如视频app、音乐app、浏览器等)通过调用系统接口(如socket网络套接字中的send/recv接口等)发送数据至传输层,传输层通过调用数据链路层进行数据发送。如通过调用数据链路层的MAC(Media Access Control,介质访问控制)子层的无线设备发送接口进行数据发送。针对数据链路层中的MAC子层而言,其内部维护有一数据队列用以存储待发送的数据,同时适配有ARQ(Automatic retransmissionrequest,自动重传请求)机制来实现发送数据的重传。针对该MAC子层的数据重传机制而言,由于其数据发送采用无线电波,在网络质量较差即网络干扰严重、空气中数据帧碰撞等原因下,其达到最大重传次数的时间极快(如32次重传的总时长不超过10毫秒)。而传输层自身原有的重传机制中,数据重传根据RTO(Retransmission Timeout,重传超时时间)触发,如果在该重传超时时间内未收到确认信息,则对未确认的数据进行重传。由于RTO基于整个网络通路的往返时间确定,其设置的时间通常大于1秒,由此MAC子层通常在10毫秒内已经确认传输异常需要重传时,仍需要等待较长的时间间隔才会进行传输层的数据重传。
本方案中创建第三数据处理层,用于获取数据链路层反馈的数据传输信息,在数据传输信息满足异常条件的情况下,则相应的触发重传机制,通过调用MAC子层的无线设备接口进行数据的重传,其中该异常条件包括数据链路层的数据重传次数已经达到最大次数。具体的重传机制参见上述图1至图3对应示例的描述,此处不在赘述。需要说明的是,如前述实施例所描述,该获取数据链路层反馈的数据传输信息的步骤可以为第一数据处理层执行,第三数据处理层主要实现对数据重传机制的实施。
本方案中通过设置第三数据处理层,对数据链路层的数据发送异常进行及时相应,进行数据重传,解决了现有的传输层和数据链路层之间缺乏合理的重传信息互通机制导致的数据传输效率低的问题,能够明显的加快数据传输效率,显著提升了数据传输速度。
图5是本发明实施例提供的一种基于图4所示网络架构下的具备数据缓存处理功能的架构示意图。如图5所示,传输层在下发待传输数据至数据链路层的同时,将下发数据同步发送至第三数据处理层,第三数据处理层获取该待传输数据,将所述待传输数据添加至创建的缓存队列中。可选的,针对不同的传输协议类型设置不同的缓存队列,如针对传输控制协议类型的待传输数据采用缓存队列1缓存,针对用户数据报协议类型待传输数据采用缓存队列2缓存,使得相同传输协议类型的待发送数据在同一缓存队列中维护处理,提升了数据处理效率。同时,不同的传输协议类型如前所述采用不同的重传机制,避免重传机制混用带来的突发异常的问题。
进一步的,第三数据处理层存在对该缓存队列进行维护的机制,包括对缓存队列中存储数据内容的更新。具体的,针对添加至缓存队列中的数据,分别记录其添加至队列中的时间,当检测到缓存队列中的数据入队时间超过更新时间且无异常发生时,对其进行清除。具体的,该更新时间的确定方式可以是:待传输数据在数据链路层中数据重传耗时时间加上数据传输信息的反馈时间。
通过在第三数据处理层中对传输层下发至数据链路层的待传输数据进行复制并相应的进行缓存队列的维护,可以精确的确定当前数据链路层的待重传数据的发送情况,便于数据维护。
需要说明的是,本申请实施例提供的数据传输方法,执行主体可以为数据传输装置,或者该数据传输装置中的用于执行数据传输的方法的控制模块。本申请实施例中以数据传输装置执行数据传输的方法为例,说明本申请实施例提供的数据传输的装置。
具体的,本申请实施例提供的数据传输装置,如图6所示,图6是本申请实施例提供的一种数据传输装置的模块示意图,该数据传输装置100包括:
传输信息获取模块101,用于获取第一数据处理层反馈的数据传输信息;
重传信息确定模块102,用于在所述数据传输信息满足异常条件的情况下,确定所述数据传输信息中待重传数据的重传信息;
数据重传模块103,用于根据所述重传信息重传所述待重传数据,所述数据重传模块设置于第三数据处理层,其中,所述数据重传模块重传所述待重传数据的第一重传等待时间小于第二数据处理层重传所述待重传数据的第二重传等待时间。
由上述方案可知,通过传输信息获取模块获取第一数据处理层反馈的数据传输信息,重传信息确定模块在数据传输信息满足异常条件的情况下,确定数据传输信息中待重传数据的重传信息,数据重传模块根据重传信息重传所述待重传数据,其中,所述数据重传模块重传所述待重传数据的第一重传等待时间小于第二数据处理层重传所述待重传数据的第二重传等待时间。通过上述数据传输装置,解决了现有技术中数据重传效率较低的问题,能够加快数据传输效率以及传输成功率,显著提升了数据传输速度
在一个可能的实施例中,所述重传信息确定模块102,用于确定所述数据传输信息中待重传数据的传输协议类型;
所述数据重传模块103,用于根据所述传输协议类型采用对应的重传策略重传所述待重传数据,所述数据传输协议类型包括第一传输协议类型和第二传输协议类型。
在一个可能的实施例中,在所述传输协议类型为第一传输协议类型的情况下,所述数据重传模块103用于:
获取所述待重传数据的数据重传次数;
在所述数据重传次数小于第一阈值的情况下,确定所述数据重传次数对应的重传等待时间,在等待时间满足所述重传等待时间的情况下,重传所述待重传数据;
在所述数据重传次数大于或等于所述第一阈值的情况下,保持所述第二数据处理层的数据发送窗口保持不变。
在一个可能的实施例中,所述数据重传模块103还用于:
在确定所述数据重传次数对应的重传等待时间之后,根据所述第一数据处理层的最大重传次数和数据重传耗时时间更新所述重传等待时间;
在等待时间满足更新后的重传等待时间的情况下,重传所述待重传数据。
在一个可能的实施例中,在所述传输协议类型为第二协议类型的情况下,所述数据重传模块103用于:
获取所述待重传数据的数据重传次数;
在所述数据重传次数小于第二阈值的情况下,重传所述待重传数据。
本申请实施例中的数据传输装置可以是装置,也可以是终端中的部件、集成电路或芯片。该装置可以是移动电子设备,也可以为非移动电子设备。示例性的,移动电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本或者个人数字助理(personaldigital assistant,PDA)等,非移动电子设备可以为服务器、网络附属存储器(NetworkAttached Storage,NAS)、个人计算机(personal computer,PC)、电视机(television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。
本申请实施例中的数据传输装置可以为具有操作系统的装置。该操作系统可以为安卓(Android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,如windows操作系统等,本申请实施例不作具体限定。
本申请实施例提供的数据传输装置能够实现上述数据传输的方法实施例实现的各个过程,为避免重复,这里不再赘述。
可选地,本申请实施例还提供一种电子设备,如图7所示,图7是本申请实施例提供的一种电子设备结构示意图。电子设备200,包括处理器201,存储器202,存储在存储器202上并可在所述处理器201上运行的程序或指令,该程序或指令被处理器201执行时实现上述数据传输方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,本申请实施例中的电子设备包括上述所述的移动电子设备和非移动电子设备。
图8为实现本申请实施例的一种电子设备的硬件结构示意图。如图所示,该电子设备300包括但不限于:射频单元301、网络模块302、音频输出单元303、输入单元304、传感器305、显示单元306、用户输入单元307、接口单元308、存储器309以及处理器310等部件。
本领域技术人员可以理解,电子设备300还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器310逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图8中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
处理器310,用于获取第一数据处理层反馈的数据传输信息;在所述数据传输信息满足异常条件的情况下,确定所述数据传输信息中待重传数据的重传信息;根据所述重传信息借助于第三数据处理层重传所述待重传数据,其中,第三数据处理层重传所述待重传数据的第一重传等待时间小于第二数据处理层重传所述待重传数据的第二重传等待时间。
本方案中,通过获取第一数据处理层反馈的数据传输信息,判断该数据传输信息是否满足异常条件,如果满足,则确定该数据传输信息中待重传数据的重传信息,通过第三数据处理层来根据该数据传输信息进行数据重传,其中,第三数据处理层的数据重传的重传等待时间小于第二数据处理层对该待重传数据的重传等待时间,解决了现有技术中包含多层网络传输架构下的重传效率低的问题,能够加快数据传输效率以及传输成功率,显著提升了数据传输速度。
可选地,处理器310,还用于确定所述数据传输信息中待重传数据的传输协议类型,借助于第三数据处理层根据所述传输协议类型采用对应的重传策略重传所述待重传数据,所述数据传输协议类型包括第一传输协议类型和第二传输协议类型。由此其实现了针对不同的传输协议类型采用不同的重传机制,以针对多种不同的传输协议类型进行灵活的数据重传,进一步优化了数据重传机制。
可选地,处理器310,还用于在所述传输协议类型为第一传输协议类型的情况下,获取所述待重传数据的数据重传次数,在所述数据重传次数小于第一阈值的情况下,确定所述数据重传次数对应的重传等待时间,在等待时间满足所述重传等待时间的情况下,重传所述待重传数据,在所述数据重传次数大于或等于所述第一阈值的情况下,保持所述第二数据处理层的数据发送窗口保持不变。由此可知,本方案设置的重传机制可以基于不同的传输协议类型选择对应的重传逻辑,显著提高了数据传输的灵活性,针对传输控制协议类型而言,动态确定重传等待时间的同时,进一步包含了对发送窗口的控制,提高数据传输效率的同时,优化了用户体验。
可选地,处理器310,还用于在确定所述数据重传次数对应的重传等待时间之后,根据所述第一数据处理层的最大重传次数和数据重传耗时时间更新所述重传等待时间;在等待时间满足更新后的重传等待时间的情况下,重传所述待重传数据。由此可知,本方案包含由对重传等待时间进行动态更新调节的过程,可以根据不同的重传次数确定对应的更加合理的重传等待时间以用于进行数据重传,进一步优化了数据重传机制,保证了数据重传的高效率执行。
可选地,处理器310,还用于在所述传输协议类型为第二协议类型的情况下,获取所述待重传数据的数据重传次数;在所述数据重传次数小于第二阈值的情况下,重传所述待重传数据;在所述数据重传次数大于或等于所述第二阈值的情况下,不做处理。由此可知,本方案设置的重传机制可以基于不同的传输协议类型选择对应的重传逻辑,显著提高了数据传输的灵活性,针对用户数据报协议类型,在不改变又有协议的前提下,新增了重传机制,对该用户数据报协议类型的数据传输进行了优化。
应理解的是,本申请实施例中,输入单元304可以包括图形处理器(GraphicsProcessing Unit,GPU)3041和麦克风3042,图形处理器3041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元306可包括显示面板3061,可以采用液晶显示器、有机发光二极管等形式来配置显示面板3061。用户输入单元307包括触控面板3071以及其他输入设备3072。触控面板3071,也称为触摸屏。触控面板3071可包括触摸检测装置和触摸控制器两个部分。其他输入设备3072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。存储器309可用于存储软件程序以及各种数据,包括但不限于应用程序和操作系统。处理器310可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器310中。
本申请实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述数据传输方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等。
本申请实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述数据传输方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
应理解,本申请实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。
Claims (12)
1.一种数据传输方法,其特征在于,包括:
获取第一数据处理层反馈的数据传输信息;
在所述数据传输信息满足异常条件的情况下,确定所述数据传输信息中待重传数据的重传信息;
第三数据处理层根据所述重传信息重传所述待重传数据,其中,所述第三数据处理层重传所述待重传数据的第一重传等待时间小于第二数据处理层重传所述待重传数据的第二重传等待时间。
2.根据权利要求1所述的数据传输方法,其特征在于,所述确定所述数据传输信息中待重传数据的重传信息,第三数据处理层根据所述重传信息重传所述待重传数据,包括:
确定所述数据传输信息中待重传数据的传输协议类型,第三数据处理层根据所述传输协议类型采用对应的重传策略重传所述待重传数据,所述数据传输协议类型包括第一传输协议类型和第二传输协议类型。
3.根据权利要求2所述的数据传输方法,其特征在于,在所述传输协议类型为第一传输协议类型的情况下,所述根据所述传输协议类型采用对应的重传策略重传所述待重传数据,包括:
获取所述待重传数据的数据重传次数;
在所述数据重传次数小于第一阈值的情况下,确定所述数据重传次数对应的重传等待时间,在等待时间满足所述重传等待时间的情况下,重传所述待重传数据;
在所述数据重传次数大于或等于所述第一阈值的情况下,保持所述第二数据处理层的数据发送窗口保持不变。
4.根据权利要求3所述的数据传输方法,其特征在于,在确定所述数据重传次数对应的重传等待时间之后,还包括:
根据所述第一数据处理层的最大重传次数和数据重传耗时时间更新所述重传等待时间;
在等待时间满足更新后的重传等待时间的情况下,重传所述待重传数据。
5.根据权利要求2所述的数据传输方法,其特征在于,在所述传输协议类型为第二协议类型的情况下,所述根据所述传输协议类型采用对应的重传策略重传所述待重传数据,包括:
获取所述待重传数据的数据重传次数;
在所述数据重传次数小于第二阈值的情况下,重传所述待重传数据。
6.一种数据传输装置,其特征在于,包括:
传输信息获取模块,用于获取第一数据处理层反馈的数据传输信息;
重传信息确定模块,用于在所述数据传输信息满足异常条件的情况下,确定所述数据传输信息中待重传数据的重传信息;
数据重传模块,用于根据所述重传信息重传所述待重传数据,所述数据重传模块设置于第三数据处理层,其中,所述数据重传模块重传所述待重传数据的第一重传等待时间小于第二数据处理层重传所述待重传数据的第二重传等待时间。
7.根据权利要求6所述的数据传输装置,其特征在于,所述重传信息确定模块,用于确定所述数据传输信息中待重传数据的传输协议类型;
所述数据重传模块,用于根据所述传输协议类型采用对应的重传策略重传所述待重传数据,所述数据传输协议类型包括第一传输协议类型和第二传输协议类型。
8.根据权利要求7所述的数据传输装置,其特征在于,在所述传输协议类型为第一传输协议类型的情况下,所述数据重传模块用于:
获取所述待重传数据的数据重传次数;
在所述数据重传次数小于第一阈值的情况下,确定所述数据重传次数对应的重传等待时间,在等待时间满足所述重传等待时间的情况下,重传所述待重传数据;
在所述数据重传次数大于或等于所述第一阈值的情况下,保持所述第二数据处理层的数据发送窗口保持不变。
9.根据权利要求8所述的数据传输装置,其特征在于,所述数据重传模块还用于:
在确定所述数据重传次数对应的重传等待时间之后,根据所述第一数据处理层的最大重传次数和数据重传耗时时间更新所述重传等待时间;
在等待时间满足更新后的重传等待时间的情况下,重传所述待重传数据。
10.根据权利要求7所述的数据传输装置,其特征在于,在所述传输协议类型为第二协议类型的情况下,所述数据重传模块用于:
获取所述待重传数据的数据重传次数;
在所述数据重传次数小于第二阈值的情况下,重传所述待重传数据。
11.一种电子设备,其特征在于,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1-5任一项所述的数据传输方法的步骤。
12.一种可读存储介质,其特征在于,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如权利要求1-5任一项所述的数据传输方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110700256.3A CN113242318B (zh) | 2021-06-23 | 2021-06-23 | 数据传输方法和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110700256.3A CN113242318B (zh) | 2021-06-23 | 2021-06-23 | 数据传输方法和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113242318A true CN113242318A (zh) | 2021-08-10 |
CN113242318B CN113242318B (zh) | 2023-01-20 |
Family
ID=77140580
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110700256.3A Active CN113242318B (zh) | 2021-06-23 | 2021-06-23 | 数据传输方法和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113242318B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114500528A (zh) * | 2021-12-28 | 2022-05-13 | 天翼云科技有限公司 | 一种基于云平台的数据传输方法及装置 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1938984A (zh) * | 2004-03-31 | 2007-03-28 | Lg电子株式会社 | 用于网络层的数据处理方法 |
WO2009136256A2 (en) * | 2008-05-05 | 2009-11-12 | Telefonaktiebolaget L M Ericsson (Publ) | Support for retransmitting a transport block with a different number of layers than a previous transmission attempt |
CA2876581A1 (en) * | 2012-06-14 | 2013-12-19 | Telefonaktiebolaget L M Ericsson (Publ) | Methods of mapping retransmissions responsive to bundled nack messages and related devices for multi-layer mimo transmission |
CN103686446A (zh) * | 2013-12-06 | 2014-03-26 | 广州华多网络科技有限公司 | 视频数据传输的丢包重传方法和系统 |
WO2016161579A1 (en) * | 2015-04-08 | 2016-10-13 | Telefonaktiebolaget Lm Ericsson (Publ) | A wireless device and method therein for performing aretransmission of data in a device-to-device, d2d, communication |
CN107079053A (zh) * | 2015-04-09 | 2017-08-18 | 华为技术有限公司 | 一种数据重传方法、设备及系统 |
CN107147481A (zh) * | 2017-07-19 | 2017-09-08 | 北京数码视讯科技股份有限公司 | 丢包重传方法、装置及电子设备 |
CN110140298A (zh) * | 2017-02-07 | 2019-08-16 | Oppo广东移动通信有限公司 | 传输数据的方法和设备 |
CN111211878A (zh) * | 2018-11-22 | 2020-05-29 | 杭州海康威视系统技术有限公司 | 一种文件传输方法、装置、系统及电子设备 |
WO2020211061A1 (zh) * | 2019-04-18 | 2020-10-22 | 北京小米移动软件有限公司 | 一种数据传输方法、装置及存储介质 |
CN112422243A (zh) * | 2020-11-22 | 2021-02-26 | 广州技象科技有限公司 | 基于进程优化的数据传输方法和装置 |
-
2021
- 2021-06-23 CN CN202110700256.3A patent/CN113242318B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1938984A (zh) * | 2004-03-31 | 2007-03-28 | Lg电子株式会社 | 用于网络层的数据处理方法 |
WO2009136256A2 (en) * | 2008-05-05 | 2009-11-12 | Telefonaktiebolaget L M Ericsson (Publ) | Support for retransmitting a transport block with a different number of layers than a previous transmission attempt |
CA2876581A1 (en) * | 2012-06-14 | 2013-12-19 | Telefonaktiebolaget L M Ericsson (Publ) | Methods of mapping retransmissions responsive to bundled nack messages and related devices for multi-layer mimo transmission |
CN103686446A (zh) * | 2013-12-06 | 2014-03-26 | 广州华多网络科技有限公司 | 视频数据传输的丢包重传方法和系统 |
WO2016161579A1 (en) * | 2015-04-08 | 2016-10-13 | Telefonaktiebolaget Lm Ericsson (Publ) | A wireless device and method therein for performing aretransmission of data in a device-to-device, d2d, communication |
CN107079053A (zh) * | 2015-04-09 | 2017-08-18 | 华为技术有限公司 | 一种数据重传方法、设备及系统 |
CN110140298A (zh) * | 2017-02-07 | 2019-08-16 | Oppo广东移动通信有限公司 | 传输数据的方法和设备 |
CN107147481A (zh) * | 2017-07-19 | 2017-09-08 | 北京数码视讯科技股份有限公司 | 丢包重传方法、装置及电子设备 |
CN111211878A (zh) * | 2018-11-22 | 2020-05-29 | 杭州海康威视系统技术有限公司 | 一种文件传输方法、装置、系统及电子设备 |
WO2020211061A1 (zh) * | 2019-04-18 | 2020-10-22 | 北京小米移动软件有限公司 | 一种数据传输方法、装置及存储介质 |
CN112422243A (zh) * | 2020-11-22 | 2021-02-26 | 广州技象科技有限公司 | 基于进程优化的数据传输方法和装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114500528A (zh) * | 2021-12-28 | 2022-05-13 | 天翼云科技有限公司 | 一种基于云平台的数据传输方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113242318B (zh) | 2023-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6023368B1 (ja) | インタラクティブなリアルタイムメディアの転送プロトコル | |
CN107342848B (zh) | 一种自适应码流传输方法、装置及设备 | |
JP2007089177A (ja) | 無線通信システムにおける状態報告信号の伝送速度を改善する方法及び装置 | |
CN110166206B (zh) | 一种harq-ack码本的确定方法和终端 | |
WO2021013092A1 (zh) | 旁链路信息传输方法、终端和控制节点 | |
KR102046792B1 (ko) | 송신 노드로부터 목적지 노드로의 데이터 전송 방법 | |
CN102694631B (zh) | 一种用于控制数据传输的方法和装置 | |
WO2023093879A1 (zh) | 数据传输方法、装置、设备和介质 | |
CN109257138B (zh) | 一种数据传输控制方法以及相关设备 | |
CN110943808B (zh) | 数据传输方法、装置、电子设备和存储介质 | |
EP3709663A1 (en) | Video transmission method, apparatus, and system, and computer readable storage medium | |
CN114268991A (zh) | 数据传输方法、装置、电子设备、存储介质 | |
WO2023179538A1 (zh) | 数据传输方法、装置、电子设备和存储介质 | |
WO2023011430A1 (zh) | 数据传输方法、装置及发送端设备 | |
CN113242318B (zh) | 数据传输方法和电子设备 | |
CN113709869A (zh) | 资源确定、传输、反馈方法、发送端和接收端 | |
CN113852445B (zh) | 一种提高数据传输可靠性的方法、系统、设备和存储介质 | |
WO2021013036A1 (zh) | 旁链路信息的传输方法、终端和控制节点 | |
CN114039702B (zh) | 数据传输方法、装置、设备和介质 | |
CN112422747A (zh) | 通话方法及装置 | |
US9246638B2 (en) | Method and apparatus for polling transmission status in a wireless communications system | |
WO2020156473A1 (zh) | 传输方法和终端 | |
CN111614443B (zh) | 终端能力上报、信息接收方法、终端及网络设备 | |
WO2019154358A1 (zh) | Harq-ack码本的确定方法和终端 | |
CN113676949B (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 |