通信装置和通信方法

申请号 CN200980145332.6 申请日 2009-12-02 公开(公告)号 CN102217249A 公开(公告)日 2011-10-12
申请人 株式会社NTT都科摩; 发明人 今井识; 关口克己; 明地则义;
摘要 存在这样的课题:在指数回退 算法 的抑制中使F-RTO算法简单地组合起来的情况下,当发生了一次假超时时,之后连续发生假超时。为了解决上述课题,本 发明 提供一种通信装置,该通信装置依次进行数据段的发送及其确认响应的接收,能够抑制使数据段的重发时的重发超时时间增加的回退算法的应用,而且控制重发超时时间来进行数据段的重发,其中,根据在数据段刚重发后接收到的确认响应判定假超时,在判定为发生了假超时的情况下,使重发超时时间增加。
权利要求

1.一种通信装置,其依次进行数据段的发送及其确认响应的接收,能够抑制使数据段的重发时的重发超时时间增加的回退算法的应用,且控制重发超时时间来进行数据段的重发,
该通信装置的特征在于,该通信装置具有:
假超时判定单元,其根据在数据段刚重发后接收到的确认响应判定假超时;以及重发超时时间增加单元,其在由所述假超时判定单元判定为发生了假超时的情况下,使所述重发超时时间增加。
2.根据权利要求1所述的通信装置,其特征在于,
对所述确认响应分别赋予了序列号,
在所述数据段刚重发后接收到的第1确认响应的序列号比上次接收到的确认响应的序列号超前且在刚接收到所述第1确认响应后接收到的第2确认响应的序列号比上次接收到的确认响应的序列号超前的情况下,所述假超时判定单元判定为发生了假超时。
3.根据权利要求1或2所述的通信装置,其特征在于,在抑制了所述回退算法的应用的情况下,所述重发超时时间增加单元使发送至少一个新的数据段时的所述重发超时时间增加,该至少一个新的数据段是根据在所述数据段刚重发后接收到的第1确认响应发送的。
4.根据权利要求1至3中任一项所述的通信装置,其特征在于,所述重发超时时间增加单元使所述重发超时时间成为2倍。
5.根据权利要求1至4中任一项所述的通信装置,其特征在于,所述假超时判定单元通过F-RTO(Forward RTO-Recovery,转发RTO恢复)算法进行所述判定。
6.一种通信方法,依次进行数据段的发送及其确认响应的接收,能够抑制使数据段的重发时的重发超时时间增加的回退算法的应用,且控制重发超时时间来进行数据段的重发,该通信方法的特征在于,
该通信方法具有:
假超时判定步骤,根据在数据段刚重发后接收到的确认响应判定假超时;以及重发超时时间增加步骤,在由所述假超时判定步骤判定为发生了假超时的情况下,使所述重发超时时间增加。

说明书全文

通信装置和通信方法

技术领域

[0001] 本发明涉及在经由网络发送数据的情况下发生了重发超时时的重发控制方法。

背景技术

[0002] 在会发生数据缺失的通信网中进行数据收发的情况下,为了从发送装置向接收装置发送全部数据,有时检测在通信网中数据缺失的可能性,从发送装置进行缺失数据的再次发送。
[0003] 在互联网等的基于IP(Internet Protocol,互联网协议)的网络中,在无缺失地收发数据时一般使用的TCP(Transmission Control Protocol,传输控制协议)中,发送装置依次截出发送数据的部分数据,生成向所截出的部分数据赋予了包含序列号的头的每发送单位的数据(以下称为“段”),将所生成的段按照序列号小的顺序发送。此时,发送装置记录段的发送时刻相关的信息,并具有在一定时间内不能接收到针对所发送的段的来自接收装置的ACK(ACKnowledgement,确认)的情况下进行段的重发的重发控制功能。
[0004] 该一定时间作为重发超时时间预先保持在发送装置内,根据在发送装置和接收装置之间的RTT(Round Trip Time,往返时间)的测定结果进行更新(非专利文献1)。并且,包含有指数回退算法,即,当进行了重发时,将重发超时时间设定2倍的值,避免由重发引起的网络的拥塞(非专利文献2)。
[0005] 并且,与有线数据链路不同,无线数据链路上的吞吐量大幅变动。因此,在数据链路中,存在如RLC(Radio Link Control,无线链路控制)协议那样、规定了数据的重发的通信协议。在将RLC那样的、规定了数据帧的重发的数据链路应用于TCP的下位层的情况下,在数据链路上数据帧缺失而进行重发的状况从TCP作为RTT的增大被掌握。如果数据链路的重发继续有限时间,则在该重发的继续时间中不能确认数据帧的到达的情况下,发生数据帧的缺失,也就是说段的缺失,因而TCP中的RTT也自然地根据数据链路上的重发继续时间被提供上限。
[0006] 着眼于该TCP中的RTT的上限的存在,提出了一种享有以下两方面的优点的方法:通过将重发发生前的重发超时时间设定为考虑了RTT的上限的值来抑制在数据链路上重发继续中的TCP重发;以及通过在第n次之前的段重发时不进行指数回退而决定重发超时时间,并从第n+1次以后应用指数回退算法来回退由重发引起的拥塞(专利文献1)。
[0007] 然而,在RTT根据时刻变动的网络环境中,有时在TCP的重发控制中的重发超时时间小于实际的RTT。当重发超时时间小于RTT时,尽管在发送装置和接收装置之间段不缺失,也有时发生段的重发。发生这样的段重发的状况被称为假超时,会成为通信的吞吐量下降的要因。
[0008] 作为用于检测该假超时的方法之一,有F-RTO(Forward RTO-Recovery,转发RTO恢复)。在F-RTO中,在发送装置中,在重发计时器终止(以下称为“超时”)的情况下,按照序列号小的顺序发送2个新的未发送段,根据在这些段的发送后最初从接收装置接收到的ACK的内容,判定超时是由段的缺失引起,还是由假超时引起。具体地说,在根据接收到的ACK进行了接收确认的段的序列号比根据上次接收到的ACK进行了接收确认的段的序列号超前的情况下,判定为是由假超时引起,在不是这样的情况下,判定为是由段的缺失引起。在判定为是由假超时引起的情况下,照原样继续后续的段的发送,在判定为是由段的缺失引起的情况下,重发所缺失的段,由接收装置接收,之后进行后续的段的发送(非专利文献3)。
[0009] 并且,在将规定了数据帧的重发的数据链路用于TCP的下位层的情况下,如果接收装置中的蓄积重发帧的缓存器尺寸足够大,则不发生数据链路上的帧的缺失,因而即使将重发超时时间设定得比RTT的上限小,发生假超时的可能性也一味地增加,没有重发回复契机提前的效果。
[0010] 然而,实际上,蓄积重发帧的缓存器尺寸是有限的,当将超过缓存器尺寸的帧输入到数据链路时,将进行数据的废弃。也就是说,这意味着,尽管具有通过将重发超时时间设定得比TCP中的RTT的上限小而使假超时增加的缺点,然而获得重发回复契机提前的优点。
[0011] 这里,可容易想象出,通过使专利文献1记载的现有技术涉及的发送装置与非专利文献3记载的现有技术简单组合,可在减轻假超时发生的缺点的同时,使重发回复契机提前。
[0012] 专利文献1:日本特开2005-236961号公报
[0013] 非专利文献1:J.Postel,“Transmission Control Protocol-DARPA Internet Program Protocol Specification”,RFC793,September 1981
[0014] 非专利文献2:R.Braden,“Requirements for Internet Hosts-Communication Layers”,RFC1122,October 1989
[0015] 非专利文献3:P.Sarolahti,M.Kojo,and K.Raatikainen,“F-RTO:An Enhanced Recovery Algorithm for TCP Retransmission Timeouts”,ACM SIGCOMM Computer CommunicationReview,April 2003,Volume 33,Number2,p.51-63
[0016] 然而,通过使专利文献1记载的发送装置与非专利文献3记载的F-RTO算法简单组合的情况下,具有以下的问题。
[0017] 图9是说明现有技术中的问题的图。另外,在图9中,以采用延迟ACK方式作为前提。
[0018] 首先,从发送侧终端向接收侧终端发送段1、段2(S901、S901’),假定与此对应的来自接收侧终端的ACK2(S902)是在发送段1(S901)后经过重发超时时间即时间tRTO之后接收到(假超时的发生)。
[0019] 在该情况下,由于超时发生而从发送侧终端重发段1(S903),在针对重发超时时间抑制了回退算法的应用的情况下,此时的重发超时时间为tRTO。然后,根据F-RTO算法,在接收到ACK2(S902)之后,发送2个未发送段即段5和段6(S904、S905),在这些段的发送后,如果最初接收的ACK(S906)的序列号超前,则判断为最初的段1(S901)的超时是假超时,如果序列号未超前,则判断为是由段的缺失等引起的超时。如图9所示,在接收到的ACK是ACK4(S906)的情况下,序列号超前,因而判断为段1(S901)的超时是假超时。
[0020] 然而,在针对重发超时时间抑制了回退算法的应用的情况下,关于段5的发送(S904),也将时间tRTO设定为重发超时时间,因而针对段5(和段6)的ACK6(S907)也为假超时的可能性高,在为假超时的情况下,发生段5的重发(S908),然后发送作为未发送段的段7和段8(S909、S910)。
[0021] 这里,在段5的重发(S908)中的重发超时时间是测定从段4的发送到返回ACK4(S906)的RTT来更新的,然而在重发超时时间tRTO小于RTT的情况下,而且在例如时间tRTO是重发超时时间的最小值的情况下,段5(S908)的重发超时时间t’RTO为tRTO<t’RTO<RTT,因而段5(S908)也为假超时的可能性高。以后,同样连续发生假超时。
[0022] 即,在使专利文献1记载的发送装置与F-RTO算法简单组合的情况下,当发生了一次假超时时,具有之后连续发生假超时的问题。也就是说,当在重发超时时间小于RTT的状况下发生了假超时时,发送装置发送2个新的未发送段,然而这里当不回退重发超时时间而设定小的值时,重复这样的动作:接收与最初为假超时的段对应的ACK,在重发回复后针对该新的未发送段发生假超时,再发送2个新的未发送段。并且,关于该问题,不仅在假超时的检测中采用F-RTO算法的情况下,而且在使用其它算法的情况下,只要是根据成为超时的段重发后的最初的ACK的接收发送1个以上的未发送段的算法,就会产生同样的问题。

发明内容

[0023] 因此,本发明的目的是解决上述问题,提供在抑制由假超时引起的吞吐量下降的同时、使重发发生时的重发回复契机提前的通信装置和通信方法。
[0024] 为了达到上述目的,本发明提出了一种通信装置,该通信装置依次进行数据段的发送及其确认响应的接收,能够抑制使数据段的重发时的重发超时时间增加的回退算法的应用,且控制重发超时时间来进行数据段的重发,其特征在于,该通信装置具有:假超时判定单元,其根据在数据段刚重发后接收到的确认响应判定假超时;以及重发超时时间增加单元,其在由所述假超时判定单元判定为发生了假超时的情况下,使所述重发超时时间增加。
[0025] 根据该结构,在数据段的重发时抑制了回退算法的应用的情况下,而且在发生了假超时的情况下,可以使重发超时时间增加。由此,在抑制了回退算法的应用的情况下,一旦发生了假超时,能避免之后也连续发生假超时的事态。
[0026] 并且,优选的是,对所述确认响应分别赋予了序列号,在所述数据段刚重发后接收到的第1确认响应的序列号比上次接收到的确认响应的序列号超前且在刚接收到所述第1确认响应后接收到的第2确认响应的序列号比上次接收到的确认响应的序列号超前的情况下,所述假超时判定单元判定为发生了假超时。
[0027] 根据该结构,根据在所述数据段刚重发后的确认响应,判定所发生的超时是否是假超时,可使重发超时时间增加。由此,在抑制了回退算法的应用的情况下,一旦发生了假超时,能避免之后也连续发生假超时的事态。
[0028] 并且,优选的是,在抑制了所述回退算法的应用的情况下,所述重发超时时间增加单元使发送根据在所述数据段刚重发后接收到的第1确认响应发送的至少一个新的数据段时的所述重发超时时间增加。
[0029] 根据该结构,针对在第1确认响应的接收后发送的至少1个新数据段,可使重发超时时间增加。由此,能回退由于F-RTO算法等而使根据第1确认响应发送的新数据段成为假超时,能回退连续发生假超时的事态。
[0030] 并且,优选的是,所述重发超时时间增加单元使所述重发超时时间成为2倍。
[0031] 根据该结构,由于可使数据段重发时的重发超时时间为2倍,因而在抑制了回退算法的应用的情况下,一旦发生了假超时,能避免之后也连续发生假超时的事态的可能性更高。
[0032] 并且,优选的是,所述假超时判定单元由F-RTO算法进行所述判定。
[0033] 根据该结构,在数据段的重发时抑制了回退算法、而且使用F-RTO检测出假超时的情况下,可使数据段重发时的重发超时时间增加。由此,在抑制了回退算法的应用的情况下,一旦发生了假超时,能避免之后也连续发生假超时的事态。
[0034] 并且,本发明提出了一种通信方法,该通信方法依次进行数据段的发送及其确认响应的接收,能够抑制使数据段的重发时的重发超时时间增加的回退算法的应用,且控制重发超时时间来进行数据段的重发,其特征在于,所述通信方法具有:假超时判定步骤(例如对应于图8中的步骤S809),根据在数据段刚重发后接收到的确认响应判定假超时;以及重发超时时间增加步骤(例如对应于图8中的步骤S808),在由所述假超时判定步骤判定为发生了假超时的情况下,使所述重发超时时间增加。
[0035] 根据该结构,在数据段的重发时抑制了回退算法的应用的情况下,而且在发生了假超时的情况下,可以使重发超时时间增加。由此,在抑制了回退算法的应用的情况下,一旦发生了假超时,能避免之后也连续发生假超时的事态。
[0036] 如以上说明那样,根据本发明,在数据段的重发时抑制了回退算法的应用的情况下,而且在发生了假超时的情况下,一旦发生了假超时,能避免之后也连续发生假超时的事态。附图说明
[0037] 图1是示出本实施方式涉及的通信装置中的动作的图。
[0038] 图2是示出本实施方式涉及的通信系统的结构例的图。
[0039] 图3是示出本实施方式涉及的通信系统中的协议堆栈的图。
[0040] 图4是示出由段的缺失引起的重发的具体例的图。
[0041] 图5是示出本实施方式涉及的服务器装置的结构例的框图
[0042] 图6是示出本实施方式涉及的通信终端的结构例的框图。
[0043] 图7是示出本实施方式涉及的服务器装置中的处理流程的流程图
[0044] 图8是示出超时重发处理流程的流程图。
[0045] 图9是说明现有技术中的问题的图。

具体实施方式

[0046] 以下,参照附图说明本发明的实施方式。
[0047] (动作概要)
[0048] 首先,参照图1说明本实施方式涉及的通信装置中的动作概要。另外,在图1中,以采用延迟ACK方式作为前提。
[0049] 最初,从发送侧终端(对应于本实施方式涉及的通信装置)向接收侧终端发送段1、段2(S101、S101’),当假定与此对应的来自接收侧终端的ACK2是在发送段1(S101)后经过重发超时时间即时间tRTO之后接收到时(假超时的发生),从发送侧终端针对重发超时时间抑制回退算法的应用,重发段1(S103)。然后,根据F-RTO算法,在接收到ACK2(S102)之后,发送新的未发送段即段5和段6(S104),然而通过使此时的重发超时时间为例如2倍而使其增加,可避免与段5(和段6)对应的ACK6(S106)为假超时。
[0050] (通信装置的结构)
[0051] 下面,参照图2说明包含本实施方式涉及的通信装置即服务器装置的通信系统的结构例。图2所示的通信系统由以下构成:服务器装置10,无线网络1,无线控制装置20,以及通信终端30。并且,图3是示出本实施方式涉及的通信系统中的协议堆栈的图。L1、L2分别相当于OSI(Open Systems Interconnection,开放式系统互联)参考模型中的物理层、数据链接层,IP相当于网络层,TCP相当于传送层。即,服务器装置10和通信终端30根据位于OSI参考模型的传送层的TCP进行通信。在TCP中,进行等待表示每次发送数据都可靠接收到数据的ACK的通信,即确认型通信。
[0052] 回到图2,无线网络1具体地说是例如与无线LAN连接的WAN或LAN、移动电话系统的交换网络和与其连接的WAN或LAN、互联网。
[0053] 服务器装置10经由无线网络1和无线控制装置20向通信终端30传递数据。并且,服务器装置10具有:发送部101,超时判断部102,重发部103,假超时判定部104,以及重发超时时间增加部105。该服务器装置10使用例如服务器、工作站来实现。
[0054] 发送部101将把发送数据分割为多个而生成的段经由无线网络1发送到通信终端30。对段附加包含序列号的头,按序列号小的顺序发送到通信终端30。
[0055] 当从发送部101发送了段时,超时判断部102保持其发送时刻,在从发送时刻起一定时间内,即在重发超时时间内未接收到针对该段的ACK的情况下,判断为发生了超时。另外,在重发超时时间的值被设定为小于RTT的值的情况下,容易发生假超时,因而在该情况下特别是,本发明涉及的通信装置的重发控制是有效的。
[0056] 在超时判断部102中判断为发生了超时的情况下,重发部103在第n次(n是正整数)的重发之前对重发超时时间不应用回退算法,在超过第n次的重发中对重发超时时间应用回退算法,将超时的段重发到发送部101。回退算法是使段重发时的重发超时时间增加的算法,代表性的有使重发超时时间以指数函数方式增加的指数回退算法。
[0057] 假超时判定部104根据在段刚重发后接收到的确认响应,判定在超时判断部102中产生的超时是否是假超时。“确认响应”是表示在通信终端30中可接收到从服务器装置10所发送的段的信息,具体地说相当于TCP/IP中的ACK等。
[0058] (假超时判定部)
[0059] 在由重发部103重发的段刚重发后接收到的第1确认响应的序列号比上次接收到的确认响应的序列号超前且在刚接收到所述第1确认响应后接收到的第2确认响应的序列号比上次接收到的确认响应的序列号超前的情况下,假超时判定部104判定为发生了假超时。
[0060] 例如,在图1的例子中,在针对从发送部101所发送的段1(S101)发生了假超时的情况下,在超时发生后,通过重发部103从发送部101重发超时的段1(S103),之后,接收针对最初的段的第1确认响应即ACK2(S102)。在该情况下,接收到的确认响应ACK1的序列号比上次接收到的确认响应的序列号超前。在接收到的确认响应的序列号未超前的情况下,该确认响应不是针对最初的段的确认响应,而是在此以前所发送的段的重复ACK等。
[0061] 然而,即使假定这里的确认响应的序列号超前,也不能仅根据第一点立即说所发生的超时是假超时。原因是,如图4所示,即使在段2、段3由于某种原因而缺失的情况下(S401、S402),在段1刚重发(S403)后接收的确认响应即ACK1(S404)的序列号也超前。
[0062] 因此,假超时判定部104进一步检查在刚接收到该第1确认响应后接收的第2确认响应的序列号是否超前。这里,第2确认响应相当于图1中的ACK4或图4中的重复ACK1(S405)。如图1所示,在最初的段的超时是假超时的情况下,该第2确认响应是ACK4,序列号超前。另一方面,如图4所示,在由于段缺失而为超时的情况下,该第2确认响应是重复ACK(S405),因而序列号不超前。
[0063] 从以上来看,在超时的段刚重发后接收到的第1确认响应的序列号比上次接收到的确认响应的序列号超前的情况下,而且在刚接收到该第1确认响应后接收到的第2确认响应的序列号超前的情况下,假超时判定部104判定为超时是假超时。
[0064] (重发超时时间增加部)
[0065] 回到图2,在由假超时判定部104判定为发生了假超时的情况下,重发超时时间增加部105使重发超时时间增加。按何种比例增加可以例如如指数回退算法那样为2倍,也可以按其它比例。
[0066] 并且,更具体地说,在针对重发超时时间抑制了所述回退算法的应用的情况下,重发超时时间增加部105使发送根据在由重发部103刚进行的段重发后接收到的第1确认响应发送的至少一个新的数据段时的重发超时时间增加。这里,只限于回退算法的应用被抑制的情况如在图9中所说明那样,本发明要解决的课题是,在重发超时时间经过后接收到最初的第1确认响应的情况下,避免由于之后发送的新的未发送段在相同的重发超时时间被发送而再次为超时。因此,在未发送段的发送时应用回退算法的情况下,无需再使重发超时时间增加,这是因为只有在不应用回退算法的情况下,才可以使重发超时时间增加。并且,根据在由重发部103刚进行的段重发后接收到的第1确认响应而发送的至少一个新的数据段在图1的例子中相当于段5(S104)或段6(S105)。另外,在图1中发送2个新的数据段(S104、S105),然而即使在发送仅一个数据段的情况下,本发明也能取得相同效果。
[0067] 另外,在图2中示出服务器装置10和通信终端30进行通信的情况,然而可以是取代服务器装置10而通过TCP通信在通信终端30进行数据发送的通信设备,也可以是例如移动电话终端等。
[0068] (服务器装置的具体结构)
[0069] 这里,说明本实施方式涉及的服务器装置10的更具体的结构例。图5是示出服务器装置10的结构例的框图。参照图5,服务器装置10具有:CPU(Central Processing Unit,中央处理单元)11,非易失性存储装置12,RAM(Random Access Memory,随机存取存储器)13,以及网络接口14。
[0070] 服务器装置10与一般的计算机一样由CPU11将RAM13作为工作区来执行存储在非易失性存储装置12内的程序,进行各种处理。非易失性存储装置12是即使不供给电源也保持存储的存储装置,例如是ROM(Read Only Memory,只读存储器)、闪存、强电介质存储器、磁阻存储器、磁盘、光盘、磁带等。在非易失性存储装置12内存储有用于进行程序执行处理的控制程序(未图示)、和用于根据TCP进行通信处理的通信程序121。并且,在通信程序121内包含有与上述的发送部101、超时判断部102、重发部103、假超时判定部104、重发超时时间增加部105对应的模,根据需要,各模块被写入在RAM13内并由CPU11执行。并且,网络接口14是用于进行与无线网络1的数据收发的有线或无线的通信接口
[0071] (无线控制装置)
[0072] 回到图2,无线控制装置20经由无线链路与通信终端30连接,作为通信终端30和无线网络1之间的无线接口执行功能。具体地说,无线控制装置20例如是无线LAN的AP(Access Point,接入点)、移动电话系统的RAN(Radio Access Network,无线接入网络)。
[0073] (通信终端)
[0074] 通信终端30接收从服务器装置10发送的段。具体地说,通信终端30例如是具有移动电话终端、无线通信功能的PC(个人计算机)。
[0075] (通信终端的具体结构)
[0076] 下面,说明本实施方式涉及的通信终端30的更具体的结构例。图6是示出通信终端30的结构例的框图。参照图6,通信终端30具有:无线接口31,IP处理部32,TCP处理部33,以及应用处理部34。
[0077] 无线接口31作为与无线网络1的接口执行功能。具体地说,无线接口31具有天线、高频处理部以及基带处理部(未图示)等。
[0078] IP处理部32根据从无线网络1所分配的IP地址、或者针对通信终端30由用户所设定的唯一地址,在无线网络1中被识别。
[0079] TCP处理部33执行重发控制或拥塞控制。由此,能进行可靠性更高的通信。
[0080] 应用处理部34具有执行Web浏览器、FTP(File Transfer Protocol,文件传送协议)客户机、邮件客户机等、用户利用的应用的功能。
[0081] (服务器装置的处理流程)
[0082] 图7是示出本实施方式涉及的服务器装置10的处理流程的流程图。
[0083] 最初,从服务器装置10的发送部101向通信终端30发送数据段(步骤S701)。
[0084] 然后,在超时判断部102中,判断针对在步骤S701所发送的数据段是否发生了超时(步骤S702)。在发生了超时的情况下,即在重发超时时间内未接收到来自通信终端30的ACK的情况下,转移到超时重发处理(S703)。在未发生超时的情况下,即在重发超时时间内接收到来自通信终端30的ACK的情况下,结束处理。
[0085] 然后,在步骤S703中执行超时重发处理。另外,关于超时重发处理在后面描述。
[0086] (超时重发处理)
[0087] 下面,使用图8说明超时重发处理的具体例。图8是示出超时重发处理流程的流程图。该超时重发处理是在图7的步骤S703执行的处理。
[0088] 最初,通过重发部103,从发送部101重发超时的段(步骤S801)。
[0089] 然后,判断步骤S801中的重发是否是第n次以下的重发(步骤S802)。在是第n次以下的重发的情况下,针对重发超时时间不执行回退处理,因而直接转移到步骤S804。在不是第n次以下的重发的情况下(即在是第n+1次以上的重发的情况下),针对重发超时时间执行回退处理,因而使重发超时时间增加(步骤S803),转移到步骤S804。另外,在重发超时时间增加部105中执行上述步骤S802和步骤S803。
[0090] 然后,判断是否接收到ACK(第1确认响应)(步骤S804),在接收到ACK之前重复本步骤,在接收到ACK的情况下,转移到步骤S805。
[0091] 然后,判断在步骤S804接收到的ACK的序列号是否比上次接收到的ACK的序列号超前(步骤S805)。在ACK的序列号超前的情况下,转移到步骤S806。在ACK的序列号未超前的情况下,结束超时重发处理。
[0092] 在步骤S806中,暂时保存重发超时时间。这是因为,在后述的步骤S809中判断为超时不是假超时的情况下,使在后述的步骤S808增加的重发超时时间复原。
[0093] 在步骤S807中,判断在发送部101所执行的段的重发是否是第n次以下的重发(是否执行了回退处理)。在是第n次以下的重发的情况下,不执行回退处理,因而使重发超时时间增加(步骤S808),转移到步骤S809。在不是第n次以下的重发的情况下,由于已在步骤S802执行了回退处理,因而不执行任何处理而转移到步骤S809。另外,在重发超时时间增加部105中执行上述步骤S807和步骤S808。
[0094] 然后,判断超时是否是假超时(S809)。在不是假超时的情况下,使用在步骤S806暂时保存的重发超时时间,使在步骤S808增加的重发超时时间恢复到原来时间(步骤S810)。在是假超时的情况下,结束超时重发处理。另外,步骤S809的处理由假超时判定部104执行,然而假超时判定部104可以根据在步骤S805中ACK的序列号比上次接收到的ACK的序列号超前、以及在该ACK的下次接收到的ACK(第2确认响应)的序列号比上次接收到的ACK的序列号超前,判定为所发生的重发超时是假超时。
[0095] (通信方法)
[0096] 在上述的通信系统中,实现以下的通信方法。即,实现这样的通信方法,该通信方法依次进行数据段的发送和其确认响应的接收,可抑制使数据段的重发时的重发超时时间增加的回退算法的应用,而且控制重发超时时间来进行数据段的重发,其特征在于,所述通信方法包含:假超时判定步骤(例如对应于图8中的步骤S809),根据在数据段刚重发后接收到的确认响应判定假超时;以及重发超时时间增加步骤(例如对应于图8中的步骤S808),在由所述假超时判定步骤判定为发生了假超时的情况下,使所述重发超时时间增加。
[0097] 根据该通信方法,在数据段的重发时抑制了回退算法的应用的情况下,而且在发生了假超时的情况下,可以使重发超时时间增加。由此,在抑制了回退算法的应用的情况下,一旦发生了假超时,能避免之后也连续发生假超时的事态。
[0098] (总结)
[0099] 如以上说明那样,根据本发明,在数据段的重发时抑制了回退算法的应用的情况下,一旦发生了假超时,能避免之后也连续发生假超时的事态。并且,特别是,在重发超时时间被设定为比RTT小的值的情况下,容易发生假超时,因而本发明是更有效的。
[0100] 并且,在上述说明中,主要假定在假超时检测中使用F-RTO算法的情况,然而即使在使用其它算法的情况下,只要是根据在数据段刚重发后接收到的第1确认响应发送新的段的算法,也会同样产生假超时的连续发生的课题,因而在这样的情况下,本发明也能取得相同效果。即,本发明并不限定于采用F-RTO的情况。
[0101] 标号说明
[0102] 1:无线网络;10:服务器装置;101:发送部;102:超时判断部;103:重发部;104:假超时判定部;105:重发超时时间增加部;11:CPU;12:非易失性存储装置;121:通信程序;13:RAM;14:网络接口;20:无线控制装置;30:通信终端;31:无线接口;32:IP处理部;
33:TCP处理部;34:应用处理部。
QQ群二维码
意见反馈