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

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

Info

Publication number
CN101682611A
CN101682611A CN200880011768A CN200880011768A CN101682611A CN 101682611 A CN101682611 A CN 101682611A CN 200880011768 A CN200880011768 A CN 200880011768A CN 200880011768 A CN200880011768 A CN 200880011768A CN 101682611 A CN101682611 A CN 101682611A
Authority
CN
China
Prior art keywords
client
server
data
ack message
message
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
Application number
CN200880011768A
Other languages
English (en)
Other versions
CN101682611B (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的重复程序有效并且数据传输被重复。
本发明的目的在于提出一种当物理传输介质发生中断时,改善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 (11)

1.一种在物理传输介质发生中断时改善TCP数据传输进程的方法,其中,客户端(10)和服务器(12)之间的TCP连接建立后,从服务器(12)向客户端(10)传送一个数据分组,其中,客户端(10)通过传送一个分配给该数据分组的确认消息,ACK消息,来确认从服务器(12)收到了该数据分组,其中,当客户端(10)传送ACK消息时,启动一个默认时间为T1的定时器(14),且如果客户端(10)在时间T1到时后仍没有从服务器(12)接收到后续数据分组,则将ACK消息重复发送至服务器(12)。
2.根据权利要求1所述的方法,其特征在于:客户端(10)对每个经传送的“ACK”消息进行存储至少直至一个ACK消息必须被重发。
3.根据权利要求1或2所述的方法,其特征在于:能够在客户端(10)对时间T1进行设置。
4.根据权利要求1至3中任意一项所述的方法,其特征在于:在建立连接或清除连接的过程中定时器(14)不被激活。
5.根据权利要求1至4中任意一项所述的方法,其特征在于:在客户端(10)的重复传送同一ACK消息的次数由一个计数器(16)进行计数,且当其超过一默认的阈值时,就不再向服务器(12)发送具有相同内容的后续ACK消息了。
6.根据权利要求1至5中任意一项所述的方法,其特征在于:该方法安装于移动通信网络的一个代理服务器上并通过移动通信网络进行控制。
7.一种装置,用于实施权利要求1至5中任意一项的当物理传输介质发生中断时改善TCP数据传输进程的方法,其特征在于:在客户端(10)安装有一个定时器(14)用于记录从服务器(12)发出的数据传输的中断。
8.根据权利要求7所述的装置,其特征在于:在客户端设置一计数器(16)用于对向服务器(12)传送的具有相同内容的ACK消息进行计数。
9.根据权利要求7或8所述的装置,其特征在于:该装置安装于移动通信网络的一个代理服务器上,且能够通过移动通信网络进行控制。
10.一种数据处理程序,其具有一程序代码,该程序代码在一数据处理装置上执行根据权利要求1至6中任意一项的方法。
11.一种数据处理程序产品,其包括可在一数据处理装置上执行用于实施根据权利要求1至6中任意一项的方法的程序代码。
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 true CN101682611A (zh) 2010-03-24
CN101682611B 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)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103475530A (zh) * 2012-06-06 2013-12-25 深圳市腾讯计算机系统有限公司 一种互联网中的测速方法和装置
WO2020238285A1 (zh) * 2019-05-28 2020-12-03 华为技术有限公司 一种数据重传方法以及装置

Families Citing this family (8)

* 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连接方法
WO2018155406A1 (ja) 2017-02-27 2018-08-30 日本電気株式会社 通信システム、通信装置、方法およびプログラム
TWI692233B (zh) * 2018-12-19 2020-04-21 財團法人工業技術研究院 基於用戶資料報協定及傳輸控制協定之協同傳輸方法及傳輸裝置

Family Cites Families (10)

* 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 送信装置およびプログラム
CN1906884B (zh) * 2004-01-16 2012-09-05 思科技术公司 防止网络数据注入攻击
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 京セラ株式会社 データ通信装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103475530A (zh) * 2012-06-06 2013-12-25 深圳市腾讯计算机系统有限公司 一种互联网中的测速方法和装置
WO2020238285A1 (zh) * 2019-05-28 2020-12-03 华为技术有限公司 一种数据重传方法以及装置

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
CN101682611B (zh) 2012-11-28
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
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
CN101682611A (zh) 在物理传输介质中断时改善tcp数据传输进程的方法
Savage et al. TCP congestion control with a misbehaving receiver
US6141785A (en) Error control method for multiparty multimedia communications
CN103339910A (zh) 通过基于远程过程调用的通信协议的全双工双向通信、及其应用
EP2866395B1 (en) Maximum transmission unit negotiation method and data terminal
CN106685748B (zh) 一种心跳信息发送方法、服务器及终端
CN104038845A (zh) 报文传输方法及装置
CN105262836A (zh) 服务器推送信息的方法及客户端接收推送信息的方法
CN106330406A (zh) 一种基于tcp的数据传输方法及装置
CN109560897B (zh) 一种tcp重传方法和装置
CN114363351B (zh) 一种代理连接抑制方法、网络架构及代理服务器
US7000024B1 (en) Systems and methods for providing transmission control protocol communications
US8762449B2 (en) Method of downloading large size data to a large number of networked client machines from a single server
US10728131B2 (en) Terminal and communication method thereof
JP2000207298A (ja) ファイル転送方法
JP2000022744A (ja) パケット通信システム、パケット通信装置及びパケット通信方法
CN116132001A (zh) 一种丢包重传方法
CN109088828A (zh) 服务器过载控制方法及系统
JP4627290B2 (ja) Tcpを用いたレート制御方法、サーバ及びプログラム
CN108270523B (zh) 带内密钥协商传输方法及传输系统
JP2004187099A (ja) 通信制御方法、通信システム及び通信装置
EP1733527B1 (en) Technique for handling outdated information units
KR101933175B1 (ko) 서버와 클라이언트간 통신을 중개하는 중개장치
KR19980025600A (ko) 웹(Web)기술을 이용한 기술적 여론 관리 장치에서 서비스 품질에 따른 데이터 처리 방법
CN112738096A (zh) 一种高效可靠的数据传输方法及系统

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