一种数据重传方法及装置的制造方法

文档序号:10525605阅读:237来源:国知局
一种数据重传方法及装置的制造方法
【专利摘要】本发明实施例提供一种数据重传方法及装置,方法为,用UDP通道替换TCP在广义网中的传输链路,数据重传过程不依赖于TCP协议,无须等待预设数目个RRT时长后才能执行数据重传操作,从而避免了在TCP协议下重传数据造成的延时时间长的问题;此外,相较于TCP通道状态不可知的问题,UDP通道为无连接可控制的通道,服务器传输优化组件能够获取UDP通道状态,并根据该UDP通道状态,确定数据传输规则,服务器传输优化组件能够按照该数据重传规则,执行数据重传操作,避免了在通道状态不佳的时刻重传数据时,造成的丢包问题,从而保证了数据重传操作的可靠执行,进而有效缩短了数据重传过程中的数据响应时长。
【专利说明】
一种数据重传方法及装置
技术领域
[0001]本发明实施例涉及通信技术领域,尤其涉及一种数据重传方法及装置。
【背景技术】
[0002]随着无线通信技术的发展,越来越多的移动和无线设备接入无线网络中。通常情况下,无线网络信息传输的可靠性相较于有线网络信息传输的可靠性较差,从而造成无线网络比有线网络具有更高的丢包率。
[0003]在客户端和服务器通过无线网络进行信息传输的过程中,所采用的协议为TCP (Transmiss1n Control Protocol ;传输控制协议);当无线网络的某一段链路由于拥塞导致丢包率升高时,将认为在该链路中多个设备同时抢占带宽资源,为了保证所有设备合理进行信息传输,TCP协议规定,需要大幅降低当前时刻该链路的带宽;此外,为了保证所有数据能够可靠传输至客户端,TCP协议还规定了数据重传方案,即当客户端未反馈应答消息时,服务器将该未反馈应答消息的数据确认为传输失败的数据,需要重新传输该传输失败的数据至客户端。
[0004]目前,根据TCP协议规定,服务器重传数据的过程为:服务器在本地预设RRT(Round-Trip Time ;往返时延);服务器在确认存在传输失败的数据时,等待预设数目个RTT时长后,将需要重传的数据(即TCP报文)发送至客户端;由于数据在传输过程中存在丢包问题,本次重传过程将仍可能存在传输失败的数据,因此,服务器继续等待预设数目个RTT时长后,将第二次重传失败的数据发送至客户端;服务器不断重复上述过程,直至所有数据成功传输至客户端。基于上述数据重传过程可知,当丢包率较高时,服务器需要花费η倍的预设数目个RTT时长,才能将所有数据成功传输至客户端,数据响应时长大;并且,根据TCP协议规定,大幅降低的无线链路带宽将进一步造成数据传输时间长的问题。
[0005]由此可见,目前在数据重传过程中,存在数据响应时长的问题。

【发明内容】

[0006]本发明实施例提供一种数据重传方法及装置,用以解决目前在数据重传过程中,存在响应时长的问题。
[0007]本发明实施例提供的具体技术方案如下:
[0008]本发明实施例提供一种数据重传方法,应用于无线通信系统中,所述无线通信系统包括客户端,服务器,客户端传输优化组件,以及服务器传输优化组件,且所述客户端传输优化组件和所述服务器传输优化组件之间设置有数据用户协议UDP通道,所述方法包括:
[0009]所述服务器传输优化组件确定未成功传输的数据;
[0010]将未成功传输的数据封装为UDP数据包后,根据所述UDP通道状态和所述UDP数据包,确定数据重传规则;其中,所述UDP通道状态包括UDP通道的带宽,以及数据传输丢包率;
[0011]所述服务器传输优化组件按照数据重传规则,通过所述UDP通道发送所述UDP数据包至客户端传输优化组件,由所述客户端传输优化组件将所述UDP数据包转换为TCP数据包发送至所述客户端。
[0012]本发明实施例提供一种数据重传装置,应用于无线通信系统中,所述无线通信系统还包括客户端,服务器,客户端传输优化组件,且所述客户端传输优化组件和所述数据重传装置之间设置有UDP通道,所述装置包括:
[0013]数据确定单元,用于确定未成功传输的数据;
[0014]数据重传规则确定单元,用于将未成功传输的数据封装为UDP数据包后,根据所述UDP通道状态和所述UDP数据包,确定数据重传规则;其中,所述UDP通道状态包括UDP通道的带宽,以及数据传输丢包率;
[0015]数据重传单元,用于按照数据重传规则,通过所述UDP通道发送所述UDP数据包至客户端传输优化组件,由所述客户端传输优化组件将所述UDP数据包转换为TCP数据包发送至所述客户端。
[0016]本发明实施例中,在客户端侧设置客户端传输优化组件,在服务器侧设置服务器传输优化组件,且客户端传输优化组件和服务器传输优化组件之间设置有UDP通道;所述服务器传输优化组件获取数据重传规则,并按照数据重传规则,通过所述UDP通道将UDP数据包发送至客户端传输优化组件,由客户端传输优化组件将UDP数据包转换为TCP数据包发送至客户端。采用本发明实施例技术方案,用UDP通道替换TCP在广义网中的传输链路,数据重传过程不依赖于TCP协议,无须等待预设数目个RRT时长后才能执行数据重传操作,从而避免了在TCP协议下重传数据造成的延时时间长的问题;此外,相较于TCP通道状态不可知的问题,UDP通道为无连接可控制的通道,服务器传输优化组件能够获取UDP通道状态,并根据该UDP通道状态,确定数据传输规则,服务器传输优化组件能够按照该数据重传规则,执行数据重传操作,避免了在通道状态不佳的时刻重传数据时,造成的丢包问题,从而保证了数据重传操作的可靠执行,进而有效缩短了数据重传过程中的数据响应时长。
【附图说明】
[0017]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0018]图1为本发明实施例中无线通信系统结构示意图;
[0019]图2为本发明实施例中数据首次传输流程图;
[0020]图3为本发明实施例中数据重传流程图;
[0021]图4为本发明实施例中数据重传装置结构示意图。
【具体实施方式】
[0022]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0023]参阅图1所示,为本发明实施例中无线通信系统架构示意图,该无线通信系统包括服务器、客户端、客户端数据传输优化组件、服务器传输优化组件。具体的,客户端用于向服务器发送数据请求,以请求获取相应的数据,以及接收服务器发送的数据,客户端请求的数据可以根据具体应用场景而有所不同,例如,当用户通过客户端进行网页浏览时,客户端请求的数据即为页面数据;客户端传输优化组件,与客户端相连接,用于模拟服务器与客户端建立TCP连接,并将客户端发送的TCP数据请求转换为UDP数据请求,以及与服务器传输优化组件建立UDP通道;服务器传输优化组件,一端与客户端传输优化组件相连,另一端与服务器相连,用于通过UDP通道接收客户端发送的UDP数据请求,并将该数据请求转换为TCP数据请求,以及模拟客户端将TCP数据请求发送至服务器,该服务器传输优化组件还用于将服务器发送的TCP数据转换为UDP数据包,通过UDP通道发送至客户端;服务器用于根据客户端发送的TCP数据请求生成客户端所请求数据,并将该数据发送至客户端,该服务器根据功能不同,发送至客户端的数据也不同,例如,当该服务器为Web服务器时,该Web服务器发送至客户端的数据即为Web数据。在上述无线通信系统中,可以包含多个服务器和多个客户端,本发明实施例中,仅以无线通信系统仅包含一个服务器和一个客户端为例,详细描述数据传输过程。
[0024]可选的,上述客户端传输优化组件和服务器传输优化组件可以通过应用程序实现;其中,客户端传输优化组件可以位于客户端以外的设备中,或者,客户端传输优化组件可以为客户端中安装的应用程序;服务器传输优化组件可以为位于服务器以外的设备中,或者,服务器传输优化组件即为服务器中安装的应用程序。
[0025]下面结合说明书附图,对本发明实施例作进一步详细描述。
[0026]在无线通信系统中,数据传输包含两个过程,即数据首次传输过程以及数据重传过程。
[0027]实施例一
[0028]参阅图2所示,本发明实施例中,数据首次传输的过程,包括:
[0029]步骤200:客户端发送TCP数据请求。
[0030]本发明实施例中,客户端可以根据当前时刻用户在客户端中输入的指令,生成数据请求;客户端还可以根据之前预设指令,生成数据请求,如预设时间点到达时,生成数据请求。其中,该客户端仍为遵循TCP协议的客户端。
[0031]可选的,该数据请求为HTTP (HyperText Transfer Protocol ;超文本传输协议)get请求。
[0032]步骤210:客户端传输优化组件接收到客户端发送的TCP数据请求时,建立与客户端之间的TCP连接。
[0033]本发明实施例中,客户端传输优化组件模拟服务器,根据客户端发送的TCP数据请求,建立与客户端之间的TCP连接,客户端和服务器之间的数据传输将由客户端传输优化组件处理。其中,客户端和客户端传输优化组件位于同一个局域网内,因此,客户端和客户端传输优化组件之间数据传输的时延可以忽略不计。
[0034]步骤220:客户端传输优化组件将TCP数据请求转换为UDP数据请求,并通过客户端传输优化组件和服务器传输优化组件之间的UDP通道,将所述UDP数据请求发送至服务器传输优化组件。
[0035]本发明实施例中,客户端传输优化组件将TCP数据请求转换为UDP数据请求,使该UDP数据请求能够基于UDP协议在UDP通道上传输。
[0036]进一步的,在客户端传输优化组件通过UDP通道传输所述UDP数据请求之前,客户端传输优化组件还需要判断本地和服务器传输优化组件之间是否已经建立UDP通道,若有,则客户端传输优化组件直接传输UDP数据请求即可;否则,客户端传输优化组件需要和服务器传输优化组件之间建立UDP通道,再通过建立的UDP通道传输所述UDP数据请求。
[0037]采用上述技术方案,在客户端传输优化组件和服务器传输优化组件之间建立UDP通道,客户端传输优化组件将客户端发送的TCP数据请求转换为UDP数据请求,使客户端发送至服务器的数据请求不依赖于TCP协议,从而避免了数据在TCP协议规定下进行传输时造成的高丢包率问题,较低的丢包率能够缩短数据重传时长;并且,UDP协议相较于TCP协议为无连接的协议,通过UDP通道传输UDP数据请求能够降低数据请求所占用的带宽。
[0038]步骤230:服务器传输优化组件接收到UDP数据请求时,建立与服务器之间的TCP连接。
[0039]本发明实施例中,服务器传输优化组件模拟客户端,在接收到UDP数据请求时,即建立与服务器之间的TCP连接,客户端和服务器之间的数据传输将由服务器传输优化组件处理。其中,服务器和服务器传输优化组件位于同一个局域网内,因此,服务器和服务器传输优化组件之间数据传输的时延可以忽略不计。
[0040]基于上述技术方案,通过客户端传输优化组件和服务器传输优化组件,将无线通信网络中客户端和服务器之间的数据分为三部分,即为客户端和客户端传输组件之间的TCP数据,客户端传输优化组件和服务器传输优化组件之间的UDP数据,以及服务器传输优化组件和服务器之间的TCP数据;采用上述技术方案,客户端仍为满足TCP协议的客户端,用客户端传输优化组件模拟服务器,仅建立客户端和客户端传输优化组件之间的TCP连接,无须对客户端进行改进;并且,服务器仍为满足TCP协议的服务器,用服务器传输优化组件模拟客户端,仅建立服务器和服务器传输优化组件之间的TCP连接,无须对服务器进行改进,从而降低了数据传输成本。
[0041 ] 步骤240:服务器传输优化组件将所述UDP数据请求转换为TCP数据请求,发送至服务器。
[0042]本发明实施例中,服务器传输优化组件将UDP数据请求转换为TCP数据请求,通过服务器传输优化组件和服务器之间的TCP连接传输所述TCP数据请求。
[0043]步骤250:服务器根据所述TCP数据请求,生成TCP数据包发送至服务器传输优化组件。
[0044]本发明实施例中,当服务器确认客户端所请求的所有数据均已传输至服务器传输优化组件时,根据TCP协议规定,服务器将断开与服务器传输优化组件之间的TCP连接。
[0045]步骤260:服务器传输优化组件将所述TCP数据包转换为UDP数据包,通过UDP通道发送至客户端传输优化组件。
[0046]本发明实施例中,服务器传输优化组件将TCP数据包转换为UDP数据包,使该UDP数据包能够基于UDP协议在UDP通道上传输。
[0047]进一步的,服务器发送的TCP数据包中包含多个TCP数据,且每一个TCP数据拥有自身的序号;服务器传输优化组件在本地保存服务器发送的所有TCP数据的序号。
[0048]步骤270:客户端传输优化组件将所述UDP数据包转换为TCP数据包后,将该TCP数据包传输至客户端。
[0049]本发明实施例中,不断开客户端传输优化组件与客户端之间的TCP连接,也不断开客户端传输优化组件与服务器传输优化组件之间的UDP通道,因此,在服务器断开与服务器传输优化组件之间的TCP连接之后,客户端、客户端传输优化组件和服务器传输优化组件之间仍可以有数据传输。
[0050]进一步的,在服务器将客户端请求的TCP数据发送至客户端之后,客户端针对任意一已经成功接收的TCP数据,向服务器发送应答消息,该应答消息中包含成功接收的TCP数据序号;由于服务器和服务器传输优化组件之间的TCP连接已经断开,所以由服务器传输优化组件接收客户端发送的应答消息。
[0051]实施例二
[0052]参阅图3所示,本发明实施例中,当存在未成功传输的数据时,数据重传过程,包括:
[0053]步骤300:所述服务器传输优化组件确定未成功传输的数据。
[0054]本发明实施例中,服务器传输优化组件判断自身和所述服务器之间的TCP连接是否已经关闭;若已经关闭,则执行数据重传过程;若没有关闭,则不启动数据重传过程。
[0055]采用上述技术方案,服务器传输优化组件在与服务器之间的TCP连接断开之后,即确保服务器将客户端请求的数据发送出去之后,才执行数据重传操作,避免了在进行数据首次传输的同时,执行数据重传过程所造成的带宽利用率低的问题,提高了带宽利用率,缩短了数据响应时长。
[0056]可选的,服务器传输优化组件在发送UDP数据包的同时,记录发送该UDP数据包的时间点,以及该UDP数据包中包含的所有UDP数据序号。
[0057]基于上述技术方案,服务器传输优化组件获取未成功传输的数据的过程,包括:针对所述服务器传输优化组件接收到所述服务器发送的任意一 UDP数据,执行如下操作,月艮务器传输优化组件自记录的发送该任意一 UDP数据的时间点开始至预设时长到达时,服务器传输优化组件仍未接收到所述客户端发送的该任意一 UDP数据对应的应答消息时,所述服务器传输优化组件将所述任意一 UDP数据确定为未成功传输的数据。
[0058]步骤310:将未成功传输的数据封装为UDP数据包后,根据所述UDP通道状态和所述UDP数据包,确定数据重传规则;其中,所述UDP通道状态包括UDP通道的带宽,以及数据传输丢包率。
[0059]本发明实施例中,服务器传输优化组件根据所述UDP通道的带宽,确定是否需要对重传数据包进行划分。
[0060]可选的,服务器传输优化组件根据所述UDP通道的带宽,确定是否需要对重传数据包进行划分,具体包括:服务器传输优化组件获取所述UDP数据包占用存储空间的大小,当所述UDP数据包占用存储空间的大小大于UDP通道的带宽时,将所述UDP数据包划分为多个重传子数据包,其中,每一个重传子数据包占用存储空间的大小均不大于所述UDP通道的带宽;当所述UDP数据包占用存储空间的大小不大于所述UDP通道的带宽时,无须对所述UDP数据包进行划分。[0061 ] 采用上述技术方案,服务器传输优化组件根据UDP通道的带宽传输UDP数据包,避免了 UDP数据包过大导致的无线网络拥塞问题,提高了数据重传的可靠性。
[0062]可选的,服务器传输优化组件根据数据传输丢包率,确定每一个重发子数据包的重发次数。具体的,确定每一个所述重发子数据包的需要重发的重发次数的过程,包括:从预存的对应关系中查找所述数据传输丢包率对应的重传次数;其中,所述对应关系中保存数据传输丢包率与重传次数的映射关系;将查找得到的重传次数确定为所述每一个重发子数据包的需要重发的重发次数。
[0063]可选的,服务器传输优化组件根据数据传输丢包率,确定UDP数据包的重发次数。具体的,所述UDP数据包需要重发的重发次数的过程,包括:服务器传输优化组件根据所述数据传输丢包率,获取UDP数据包需要重发的重发次数;从预存的对应关系中查找确定的数据传输丢包率对应的重传次数;其中,所述对应关系中保存数据传输丢包率与重传次数的映射关系;将查找得到的重传次数确定为所述UDP数据包需要重发的重发次数。
[0064]可选的,上述对应关系可以通过表格的形式实现,也可以以对应关系集合的形式实现,即对应关系集合中包含多个对应关系,每一个对应关系即为任意一丢包率和重发次数;此外,对应关系还可以通过函数函数形式实现,如N = F(L),N标识重发次数,L表示丢包率,N的值与L取值相关。其中,上述对应关系中的丢包率还可以为一个范围,即每一个范围的丢包率对应一个重发次数,如当丢包率小于20%的时候,重发次数为3,当丢包率大于或等于20%的时候,重发次数为2。
[0065]进一步的,服务器传输优化组件将获取的所述重发次数以及预设重发时间间隔确定为所述重传规则。
[0066]在现有技术中,在每一轮重发数据包的过程中,仅重发一次重发数据包,采用本发明技术方案,服务器传输优化组件多次发送重发数据包,大大降低该重发数据包中数据被再次重发的概率,从而有效缩短了数据响应时长。
[0067]步骤320:按照数据重传规则,通过所述UDP通道发送所述UDP数据包至客户端传输优化组件,由所述客户端传输优化组件将所述UDP数据包转换为TCP数据包发送至所述客户端。
[0068]本发明实施例中,服务器传输优化组件按照数据重传规则,通过所述UDP通道发送至客户端传输优化组件;所述客户端传输优化组件将所述UDP数据包转换为TCP数据包发送至所述客户端;客户端接收到所述TCP数据包后,对该TCP数据包进行处理,如当该TCP数据包中包含的数据为表示网页的数据时,客户端根据该TCP数据包中包含的数据进行页面显示等。
[0069]可选的,当所述UDP数据包占用存储空间的大小大于所述UDP通道的带宽时,按照每一个所述重发子数据包的需要重发的重发次数,以及预设重发时间间隔,依次将所述重发子数据包通过所述UDP通道发送至客户端传输优化组件;其中,在每一个预设重发时间间隔内重发所有所述重发子数据包。例如,将UDP数据包划分为重发子数据包1,重发子数据包2,重发子数据包3,重发时间间隔为t,在第一次数据重发时间到达时,服务器传输优化组件执行第一次数据重传输操作,即依次将重发子数据包1,重发子数据包2,重发子数据包3发送至客户端传输优化组件,重发次数为2 ;自所述第一次数据重发时间开始计时,到达时间t时,服务器传输优化组件执行第二次数据重传操作,依次将重发子数据包1,重发子数据包2,重发子数据包3发送至客户端传输优化组件,重发次数为2。
[0070]可选的,当所述UDP数据包占用存储空间的大小不大于UDP通道的带宽时,服务器传输优化组件按照重发次数,以及预设重发时间间隔,将所述UDP数据包通过所述UDP通道发送至客户端传输优化组件。
[0071]其中,所述预设重发时间间隔为经验值,如该预设重发时间间隔为5毫秒。
[0072]采用上述技术方案,服务器传输优化组件按照预设重发时间间隔,分多次将N个UDP数据包依次发送至客户端,且每一个预设重发时间间隔传输N个UDP数据包,避免了一次性将数据包发送至客户端时,无线网络通信质量较差时,导致的所有数据包全部丢失的问题,保证了数据包传输的可靠性。
[0073]基于上述技术方案,参阅图4所示,本发明实施例还提供一种数据重传装置,包括服务器传输优化组件,该服务器传输优化组件包括数据确定单元40,数据重传规则确定单元41,数据重传单元42,其中:
[0074]数据确定单元40,用于确定未成功传输的数据;
[0075]数据重传规则确定单元41,用于将未成功传输的数据封装为UDP数据包后,根据所述UDP通道状态和所述UDP数据包,确定数据重传规则;其中,所述UDP通道状态包括UDP通道的带宽,以及数据传输丢包率;
[0076]数据重传单元42,用于按照数据重传规则,通过所述UDP通道发送所述UDP数据包至客户端传输优化组件,由所述客户端传输优化组件将所述UDP数据包转换为TCP数据包发送至所述客户端。
[0077]进一步的,所述装置还包括连接关闭单元43,用于:将未成功传输的数据封装为UDP数据包之前,确定和所述服务器之间的TCP连接已经关闭。
[0078]可选的,所述数据重传规则确定单元41,具体用于:获获取所述UDP数据包占用存储空间的大小,当所述UDP数据包占用存储空间的大小大于所述UDP通道的带宽时,将所述UDP数据包划分为多个重发子数据包,其中,每一个重发子数据包占用存储空间的大小均不大于所述UDP通道的带宽;并根据所述数据传输丢包率,分别获取每一个所述重发子数据包的需要重发的重发次数;当所述UDP数据包占用存储空间的大小不大于所述UDP通道的带宽时,直接根据所述数据传输丢包率,获取所述UDP数据包需要重发的重发次数;并将获取的所述重发次数以及预设重发时间间隔确定为所述数据重传规则。
[0079]可选的,所述数据重传单元42,具体用于:当所述UDP数据包占用存储空间的大小不大于UDP通道的带宽时,按照所述UDP数据包需要重发的重发次数,以及预设重发时间间隔,将所述UDP数据包通过所述UDP通道发送至客户端传输优化组件;当所述UDP数据包占用存储空间的大小大于所述UDP通道的带宽时,按照每一个所述重发子数据包的需要重发的重发次数,以及预设重发时间间隔,依次将所述重发子数据包通过所述UDP通道发送至客户端传输优化组件;其中,在每一个预设重发时间间隔内重发所有所述重发子数据包。
[0080]可选的,所述数据重传规则确定单元41根据所述数据传输丢包率,获取所述UDP数据包需要重发的重发次数,具体包括:从预存的对应关系中查找所述数据传输丢包率对应的重传次数;其中,所述对应关系中保存数据传输丢包率与重传次数的映射关系;将查找得到的重传次数确定为所述UDP数据包需要重发的重发次数。
[0081]可选的,所述数据重传规则确定单元41根据所述数据传输丢包率,分别获取每一个所述重发子数据包的需要重发的重发次数,具体包括:从预存的对应关系中查找所述数据传输丢包率对应的重传次数;其中,所述对应关系中保存数据传输丢包率与重传次数的映射关系;将查找得到的重传次数确定为所述每一个重发子数据包的需要重发的重发次数。
[0082]进一步的,所述数据确定单元40,用于:针对接收到所述服务器发送的任意一数据,执行如下操作:当在预设时长内,未接收到所述客户端发送的应答消息时,将所述任意一数据确定为未成功传输的数据。
[0083]综上所述,所述服务器传输优化组件确定未成功传输的数据;将未成功传输的数据封装为UDP数据包后,根据所述UDP通道状态和所述UDP数据包,确定数据重传规则;其中,所述UDP通道状态包括UDP通道的带宽,以及数据传输丢包率;按照数据重传规则,通过所述UDP通道发送至客户端传输优化组件,由所述客户端传输优化组件将所述UDP数据包转换为TCP数据包发送至所述客户端。采用本发明实施例技术方案,用UDP通道替换TCP在广义网中的传输链路,数据重传过程不依赖于TCP协议,无须等待预设数目个RRT时长后才能执行数据重传操作,从而避免了在TCP协议下重传数据造成的延时时间长的问题;此外,相较于TCP通道状态不可知的问题,UDP通道为无连接可控制的通道,服务器传输优化组件能够获取UDP通道状态,并根据该UDP通道状态,确定数据传输规则,服务器传输优化组件能够按照该数据重传规则,执行数据重传操作,避免了在通道状态不佳的时刻重传数据时,造成的丢包问题,从而保证了数据重传操作的可靠执行,进而有效缩短了数据重传过程中的数据响应时长。
[0084]以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0085]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0086]最后应说明的是:以上实施例仅用以说明本发明实施例的技术方案,而非对其限制;尽管参照前述实施例对本发明实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例各实施例技术方案的精神和范围。
【主权项】
1.一种数据重传方法,应用于无线通信系统中,其特征在于,所述无线通信系统包括客户端,服务器,客户端传输优化组件,以及服务器传输优化组件,且所述客户端传输优化组件和所述服务器传输优化组件之间设置有数据用户协议UDP通道,所述方法包括: 所述服务器传输优化组件确定未成功传输的数据; 将未成功传输的数据封装为UDP数据包后,根据所述UDP通道状态和所述UDP数据包,确定数据重传规则;其中,所述UDP通道状态包括UDP通道的带宽,以及数据传输丢包率; 所述服务器传输优化组件按照数据重传规则,通过所述UDP通道发送所述UDP数据包至客户端传输优化组件,由所述客户端传输优化组件将所述UDP数据包转换为TCP数据包发送至所述客户端。2.根据权利要求1所述的方法,其特征在于,将未成功传输的数据封装为UDP数据包之前,所述方法还包括: 确定和所述服务器之间的TCP连接已经关闭。3.根据权利要求1所述的方法,其特征在于,根据所述UDP通道状态和所述UDP数据包,确定数据重传规则,具体包括: 获取所述UDP数据包占用存储空间的大小,当所述UDP数据包占用存储空间的大小大于所述UDP通道的带宽时,将所述UDP数据包划分为多个重发子数据包,其中,每一个重发子数据包占用存储空间的大小均不大于所述UDP通道的带宽;并根据所述数据传输丢包率,分别获取每一个所述重发子数据包的需要重发的重发次数; 当所述UDP数据包占用存储空间的大小不大于所述UDP通道的带宽时,直接根据所述数据传输丢包率,获取所述UDP数据包需要重发的重发次数;并将获取的所述重发次数以及预设重发时间间隔确定为所述数据重传规则。4.根据权利要求3所述的方法,其特征在于,根据所述数据传输丢包率,获取所述UDP数据包需要重发的重发次数,具体包括: 从预存的对应关系中查找所述数据传输丢包率对应的重传次数;其中,所述对应关系中保存数据传输丢包率与重传次数的映射关系; 将查找得到的重传次数确定为所述UDP数据包需要重发的重发次数。5.根据权利要求3或4所述的方法,其特征在于,按照数据重传规则,通过所述UDP通道发送所述UDP数据包至客户端传输优化组件,具体包括: 当所述UDP数据包占用存储空间的大小不大于所述UDP通道的带宽时,按照所述UDP数据包需要重发的重发次数,以及预设重发时间间隔,将所述UDP数据包通过所述UDP通道发送至客户端传输优化组件; 当所述UDP数据包占用存储空间的大小大于所述UDP通道的带宽时,按照每一个所述重发子数据包的需要重发的重发次数,以及预设重发时间间隔,依次将所述重发子数据包通过所述UDP通道发送至客户端传输优化组件;其中,在每一个预设重发时间间隔内重发所有所述重发子数据包。6.根据权利要求5所述的方法,其特征在于,所述服务器传输优化组件确定未成功传输的数据,具体包括: 针对所述服务器传输优化组件接收到所述服务器发送的任意一数据,执行如下操作: 当在预设时长内,所述服务器传输优化组件未接收到所述客户端发送的应答消息时,所述服务器传输优化组件将所述任意一数据确定为未成功传输的数据。7.一种数据重传装置,应用于无线通信系统中,其特征在于,所述无线通信系统还包括客户端,服务器,客户端传输优化组件,且所述客户端传输优化组件和所述数据重传装置之间设置有数据用户协议UDP通道,所述装置包括: 数据确定单元,用于确定未成功传输的数据; 数据重传规则确定单元,用于将未成功传输的数据封装为UDP数据包后,根据所述UDP通道状态和所述UDP数据包,确定数据重传规则;其中,所述UDP通道状态包括UDP通道的带宽,以及数据传输丢包率; 数据重传单元,用于按照数据重传规则,通过所述UDP通道发送所述UDP数据包至客户端传输优化组件,由所述客户端传输优化组件将所述UDP数据包转换为TCP数据包发送至所述客户端。8.根据权利要求7所述的装置,其特征在于,还包括连接关闭单元,用于: 将未成功传输的数据封装为UDP数据包之前,确定和所述服务器之间的TCP连接已经关闭。9.根据权利要求7所述的装置,其特征在于,所述数据重传规则确定单元,具体用于: 获取所述UDP数据包占用存储空间的大小,当所述UDP数据包占用存储空间的大小大于所述UDP通道的带宽时,将所述UDP数据包划分为多个重发子数据包,其中,每一个重发子数据包占用存储空间的大小均不大于所述UDP通道的带宽;并根据所述数据传输丢包率,分别获取每一个所述重发子数据包的需要重发的重发次数; 当所述UDP数据包占用存储空间的大小不大于所述UDP通道的带宽时,直接根据所述数据传输丢包率,获取所述UDP数据包需要重发的重发次数;并 将获取的所述重发次数以及预设重发时间间隔确定为所述数据重传规则。10.根据权利要求9所述的装置,其特征在于,所述数据重传规则确定单元根据所述数据传输丢包率,获取所述UDP数据包需要重发的重发次数,具体包括: 从预存的对应关系中查找所述数据传输丢包率对应的重传次数;其中,所述对应关系中保存数据传输丢包率与重传次数的映射关系; 将查找得到的重传次数确定为所述UDP数据包需要重发的重发次数。11.根据权利要求9或10所述的装置,其特征在于,所述数据重传单元,具体用于: 当所述UDP数据包占用存储空间的大小不大于UDP通道的带宽时,按照所述UDP数据包需要重发的重发次数,以及预设重发时间间隔,将所述UDP数据包通过所述UDP通道发送至客户端传输优化组件; 当所述UDP数据包占用存储空间的大小大于所述UDP通道的带宽时,按照每一个所述重发子数据包的需要重发的重发次数,以及预设重发时间间隔,依次将所述重发子数据包通过所述UDP通道发送至客户端传输优化组件;其中,在每一个预设重发时间间隔内重发所有所述重发子数据包。12.根据权利要求11所述的装置,其特征在于,所述数据确定单元,具体用于: 针对接收到所述服务器发送的任意一数据,执行如下操作: 当在预设时长内,未接收到所述客户端发送的应答消息时,将所述任意一数据确定为未成功传输的数据。
【文档编号】H04L29/08GK105897452SQ201510494489
【公开日】2016年8月24日
【申请日】2015年8月12日
【发明人】曹立权
【申请人】乐视云计算有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1