CN103814563B - 数据通信装置、数据发送方法以及计算机系统 - Google Patents
数据通信装置、数据发送方法以及计算机系统 Download PDFInfo
- Publication number
- CN103814563B CN103814563B CN201180073556.8A CN201180073556A CN103814563B CN 103814563 B CN103814563 B CN 103814563B CN 201180073556 A CN201180073556 A CN 201180073556A CN 103814563 B CN103814563 B CN 103814563B
- Authority
- CN
- China
- Prior art keywords
- data
- transmission
- packet
- relay
- moment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/30—Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0888—Throughput
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/25—Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
- H04L47/283—Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
通过具备:发送间隔计算部(11),其基于针对发送出的发送数据的响应数据所到达的到达实际时刻与对从其他数据通信装置发送出的响应数据到达数据通信装置为止所经过的中继装置的个数乘以经过一个中继装置时所需要的转送延迟时间而计算出的到达预测时刻的差值、和数据的通信路径上的中继装置(20)的缓冲器尺寸,来计算数据的实效转送速度,并基于计算出的实效转送速度来计算发送数据间的发送间隔;和发送控制部(12),其基于计算出的发送间隔来进行发送数据的发送控制,由此在构成为规则网的相互耦合网络中高效地实现拥塞控制。
Description
技术领域
本发明涉及数据通信装置、数据发送方法以及计算机系统。
背景技术
在IP交换网、并行计算机中将节点间连接的相互耦合网络一般通过转送数据包的路由器的相互连接来构成。在大规模的网络中,由于一对一连接所有节点间的完全耦合网络的导入成本较高,所以不被使用,另外,为了通信路径不冲突而进行路由器的控制的机构也由于高成本所以不被使用。
因此,在路由器中,当分别转送从相互不同的输入端口输入的多个数据包时,存在对于一个输出端口而言在该多个数据包间发生冲突的情况。
路由器一般在发生输出冲突的情况下选择一个数据包进行转送,在该期间,为了储存冲突的其他数据包来延迟该转送而具备缓冲器。然而,由于缓冲器量是有限的,所以若连续地发生数据包间的冲突则缓冲器耗尽。而且,若缓冲器耗尽则不得不废弃输入数据包。
为了避免缓冲器的耗尽,一部分的路由器具备若缓冲器余量减少则向冲突的输入端口的连接目的地路由器请求数据包发送停止的流程控制功能。尤其在并行计算机中,一般通过进行严密的缓冲器余量管理来进行不发生数据包废弃的流程控制。
在流程控制中,将因数据包间的冲突而引起的缓冲器耗尽的信息发送至流程上游的路由器。因此,对于向发生冲突的通信路径连续发送数据包的发送源节点而言,最终连接该发送源节点的路由器的缓冲器耗尽而停止发送。
在与网络连接的发送装置向特定的目的地转送数据的情况下,一般数据转送持续一定时间,数据转送持续过程中的通信路径不变。因此,通信路径的冲突持续一定时间,成为数据包废弃或缓冲器耗尽的重要因素。这样的通信路径中的数据包的冲突引起数据转送速度的大度降低的现象被称为拥塞。
若在多个通信路径中同时产生拥塞,则会大范围引起严重的数据转送速度降低现象。尤其在数据包废弃的情况下,有时发生几乎不能通信的程度的数据转送速度降低的现象,这样的现象被称为拥塞崩溃。
例如在发生拥塞的期间因连续发送被废弃的数据包,或者使到冲突点为止的通信路径的所有缓冲器耗尽而产生拥塞崩溃。
为了避免像这样的因拥塞崩溃引起的严重的数据转送速度降低,进行了拥塞控制。
该拥塞控制通过拥塞检测和抑制发送源节点处的数据发送来实现。由于拥塞的影响在短时间内扩散,所以优选能够尽早检测出拥塞。检测发送源节点发生拥塞的手段一般是根据来自目的地节点的响应数据包来进行的。例如在TCP/IP(Transmission ControlProtocol/Internet Protocol:传输控制协议/Internet协议)协议中,通过检测一定时间响应数据包未到达来检测拥塞的产生。这利用了IP交换网在拥塞时废弃数据包的性质。
另外,在面向DCB(Data Center Bridging:数据中心桥接)、CCE(ConvergedEnhanced Ethernet:融合增强型以太网)、DCE(Data Center Ethernet:数据中心以太网)等数据中心的以太网扩张标准中,在流程控制中避免数据包丢失,并且具备重新发送超时以外的拥塞检测单元。(以太网是注册商标。)
拥塞检测均采用利用路由器检测拥塞的构造,通过从该路由器对发送源节点发送专用数据包、或对来自路由器的响应数据包标注标志来将拥塞通知给数据包发送源的路由器等。
这里,路由器的缓冲器有时没有在产生了拥塞的情况下保持数据包的容量,产生拥塞的情况下的影响非常大。因此,一旦检测出拥塞,则有可能拥塞已经引起大范围的数据转送速度的降低,在拥塞控制上不是预防拥塞而要求消除拥塞。
TCP/IP的最初的拥塞控制方式是为了避免因数据包的重新发送引起拥塞的再次产生而使重新发送的数据转送速度低于通常时的数据转送速度,然后缓缓地将数据转送速度提升到通常时的通信速度的缓慢启动方式。
在该方式中,返回发生一旦发生拥塞则数据转送速度暂时下降,数据转送速度缓缓上升而再次发生拥塞的情况。因此,存在网络的利用效率较低这一课题。
另外,随着IP交换网的高速化、路由器在缓冲器耗尽前随机地废弃数据包等防止拥塞崩溃的技术的发展,更加迅速地使带宽收敛的拥塞控制方式也被使用。
例如,在TCP/IP中的拥塞控制协议的实质标准中,每重新发送1次则数据发送量下降到一半。以这样的倍率使数据发送量下降的拥塞控制一般被称为AIMD(AdditiveIncrease Multiplicative Decrease:加性增,乘性减)方式。在该AIMD方式中,与上述的缓慢启动方式相比,数据转送速度的振幅变小而收敛。但是,在网络的利用效率上依然存在损耗。
专利文献1:日本特开平8-56222号公报
专利文献2:日本特开2000-13391号公报
非专利文献1:IETF RFC2581
如上述那样在以往的在IP交换网中进行的拥塞控制中,路由器进行数据包废弃、拥塞通知,在发送源节点中进行数据转送速度的抑制。但是,由于考虑到IP交换网能够以与连接的计算机的种类、结构独立地设计网络结构,所以网络结构是不规则的,应该将数据转送速度抑制到什么程度是不明确的。因此,也在使用使数据转送速度变化来发现适当的数据转送速度的方式,但在这样的控制方式中,存在数据转送速度不稳定而网络的利用效率较低这一课题,而且,没有设想构成为规则的网络网的相互耦合网络。
发明内容
在一个方面,本发明的目的在于,在构成为规则的网络网的相互耦合网络中高效地实现拥塞控制。
需要说明的是,并不限于上述目的,起到由实施后述的发明用的最佳方式所示的各结构产生的作用效果、即通过以往的技术不能够得到的作用效果也能够作为本发明的其他目的之一。
为了实现上述目的,该数据通信装置是经由中继装置向其他数据通信装置发送数据的数据通信装置,具有:发送间隔计算部,其基于针对向上述其他数据通信装置发送的发送数据的响应数据所到达的到达实际时刻对与从上述其他数据通信装置发送出的响应数据到达上述数据通信装置为止所经过的中继装置的个数乘以经过一个中继装置时所需要的转送延迟时间而计算出的到达预测时刻的差值、和上述数据的通信路径上的中继装置的缓冲器尺寸,来计算上述数据的实效转送速度,并基于上述计算出的实效转送速度来计算发送数据间的发送间隔;和发送控制部,其基于上述计算出的发送间隔来进行发送数据的发送控制。
另外,该数据通信装置是经由中继装置向其他数据通信装置发送数据的数据通信装置,具有:发送控制部,其按照将针对向上述其他数据通信装置发送出的发送数据的响应数据未到达的发送数据的数据量相加而得到的总数据量为限制尺寸以下的方式进行数据的发送;和限制尺寸计算部,其基于针对向上述其他数据通信装置发送出的发送数据的响应数据所到达的到达实际时刻与对从上述其他数据通信装置发送出的响应数据到达上述数据通信装置为止所经过的中继装置的个数乘以经过一个中继装置时所需要的转送延迟时间而计算出的到达预测时刻的差值、和上述数据的通信路径上的中继装置的缓冲器尺寸,来计算上述数据的实效转送速度,并基于上述计算出的实效转送速度来计算上述限制尺寸。
并且,该数据发送方法是经由中继装置发送数据的数据发送方法,计算机基于针对发送出的发送数据的响应数据所到达的到达实际时刻与对上述响应数据到达为止所经过的中继装置的个数乘以经过一个中继装置时所需要的转送延迟时间而计算出的到达预测时刻的差值、和上述数据的通信路径上的上述中继装置的缓冲器尺寸,来计算上述数据的实效转送速度,并基于上述计算出的实效转送速度计算出发送数据间的发送间隔,基于上述计算出的发送间隔来进行发送数据的发送控制。
另外,该数据发送方法是经由中继装置向其他数据通信装置发送数据的数据发送方法,基于针对向上述其他数据通信装置发送出的发送数据的响应数据所到达的到达实际时刻与对从上述其他数据通信装置发送出的响应数据到达上述数据通信装置为止所经过的中继装置的个数乘以经过一个中继装置时所需要的转送延迟时间而计算出的到达预测时刻的差值、和上述数据的通信路径上的上述中继装置的缓冲器尺寸,来计算上述数据的实效转送速度,并基于上述计算出的实效转送速度来计算限制尺寸,按照将针对向上述其他数据通信装置发送出的发送数据的响应数据未到达的发送数据的数据量相加而得到的总数据量为上述限制尺寸以下的方式来进行数据的发送。
并且,该计算机系统具备:具有多个中继装置的通信网、和经由该通信网进行数据的收发的多个计算节点,上述计算节点具有:发送间隔计算部,其基于向上述其他计算节点发送出的发送数据的响应数据所到达的到达实际时刻与对从上述其他计算节点发送出的响应数据到达上述计算节点为止所经过的中继装置的个数乘以经过一个中继装置时所需要的转送延迟时间而计算出的到达预测时刻的差值、和上述数据的通信路径上的中继装置的缓冲器尺寸,来计算上述数据的实效转送速度,并基于上述计算出的实效转送速度来计算发送数据间的发送间隔;和发送控制部,其基于上述计算出的发送间隔来进行发送数据的发送控制。
另外,该计算机系统具备:具有中继装置的通信网、和经由该通信网进行数据的收发的多个计算节点,上述计算机节点具有:发送控制部,其按照将针对向上述其他计算节点发送出的发送数据的响应数据未到达的发送数据的数据量相加而得到的总数据量为限制尺寸以下的方式进行数据的发送;和限制尺寸计算部,其基于针对向上述其他计算节点发送出的发送数据的响应数据所到达的到达实际时刻与对从上述其他计算节点发送出的响应数据到达上述计算节点为止所经过的中继装置的个数乘以经过一个中继装置时所需要的转送延迟时间而计算出的到达预测时刻的差值、和上述数据的通信路径上的中继装置的缓冲器尺寸,来计算上述数据的实效转送速度,并基于上述计算出的实效转送速度来计算上述限制尺寸。
根据公开的技术,起到以下的至少任意一个效果或优点。
(1)能够高效地实现拥塞控制。
(2)能够高效地使用相互耦合网络。
(3)能够防止拥塞的影响范围扩大。
附图说明
图1是示意性地表示作为第一实施方式的一个例子的并行计算机系统所具备的相互耦合网络接口的功能结构的图。
图2是例示作为第一实施方式的一个例子的并行计算机系统的结构的图。
图3是示意性地表示作为第一实施方式的一个例子的并行计算机系统所具备的计算节点的硬件结构的图。
图4是例示作为第一实施方式的一个例子的并行计算机系统中的发送时刻表的图。
图5是说明作为第一实施方式的一个例子的并行计算机系统中的消息发送时的处理的流程图。
图6是说明作为第一实施方式的一个例子的并行计算机系统中的响应数据包的接收时的处理的流程图。
图7是示意性地表示作为第二实施方式的一个例子的并行计算机系统所具备的相互耦合网络接口的功能结构的图。
图8是说明作为第二实施方式的一个例子的并行计算机系统中的消息发送时的处理的流程图。
图9是说明作为第二实施方式的一个例子的并行计算机系统中的响应数据包的接收时的处理的流程图。
具体实施方式
以下,参照附图对本发明的实施方式进行说明。
(A)第一实施方式
图1是示意性地表示作为第一实施方式的一个例子的并行计算机系统1所具备的相互耦合网络接口的功能结构的图,图2是例示该并行计算机系统1的结构的图。另外,图3是示意性地表示作为第一实施方式的一个例子的并行计算机系统1所具备的计算节点100的硬件结构的图。
作为第一实施方式的一个例子并行计算机系统1如图2所示,由将多个(在图2所示的例子中是4个)计算节点100-1、100-2、100-3、100-4经由1个以上(在图2所示的例子中是2个)的路由器(开关装置)20-1、20-2以相互能够通信的方式连接的相互耦合网络(通信网)构成。
其中,该并行计算机系统1所具备的多个计算节点100-1、100-2、100-3、100-4具备相互相同的结构,另外,多个路由器20-1、20-2也具备相互相同的结构。
以下,作为表示计算节点的符号,当需要在多个计算节点中确定一个时使用符号100-1~100-4,但在指任意的计算节点时使用符号100。同样,以下作为表示路由器的符号,当需要从多个路由器中确定一个时使用符号20-1、20-2,但在指任意的路由器时使用符号20。
路由器20是以能够通信的方式与多个计算节点100、其他的路由器20连接,将接收到的数据包(数据)发送至转送目的地的中继装置。
在图2所示的例子中,各路由器20分别具备P1~P4这4个端口。而且,在路由器20-1中,在端口P1、P2连接计算节点100-1、100-2,并且在端口P3、P4分别连接路由器20-2的端口P4、P3。另外,在路由器20-2中,在端口P1、P2连接计算节点100-3、100-4。
路由器20如图3所示,具备收发缓冲器21以及交叉开关(crossbar switch)22。收发缓冲器21是暂时储存被接收发送的数据的缓冲器,每个端口都具备。收发缓冲器21具备发送缓冲器212以及接收缓冲器211。
发送缓冲器212以及接收缓冲器211分别是例如FIFO(First In First Out:先入先出)型的缓冲存储器。发送缓冲器212是储存向计算节点100、其他的路由器20等发出的数据包的缓冲存储器,储存经由交叉开关22获得的数据包。
接收缓冲器211接收并储存从计算节点100、其他的路由器20等发送来的数据包。该接收缓冲器211中储存的数据包经由交叉开关22被发出至其他计算节点100、其他的路由器20等。
在该并行计算机系统1中,以被分割为数据包的状态收发从各计算节点100发送的数据(消息)。另外,该数据包的数据包长度(L)能够适当地设定,另外,可作为固定长度或可变长度来适当地实施。
另外,在该并行计算机系统1中,路由器20具备若在收发缓冲器21中缓冲器余量减少则对冲突的输入端口的连接目的地路由器20、计算节点100请求数据包发送停止的流程控制功能。
计算节点100具备处理器111以及相互耦合网络接口110。
计算节点100是具备运算功能的装置,各计算节点100经由相互耦合网络接口110以能够通信的方式与路由器20连接。由此,能够在该并行计算机系统1内的任意计算节点100间收发数据包。
处理器111依次取得相互耦合网络接口110的数据包接收电路112所保持的数据包,进行数据处理。另外,处理器111在需要向其他计算节点100发送数据的情况下,将该数据分割而生成包含目的地地址的数据包,并输出至相互耦合网络接口110的数据包发送电路113。
相互耦合网络接口110是将计算节点100与路由器20以能够通信的方式连接的接口装置,控制来自计算节点100的数据包的发出、接收。
即,由处理器111生成的数据包经由相互耦合网络接口110被发送至路由器20,另外,从路由器20发送出的数据经由相互耦合网络接口110被送达计算节点100。
该相互耦合网络接口110如图3所示,具备数据包发送电路113、数据包发送时刻表114、构成信息保持部115以及数据包接收电路112。
数据包接收电路112在内部具有FIFO型的缓冲存储器(省略图示)。若数据包接收电路112从路由器20获取数据包,则将获取的数据包储存到缓冲存储器的最末尾。另外,数据包接收电路112根据来自处理器111的请求,从缓冲存储器的前端获取数据包并交接给处理器111。
构成信息保持部115是保持与该并行计算机系统1的结构相关的信息的存储器等保持部。
构成该并行计算机系统1的相互耦合网络构成为规则耦合网络,在计算节点100间收发的数据通过被确定的通信路径(传输路径)。
即,在该并行计算机系统1中,若确定了发送源的计算节点100与目的地的计算节点100,则在这些计算节点100间收发的数据包所通过的路由器20等中继设备的个数(链接数、公制的(metric))被确定。以下,将该并行计算机系统1中在通信路径上数据包所通过的链接数、即路由器20等中继装置的个数称为跳数(h)。
例如,在图2所示的例子中,从计算节点100-1向计算节点100-3发送的数据包在被储存到路由器20-1的端口P1的接收缓冲器211后,被输入至交叉开关22,然后储存至端口P3的发送缓冲器212。而且,数据包被发送至路由器20-2,在被储存到路由器20-2的端口P4的接收缓冲器211后,经由交叉开关22储存至端口P2的发送缓冲器212。然后,数据包被送达至作为发送目的地的计算节点100-4。在这样的从计算节点100-1发送至计算节点100-3的数据包的发送中,跳数(h)与通过的路由器20的台数相等,h=2。
另外,在路由器20中,数据包通过路由器20时所花费的时间被规定为每1跳的转送延迟时间(D)。另外,路由器20中的、数据包的1次转送时所通过的发送缓冲器212与接收缓冲器211的缓冲器尺寸的总和被规定为每1跳的路由器缓冲器量(B)。
并且,在该并行计算机系统1中,对于计算节点100间的数据包的各传递路径,没有拥塞的情况下的转送速度(T)通过计算或测定来规定。
在构成信息保持部115中,相对于该并行计算机系统1中的各通信路径,对应记录有跳数(h)、没有拥塞的情况下的转送速度(T)。另外,构成信息保持部115所保持的构成信息中还包含关于路由器20的、每1跳的转送延迟时间(D)、每1跳的路由器缓冲器量(B)、数据包长度(L)。其中,这些记录于构成信息保持部115的构成信息能够在该并行计算机系统1的设计时求出,构成信息例如在该系统设计时生成。构成信息在未图示的存储器等中以后述的数据包发送电路113能够参照的形式储存于构成信息保持部115。此外,储存于构成信息保持部115的构成信息例如也可以以数据库、表等形式储存,能够进行各种变形来实施。
数据包发送时刻表114对于被数据包发送电路113发送的各数据包管理其发送时刻。
图4是例示作为第一实施方式的一个例子的并行计算机系统1中的数据包发送时刻表114的图。
在该图4所示的例子中,数据包发送时刻表114相互关联地记录数据包识别符p、数据包发送时刻以及消息识别符m作为记入项目。
该数据包发送时刻表114被用于从数据包被发送到响应数据包返回为止的时间(往返时间)的测定。
数据包识别符p是为了识别各个数据包而唯一设定的识别符。数据包发送时刻是该数据包被数据包发送电路113发送的时刻。消息识别符m是为了识别该数据包所构成的消息而设定的识别符。
这些储存于数据包发送时刻表114的信息例如由数据包发送电路113生成,在数据包的发送时随时储存至数据包发送时刻表114。
另外,记录于数据包发送时刻表114的记入项目在对应的响应数据包被数据包接收电路112接收的时刻,被从数据包发送时刻表114中删除。由此,通过参照数据包发送时刻表114,能够对于特定的数据包判定是否是响应数据包未到达的状态即发送中的数据包(消息)。
数据包发送电路113在内部具有FIFO等缓冲存储器。若数据包发送电路113取得作为处理器111发送的数据的消息,则将取得的消息分割为数据包,并将分割后的数据包储存至缓冲存储器。另外,数据包发送电路113对来自路由器20的请求进行响应,从该缓冲存储器中取出数据包,并输出至路由器20。
而且,数据包发送电路113如图1所示,具备作为等待时间计算部11以及发送控制部12的功能。
等待时间计算部(发送间隔计算部)11根据形成该并行计算机系统1的相互耦合网络的结构来计算预想的到达预测时刻。
具体而言,若数据包接收电路112接收到响应数据包,则等待时间计算部11从数据包发送时刻表114读出与该响应数据包对应的发送数据包的数据包发送时刻。并且,等待时间计算部11从构成信息保持部115读出表示在通信路径上数据包通过了的路由器等中继装置的个数的跳数(h)和每1跳的转送延迟量(D),计算出跳数与延迟量相乘后的值(h×D)。
而且,等待时间计算部11通过对从数据包发送时刻表114读出的数据包发送时刻加上计算出的h×D,来求出到达预测时刻。
另外,等待时间计算部11将计算出的到达预测时刻与响应数据包实际到达的时刻即到达实际时刻进行比较。等待时间计算部11在到达实际时刻与计算出的到达预想时刻相比晚的情况下,进一步从到达实际时刻减去到达预测时刻来计算出到达时间的差值(d)。
并且,等待时间计算部11使用该计算出的差值(d)、和从构成信息保持部115读出的跳数(h)以及每1跳的路由器缓冲器量(B),来计算出通信路径中的数据包的实效转送速度(t)。
拥塞产生状态是通信路径上的缓冲器全部耗尽的状态,被认为是到发送目的地为止的通信路径上的所有缓冲器是被数据包装满的状态。鉴于此,假定为与通信路径上的总缓冲器尺寸h×B相当的数据量被以时间d转送,使用以下的式(1)来计算实效转送速度(t)。
t=h×B/d…(1)
而且,等待时间计算部11为了将计算出的实效转送速度(t)作为以后的数据发送速度而使用以下的式(2)来计算数据包发送间隔(g)。
g=(L/t)-(L/T)…(2)
其中,等待时间计算部11在该数据包发送间隔(g)的计算时,从构成信息保持部115还读出数据包长度(L)、没有拥塞的情况下的转送速度(T)。另外,等待时间计算部11也可以将计算出的数据包发送间隔(g)储存至未图示的存储器等。
发送控制部12将由等待时间计算部11计算出的数据包发送间隔(g)作为连续发送多个数据包时的发送间隔来进行数据包的发送控制。具体而言,当连续发送多个数据包时,在从发送前一个数据包起经过数据包发送间隔(g)后,发送后续的数据包。即,数据包发送间隔(g)相当于数据包间的等待时间。
通过在数据包间设定这样的数据包发送间隔(g)来进行数据包发送控制,能够以上述的实效转送速度(t)传输数据包。
即,以通过上述的式(2)求出的数据包发送间隔(g)发送数据包相当于按照产生拥塞的通信路径上的转送速度来调整数据包间隔,在产生拥塞的通信路径上发送新的数据包。即,按照通信路径上的实际的吞吐量使数据包的转送速度降低来依次发送数据包。由此,该通信路径上的数据包的拥挤状况不会进一步恶化。由此,最终消除拥塞。
在该并行计算机系统1中,若在通信路径上产生拥塞,则实效转送速度(t)的值变大,伴随于此,数据包发送间隔(g)的值变大。由此,发送控制部12以较大的数据包发送间隔(g)发送数据包,通信路径上的数据包的拥挤状况得到缓和,结果,拥塞被消除。
其中,作为上述的等待时间计算部11、发送控制部12的各功能可以通过电子电路来实现,另外,也可以通过未图示的处理器执行程序来实现。
根据图5所示的流程图(步骤A10~A50)对如上述那样构成的作为第一实施方式的一个例子的并行计算机系统1中的消息发送时的处理进行说明。
若消息的发送源的计算节点100(发送节点)的数据包发送电路113开始消息的发送处理,则数据包发送电路113首先通过对数据包发送间隔(g)预先设定初始值来进行初始化(步骤A10)。该数据包发送间隔(g)的初始值例如g=0。
发送控制部12在经过数据包发送间隔(g)之前进行等待(步骤A20),若经过数据包发送间隔(g),则进行数据包的发送(步骤A30)。另外,在该被发送的数据包中,附加有消息识别符m、数据包识别符p。
数据包发送电路113随着数据包的发送,将与发送出的数据包相关的信息记录到数据包发送时刻表114(步骤A40)。即,对数据包发送时刻表114记录发送出的数据包的数据包识别符p、消息识别符m、发送时刻。
数据包发送电路113确认形成消息的所有数据包的发送是否完成(步骤A50)。在未完成所有数据包的发送的情况下(参照步骤A50的“否”路径),返回到步骤A20。另外,在所有数据包的发送完成了的情况下(参照步骤A50的“是”路径),结束消息的发送处理。
接下来,根据图6所示的流程图(步骤B10~B40)对作为该第一实施方式的一个例子的并行计算机系统1中的响应数据包的接收时的处理进行说明。
在消息的发送源的计算节点100(发送节点)中,进行是否接收到针对发送出的数据包的响应数据包的确认(步骤B10),在未接收到响应数据包的情况下(参照步骤B10的“否”路径),结束处理。即,数据包接收电路112进行响应数据包的接收等待。
在接收到响应数据包的情况下(参照步骤B10的“是”路径),在数据包发送电路113中确认响应数据包的消息识别符m是否与记录于数据包发送时刻表114的数据包的消息识别符m一致(步骤B20)。
在响应数据包的数据包识别符m与发送中的消息一致的情况下(参照步骤B20的“是”路径),接下来,数据包发送电路113确认数据包发送时刻表114中是否记录有响应数据包的数据包识别符p(步骤B30)。
在数据包发送时刻表114中记录有响应数据包的数据包识别符p的情况下(参照步骤B30的“是”路径),等待时间计算部11进行数据包发送间隔(g)的计算。
等待时间计算部11从数据包发送时刻表114读出与响应数据包的数据包识别符p对应的数据包发送时刻并进行到达预想时刻的计算,然后进行与该响应数据包的现实的接收时刻、即到达实际时刻的比较。在该到达预想时刻与到达实际时刻的比较结果是到达实际时刻与计算出的到达预想时刻相比晚的情况下、即当判断为产生了拥塞时,等待时间计算部11从到达实际时刻减去到达预测时刻来计算到达时间的差值(d)。而且,等待时间计算部11使用上述的式(1)来计算实效转送速度(t),并且,使用上述的式(2)来计算数据包发送间隔(g)。另外,在比较的结果是计算出的到达预想时刻与到达实际时刻一致的情况下、即在未产生拥塞的情况下,例如数据包发送间隔(g)为g=0。
数据包发送电路113利用由等待时间计算部11计算出的数据包发送间隔(g)来进行数据包发送间隔(g)的更新(步骤B40)。
而且,发送控制部12将如上述那样由等待时间计算部11计算出的数据包发送间隔(g)作为数据包间隔来依次发送数据包。
另外,在响应数据包的数据包识别符m与发送中的消息不一致的情况(参照步骤B20的“否”路径)、或响应数据包的数据包识别符p未被记录在数据包发送时刻表114的情况(参照步骤B30的“否”路径)下,结束处理。
这样,根据作为第一实施方式的一个例子的并行计算机系统1,计算出通信路径中的数据包的实效转送速度(t),并使用式(2)来计算数据包发送间隔(g)。而且,发送控制部12以该计算出的数据包发送间隔(g)来发送数据包。
由此,能够根据通信路径上的实际的吞吐量来依次发送数据包而消除拥塞。即,能够高效地实现与通信路径上的实效转送速度(t)相符的拥塞控制,可高效地使用并行计算机系统1中的相互耦合网络。
在该第一实施方式的并行计算机系统1中,使用到发送目的地(目的地)为止的通信路径上的跳数(h)来预测没有拥塞的情况下的响应数据包的到达时刻,并测定实际的到达时刻与预测时刻的偏差。并且,根据到达时刻的偏差与到目的地为止的总缓冲器尺寸(h×B)来计算实效转送速度(t),并使数据包的转送速度下降到计算出的实效转送速度。
在作为该第一实施方式的一个例子的并行计算机系统1的拥塞控制方式中,若成为拥塞被消除的状态则响应数据包的到达时刻与预测一致,发送源的计算节点100的数据转送速度被提高而再次发生拥塞。即,通过将网络的状态维持在拥塞消除状态与拥塞的影响范围较窄的状态之间,具有不降低网络(通信网)的利用效率的效果。另外,与不进行拥塞控制的情况相比,还具有防止拥塞的影响范围扩大的效果。
另外,根据作为该第一实施方式的一个例子的并行计算机系统1中的拥塞控制方式,无需例如在路由器等中继装置中检测拥塞并通知给发送源的计算节点100那样的复杂机构。即,还具有能够减少导入成本、运用成本的效果。
其中,本技术适用于进行数据包的无损转送的网络。
(B)第二实施方式
图7是示意性地表示作为第二实施方式的一个例子的并行计算机系统1所具备的相互耦合网络接口的功能结构的图。
作为该第二实施方式的一个例子的并行计算机系统1具备图2以及图3所示的、与第一实施方式的并行计算机系统1相同的硬件结构,由相互耦合网络构成。
而且,如图7所示,作为第二实施方式的一个例子的并行计算机系统1代替第一实施方式的等待时间计算部11而具备限制尺寸计算部13。另外,作为本第二实施方式的一个例子的并行计算机系统1代替第一实施方式的数据包发送时刻表114而具备发送数据管理信息保持部116。
并且,在作为该第二实施方式的一个例子的并行计算机系统1中,发送控制部12通过按照响应数据包未到达的发送数据包的总数据量成为窗口尺寸w(限制尺寸)以下的方式进行控制的窗口控制来进行数据包的发送。
而且,这些以外的部分与第一实施方式的并行计算机系统1同样构成。其中,由于在图中与已叙述的符号相同的符号表示相同或大致相同的部分,所以适当地省略其详细的说明。
在发送控制部12中,在发送源的计算节点100中进行将未返回响应数据包的数据量保持为一定以下的窗口控制。具体而言,在未返回响应数据包的发送数据包的总数据量超过窗口尺寸(w)的情况下,发送控制部12停止数据包发送。
另外,在数据包发送电路113中,在发送数据包的规定位置记录数据包发送时刻。记录于该发送数据包的数据包发送时刻也被储存到与该发送数据包对应地从发送目的地的计算节点100发送的响应数据包。由此,能够测定从发送数据包被发送起到返回响应数据包为止的时间即往返时间。
发送数据管理信息保持部116是保持与由数据包发送电路113发送的各数据包中的响应数据包没有到达的数据包相关的信息的存储器等保持部。
具体而言,发送数据管理信息保持部116所保持的发送数据管理信息中包含与由数据包发送电路113发送出的各数据包中的响应数据包没有到达的数据包相关的消息识别符m和数据尺寸。而且,发送数据管理信息中包含由数据包发送电路113发送出的各数据包中的响应数据包没有到达的数据包的数据尺寸的总量(未响应数据量)。
限制尺寸计算部13根据形成该并行计算机系统1的相互耦合网络的结构来计算预想的到达预测时刻。
具体而言,若由数据包接收电路112接收到响应数据包,则限制尺寸计算部13读出被记录于该响应数据包的数据包发送时刻。并且,限制尺寸计算部13从构成信息保持部115中读出表示在通信路径中数据包通过了的路由器等中继装置的个数的跳数(h)和每1跳的转送延迟量(D),并计算出将它们相乘后的值(h×D)。
而且,限制尺寸计算部13通过对从响应数据包读出的数据包发送时刻加上计算出的(h×D),来求出到达预测时刻。
另外,限制尺寸计算部13对计算出的到达预测时刻和响应数据包实际上到达的时刻(到达实际时刻)进行比较。在到达实际时刻与计算出的到达预想时刻相比晚的情况下,限制尺寸计算部13进一步从到达实际时刻减去到达预测时刻来计算出到达时间的差值(d)。
并且,限制尺寸计算部13使用该计算出的差值(d)、和从构成信息保持部115读出的跳数(h)以及每1跳的路由器缓冲器量(B),来近似地计算出通信路径中的数据包的实效转送速度(t)。即,限制尺寸计算部13与第一实施方式的等待时间计算部11同样地使用上述的式(1)来计算实效转送速度(t)。
而且,限制尺寸计算部13为了将计算出的实效转送速度(t)作为以后的数据发送速度而使用以下的式(3)来计算窗口尺寸(w)。
w=2×h×D×t…(3)
此外,限制尺寸计算部13也可以将计算出的窗口尺寸(w)储存到未图示的存储器等。
另外,在作为该第二实施方式的一个例子的并行计算机系统1中,将窗口尺寸(w)的初始值设为w=2×h×D×T。
该窗口尺寸w=2×h×D×T是用于在没有拥塞的状态下得到实效转送速度(T)的值,表示窗口尺寸(w)的最大值。另外,2×h×D相当于数据通信路径中的往复传输延迟时间。
若在通信路径上产生拥塞,则实效转送速度(t)降低。在该并行计算机系统1中,随着该实效转送速度(t)的降低,窗口尺寸(w)变小。若窗口尺寸(w)变小则通过窗口控制来抑制数据包的发送。由此,未响应数据量减小,通信路径上的延迟(拥塞)被消除。若通信路径上的拥塞被消除,则实效转送速度(t)变大,窗口尺寸(w)变大。若窗口尺寸(w)变大则能够发送的数据包数量也增多。
其中,作为上述的等待限制尺寸计算部13、发送控制部12的各功能可以通过电子电路来实现,另外,也可以通过未图示的处理器执行程序来实现。
根据图8所示的流程图(步骤C10~C40)对如上述那样构成的作为第二实施方式的一个例子的并行计算机系统1中的消息发送时的处理进行说明。
若消息的发送源的计算节点100(发送节点)的数据包发送电路113开始消息的发送处理,则数据包发送电路113首先通过对窗口尺寸(w)设定w=2×h×D×T来进行初始化(步骤C10)。
发送控制部12参照发送数据管理信息保持部116的发送数据管理信息,来确认未响应数据量是否是窗口尺寸(w)以上(步骤C20)。在未响应数据量是窗口尺寸(w)以上的情况下(参照步骤C20的“是”路径),进行等待直至未响应数据量低于窗口尺寸(w)为止。
在未响应数据量小于窗口尺寸(w)的情况下(参照步骤C20的“否”路径),发送控制部12进行数据包的发送(步骤C30)。另外,对该发送的数据包附加消息识别符m、数据包识别符p。另外,数据包发送电路113随着该数据包发送,进行发送数据管理信息保持部116的发送数据管理信息的更新。具体而言,登记发送出的数据包的消息识别符m、将发送出的数据包的数据尺寸加到未响应数据量。
数据包发送电路113确认形成消息的所有数据包的发送是否完成(步骤C40)。在未完成所有数据包的发送的情况下(参照步骤C40的“否”路径),返回到步骤C20。另外,在所有数据包的发送完成了的情况下(参照步骤C40的“是”路径),结束消息的发送处理。
接下来,根据图9所示的流程图(步骤D10~D40)对作为本第二实施方式的一个例子的并行计算机系统1中的响应数据包的接收时的处理进行说明。
在消息的发送源的计算节点100(发送节点)中,进行是否接收到针对发送出的数据包的响应数据包的确认(步骤D10),在未接收到响应数据包的情况下(参照步骤D10的“否”路径),结束处理。即,数据包接收电路112进行响应数据包的接收等待。
在接收到响应数据包的情况下(参照步骤D10的“是”路径),在数据包发送电路113中确认响应数据包的消息识别符m是否与记录于发送数据管理信息保持部116的响应数据包未到达的数据包的消息识别符m一致(步骤D20)。
在响应数据包的数据包识别符m与发送中的消息一致的情况下(参照步骤D20的“是”路径),数据包发送电路113更新发送数据管理信息保持部116的发送数据管理信息中的未响应数据量(步骤D30)。即,从未响应数据量中减去与接收到的响应数据包对应的发送数据包的数据尺寸。
另外,在数据包发送电路113中,限制尺寸计算部13读出记录于响应数据包的数据包发送时刻,进行到达预想时刻的计算,并进行与该响应数据包的接收时刻、即与到达实际时刻的比较。在该比较的结果是到达实际时刻与计算出的到达预想时刻相比晚的情况下,限制尺寸计算部13从到达实际时刻中减去到达预测时刻来计算到达时间的差值(d)。而且,限制尺寸计算部13使用上述的式(1)来计算实效转送速度(t),并且,使用上述的式(3)来计算窗口尺寸(w)。
数据包发送电路113利用由限制尺寸计算部13计算出的窗口尺寸(w),来进行窗口尺寸(w)的更新(步骤D40),然后结束处理。
另外,在响应数据包的数据包识别符m与发送中的消息不一致的情况(参照步骤D20的“否”路径)下,也结束处理。
这样,在作为第二实施方式的一个例子的并行计算机系统1中,也能够得到与第一实施方式相同的作用效果。
即,计算出通信路径中的数据包的实效转送速度(t),并使用式(3)来计算窗口尺寸(w)。而且,发送控制部12使用该计算出的窗口尺寸(w)来进行伴随窗口控制的数据包发送。
由此,能够根据通信路径上的实际的吞吐量来发送数据包,消除拥塞。即,能够实现与通信路径上的实效转送速度(t)相符的拥塞控制,可高效地使用并行计算机系统1中的相互耦合网络。
在本第二实施方式的并行计算机系统1中,也与第一实施方式同样,使用到发送目的地(目的地)为止的通信路径上的跳数(h)来预测没有拥塞的情况下的响应数据包的到达时刻,并测定实际的到达时刻与预测时刻的偏差。并且,根据到达时刻的偏差和到目的地为止的总缓冲器尺寸(h×B)来推断实效转送速度(t),并将数据包的转送速度下降到实效转送速度。
在作为该第二实施方式的一个例子的并行计算机系统1的拥塞控制方式中,也与第一实施方式同样,通过将网络的状态维持在拥塞消除状态与拥塞的影响范围较窄的状态之间,具有不降低网络的利用效率的效果。另外,与不进行拥塞控制的情况相比,还具有防止拥塞的影响范围扩大的效果。
另外,根据作为该第二实施方式的一个例子的并行计算机系统1中的拥塞控制方式,无需例如在路由器等中继装置中检测拥塞并通知给发送源的计算节点100那样的复杂机构。即,还具有减少导入成本、运用成本的效果。
此外,本技术适用于进行数据包的无损转送的网络。
(C)第一实施方式的变形例
在上述的第一实施方式中,等待时间计算部11基于通信路径上的跳数(h)来计算实效转送速度(t),但在本变形例中,基于通信路径上的产生了拥塞的路由器20(以下称为拥塞路由器20)的个数来计算实效转送速度(t)。
在该第一实施方式的变形例中,在数据包内追加拥塞路由器通过次数c作为新的字段。该拥塞路由器通过次数c是每次通过拥塞路由器20时,由该拥塞路由器20自加1的计数器值。该拥塞路由器通过次数c例如一般能够通过路由器20挪用作为向终端节点通知网络的拥塞状态的拥塞信息通知功能而使用的ECN(Explicit Congestion Notification:显式拥塞通知)的字段来容易地实现。
即,在路由器20等中继装置中,代替在ECN字段中设立位(bit)而安装进行拥塞路由器通过次数c的自加1的功能。具体而言,在路由器20中,当转送数据包时,在缓冲器211、212中产生了等待的情况下,被记录在数据包内的拥塞路由器通过次数c加上1。此外,使数据包内的特定的值自加1的方法能够使用已知的各种方法来实现。
另外,在发送源的计算节点100中,当从数据包发送电路113发出数据包时,将该拥塞路由器通过次数c初始化为0。
并且,在发送目的地的计算节点100中,向针对接收到的发送数据包的响应数据包复写拥塞路由器通过次数c,返回包含该拥塞路由器通过次数c的响应数据包。
而且,在发送源的计算节点100中,使用记录于响应数据包的拥塞路由器通过次数c来计算实效转送速度(t)以及数据包发送间隔(g)。
即,等待时间计算部11对计算出的到达预测时刻与响应数据包实际上到达的时刻(到达实际时刻)进行比较,在到达实际时刻与计算出的到达预想时刻相比晚的情况下,进一步从到达实际时刻中减去到达预测时刻来计算到达时间的差值(d)。
而且,等待时间计算部11使用该计算出的差值(d)、从响应数据包读出的拥塞路由器通过次数c以及每1跳的路由器缓冲器量(B),来近似地计算通信路径中的数据包的实效转送速度(t)。
在本变形例中,判断为数据包的通信路径上的拥塞路由器20的缓冲器是耗尽的状态,并认为到发送目的地为止的通信路径上的拥塞路由器20的缓冲器是被数据包装满的状态。即,假定为以时间d转送与拥塞路由器20的总缓冲器尺寸c×B相当的数据量,使用以下的式(4)来计算实效转送速度(t)。
t=c×B/d…(4)
而且,等待时间计算部11为了将计算出的实效转送速度(t)作为以后的数据发送速度而使用上述的式(2)来计算数据包发送间隔(g)。
这样,根据作为第一实施方式的变形例的一个例子的并行计算机系统1,除了能够得到与上述的第一实施方式相同的作用效果以外,通过基于实际产生了拥塞的中继装置的个数来计算实效转送速度(t),还能够计算出与并行计算机系统1的状态相符的数据包发送间隔(g)而提高可靠性。
(D)第二实施方式的变形例
在上述的第二实施方式中,限制尺寸计算部13基于通信路径上的跳数(h)来计算实效转送速度(t),但在本第二实施方式的变形例中,也与第一实施方式的变形例同样地基于通信路径上的拥塞路由器20的个数来计算实效转送速度(t)。
即,在该第二实施方式的变形例中,也与第一实施方式的变形例相同,在数据包内追加拥塞路由器通过次数c作为新的字段,每次通过拥塞路由器20,该拥塞路由器通过次数c在该拥塞路由器20中被自加1。
另外,在发送源的计算节点100中,当从数据包发送电路113发出数据包时,将该拥塞路由器通过次数c初始化为0。
并且,在发送源的计算节点100中,对针对接收到的发送数据包的响应数据包复写拥塞路由器通过次数c,返回包含该拥塞路由器通过次数c的响应数据包。
而且,在发送源的计算节点100中,使用被记录于响应数据包的拥塞路由器通过次数c,来计算实效转送速度(t)以及数据包发送间隔(g)。
即,限制尺寸计算部13对计算出的到达预测时刻与响应数据包实际上到达的时刻(到达实际时刻)进行比较,在到达实际时刻与计算出的到达预想时刻相比晚的情况下,进一步从到达实际时刻中减去到达预测时刻来计算到达时间的差值(d)。
而且,限制尺寸计算部13使用该计算出的差值(d)、和从响应数据包读出的拥塞路由器通过次数c以及每1跳的路由器缓冲器量(B),来近似地计算通信路径中的数据包的实效转送速度(t)。
在本变形例中,限制尺寸计算部13也使用上述的式(4)来计算实效转送速度(t)。
而且,限制尺寸计算部13为了将计算出的实效转送速度(t)作为以后的数据发送速度而使用上述的式(3)来计算窗口尺寸(w)。
这样,根据作为第二实施方式的变形例的一个例子的并行计算机系统1,除了能够得到与上述的第二实施方式相同的作用效果以外,通过基于实际产生了拥塞的路由器20的个数来计算实效转送速度(t),还能够计算与并行计算机系统1的状态相符的数据包发送间隔(g)而提高可靠性。
(E)其他
而且,本发明并不限于上述的实施方式,在不脱离本发明主旨的范围内能够进行各种变形来实施。
例如,在上述的各实施方式以及变形例中,并行计算机系统1构成为具备4台计算节点100和2台路由器20的相互耦合网络,但并不限于此。即,在相互耦合网络中,也可以具备3台以下或5台以上的计算节点100,另外,也可以具备3台以上的路由器20。并且,也可以具备开关、中继器等路由器20以外的中继装置。另外,在具备3台以上的路由器20等来构成相互耦合网络的情况下,这些中继装置、计算节点100的连接方式能够适当地变更来实施。
另外,在上述的第一实施方式以及其变形例中,具备数据包发送时刻表114,通过参照该数据包发送时刻表114来实现往返时间的测定,但并不限于此。即,例如也可以与第二实施方式的并行计算机系统1同样,在数据包发送电路113中通过在发送数据包的规定位置记录数据包发送时刻来实现往返时间的测定。
同样,在上述的第二实施方式及其变形例中,在数据包发送电路113中通过在发送数据包的规定位置记录数据包发送时刻,实现了往返时间的测定,但并不限于此。即,例如也可以与第一实施方式的并行计算机系统1同样地具备数据包发送时刻表114。
另外,在上述的各实施方式及其变形例中,测定实际的到达时刻与预测时刻的偏差,在检测出拥塞产生时,为了使数据包的转送速度符合实效转送速度而决定、更新数据包发送间隔(g)、窗口尺寸(w),但并不限于此。例如,也可以在检测出拥塞产生时暂时以规定期间抑制数据包发送,然后为了使数据包的转送速度符合实效转送速度而决定、更新数据包发送间隔(g)、窗口尺寸(w)。
在检测出拥塞产生时,通过暂时以规定期间抑制数据包发送,能够尽早消除拥塞。而且,之后通过为了使数据包的转送速度符合实效转送速度而决定、更新数据包发送间隔(g)、窗口尺寸(w),能够高效地进行数据包的发送。
附图标记说明:1…并行计算机系统(计算机系统);11…等待时间计算部(发送间隔计算部);12…发送控制部;13…限制尺寸计算部;20、20-1、20-2…路由器(中继装置);21…收发缓冲器;22…交叉开关;100、100-1、100-2、100-3、100-4…计算节点;110…相互耦合网络接口(发送装置);111…处理器;112…数据包接收电路;113…数据包发送电路;114…数据包发送时刻表;115…构成信息保持部;116…发送数据管理信息保持部;211、212…缓冲器;P1~P4…端口。
Claims (9)
1.一种数据通信装置,是经由中继装置向其他数据通信装置发送数据的数据通信装置,其特征在于,具有:
发送间隔计算部,其基于到达实际时刻与到达预测时刻的差值、和所述数据的通信路径上的中继装置的缓冲器尺寸,来计算所述数据的实效转送速度,并基于所述计算出的实效转送速度来计算发送数据间的发送间隔,其中,所述到达实际时刻是针对向所述其他数据通信装置发送出的发送数据的响应数据所到达的时刻,所述到达预测时刻是对从所述其他数据通信装置发送出的响应数据到达所述数据通信装置为止所经过的中继装置的个数乘以经过一个中继装置时所需要的转送延迟时间而计算出的时刻;和
发送控制部,其基于所述计算出的发送间隔来进行发送数据的发送控制,
所述发送间隔计算部计算出从将所述数据的数据长度除以所述实效转送速度而得到的值中减去将所述数据长度除以未产生拥塞的情况下的实效数据转送速度而得到的值后的值作为所述发送间隔。
2.一种数据通信装置,是经由中继装置向其他数据通信装置发送数据的数据通信装置,其特征在于,具有:
发送控制部,其按照将针对向所述其他数据通信装置发送出的发送数据的响应数据未到达的发送数据的数据量相加而得到的总数据量为限制尺寸以下的方式进行数据的发送;和
限制尺寸计算部,其基于到达实际时刻与到达预测时刻的差值、和所述数据的通信路径上的中继装置的缓冲器尺寸,来计算所述数据的实效转送速度,并基于所述计算出的实效转送速度来计算所述限制尺寸,其中,所述到达实际时刻是针对向所述其他数据通信装置发送出的发送数据的响应数据所到达的时刻,所述到达预测时刻是对从所述其他数据通信装置发送出的响应数据到达所述数据通信装置为止所经过的中继装置的个数乘以经过一个中继装置时所需要的转送延迟时间而计算出的时刻,
设定对往复传输延迟时间乘以未产生拥塞的情况下的实效数据转送速度而计算出的值作为所述限制尺寸的初始值,其中,该往复传输延迟时间通过对所述响应数据到达为止所经过的中继装置的个数乘以经过一个中继装置时所需要的转送延迟时间而得到的值并将该得到的值乘以2倍来计算。
3.根据权利要求2所述的数据通信装置,其特征在于,
所述限制尺寸计算部计算出通过对所述往复传输延迟时间乘以所述实效转送速度而计算出的值作为所述限制尺寸。
4.一种数据发送方法,是经由中继装置发送数据的数据发送方法,其特征在于,
计算机基于到达实际时刻与到达预测时刻的差值、和所述数据的通信路径上的所述中继装置的缓冲器尺寸,来计算所述数据的实效转送速度,其中,所述到达实际时刻是针对发送出的发送数据的响应数据所到达的时刻,所述到达预测时刻是对所述响应数据到达为止所经过的中继装置的个数乘以经过一个中继装置时所需要的转送延迟时间而计算出的时刻,
基于所述计算出的实效转送速度来计算发送数据间的发送间隔,
基于所述计算出的发送间隔来进行发送数据的发送控制,
计算出从将所述数据的数据长度除以所述实效转送速度而得到的值中减去将所述数据长度除以未产生拥塞的情况下的实效数据转送速度而得到的值后的值作为所述发送间隔。
5.一种数据发送方法,是经由中继装置向其他数据通信装置发送数据的数据发送方法,其特征在于,
基于到达实际时刻与到达预测时刻的差值、和所述数据的通信路径上的所述中继装置的缓冲器尺寸,来计算所述数据的实效转送速度,其中,所述到达实际时刻是针对向所述其他数据通信装置发送出的发送数据的响应数据所到达的时刻,所述到达预测时刻是对从所述其他数据通信装置发送出的响应数据到达所述数据通信装置为止所经过的中继装置的个数乘以经过一个中继装置时所需要的转送延迟时间而计算出的时刻,
基于所述计算出的实效转送速度来计算限制尺寸,
按照将针对向所述其他数据通信装置发送出的发送数据的响应数据未到达的发送数据的数据量相加而得到的总数据量为所述限制尺寸以下的方式来进行数据的发送,
设定对往复传输延迟时间乘以未产生拥塞的情况下的实效数据转送速度而计算出的值作为所述限制尺寸的初始值,其中,该往复传输延迟时间通过对所述响应数据到达为止所经过的中继装置的个数乘以经过一个中继装置时所需要的转送延迟时间而得到的值并将该得到的值乘以2倍来计算。
6.根据权利要求5所述的数据发送方法,其特征在于,
计算出通过对所述往复传输延迟时间乘以所述实效转送速度而计算出的值作为所述限制尺寸。
7.一种计算机系统,具备:具有多个中继装置的通信网、和经由该通信网进行数据的收发的多个计算节点,其特征在于,
所述计算机节点具有:
发送间隔计算部,其基于到达实际时刻与到达预测时刻的差值、和所述数据的通信路径上的中继装置的缓冲器尺寸,来计算所述数据的实效转送速度,并基于所述计算出的实效转送速度来计算发送数据间的发送间隔,其中,所述到达实际时刻是针对向所述其他计算节点发送出的发送数据的响应数据所到达的时刻,所述到达预测时刻是对从所述其他计算节点发送出的响应数据到达所述计算节点为止所经过的中继装置的个数乘以经过一个中继装置时所需要的转送延迟时间而计算出的时刻;和
发送控制部,其基于所述计算出的发送间隔来进行发送数据的发送控制,
所述发送间隔计算部计算出从将所述数据的数据长度除以所述实效转送速度而得到的值中减去将所述数据长度除以在未产生拥塞的情况下的实效数据转送速度而得到的值后的值作为所述发送间隔。
8.一种计算机系统,具备:具有中继装置的通信网、和经由该通信网进行数据的收发的多个计算节点,其特征在于,
所述计算机节点具有:
发送控制部,其按照将针对向所述其他计算节点发送出的发送数据的响应数据未到达的发送数据的数据量相加而得到的总数据量为限制尺寸以下的方式进行数据的发送;和
限制尺寸计算部,其基于到达实际时刻与到达预测时刻的差值、和所述数据的通信路径上的中继装置的缓冲器尺寸,来计算所述数据的实效转送速度,并基于所述计算出的实效转送速度来计算所述限制尺寸,其中,所述到达实际时刻是针对向所述其他计算节点发送出的发送数据的响应数据所到达的时刻,所述到达预测时刻是对从所述其他计算节点发送出的响应数据到达所述计算节点为止所经过的中继装置的个数乘以经过一个中继装置时所需要的转送延迟时间而计算出的时刻,
设定对往复传输延迟时间乘以未产生拥塞的情况下的实效数据转送速度而计算出的值作为所述限制尺寸的初始值,其中,该往复传输延迟时间通过对所述响应数据到达为止所经过的中继装置的个数乘以经过一个中继装置时所需要的转送延迟时间而得到的值并将该得到的值乘以2倍来计算。
9.根据权利要求8所述的计算机系统,其特征在于,
所述限制尺寸计算部计算出通过对所述往复传输延迟时间乘以所述实效转送速度而计算出的值作为所述限制尺寸。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2011/071439 WO2013042219A1 (ja) | 2011-09-21 | 2011-09-21 | データ通信装置,データ送信方法及び計算機システム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103814563A CN103814563A (zh) | 2014-05-21 |
CN103814563B true CN103814563B (zh) | 2016-12-28 |
Family
ID=47914031
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180073556.8A Expired - Fee Related CN103814563B (zh) | 2011-09-21 | 2011-09-21 | 数据通信装置、数据发送方法以及计算机系统 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9426080B2 (zh) |
EP (1) | EP2760182B1 (zh) |
JP (1) | JP5673841B2 (zh) |
CN (1) | CN103814563B (zh) |
WO (1) | WO2013042219A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5329581B2 (ja) | 2011-02-04 | 2013-10-30 | 株式会社東芝 | 無線通信端末および無線通信方法 |
JP5872561B2 (ja) * | 2011-08-26 | 2016-03-01 | 株式会社日立製作所 | 予測型逐次計算装置 |
US9571406B2 (en) * | 2011-10-25 | 2017-02-14 | Vmware, Inc. | Network congestion management based on communication delay |
JP5814829B2 (ja) * | 2012-03-01 | 2015-11-17 | 株式会社東芝 | 無線通信装置及び方法 |
CN104021069B (zh) * | 2013-02-28 | 2017-07-11 | 国际商业机器公司 | 基于分布式虚拟机系统的软件性能测试的管理方法和系统 |
US20160254875A1 (en) * | 2015-02-27 | 2016-09-01 | Futurewei Technologies, Inc. | Synchronous Time-Division Duplexing Amplifier Architecture |
KR101925742B1 (ko) * | 2015-04-21 | 2018-12-05 | 미쓰비시덴키 가부시키가이샤 | 통신 장치, 통신 방법 및 통신 시스템 |
JP6904186B2 (ja) * | 2017-09-15 | 2021-07-14 | トヨタ自動車株式会社 | 車載装置、情報処理装置、情報処理方法、及びプログラム |
JP2019083441A (ja) | 2017-10-31 | 2019-05-30 | 村田機械株式会社 | 制御システム、制御装置、変換装置、制御システムの制御方法、制御装置の制御方法、及び、変換装置の制御方法 |
CN109905897B (zh) * | 2017-12-08 | 2022-11-18 | 华为技术有限公司 | 数据传输的方法和装置 |
CN109547263B (zh) * | 2018-12-15 | 2021-08-20 | 华南理工大学 | 基于近似计算的片上网络优化方法 |
CN116481676B (zh) * | 2023-06-21 | 2023-10-20 | 东阳市光明电力建设有限公司 | 电气设备接头发热测温方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1529965A (zh) * | 2001-07-18 | 2004-09-15 | �ձ�������ʽ���� | 公用信道流控制方法及系统 |
CN1835469A (zh) * | 2005-03-17 | 2006-09-20 | 国际商业机器公司 | 通信中继设备、信息管理系统以及控制方法 |
CN101141393A (zh) * | 2006-09-08 | 2008-03-12 | 株式会社Ntt都科摩 | 通信终端、通信控制方法及通信控制程序 |
CN101236620A (zh) * | 2006-10-20 | 2008-08-06 | 日本电气株式会社 | 行程时间预测装置和方法、交通信息提供系统和程序 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5432824A (en) | 1994-07-06 | 1995-07-11 | Mitsubishi Electric Research Laboratories, Inc. | Credit/rate-based system for controlling traffic in a digital communication network |
JP3548005B2 (ja) | 1998-06-24 | 2004-07-28 | 株式会社東芝 | フロー制御方法及びフロー制御装置 |
JP2001016276A (ja) * | 1999-06-29 | 2001-01-19 | Canon Inc | 通信装置、通信方法、記憶媒体及び通信システム |
JP2006303887A (ja) * | 2005-04-20 | 2006-11-02 | Sony Corp | データ送信制御方法、通信装置、プログラムおよび記録媒体 |
JP4831366B2 (ja) * | 2005-08-31 | 2011-12-07 | 日本電気株式会社 | 通信システム、通信端末、中継ノード及びそれに用いる通信方法並びにそのプログラム |
WO2007083687A1 (ja) * | 2006-01-23 | 2007-07-26 | Nec Corporation | 通信方法、通信システム、ノードおよびプログラム |
JP2008283621A (ja) * | 2007-05-14 | 2008-11-20 | Oki Electric Ind Co Ltd | ネットワーク輻輳状況監視装置、ネットワーク輻輳状況監視方法及びプログラム |
EP2164205B1 (en) * | 2007-06-29 | 2016-12-07 | Fujitsu Limited | Packet relay method and device |
FR2922391B1 (fr) * | 2007-10-15 | 2009-12-04 | Canon Kk | Procede et dispositif de transmission de donnees |
-
2011
- 2011-09-21 EP EP11872628.0A patent/EP2760182B1/en not_active Not-in-force
- 2011-09-21 WO PCT/JP2011/071439 patent/WO2013042219A1/ja active Application Filing
- 2011-09-21 CN CN201180073556.8A patent/CN103814563B/zh not_active Expired - Fee Related
- 2011-09-21 JP JP2013534502A patent/JP5673841B2/ja not_active Expired - Fee Related
-
2014
- 2014-03-17 US US14/215,212 patent/US9426080B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1529965A (zh) * | 2001-07-18 | 2004-09-15 | �ձ�������ʽ���� | 公用信道流控制方法及系统 |
CN1835469A (zh) * | 2005-03-17 | 2006-09-20 | 国际商业机器公司 | 通信中继设备、信息管理系统以及控制方法 |
CN101141393A (zh) * | 2006-09-08 | 2008-03-12 | 株式会社Ntt都科摩 | 通信终端、通信控制方法及通信控制程序 |
CN101236620A (zh) * | 2006-10-20 | 2008-08-06 | 日本电气株式会社 | 行程时间预测装置和方法、交通信息提供系统和程序 |
Also Published As
Publication number | Publication date |
---|---|
US20140198658A1 (en) | 2014-07-17 |
US9426080B2 (en) | 2016-08-23 |
JP5673841B2 (ja) | 2015-02-18 |
EP2760182A4 (en) | 2015-04-08 |
CN103814563A (zh) | 2014-05-21 |
JPWO2013042219A1 (ja) | 2015-03-26 |
EP2760182A1 (en) | 2014-07-30 |
WO2013042219A1 (ja) | 2013-03-28 |
EP2760182B1 (en) | 2017-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103814563B (zh) | 数据通信装置、数据发送方法以及计算机系统 | |
WO2019140556A1 (zh) | 一种报文传输的方法及装置 | |
CN102084627B (zh) | 通过网络传输数据的方法 | |
JP7078850B2 (ja) | ネットワーク制御装置及びネットワーク制御方法 | |
CN108881008A (zh) | 一种数据传输的方法、装置和系统 | |
US8897130B2 (en) | Network traffic management | |
CN105391567B (zh) | 流量管理实现方法、装置和网络设备 | |
Mittal et al. | Recursively cautious congestion control | |
CN101379781A (zh) | 通信方法、通信系统、节点及程序 | |
CN105743760B (zh) | 一种流量切换方法和装置 | |
CN102185771A (zh) | Mptcp中发送方数据包调度方法及系统 | |
CN108833293A (zh) | 一种基于软件定义网络sdn的数据中心拥塞控制方法及装置 | |
Zhai et al. | Performance of wireless LANs based on IEEE 802.11 MAC protocols | |
CN103731376B (zh) | 堆叠设备上链路汇聚根端口选择的方法及系统 | |
CN108011834A (zh) | Tcp拥塞窗口的确定方法和装置 | |
KR101983088B1 (ko) | 다중 경로 환경에서의 udp 패킷 처리 방법 | |
EP2936741A1 (en) | Probing a network | |
CN101491019A (zh) | 控制隧道传送循环检测的装置 | |
JP5957907B2 (ja) | 中継装置、送信システム、通信システムおよび中継方法 | |
JP5645016B2 (ja) | アドホックネットワークにおける下りパケット通信制御方法および通信端末 | |
JP6101114B2 (ja) | パケット伝送装置およびそのプログラム | |
CN109873763A (zh) | 一种通信方法及设备 | |
CN105900383B (zh) | 通信系统、控制节点和通信方法 | |
JP2019087800A (ja) | パケット解析プログラム、パケット解析装置、及び、パケット解析方法 | |
KR20120065867A (ko) | 지연-대역폭의 곱이 큰 네트워크를 위한 단대단 에너지 절약 기법을 사용한 다중경로 tcp 네트워크 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20161228 Termination date: 20180921 |
|
CF01 | Termination of patent right due to non-payment of annual fee |