CN101114999A - 数据发送控制方法及数据传输设备 - Google Patents

数据发送控制方法及数据传输设备 Download PDF

Info

Publication number
CN101114999A
CN101114999A CNA2007100453389A CN200710045338A CN101114999A CN 101114999 A CN101114999 A CN 101114999A CN A2007100453389 A CNA2007100453389 A CN A2007100453389A CN 200710045338 A CN200710045338 A CN 200710045338A CN 101114999 A CN101114999 A CN 101114999A
Authority
CN
China
Prior art keywords
ack
data
send
terminal
receiving
Prior art date
Application number
CNA2007100453389A
Other languages
English (en)
Other versions
CN101114999B (zh
Inventor
傅赛香
Original Assignee
上海华为技术有限公司
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 上海华为技术有限公司 filed Critical 上海华为技术有限公司
Priority to CN2007100453389A priority Critical patent/CN101114999B/zh
Publication of CN101114999A publication Critical patent/CN101114999A/zh
Application granted granted Critical
Publication of CN101114999B publication Critical patent/CN101114999B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic regulation in packet switching networks
    • H04L47/10Flow control or congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic regulation in packet switching networks
    • H04L47/10Flow control or congestion control
    • H04L47/19Flow control or congestion control at layers above network layer
    • H04L47/193Flow control or congestion control at layers above network layer at transport layer, e.g. TCP related
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic regulation in packet switching networks
    • H04L47/10Flow control or congestion control
    • H04L47/26Explicit feedback to the source, e.g. choke packet
    • H04L47/263Source rate modification after feedback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic regulation in packet switching networks
    • H04L47/10Flow control or congestion control
    • H04L47/30Flow control or congestion control using information about buffer occupancy at either end or transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic regulation in packet switching networks
    • H04L47/10Flow control or congestion control
    • H04L47/32Packet discarding or delaying
    • H04L47/323Discarding or blocking control packets, e.g. ACK packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic regulation in packet switching networks
    • H04L47/10Flow control or congestion control
    • H04L47/40Using splitted connections, e.g. IP spoofing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Application independent communication protocol aspects or techniques in packet data networks
    • H04L69/16Transmission control protocol/internet protocol [TCP/IP] or user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Application independent communication protocol aspects or techniques in packet data networks
    • H04L69/16Transmission control protocol/internet protocol [TCP/IP] or user datagram protocol [UDP]
    • H04L69/163Adaptation of TCP data exchange control procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic or resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0231Traffic management, e.g. flow control or congestion control based on communication conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic or resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0289Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic or resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints
    • 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

Abstract

本发明涉及无线通信领域,公开了一种数据发送控制方法及数据传输设备。本发明中,接收来自发送端的数据并进行缓存,将缓存的数据发送给接收端;接收接收端返回的表示收到数据的ACK;根据缓存中未发送的数据量对接收端返回的ACK进行增加或删减处理,将处理后的ACK发送给发送端,通过处理后的ACK控制发送端发送数据的速率,使得数据的传输可靠而高效。

Description

数据发送控制方法及数据传输设备

技术领域

本发明涉及无线通信领域,特别涉及数据发送控制技术。 背景技术

传输控制协议(Transmission Control Protocol,简称"TCP")是因特网 和互连网络使用的最基本的一种通信协议。现在已经成为网络通信的一种事 实上的标准。TCP的主要内容是提供进程间的通信机制和保证数据传输的可 靠性。可靠性包括确认信息数据分组的接收、标记分组的序列信息、保证分 组的完整性等,还包括对差错的控制,例如,没有收到确认信息、分组没有 按顺序到达、分组丢失或错投等情况时的处理规则等等。

根据TCP协议分析,TCP发送端能否发送新的数据包以及发送多少数据 包,是由发送窗口控制的,也称拥塞窗口(Congestion Window,简称"cwnd")。 发送窗口的变化主要与发送端接收到的确认信令(Acknowledgement,简称 "ACK")有关。TCP发送端根据收到的ACK中包含的TCP包序号的大小 来控制窗口的右移,根据收到的ACK的个数来控制窗口的增大。举例而言, 如图1所示,TCP发送端收到一个新的ACK,该ACK中包含的TCP包序号 为9,此时,TCP发送端根据收到的ACK中包含的TCP包序号的大小,将 发送窗口右移一个数据包的位置,即右移到10号包的位置,并根据收到的 ACK的个数,将发送窗口增大一个数据包的大小,增大到ll号包的位置。

目前,为了能够更好地保证数据传输的可靠性,已经出现了多种TCP优 化方案,如I-TCP算法,SNOOP和WTCP等,这些TCP优化方案都是通 过在TCP发送端和TCP接收端中间设置一个TCP代理来适配有线链路和无

线链路。如图2所示。

I - TCP算法通过TCP代理将TCP连接分成两段: 一段为有线链接;一 段为无线链接。所以,TCP代理能够事先通过有线链路把数据包从服务器(即 TCP发送端)上取下来緩存在TCP代理中,在TCP代理收到数据包后,代 替终端(即TCP接收端)提前回复ACK,再根据无线链路的变化更快速、 灵活地控制发送速率,达到充分利用空口传输能力的目的。

SNOOP、 WTCP等优化方案在TCP代理实现本地重传、超时重传和发 送窗口机制,尽量避免和減少TCP发送端的重传,或者利用时间戳更准确地 估算环路传输时延,或者以较高的优先级来重传丢失的包,或者通过在TCP 代理实现更合理的控制前向速率算法,对TCP代理的功能进行增强和优化, 以提高TCP性能。

然而,本发明的发明人发现,SNOOP、 WTCP等TCP优化方案存在以 下问题:当无线条件由好变差时,无线链路出现拥塞,由于TCP代理緩存有 限,只能緩存部分发送的数据包,如果服务器发送过多的数据包,TCP代理 就只能丢弃数据包,服务器在探知丢包后进入拥塞避免或者慢启动的状态, 从而影响了性能;当无线条件由差变好时,无线链路的传输能力突然增大, TCP代理快速将緩存中数据发送下去,最终因緩存无数据可发,导致管道被 清空而降低吞吐量。

I - TCP算法虽然可以提升TCP吞吐量,但是由于I - TCP算法提前把服 务器上的数据发送到TCP代理, 一旦切换发生,TCP代理数据来不及发送完 全,会导致数据丢失,而这时服务器由于早就收到TCP代理回送的ACK而 不会产生重传,这样TCP反而成了不可靠地传输;如果在切换时把旧TCP 代理侧的数据同步到新的TCP代理側,则使得切换操作复杂,切换时延大大 增加,甚至会引起上层TCP的连接断开。

总而言之,TCP代理可以控制其下游的前向链路速率,但无法控制其上

游的前向链路速率,即TCP代理无法控制服务器到TCP代理这一段的发送 速率,因此也就无法保证緩存足够的数据包,在无线条件变好后,容易发生 由于没有緩存数据包而不能有效利用无线带宽的情况,使得数据的传输缺乏 效率。

发明内容

本发明实施方式要解决的主要技术问题是提供一种数据发送控制方法 及数据传输设备,使得数据的传输可靠而高效。

为解决上述技术问题,本发明的实施方式提供了 一种数据发送控制方

法,包括以下步骤:

接收来自发送端的数据并进行緩存,将緩存的数据发送给接收端;

接收接收端返回的表示收到数据的确认信令ACK;

根据緩存中未发送的数据量对接收端返回的ACK进行增加或删减处理, 将处理后的ACK发送给发送端,通过处理后的ACK数目控制发送端发送数 据的速率。

本发明的实施方式还提供了一种数据传输设备,包括:

存储单元,用于緩存来自发送端的数据;

第 一发送单元,用于将存储单元中緩存的数据发送给接收端;

接收单元,用于接收接收端返回的表示收到数据的ACK;

处理单元,用于根据存储单元中未发送的数据量对接收单元收到的ACK 进行增加或删减处理;

第二发送单元,用于将处理单元处理后的ACK发送给发送端。

本发明实施方式与现有技术相比,主要区别及其效果在于:

由于发送端是根据收到的ACK的数目来确定发送窗口的大小,因此根 据緩存中未发送的数据量对接收端返回给发送端的ACK进行增加或删除处 理,可以使得发送端的发送窗口大小与缓存的剩余空间大小相对应,使得在 緩存的剩余空间较大时,发送端能够下发更多的数据,提高数据的传输效率。 进一步,由于在本发明的实施方式中,无需代替接收端提前向发送端回复 ACK,从而在接收端(如终端)发生切换时,不会导致数据丟失。

附图说明

图1是现有技术中发送窗口变化的示意图;

图2是现有技术中通过TCP代理来适配有线链路和无线链路的示意图; 图3是根据本发明第一实施方式的数据发送控制方法流程图; 图4是根据本发明第三实施方式的数据传输设备结构图; 图5是根据本发明第三实施方式的数据传输设备中处理单元的示意图。 具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发 明的实施方式作进一步地详细描述。

本发明的第一实施方式涉及一种数据发送控制方法,在本实施方式中, TCP代理接收来自发送端的数据并进行緩存,将緩存的数据发送给接收端。 在接收到接收端返回的ACK后,根据緩存中未发送的数据量对接收端返回 的ACK进行增加或删减处理,将处理后的ACK发送给发送端,通过所发送 的ACK数目控制发送端发送数据的速率。其具体流程如图3所示。

在步骤310中,TCP代理接收来自发送端的数据并将来自发送端的数据 进行緩存,再将緩存的数据发送给接收端。

接着,进入步骤320, TCP代理接收来自接收端的确认信令ACK。也就

是说,接收端收到由TCP代理转发的数据后,向TCP代理发送ACK,表示 接收端已成功收到来自发送端的数据。

接着,进入步骤330, TCP代理根据緩存中未发送的数据量对接收端返 回的确认信令ACK进行处理,并将经处理后的ACK发送给发送端。

具体地说,当TCP代理收到确认信令ACK后,根据緩存中未发送的数 据量对收到的确认信令ACK进行处理。如果緩存中未发送的数据量大于第 一门限,则抛弃接收端返回的至少一个ACK,将未抛弃的ACK发送给发送 端;如果緩存中未发送的数据量小于第二门限,则将接收端返回的至少一个 ACK分割为至少两个,分割得到的一个ACK对应的数据包的序号不变,其 余ACK对应的数据包的序号递减,将分割后的ACK全部发送给发送端。其 中,第二门限小于第一门卩艮;如果TCP代理连续地收到至少三个相同的ACK, 并且緩存中未发送的数据量小于第三门限,则对该ACK进行复制,可以对 所收到的至少三个相同的ACK中的任意一个或多个进行复制,并将复制得 到的ACK全部发送给发送端;如果TCP代理已连续地收到至少三个相同的 ACK,并且緩存中未发送的数据量大于第四门限,则对之后收到的相同的 ACK作选择性抛弃,比如,每收到两个或多个相同的ACK抛弃一个,并将 未抛弃的ACK发送给发送端。其中,第四门限大于第三门限。需要说明的 是,上述的第一门限、第二门限、第三门限和第四门限是TCP代理根据緩存 的大小进行设置的。如果緩存中未发送的数据量不满足上述任一条件,则不 对ACK进行处理,直接将收到的ACK发送给发送端。

比如说,如果緩存中未发送的数据量大于第一门限,即说明前向无线链 路侧带宽相对较窄,则需要控制前向有线链路侧的数据速率。TCP代理可以 对接收端返回的ACK进行有概率的丢弃,仅将未抛弃的ACK发送给发送端, 以适当减少发送端接收到的ACK的数量,间接控制发送窗口的大小来达到 减緩发送数据的速率,将发送端发送的数据量减少到接收端可以接受的范围

内,避免緩存数据溢出。

如果緩存中未发送的数据量小于第二门限,即说明无线链路的传输能力

较强,则需要发送端快速发送数据。TCP代理可以分割接收端返回的ACK, 以适当增加发送端接收到的ACK的数量,并将分割得到的ACK全部发送给 发送端。例如可以将一个ACK分割成三个ACK,其中一个ACK对应的数据 包的序号与原来的一样大,另外两个ACK对应的数据包的序号依次递减, 先将序号较小的ACK传送到发送端,再传送序号较大的ACK,最后传送序 号最大的ACK。通过分割接收端返回的ACK,使得在增加ACK的个数的同 时,不会错误引发快速重传,并且使得发送端的发送窗口快速增长,提高数 据发送频率,提高緩存的数据量,避免因为緩存中没有数据而降低数据传输 的速率。

如果TCP代理已连续地收到至少三个相同的ACK,表示发送端也将进 入快速重传和拥塞避免阶段,发送端的发送窗口将会减小,可能会减小为原 来的一半再加三个报文段。由于发送窗口变小,使得发送端无法发送新数据 包,这样发送速率将会减小,有管道被清空的可能性。在这种情况下,TCP 代理需要根据緩存区的情况进行分别处理,如果緩存中未发送的数据量小于 第三门限,表明緩存区的剩余空间足够大,则TCP代理可以复制一定量的 ACK,然后将所有的ACK全部发送给发送端,以便快速增大发送窗口,促 使重传包和新包继续发送,保证数据传输速率,且不会导致其它数据包的快 速重传,安全、有效地提高了传输效率。如果緩存中未发送的数据量大于第 四门限,表明緩存区的剩余空间不够,则TCP代理选择性抛弃之后收到的部 分或全部重复的ACK,从而减少发送端收到的ACK的数目,控制发送窗口 的增长,避免緩存数据溢出。

由此可见,由于发送端是根据收到的ACK的数目来确定发送窗口的大 小,因此根据緩存中未发送的数据量对接收端返回给发送端的ACK进行增

加或删除处理,可以使得发送端的发送窗口大小与緩存的剩余空间大小相对 应,使得在緩存的剩余空间较大时,发送端能够发送更多的数据,提高数据 的传输效率。并且,由于在本发明的实施方式中,无需代替接收端提前向发

送端回复ACK,从而在接收端(如终端)发生切换时,不会导致数据丢失。

需要说明的是,本实施方式中,根据緩存中未发送的数据量对接收端返

回的ACK进行增加或删减处理的是TCP代理,发送端是网络侧的服务器, 接收端是终端;或者,发送端是终端,接收端是网络侧的服务器。

本发明的第二实施方式同样涉及一种数据发送控制方法,本实施方式与 第一实施方式大致相同,其区别在于,第一实施方式中,根据緩存中未发送 的数据量对接收端返回的ACK进行增加或删减处理的是TCP代理;而在本 实施方式中,发送端是网络侧的服务器,接收端、和根据緩存中未发送的数 据量对接收端返回的ACK进行增加或删减处理的是终端中的不同模块;或 者,发送端是终端,接收端、和根据緩存中未发送的数据量对接收端返回的 ACK进行增加或删减处理的是网络服务器中的不同模块。

可见,以上处理ACK的实体并不局限于是TCP连接的中间节点(比如 TCP代理),也可以是任何TCP接收端,只要能够控制和处理ACK即可。

由于发送端和接收端可以是不同的组合,并且根据緩存中未发送的数据 量对接收端返回的ACK进行增加或删减处理的可以是任何TCP接收端和 TCP中间的连接节点,从而使得本发明的实施方式可灵活实现。

本发明的第三实施方式涉及一种数据传输设备,如图4所示,包括:存 储单元,用于緩存来自发送端的数据;第一发送单元,用于将存储单元中緩 存的数据发送给接收端;接收单元,用于接收该接收端返回的表示收到数据 的ACK;处理单元,用于根据存储单元中未发送的数据量对接收单元收到的 ACK进行增加或删减处理;第二发送单元,用于将处理单元处理后的ACK 发送给发送端,通过处理后的ACK,控制发送端发送数据的速率。

由此可见,根据緩存中未发送的数据量对接收端返回给发送端的ACK

进行增加或删除处理,可以使得发送端的发送窗口大小与緩存的剩余空间大 小相对应,使得在緩存的剩余空间较大时,发送端能够发送更多的数据,提 高数据的传输效率。并且,由于在本发明的实施方式中,无需代替接收端提

前向发送端回复ACK,从而在接收端(如终端)发生切换时,不会导致数据 丢失。

该数据传输设备的处理单元,如图5所示,还可以包括以下子单元:抛 弃子单元,用于抛弃ACK;第一判断子单元,用于判断存储单元中未发送的 数据量是否大于第一门限,如果大于第一门限则指示抛弃子单元抛弃至少一 个接收单元收到的ACK。通过适当减少发送端接收到的ACK的数量,间接 控制发送窗口的大小来达到减緩发送数据速率的目的,将发送端发送的数据 量减少到接收端可以接受的范围内,避免緩存数据溢出。第二发送单元将抛 弃子单元未抛弃的ACK发送给发送端。

该数据传输设备的处理单元还可以包括以下子单元:分割子单元,用于 分割ACK;第二判断子单元,用于判断存储单元中未发送的数据量是否小于 第二门限,如果小于第二门限,则指示分割子单元将接收单元收到的至少一 个ACK分割为至少两个,分割得到的一个ACK对应的数据包的序号不变, 其余ACK对应的数据包的序号递减。通过分割接收端返回的ACK,在增加 ACK的个数的同时,不会错误引发快速重传,并且使得发送端的发送窗口快 速增长,提高数据发送频率,提高緩存的数据量,避免因为緩存中没有数据 而降低数据传输的速率。分割子单元将分割得到的所有ACK输出到第二发 送单元,由第二发送单元将这些ACK发送给发送端。

该数据传输设备的处理单元还可以包括以下子单元:复制子单元,用于 对ACK进行复制;第三判断子单元,用于判断接收单元是否连续地收到至 少三个相同的ACK,且存储单元中未发送的数据量小于第三门限,如果是则

指示复制子单元对上述至少三个ACK中的至少一个进行复制。通过对ACK 进行复制,可以增大发送窗口,加大数据传输的速率,且不会导致其它数据 包的快速重传,安全、有效地提高了传输效率。复制子单元将复制得到的所 有ACK输出到第二发送单元,由第二发送单元将这些ACK发送给发送端。

该数据传输设备的处理单元还包括以下子单元:第四判断子单元,用于 判断接收单元是否已连续地收到至少三个相同的ACK,且存储单元中未发送 的数据量大于第四门限,如果是则指示抛弃子单元对接收单元之后再收到的 相同的ACK进行选择性抛弃,从而减少发送端收到的ACK的数目,控制发 送窗口的增长,避免緩存数据溢出。第二发送单元将抛弃子单元未抛弃的 ACK发送给发送端。

该数据传输设备可以是TCP代理或TCP代理中的单元,该数据传输设 备也可以是网络侧服务器或网络侧服务器中的单元,该数据传输设备还可以 是终端或终端中的单元,使得本发明的实施方式可灵活实现。

另外,值得一提的是,本实施方式中的各单元均为逻辑单元,在实际应 用中,可以有各种不同的物理实现方式。

综上所述,在本发明的实施方式中,由于发送端是根据收到的ACK的 数目来确定发送窗口的大小,因此根据緩存中未发送的数据量对接收端返回 给发送端的ACK进行增加或删除处理,可以使得发送端的发送窗口大小与 緩存的剩余空间大小相对应,使得在緩存的剩余空间较大时,发送端能够下 发更多的数据,提高数据的传输效率。并且,由于在本发明的实施方式中, 无需代替接收端提前向发送端回复ACK,从而在接收端(如终端)发生切换 时,不会导致数据丢失。

如果緩存中未发送的数据量大于第一门限,则抛弃至少一个接收端返回 的ACK,从而减少发送端收到的ACK的数目,控制发送窗口的增长,将发 送端发送的数据量减少到可以接受的范围内,避免緩存数据溢出。

如果緩存中未发送的数据量小于第二门限,则将接收端返回的至少一个

ACK分割为至少两个,从而使得发送端收到的ACK数目增多,增大发送端 的发送窗口,提高数据发送频率,提高緩存的数据量,避免因为緩存中没有 数据而降低数据传输的速率。

分割得到的各ACK中, 一个ACK对应的数据包的序号不变,其余ACK 对应的数据包的序号递减,从而在增加ACK数目的同时,不会错误引发快 速重传。

如果连续地收到至少三个相同的ACK,即至少三个ACK对应的数据包 相同,且该缓存中未发送的数据量小于第三门限,则对上述至少三个ACK 中的至少一个进行复制。由于三个或三个以上相同的ACK会引发发送端进 行快速重传,此时,发送窗口会大幅减小,将会导致数据传输的速率变小, 有信道被清空的可能性。通过对ACK进行复制,可以增大发送窗口,加大 数据传输的速率,且不会导致其它数据包的快速重传,安全、有效地提高了 传输效率。

如果连续地收到至少三个相同的ACK,且缓存中未发送的数据量大于第 四门P艮,则在之后再收到相同的ACK时,对所收到的ACK进行选择性抛弃。 从而减少发送端收到的ACK的数目,控制发送窗口的增长,避免緩存数据 溢出。

虽然通过参照本发明的某些优选实施方式,已经对本发明进行了图示和 描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各 种改变,而不偏离本发明的精神和范围。

Claims (10)

1.一种数据发送控制方法,其特征在于,包括以下步骤: 接收来自发送端的数据并进行缓存,将缓存的数据发送给接收端; 接收所述接收端返回的表示收到所述数据的确认信令ACK; 根据缓存中未发送的数据量对所述接收端返回的ACK进行增加或删减处理,将处理后的ACK发送给所述发送端,通过所述处理后的ACK控制所述发送端发送数据的速率。
2. 根据权利要求1所述的数据发送控制方法,其特征在于,所述根据 緩存中未发送的数据量对所述接收端返回的ACK进行增加或删减处理的步 骤中,包括以下子步骤:如果所述緩存中未发送的数据量大于第一门限,则抛弃至少一个所述接 收端返回的ACK。
3. 根据权利要求1所述的数据发送控制方法,其特征在于,所述根据 緩存中未发送的数据量对所述接收端返回的ACK进行增加或删减处理的步 骤中,包括以下子步骤:如果所述緩存中未发送的数据量小于第二门限,则将至少一个所述接收 端返回的ACK分割为至少两个,分割得到的一个ACK对应的数据包的序号 不变,其余ACK对应的数据包的序号递减。
4. 根据权利要求1所述的数据发送控制方法,其特征在于,所述根据 緩存中未发送的数据量对所述接收端返回的ACK进行增加或删减处理的步 骤中,包括以下子步骤:如果连续地收到至少三个相同的ACK,且所述緩存中未发送的数据量 小于第三门限,则对所述至少三个相同的ACK中的至少一个进行复制;和/ 或如果连续地收到至少三个相同的ACK,且所述緩存中未发送的数据量 大于第四门限,则在之后再收到所述相同的ACK时,对所收到的ACK进行 选择性抛弃。
5. 根据权利要求1至4中任一项所述的数据发送控制方法,其特征在 于,所述数据是TCP数据;所述发送端是网络侧的服务器,所述根据緩存中未发送的数据量对所述 接收端返回的ACK进行增加或删减处理的是传输控制协议TCP代理,所述 接收端是终端;或者所述发送端是终端,所述根据緩存中未发送的数据量对所述接收端返回 的ACK进行增加或删減处理的是传输控制协议TCP代理,所述接收端是网 络侧的服务器;或者所述发送端是网络侧的服务器,所述接收端、和所述根据緩存中未发送 的数据量对所述接收端返回的ACK进行增加或删减处理的是终端中的不同 模块;或者所述发送端是终端,所述接收端、和所述根据緩存中未发送的数据量对 所述接收端返回的ACK进行增加或删减处理的是网络侧服务器中的不同模 块。
6. —种数据传输设备,其特征在于,包括: 存储单元,用于緩存来自发送端的数据;第一发送单元,用于将所述存储单元中緩存的数据发送给接收端;接收单元,用于接收所述接收端返回的表示收到所述数据的ACK;处理单元,用于根据所述存储单元中未发送的数据量对所述接收单元收 到的ACK进行增加或删减处理; 第二发送单元,
7. 根据权利要求6所述的数据传输设备,其特征在于,所述处理单元 包括以下子单元:抛弃子单元,用于抛弃ACK;第一判断子单元,用于判断所述存储单元中未发送的数据量是否大于第 一门限,如果大于第一门限则指示所述抛弃子单元抛弃至少一个所述接收单 元收到的ACK。
8. 根据权利要求6所述的数据传输设备,其特征在于,所述处理单元 包括以下子单元:分割子单元,用于分割ACK;第二判断子单元,用于判断所述存储单元中未发送的数据量是否小于第 二门限,如果小于第二门限,则指示所述分割子单元将所述接收单元收到的 至少 一 个ACK分割为至少两个,分割得到的 一 个ACK对应的数据包的序号 不变,其余ACK对应的数据包的序号递减。
9. 根据权利要求6所述的数据传输设备,其特征在于,所述处理单元 包括以下子单元:复制子单元,用于对ACK进行复制;第三判断子单元,用于判断所述 接收单元是否连续地收到至少三个相同的ACK,且所述存储单元中未发送 的数据量小于第三门限,如果是则指示所述复制子单元对所述至少三个相同 的ACK中的至少一个进行复制;和/或抛弃子单元,用于抛弃ACK;第四判断子单元,用于判断所述接收单 元是否连续地收到至少三个相同的ACK,且所述存储单元中未发送的数据 量大于第四门限,如果是则指示所述抛弃子单元对所述接收单元之后再收到 的所述相同的ACK进行选择性抛弃。
10.根据权利要求6至9中任一项所述的数据传输设备,其特征在于, 所述数据传输设备为TCP代理或TCP代理中的单元;或者所述数据传输设备为网络侧服务器或网络侧服务器中的单元;或者所述数据传输设备为终端或终端中的单元。
CN2007100453389A 2007-08-26 2007-08-26 数据发送控制方法及数据传输设备 CN101114999B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2007100453389A CN101114999B (zh) 2007-08-26 2007-08-26 数据发送控制方法及数据传输设备

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
CN2007100453389A CN101114999B (zh) 2007-08-26 2007-08-26 数据发送控制方法及数据传输设备
ES08800678T ES2394388T3 (es) 2007-08-26 2008-08-26 Method for controlling data delivery and device for transmitting data
PCT/CN2008/072143 WO2009026854A1 (fr) 2007-08-26 2008-08-26 Procédé de commande d'envoi de données et dispositif de transmission de données
EP08800678A EP2154857B1 (en) 2007-08-26 2008-08-26 Data sending control method and data transmission device
US12/649,616 US8432806B2 (en) 2007-08-26 2009-12-30 Data transmission control method and data transmission device

Publications (2)

Publication Number Publication Date
CN101114999A true CN101114999A (zh) 2008-01-30
CN101114999B CN101114999B (zh) 2010-08-04

Family

ID=39023124

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007100453389A CN101114999B (zh) 2007-08-26 2007-08-26 数据发送控制方法及数据传输设备

Country Status (5)

Country Link
US (1) US8432806B2 (zh)
EP (1) EP2154857B1 (zh)
CN (1) CN101114999B (zh)
ES (1) ES2394388T3 (zh)
WO (1) WO2009026854A1 (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009026854A1 (fr) * 2007-08-26 2009-03-05 Shanghai Huawei Technologies Co., Ltd. Procédé de commande d'envoi de données et dispositif de transmission de données
CN102026281A (zh) * 2010-12-21 2011-04-20 大唐移动通信设备有限公司 基于rnc实现tcp代理的方法及装置
WO2011079743A1 (zh) * 2009-12-30 2011-07-07 深圳市同洲电子股份有限公司 一种数据发送方法和相关设备
CN102195941A (zh) * 2010-03-11 2011-09-21 鼎桥通信技术有限公司 一种改进的传输控制协议代理实现方法及装置
CN102263618A (zh) * 2010-05-31 2011-11-30 中国移动通信集团公司 无线网络拥塞控制方法、装置及系统
CN101369877B (zh) * 2007-12-27 2012-08-22 华为技术有限公司 无线传输控制协议处理方法和设备
CN103001727A (zh) * 2011-09-09 2013-03-27 中兴通讯股份有限公司 一种无线网络的数据传输控制方法和系统
CN103685061A (zh) * 2013-11-29 2014-03-26 华为技术有限公司 缓存数据控制方法和装置
CN103975563A (zh) * 2011-12-06 2014-08-06 博科通迅系统有限公司 用于单个设备的无损连接故障切换
CN104093170A (zh) * 2014-06-10 2014-10-08 北京创毅视讯科技有限公司 基于tcp的数据传输方法和tcp代理装置
WO2014205708A1 (zh) * 2013-06-27 2014-12-31 华为技术有限公司 一种数据报文发送方法、装置和设备
CN104468061A (zh) * 2014-11-25 2015-03-25 厦门雅迅网络股份有限公司 一种低速网络环境下的实时可靠数据传输的方法及系统
WO2017080363A1 (zh) * 2015-11-09 2017-05-18 中兴通讯股份有限公司 一种数据传输的方法及wap设备
CN107465625A (zh) * 2016-06-06 2017-12-12 普天信息技术有限公司 传输控制协议的传输方法和装置
WO2019104725A1 (zh) * 2017-12-01 2019-06-06 华为技术有限公司 报文传输方法、装置及系统
CN111225422A (zh) * 2018-11-23 2020-06-02 大唐移动通信设备有限公司 一种代理数据的处理方法和装置

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8607279B2 (en) * 2010-03-23 2013-12-10 Qualcomm Incorporated Induced sleep intervals for devices receiving bursty non-real time broadcast flows
CN102143078B (zh) * 2011-03-29 2013-10-02 华为技术有限公司 一种报文处理方法、转发设备及系统
US9788362B2 (en) 2011-11-23 2017-10-10 Telefonaktiebolaget L M Ericsson Methods and arrangements for improving transmission control protocol performance in a cellular network
CN103200622A (zh) * 2012-01-09 2013-07-10 株式会社Ntt都科摩 一种通信处理方法、装置及网关设备
WO2014131153A1 (zh) 2013-02-26 2014-09-04 华为技术有限公司 数据传输方法、系统及代理设备
CN104202300B (zh) * 2014-08-06 2018-01-30 广东电网公司电力科学研究院 基于网络隔离装置的数据通信方法和装置
KR102176653B1 (ko) 2014-09-04 2020-11-09 삼성전자주식회사 무선 통신 시스템에서 전송 제어를 위한 방법 및 장치
CN106209325A (zh) * 2015-04-30 2016-12-07 中兴通讯股份有限公司 一种tcp ack报文处理方法及装置
US10594616B2 (en) * 2016-09-30 2020-03-17 Hughes Network Systems, LLC. Data buffering control system and method for a communication network
CN106789700B (zh) * 2016-12-23 2020-11-03 京信通信系统(中国)有限公司 一种流量整形方法及网络设备
CN109792325A (zh) * 2017-01-24 2019-05-21 华为技术有限公司 一种数据传输方法、装置及客户终端设备

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001510957A (ja) * 1997-07-14 2001-08-07 ノキア ネットワークス オサケ ユキチュア テレコミュニケーションネットワークの流れ制御
FI980825A (fi) * 1998-04-09 1999-10-10 Nokia Networks Oy Ylikuormituksen hallinta tietoliikenneverkossa
EP1045551A3 (en) * 1999-04-15 2003-06-18 Lucent Technologies Inc. Method for transmission between data networks and wireless communication system
FI20002320A (fi) * 2000-10-20 2002-04-21 Nokia Corp Eston hallinta langattomissa tietoliikenneverkoissa
WO2003088609A2 (en) * 2002-04-12 2003-10-23 Nokia Corporation System, device and method for improving throughput in a communication network, preferably a mobile ipv6-based network
DE60211322T2 (de) 2002-06-18 2006-09-07 Matsushita Electric Industrial Co., Ltd., Kadoma Empfängerinitiierte Inkrementierung der Übertragungsrate
WO2005013083A2 (en) * 2003-07-29 2005-02-10 Orbital Data Corporation Flow control architecture
US7286483B2 (en) * 2002-11-14 2007-10-23 Intel Corporation Electronic data transfer based on selective storage of incoming packets
EP1576775A2 (en) * 2002-12-19 2005-09-21 Philips Electronics N.V. Protecting real-time data in wireless networks
US7388836B2 (en) * 2003-03-07 2008-06-17 Cisco Technology, Inc. System and method for communicating data in a network environment
US8230106B2 (en) 2003-03-31 2012-07-24 Alcatel Lucent Methods and apparatus for improved transmission control protocol transmission over a wireless channel exhibiting rate and delay variations
US7593338B2 (en) * 2003-06-27 2009-09-22 Samsung Electronics Co., Ltd. Congestion control method and system for reducing a retransmission timeout count in a transmission control protocol
AU2003298233A1 (en) * 2003-12-23 2005-07-21 Telefonaktiebolaget Lm Ericsson (Publ) Method and device for controlling a queue buffer
US7680596B2 (en) * 2004-04-06 2010-03-16 Honda Motor Co., Ltd. Route calculation method for a vehicle navigation system
US7882237B2 (en) * 2004-12-17 2011-02-01 Ncipher Corporation Limited TCP/IP proxy utilizing transparent acknowledgements
US8238242B2 (en) * 2006-02-27 2012-08-07 Telefonaktiebolaget Lm Ericsson (Publ) Flow control mechanism using local and global acknowledgements
US7801044B2 (en) * 2006-05-04 2010-09-21 Broadcom Corporation TCP acknowledge for aggregated packet
CN101114999B (zh) * 2007-08-26 2010-08-04 上海华为技术有限公司 数据发送控制方法及数据传输设备

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009026854A1 (fr) * 2007-08-26 2009-03-05 Shanghai Huawei Technologies Co., Ltd. Procédé de commande d'envoi de données et dispositif de transmission de données
US8432806B2 (en) 2007-08-26 2013-04-30 Huawei Technologies Co., Ltd. Data transmission control method and data transmission device
CN101369877B (zh) * 2007-12-27 2012-08-22 华为技术有限公司 无线传输控制协议处理方法和设备
CN102891883A (zh) * 2007-12-27 2013-01-23 华为技术有限公司 无线传输控制协议处理方法和设备
WO2011079743A1 (zh) * 2009-12-30 2011-07-07 深圳市同洲电子股份有限公司 一种数据发送方法和相关设备
CN102195941A (zh) * 2010-03-11 2011-09-21 鼎桥通信技术有限公司 一种改进的传输控制协议代理实现方法及装置
CN102195941B (zh) * 2010-03-11 2014-03-12 鼎桥通信技术有限公司 一种改进的传输控制协议代理实现方法及装置
CN102263618A (zh) * 2010-05-31 2011-11-30 中国移动通信集团公司 无线网络拥塞控制方法、装置及系统
CN102026281A (zh) * 2010-12-21 2011-04-20 大唐移动通信设备有限公司 基于rnc实现tcp代理的方法及装置
CN103001727A (zh) * 2011-09-09 2013-03-27 中兴通讯股份有限公司 一种无线网络的数据传输控制方法和系统
CN103975563B (zh) * 2011-12-06 2017-04-12 博科通迅系统有限公司 用于单个设备的无损连接故障切换
CN103975563A (zh) * 2011-12-06 2014-08-06 博科通迅系统有限公司 用于单个设备的无损连接故障切换
CN104782090A (zh) * 2013-06-27 2015-07-15 华为技术有限公司 一种数据报文发送方法、装置和设备
WO2014205708A1 (zh) * 2013-06-27 2014-12-31 华为技术有限公司 一种数据报文发送方法、装置和设备
CN104782090B (zh) * 2013-06-27 2017-12-08 华为技术有限公司 一种数据报文发送方法和装置
CN103685061B (zh) * 2013-11-29 2017-06-06 华为技术有限公司 缓存数据控制方法和装置
CN103685061A (zh) * 2013-11-29 2014-03-26 华为技术有限公司 缓存数据控制方法和装置
CN104093170B (zh) * 2014-06-10 2017-12-01 北京创毅视讯科技有限公司 基于tcp的数据传输方法和tcp代理装置
CN104093170A (zh) * 2014-06-10 2014-10-08 北京创毅视讯科技有限公司 基于tcp的数据传输方法和tcp代理装置
CN104468061A (zh) * 2014-11-25 2015-03-25 厦门雅迅网络股份有限公司 一种低速网络环境下的实时可靠数据传输的方法及系统
CN104468061B (zh) * 2014-11-25 2019-08-20 厦门雅迅网络股份有限公司 一种低速网络环境下的实时可靠数据传输的方法及系统
WO2017080363A1 (zh) * 2015-11-09 2017-05-18 中兴通讯股份有限公司 一种数据传输的方法及wap设备
CN107465625A (zh) * 2016-06-06 2017-12-12 普天信息技术有限公司 传输控制协议的传输方法和装置
WO2019104725A1 (zh) * 2017-12-01 2019-06-06 华为技术有限公司 报文传输方法、装置及系统
CN111225422A (zh) * 2018-11-23 2020-06-02 大唐移动通信设备有限公司 一种代理数据的处理方法和装置

Also Published As

Publication number Publication date
US20100103880A1 (en) 2010-04-29
WO2009026854A1 (fr) 2009-03-05
US8432806B2 (en) 2013-04-30
EP2154857A4 (en) 2011-04-13
ES2394388T3 (es) 2013-01-31
EP2154857A1 (en) 2010-02-17
CN101114999B (zh) 2010-08-04
EP2154857B1 (en) 2012-10-31

Similar Documents

Publication Publication Date Title
US9008100B2 (en) Wavefront detection and disambiguation of acknowledgments
US9647948B2 (en) Link aggregation methods and devices
US8310928B2 (en) Flow control system architecture
US8233392B2 (en) Transaction boundary detection for reduction in timeout penalties
US7599402B2 (en) Communication device and method
US8462630B2 (en) Early generation of acknowledgements for flow control
CN1319303C (zh) 通信设备,传输控制方法,和程序产品
Stevens TCP slow start, congestion avoidance, fast retransmit, and fast recovery algorithms
US6493316B1 (en) Apparatus for and method of managing bandwidth for a packet based connection
US7369498B1 (en) Congestion control method for a packet-switched network
US8411560B2 (en) TCP selection acknowledgements for communicating delivered and missing data packets
RU2298289C2 (ru) Устройство и способ доставки пакетов в беспроводных сетях с многократными ретрансляциями
Balakrishnan et al. Explicit loss notification and wireless web performance
US6438101B1 (en) Method and apparatus for managing congestion within an internetwork using window adaptation
US7181667B2 (en) Method and apparatus for modulating radio link control (RLC) ACK/NAK persistence to improve performance of data traffic
JP4542150B2 (ja) 送信装置、受信装置、情報通信方法
EP1391128B1 (en) Congestion and delay handling in a packet data network
EP1989852B1 (en) Flow control mechanism using local and global acknowledgements
Zhang et al. Oscillating behavior of network traffic: A case study simulation
Chandran et al. A feedback-based scheme for improving TCP performance in ad hoc wireless networks
JP4433202B2 (ja) トランスポート層中継方法及びトランスポート層中継装置並びにプログラム
TWI483589B (zh) 資料傳輸及重新傳輸之方法
US6091733A (en) Communication device using communication protocol including transport layer and communication method using communication protocol including transport layer
DE602004010851T2 (de) Verfahren und einrichtungen zur duplikatpaketidentifikation während eines handover
DE602004002086T2 (de) Verfahren und Apparat zur gemeinsamen dynamischen Verwaltung von Fensterlängen von mehreren ARQ-Datenverbindungen

Legal Events

Date Code Title Description
PB01 Publication
C06 Publication
SE01 Entry into force of request for substantive examination
C10 Entry into substantive examination
GR01 Patent grant
C14 Grant of patent or utility model