CN1833422A - 分组通信装置 - Google Patents

分组通信装置 Download PDF

Info

Publication number
CN1833422A
CN1833422A CNA2004800228027A CN200480022802A CN1833422A CN 1833422 A CN1833422 A CN 1833422A CN A2004800228027 A CNA2004800228027 A CN A2004800228027A CN 200480022802 A CN200480022802 A CN 200480022802A CN 1833422 A CN1833422 A CN 1833422A
Authority
CN
China
Prior art keywords
ack
grouping
packet
ack grouping
transmission
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.)
Pending
Application number
CNA2004800228027A
Other languages
English (en)
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of CN1833422A publication Critical patent/CN1833422A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1848Time-out mechanisms
    • 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

Landscapes

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

Abstract

移动终端(100)包括:计算部分(251),根据由控制部分(250)保持的传输线的线速度和发送的ACK分组的大小,计算ACK分组产生间隔;延迟ACK定时器(223),重复计时所计算的ACK分组产生间隔作为一个周期,并在每次该周期期满时输出一个期满信号;数据分组接收部分(221),在每次期满信号被输入时,产生一个包含与在期满信号被接收期间接收到数据分组相关的最新接收确认信息的ACK分组,并通过IP部分(210)发送该ACK分组至传输缓存器(240)。

Description

分组通信装置
技术领域
本发明涉及一种连接至采用TCP(传输控制协议)的非对称分组通信信道的分组通信装置。
背景技术
这里将描述一种传统的分组通信方法,其中的移动通信系统中实施采用TCP的非对称通信信道。图1的方框图表示该移动通信系统的结构。
在该移动通信系统中,如图1所示,移动终端900通过无线基站装置901与网络(即IP网)902连接,该网络902利用因特网协议(IP)传输数据分组。网络(IP网)902中的服务器903通过应用TCP的非对称通信信道与移动终端900进行数据分组通信。
也就是说,移动终端900通过无线基站装置901接收服务器903通过IP网902发送的数据分组,并通过无线基站装置901经IP网902向服务器903返回一个ACK分组。但是,移动终端900通过其接收数据分组的下行链路信道911具有比该终端900通过其返回ACK分组的上行链路信道912更高的信道速率。
图2示出了该TCP分组格式。如图2所示,一个TCP分组包括包头1001和负载1002。包头1001包括:源端口号区1011;目标端口号区1012;序列号区1013;ACK数目区1014;包头备用区1015;备用区1016;控制标识区1017;窗口大小区1018;TCP校验和区1019;及紧急指针区1020。负载1002包括数据区1021。
下面简要解释一下序列号区1013、ACK数目区1014和窗口大小区1018。序列号区1013包括一个序列号SN,其指示整个数据流中的一个数据分组中包括的第一个数据的位置。
该控制标识区1017中的ACK标识指示ACK数目区1014中包括一个ACK数目AN。ACK数目区1014仅当存在ACK标识时有效。
为了向服务器903指示正确接收到的数据分组的源,ACK数目区1014中设置的ACK数目AN是接收端的移动终端900下一步期望接收的数据分组的序列号SN。即假定该数据分组在形成了一个连续数据流的接收数据分组中具有最新序列号SN,该数据分组的负载大小被加到了该序列号SN上,则该ACK数目AN指示该相加的结果值。附带的,该数据分组的负载大小即数据区1021的大小。
当源端服务器903执行窗口控制时使用窗口大小区1018。即,当接收端的移动终端900返回一个ACK分组时,在窗口大小区1018中设置一个指示移动终端900能够接收以该ACK数目AN开始的数据分组的范围的值并将该值报告给服务器903。
图3示出服务器903的窗口控制。图3中,在步骤S1110,服务器903设置一个大小为7的传输窗口大小作为传输窗口大小1110,并相应的根据该传输窗口大小1110通过数据分组1107顺序地传输数据分组1101。另外,在图3中,阴影区表示已经发送但还没有被确认接收的数据分组。白色部分表示还没有发送的数据分组。斜线部分表示已经被确认接收的数据分组。
在下一步骤S1111,服务器903接收ACK分组并因而确认该移动终端900已经接收到数据分组1101。服务器903根据从移动终端900接收的ACK分组的ACK数目AN和窗口大小获取移动终端900能够接收的数据分组的开始数目和数据分组数目,并与该数据分组数目的成比例的更新传输窗口。
在下一步骤S1112,服务器903发送更新后的传输窗口中的数据分组1108。
图4是表示图1所示的移动终端900在应用TCP的非对称通信信道中执行传统的分组通信的方框图。如图4所示,图1所示的移动终端900具有IP部分1210、TCP部分1220、应用部分1230、传输缓存器1240和读取器1241。TCP部分1220具有数据分组接收器1221。
IP部分1210对通过下行链路信道911接收的IP分组执行IP处理,并发送结果至数据分组接收器1221。另外,IP部分1210在从数据分组接收器1221中接收的ACK分组中增加IP包头,并发送结果至传输缓存器1240。
数据分组接收器1221对从IP部分1210接收的数据分组执行TCP处理,并发送结果至应用部分1230,并且,每接收一个数据分组,就指示一个ACK标识及产生一个设置了ACK数目AN和窗口大小的ACK分组,并发送该ACK分组至IP部分1210。以下的描述假定,每一个ACK分组,在窗口大小区1018中都有一个说明,说明接收ACK分组的服务器903通过更新ACK数目AN更新传输窗口,并且随后该ACK数目AN将单独被考虑。
应用部分1230是指一个用于处理用户分组的应用层。
传输缓存器1240累加从IP部分1210接收的ACK分组。读取器1241根据上行链路信道912的信道速率从传输缓存器1240中读取该ACK分组,并发送该ACK分组至上行链路信道。
接下来,参考图5和6,描述图1所示的移动通信系统中利用TCP进行分组通信的步骤。图5的序列图示出了图1所示的服务器903和移动终端900间执行传统的分组通信的步骤。图6示出在图5所示的从步骤S1362到步骤S1365期间图4所示的传输缓存器1240的状态。
为便于解释,图5中,对于所有的数据分组,设负载大小为1(字节),传输窗口大小为7。服务器903和移动终端900之间的箭头表示分组传输及传输的方向,该箭头的角度表示服务器903和移动终端900间的传输延迟。
图6中,示出了这样一种情况,在图5所示的步骤S1362至步骤S1365期间,移动终端900产生的ACK分组在传输缓存器1240中累加并通过读取器1241发送到上行链路信道912。读取器1241的右边代表传输缓存器1240,左边代表上行链路信道912。
在步骤A1381,服务器903根据传输窗口的大小7序列的发送7个数据分组(从数据分组801(SN=1)到数据分组807(SN=7))。
在步骤S1361,移动终端900接收第一个数据分组(SN=1)并立即在下面的步骤S1362产生ACK分组1341。从步骤S1362到步骤S1365的期间代表数据分组被接收直到ACK分组产生的处理延时。在ACK分组1341的ACK数目区,ACK数目AN被设定,其即是期望接下来接收的数据分组的序列号SN2。
如图6所示,产生的ACK分组1341(AN=2)在传输缓存器1240中累加。传输缓存器1240中没有等待时间,因此读取器1241立即开始向上行链路信道921发送ACK分组1341。在ACK分组1341的传输过程中移动终端900接收下一数据分组802(SN=2)。在下一步骤S1363,移动终端900产生ACK分组1342(AN=3)并将其累加在传输缓存器1240中。
因此,如图6所示,ACK分组1341(AN=2)仍在传输过程中,因此重新产生的ACK分组1342需要在传输缓存器1240中等待。
在下一步骤S1364,再一次,移动终端900响应于接收到的数据分组1303(SN=3)产生一个ACK分组。但是,如图6所示,由于ACK分组1341(AN=2)的传输仍在进行,因此新近产生的ACK分组1343(AN=4)等待在之前等待的ACK分组1342后传输。
然后,在步骤S1365,读取器1241完成了ACK分组1341(AN=2)的传输,并同时开始传输正在等待的ACK分组1342(AN=3)。步骤S1362和步骤S1365间的间隔也即读取器1241需要向上行链路信道912发送ACK分组的时间。
从步骤S1365开始的传输延时在整个ACK分组1341(AN=2)被服务器903接收到前是必需的。换句话说,服务器903在步骤S1382接收ACK分组1341(AN=2),其中传输延时的时间在步骤S1365之后已经过去了,并且,基于此,发送下一数据分组1308(SN=8)。
读取器1241在步骤S 1366完成ACK分组1342(AN=3)的发送,并在同时开始发送ACK分组1343(AN=4)。这在图6中没有示出。
服务器903在步骤S1383接收ACK分组1342(AN=3),其中传输延时的时间在步骤S1366之后已经过去,并且,基于此,发送下一数据分组809(SN=9)。
下文中,每次读取器1241完成一个ACK分组的传送,就开始传送已经在传输缓存器1240中等待的ACK分组。图5仅示出在步骤S1367传送ACK分组1343(AN=4)。
服务器903在步骤S1384接收ACK分组1343(AN=4),其中传输延时的时间在步骤S1367之后已经过去,并且,基于此,发送下一数据分组810(SN=10)。下文中,同样,每次服务器903接收一个ACK分组,就开始传送一个新的数据分组。
因此,当移动终端产生一个新的ACK分组,该分组具有最新的接收确认信息(即序列号SN)。然而,该新产生的ACK分组临时存储在传输缓存器1240中并在所有更早产生的ACK分组都已被发送完之后发送。换句话说,只要ACK分组存储在存储缓存器1240中,移动终端900就不能向服务器903发送最新的接收确认信息(即序列号SN)。
另一方面,当服务器903发送数据分组807(SN=7)时,服务器903将已经发送了该传输窗口大小的数据分组。之后,服务器903接收一个新的分组,校验该ACK数目AN并通过一个分组更新该传输窗口,然后发送一个新的分组。
因此,服务器903发送完该传输窗口大小的数据分组后,服务器903能够发送数据分组的时间周期等于移动终端900发送一个ACK分组所需要的时间,如步骤S1382,S1383,S1384所示。
一般的TCP采用延迟ACK技术,如在非专利文献1中披露的,以减小要发送的ACK分组的数量。
通过利用这种延迟ACK技术,在移动终端900处,平均ACK分组产生间隔加倍,服务器903每隔接收一个数据分组的时间产生一个ACK分组。移动终端900发送的每个ACK分组中包含两个数据分组的接收确认信息。
因此,以这种延迟ACK技术,在移动终端900处,存储在传输缓存器1240中的ACK分组的数目减少到一半,在服务器903处,响应于一个ACK分组接收的传输窗口的更新宽度变为两个分组。基本操作与之前参考图5和图6描述的通信步骤相同。
然而,当分组通信是在应用了TCP的非对称信道中执行时,根据上述通信步骤,就出现了问题,服务器903在已经发送了传输窗口大小的数据分组之后,不能在一定水平之上获得平均传输TCP吞吐量。
原因是服务器903每隔移动终端900发送一个ACK分组所需的时间更新该传输窗口,以及响应于一个ACK分组接收的传输窗口的更新宽度恒定为一个分组。这是因为一个ACK分组仅包含了一个分组的接收确认信息。
例如,即使下行链路信道911的信道速率增加到期望的大于平均传输吞吐量,传输窗口的更新间隔也不会改变,响应于一个ACK分组的接收的传输窗口的更新宽度也不会改变。因此,平均传输TCP吞吐量也不会改变。
当延迟ACK技术应用于上述分组通信中时,在服务器903处,响应于一个ACK分组接收的传输窗口的更新宽度变为两个分组,从而改善了平均传输TCP吞吐量。可是,传输窗口的更新间隔不会从传送一个ACK分组所需的时间变化。
因此,利用延迟ACK技术或增加下行链路信道的信道速率仅仅能够在一定程度上改善平均传输TCP吞吐量,仍然不能实现系统所期望的吞吐量。
发明内容
本发明就是要解决这些问题。因此本发明的一个目标是提供一种分组通信装置,能够对ACK分组执行传输约束控制,当该分组通信装置与服务器进行非对称分组通信时,该服务器获得系统期望获得的平均传输TCP吞吐量。
根据本发明的一个方面,一个分组通信装置通过一个高速接收信道接收数据分组并通过一个低速发送信道上发送ACK分组到非对称分组信道,该分组通信装置具有:保持器,保持被发送的ACK分组的大小和发送信道的信道速率;计算器,根据该ACK分组的大小和该传输信道的信道速率计算一个ACK分组产生间隔;计数器,在一个周期内重复计数所计算的ACK分组产生间隔并在每个周期期满时输出一个期满信号;和发送器,每当该期满信号被输入,产生与在期满信号被接收期间接收到的数据分组有关的一个包含最新接收确认信息的ACK分组,并发送该ACK分组至传输级。
根据本发明的另一方面,一种分组通信装置通过一个高速接收信道接收数据分组并通过一个低速发送信道发送一个ACK分组至非对称分组信道,该分组通信装置具有:累加器,顺序地累加每次数据分组被接收到时产生的ACK分组并顺序地发送到ACK分组之前从其累积的传输级;和累加控制器,当一个新近产生的ACK分组在该累加器中累加时,该控制器比较即刻之前的最新累加的ACK分组与该新的ACK分组以确定是否该ACK分组匹配或不匹配,并且当该分组不匹配时,丢弃该即刻之前的ACK分组并累加该新的ACK分组,当该ACK分组匹配时,附加地累加该新的ACK分组至该累加器。
附图说明
图1是示出一种用于解释传统的应用TCP至非对称通信信道的分组通信方法的移动通信系统的结构方框图。
图2示出一种TCP分组格式。
图3是表示服务器的窗口控制。
图4是表示其中图1所示的移动终端执行传统的应用TCP至非对称信道的分组通信的结构方框图。
图5是一个表示图1示出的服务器和移动终端间进行传统的分组通信的过程中的通信步骤的序列框图。
图6解释了图5中的步骤S1362至步骤S1365间的间隔期间图12中的传输缓存器的状况。
图7是表示用于解释根据本发明的实施例1的应用TCP至非对称信道的分组通信方法的移动通信系统的结构方框图。
图8是表示图7中的移动终端执行根据本发明的实施例1的应用TCP至非对称信道的分组通信的结构方框图。
图9是表示图8所示的操作部操作的流程图。
图10是解释根据本发明的一个实施例在图7所示的服务器和移动终端间执行分组通信的通信步骤的序列框图。
图11是解释在图10的步骤S462和步骤S464之间的间隔期间传输缓存器中的状况。
图12是表示用于解释根据本发明的实施例2的应用TCP至非对称信道的分组通信方法的移动通信系统的结构方框图。
图13是表示图12中的移动终端执行根据本发明的实施例2的应用TCP至非对称信道的分组通信的结构方框图。
图14是表示图13所示的写入器的操作的流程图。
具体实施例
通过借助附图在下文中将描述本发明的优选实施例。但本发明并不仅限于这些实施例,而是可以在不脱离本发明的范围的情况下进行各种修改。
本发明的主旨是,当通信终端与服务器进行非对称分组通信时,允许该通信终端采用下面的方法(1)-(3)限制ACK分组的传输,以使得该服务器能够获得系统所期望的平均传输TCP吞吐量。
(1)该通信终端:根据在一个传输信道上将要发送的ACK分组的大小和该传输信道的信道速率计算一个ACK分组产生间隔;在计算的该ACK分组产生间隔期间不响应接收的数据分组;每当该ACK分组产生间隔期满,产生一个包含最新接收确认信息的ACK分组;并发送该ACK分组至一个在该ACK分组传输级提供的传输缓存器。在该传输缓存器中,该ACK分组被没有等待的读取并在该传输信道上传送。
(2)该通信终端:在该ACK分组产生级具有一个ACK分组传输缓存器,用于存储每接收到一个数据分组时产生的ACK分组;比较该ACK分组传输缓存器中等待传输的ACK分组的ACK数目和重新产生的ACK分组的ACK数目;根据特定的规则去除该正在等待的ACK分组;并从该ACK分组缓存器中发送该新的ACK分组至在ACK分组传输系统中提供的传送缓存器。
(3)该通信终端具有一个计数器,计数(1)和(2)中的ACK分组传输的数目;比较新近产生的ACK分组的ACK数目和之前的ACK分组的ACK数目;根据比较的结果,当该ACK的数目不匹配时复位计数器,当该ACK的数目匹配时更新该计数器;计数具有相同的ACK分组数目的连续ACK分组的次数;如果该计数值大于预定的值,丢弃该新近产生的ACK分组。通过这种方式,冗余的ACK分组的产生和传输在传输错误频繁发生的情况下就被抑制了。
接下来,将结合附图描述本发明的实施例。
(实施例1)
图7是表示用于解释根据本发明的实施例1的应用TCP至非对称信道的分组通信方法的移动通信系统的结构方框图。
在该移动通信系统中,如图7所示,移动终端100通过无线基站装置101与利用因特网协议(IP)转发分组的网络(IP网)102连接。服务器103位于网络(IP网)102中,与应用TCP至非对称信道的移动终端100进行分组通信。
换句话说,移动终端100通过无线基站装置101接收从服务器103向IP网102发送的数据分组,并通过无线基站装置101和IP网102向服务器103返回一个ACK分组。但是,移动终端100通过其接收数据分组的下行链路信道111的信道速率大于移动终端100通过其返回ACK分组的上行链路信道112的信道速率。
图8是表示图7中的移动终端执行根据本发明的实施例1的应用TCP至非对称信道的分组通信的结构方框图。如图8所示,图7示出的移动终端100具有IP部分210、TCP部分220、应用部分230、传输缓存器240、读取器241、控制器250和操作部251。TCP部分220具有数据分组接收器221、延迟ACK定时器部分223。
IP部分210对通过下行链路信道111接收的IP分组执行IP处理,并发送结果至数据分组接收器221。另外,IP部分210在从数据分组接收器221中接收的ACK分组中增加IP包头,并发送结果至传输缓存器240。
传输缓存器240累加从IP部分210接收的ACK分组。读取器241根据上行链路信道112的信道速率从传输缓存器240中读取该ACK分组,并发送该ACK分组至上行链路信道112。
控制器250保持上行链路信道112的信道速率(ru[比特/秒])和将被发送的ACK分组的大小(SA[字节]),并将其发送至操作部251。
操作部251从控制器250接收上行链路信道112信道速率和将要发送的ACK分组的大小,计算8*SA/ru[秒],这是一个ACK分组在读取器241中的传输间隔,并发送该计算的结果至延迟ACK定时器223。
延迟ACK定时器223设置从操作部251接收到的计算结果作为该ACK分组产生间隔的定时周期,并在每次延迟ACK定时器223计数该ACK分组产生间隔时,发送一个延迟ACK定时器期满通知给数据分组接收器221并复位该定时器。
数据分组接收器221发送从IP部分210接收的该数据分组至应用部分230,该应用部分230是一个处理用户分组的应用层。因此数据分组接收器221不是在每接收一个数据分组时产生一个ACK分组。而是数据分组接收器221在每次从延迟ACK定时器223接收一个延迟ACK定时器期满通知时产生一个ACK分组。
这里,数据分组接收器221接收至少一个数据分组并在其后从延迟ACK定时器223接收一个延迟ACK定时器期满通知。当接收到一个延迟ACK定时器期满通知时,数据分组接收器221产生一个具有即刻之前接收的数据分组的序列号SN的下一序列号SN作为它的ACK号AN的ACK分组,并发送该ACK分组至IP部分210。通过这种方式,ACK分组传输的数量被限制了。
另外,数据分组接收器221不仅对从IP部分210接收的数据分组执行TCP处理并发送处理的结果至应用部分230,而且还通过观察接收到的数据分组的序列号监视是否发生丢失。当检测到一个数据分组丢失,数据分组接收器221在检测到丢失后立即发送一个ACK分组至IP部分210。
图9是表示图8所示的操作部操作的流程图。在图9中,操作部251:从控制器250获取将被发送的ACK分组的大小和上行链路信道112的信道速率(步骤ST301);计算该ACK分组产生间隔8*SA/ru[秒],这样ACK分组不在传输缓存器240中累加(步骤ST301);并向延迟ACK定时器223报告该计算的ACK分组产生间隔(步骤ST302)。通过这种方式,在操作部251计算的该ACK分组产生间隔被设置为延迟ACK定时器223的周期。
顺带,操作部251可以通过下面的方法确定该被设定为延迟ACK定时器223的定时器周期的ACK分组产生间隔。即,ACK分组带宽占用率α定义了期望的平均ACK分组传输率和上行链路信道112的信道速率间的比率,操作部251可以将上述的计算结果(8*SA/ru[秒])乘以α并发送该计算结果(8*α*SA/ru[秒])至延迟ACK定时器223。
接下来,结合图10和图11示出在图7所示的移动通信系统中利用TCP执行分组通信过程中的通信步骤。图10是解释根据本发明的一个实施例在图7所示的服务器103和移动终端100间执行分组通信的通信步骤的序列框图。图11是解释在图10示出的步骤S462和步骤S464之间的间隔期间传输缓存器240的状况。
这里,图10中为了便于解释,对于所有的数据分组,负载大小为1(字节),传输窗口大小为7。另外,发送一个ACK分组所需的时间就是延迟ACK定时器的周期。顺带,服务器103和移动终端100间的箭头表示分组传输及传输的方向,箭头的角度表示服务器103和移动终端100间的传输延迟。
另外,图11示出了在图10所示的步骤S462和步骤S464之间的期间,移动终端100产生的ACK分组在传输缓存器240中被累加,并通过读取器241被发送到上行链路信道112。顺带,读取器124的右边代表传输缓存器240,左边代表上行链路信道112。
参考图10,从步骤S462到步骤S463的期间,示为“延迟ACK定时器操作”,从步骤S463到步骤S464的期间,从步骤S464到步骤S465的期间,及其他期间均是延迟ACK定时器223的周期并被设定为发送一个ACK分组所需的时间。当延迟ACK定时器223期满时而不是其他时间执行该ACK分组产生操作。相应的,服务器103和移动终端100间的分组通信执行如下:
在步骤S481,服务器103根据传输窗口的大小“7”顺序地向移动终端100发送7个数据分组,即数据分组401(SN=1)至数据分组407(SN=7)。
在步骤S461,移动终端100接收第一个数据分组401(SN=1)。在下面的步骤S462,延迟ACK定时器223第一次期满。ACK分组441由此产生。在ACK分组441中,ACK号AN设定为序列号SN“2”,该序列号是期望接收的下一数据分组的序列号SN。产生的ACK分组441(AN=2)如图11所示在传输缓存器240中累加。在传输缓存器240中没有等待时间,读取器241立即开始向上行链路信道112传送。
同时,在步骤S462,延迟ACK定时器223重新开始并对第二次期满的步骤S463计数。在步骤S462到步骤S463期间,延迟ACK定时器223一直在运行,ACK分组441(AN=2)的传输也在进行。数据分组402(SN=2)和数据分组403(SN=3)在此期间被接收,但不产生ACK分组。
在步骤S463,延迟ACK定时器223期满,ACK分组441(AN=2)的传输结束。从步骤S463开始的传输延迟时间需要持续到ACK分组441(AN=2)全部被服务器103接收到。也就是说,服务器103在步骤S482接收ACK分组441(AN=2),传输延迟时间从步骤S463开始经过。这是传输窗口的7个数据分组都已被发送,并且因此服务器103开始传输操作,同时更新该传输窗口。
在步骤S482,服务器103从ACK分组441(AN=2)的ACK数AN识别一个数据分组(即,第一数据分组401(SN=1))的接收,更新该传输窗口为一个分组,并发送下一数据分组408(SN=8)。
在延迟ACK定时器223期满的步骤S463,移动终端100产生一个ACK分组。但是,移动终端100已经接收到了不只一个数据分组并因此产生ACK分组442(AN=4),其是根据数据分组403(SN=3)被接收到后,延迟ACK定时器223期满前期望接收到的下一数据分组(SN=4)产生的,并在传输缓存器240中累加ACK分组442。
但是,到那时,由读取器241之前读取的ACK分组441(AN=2)的传输已经结束。因此,在传输缓存器240中没有等待时间的,在步骤S463读取器241立即开始传输该分组442(AN=4)至上行链路信道112。
同时,在步骤S463,延迟ACK定时器223重新开始并对下一次期满的步骤S464计数。在步骤S463到步骤S464期间,延迟ACK定时器223一直在运行,ACK分组442(AN=4)的传输也在进行。数据分组404(SN=4)和数据分组405(SN=5)在此期间被接收,但不产生ACK分组。
在步骤S464,延迟ACK定时器223期满,ACK分组442(AN=4)的传输结束。从步骤S464开始的传输延迟时间需要持续到ACK分组442(AN=4)全部被服务器103接收到。也就是说,服务器103在步骤S483接收ACK分组442(AN=4),传输延迟时间从步骤S464开始经过。
此时,AN=4,服务器103识别两个数据分组(即,数据分组402(SN=2)和数据分组403(SN=3))的接收,更新该传输窗口为两个分组,并顺序地发送两个数据分组409(SN=9)和410(SN=10)。
在延迟ACK定时器223期满的步骤S464,移动终端100产生一个ACK分组。但是,移动终端100已经接收到了不只一个数据分组并因此产生ACK分组443(AN=6),其是根据数据分组405(SN=5)被接收到后,延迟ACK定时器223期满前期望接收到的下一数据分组(SN=6)产生的,在传输缓存器240中累加该ACK分组443。
但是,到那时,由读取器241之前读取的ACK分组442(AN=4)的传输已经结束。因此,在传输缓存器240中没有等待时间的,在步骤S464读取器241立即开始传输该ACK分组443(AN=6)至上行链路信道112。
同时,在步骤S464,延迟ACK定时器223重新开始并对下一次期满的步骤S465计数。在步骤S464到步骤S465期间,延迟ACK定时器223一直在运行,ACK分组443(AN=6)的传输也在进行。数据分组406(SN=6)和数据分组407(SN=7)在此期间被接收,但不产生ACK分组。
在步骤S465,延迟ACK定时器223期满,ACK分组443(AN=6)的传输结束。从步骤S465开始的传输延迟需要持续到ACK分组443(AN=6)全部被服务器103接收到。也就是说,服务器103在步骤S484接收ACK分组443(AN=6),传输延迟时间从步骤S465开始经过。
此时,AN=6,服务器103识别两个分组(即,数据分组404(SN=4)和数据分组405(SN=5))的接收,更新该传输窗口为两个分组,并顺序地发送两个数据分组411(SN=11)和412(SN=12)。之后,同样的操作在移动终端100和服务器103间重复。
因此,根据本发明的实施例1,移动终端100根据发送一个ACK分组所需的时间确定ACK分组的产生间隔,在上一ACK分组已向上行链路信道112发送结束的时刻产生一个新的ACK分组,并开始发送该新的ACK分组至上行链路信道112,这样传输缓存器240中ACK分组的累加被抑制。
当移动终端100产生一个ACK分组,移动终端100在其ACK分组中包含最新的接收确认信息,这样向上行链路信道112的传输能够立即开始,向服务器103报告该最新的接收确认信息所需的时间相比于现有技术可以大大缩短。
因此,服务器103每隔移动终端100需要发送一个ACK分组所需的时间接收一个ACK分组,并根据该ACK分组内包含的接收确认信息更新传输窗口。根据实施例1,因此能够增加响应于一个ACK分组的接收的传输窗口的更新宽度。
例如,如果下行链路信道911的信道速率增加至期望的更大的平均传输吞吐量,移动终端100接收的数据分组的数量在延迟ACK定时器运行期间增加,与此相应,更多的接收确认信息包含在一个ACK分组中。结果,服务器响应于一个ACK分组的接收更新的传输窗口宽度增加,从而能够实现系统所期望的平均传输TCP吞吐量。
(实施例2)
图12是表示用于解释根据本发明的实施例2的应用TCP至非对称信道的分组通信方法的移动通信系统的结构方框图。图12中与图7所示的结构相同的部分被标以相同的附图标记。下面的解释侧重于特别与实施例2相关的部分。
图1示出的移动通信系统提供移动终端600而不是图7所示的移动终端100。移动终端600的结构示于图13。
图13是表示图12中的移动终端执行根据本发明的实施例2的应用TCP至非对称信道的分组通信的结构方框图。图13中与图8所示的结构相同的部分被标以相同的附图标记。下面的解释侧重于特别与实施例2相关的部分。
图13所示的移动终端600从图8所示的结构中去掉了控制器250和操作部251,用TCP部分720替换了TCP部分220。TCP部分720具有数据分组接收器721、写入器722和ACK分组传输缓存器723。
数据分组接收器721对从IP部分210接收的数据分组执行TCP处理,并发送结果至应用部分230,并且每接收到一个数据分组时,产生一个其中设置了ACK数目AN的ACK分组,并发送该ACK分组至写入器722。
写入器722在ACK分组传输缓存器723中写入新产生的及从数据分组接收器721接收到的该ACK分组。在该写入过程中,写入器722比较新产生的ACK分组和即刻之前的ACK分组(在传输缓存器723中最后写入的ACK分组)间的ACK分组数目AN。
当比较的结果显示不匹配时,可能是新产生的ACK分组中暗含了在即刻之前的ACK分组中包含的接收确认信息,因此写入器722从ACK分组传输缓存器723中去除了即刻之前的ACK分组,并向ACK分组传输缓存器723中写入新产生的ACK分组。
此时,例如,即刻之前的ACK分组的ACK数目AN是10而新产生的ACK分组的ACK数目AN是20,即刻之前的ACK分组包含的接收确认信息表明移动终端600已经接收到了序列号SN小于9的数据分组。同时,新产生的ACK分组包含的接收确认信息表明移动终端600接收到了序列号SN小于19的数据分组。也就是说,新产生的ACK分组中暗含了包含在即刻之前的ACK分组中包含的接收确认信息。该即刻之前的ACK分组因此被去除了。
另一方面,当比较的结果显示匹配时,可能是新产生的ACK分组是一个具有与即刻之前的ACK分组相同ACK数目的冗余的ACK分组,因此写入器722在传输缓存器723中写入了新产生的ACK分组。
在ACK分组传输缓存器723中写入的ACK分组被从ACK传输缓存器723以其写入顺序读取并被发送给IP部分210。
接下来,下面将结合附图14描述写入器722的操作。图14是表示图12所示的写入器的操作的流程图。在图14中,写入器722确定新产生的ACK分组是否已经被从数据分组接收器721接收到(步骤ST801)。如果确定的结果是该ACK分组还没有接收到(步骤ST801:否),该处理被终止。如果该ACK分组已经被接收到(步骤ST801:是),该过程进行到步骤ST802,确定该即刻之前的ACK分组是否存在于ACK分组传输缓存器723中。
如果步骤ST802中比较的结果表明该即刻之前的ACK分组没有存在于ACK分组传输缓存器723中(步骤ST802:否),处理进行到步骤ST805。如果该即刻之前的ACK分组存在于ACK分组传输缓存器723中(步骤ST802:是),处理进行到步骤ST803。
步骤ST803比较新产生的ACK分组和即刻之前的ACK分组间的ACK数目AN,并确定该ACK数目AN是否匹配。即,步骤ST803确定该新产生的ACK分组是否是一个冗余的分组。作为确定的结果,如果该新产生的ACK分组是一个冗余的ACK分组(步骤ST803:是),该处理进行到步骤ST805。如果新产生的该ACK分组不是一个冗余的ACK分组(步骤ST803:否),处理进行到步骤ST804。
步骤ST804去除存在于ACK分组传输缓存器723中的该即刻之前的ACK分组并进行到步骤ST805。步骤ST805在ACK分组传输缓存器723中写入新产生的ACK分组并结束该处理。
根据实施例2的分组通信步骤基本与图10和11所示的根据实施例1的分组通信步骤相同,这里不再解释。只是ACK分组产生的触发改变。在两种情况下,在发送ACK分组的过程中均可能获得最新的信息。
因此,根据实施例2,在移动终端800的TCP部分中提供的ACK分组传输缓存器723在一个旧的ACK分组上写入一个新的ACK分组,因此只存在一个包含最新接收确认信息的ACK分组。当一个ACK分组的传输结束,读取器741接收来自ACK分组传输缓存器723的ACK分组,并开始向上行链路信道112发送该ACK分组,这样最新的接收确认信息可以报告给服务器103。
服务器103以移动终端600发送一个ACK分组所需的时间为间隔接收一个分组,并根据包含在该ACK分组中的接收确认信息更新传输窗口。因此,如果例如下行链路信道111的信道速率增加到所期望的更大的平均传输吞吐量,写入ACK分组传输缓存器中的ACK分组的数量也增加。但是,该ACK分组而不是最后写入的ACK分组被丢弃,最后写入的ACK分组中包含了更多的接收确认信息。结果,由服务器103响应于一个ACK分组的接收而更新的传输窗口宽度增加,这样系统所期望的平均传输TCP吞吐量能够实现。
如果移动终端100和600中的数据分组接收器221和721检测到一个数据分组丢失,则产生与即刻之前的ACK分组具有相同ACK数目AN的几个冗余的分组。这种情况下,根据TCP算法,为了使服务器103检测由接收冗余的ACK分组引起的拥塞,三个连续的冗余ACK分组就已足够。
因此,数据分组接收器221和721具有一个计数器,其计数ACK分组传输的数量,比较新近产生的ACK分组和即刻之前的ACK分组的ACK数目,如果比较的结果显示不匹配时复位该计数器,如果比较的结果显示匹配则更新该计数器,从而计数有多少具有相同数目连续的ACK分组。相应的,如果该计数值大于一个阈值,则新产生的ACK分组可以丢弃。
通过这种方式,当一个数据分组丢失被检测到并且N(N>3)个或更多个冗余的ACK分组被连续产生时,第N个之后的冗余的ACK分组被丢弃,不需要传送到IP部分210,这样冗余ACK分组的产生和传输的执行是在倾向抑制传输错误及不相关的ACK分组的传输进一步抑制的情况下。
移动终端100和600的硬件结构是任意的并不受任何限制。例如,移动终端100和600可通过一个具有CPU和存储设备(ROM、RAM、硬盘及其他存储介质)的计算机实施。如果移动终端100和600通过一个计算机实施,则CPU执行一个程序,该程序中移动终端100和600的操作被编程,移动终端100和600执行预定的操作。
本申请是基于日本专利申请NO.2003-163214,其全部内容在此引入作为参考。
工业应用性
可以执行抑制ACK分组传输的控制,以在服务器上获得系统所期望的平均传输TCP吞吐量。

Claims (4)

1.一种分组通信装置,通过一个高速接收信道接收数据分组并通过一个低速发送信道发送ACK分组到非对称分组信道,该分组通信装置包括:
保持器,保持被发送的ACK分组的大小和发送信道的信道速率;
计算器,根据该ACK分组的大小和该传输信道的信道速率计算一个ACK分组产生间隔;
计数器,在一个周期内重复计数所计算的ACK分组产生间隔并在每个周期期满时输出一个期满信号;和
发送器,每当该期满信号被输入,产生与在期满信号被接收期间接收到的数据分组有关的一个包含最新接收确认信息的ACK分组,并发送该ACK分组至传输级。
2、一种分组通信装置,通过一个高速接收信道接收数据分组并通过一个低速发送信道发送一个ACK分组至非对称分组信道,该分组通信装置包括:
累加器,顺序地累加每次数据分组被接收到时产生的ACK分组并顺序地发送到ACK分组之前从其累积的传输级;和
累加控制器,当一个新近产生的ACK分组在该累加器中累加时,该控制器比较即刻之前的最新累加的ACK分组与该新的ACK分组以确定是否该ACK分组匹配或不匹配,并且当该分组不匹配时,丢弃该即刻之前的ACK分组并累加该新的ACK分组,当该ACK分组匹配时,附加地累加该新的ACK分组至该累加器。
3、如权利要求1所述的分组通信装置,进一步包括:
计数器,计数发送ACK分组的次数;
更新器,比较最新产生的ACK分组和即刻之前产生的ACK分组,并当该ACK分组不匹配时复位该计数器,当该ACK分组匹配时更新该计数器;
当该计数器的计数值超出了一个设定值时丢弃该最新产生的ACK分组的部分。
4、如权利要求2所述的分组通信装置,进一步包括:
计数器,计数发送ACK分组的次数;
更新器,比较最新产生的ACK分组和即刻之前产生的ACK分组,并当该ACK分组不匹配时复位该计数器,当该ACK分组匹配时更新该计数器;
当该计数器的计数值超出了一个设定值时丢弃该最新产生的ACK分组的部分。
CNA2004800228027A 2003-06-09 2004-06-09 分组通信装置 Pending CN1833422A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP163214/2003 2003-06-09
JP2003163214A JP2004364217A (ja) 2003-06-09 2003-06-09 パケット通信装置

Publications (1)

Publication Number Publication Date
CN1833422A true CN1833422A (zh) 2006-09-13

Family

ID=33508749

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2004800228027A Pending CN1833422A (zh) 2003-06-09 2004-06-09 分组通信装置

Country Status (5)

Country Link
US (1) US20060176862A1 (zh)
EP (1) EP1633099A1 (zh)
JP (1) JP2004364217A (zh)
CN (1) CN1833422A (zh)
WO (1) WO2004110013A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101848145A (zh) * 2009-03-24 2010-09-29 索尼公司 网络通信设备
WO2013139010A1 (zh) * 2012-03-21 2013-09-26 华为技术有限公司 确认包的处理方法、设备及系统

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7801044B2 (en) * 2006-05-04 2010-09-21 Broadcom Corporation TCP acknowledge for aggregated packet
GB2440978B (en) * 2006-08-16 2012-01-04 Wireless Tech Solutions Llc Wireless communication system, apparatus for supporting data flow and methods therefor
EP2095594B1 (en) 2006-12-19 2017-05-03 Telefonaktiebolaget LM Ericsson (publ) A method and device for transmitting tcp data over asymmetric links
US8090241B2 (en) * 2007-05-15 2012-01-03 Broadcom Corporation System and method for simultaneous network recording and playback of digital television programs
WO2009096746A2 (en) * 2008-02-01 2009-08-06 Lg Electronics Inc. Method for sending rlc pdu and allocating radio resource in mobile communications system and rlc entity of mobile communications
KR101375936B1 (ko) * 2008-02-01 2014-03-18 엘지전자 주식회사 시간동기 타이머의 만료 시 하향링크 harq의 동작 방법
KR101531419B1 (ko) 2008-02-01 2015-06-24 엘지전자 주식회사 시간동기 타이머의 만료 시 상향링크 harq의 동작 방법
WO2009096748A2 (en) * 2008-02-01 2009-08-06 Lg Electronics Inc. Mobile communication system and method for transmitting pdcp status report thereof
US8588068B2 (en) 2009-11-02 2013-11-19 Panasonic Corporation Communication terminal and communication method
CA2781588C (en) * 2009-11-23 2015-06-23 Lg Electronics Inc. Ack/nack transmission method and apparatus therefor
KR101835387B1 (ko) * 2011-04-29 2018-03-08 삼성전자주식회사 단말기 및 그 단말기에서 자원 스케줄링 방법
WO2013011638A1 (ja) * 2011-07-19 2013-01-24 日本電気株式会社 通信装置およびその通信制御方法
JP5940353B2 (ja) * 2012-04-11 2016-06-29 オリンパス株式会社 無線通信装置、メモリ装置、無線通信システム、無線通信方法、およびプログラム
CN104184677B (zh) * 2013-05-24 2018-12-14 中兴通讯股份有限公司 一种流量整形的驱动方法及驱动器
CN108702379B (zh) * 2016-02-22 2022-02-25 富士通株式会社 通信装置、中继装置以及通信系统
US10200162B2 (en) * 2016-05-27 2019-02-05 Qualcomm Incorporated HARQ feedback in shared RF spectrum band
JP6805365B2 (ja) * 2017-03-15 2020-12-23 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 適応伝送方法及び装置
CN118199826A (zh) * 2022-12-13 2024-06-14 苹果公司 用于管理传输控制协议(tcp)确认的系统和方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60223351A (ja) * 1984-04-20 1985-11-07 Ricoh Co Ltd 通信制御方式
US5406278A (en) * 1992-02-28 1995-04-11 Intersecting Concepts, Inc. Method and apparatus for data compression having an improved matching algorithm which utilizes a parallel hashing technique
SE470002B (sv) * 1992-03-13 1993-10-18 Ellemtel Utvecklings Ab Förfarande för att förhindra att det på någon av ett antal kanaler på en gemensam överföringsledning sänds datapaket med högre intensitet än ett för kanalen förutbestämt värde samt anordning för utövande av sättet
GB9304622D0 (en) * 1993-03-06 1993-04-21 Ncr Int Inc Wireless local area network apparatus
US5721725A (en) * 1995-10-30 1998-02-24 Xerox Corporation Protocol for channel access in wireless or network data communication
US6078564A (en) * 1996-08-30 2000-06-20 Lucent Technologies, Inc. System for improving data throughput of a TCP/IP network connection with slow return channel
JP2000022744A (ja) * 1998-06-30 2000-01-21 Toshiba Corp パケット通信システム、パケット通信装置及びパケット通信方法
US7263105B2 (en) * 2002-12-18 2007-08-28 Intel Corporation WLAN device and method for interfacing between a MAC sublayer and a physical layer

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101848145A (zh) * 2009-03-24 2010-09-29 索尼公司 网络通信设备
CN101848145B (zh) * 2009-03-24 2013-03-27 索尼公司 网络通信设备
WO2013139010A1 (zh) * 2012-03-21 2013-09-26 华为技术有限公司 确认包的处理方法、设备及系统
CN104137495A (zh) * 2012-03-21 2014-11-05 华为技术有限公司 确认包的处理方法、设备及系统
US9602410B2 (en) 2012-03-21 2017-03-21 Huawei Technologies Co., Ltd. Method, device, and system for processing acknowledgement packet
CN104137495B (zh) * 2012-03-21 2017-10-27 华为技术有限公司 确认包的处理方法、设备及系统

Also Published As

Publication number Publication date
WO2004110013A1 (ja) 2004-12-16
US20060176862A1 (en) 2006-08-10
EP1633099A1 (en) 2006-03-08
JP2004364217A (ja) 2004-12-24

Similar Documents

Publication Publication Date Title
CN1833422A (zh) 分组通信装置
CN1294715C (zh) 采用自动重发请求的通信系统和通信方法
EP1555775A3 (en) Data transmission method and data transmission apparatus
CN101047484A (zh) 一种传输层重传方法和系统
CN1280448A (zh) 链路和媒体访问控制层事务处理启动过程的系统和方法
CN1352848A (zh) 动态容量无线数据信道的无线电链路协议增强
CN1568603A (zh) 用于在无线通信系统内消息分段的方法和设备
CN1642065A (zh) 用于发送/接收自动重复请求的系统和方法
CN1568607A (zh) 无线通信系统内的重发方法和装置
CN101069378A (zh) 数据单元发送器和数据单元中继装置
CN101047485A (zh) 通信终端以及重发控制方法
CN1476182A (zh) 无线电通讯系统中针对无线电链路控制重设或重建后处理定时器的方法
CN1918825A (zh) 发送和接收具有处理时间信息的控制协议数据单元
CN1917416A (zh) 多载波高速下行分组接入中混合自动重传方法
CN1913534A (zh) 一种数据处理方法及通信设备
CN1584865A (zh) 计算机软件升级的方法
CN1515100A (zh) 控制bsc和bts之间的分组数据传输的设备和方法
CN1914843A (zh) 在终端中对确认消息的处理
CN1815925A (zh) 移动通信系统、无线基站、移动台以及移动通信方法
CN1774894A (zh) 在无线传输网络中实施面向连接的数据传送协议的方法
CN1610339A (zh) 传送和恢复数据分组的方法和装置
TWI387250B (zh) 無線通訊系統單邊重建接收邊時處理無線鏈結控制重置流程之變數的方法及其相關裝置
CN111543079B (zh) 无线链路控制(rlc)确认模式(am)数据接收
CN1551553A (zh) 接收设备、发送设备和程序
CN101051880A (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
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication