CN101682611B - 在物理传输介质中断时改善tcp数据传输进程的方法 - Google Patents

在物理传输介质中断时改善tcp数据传输进程的方法 Download PDF

Info

Publication number
CN101682611B
CN101682611B CN2008800117681A CN200880011768A CN101682611B CN 101682611 B CN101682611 B CN 101682611B CN 2008800117681 A CN2008800117681 A CN 2008800117681A CN 200880011768 A CN200880011768 A CN 200880011768A CN 101682611 B CN101682611 B CN 101682611B
Authority
CN
China
Prior art keywords
client
server
data
message
ack
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.)
Expired - Fee Related
Application number
CN2008800117681A
Other languages
English (en)
Other versions
CN101682611A (zh
Inventor
雷米·克莱奥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Deutsche Telekom AG
Original Assignee
T Mobile International AG
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by T Mobile International AG filed Critical T Mobile International AG
Publication of CN101682611A publication Critical patent/CN101682611A/zh
Application granted granted Critical
Publication of CN101682611B publication Critical patent/CN101682611B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/06Transport layer protocols, e.g. TCP [Transport Control Protocol] over wireless

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

一种当物理传输介质发生中断时改善TCP数据传输进程的方法,其中,客户端(10)和服务器(12)之间的TCP连接建立后,从服务器(12)向客户端(10)传送一个数据分组,其中,客户端(10)通过传送一个分配给该数据分组的确认消息,ACK消息,来确认从服务器(12)收到了该数据分组,其中,当客户端(10)传送ACK消息时,启动一个默认时间为T1的定时器(14),且如果客户端(10)在时间T1到时后仍没有从服务器(12)接收到后续数据分组,则将ACK消息重复发送至服务器(12)。

Description

在物理传输介质中断时改善TCP数据传输进程的方法
本发明涉及一种在物理传输介质中断时改善TCP数据传输进程的方法。 
当前,许多数据通信应用,如互联网连接或EMAIL,通常都将传输控制协议(TCP)与互联网协议(IP)同时使用。 
TCP是一关于数据是如何在通信参与者,通常是计算机,之间交换的协定(协议)。所有现代计算机的操作系统都熟知TCP并且将其用于与其他计算机间的数据传输。其是互联网协议族的成员之一,互联网的基础。与无连接UDP(用户数据表协议)不同,TCP在一网络连接的两个端点(接口)之间构建一虚拟信道。数据可以在此信道上双向传输。在大多数情况下,TCP依赖于IP(互联网协议),这就是为什么经常有TCP/IP协议这样的说法。其位于OSI参考模型的第四层。 
需要被传输的数据被分成小的分组(IP数据分组)并被传输。TCP标准所定义的原理保证在传输中丢失的分组以及没有被确收的分组会被重新传输。 
 如图2所示,根据TCP原理,一个数据接收设备,即所谓的客户端10,以及一个数据提供设备,即所谓的服务器12间的连接发生。客户端10发起连接并从服务器12提取数据。服务器12使得数据可用并负责将数据全部传送至客户端10。为了建立一个连接,客户端首先向服务器12传送一个请求消息,SYN。服务器12通过一确认消息SYN ACK作出应答。客户端10继而类似的发出一确认消息ACK。在建立一个TCP连接的过程中,用到了一种所谓的三向握手。希望建立连接的通信参与者,在此即客户端10,向另一方发送一个带有一个序列码的SYN分组(从同步)。在此过程中,这些序列码对于为一个完整的传输作按照正确顺序的且无重复的备份是重要的。问题是一个分组的SYN比特被设置在分组报头中。起始序列码可以是任何码——通常是依据各TCP实现而产生的随机选择的码。 
目标设备,在此是服务器12,接收该分组并送上一单独的SYN分组作为对该起始序列码的回答,该单独的分组也同样是随机的且独立于客户端10的起始序列码的。同时,所述服务器通过将客户端的序列码加一以对该第一SYN分组进行确收并将其在报头的ACK部分送回。客户端10最终通过将其自身的ACK分组发送至服务器来对该SYNACK分组进行确收。该进程也被称为“前向确收”。连接就这样建立了。 
在此时连接建立且服务器向客户端发送预定义数量的数据分组。数据分组的数量是在客户端与服务器此前在建立连接时商定的。这样数据分组传送完毕后,在此为数据n和数据n+1,客户端通过一额外的”ACK”消息作为响应,在此为ACK n+2,并借此 给出下次希望接受哪些数据分组这样的信息。服务器12等待此来自客户端的“ACK n+2”消息。当服务器接收到该“ACK n+2”消息后,服务器向客户端10传送下一组数据分组。 
图3和5中示出了TCP连接的中断。如果,例如,服务器12在一个预定义的等待时间段Tw内没有接收到该“ACK n+2”消息,则所述服务器再次传送上一个没有被客户端确收的数据分组,即本例中的数据n+1。此包括等待以及在必要时重复发送数据分组的程序被多次重复。客户端10的等待数据时间随着重复次数的增加而增长。典型的是,服务器12在开始时等待“ACK n+2”消息几秒(例如2至3秒)。继而,由于等待时间段通常在两次重复之间加倍,因此会将等待时间段Tw增加大约一分钟。 
图4表示了连接断开的控制,连接断开的发生于连接建立相似。不同于SYN比特,这里使用FIN比特,该比特为客户端10指出再没有数据发自服务器12。对该分组的确收由客户端10通过ACK完成。FIN分组的接收者最后代表自己发送一个FIN分组,该分组也被确收。 
尽管实际上使用了四向,在断开连接时还是三向握手,因为从服务器至客户端的ACK和FIN操作被归类为一向。此外,缩短的时间方法是可能的,在此种方法中,ACK以及FIN被精确地打包于同一分组内,就像建立连接时那样。报文段最大生存时间(MSL)是指一个报文段在其被抛弃前能够在网络上停留的最长时间。 
当一个通信订户在一个移动通信网络上使用一个数据通信应用时,例如Email,数据连接被中断的概率远高于例如在固定网络上建立的数据连接。当移动通信网络上的数据连接被中断时,即使物理信道在中断发生后立刻可用,数据连接也一直会处于中断状态直到TCP的重复程序有效并且数据传输被重复。 
US2005/180327A1公开了一种改善TCP数据传送进程的方法,其中在客户端和服务器之间建立TCP连接后,自服务器向客户端传送一数据分组,其中通过由客户端传送一个分配至该数据分组的确认消息,ACK消息,来对发自服务器的该数据分组进行确收。当客户端进行ACK消息传送时,启动一具有默认时间的定时器。如果数据分组没有以正确的顺序被接收,则由客户端将该同一ACK消息,即所谓的“重复确认”(DUPACK),重复传送至服务器。 
李东旭等人的“针对TCP性能提升的延迟-重复ACH(DDA)算法已克服在移动IPv6的快速切换中的分组顺序紊乱”的论文公开了一种类似的方法,该论文公开于:XP010695590,第98至103页,2004年3月23至24日,2004年第24届日本东京八王子市分布式计算系统作坊学报。 
关于此命题的其他文献还包括金如淳等人在US2006/067222A1以及XP010677302,第3673-3677页,2003年12月1日,卷7,世界通信2003-IEEE-世界通信会议,上发表的文章“在代理服务器中考虑伪超时以改善无线网络中的TCP性能”。 
本发明的目的在于提出一种当物理传输介质发生中断时,改进TCP数据传输进程的方法。结果是,当物理介质发生中断时,TCP连接恢复所用的时间应该减小。 
该任务通过权利要求1所记载的发明的特征得以解决。 
从属权利要求中记载了本发明的优选实施方式,以及附加的有一特点。 
按照本发明,当传送ACK消息时,在客户端启动一默认时间为T1的计时器,并且,如果在时间T1过后客户端没有从服务器接收到其他数据分组,则向服务器重复的发送相同的该ACK消息。 
本发明因此基于这样的事实,即客户端识别到来自服务器的数据流被中断,且从而以相对高的重复频率向服务器再次传送上一个ACK消息。服务器则能够立刻对此作出相应并继续数据传送。 
这样,对同一ACK消息的重复传送就成为可能,条件是客户端保存每个“ACK”消息至少直至一个ACK消息必须被重发。 
优选的是,时间T1,即等待来自服务器的数据时间,可以由客户端设定。 
对于无问题的建立连接流程和断开连接流程,在连接和建立和断开过程中不启动定时器。 
进一步的,需要规定的是,在客户端同一SYN消息的重复传送次数由一计数器C1进行计数。当超过一默认阈值后,就不再向服务器发送具有相同内容的SYN消息。 
本发明的有益效果是显而易见的: 
到目前为止,在发生物理介质的中断后,对终端用户的数据传输一直中断直到TCP标准中定义的重复程序开始执行。这需要好几秒。通过本发明,在物理介质重新可用后数据传输还处于中断的时间得到减小。该时间由定时器的值T1确定且可以由终端用户设定。如果客户端识别到数据传输结束,则客户端不在使用上述程序。 
本设备或者依据本发明的方法可以安装于一个移动通信网络上的代理服务器上并且通过该移动通信网络控制。 
下面,将结合附图对本发明作进一步说明。本发明的其他特征以及有益效果将通过附图以及后续说明变得显而易见。 
图1简要示出了在发生物理传送介质中断时TCP数据传输进程的根据本发明的过程。 
图2简要示出了建立TCP连接的过程(现有技术) 
图3简要示出了TCP连接中断的过程(现有技术)。 
图4简要示出了断开TCP连接的过程(现有技术)。 
图5简要示出了发生物理传送介质中断时TCP数据传输进程的标准过程(现有技术)。 
图2至5已经在说明书的概述部分进行了阐述。在此引入相应段落。 
根据本发明的方法,对连接的建立以及连接的断开的检测没有发生变化,仍如上面基于图2至4的表述。TCP标准中的定义是,一个连接的建立由客户端10通过发送一个IP分组而起始,在此情况下,“SYN”比特设置于TCP部分中。服务器12继而应答一个分组,该分组中“SYN”和“ACK”比特设置于该分组的TCP部分中。该客户端10继而应答一个分组,该分组中“ACK”设置于TCP部分中。当这三条消息在客户端10和服务器12间传输完毕后,就开始实际的数据传送。 
在数据传送结束时,服务器12在最后一个数据分组中设置一个“Fin”比特。客户端继而传送一个ACK。为了实施本发明,客户端使用该信息停止对数据传送的检测。连接此后默认断开。 
借助图1可以注意到,为了检测数据流的中断,按照本发明在客户端10上安装了一个定时器14以监测该连接。该定时器14的设定时间T1是可调的。定时器14仅在实际数据传送时被使用,在连接建立和连接断开阶段则不使用。 
一旦客户端10通过”ACK”消息确认连接的建立,定时器14就被启动,当收到ACK消息之后的来自服务器的数据定时器即停止。 
如果在时间段T1内没有从服务器12接收到数据(在此为数据n+1),客户端即认为数据流被中断并且触发一预定义的动作。根据本发明,客户端10保存每个发送至服务器的“ACK”至少直至从服务器12接收到了后续数据并需要发送新的ACK消息。 
客户端10的这一数据流中断时的预定义动作的目的是快速恢复连接。如果发送”新”的ACK消息,则先前存储的ACK消息即被删除并被新的所代替。如果客户端10已经注意到,由于T1已经因没有从服务器12收到数据而过期,而使得数据流(数据n+1)被中断,则客户端10将最后一个存储的“ACK”消息再次发送到服务器12并再等待一段时间T1以确定是否从服务器12接收到了数据。 
另外,在客户端可以实现一个计数器16用来计算在发生数据传输中断时,向服务器12发送同样的ACK消息的次数。如果计数器16达到一个预设的阈值,则客户端10就停止重复发送ACK消息。这样就可以应用传统的TCP标准了。 

Claims (4)

1.一种当物理传输介质发生中断时改善TCP数据传输进程的方法,其中,客户端(10)和服务器(12)之间的TCP连接建立后,从服务器(12)向客户端(10)传送一个数据分组,其中,客户端(10)通过传送一个分配给该数据分组的确认消息,ACK消息,来确认从服务器(12)收到了该数据分组,其中,当客户端(10)传送ACK消息时,启动一个默认时间为T1的定时器(14),
其特征在于:
如果客户端(10)在时间T1到时后仍没有从服务器(12)接收到后续数据分组,则将ACK消息重复发送至服务器(12);其中客户端(10)对每个经传送的“ACK”消息进行存储至少直至一个ACK消息必须被重发;其中在建立连接或清除连接的过程中定时器(14)不被激活。
2.根据权利要求1所述的方法,其特征在于:能够在客户端(10)对时间T1进行设置。
3.根据权利要求1或2所述的方法,其特征在于:在客户端(10)的重复传送同一ACK消息的次数通过一个计数器(16)进行计数,且当其超过一默认的阈值时,就不再向服务器(12)发送具有相同内容的后续ACK消息了。
4.根据权利要求1所述的方法,其特征在于:该方法安装于移动通信网络的一个代理服务器上并从移动通信网络进行控制。
CN2008800117681A 2007-03-07 2008-02-28 在物理传输介质中断时改善tcp数据传输进程的方法 Expired - Fee Related CN101682611B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102007011071.7 2007-03-07
DE102007011071A DE102007011071B4 (de) 2007-03-07 2007-03-07 Verfahren zur Verbesserung eines TCP Datenübertragungsprozesses im Fall einer Unterbrechung des physikalischen Übertragungsmediums
PCT/EP2008/001585 WO2008107115A2 (de) 2007-03-07 2008-02-28 Verfahren zur verbesserung eines tcp datenübertragungsprozesses im fall einer unterbrechung des physikalischen übertragungsmediums

Publications (2)

Publication Number Publication Date
CN101682611A CN101682611A (zh) 2010-03-24
CN101682611B true CN101682611B (zh) 2012-11-28

Family

ID=39677883

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008800117681A Expired - Fee Related CN101682611B (zh) 2007-03-07 2008-02-28 在物理传输介质中断时改善tcp数据传输进程的方法

Country Status (13)

Country Link
US (1) US8341272B2 (zh)
EP (1) EP2145445B1 (zh)
JP (1) JP5185955B2 (zh)
KR (1) KR101430032B1 (zh)
CN (1) CN101682611B (zh)
AT (1) ATE481811T1 (zh)
BR (1) BRPI0808656A2 (zh)
DE (2) DE102007011071B4 (zh)
ES (1) ES2352587T3 (zh)
HR (1) HRP20100688T1 (zh)
PL (1) PL2145445T3 (zh)
SI (1) SI2145445T1 (zh)
WO (1) WO2008107115A2 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IES20050376A2 (en) 2005-06-03 2006-08-09 Asavie R & D Ltd Secure network communication system and method
US20110078313A1 (en) * 2009-09-30 2011-03-31 St-Ericsson Sa Method and system for managing a connection in a connection oriented in-order delivery environment
US20110078255A1 (en) * 2009-09-30 2011-03-31 Andrei Radulescu Method and system for managing a connection in a connection oriented in-order delivery environment
US8706889B2 (en) * 2010-09-10 2014-04-22 International Business Machines Corporation Mitigating connection identifier collisions in a communication network
US8774208B2 (en) 2011-09-14 2014-07-08 Qualcomm Incorporated Management of TCP/IP messaging in wireless networks
CN102546659B (zh) * 2012-02-21 2015-07-08 上海交通大学 面向远过程调用的持久tcp连接方法
CN103475530A (zh) * 2012-06-06 2013-12-25 深圳市腾讯计算机系统有限公司 一种互联网中的测速方法和装置
WO2018155406A1 (ja) 2017-02-27 2018-08-30 日本電気株式会社 通信システム、通信装置、方法およびプログラム
TWI692233B (zh) * 2018-12-19 2020-04-21 財團法人工業技術研究院 基於用戶資料報協定及傳輸控制協定之協同傳輸方法及傳輸裝置
CN112019306B (zh) * 2019-05-28 2022-02-18 上海华为技术有限公司 一种数据重传方法以及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1906591A (zh) * 2004-01-16 2007-01-31 思科技术公司 使用复制确认和重组间隙方法防止网络数据注入攻击

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3003095B1 (ja) * 1998-10-22 2000-01-24 株式会社超高速ネットワーク・コンピュータ技術研究所 フロー制御方法
EP1278348A1 (en) * 2001-07-17 2003-01-22 Alcatel Long-lived TCP connection using ICMP messages in wireless mobile communications
US7007107B1 (en) * 2001-10-22 2006-02-28 United Electronic Industries Methods and apparatus for performing data acquisition and control
JP3637389B2 (ja) * 2001-11-21 2005-04-13 独立行政法人情報通信研究機構 パケット通信方法及び提案ノード
KR100787294B1 (ko) * 2001-12-26 2007-12-20 엘지노텔 주식회사 이동 통신 기지국의 티씨피 성능 향상 장치
JP2005167352A (ja) * 2003-11-28 2005-06-23 Ntt Docomo Inc 送信装置およびプログラム
US7382733B2 (en) 2004-02-12 2008-06-03 International Business Machines Corporation Method for handling reordered data packets
US7477675B2 (en) 2004-09-30 2009-01-13 Kyocera Corporation Data communication apparatus
JP4364763B2 (ja) * 2004-09-30 2009-11-18 京セラ株式会社 データ通信装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1906591A (zh) * 2004-01-16 2007-01-31 思科技术公司 使用复制确认和重组间隙方法防止网络数据注入攻击

Also Published As

Publication number Publication date
HRP20100688T1 (hr) 2011-01-31
PL2145445T3 (pl) 2011-03-31
KR101430032B1 (ko) 2014-09-19
JP5185955B2 (ja) 2013-04-17
ES2352587T3 (es) 2011-02-21
US8341272B2 (en) 2012-12-25
EP2145445B1 (de) 2010-09-15
WO2008107115A3 (de) 2008-11-20
EP2145445A2 (de) 2010-01-20
DE102007011071B4 (de) 2009-06-18
ATE481811T1 (de) 2010-10-15
KR20100084118A (ko) 2010-07-23
DE102007011071A1 (de) 2008-09-11
SI2145445T1 (sl) 2011-01-31
CN101682611A (zh) 2010-03-24
JP2010520687A (ja) 2010-06-10
BRPI0808656A2 (pt) 2014-08-19
DE502008001336D1 (de) 2010-10-28
US20100115102A1 (en) 2010-05-06
WO2008107115A2 (de) 2008-09-12

Similar Documents

Publication Publication Date Title
CN101682611B (zh) 在物理传输介质中断时改善tcp数据传输进程的方法
Flach et al. Reducing web latency: the virtue of gentle aggression
Savage et al. TCP congestion control with a misbehaving receiver
US8553572B2 (en) Internet protocol optimizer
US6646987B1 (en) Method and system for transmission control protocol (TCP) packet loss recovery over a wireless link
US9571409B2 (en) Maximum transmission unit negotiation method and data terminal
CN114666831A (zh) 一种基于流编码和带宽估计驱动的分组传输方法及其系统
CN106330406A (zh) 一种基于tcp的数据传输方法及装置
JP7067544B2 (ja) 通信システム、通信装置、方法およびプログラム
EP3417585B1 (en) Terminal and communication method thereof
CN109088828A (zh) 服务器过载控制方法及系统
JP2000207298A (ja) ファイル転送方法
JP2001168871A (ja) データ転送方式
CN106100797B (zh) 一种基于ltp异步加速重传策略的深空文件传输方法
JP2008085950A (ja) Tcpを用いたレート制御方法、サーバ及びプログラム
KR100913897B1 (ko) 재전송 타임아웃 수를 줄이기 위한 전송 제어 프로토콜혼잡제어방법
KR20000025309A (ko) 폭주 방지를 위한 윈도우 관리 방법
EP1733527B1 (en) Technique for handling outdated information units
KR19980025600A (ko) 웹(Web)기술을 이용한 기술적 여론 관리 장치에서 서비스 품질에 따른 데이터 처리 방법
CN112738096A (zh) 一种高效可靠的数据传输方法及系统
CN118018621A (zh) 一种基于云渲染多端实时状态同步与通信优化的方法
CN117692367A (zh) 一种rdp冗余数据传输方法
CN116418892A (zh) 基于udp的数据安全传输方法及系统
KR20010045532A (ko) 전송 제어 프로토콜의 재전송 알고리즘 개선 방법
KR20010113124A (ko) 패킷 전송을 위한 메시지 처리방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20121128

CF01 Termination of patent right due to non-payment of annual fee