專利名稱:通信裝置和通信方法
技術(shù)領(lǐng)域:
本發(fā)明涉及在經(jīng)由網(wǎng)絡(luò)發(fā)送數(shù)據(jù)的情況下發(fā)生了重發(fā)超時(shí)時(shí)的重發(fā)控制方法。
背景技術(shù):
在會(huì)發(fā)生數(shù)據(jù)缺失的通信網(wǎng)中進(jìn)行數(shù)據(jù)收發(fā)的情況下,為了從發(fā)送裝置向接收裝置發(fā)送全部數(shù)據(jù),有時(shí)檢測(cè)在通信網(wǎng)中數(shù)據(jù)缺失的可能性,從發(fā)送裝置進(jìn)行缺失數(shù)據(jù)的再次發(fā)送。在互聯(lián)網(wǎng)等的基于IP (Internet Protocol,互聯(lián)網(wǎng)協(xié)議)的網(wǎng)絡(luò)中,在無缺失地收發(fā)數(shù)據(jù)時(shí)一般使用的TCP (Transmission Control Protocol,傳輸控制協(xié)議)中,發(fā)送裝置依次截出發(fā)送數(shù)據(jù)的部分?jǐn)?shù)據(jù),生成向所截出的部分?jǐn)?shù)據(jù)賦予了包含序列號(hào)的頭的每發(fā)送單位的數(shù)據(jù)(以下稱為“段”),將所生成的段按照序列號(hào)小的順序發(fā)送。此時(shí),發(fā)送裝置記錄段的發(fā)送時(shí)刻相關(guān)的信息,并具有在一定時(shí)間內(nèi)不能接收到針對(duì)所發(fā)送的段的來自接收裝置的ACI^ACKnowledgement,確認(rèn))的情況下進(jìn)行段的重發(fā)的重發(fā)控制功能。該一定時(shí)間作為重發(fā)超時(shí)時(shí)間預(yù)先保持在發(fā)送裝置內(nèi),根據(jù)在發(fā)送裝置和接收裝置之間的RTT(Roimd Trip Time,往返時(shí)間)的測(cè)定結(jié)果進(jìn)行更新(非專利文獻(xiàn)1)。并且, 包含有指數(shù)回退算法,即,當(dāng)進(jìn)行了重發(fā)時(shí),將重發(fā)超時(shí)時(shí)間設(shè)定2倍的值,避免由重發(fā)引起的網(wǎng)絡(luò)的擁塞(非專利文獻(xiàn)2)。并且,與有線數(shù)據(jù)鏈路不同,無線數(shù)據(jù)鏈路上的吞吐量大幅變動(dòng)。因此,在數(shù)據(jù)鏈路中,存在如RLC(Radic) Link Control,無線鏈路控制)協(xié)議那樣、規(guī)定了數(shù)據(jù)幀的重發(fā)的通信協(xié)議。在將RLC那樣的、規(guī)定了數(shù)據(jù)幀的重發(fā)的數(shù)據(jù)鏈路應(yīng)用于TCP的下位層的情況下,在數(shù)據(jù)鏈路上數(shù)據(jù)幀缺失而進(jìn)行重發(fā)的狀況從TCP作為RTT的增大被掌握。如果數(shù)據(jù)鏈路的重發(fā)繼續(xù)有限時(shí)間,則在該重發(fā)的繼續(xù)時(shí)間中不能確認(rèn)數(shù)據(jù)幀的到達(dá)的情況下,發(fā)生數(shù)據(jù)幀的缺失,也就是說段的缺失,因而TCP中的RTT也自然地根據(jù)數(shù)據(jù)鏈路上的重發(fā)繼續(xù)時(shí)間被提供上限。著眼于該TCP中的RTT的上限的存在,提出了一種享有以下兩方面的優(yōu)點(diǎn)的方法 通過將重發(fā)發(fā)生前的重發(fā)超時(shí)時(shí)間設(shè)定為考慮了 RTT的上限的值來抑制在數(shù)據(jù)鏈路上重發(fā)繼續(xù)中的TCP重發(fā);以及通過在第η次之前的段重發(fā)時(shí)不進(jìn)行指數(shù)回退而決定重發(fā)超時(shí)時(shí)間,并從第η+1次以后應(yīng)用指數(shù)回退算法來回退由重發(fā)引起的擁塞(專利文獻(xiàn)1)。然而,在RTT根據(jù)時(shí)刻變動(dòng)的網(wǎng)絡(luò)環(huán)境中,有時(shí)在TCP的重發(fā)控制中的重發(fā)超時(shí)時(shí)間小于實(shí)際的RTT。當(dāng)重發(fā)超時(shí)時(shí)間小于RTT時(shí),盡管在發(fā)送裝置和接收裝置之間段不缺失,也有時(shí)發(fā)生段的重發(fā)。發(fā)生這樣的段重發(fā)的狀況被稱為假超時(shí),會(huì)成為通信的吞吐量下降的要因。作為用于檢測(cè)該假超時(shí)的方法之一,有F-RTO O^orward RTO-Recovery,轉(zhuǎn)發(fā)RTO 恢復(fù))。在F-RTO中,在發(fā)送裝置中,在重發(fā)計(jì)時(shí)器終止(以下稱為“超時(shí)”)的情況下,按照序列號(hào)小的順序發(fā)送2個(gè)新的未發(fā)送段,根據(jù)在這些段的發(fā)送后最初從接收裝置接收到的ACK的內(nèi)容,判定超時(shí)是由段的缺失引起,還是由假超時(shí)引起。具體地說,在根據(jù)接收到的ACK進(jìn)行了接收確認(rèn)的段的序列號(hào)比根據(jù)上次接收到的ACK進(jìn)行了接收確認(rèn)的段的序列號(hào)超前的情況下,判定為是由假超時(shí)引起,在不是這樣的情況下,判定為是由段的缺失引起。在判定為是由假超時(shí)引起的情況下,照原樣繼續(xù)后續(xù)的段的發(fā)送,在判定為是由段的缺失引起的情況下,重發(fā)所缺失的段,由接收裝置接收,之后進(jìn)行后續(xù)的段的發(fā)送(非專利文獻(xiàn)3) ο并且,在將規(guī)定了數(shù)據(jù)幀的重發(fā)的數(shù)據(jù)鏈路用于TCP的下位層的情況下,如果接收裝置中的蓄積重發(fā)幀的緩存器尺寸足夠大,則不發(fā)生數(shù)據(jù)鏈路上的幀的缺失,因而即使將重發(fā)超時(shí)時(shí)間設(shè)定得比RTT的上限小,發(fā)生假超時(shí)的可能性也一味地增加,沒有重發(fā)回復(fù)契機(jī)提前的效果。然而,實(shí)際上,蓄積重發(fā)幀的緩存器尺寸是有限的,當(dāng)將超過緩存器尺寸的幀輸入到數(shù)據(jù)鏈路時(shí),將進(jìn)行數(shù)據(jù)的廢棄。也就是說,這意味著,盡管具有通過將重發(fā)超時(shí)時(shí)間設(shè)定得比TCP中的RTT的上限小而使假超時(shí)增加的缺點(diǎn),然而獲得重發(fā)回復(fù)契機(jī)提前的優(yōu)點(diǎn)。這里,可容易想象出,通過使專利文獻(xiàn)1記載的現(xiàn)有技術(shù)涉及的發(fā)送裝置與非專利文獻(xiàn)3記載的現(xiàn)有技術(shù)簡(jiǎn)單組合,可在減輕假超時(shí)發(fā)生的缺點(diǎn)的同時(shí),使重發(fā)回復(fù)契機(jī)提前。專利文獻(xiàn)1 日本特開2005-236961號(hào)公報(bào)1 :J. Postel, "Transmission Control Protocol-DARPA Internet Program Protocol Specification,,,RFC793, September 1981非專利文獻(xiàn) 2 :R. Braden, "Requirements for Internet Hosts-Communication Layers", RFC1122, October 19893 :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然而,通過使專利文獻(xiàn)1記載的發(fā)送裝置與非專利文獻(xiàn)3記載的F-RTO算法簡(jiǎn)單組合的情況下,具有以下的問題。圖9是說明現(xiàn)有技術(shù)中的問題的圖。另外,在圖9中,以采用延遲ACK方式作為前提。首先,從發(fā)送側(cè)終端向接收側(cè)終端發(fā)送段1、段2(S901、S901,),假定與此對(duì)應(yīng)的來自接收側(cè)終端的ACK2(S902)是在發(fā)送段1(S901)后經(jīng)過重發(fā)超時(shí)時(shí)間即時(shí)間tKTO之后接收到(假超時(shí)的發(fā)生)。在該情況下,由于超時(shí)發(fā)生而從發(fā)送側(cè)終端重發(fā)段1 (S903),在針對(duì)重發(fā)超時(shí)時(shí)間抑制了回退算法的應(yīng)用的情況下,此時(shí)的重發(fā)超時(shí)時(shí)間為tKTO。然后,根據(jù)F-RTO算法,在接收到ACK2(S9(^)之后,發(fā)送2個(gè)未發(fā)送段即段5和段6 (S904、S905),在這些段的發(fā)送后, 如果最初接收的ACK(S906)的序列號(hào)超前,則判斷為最初的段1(S901)的超時(shí)是假超時(shí),如果序列號(hào)未超前,則判斷為是由段的缺失等引起的超時(shí)。如圖9所示,在接收到的ACK是 ACK4(S906)的情況下,序列號(hào)超前,因而判斷為段1(S901)的超時(shí)是假超時(shí)。然而,在針對(duì)重發(fā)超時(shí)時(shí)間抑制了回退算法的應(yīng)用的情況下,關(guān)于段5的發(fā)送 (S904),也將時(shí)間tKTQ設(shè)定為重發(fā)超時(shí)時(shí)間,因而針對(duì)段5(和段6)的ACK6(S907)也為假超時(shí)的可能性高,在為假超時(shí)的情況下,發(fā)生段5的重發(fā)(S908),然后發(fā)送作為未發(fā)送段的段 7 和段 8(S909、S910)。這里,在段5的重發(fā)(S908)中的重發(fā)超時(shí)時(shí)間是測(cè)定從段4的發(fā)送到返回 ACK4(S906)的RTT來更新的,然而在重發(fā)超時(shí)時(shí)間tKTO小于RTT的情況下,而且在例如時(shí)間tKTO是重發(fā)超時(shí)時(shí)間的最小值的情況下,段5 (S908)的重發(fā)超時(shí)時(shí)間t’KTO為tKTO < t'ET0 <RTT,因而段5(S908)也為假超時(shí)的可能性高。以后,同樣連續(xù)發(fā)生假超時(shí)。S卩,在使專利文獻(xiàn)1記載的發(fā)送裝置與F-RTO算法簡(jiǎn)單組合的情況下,當(dāng)發(fā)生了一次假超時(shí)時(shí),具有之后連續(xù)發(fā)生假超時(shí)的問題。也就是說,當(dāng)在重發(fā)超時(shí)時(shí)間小于RTT的狀況下發(fā)生了假超時(shí)時(shí),發(fā)送裝置發(fā)送2個(gè)新的未發(fā)送段,然而這里當(dāng)不回退重發(fā)超時(shí)時(shí)間而設(shè)定小的值時(shí),重復(fù)這樣的動(dòng)作接收與最初為假超時(shí)的段對(duì)應(yīng)的ACK,在重發(fā)回復(fù)后針對(duì)該新的未發(fā)送段發(fā)生假超時(shí),再發(fā)送2個(gè)新的未發(fā)送段。并且,關(guān)于該問題,不僅在假超時(shí)的檢測(cè)中采用F-RTO算法的情況下,而且在使用其它算法的情況下,只要是根據(jù)成為超時(shí)的段重發(fā)后的最初的ACK的接收發(fā)送1個(gè)以上的未發(fā)送段的算法,就會(huì)產(chǎn)生同樣的問題。
發(fā)明內(nèi)容
因此,本發(fā)明的目的是解決上述問題,提供在抑制由假超時(shí)引起的吞吐量下降的同時(shí)、使重發(fā)發(fā)生時(shí)的重發(fā)回復(fù)契機(jī)提前的通信裝置和通信方法。為了達(dá)到上述目的,本發(fā)明提出了一種通信裝置,該通信裝置依次進(jìn)行數(shù)據(jù)段的發(fā)送及其確認(rèn)響應(yīng)的接收,能夠抑制使數(shù)據(jù)段的重發(fā)時(shí)的重發(fā)超時(shí)時(shí)間增加的回退算法的應(yīng)用,且控制重發(fā)超時(shí)時(shí)間來進(jìn)行數(shù)據(jù)段的重發(fā),其特征在于,該通信裝置具有假超時(shí)判定單元,其根據(jù)在數(shù)據(jù)段剛重發(fā)后接收到的確認(rèn)響應(yīng)判定假超時(shí);以及重發(fā)超時(shí)時(shí)間增加單元,其在由所述假超時(shí)判定單元判定為發(fā)生了假超時(shí)的情況下,使所述重發(fā)超時(shí)時(shí)間增加。根據(jù)該結(jié)構(gòu),在數(shù)據(jù)段的重發(fā)時(shí)抑制了回退算法的應(yīng)用的情況下,而且在發(fā)生了假超時(shí)的情況下,可以使重發(fā)超時(shí)時(shí)間增加。由此,在抑制了回退算法的應(yīng)用的情況下,一旦發(fā)生了假超時(shí),能避免之后也連續(xù)發(fā)生假超時(shí)的事態(tài)。并且,優(yōu)選的是,對(duì)所述確認(rèn)響應(yīng)分別賦予了序列號(hào),在所述數(shù)據(jù)段剛重發(fā)后接收到的第1確認(rèn)響應(yīng)的序列號(hào)比上次接收到的確認(rèn)響應(yīng)的序列號(hào)超前且在剛接收到所述第1 確認(rèn)響應(yīng)后接收到的第2確認(rèn)響應(yīng)的序列號(hào)比上次接收到的確認(rèn)響應(yīng)的序列號(hào)超前的情況下,所述假超時(shí)判定單元判定為發(fā)生了假超時(shí)。根據(jù)該結(jié)構(gòu),根據(jù)在所述數(shù)據(jù)段剛重發(fā)后的確認(rèn)響應(yīng),判定所發(fā)生的超時(shí)是否是假超時(shí),可使重發(fā)超時(shí)時(shí)間增加。由此,在抑制了回退算法的應(yīng)用的情況下,一旦發(fā)生了假超時(shí),能避免之后也連續(xù)發(fā)生假超時(shí)的事態(tài)。并且,優(yōu)選的是,在抑制了所述回退算法的應(yīng)用的情況下,所述重發(fā)超時(shí)時(shí)間增加單元使發(fā)送根據(jù)在所述數(shù)據(jù)段剛重發(fā)后接收到的第1確認(rèn)響應(yīng)發(fā)送的至少一個(gè)新的數(shù)據(jù)段時(shí)的所述重發(fā)超時(shí)時(shí)間增加。根據(jù)該結(jié)構(gòu),針對(duì)在第1確認(rèn)響應(yīng)的接收后發(fā)送的至少1個(gè)新數(shù)據(jù)段,可使重發(fā)超時(shí)時(shí)間增加。由此,能回退由于F-RTO算法等而使根據(jù)第1確認(rèn)響應(yīng)發(fā)送的新數(shù)據(jù)段成為假超時(shí),能回退連續(xù)發(fā)生假超時(shí)的事態(tài)。并且,優(yōu)選的是,所述重發(fā)超時(shí)時(shí)間增加單元使所述重發(fā)超時(shí)時(shí)間成為2倍。
根據(jù)該結(jié)構(gòu),由于可使數(shù)據(jù)段重發(fā)時(shí)的重發(fā)超時(shí)時(shí)間為2倍,因而在抑制了回退算法的應(yīng)用的情況下,一旦發(fā)生了假超時(shí),能避免之后也連續(xù)發(fā)生假超時(shí)的事態(tài)的可能性更高。并且,優(yōu)選的是,所述假超時(shí)判定單元由F-RTO算法進(jìn)行所述判定。根據(jù)該結(jié)構(gòu),在數(shù)據(jù)段的重發(fā)時(shí)抑制了回退算法、而且使用F-RTO檢測(cè)出假超時(shí)的情況下,可使數(shù)據(jù)段重發(fā)時(shí)的重發(fā)超時(shí)時(shí)間增加。由此,在抑制了回退算法的應(yīng)用的情況下,一旦發(fā)生了假超時(shí),能避免之后也連續(xù)發(fā)生假超時(shí)的事態(tài)。并且,本發(fā)明提出了一種通信方法,該通信方法依次進(jìn)行數(shù)據(jù)段的發(fā)送及其確認(rèn)響應(yīng)的接收,能夠抑制使數(shù)據(jù)段的重發(fā)時(shí)的重發(fā)超時(shí)時(shí)間增加的回退算法的應(yīng)用,且控制重發(fā)超時(shí)時(shí)間來進(jìn)行數(shù)據(jù)段的重發(fā),其特征在于,所述通信方法具有假超時(shí)判定步驟(例如對(duì)應(yīng)于圖8中的步驟S809),根據(jù)在數(shù)據(jù)段剛重發(fā)后接收到的確認(rèn)響應(yīng)判定假超時(shí);以及重發(fā)超時(shí)時(shí)間增加步驟(例如對(duì)應(yīng)于圖8中的步驟S808),在由所述假超時(shí)判定步驟判定為發(fā)生了假超時(shí)的情況下,使所述重發(fā)超時(shí)時(shí)間增加。根據(jù)該結(jié)構(gòu),在數(shù)據(jù)段的重發(fā)時(shí)抑制了回退算法的應(yīng)用的情況下,而且在發(fā)生了假超時(shí)的情況下,可以使重發(fā)超時(shí)時(shí)間增加。由此,在抑制了回退算法的應(yīng)用的情況下,一旦發(fā)生了假超時(shí),能避免之后也連續(xù)發(fā)生假超時(shí)的事態(tài)。如以上說明那樣,根據(jù)本發(fā)明,在數(shù)據(jù)段的重發(fā)時(shí)抑制了回退算法的應(yīng)用的情況下,而且在發(fā)生了假超時(shí)的情況下,一旦發(fā)生了假超時(shí),能避免之后也連續(xù)發(fā)生假超時(shí)的事態(tài)。
圖1是示出本實(shí)施方式涉及的通信裝置中的動(dòng)作的圖。圖2是示出本實(shí)施方式涉及的通信系統(tǒng)的結(jié)構(gòu)例的圖。圖3是示出本實(shí)施方式涉及的通信系統(tǒng)中的協(xié)議堆棧的圖。圖4是示出由段的缺失引起的重發(fā)的具體例的圖。圖5是示出本實(shí)施方式涉及的服務(wù)器裝置的結(jié)構(gòu)例的框圖。圖6是示出本實(shí)施方式涉及的通信終端的結(jié)構(gòu)例的框圖。圖7是示出本實(shí)施方式涉及的服務(wù)器裝置中的處理流程的流程圖。圖8是示出超時(shí)重發(fā)處理流程的流程圖。圖9是說明現(xiàn)有技術(shù)中的問題的圖。
具體實(shí)施例方式以下,參照
本發(fā)明的實(shí)施方式。(動(dòng)作概要)首先,參照?qǐng)D1說明本實(shí)施方式涉及的通信裝置中的動(dòng)作概要。另外,在圖1中, 以采用延遲ACK方式作為前提。最初,從發(fā)送側(cè)終端(對(duì)應(yīng)于本實(shí)施方式涉及的通信裝置)向接收側(cè)終端發(fā)送段 1、段2 (S101、S101’),當(dāng)假定與此對(duì)應(yīng)的來自接收側(cè)終端的ACK2是在發(fā)送段1 (SlOl)后經(jīng)過重發(fā)超時(shí)時(shí)間即時(shí)間tKTO之后接收到時(shí)(假超時(shí)的發(fā)生),從發(fā)送側(cè)終端針對(duì)重發(fā)超時(shí)時(shí)
6間抑制回退算法的應(yīng)用,重發(fā)段1(S103)。然后,根據(jù)F-RTO算法,在接收到ACK2(S102)之后,發(fā)送新的未發(fā)送段即段5和段6 (S104),然而通過使此時(shí)的重發(fā)超時(shí)時(shí)間為例如2倍而使其增加,可避免與段5 (和段6)對(duì)應(yīng)的ACK6(S106)為假超時(shí)。(通信裝置的結(jié)構(gòu))下面,參照?qǐng)D2說明包含本實(shí)施方式涉及的通信裝置即服務(wù)器裝置的通信系統(tǒng)的結(jié)構(gòu)例。圖2所示的通信系統(tǒng)由以下構(gòu)成服務(wù)器裝置10,無線網(wǎng)絡(luò)1,無線控制裝置20,以及通信終端30。并且,圖3是示出本實(shí)施方式涉及的通信系統(tǒng)中的協(xié)議堆棧的圖。L1、L2 分別相當(dāng)于OSI (Open Systems hterconnection,開放式系統(tǒng)互聯(lián))參考模型中的物理層、 數(shù)據(jù)鏈接層,IP相當(dāng)于網(wǎng)絡(luò)層,TCP相當(dāng)于傳送層。即,服務(wù)器裝置10和通信終端30根據(jù)位于OSI參考模型的傳送層的TCP進(jìn)行通信。在TCP中,進(jìn)行等待表示每次發(fā)送數(shù)據(jù)都可靠接收到數(shù)據(jù)的ACK的通信,即確認(rèn)型通信?;氐綀D2,無線網(wǎng)絡(luò)1具體地說是例如與無線LAN連接的WAN或LAN、移動(dòng)電話系統(tǒng)的交換網(wǎng)絡(luò)和與其連接的WAN或LAN、互聯(lián)網(wǎng)。服務(wù)器裝置10經(jīng)由無線網(wǎng)絡(luò)1和無線控制裝置20向通信終端30傳遞數(shù)據(jù)。并且,服務(wù)器裝置10具有發(fā)送部101,超時(shí)判斷部102,重發(fā)部103,假超時(shí)判定部104,以及重發(fā)超時(shí)時(shí)間增加部105。該服務(wù)器裝置10使用例如服務(wù)器、工作站來實(shí)現(xiàn)。發(fā)送部101將把發(fā)送數(shù)據(jù)分割為多個(gè)而生成的段經(jīng)由無線網(wǎng)絡(luò)1發(fā)送到通信終端 30。對(duì)段附加包含序列號(hào)的頭,按序列號(hào)小的順序發(fā)送到通信終端30。當(dāng)從發(fā)送部101發(fā)送了段時(shí),超時(shí)判斷部102保持其發(fā)送時(shí)刻,在從發(fā)送時(shí)刻起一定時(shí)間內(nèi),即在重發(fā)超時(shí)時(shí)間內(nèi)未接收到針對(duì)該段的ACK的情況下,判斷為發(fā)生了超時(shí)。另外,在重發(fā)超時(shí)時(shí)間的值被設(shè)定為小于RTT的值的情況下,容易發(fā)生假超時(shí),因而在該情況下特別是,本發(fā)明涉及的通信裝置的重發(fā)控制是有效的。在超時(shí)判斷部102中判斷為發(fā)生了超時(shí)的情況下,重發(fā)部103在第η次(η是正整數(shù))的重發(fā)之前對(duì)重發(fā)超時(shí)時(shí)間不應(yīng)用回退算法,在超過第η次的重發(fā)中對(duì)重發(fā)超時(shí)時(shí)間應(yīng)用回退算法,將超時(shí)的段重發(fā)到發(fā)送部101?;赝怂惴ㄊ鞘苟沃匕l(fā)時(shí)的重發(fā)超時(shí)時(shí)間增加的算法,代表性的有使重發(fā)超時(shí)時(shí)間以指數(shù)函數(shù)方式增加的指數(shù)回退算法。假超時(shí)判定部104根據(jù)在段剛重發(fā)后接收到的確認(rèn)響應(yīng),判定在超時(shí)判斷部102 中產(chǎn)生的超時(shí)是否是假超時(shí)?!按_認(rèn)響應(yīng)”是表示在通信終端30中可接收到從服務(wù)器裝置 10所發(fā)送的段的信息,具體地說相當(dāng)于TCP/IP中的ACK等。(假超時(shí)判定部)在由重發(fā)部103重發(fā)的段剛重發(fā)后接收到的第1確認(rèn)響應(yīng)的序列號(hào)比上次接收到的確認(rèn)響應(yīng)的序列號(hào)超前且在剛接收到所述第1確認(rèn)響應(yīng)后接收到的第2確認(rèn)響應(yīng)的序列號(hào)比上次接收到的確認(rèn)響應(yīng)的序列號(hào)超前的情況下,假超時(shí)判定部104判定為發(fā)生了假超時(shí)。例如,在圖1的例子中,在針對(duì)從發(fā)送部101所發(fā)送的段I(SlOl)發(fā)生了假超時(shí)的情況下,在超時(shí)發(fā)生后,通過重發(fā)部103從發(fā)送部101重發(fā)超時(shí)的段1(S103),之后,接收針對(duì)最初的段的第1確認(rèn)響應(yīng)即ACK2(S102)。在該情況下,接收到的確認(rèn)響應(yīng)ACKl的序列號(hào)比上次接收到的確認(rèn)響應(yīng)的序列號(hào)超前。在接收到的確認(rèn)響應(yīng)的序列號(hào)未超前的情況下, 該確認(rèn)響應(yīng)不是針對(duì)最初的段的確認(rèn)響應(yīng),而是在此以前所發(fā)送的段的重復(fù)ACK等。
然而,即使假定這里的確認(rèn)響應(yīng)的序列號(hào)超前,也不能僅根據(jù)第一點(diǎn)立即說所發(fā)生的超時(shí)是假超時(shí)。原因是,如圖4所示,即使在段2、段3由于某種原因而缺失的情況下 (S401、S402),在段1剛重發(fā)(S403)后接收的確認(rèn)響應(yīng)即ACKl (S404)的序列號(hào)也超前。因此,假超時(shí)判定部104進(jìn)一步檢查在剛接收到該第1確認(rèn)響應(yīng)后接收的第2 確認(rèn)響應(yīng)的序列號(hào)是否超前。這里,第2確認(rèn)響應(yīng)相當(dāng)于圖1中的ACK4或圖4中的重復(fù) ACKl (S405)。如圖1所示,在最初的段的超時(shí)是假超時(shí)的情況下,該第2確認(rèn)響應(yīng)是ACK4, 序列號(hào)超前。另一方面,如圖4所示,在由于段缺失而為超時(shí)的情況下,該第2確認(rèn)響應(yīng)是重復(fù)ACK(S405),因而序列號(hào)不超前。從以上來看,在超時(shí)的段剛重發(fā)后接收到的第1確認(rèn)響應(yīng)的序列號(hào)比上次接收到的確認(rèn)響應(yīng)的序列號(hào)超前的情況下,而且在剛接收到該第1確認(rèn)響應(yīng)后接收到的第2確認(rèn)響應(yīng)的序列號(hào)超前的情況下,假超時(shí)判定部104判定為超時(shí)是假超時(shí)。(重發(fā)超時(shí)時(shí)間增加部)回到圖2,在由假超時(shí)判定部104判定為發(fā)生了假超時(shí)的情況下,重發(fā)超時(shí)時(shí)間增加部105使重發(fā)超時(shí)時(shí)間增加。按何種比例增加可以例如如指數(shù)回退算法那樣為2倍,也可以按其它比例。并且,更具體地說,在針對(duì)重發(fā)超時(shí)時(shí)間抑制了所述回退算法的應(yīng)用的情況下,重發(fā)超時(shí)時(shí)間增加部105使發(fā)送根據(jù)在由重發(fā)部103剛進(jìn)行的段重發(fā)后接收到的第1確認(rèn)響應(yīng)發(fā)送的至少一個(gè)新的數(shù)據(jù)段時(shí)的重發(fā)超時(shí)時(shí)間增加。這里,只限于回退算法的應(yīng)用被抑制的情況如在圖9中所說明那樣,本發(fā)明要解決的課題是,在重發(fā)超時(shí)時(shí)間經(jīng)過后接收到最初的第1確認(rèn)響應(yīng)的情況下,避免由于之后發(fā)送的新的未發(fā)送段在相同的重發(fā)超時(shí)時(shí)間被發(fā)送而再次為超時(shí)。因此,在未發(fā)送段的發(fā)送時(shí)應(yīng)用回退算法的情況下,無需再使重發(fā)超時(shí)時(shí)間增加,這是因?yàn)橹挥性诓粦?yīng)用回退算法的情況下,才可以使重發(fā)超時(shí)時(shí)間增加。并且,根據(jù)在由重發(fā)部103剛進(jìn)行的段重發(fā)后接收到的第1確認(rèn)響應(yīng)而發(fā)送的至少一個(gè)新的數(shù)據(jù)段在圖1的例子中相當(dāng)于段5(S104)或段6(S105)。另外,在圖1中發(fā)送2個(gè)新的數(shù)據(jù)段(S104、S105),然而即使在發(fā)送僅一個(gè)數(shù)據(jù)段的情況下,本發(fā)明也能取得相同效果。另外,在圖2中示出服務(wù)器裝置10和通信終端30進(jìn)行通信的情況,然而可以是取代服務(wù)器裝置10而通過TCP通信在通信終端30進(jìn)行數(shù)據(jù)發(fā)送的通信設(shè)備,也可以是例如移動(dòng)電話終端等。(服務(wù)器裝置的具體結(jié)構(gòu))這里,說明本實(shí)施方式涉及的服務(wù)器裝置10的更具體的結(jié)構(gòu)例。圖5是示出服務(wù)器裝置10的結(jié)構(gòu)例的框圖。參照?qǐng)D5,服務(wù)器裝置10具有CPU (Central Processing Unit,中央處理單元)11,非易失性存儲(chǔ)裝置12,RAM (Random Access Memory,隨機(jī)存取存儲(chǔ)器)13,以及網(wǎng)絡(luò)接口 14。服務(wù)器裝置10與一般的計(jì)算機(jī)一樣由CPUll將RAM13作為工作區(qū)來執(zhí)行存儲(chǔ)在非易失性存儲(chǔ)裝置12內(nèi)的程序,進(jìn)行各種處理。非易失性存儲(chǔ)裝置12是即使不供給電源也保持存儲(chǔ)的存儲(chǔ)裝置,例如是ROM (Read Only Memory,只讀存儲(chǔ)器)、閃存、強(qiáng)電介質(zhì)存儲(chǔ)器、磁阻存儲(chǔ)器、磁盤、光盤、磁帶等。在非易失性存儲(chǔ)裝置12內(nèi)存儲(chǔ)有用于進(jìn)行程序執(zhí)行處理的控制程序(未圖示)、和用于根據(jù)TCP進(jìn)行通信處理的通信程序121。并且,在通信程序121內(nèi)包含有與上述的發(fā)送部101、超時(shí)判斷部102、重發(fā)部103、假超時(shí)判定部104、重
8發(fā)超時(shí)時(shí)間增加部105對(duì)應(yīng)的模塊,根據(jù)需要,各模塊被寫入在RAM13內(nèi)并由CPUll執(zhí)行。 并且,網(wǎng)絡(luò)接口 14是用于進(jìn)行與無線網(wǎng)絡(luò)1的數(shù)據(jù)收發(fā)的有線或無線的通信接口。(無線控制裝置)回到圖2,無線控制裝置20經(jīng)由無線鏈路與通信終端30連接,作為通信終端30 和無線網(wǎng)絡(luò)1之間的無線接口執(zhí)行功能。具體地說,無線控制裝置20例如是無線LAN的 AP(Access Point,接入點(diǎn))、移動(dòng)電話系統(tǒng)的RAN(I adio Access Network,無線接入網(wǎng)絡(luò))。(通信終端)通信終端30接收從服務(wù)器裝置10發(fā)送的段。具體地說,通信終端30例如是具有移動(dòng)電話終端、無線通信功能的PC (個(gè)人計(jì)算機(jī))。(通信終端的具體結(jié)構(gòu))下面,說明本實(shí)施方式涉及的通信終端30的更具體的結(jié)構(gòu)例。圖6是示出通信終端30的結(jié)構(gòu)例的框圖。參照?qǐng)D6,通信終端30具有無線接口 31,IP處理部32,TCP處理部33,以及應(yīng)用處理部34。無線接口 31作為與無線網(wǎng)絡(luò)1的接口執(zhí)行功能。具體地說,無線接口 31具有天線、高頻處理部以及基帶處理部(未圖示)等。IP處理部32根據(jù)從無線網(wǎng)絡(luò)1所分配的IP地址、或者針對(duì)通信終端30由用戶所設(shè)定的唯一地址,在無線網(wǎng)絡(luò)1中被識(shí)別。TCP處理部33執(zhí)行重發(fā)控制或擁塞控制。由此,能進(jìn)行可靠性更高的通信。應(yīng)用處理部;34具有執(zhí)行Web瀏覽器、FTP (File Transfer Protocol,文件傳送協(xié)議)客戶機(jī)、郵件客戶機(jī)等、用戶利用的應(yīng)用的功能。(服務(wù)器裝置的處理流程)圖7是示出本實(shí)施方式涉及的服務(wù)器裝置10的處理流程的流程圖。最初,從服務(wù)器裝置10的發(fā)送部101向通信終端30發(fā)送數(shù)據(jù)段(步驟S701)。然后,在超時(shí)判斷部102中,判斷針對(duì)在步驟S701所發(fā)送的數(shù)據(jù)段是否發(fā)生了超時(shí)(步驟S702)。在發(fā)生了超時(shí)的情況下,即在重發(fā)超時(shí)時(shí)間內(nèi)未接收到來自通信終端30 的ACK的情況下,轉(zhuǎn)移到超時(shí)重發(fā)處理(S70;3)。在未發(fā)生超時(shí)的情況下,即在重發(fā)超時(shí)時(shí)間內(nèi)接收到來自通信終端30的ACK的情況下,結(jié)束處理。然后,在步驟S703中執(zhí)行超時(shí)重發(fā)處理。另外,關(guān)于超時(shí)重發(fā)處理在后面描述。(超時(shí)重發(fā)處理)下面,使用圖8說明超時(shí)重發(fā)處理的具體例。圖8是示出超時(shí)重發(fā)處理流程的流程圖。該超時(shí)重發(fā)處理是在圖7的步驟S703執(zhí)行的處理。最初,通過重發(fā)部103,從發(fā)送部101重發(fā)超時(shí)的段(步驟S801)。然后,判斷步驟S801中的重發(fā)是否是第η次以下的重發(fā)(步驟S802)。在是第η 次以下的重發(fā)的情況下,針對(duì)重發(fā)超時(shí)時(shí)間不執(zhí)行回退處理,因而直接轉(zhuǎn)移到步驟S804。在不是第η次以下的重發(fā)的情況下(即在是第η+1次以上的重發(fā)的情況下),針對(duì)重發(fā)超時(shí)時(shí)間執(zhí)行回退處理,因而使重發(fā)超時(shí)時(shí)間增加(步驟S803),轉(zhuǎn)移到步驟S804。另外,在重發(fā)超時(shí)時(shí)間增加部105中執(zhí)行上述步驟S802和步驟S803。然后,判斷是否接收到ACK (第1確認(rèn)響應(yīng))(步驟S804),在接收到ACK之前重復(fù)本步驟,在接收到ACK的情況下,轉(zhuǎn)移到步驟S805。
然后,判斷在步驟S804接收到的ACK的序列號(hào)是否比上次接收到的ACK的序列號(hào)超前(步驟S8(^)。在ACK的序列號(hào)超前的情況下,轉(zhuǎn)移到步驟S806。在ACK的序列號(hào)未超前的情況下,結(jié)束超時(shí)重發(fā)處理。在步驟S806中,暫時(shí)保存重發(fā)超時(shí)時(shí)間。這是因?yàn)椋诤笫龅牟襟ES809中判斷為超時(shí)不是假超時(shí)的情況下,使在后述的步驟S808增加的重發(fā)超時(shí)時(shí)間復(fù)原。在步驟S807中,判斷在發(fā)送部101所執(zhí)行的段的重發(fā)是否是第η次以下的重發(fā) (是否執(zhí)行了回退處理)。在是第η次以下的重發(fā)的情況下,不執(zhí)行回退處理,因而使重發(fā)超時(shí)時(shí)間增加(步驟S808),轉(zhuǎn)移到步驟S809。在不是第η次以下的重發(fā)的情況下,由于已在步驟S802執(zhí)行了回退處理,因而不執(zhí)行任何處理而轉(zhuǎn)移到步驟S809。另外,在重發(fā)超時(shí)時(shí)間增加部105中執(zhí)行上述步驟S807和步驟S808。然后,判斷超時(shí)是否是假超時(shí)(S809)。在不是假超時(shí)的情況下,使用在步驟S806 暫時(shí)保存的重發(fā)超時(shí)時(shí)間,使在步驟S808增加的重發(fā)超時(shí)時(shí)間恢復(fù)到原來時(shí)間(步驟 S810)。在是假超時(shí)的情況下,結(jié)束超時(shí)重發(fā)處理。另外,步驟S809的處理由假超時(shí)判定部 104執(zhí)行,然而假超時(shí)判定部104可以根據(jù)在步驟S805中ACK的序列號(hào)比上次接收到的ACK 的序列號(hào)超前、以及在該ACK的下次接收到的ACK (第2確認(rèn)響應(yīng))的序列號(hào)比上次接收到的ACK的序列號(hào)超前,判定為所發(fā)生的重發(fā)超時(shí)是假超時(shí)。(通信方法)在上述的通信系統(tǒng)中,實(shí)現(xiàn)以下的通信方法。即,實(shí)現(xiàn)這樣的通信方法,該通信方法依次進(jìn)行數(shù)據(jù)段的發(fā)送和其確認(rèn)響應(yīng)的接收,可抑制使數(shù)據(jù)段的重發(fā)時(shí)的重發(fā)超時(shí)時(shí)間增加的回退算法的應(yīng)用,而且控制重發(fā)超時(shí)時(shí)間來進(jìn)行數(shù)據(jù)段的重發(fā),其特征在于,所述通信方法包含假超時(shí)判定步驟(例如對(duì)應(yīng)于圖8中的步驟S809),根據(jù)在數(shù)據(jù)段剛重發(fā)后接收到的確認(rèn)響應(yīng)判定假超時(shí);以及重發(fā)超時(shí)時(shí)間增加步驟(例如對(duì)應(yīng)于圖8中的步驟S808),在由所述假超時(shí)判定步驟判定為發(fā)生了假超時(shí)的情況下,使所述重發(fā)超時(shí)時(shí)間增加。根據(jù)該通信方法,在數(shù)據(jù)段的重發(fā)時(shí)抑制了回退算法的應(yīng)用的情況下,而且在發(fā)生了假超時(shí)的情況下,可以使重發(fā)超時(shí)時(shí)間增加。由此,在抑制了回退算法的應(yīng)用的情況下,一旦發(fā)生了假超時(shí),能避免之后也連續(xù)發(fā)生假超時(shí)的事態(tài)。(總結(jié))如以上說明那樣,根據(jù)本發(fā)明,在數(shù)據(jù)段的重發(fā)時(shí)抑制了回退算法的應(yīng)用的情況下,一旦發(fā)生了假超時(shí),能避免之后也連續(xù)發(fā)生假超時(shí)的事態(tài)。并且,特別是,在重發(fā)超時(shí)時(shí)間被設(shè)定為比RTT小的值的情況下,容易發(fā)生假超時(shí),因而本發(fā)明是更有效的。并且,在上述說明中,主要假定在假超時(shí)檢測(cè)中使用F-RTO算法的情況,然而即使在使用其它算法的情況下,只要是根據(jù)在數(shù)據(jù)段剛重發(fā)后接收到的第1確認(rèn)響應(yīng)發(fā)送新的段的算法,也會(huì)同樣產(chǎn)生假超時(shí)的連續(xù)發(fā)生的課題,因而在這樣的情況下,本發(fā)明也能取得相同效果。即,本發(fā)明并不限定于采用F-RTO的情況。標(biāo)號(hào)說明1 無線網(wǎng)絡(luò);10 服務(wù)器裝置;101 發(fā)送部;102 超時(shí)判斷部;103 重發(fā)部;104 假超時(shí)判定部;105 重發(fā)超時(shí)時(shí)間增加部;11 =CPU ;12 非易失性存儲(chǔ)裝置;121 通信程序;13:RAM;14:網(wǎng)絡(luò)接口 ;20 無線控制裝置;30 通信終端;31 無線接口 ;32:IP處理部;33 =TCP處理部;34 應(yīng)用處理部。
權(quán)利要求
1.一種通信裝置,其依次進(jìn)行數(shù)據(jù)段的發(fā)送及其確認(rèn)響應(yīng)的接收,能夠抑制使數(shù)據(jù)段的重發(fā)時(shí)的重發(fā)超時(shí)時(shí)間增加的回退算法的應(yīng)用,且控制重發(fā)超時(shí)時(shí)間來進(jìn)行數(shù)據(jù)段的重發(fā),該通信裝置的特征在于,該通信裝置具有假超時(shí)判定單元,其根據(jù)在數(shù)據(jù)段剛重發(fā)后接收到的確認(rèn)響應(yīng)判定假超時(shí);以及重發(fā)超時(shí)時(shí)間增加單元,其在由所述假超時(shí)判定單元判定為發(fā)生了假超時(shí)的情況下, 使所述重發(fā)超時(shí)時(shí)間增加。
2.根據(jù)權(quán)利要求1所述的通信裝置,其特征在于,對(duì)所述確認(rèn)響應(yīng)分別賦予了序列號(hào),在所述數(shù)據(jù)段剛重發(fā)后接收到的第1確認(rèn)響應(yīng)的序列號(hào)比上次接收到的確認(rèn)響應(yīng)的序列號(hào)超前且在剛接收到所述第1確認(rèn)響應(yīng)后接收到的第2確認(rèn)響應(yīng)的序列號(hào)比上次接收到的確認(rèn)響應(yīng)的序列號(hào)超前的情況下,所述假超時(shí)判定單元判定為發(fā)生了假超時(shí)。
3.根據(jù)權(quán)利要求1或2所述的通信裝置,其特征在于,在抑制了所述回退算法的應(yīng)用的情況下,所述重發(fā)超時(shí)時(shí)間增加單元使發(fā)送至少一個(gè)新的數(shù)據(jù)段時(shí)的所述重發(fā)超時(shí)時(shí)間增加,該至少一個(gè)新的數(shù)據(jù)段是根據(jù)在所述數(shù)據(jù)段剛重發(fā)后接收到的第1確認(rèn)響應(yīng)發(fā)送的。
4.根據(jù)權(quán)利要求1至3中任一項(xiàng)所述的通信裝置,其特征在于,所述重發(fā)超時(shí)時(shí)間增加單元使所述重發(fā)超時(shí)時(shí)間成為2倍。
5.根據(jù)權(quán)利要求1至4中任一項(xiàng)所述的通信裝置,其特征在于,所述假超時(shí)判定單元通過F-RTOO^orward RTO-Recovery,轉(zhuǎn)發(fā)RTO恢復(fù))算法進(jìn)行所述判定。
6.一種通信方法,依次進(jìn)行數(shù)據(jù)段的發(fā)送及其確認(rèn)響應(yīng)的接收,能夠抑制使數(shù)據(jù)段的重發(fā)時(shí)的重發(fā)超時(shí)時(shí)間增加的回退算法的應(yīng)用,且控制重發(fā)超時(shí)時(shí)間來進(jìn)行數(shù)據(jù)段的重發(fā),該通信方法的特征在于,該通信方法具有假超時(shí)判定步驟,根據(jù)在數(shù)據(jù)段剛重發(fā)后接收到的確認(rèn)響應(yīng)判定假超時(shí);以及重發(fā)超時(shí)時(shí)間增加步驟,在由所述假超時(shí)判定步驟判定為發(fā)生了假超時(shí)的情況下,使所述重發(fā)超時(shí)時(shí)間增加。
全文摘要
存在這樣的課題在指數(shù)回退算法的抑制中使F-RTO算法簡(jiǎn)單地組合起來的情況下,當(dāng)發(fā)生了一次假超時(shí)時(shí),之后連續(xù)發(fā)生假超時(shí)。為了解決上述課題,本發(fā)明提供一種通信裝置,該通信裝置依次進(jìn)行數(shù)據(jù)段的發(fā)送及其確認(rèn)響應(yīng)的接收,能夠抑制使數(shù)據(jù)段的重發(fā)時(shí)的重發(fā)超時(shí)時(shí)間增加的回退算法的應(yīng)用,而且控制重發(fā)超時(shí)時(shí)間來進(jìn)行數(shù)據(jù)段的重發(fā),其中,根據(jù)在數(shù)據(jù)段剛重發(fā)后接收到的確認(rèn)響應(yīng)判定假超時(shí),在判定為發(fā)生了假超時(shí)的情況下,使重發(fā)超時(shí)時(shí)間增加。
文檔編號(hào)H04L29/08GK102217249SQ20098014533
公開日2011年10月12日 申請(qǐng)日期2009年12月2日 優(yōu)先權(quán)日2008年12月5日
發(fā)明者今井識(shí), 關(guān)口克己, 明地則義 申請(qǐng)人:株式會(huì)社Ntt都科摩