CN103098422A - 通信装置 - Google Patents

通信装置 Download PDF

Info

Publication number
CN103098422A
CN103098422A CN201280002708XA CN201280002708A CN103098422A CN 103098422 A CN103098422 A CN 103098422A CN 201280002708X A CN201280002708X A CN 201280002708XA CN 201280002708 A CN201280002708 A CN 201280002708A CN 103098422 A CN103098422 A CN 103098422A
Authority
CN
China
Prior art keywords
frequency band
tcp
data
mentioned
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
CN201280002708XA
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of CN103098422A publication Critical patent/CN103098422A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/11Identifying congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/19Flow control; Congestion control at layers above the network layer
    • H04L47/193Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
    • 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/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based 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]
    • 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)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

在利用了TCP的通信中,在如WAN那样的RTT较大并且跳数较大从而废弃发生位置较多的环境下,防止发送频带大幅低于合同频带的。在从LAN向WAN的线路部分所设置的装置,包括多个具有对两个TCP通信进行中继的TCP变换部的卡。TCP变换部包括:在装置内的TCP变换部间交换正在进行数据发送的连接数和正在进行数据接收的连接数的信息的单元、计算它们的合计数的单元、针对每个TCP连接从对向装置接收对向装置中的正在进行数据接收的连接数的合计数和与WAN的访问线路频带的信息的单元、基于数据的再发送率、自身装置的正在进行数据发送的连接数的合计数和对WAN的访问线路频带、从对向装置通知来的正在进行数据接收的连接数的合计数和对WAN的访问线路频带来确定控制频带的单元。

Description

通信装置
技术领域
本发明涉及通信装置,特别涉及对终端间的通信频带进行控制的通信装置。
背景技术
作为在云等中所用的据点间的通信网,一般对利用了IP-VPN(Internet Protocol-Virtual Private Network:网际协议虚拟专用通信网)技术等的WAN(Wide Area Network:广域网)进行利用。
当在某据点存在的终端与在其他据点存在的终端进行通信时,经由将自身据点LAN与WAN连接的线路和将WAN与其他据点LAN连接的线路进行通信。这些线路的能够使用的带宽受合同频带限制。
在终端间的通信中,一般利用TCP。在TCP通信中,对于发送终端发送出的数据,接收终端将接收完毕数据的位置反馈通知至发送终端。在反馈通知的接收完毕数据的位置变得不增加时,发送终端判断为废弃检测。并且,发送终端对称为拥塞窗口大小(即使未从接收终端通知已接收到也能够发送的数据大小)的参数进行管理,根据RTT(Round Trip Time:往返时间)、废弃检测的有无,改变拥塞窗口大小。
在RTT增加时或废弃检测时,判断为网络拥挤,减少窗口大小,由此间接地减小发送频带,避免网络的拥挤。另外,在RTT减少时或没有废弃时,判断为网络空闲,增加窗口大小,从而间接地增加发送频带,并有效利用网络的线路频带。RTT越大,则窗口大小越不易增加,当在RTT不同的通信间共有一条线路时,有时分配的频带产生不公平。
如以上所述,在利用了TCP的通信中,发送频带被RTT和废弃率大幅左右。除了RTT和废弃检测以外,也存在将过去的发送频带和最近的再发送频带组合来控制频带或利用在装置间进行了交换的连接数的信息来控制频带的技术(专利文献1)。
现有技术文献
专利文献
专利文献1:国际公开05/00666号
发明内容
发明要解决的课题
在利用了TCP的通信中,发送频带被RTT和废弃率大幅左右,因此在如WAN那样的RTT较大并且跳数(ホップ数)较大从而废弃发生位置较多的环境下,有时只能够获得将合同频带大幅降低的发送频带。并且,在多个TCP通信之间未公平地分配线路频带。
本发明鉴于以上的点,目的在于,提供一种通信装置,在利用了TCP的通信中,在如WAN那样的RTT较大并且跳数较大从而废弃发生位置较多的环境下,防止发送频带大幅低于合同频带。
用于解决课题的手段
为了解决上述课题,在本件发明的一方式中,各据点中的在从LAN向WAN的访问线路部分所设置的装置,包括多个具有对两个TCP通信进行中继的TCP变换部的卡,卡内的TCP变换部包括:对某据点的终端与装置之间的TCP通信、两个装置间的TCP通信、装置与其他据点的终端之间的TCP通信进行中继的单元、在装置内的多个TCP变换部之间,交换正在进行数据发送的连接数和正在进行数据接收的连接数的信息的单元、计算正在进行数据发送的连接数和正在进行数据接收的连接数的合计数的单元、对于对向装置内的TCP变换部,针对每个TCP连接、通知正在进行数据接收的连接数的合计数和对WAN的访问线路频带的信息的单元、与接收侧终端连接的装置内的TCP变换部对于与发送侧终端连接的装置内的TCP变换部,针对每个TCP连接、反馈通知废弃位置的单元、与发送侧终端连接的装置内的TCP变换部再发送所反馈通知的废弃位置的单元、与发送侧终端连接的装置内的卡基于最近的再发送频带、其以前的发送频带、自身装置的正在进行数据发送的连接数的合计数和对WAN的访问线路频带、由对向装置所通知的正在进行数据接收的连接数的合计数和对WAN的访问线路频带来确定控制频带的单元。
通过上述的方式,变为发送频带不被RTT废弃率大幅左右,在如WAN那样的RTT较大并且跳数较大从而废弃发生位置较多的环境下,有效频带改善。并且,在多个TCP通信之间公平地分配线路频带。
通过本发明的解决单元,提供一种通信装置,
包括多个具有对TCP通信进行中继的TCP变换部的卡,
上述TCP变换部具有:
信息交换部,经由自身TCP变换部在信息交换部与自身装置内的其他TCP变换部之间交换正在进行数据发送的TCP连接数的信息;以及
频带控制部,确定各TCP通信的最大发送频带,
上述信息交换部基于与其他TCP交换部进行了交换的TCP连接数的信息,计算装置整体中的正在进行数据发送的TCP连接数的合计值,
上述频带控制部基于装置整体中的正在进行数据发送的TCP连接数的合计值,确定各TCP通信的最大发送频带。
发明的效果
根据本发明,能够提供一种通信装置,在利用了TCP的通信中,在如WAN那样的RTT较大并且跳数较大从而废弃发生位置较多的环境下,防止发送频带大幅低于合同频带。
附图说明
图1是具有本实施方式中的装置的***结构图。
图2是卡1100内的TCP变换部200的框图。
图3是缓存器的指针的说明图。
图4是包的格式图。
图5是状态表212的格式图。
图6是代理部206的框图。
图7A是TCP部209的框图。
图7B是TCP部203的框图。
图8是频带表213的格式图。
图9是代理部206将LAN侧接收缓存器的数据向WAN侧发送缓存器移动的处理的流程图。
图10是代理部206将WAN侧接收缓存器的数据向LAN侧发送缓存器移动的处理的流程图。
图11是装置1111的框图。
图12是用于说明频带表213保持的值的意思的概念图
图13A是利用再发送率的变化率以及自身装置和对向装置的连接数和访问频带来更新用控制频带的流程图(1)。
图13B是利用再发送率的变化率以及自身装置和对向装置的连接数和访问频带来更新用控制频带的流程图(2)。
图14是包含一个卡的装置1111-A基于自身装置统计信息来进行频带控制的概念图。
图15是包含多个卡的装置1111-A基于自身装置统计信息来进行频带控制的概念图。
图16是包含一个卡的装置1111-A基于包含一个卡的对向装置1111-B的统计信息来进行频带控制的概念图。
图17是包含一个卡的装置1111-A基于包含多个卡的对向装置1111-B的统计信息来进行频带控制的概念图。
图18是包含一个卡的装置1111-A基于自身装置的统计信息、包含一个卡的对向装置1111-B的统计信息来进行频带控制的概念图。
图19是包含一个卡的装置1111-A基于自身装置的统计信息以及包含多个卡的对向装置1111-B的统计信息来进行频带控制的概念图。
图20是包含多个卡的装置1111-A基于自身装置的统计信息、包含一个卡的对向装置1111-B的统计信息来进行频带控制的概念图。
图21是包含多个卡的装置1111-A基于自身装置的统计信息以及包含多个卡的对向装置1111-B的统计信息来进行频带控制的概念图。
图22是基于自身装置和对向装置的平均一个连接的频带来限制控制频带的处理的流程图。
图23是包含对两个WAN(2340,2330)进行中继的装置2303时(实施例2)的***结构图。
图24是实施例2中的装置2303内的TCP变换部的框图。
图25是实施例2中的状态表2401的格式图。
图26是实施例3中的状态表212-1的格式图。
具体实施方式
用于实施本发明的代表性的方式,如下所述。实施例1中记载了基本的一个方式,实施例2中记载了对两个WAN进行中继的方式,实施例3中记载了针对每个TCP连接加权的方式。
实施例1
图1中,表示应用本实施方式的通信装置的中继***的结构图。
通信装置(也称为中继装置。以下,简单地记作装置)101、102、103设置在将多个据点内LAN110、120、130和WAN140连接的通信线路上。各据点内LAN110、120、130上连接有多个终端111~113、121~123、131~133。另外,终端、装置及网络的数目除了图示以外也可以包括适当的数目。
装置101对从LAN110对WAN140的正在进行数据发送的TCP通信的发送连接数、从LAN110向WAN140的线路141的发送访问频带进行管理。并且,利用发送连接数和发送访问频带的信息,为了避免一个TCP通信过于使用线路频带,对平均一个连接的通信频带的最大值进行限制,从而确保连接间的公平性。
例如,在线路141的发送访问频带为100Mbps并且TCP通信的发送连接数为10时,将平均一个连接的通信频带的最大值限制为10Mbps,并且实施TCP通信的频带控制。
装置102对从WAN140向LAN120的正在接收数据的TCP通信的接收连接数、从WAN140向LAN120的线路142的接收访问频带进行管理。装置102中,不仅流入来自装置101的通信数据,还流入来自装置103的通信数据。装置102向装置101装置103通知通过自身装置正在管理的接收连接数和接收访问频带的信息。装置101除了使用自身装置的发送连接数和发送访问频带的信息以外,还使用对向装置102的接收连接数和接收访问频带的信息,为了避免一个TCP通信过载使用线路141或线路142的频带,对平均一个连接的通信频带的最大值进行限制,从而确保连接间的公平性。
例如,在线路141的发送访问频带为100Mbps、线路142的接收访问频带为40Mbps、装置101的发送连接数为10并且装置102的接收连接数为8时,线路141中的平均一个连接的通信频带的最大值为10Mbps,但线路142中的平均一个连接的通信频带的最大值为5Mbps。这种情况下,装置101将向装置102的TCP通信的平均一个连接的通信频带的最大值限制为两者中的较少的线路142中的最大值5Mbps,从而能够实现不仅考虑了自身装置的处于连接状态的线路141,还考虑了远程的线路142的、连接间的公平性。在仅利用自身装置的信息来将平均一个连接的通信频带的最大值限制为10Mbps时,将过载使用线路142的频带,因此也利用对向装置的信息来综合地限制频带是重要的。
图11中,表示本实施方式的通信装置1111的框图。相当于图1的装置101、102、103。
装置1111包括:一个或多个卡1100-(1~s)、一个或多个NIF(Network InterFace:网络接口)1106-(1~t)、多个开关1104-(1~w)、用于在它们间互换数据的连接部(1105-(1~s)、1110-(1~t))、以及用于对卡1100、NIF1106和开关1104进行管理的管理部1120。
卡1100-(1~s)包括:进行TCP通信中继的TCP变换部200-(1~s)、收纳多个网络线路1103-(1~s)-(1~e)并进行包的收发的接口1102-(1~s)、以及在TCP变换部200-(1~s)、接口1102-(1~s)、连接部1105-(1~s)之间进行包的收发的开关1101-(1~s)。
NIF#1~t(1106-(1~t))包括:收纳多个网络线路1109-(1~t)-(1~i)-(1~f)并进行包的收发的多个接口1107-(1~t)-(1~i)、以及在接口1107-(1~t)-(1~i)与连接部1110-(1~t)之间进行包的收发的开关1108-(1~t)。
管理部1120上连接终端(管理终端)1121,能够从终端1121收发管理用的信息以外,还能够向终端1121发送内部的信息,还能够在终端1121显示内部信息。
装置1111中,网络线路1103-(1~s)-(1~e)或网络线路1109-(1~t)-(1~i)-(1~f)中的任一个以上与LAN连接,网络线路1103-(1~s)-(1~e)或网络线路1109-(1~t)-(1~i)-(1~f)中的任一个以上与WAN连接。从LAN输入到装置1111的包被向TCP变换部200中的任一个转送,之后,向WAN输出。从WAN被输入到装置1111的包被转送到TCP变换部200中的任一个,之后,向LAN输出。
装置1111在从网络线路1103-(1~s)-(1~e)或网络线路1109-(1~t)-(1~i)-(1~f)接收包时,判断是否是应该进行TCP变换的包。例如,能够基于包的标头信息进行判断。在判断为是应该进行TCP变换的包时,向TCP变换部200转送。不进行TCP变换的包与通常的路由器或开关同样地进行转送。TCP变换部200对于被转送来的包进行了TCP通信的中继处理后,与通常的路由器或开关同样地进行转送。
图2中,表示进行TCP通信中继的TCP变换部200的框图。
TCP变换部200具有:进行用于TCP通信的控制的WAN侧及LAN侧的TCP处理部203/209、WAN侧的TCP209管理的N个发送缓存器207及N个接收缓存器208、LAN侧的TCP203管理的N个发送缓存器205及N个接收缓存器204、在收发缓存器间进行数据替换(乗せ換え)的代理206、包括N个输入的状态表(状态存储区域)212、包括N个输入的频带表213、用在装置1111内的TCP变换部200之间交换正在进行数据发送的连接数或正在进行数据接收的连接数的信息的信息交换部230、将包分配到WAN侧的TCP处理部209或LAN侧的TCP处理部203或信息交换部230的分配部221、以及将从WAN侧的TCP处理部209或LAN侧的TCP处理部203或信息交换部230发送出的包汇总后与通常的路由器或开关同样地进行转送的汇总部220。此外,上述的N个也可以是分别不同的数。
分配部221判断被转送来的包是从LAN侧来的包还是从WAN侧来的包,将从LAN侧来的包向LAN侧的TCP处理部203转送,将从WAN侧来的包向WAN侧的TCP处理部209转送。是从LAN侧来的还是从WAN侧来的也可以利用例如包内的适当的信息来判断。
关于TCP处理部203、209、代理206,在后详述,在此叙述概略。
LAN侧的TCP处理部203包括:发送履历更新部725、包再发送部724、接收履历更新部726、分配部728以及汇总部732。接收履历更新部726将接收到的包数据存储于LAN侧接收缓存器204。并且,接收履历更新部726根据进行了存储的数据大小,更新状态表212的缓存器管理指针(508~510,515~517,521~526)的信息。并且,接收履历更新部726将记载有接收到的数据的位置的ACK包经由汇总部732并返送。发送履历更新部725将从LAN侧发送缓存器205读出的发送数据打包并发送,并且根据读出的发送数据大小,更新状态表212的缓存器管理指针(508~510,515~517,521~526)的信息。
WAN侧的TCP处理部209包括:发送频带控制部715、发送履历更新部705、包再发送部704、接收履历更新部706、分配部708以及汇总部712。接收履历更新部706将接收到的包数据存储于WAN侧接收缓存器208。并且,接收履历更新部706根据进行了存储的数据大小,更新状态表212的缓存器管理指针(508~510,515~517,521~526)的信息。并且,接收履历更新部706将记载有接收到的数据的位置的ACK包经由汇总部712并返送。发送频带控制部715将测量出的发送频带(532~534)和再发送频带(530,531)的信息存储于状态表212。发送履历更新部705将从WAN侧发送缓存器207读出的发送数据打包并发送,并且根据读出的发送数据大小,更新状态表212的缓存器管理指针(508~510,515~517,521~526)的信息。
代理206包括:数据读出部(601,606)、数据加工部(602,605)以及数据写入部(603,604)。数据加工部(602,605)将正在进行加工的数据大小(529,530)的信息存储于状态表212。数据读出部(601,606)根据从接收缓存器(204,208)读出的数据大小,更新状态表212的缓存器管理指针(508~510,515~517,521~526)的信息。数据写入部(603,604)根据写入到发送缓存器(207,205)的数据大小,更新状态表212的缓存器管理指针(508~510,515~517,521~526)的信息。
图3中,表示收发缓存器管理用的指针的说明图。在本图中,设从左向右写入数据并从左向右读出。
接收缓存器对表示接收到的数据的开头的指针right_recv303、表示编队完毕数据与未编队数据的边界的指针left_recv302、表示代理206已经读出完毕的数据与还未读出的数据的边界的left_rbuf301进行管理。
没有损耗产生地从前端起按顺序地接收数据时,表示接收到的数据的开头的指针right_recv303增加接收到的数据大小的量并向右移动。在不能接收并且变得缺损的数据位置(损耗段)存在的状态下,接收再发送包,损耗段消灭时,表示编队完毕数据与未编队数据的边界的指针left_recv302移动到最小的损耗段的左端为止。代理206从表示读出完毕数据与未读出数据的边界的left_rbuf301起向右按顺序地读出数据,并使left_rbuf301向右移动读出的数据大小的量。读出的数据大小的最大值是left_recv302与left_rbuf301之差。
发送缓存器对表示代理206写入完毕并且变为能够发送的状态的数据的开头的指针right_sbuf306、表示已经发送完毕的数据的开头的指针right_send305、表示从接收侧接收确认应答完毕的数据的开头的指针left_send304进行管理。
表示代理206写入完毕并且变为能够发送的状态的数据的开头的指针right_sbuf306每当代理206写入数据就增加写入的数据大小的量,并向右移动。将表示发送完毕数据的开头的指针right_send305作为起点向右发送新的数据,right_send305增加所发送的数据大小的量,并向右移动。在从接收侧接收具有比left_send304的大的接收序列编号的确认应答包时,left_send304增加到在确认应答包中所记载的接收序列编号,并向右移动。
图4中,表示装置收发的包的格式图。包中包含MAC标头400、IP标头410、TCP标头420、TCP任选报头430以及有效负载450。MAC标头400包含:表示目的地MAC地址的DMAC401、表示发送源MAC地址的SMAC402、表示MAC帧类型的Type403。IP标头410包含:表示除了MAC标头以外的包长的IP length411、表示协议编号的protocol412、表示发送源IP地址的SIP413、表示目的地IP地址的DIP414。TCP标头420包含:表示发送源端口编号的src.port421、表示目的地端口编号的dst.port422、表示发送序列编号的SEQ423、表示接收序列编号的ACK424、表示TCP标记编号的flag425、表示TCP的标头长的tcphlen426。TCP任选报头430包含:表示选项类别的option kind431、表示选项长度的option length432、对从哪里到哪里能够局部地接收进行记载的left_edge_1~4(433,435,437,439)、right_edge_1~4(434,436,438,440)。left_edge_1~4(433,435,437,439)、right_edge_1~4(434,436,438,440)中记载无法接收的部分的情况也存在。并且,TCP任选报头430中记载发送访问线路频带max_send_bandwidth443、接收访问线路频带max_recv_bandwidth441、正在进行数据接收的连接数recv_number442及正在进行数据发送的连接数send_number444,可以使用于装置间的信息交换、装置内的TCP变换部彼此的信息交换等。
图5中,表示状态表212的格式图。
各TCP变换部200的状态表212具有:例如用于记录每个TCP连接的状态的n个输入520、记录装置1111的发送访问线路频带的max_snd_bandwidth539、记录装置1111的接收访问线路的max_rcv_bandwidth540、记录装置1111整体的正在进行数据发送的TCP连接数的all_snd_num536、记录装置1111整体的正在进行数据接收的TCP连接数的all_rcv_num538、记录各TCP变换部200正在进行数据发送的TCP连接数的snd_num535、记录各TCP变换部200正在进行数据接收的TCP连接数的rcv_num537、记录各TCP连接的最小频带的each_min_bandwidth543。
各输入520具有:例如,记载输入是否正在进行使用的VLD501、对LAN或WAN侧的连接是否正在进行确立进行记载的connect_state502、表示LAN侧的终端的IP地址的LIP503、表示WAN侧的终端的IP地址的WIP504、表示LAN侧的终端的TCP端口编号的Lport505、表示WAN侧的终端的TCP端口编号的Wport506、表示LAN侧的TCP通信的状态的lan_state507、表示LAN侧的接收缓存器管理用的指针的lan_left_rbuf508、lan_left_recv509、lan_right_recv510、表示LAN侧的窗口标度选项的值的lan_ws511、表示LAN侧的平均RTT的lan_rtt512、表示LAN侧的拥塞窗口大小的cwnd513、表示从LAN侧的接收缓存器被读出并正在进行加工的数据大小的lan_wan528、表示LAN侧的发送缓存器管理用的指针的lan_left_send521、lan_right_send522、lan_right_sbuf523、表示对LAN侧的发送终端通知的接收窗口大小的rwnd527、表示WAN侧的TCP通信的状态的wan_state514、表示WAN侧的接收缓存器管理用的指针的wan_left_rbuf515、wan_left_recv516、wan_right_recv517、表示WAN侧的窗口标度选项的值的wan_ws518、表示WAN侧的平均RTT的wan_rtt519、表示从WAN侧的接收缓存器被读出并正在进行加工的数据大小的wan_lan529、表示WAN侧的发送缓存器管理用的指针的wan_left_send524、wan_right_send525、wan_right_sbuf526、表示WAN侧的最近的再发送率是rts_ratio530、表示WAN侧的过去的再发送率的old_rts_ratio531、表示WAN侧的最近的发送频带的snd532、表示WAN侧的过去的发送频带的old_snd533、表示WAN侧的进一步再过去的发送频带的old_old_snd534。还具有:记录对向装置的正在进行数据接收的连接数的each_rcv_num541、记录对向装置的接收访问线路频带的each_rcv_bandwidth542。
each_rcv_num541、each_rcv_bandwidth542基于对向装置通知来的信息而被更新。例如,包再发送部704利用在对向装置发送来的ACK包的TCP选项字段中记载的值等,针对每个TCP连接来更新。each_rcv_num541、each_rcv_bandwidth542例如与从相应的输入对应的TCP通信的对向装置接收。
max_snd_bandwidth539、max_rcv bandwidth540等经由终端1121经由等手动更新。
snd_num535、rcv_num537由信息交换部230更新。信息交换部230例如针对状态表212的每个输入检查缓存器存储量(right_sbuf与left_send的差、right_recv与left_rbuf的差的合计),数据被存储在发送缓存器中的输入通过判断从而计算为正在进行数据发送的连接,数据被存储在接收缓存器中的输入通过判断从而计算为正在进行数据接收的连接。
all_rcv_num538、all_snd_num536基于装置1111内部的其他的全部TCP变换部200之间的信息交换而被更新。TCP变换部200的信息交换部230对于其他的全部TCP变换部200通知自己的snd_num535、rcv_num537,并且计算从其他的全部TCP变换部200通知来的snd_num535、rcv_num537的合计值,从而获得all_rcv_num538、all_snd_num536,并定期更新。信息交换部230将自身装置中正在进行数据接收的TCP连接的合计值all_rcv_num538、被连接的线路的最大接收频带max_rcv_bandwidth540通知至TCP通信的对向装置。
图6中,表示代理206的框图。
代理206具有:从LAN侧的接收缓存器rbuf204读出数据的数据读出部601、对于读出的数据进行压缩、解压缩、加密、解密、删除、复制、补写等加工的数据加工部602、将加工完毕数据向WAN侧的发送缓存器sbut207写入的数据写入部603、从WAN侧的接收缓存器rbuf208读出数据的数据读出部606、对于读出的数据进行压缩、解压缩、加密、解密、删除、复制、补写等加工的数据加工部605、将加工完毕数据向LAN侧的发送缓存器sbuf205写入的数据写入部604。也可以在数据加工部602和数据加工部605之间进行数据的互换。数据的加工也可以是上述的例子以外。
数据读出部601根据从在从lan_left_rbuf508到lan_left_recv509之间存储的编队完毕数据读出的开头数据,估计应当读出的数据大小、数据加工后的数据大小。作为开头数据,可以使用TLS(TransportLayer Security)/SSL(Secure Socket Layer)标头、SMB(Server MessageBlock)标头等等。根据在TLS/SSL标头中所记载的值,能够估计解密后的除了检查和、标头以外的普通文件(平文)数据大小。根据SMB标头,能够估计进行了预取后的指令数据大小。估计出的加工后的数据大小,wan_right_sbuf526与wan_left_send524的差、即未发送数据和ACK确认等待数据的合计值,不超过WAN侧的发送缓存器大小wan_sbuf_size时,读出数据并向数据加工部602转送。并且,将估计出的应当读出的数据大小和数据加工后的数据大小中的、大的一方记载到状态表212的lan_wan528。详细参照图9所示的流程图在后阐述。
数据读出部606根据从在从wan_left_rbuf515到wan_left_recv516之间存储的编队完毕数据读出的开头数据,估计应当读出的数据大小和数据加工后的数据大小。作为开头数据,也可以使用TLS(TransportLayer Security)/SSL(Secure Socket Layer)标头、SMB(Server MessageBlock)标头等等。估计出的加工后的数据大小,lan_right_sbuf523和lan_left_send521的差、即未发送数据与ACK确认等待数据的合计值,不超过LAN侧的发送缓存器大小lan_sbuf_size时,读出数据,并向数据加工部605转送。并且,将估计出的应当读出的数据大小和数据加工后的数据大小中的、较大的一方记载到状态表212的wan_lan529。详细参照图10所示的流程图后述。
图9和图10中,分别表示数据读出部601和数据读出部606的数据读出处理的流程图。
图9的各步骤由数据读出部601执行。
数据读出部601在使处理开始后(步骤900),首先,进行lan_left_recv509是否比lan_left_rbuf508大的比较,判断在LAN侧的接收缓存器204中是否存在编队完毕数据(步骤901)。当在步骤901中判断为不大时、即在不存在编队完毕数据时,重复步骤901。当在步骤901中判断为大时、即存在编队完毕数据时,接着根据位于lan_left_recv509到lan_left_rbuf508之间的编队完毕数据的开头数据,估计应当读出的数据大小和数据加工后的数据大小(步骤906)。作为开头数据,也可以使用TLS(Transport Layer Security)/SSL(SecureSocket Layer)标头、SMB(Server Message Block)标头等等。接着,进行wan_right_sbuf526与wan_left_send524的差分(未发送数据与ACK确认等待数据的合计值)与WAN侧的发送缓存器大小wan_sbuf_size的差分(缓存器剩余空间大小)是否比在步骤906中估计出的加工后的数据大小大的比较(步骤902)。在通过步骤902判断为大时,从LAN侧的接收缓存器204读出通过步骤906估计出的应当读出的数据大小的数据(步骤903)。当通过步骤902判断为否时,仅在不进行数据加工时,从LAN侧的接收缓存器204读出与wan_right_sbuf526和wan_left_send524的差分(未发送数据与ACK确认等待数据的合计值)与WAN侧的发送缓存器大小wan_sbuf_size的差分(缓存器剩余空间大小)相当的大小的数据(步骤904)。所读出的数据经由数据加工部602被输出至数据写入部603。数据读出后,对lan_left_rbuf508加上所读出的数据大小(步骤905)。步骤905之后,返回到步骤901。此外,在数据写入部603写入数据时,wan_right_sbuf526仅增加进行了写入的数据大小的量。
图10的各步骤由数据读出部606执行。数据读出部606在使处理开始后(步骤1000),首先进行wan_left_recv516是否比wan_left_rbuf515大的比较,判断WAN侧的接收缓存器208中是否存在编队完毕数据(步骤1001)。当在步骤1001中判断为不大时、即不存在编队完毕数据时,重复步骤1001。当在步骤1001中判断为大时、即存在编队完毕数据时,接着,根据位于wan_left_recv516到wan_left_rbuf515之间的编队完毕数据的开头数据,估计应当读出的数据大小和数据加工后的数据大小(步骤1006)。作为开头数据,也可以使用TLS(Transport Layer Security)/SSL(SecureSocket Layer)标头、SMB(Server Message Block)标头等等。接着,进行lan_right_sbuf523和lan_left_send521的差分(未发送数据与ACK确认等待数据的合计值)与LAN侧的发送缓存器大小lan_sbuf_size的差分(缓存器剩余空间大小)是否比通过步骤1006估计出的加工后的数据大小大的比较(步骤1002)。当通过步骤1002判断为大时,从WAN侧的接收缓存器208读出通过步骤1006估计出的应当读出的数据大小的数据(步骤1003)。当通过步骤1002判断为否时,仅在不进行数据加工时,从WAN侧的接收缓存器208读出与lan_right_sbuf523和lan_left_send521的差分(未发送数据与ACK确认等待数据的合计值)与LAN侧的发送缓存器大小lan_sbuf_size的差分(缓存器剩余空间大小)相当的大小的数据(步骤1004)。所读出的数据经由数据加工部605被输出至数据写入部604。数据读出后,对wan_left_rbuf515加上所读出的数据大小(步骤1005)。步骤1005之后,返回到步骤1001。此外,在数据写入部604写入数据时,lan_right_sbuf523仅增加进行了写入的数据大小的量。
图7A中,表示WAN侧的TCP处理部209的框图。
实现TCP通信的TCP处理部209具有:进行接收处理的RX部(接收部)702、进行发送处理的TX部(发送部)701。
RX部702具有:包分配部716,将接收包分离成TCP控制包、附带数据的包及ACK包;TCP控制部707,基于接收到的TCP控制包来变更状态表212内的TCP状态lan_state507、wan_state514;以及接收履历更新部706,基于接收到的数据包的发送序列编号SEQ423和接收序列编号ACK424,变更状态表212内的缓存器管理指针并返送ACK包。
TX部701具有:TCP控制部703,利用状态表212内的TCP状态lan_state507、wan_state514来发送TCP控制包;包再发送部704,基于接收到的ACK包来变更状态表212内的缓存器管理指针,利用接收到的ACK包记载的部分的确认应答left_edge_1~4(433,435,436,439)、right_edge_1~4(434,436,438,440),来从发送缓存器sbuf207读出数据并对包进行再发送;发送履历更新部705,发送载有从发送缓存器sbuf207读出的数据的包,变更状态表212内的缓存器管理指针;分配部708;接受再发送包和数据包,分配至缓存器1~n(709-1~n),并且将各TCP连接的发送/再发送比特长通知至发送频带控制部715;计时器713,生成当前时刻并通知至发送频带控制部715;间隔保存部714,保存间隔时间(预先确定的固定值,或测量出的RTT等)并通知至发送频带控制部715;发送频带控制部715,对频带表213进行控制,将各TCP连接的令牌大小通知至令牌更新部;令牌更新部717,针对每个TCP连接,对令牌桶进行管理,将能够发送的连接通知至多路转换器712;多路转换器712以FIFO将ACK包、TCP控制包、再发送包、数据包汇总并输出;以及缓存器709~711。
在本实施例中,对TX部701的各块中的、按各TCP通信的控制频带(最大发送频带)发送数据的块(例如,令牌更新部717、多路转换器712、缓存器709等)进行归纳并称为发送控制部的情况也存在。
图7B中,表示LAN侧的TCP处理部203的框图。
实现TCP通信的TCP处理部203具有:进行接收处理的RX部(接收部)722、进行发送处理的TX部(发送部)721。
RX部722具有:包分配部728,将接收包分离成TCP控制包、附带数据的包及ACK包;TCP控制部727,基于接收到的TCP控制包来变更状态表212内的TCP状态lan_state507、wan_state514;以及接收履历更新部726,基于接收到的数据包的发送序列编号SEQ423和接收序列编号ACK424,变更状态表212内的缓存器管理指针并返送ACK包。
TX部721具有:TCP控制部723,利用状态表212内的TCP状态lan_state507、wan_state514来发送TCP控制包;包再发送部724,基于接收到的ACK包来变更状态表212内的缓存器管理指针,利用接收到的ACK包记载的部分的确认应答left_edge_1~4(433,435,436,439)、right_edge_1~4(434,436,438,440),来从发送缓存器sbuf205读出数据并对包进行再发送;发送履历更新部725,发送载有从发送缓存器sbuf205读出的数据的包,变更状态表212内的缓存器管理指针;多路转换器732,以FIFO将ACK包、TCP控制包、再发送包、数据包汇总并输出;以及缓存器729~731。
WAN侧TCP处理部209的发送频带控制部715对基准时刻这一内部变量进行管理。基准时刻与计时器713的当前时刻之差变得比间隔保存部714的间隔时间大时,对基准时刻加上间隔时间来作为新的基准时刻。加法运算前的基准时刻成为旧基准时刻。即,当前正在使用的基准时刻的前一个使用了的基准时刻成为旧基准时刻。
图8中,表示发送频带控制部715管理的频带表213的格式。
频带表213对每个连接记录基准时刻、基准时刻后的发送比特累计值、再发送比特累计值和控制频带、基准时刻前的发送频带、再发送频带和控制频带以及旧基准时刻前的发送频带和控制频带。
基准时刻后的控制频带表示当前时刻中的控制频带(在本实施例中,表示为token)。基准时刻后的发送频带表示当前时刻中的发送频带(在本实施例中,表示为snd),通过基准时刻后的发送比特累计值除以当前时刻与基准时刻的差分来求出。基准时刻后的再发送频带表示当前时刻中的再发送频带(在本实施例中,表示为rts),通过基准时刻后的再发送比特累计值除以当前时刻与基准时刻的差分来求出。基准时刻前的控制频带、发送频带和再发送频带表示从旧基准时刻起基准时刻为止的控制频带、发送频带和再发送频带的平均值(在本实施例中,表示为old_token、old_snd、old_rts)。旧基准时刻前的控制频带和发送频带表示即将到达旧基准时刻前为止的控制频带和发送频带(在本实施例中,表示为old_old_token、old_old_snd)。基准时刻前的再发送率old_rts_ratio通过old_rts/old_old_snd来求出。另外,基准时刻后的当前的再发送率rts_ratio通过rts/old_snd来求出。作为间隔时间,使用状态表212记载的wan_rtt519的情况也存在。
图12中,表示旧基准时刻、基准时刻和当前时刻与其前后的控制频带、发送频带和再发送频带的关系。
基准时刻与旧基准时刻之差是间隔时间。旧基准时刻前的间隔时间的控制频带和发送频带的平均值表示为old_old_token、old_old_snd(1203)。从旧基准时刻起基准时刻为止的控制频带、发送频带和再发送频带的平均值表示为old_token、old_snd、old_rts(1202)。从基准时刻起当前时刻为止的控制频带、发送频带和再发送频带的平均值表示为token、snd、rts(1201)。
发送频带控制部715利用在频带表213中记载的值,如上所述地即使rts_ratio530和old_rts_ratio531,确定控制频带(token),并传至令牌更新部717。并且,更新状态表212。
利用图2,对从LAN侧接收到附带数据的包时的包的流程进行说明。
从LAN侧到来的附带数据的包进入LAN侧TCP处理部203,并到达接收履历更新部726。接收履历更新部726经由汇总部732将ACK包返送至LAN侧,将包中所记载的数据存储到LAN侧接收缓存器rbuf204。并且,基于存储数据大小来更新状态表212的指针。数据读出部601读出在LAN侧接收缓存器rbuf204所存储的编队完毕数据,向数据加工部602转送。并且,基于读出的数据大小更新状态表212的指针。数据加工部602对数据进行加工,向数据写入部603转送。并且,基于正在进行加工的数据大小来更新状态表212的正在进行加工的数据大小。数据写入部603将加工完毕数据写入WAN侧发送缓存器sbuf207。并且,基于进行了写入的数据大小来更新状态表212的指针。被写入到WAN侧发送缓存器sbuf207的数据被发送履历更新部705读出,并作为附带数据的包向WAN侧发送。
进一步对接收履历更新部726进行说明时,通过从LAN侧的接收缓存器的最大值减去lan_right_recv510与lan_left_rbuf508的差分,从而计算接收缓存器的剩余量。在有效负载450的大小为接收缓存器的剩余量以下时,将在有效负载450中所记载的数据全部保存于接收缓存器。在有效负载450的大小比接收缓存器的剩余量大时,仅将从有效负载450的开头起与接收缓存器的剩余量相当的大小的数据保存于接收缓存器。在保存数据大小比0大时,基于在附带数据的包的TCP标头420所记载的SEQ423的值和保存数据大小,进行接收缓存器管理用指针的更新。例如,在对包标头记载的SEQ423加上保存数据大小而得到的值比lan_right_recv510大时,将lan_right_recv510变更为对SEQ423加上保存数据大小而得到的值。并且,以接收数据的最后尾成为lan_right_recv510的方式,将接收数据记载于LAN侧的接收缓存器。之后,向LAN侧返送将接收窗口大小rwnd527记载于TCP标头420的win_size427并将接收缓存器管理指针之一的lan_left_recv509记载于TCP标头420的ACK424的ACK包。
此外,在接收履历更新部726中,是否保存数据的判断中,rwnd527的值未被使用。为此,即使rwnd527为0,如果接收缓存器的剩余量比0大,则在有效负载450中所记载的数据被保存于接收缓存器,具有增加后的ACK424的ACK包被返送至LAN侧。
另外,进一步对发送履历更新部705进行说明时,从WAN侧发送缓存器sbuf207读出从wan_right_send525起向右方向最大到wan_right_sbuf526为止的数据。wan_right_send525增加所读出的数据大小的量,并向右移动。并且,向WAN侧发送追加了将所读出的数据记载于有效负载450并且将wan_right_send525记载于SEQ423的TCP标头420后的附带数据的包。
(控制频带的更新处理)
控制频带的更新处理另外通过信息交换部230如上所述地进行自身装置与其他信息交换部之间的信息通知及接收、与对向装置的信息交换部之间的信息通知及接收,更新状态表212的各信息。
图13A中,表示表示发送频带控制部715更新控制频带(token)时的概念性的流程图。发送频带控制部715按照本流程图执行处理,从而不仅利用根据自身装置的发送访问线路频带和正在进行数据发送的连接数求出的自身装置的平均一个连接的频带,也利用根据从对向装置通知的接收访问线路频带和正在进行数据接收的连接数求出的对向装置的平均一个连接的频带,由此能够更公平地限制频带,并且能够实现基于再发送率的频带控制。图13A的各步骤由发送频带控制部715来执行。
控制频带的更新处理开始后(步骤1301),发送频带控制部715判断包再发送率(=rts/old_token或rts/old_snd)的增加率是否超过一定值(预先确定的阈值)(步骤1302)。在超过了时,用当前的再发送频带(rts)和以前(基准时刻之前的)控制频带(old_token)或昔的(基准时刻之前的)发送频带(old_snd),更新控制频带(token)(步骤1303)。例如,使基准时刻之前的控制频带减去与当前的再发送频带相应的量,来作为当前时刻的控制频带。另一方面,在未超过时,使控制频带增加(步骤1304)。在步骤1303或步骤1304之后,基于自身装置的连接数和访问频带、及对向装置的连接数和访问频带,更新控制频带(token)(步骤1305)。最后,基于各连接的最小频带(each_min_bandwidth543),更新控制频带(token)(步骤1306)。通过变更控制频带(token),从而在令牌桶中存储的令牌的量变化,由此能够变更包的发送率。
图13B中,表示发送频带控制部715利用频带表213记载的值来变更控制频带(token)的流程图。表示使图13A更详细的例子。图13B的各步骤由发送频带控制部715来执行。
控制频带(token)的更新处理开始后(步骤1306),发送频带控制部715判断计时器713输出的当前时刻与频带表213记载的基准时刻之差是否为间隔保存部714输出的间隔时间以上(步骤1307)。作为间隔时间,可以使用记录了测量出的RTT的平均值或初始值等的wan_rtt519等。当在步骤1307中判断为真时,使tmp保留基准时刻后的当前的控制频带token的值(步骤1308)。并且,例如,判断通过在频带表213所存储的再发送比特累计值(基准时刻后)/(当前时刻-基准时刻)/发送频带(基准时刻前)求出的再发送率(基准时刻后)rts_ratio是否比通过再发送频带(基准时刻前)/发送频带(旧基准时刻前)求出的旧再发送率(基准时刻前)old_rts_ratio的K倍(K:预先确定的1以上的系数)大(步骤1309)。与上述的步骤1302相当。K的值可以设为固定,也可以设为根据token的值而变化。在步骤1309中,判断为大时是判断为再发送率的增加率较大,为了使控制频带(基准时刻后)token的值比控制频带(基准时刻前)old_token的值小,例如用再发送频带rts使之减小。例如,设为控制频带(基准时刻后)token=控制频带(基准时刻前)old_token-再发送频带(基准时刻后)rts等(步骤1311)。在步骤1309中判断为假时,使控制频带(基准时刻后)token增加(步骤1310)。控制频带(基准时刻后)token的增加方法可以是使之线性地增加,也可以是使之指数地增加,也可以使线性增加和指数增加组合,也可以最初使之线性增加之后使之指数增加,也可以使增加率根据控制频带(基准时刻后)token而变化。
步骤1311或步骤1310完成后,例如更新为:发送频带(旧基准时刻前)old_old_snd=发送频带(基准时刻前)old_snd,发送频带(基准时刻前)old_snd=发送频带(基准时刻后)snd,再发送频带(基准时刻前)old_rts=再发送频带(基准时刻后)rts,基准时刻=基准时刻+往返,发送比特累计值(基准时刻后)=0,再发送比特累计值(基准时刻后)=0,控制频带(旧基准时刻前)old_old_token=控制频带(基准时刻前)old_token,控制频带(基准时刻前)old_token=tmp,并将各值记录于频带表213(步骤1312)。之后转移到步骤1315。
另一方面,在步骤1307中判断为假时,与步骤1309同样地,判断通过再发送比特累计值(基准时刻后)/(当前时刻-基准时刻)/发送频带(基准时刻前)求出的再发送率(基准时刻后)rts_ratio是否比通过再发送频带(基准时刻前)/发送频带(旧基准时刻前)求出的旧再发送率(基准时刻前)old_rts_ratio的K倍(K:预先确定的1以上的系数)大(步骤1313)。K的值可以设为固定,也可以设为根据token的值而变化。在步骤1313中判断为大时是判断为再发送率的变化率较大,与步骤1311同样地,为了使控制频带(基准时刻后)token的值比控制频带(基准时刻前)old_token的值小,用再发送频带rts使之减少。例如,设为控制频带(基准时刻后)token=控制频带(基准时刻前)old_token-再发送频带(基准时刻后)rts(步骤1314)。在步骤1313中判断为小或相等时,什么都不做。通过这些步骤,即使不经过间隔时间,也能够立即检测再发送率的增加并能够更新控制频带。之后转移到步骤1315。
在步骤1315中,在控制频带(基准时刻后)token比将装置1111的发送访问线路频带max_snd_bandwidth539除以装置1111的正在进行数据发送的TCP连接数all_snd_num536而得到的平均一个连接的发送访问线路频带大时,将控制频带(基准时刻后)token变更为平均一个连接的发送访问线路频带。并且,在控制频带(基准时刻后)token比将对向装置的接收访问线路频带each_rcv_bandwidth542除以对向装置的正在进行数据接收的TCP连接数each_rcv_num541而得到的平均一个连接的接收访问线路频带大时,将控制频带(基准时刻后)token变更为平均一个连接的接收访问线路频带(步骤1315)。并且,控制频带(基准时刻后)token比各TCP通信的最小频带each_min_bandwidth小时,将控制频带(基准时刻后)token变更为各TCP通信的最小频带each_min_bandwidth(步骤1316)。即取通过以图13B所示的两个式子确定的token中的任一个小的一方。此外,步骤1315、1316中的各自的数据能够参照状态表212而读出。通过变更控制频带(token),从而在令牌桶中存储的令牌的量变化,由此能够变更包的发送率。
这样,不仅利用根据自身装置的发送访问线路频带和正在进行数据发送的连接数求出的自身装置的平均一个连接的频带,也利用根据从对向装置通知的接收访问线路频带和正在进行数据接收的连接数求出的对向装置的平均一个连接的频带,由此能够更公平地限制频带,并且能够实现基于再发送率的频带控制。
图22中,表示步骤1305及步骤1315的详细的处理例的流程图。图22的各步骤由发送频带控制部715来执行。
处理开始后(步骤2201),从状态表212读出装置1111的发送访问线路频带max_snd_bandwidth539、装置1111的正在进行数据发送的TCP连接数all_snd_num536、对向装置的接收访问线路频带each_rcv_bandwidth542、对向装置的正在进行数据接收的TCP连接数each_rcv_num541的信息(步骤2208)。判断将装置1111的发送访问线路频带max_snd_bandwidth539除以装置1111的正在进行数据发送的TCP连接数all_snd_num536而得到的平均一个连接的发送访问线路频带是否比将对向装置的接收访问线路频带each_rcv_bandwidth542除以对向装置的正在进行数据接收的TCP连接数each_rcv_num541而得到的平均一个连接的接收访问线路频带大(步骤2202)。在大时,判断控制频带(基准时刻后)token是否比对向装置的平均一个连接的接收访问线路频带大(步骤2203)。将在大时,控制频带(基准时刻后)token变更为对对向装置的平均一个连接的接收访问线路频带加上常数α而得到的值或乘以常数α而得到的值(步骤2205)。α的值可以是1,也可以是其他值。当在步骤2203中判断为否时,什么也不做并结束(步骤2207)。
另一方面,当在步骤2202中判断为否时,判断控制频带(基准时刻后)token是否比自身装置的平均一个连接的发送访问线路频带大(步骤2204)。在大时,将控制频带(基准时刻后)token变更为对自身装置的平均一个连接的发送访问线路频带加上常数α而得到的值或乘以常数α而得到的值(步骤2206)。当在步骤2204中判断为否时,什么也不做并结束(步骤2207)。并且,将控制频带token写入状态表212及频带表213(步骤2209)。此外,当在步骤2203、2204中判断为否时,也可以省略步骤2209并结束处理。
这样,不仅利用根据自身装置的发送访问线路频带和正在进行数据发送的连接数求出的自身装置的平均一个连接的频带,也利用根据从对向装置通知的接收访问线路频带和正在进行数据接收的连接数求出的对向装置的平均一个连接的频带,由此能够更公平地限制频带,并且能够实现基于再发送率的频带控制。
通过以上的发送频带控制部715更新控制频带的方法,将利用基于过去的发送频带和最近的再发送频带的再发送率的变化率来控制频带的方法和利用在装置间进行了交换的连接数的信息来控制频带的方法组合,能够控制频带。由此,控制频带以在利用可能频带附近上下的方式被更新,因此,能够接近100%地将利用可能频带用完。并且,即使在仅能够进行标准的TCP通信的终端间,也能够实现不依赖于RTT、废弃率的通信。
(动作例)
图14中,表示在包含一个TCP变换部200的装置1111-A与包含一个TCP变换部200的装置1111-B之间基于自身装置的统计信息来进行频带控制的例子的概念图。
设装置1111-A的发送访问线路60Mbps,从三台发送终端(1401~1403)向三台接收终端(1404~1406),经由装置1111-A和装置1111-B,进行三个TCP通信。
在装置1111-A内的TCP变换部200-A内的状态表212-A中,记录有snd_num=3,all_snd_num=3,max_snd_bandwidth=60Mbps。利用本信息,TCP变换部200-A内的发送频带控制部715-A将能够公平分配的TCP通信的平均一个连接的频带计算为20Mbps。发送频带控制部715-A基于再发送率确定了控制频带token后(于步骤1302~1304相当),在控制频带token超过20Mbps时,以控制频带token为20Mbps以下的方式来限制控制频带(与步骤1305相当)。
图15中,表示在包含多个TCP变换部200的装置1111-A与包含一个TCP变换部200的装置1111-B之间基于自身装置的统计信息来进行频带控制的例子的概念图。
设装置1111-A的发送访问线路60Mbps,从三台发送终端(1501~1503)向三台接收终端(1504~1506),经由装置1111-A和装置1111-B,进行三个TCP通信。两个TCP通信经由第1个TCP变换部200-A-1,一个TCP通信经由第2个TCP变换部200-A-2。
在装置1111-A内的TCP变换部200-A-1内的状态表212-A-1中,记录有snd_num=2,all_snd_num=3,max_snd_bandwidth=60Mbps。利用本信息,TCP变换部200-A-1内的发送频带控制部715-A-1将能够公平分配的TCP通信的平均一个连接的频带计算为20Mbps。发送频带控制部715-A-1基于再发送率确定了控制频带token后(与步骤1302~1304相当),在控制频带token超过20Mbps时,以控制频带token为20Mbps以下的方式来限制控制频带(与步骤1305相当)。
在装置1111-A内的TCP变换部200-A-2内的状态表212-A-1中,记录有snd_num=1,all_snd_num=3,max_snd_bandwidth=60Mbps。利用本信息,TCP变换部200-A-2内的发送频带控制部715-A-2将能够公平分配的TCP通信的平均一个连接的频带计算为20Mbps。发送频带控制部715-A-2基于再发送率确定了控制频带token后(与步骤1302~1304相当),在控制频带token超过20Mbps时,以控制频带token为20Mbps以下的方式来限制控制频带(与步骤1305相当)。
图16中,表示在包含一个TCP变换部200的装置1111-A与包含一个TCP变换部200的装置1111-B之间基于对向装置的统计信息来进行频带控制的例子的概念图。
设装置1111-B的接收访问线路30Mbps,从三台发送终端(1601~1603)向三台接收终端(1604~1606),经由装置1111-A和装置1111-B,进行三个TCP通信。
在装置1111-B内的TCP变换部200-B内的状态表212-B中,记录有rcv_num=3,all_rcv_num=3,max_rcv_bandwidth=30Mbps。本信息被载于ACK包等,向发送终端(1601~1603)侧的装置1111-A通知,并记录于TCP变换部200-A的状态表212。基于被通知的信息,TCP变换部200-A内的发送频带控制部715-A以控制频带的最大值为10Mbps的方式调整控制频带。
图17中,表示在包含一个TCP变换部200的装置1111-A与包含多个TCP变换部200的装置1111-B之间基于对向装置的统计信息来进行频带控制的例子的概念图。
设装置1111-B的接收访问线路30Mbps,从三台发送终端(1701~1703)向三台接收终端(1704~1706),经由装置1111-A和装置1111-B,进行三个TCP通信。两个TCP通信经由第1个TCP变换部200-B-1,一个TCP通信经由第2个TCP变换部200-B-2。
在装置1111-B内的TCP变换部200-B-1内的状态表212-B-1中,记录有rcv_num=2,all_rcv_num=3,max_rcv_bandwidth=30Mbps。本信息被载于ACK包等,向发送终端(1701~1703)侧的装置1111-A通知,并记录于状态表212-A。基于被通知的信息,TCP变换部200-A内的发送频带控制部715-A以控制频带的最大值为10Mbps的方式调整控制频带。
在装置1111-B内的TCP变换部200-B-2内的状态表212-B-2中,记录有rcv_num=1,all_rcv_num=3,max_rcv_bandwidth=30Mbps。本信息被载于ACK包等,向发送终端(1701~1703)侧的装置1111-A通知,并记录于状态表212-A。基于被通知的信息,TCP变换部200-A内的发送频带控制部715-A将能够公平分配的TCP通信的平均一个连接的频带计算为10Mbps。发送频带控制部715-A基于再发送率确定了控制频带token后(与步骤1302~1304相当),在控制频带token超过10Mbps时,以控制频带token为10Mbps以下的方式来限制控制频带的(与步骤1305相当)。
图18中,表示在包含一个TCP变换部200的装置1111-A与包含一个TCP变换部200的装置1111-B之间基于自身装置和对向装置的统计信息来进行频带控制的例子的概念图。
设装置1111-A的发送访问线路60Mbps,设装置1111-B的接收访问线路30Mbps,从三台发送终端(1801~1803)向三台接收终端(1804~1806),经由装置1111-A和装置1111-B,进行三个TCP通信。
在装置1111-B内的TCP变换部200-B内的状态表212-B中,记录有rcv_num=3,all_rcv_num=3,max_rcv_bandwidth=30Mbps。本信息被载于ACK包等,向发送终端(1801~1803)侧的装置1111-A通知,并记录于状态表212-A。在装置1111-A内的TCP变换部200-A内的状态表212-A中,记录有snd_num=3,all_snd_num=3,max_snd_bandwidth=60Mbps。利用来自对向装置的信息和自身装置内的记录信息,TCP变换部200-A内的发送频带控制部715-A将能够公平分配的TCP通信的平均一个连接的频带计算为10Mbps。发送频带控制部715-A基于再发送率确定了控制频带token后(与步骤1302~1304相当),在控制频带token超过10Mbps时,以控制频带token为10Mbps以下的方式来限制控制频带的(与步骤1305相当)。
图19中,表示在包含一个TCP变换部200的装置1111-A与包含多个TCP变换部200的装置1111-B之间基于自身装置和对向装置的统计信息来进行频带控制的例子的概念图。
设装置1111-A的发送访问线路60Mbps,设装置1111-B的接收访问线路30Mbps,从三台发送终端(1901~1903)向三台接收终端(1904~1906),经由装置1111-A和装置1111-B,进行三个TCP通信。两个TCP通信经由第1个TCP变换部200-B-1,一个TCP通信经由第2个TCP变换部200-B-2。
在装置1111-B内的TCP变换部200-B-1内的状态表212-B-1中,记录有rcv_num=2,all_rcv_num=3,max_rcv_bandwidth=30Mbps。本信息被载于ACK包等,向发送终端(1901~1903)侧的装置1111-A通知,并记录于状态表212-A。
在装置1111-B内的TCP变换部200-B-2内的状态表212-B-2中,记录有rcv_num=1,all_rcv_num=3,max_rcv_bandwidth=30Mbps。本信息被载于ACK包等,向发送终端(1901~1903)侧的装置1111-A通知,并记录于状态表212-A。
装置1111-A内的TCP变换部200-A内的发送频带控制部715-A利用来自对向装置的信息和自身装置内的记录信息,将能够公平分配的TCP通信的平均一个连接的频带计算为10Mbps。发送频带控制部715-A基于再发送率确定了控制频带token后(与步骤1302~1304相当),在控制频带token超过10Mbps时,以控制频带token为10Mbps以下的方式来限制控制频带的(与步骤1305相当)。
图20中,表示在包含多个TCP变换部200的装置1111-A与包含一个TCP变换部200的装置1111-B之间基于自身装置和对向装置的统计信息来进行频带控制的例子的概念图。
设装置1111-A的发送访问线路60Mbps,设装置1111-B的接收访问线路30Mbps,从三台发送终端(2001~2003)向三台接收终端(2004~2006),经由装置1111-A和装置1111-B,进行三个TCP通信。两个TCP通信经由第1个TCP变换部200-B-1,一个TCP通信经由第2个TCP变换部200-B-2。
在装置1111-B内的TCP变换部200-B内的状态表212-B中,记录有rcv_num=3,all_rcv_num=3,max_rcv_bandwidth=30Mbps。本信息被载于ACK包等,向发送终端(2001~2003)侧的装置1111-A通知,并记录于状态表212-A-1、212-A-2。
在装置1111-A内的TCP变换部200-A-1内的状态表212-A-1中,记录有snd_num=2,all_snd_num=3,max_snd_bandwidth=60Mbps。装置1111-A内的TCP变换部200-A-1内的发送频带控制部715-A-1利用来自对向装置的信息和自身装置内的记录信息,将能够公平分配的TCP通信的平均一个连接的频带计算为10Mbps。发送频带控制部715-A-1基于再发送率确定了控制频带token后(与步骤1302~1304相当),在控制频带token超过10Mbps时,以控制频带token为10Mbps以下的方式来限制控制频带的(与步骤1305相当)。
在装置1111-A内的TCP变换部200-A-2内的状态表212-A-2中,记录有snd_num=1,all_snd_num=3,max_snd_bandwidth=60Mbps。装置1111-A内的TCP变换部200-A-2内的发送频带控制部715-A-2利用来自对向装置的信息和自身装置内的记录信息,将能够公平分配的TCP通信的平均一个连接的频带计算为10Mbps。发送频带控制部715-A-2基于再发送率确定了控制频带token后(与步骤1302~1304相当),在控制频带token超过10Mbps时,以控制频带token为10Mbps以下的方式来限制控制频带的(与步骤1305相当)。
图21中,表示在包含多个TCP变换部200的装置1111-A与包含多个TCP变换部200的装置1111-B之间基于自身装置和对向装置的统计信息来进行频带控制的例子的概念图。
设装置1111-A的发送访问线路60Mbps,设装置1111-B的接收访问线路30Mbps,从三台发送终端(2101~2103)向三台接收终端(2104~2106),经由装置1111-A和装置1111-B,进行三个TCP通信。两个TCP通信经由第1个TCP变换部200-A-1和TCP变换部200-B-1,一个TCP通信经由第2个TCP变换部200-A-2和TCP变换部200-B-2。
在装置1111-B内的TCP变换部200-B-1内的状态表212-B-1中,记录有rcv_num=2,all_rcv_num=3,max_rcv_bandwidth=30Mbps。本信息被载于ACK包等,向发送终端(2101~2103)侧的装置1111-A(例如TCP通信中对向的TCP变换部200-A-1)通知,并记录于状态表212-A-1。
在装置1111-B内的TCP变换部200-B-2内的状态表212-B-2中,记录有rcv_num=1,all_rcv_num=3,max_rcv_bandwidth=30Mbps。本信息被载于ACK包等,向发送终端(2101~2103)侧的装置1111-A(例如TCP通信中对向的TCP变换部200-A-2)通知,状态表212-A-2并记录于。
装置1111-A内的TCP变换部200-A-1内的状态表212-A-1中,记录有snd_num=2,all_snd_num=3,max_snd_bandwidth=60Mbps。装置1111-A内的TCP变换部200-A-1内的发送频带控制部715-A-1利用来自对向装置的信息和自身装置内的记录信息,将能够公平分配的TCP通信的平均一个连接的频带计算为10Mbps。发送频带控制部715-A-1基于再发送率确定了控制频带token后(与步骤1302~1304相当),在控制频带token超过10Mbps时,以控制频带token为10Mbps以下的方式来限制控制频带的(与步骤1305相当)。
在装置1111-A内的TCP变换部200-A-2内的状态表212-A-2中,记录有snd_num=1,all_snd_num=3,max_snd_bandwidth=60Mbps。装置1111-A内的TCP变换部200-A-2内的发送频带控制部715-A-2利用来自对向装置的信息和自身装置内的记录信息,将能够公平分配的TCP通信的平均一个连接的频带计算为10Mbps。发送频带控制部715-A-2基于再发送率确定了控制频带token后(与步骤1302~1304相当),在控制频带token超过10Mbps时,以控制频带token为10Mbps以下的方式来限制控制频带的(与步骤1305相当)。
此外,与装置1111连接的终端1121读取装置1111内部的各TCP变换部200内的状态表212的snd_num、all_snd_num、max_snd_bandwidth、rcv_num、all_rcv_num、max_rcv_bandwidth、each_rcv_bandwidth、each_rcv_num等信息并对外部显示,从而能够显示每个TCP连接的频带,或能够显示装置所收纳的TCP连接数,或能够显示对向装置的访问频带及TCP连接数的信息。
通过以上的发送频带控制部715是更新控制频带的方法,利用过去的发送频带和最近的再发送频带,将利用再发送率的变化率来控制频带的方法和利用在装置间进行了交换的连接数的信息来控制频带的方法组合,能够控制频带。由此,控制频带以在利用可能频带附近上下的方式被更新,因此,能够接近100%地将利用可能频带用完。
实施例2
图23中,表示包含对两个WAN(2340,2330)进行中继的装置2303的***结构图。
装置2301和装置2302利用与实施例1相同的通信装置。装置2301与连接有终端(2311~2313)的LAN2310和WAN2340处于连接状态。装置2302与连接有终端(2321~2323)的LAN2320和WAN2330处于连接状态。通信装置(以下,简单地记作装置)2303与WAN2340和WAN2330处于连接状态。
装置2303取与图11所示的框图同样的结构。图11中的LAN变为WAN。
图24中,表示装置2303内的TCP变换部的框图。
与图2的结构相比,在装置2303中,LAN TCP块203置换为WAN TCP块209-1。并且,具有第2频带表213-1,包括两个频带表213。WAN TCP处理部209-1的结构与WAN TCP处理部209相同。上述的控制频带的更新处理在WAN2340侧和WAN2330侧这双方进行。
图25中,表示状态表2401的格式。
状态表2401没有LAN管理用的信息,包括两组WAN管理用的信息。
状态表2401具有:用于记录每个TCP连接的状态的n个输入520、记录装置2303对各个WAN的发送访问线路频带的max_snd_bandwidth(539,539-1)、记录装置2303对各个WAN的接收访问线路的max_rcv_bandwidth(540,540-1)、记录装置2303对于各个WAN正在进行数据发送的TCP连接数的all_snd_num(536,536-1)、记录装置2303从各个WAN正在进行数据接收的TCP连接数的all_rcv_num(538,538-1)、基于各TCP变换部200对于各个WAN正在进行数据发送的TCP连接数的snd_num(535,535-1)、记录各TCP变换部200从各个WAN正在进行数据接收的TCP连接数的rcv_num(537,537-1)、记录各TCP连接相对于各个WAN的最小频带的each_min_bandwidth(543,543-1)。
各输入520包含各个WAN的信息。例如,各输入520具有:记载输入是否正在进行使用的VLD501、记载连接是否正在进行确立的connect_state502、表示WAN侧的终端的IP地址的WIP504、表示另一个WAN侧的终端的IP地址的wIP503、表示WAN侧的终端的TCP端口编号的Wport506、表示另一个WAN侧的终端的TCP端口编号的wport505、表示各个WAN侧的TCP通信的状态的wan_state(514,514-1)、表示各个WAN侧的接收缓存器管理用的指针的wan_left_rbuf(515,515-1)、wan_left_recv(516,516-1)、wan_right_recv(517,517-1)、表示各个WAN侧的窗口标度选项的值的wan_ws(518,518-1)、表示各个WAN侧的平均RTT的wan_rtt(519,519-1)、表示从各个WAN侧的接收缓存器被读出并正在进行加工的数据大小的wan_lan(529,529-1)、表示各个WAN侧的发送缓存器管理用的指针的wan_left_send(524,524-1)、wan_right_send(525,525-1)、wan_right_sbuf(526,526-1)、表示各个WAN侧的最近的再发送率是rts_ratio(530,530-1)、表示各个WAN侧的过去的再发送率的old_rts_ratio(531,531-1)、表示各个WAN侧的最近的发送频带的snd(532,532-1)、表示各个WAN侧的过去的发送频带的old_snd(533,533-1)、表示各个WAN侧的进一步再过去的发送频带的old_old_snd(534,534-1)、记录各个WAN侧的对向装置的正在进行数据接收的连接数的each_rcv_num(541,541-1)、记录各个WAN侧的对向装置的接收访问线路频带的each_rcv_bandwidth(542,542-1)。
each_rcv_num(541,541-1)和each_rcv_bandwidth542,542-1)基于对向装置通知来的信息而被更新。包再发送部704利用在对向装置发送来的ACK包的TCP选项字段中记载的值等,针对每个TCP连接来进行更新。
max_snd_bandwidth(539,539-1)、max_rcv_bandwidth(540,540-1)等经由终端1121等通过手动来更新。
snd_num(535,535-1)、rcv_num(537,537-1)由信息交换部2402针对各个WAN中的每个来交换。信息交换部2402对状态表212的每个输入检查缓存器存储量,数据被存储在发送缓存器中的输入被判断为正在进行数据发送的连接,数据被存储在接收缓存器中的输入被判断为正在进行数据接收的连接并累计连接数,从而接收snd_num(535,535-1)、rcv_num(537,537-1)。
all_rcv_num(538,538-1)和all_snd_num(536,536-1)基于装置2303内部的其他的全部TCP变换部200之间的信息交换而被更新。TCP变换部200的信息交换部2402对于其他的全部TCP变换部200,针对各个WAN中的每个来自己的snd_num(535,535-1)、rcv_num(537,537-1)。另外,针对各个WAN中的每个来计算从其他的全部TCP变换部200通知来的snd_num(535,535-1)、rcv_num(537,537-1)的合计值,从而针对各个WAN中的每个来获得all_rcv_num(538,538-1)、all_snd_num(536,536-1),并定期更新。
装置2303相对于各个WAN独立动作,在各个WAN中独立地进行信息交换,从而即使是对两个WAN进行中继的装置,也能够实现与实施例1同样的功能。
实施例3
在本实施例中,表示针对每个TCP连接加权来计算连接数的一例。
图26中,表示本实施例的状态表212-1的格式。
状态表212-1相对于实施例1的结构,对各输入追加权重weight2601的信息。
权重weight2601例如可以基于各连接的缓存器存储量(right_sbuf与left_send的差和right_recv与left_rbuf的差的合计)来确定,也可以基于端口编号(TCP端口编号)来确定。在基于端口编号来确定时,可以从与装置1111连接的终端1121,针对每个端口编号手动对信息交换部230指定加权。信息交换部230观察输入的端口编号Lport、Wport,将被指定的加权记录于weight2601。
信息交换部230计算连接数的合计值时,对于一个连接,加上与该连接对应的weight2601中所记载的值。例如,weight2601为2时,对与一条该连接加上2,为0.5时加上0.5。将这样求出的连接数的合计值(snd_num)与其他的TCP交换部200交换。
另外,发送频带控制部715求出自身装置相对于多个TCP通信的各连接的频带时,将装置1111的发送访问线路频带max_snd_bandwidth539除以装置1111的正在进行数据发送的TCP连接数all_snd_num536,并将所得到的值与相应的TCP通信的weight2601相乘,从而求出。另外,发送频带控制部715在求出对向装置相对于多个TCP通信的各连接的频带时,将对向装置的接收访问线路频带each_rcv_bandwidth542除以对向装置的正在进行数据接收的TCP连接数each_rcv_num541,并将所得到的值与相应的TCP通信的weight2601相乘,从而求出。
如以上所述,通过使用反映了加权weight2601的TCP连接数,能够针对每个TCP连接进行加权,并且能够实现与实施例1同样的功能。
产业上的可利用性
本发明例如能够利用于对终端间的通信进行中继的通信装置。

Claims (14)

1.一种通信装置,包括多个具有对TCP通信进行中继的TCP变换部的卡,
上述TCP变换部具有:
信息交换部,经由自身TCP变换部在信息交换部与本身装置内的其他TCP变换部之间交换正在进行数据发送的TCP连接数的信息;以及
频带控制部,确定各TCP通信的最大发送频带,
上述信息交换部基于与其他TCP交换部进行了交换的TCP连接数的信息,计算装置整体中的正在进行数据发送的TCP连接数的合计值,
上述频带控制部基于装置整体中的正在进行数据发送的TCP连接数的合计值,确定各TCP通信的最大发送频带。
2.如权利要求1所述的通信装置,其特征在于,
上述TCP变换部还具有:
状态存储区域,记录处于连接状态的线路的最大发送频带,
上述频带控制部基于所记录的线路的最大发送频带、装置整体中的正在进行数据发送的TCP连接数的合计值,确定并限制各TCP通信中的最大发送频带。
3.如权利要求1所述的通信装置,其特征在于,
上述TCP变换部从TCP通信的对向装置接收该对向装置中的正在进行数据接收的TCP连接数的合计值,
上述频带控制部基于装置整体的正在进行数据发送的TCP连接数的合计值、从上述对向装置接收到的对向装置中的正在进行数据接收的TCP连接数的合计值,限制各TCP通信的最大发送频带。
4.如权利要求3所述的通信装置,其特征在于,
上述信息交换部,
在上述信息交换部与其他TCP变换部之间,交换正在进行数据接收的TCP连接数的信息,
基于进行了交换的TCP连接数的信息,计算装置整体的正在进行数据接收的TCP连接数的合计值,
将计算出的装置整体的正在进行数据接收的TCP连接数的合计值通知至上述对向装置。
5.如权利要求3所述的通信装置,其特征在于,
上述TCP变换部还具有:
状态存储区域,记录处于与装置连接状态的线路的最大发送频带,
上述TCP变换部还从该对向装置接收上述对向装置中的线路的最大接收频带,
上述频带控制部基于记录于本身装置的线路的最大发送频带、本身装置整体的正在进行数据发送的TCP连接数的合计值、从上述对向装置接收到的该对向装置中的线路的最大接收频带、从上述对向装置接收到的该对向装置中的正在进行数据接收的TCP连接数的合计值,限制各TCP通信的最大发送频带。
6.如权利要求5所述的通信装置,其特征在于,
上述频带控制部基于记录于本身装置的线路的最大发送频带除以本身装置整体的正在进行数据发送的TCP连接数的合计值而得到的值、从上述对向装置接收到的该对向装置中的线路的最大接收频带除以从上述对向装置接收到的该对向装置中的正在进行数据接收的TCP连接数的合计值而得到的值,限制各TCP通信的最大频带。
7.如权利要求5所述的通信装置,其特征在于,
上述状态存储区域还记录处于连接状态的线路的最大接收频带,
上述信息交换部将所记录的线路的最大接收频带和本身装置整体的正在进行数据接收的TCP连接数的合计值通知至上述对向装置。
8.如权利要求1所述的通信装置,其特征在于,
上述频带控制部还使用各TCP通信中的数据的再发送率,限制各TCP通信的最大发送频带。
9.如权利要求8所述的通信装置,其特征在于,
上述频带控制部,
测量各TCP通信中的基准时刻后的再发送频带和基准时刻以前的发送频带,
用基准时刻后的再发送频带和基准时刻以前的发送频带进行除法运算,从而计算数据的再发送率。
10.如权利要求1所述的通信装置,其特征在于,
上述频带控制部计算各TCP通信中的再发送率的变化率,
根据再发送率的变化率,变更各TCP通信的最大发送频带。
11.如权利要求10所述的通信装置,其特征在于,
在再发送率的变化率超过了预先指定的阈值时,上述频带控制部根据再发送率使各TCP通信的最大发送频带减少。
12.如权利要求10所述的通信装置,其特征在于,
在再发送率的变化率超过了预先指定的阈值时,上述频带控制部使各TCP通信的最大发送频带增加。
13.如权利要求1所述的通信装置,其特征在于,
还包括:发送控制部,按照各TCP通信的最大发送频带发送数据。
14.如权利要求1所述的通信装置,其特征在于,
对各TCP通信设定权重,
针对各个TCP连接,通过加上对应的各权重来求出TCP连接数的合计值,并根据该权重确定最大发送频带。
CN201280002708XA 2011-07-26 2012-03-01 通信装置 Pending CN103098422A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2011-163047 2011-07-26
JP2011163047A JP5264966B2 (ja) 2011-07-26 2011-07-26 通信装置
PCT/JP2012/055259 WO2013014962A1 (ja) 2011-07-26 2012-03-01 通信装置

Publications (1)

Publication Number Publication Date
CN103098422A true CN103098422A (zh) 2013-05-08

Family

ID=47600822

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280002708XA Pending CN103098422A (zh) 2011-07-26 2012-03-01 通信装置

Country Status (5)

Country Link
US (1) US8681617B2 (zh)
EP (1) EP2738983A4 (zh)
JP (1) JP5264966B2 (zh)
CN (1) CN103098422A (zh)
WO (1) WO2013014962A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112204928A (zh) * 2018-05-30 2021-01-08 日本电信电话株式会社 异常检测装置、异常检测方法及异常检测程序

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014165551A (ja) * 2013-02-21 2014-09-08 Fujitsu Ltd 通信装置、通信方法、プログラム、及び、通信システム
WO2014141437A1 (ja) * 2013-03-14 2014-09-18 株式会社日立製作所 通信ノード装置、帯域制御方法、及び計算機読み取り可能な記憶媒体
US11018935B1 (en) * 2013-05-10 2021-05-25 Marvell Asia Pte Ltd Network traffic quality-based dynamic path change
JP2016201579A (ja) * 2013-08-13 2016-12-01 株式会社日立製作所 通信装置及び送信帯域制御方法
US9621468B1 (en) * 2014-12-05 2017-04-11 Amazon Technologies, Inc. Packet transmission scheduler
JP6468560B2 (ja) * 2015-10-22 2019-02-13 日本電信電話株式会社 無線通信システム及びその制御方法、並びに、通信制御プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101253737A (zh) * 2005-08-31 2008-08-27 日本电气株式会社 通信***、通信终端、中继节点及用于这些设备的通信方法以及其程序
CN101494652A (zh) * 2009-02-27 2009-07-29 中国电子科技集团公司第五十四研究所 一种卫星通信***中增强tcp协议性能的方法
WO2011033894A1 (ja) * 2009-09-16 2011-03-24 株式会社日立製作所 端末間の通信を高速化する通信装置および通信システム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH104409A (ja) * 1996-06-14 1998-01-06 Hitachi Ltd 複数のユニットからなるシステムおよび情報の転送制御方法
US20030123394A1 (en) * 2001-11-13 2003-07-03 Ems Technologies, Inc. Flow control between performance enhancing proxies over variable bandwidth split links
US7747255B2 (en) * 2003-03-26 2010-06-29 Sony Corporation System and method for dynamic bandwidth estimation of network links
US7324523B2 (en) * 2003-03-26 2008-01-29 Sony Corporation System and method for dynamically allocating bandwidth to applications in a network based on utility functions
US7656799B2 (en) * 2003-07-29 2010-02-02 Citrix Systems, Inc. Flow control system architecture
US8238241B2 (en) * 2003-07-29 2012-08-07 Citrix Systems, Inc. Automatic detection and window virtualization for flow control
US7522620B2 (en) * 2003-08-12 2009-04-21 Intel Corporation Method and apparatus for scheduling packets
US20050220115A1 (en) * 2004-04-06 2005-10-06 David Romano Method and apparatus for scheduling packets
JP2007097144A (ja) * 2005-08-31 2007-04-12 Nec Corp 通信システム、通信端末、中継ノード及びそれに用いる通信方法並びにそのプログラム
US7970733B2 (en) * 2006-09-13 2011-06-28 Broadcom Corporation Method for communicating data in xDSL using data retransmission
EP2182686B1 (en) * 2007-03-12 2017-12-27 Citrix Systems, Inc. Systems and methods for providing quality of service precedence in tcp congestion control
EP2058989A1 (en) * 2007-11-09 2009-05-13 Thomson Licensing, Inc. Wireless rate control method
US20100054123A1 (en) * 2008-08-30 2010-03-04 Liu Yong Method and device for hign utilization and efficient flow control over networks with long transmission latency
JP5544430B2 (ja) 2010-11-16 2014-07-09 株式会社日立製作所 通信装置および通信システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101253737A (zh) * 2005-08-31 2008-08-27 日本电气株式会社 通信***、通信终端、中继节点及用于这些设备的通信方法以及其程序
CN101494652A (zh) * 2009-02-27 2009-07-29 中国电子科技集团公司第五十四研究所 一种卫星通信***中增强tcp协议性能的方法
WO2011033894A1 (ja) * 2009-09-16 2011-03-24 株式会社日立製作所 端末間の通信を高速化する通信装置および通信システム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112204928A (zh) * 2018-05-30 2021-01-08 日本电信电话株式会社 异常检测装置、异常检测方法及异常检测程序
CN112204928B (zh) * 2018-05-30 2022-07-15 日本电信电话株式会社 异常检测装置、异常检测方法及记录介质

Also Published As

Publication number Publication date
US20130163422A1 (en) 2013-06-27
JP2013027010A (ja) 2013-02-04
JP5264966B2 (ja) 2013-08-14
WO2013014962A1 (ja) 2013-01-31
EP2738983A1 (en) 2014-06-04
EP2738983A4 (en) 2015-03-11
US8681617B2 (en) 2014-03-25

Similar Documents

Publication Publication Date Title
CN103098422A (zh) 通信装置
CN103081419A (zh) 通信装置
CN103858404B (zh) 通信装置
CN102474463B (zh) 通信装置以及通信方法
EP2642702B1 (en) Communication apparatus and communication system
CN101895466B (zh) 一种降低sctp多路径传输数据包乱序影响的方法
EP2689602B1 (en) Buffer sizing for multi-hop network
EP3100420A2 (en) Buffer sizing for multi-hop networks
US20110066752A1 (en) Dynamic bandwidth throttling
US20140071986A1 (en) Communication apparatus and communication system for enhancing speed of communication between terminals
CN103001846B (zh) 用于数据网的嵌入式端到端延迟信息
DE60214369D1 (de) Datentransportbeschleunigung und -verwaltung in einem netzwerkkommunikationssystem
Avrachenkov et al. Congestion control of TCP flows in Internet routers by means of index policy
US20150319064A1 (en) Packet communication method and device
US20150029861A1 (en) Communication device and communication system
US11153220B2 (en) Methods and apparatus to determine network delay with location independence
JP4930275B2 (ja) 通信システム、通信方法、送信機、受信機、レート計算方法およびプログラム
EP2833589A1 (en) Intermediate node, an end node, and method for avoiding latency in a packet-switched network
Rebello et al. Securing wireless payment-channel networks with minimum lock time windows
WO2015022809A1 (ja) 通信装置及び送信帯域制御方法
JP4766703B2 (ja) エッジノードおよび帯域制御方法
JP4828555B2 (ja) ノード装置および帯域制御方法
Starkova A dynamic model of a TCP-session at the management by a length of queue with the use of RED mechanism
JP2009200581A (ja) ノード装置及び帯域制御方法
Noh et al. L2/OPN design and dynamic TCP manage for Grid High Performance network

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

Application publication date: 20130508