流量控制方法以及用于该方法的发送终端、接收终端和分组传送系统的制作方法

文档序号:7679371阅读:129来源:国知局
专利名称:流量控制方法以及用于该方法的发送终端、接收终端和分组传送系统的制作方法
技术领域
本发明涉及利用分组对多个终端分发视频或语音等数据的流量控制方法 以及用于该方法的发送终端、接收终端和分组传送系统。
背景技术
在通过网络,利用分组对多个终端分发数据时,根据网络的状况或接收 终端的状况,需要控制要发送的数据的流量。
尤其,在通过因特网分发数据时,需要与因特网上的视频或语音之外的
其他业务,公平地分享频带。因特网上的其他业务大部分为使用TCP(Tmnsport Control Protocol;传输控制协议)的业务。由此,已知在因特网上与其他业务 之间公平地分配频带时,只要进行流量控制以使得与使用TCP的业务公平地 分配频带即可。也就是说,已知在通过因特网进行数据的分发时,只要进行 与TCP之间亲和性良好的流量控制即可。
另一方面,可认为在对多个终端进行数据的分发时,各个终端的能力不 均匀。具体而言,通过ADSL(Asymmetric Digital Subscriber Line;非对称数 字用户线路)与因特网连接的终端只能容许数Mbps(Megabits Per Second;兆位 每秒)的速度,相对于此,通过光纤与因特网连接的终端能够以100Mbps的速 度分发数据。已知有下述方式,在对这些通过ADSL与因特网连接的终端和 通过光纤与因特网连接的终端同时进行数据的分发时,进行流量控制以使最 迟的终端即通过ADSL连接的终端以所容许的速度以下的速度进行数据的分 发。具体而言,已4口例i口通过TFMCC(TCP Friendly Multicast Congestion Control; TCP友好多播拥塞控制)的流量控制的方式。
然而,在这样的方式中,在存在了各种各样的速度的接收终端时,能力 较高的接收终端无法接收足够的数据的分发。对照上述的例子,通过光纤连 接的终端虽然具有100Mbps的接收能力,但只能以数Mbps接收数据的分发。 这样的状态使同 一个会话(数据的分发)中产生不公平,被称为会话内的不公平 性。因此,对多个终端进行数据的分发的流量控制方式而言,期望可以实现所有的接收终端能够以各自的最大能力进行接收的状态,即可以改善会话内 的不公平性以保持会话内的公平性。
作为保持与TCP的兼容性,同时改善会话内的不公平性的流量控制方
式,已知SICC(Sender Initiated Congestion Control;发送者启动型拥塞控制) 方式(例如,参照非专利文献l)。
另夕卜,作为用于估计数据的可发送速率的方式,已知TFRC(TCPFriendly Rate Control; TCP友好速率控制)方式(例如,参照非专利文献2)。
SICC方式是在如XCAST(eXplicit Multicast;显式组播)方式那样的、发
实现利用该TFRC方式的流量控制的传输方式。 这里,具体说明SICC方式。
送终端基于TFRC方式估计对接收终端的可发送速率,并利用该估计值将各 个接收终端分类到适当的上述多个类别。发送终端分发XCAST分组,所述 XCAST分组指定了被分类为各个类别的接收终端的地址。
基于在发送终端与接收终端之间的分组的往返时间即往返时间(RTT; Round Trip Time)的、来自接收终端的反馈,估计可发送的速率。基于满足与 TCP的兼容性的方式即TFRC方式,估计该可发送的速率。因此,通过SICC 方式进行的流量控制满足与TCP的兼容性。
这样,在SICC方式中,基于TFRC方式估计可发送的速率,并且基于 估计出的可发送的速率,各个接收终端被分类为适当的类别。因此,在SICC 方式中,在分发分组时,能够满足与TCP的兼容性,同时大幅度地提高会话 内的公平性,而不由可发送速率最慢的接收终端进行速率控制。
另外,如上所述,在通过TFRC方式估计可发送的速率时,RTT的计测 必不可少。在TFRC方式中,基于下式(l),估计可发送速率Xcal。
<formula>formula see original document page 5</formula>……式(l)
在式(1)中,R为RTT、 p为损失事件概率、s为分组大小、以及t—RTO 为TCP所使用的超时值。作为t—RTO, —般使用4R。在式(1)中,R为分母, 所以可知可发送速率Xcal与RTT成反比例,RTT越大,可发送速率Xcal越如上所述,作为向多个终端传送分组的方式,在SICC方式中,利用例
如非专利文献3中所7>开的XCAST方式。
非专利文献3中所公开的XCAST方式为,通过发送者将属于规定的组
者端明确地指定分发分组的所有接收终端。在该XCAST方式中,在发送节 点与接收节点之间配置的中继路由器不对应XCAST方式时,根据目的地址 判断在该中继路由器中已被分发来的分组,该分组被传送到未分发的一个接 收终端。在分组中还残留着未分发的对方目的地时,接收到该分组的接收终 端向未分发的对方目的地重新发送分组。通过接收终端重复进行这样的中继 动作,从而将分组分发到所有的接收终端。
也就是说,在XCAST方式中,即使在中继路由器不对应XCAST方式时, 也通过接收终端进行成串传送,从而能够向多个接收终端分发分组。
非专利文献 1: E. Muramoto, et al., "Proposal for Congestion Control Method on Sender Initiated Multicast," Internet Conference 2003
非专利文献2: M. Handley, et al., "TCP Friendly Rate Control(TFRC): Protocol Specification", RFC 3448, Jan. 2003
非专利文献3: Y. Imai, et al., "XCAST6: eXplicit Multicast on IPv6," IEEE/IPSJ SAINT2003 Workshop 4, IPv6 and Applications, Orland, Jan. 200
发明内容
发明需要解决的问题
然而,将SICC方式适用于XCAST,并利用TFRC方式作为估计速率的 方式的流量控制方法中,存在以下的问题,即在中继路由器不对应XCAST 方式而进行成串传送时,以不必要的低速率进行流量控制。这起因于在进行 成串传送时RTT变大。这里,说明该问题。
图1是表示以往的分组传送系统的结构的结构图。
图1所示的分组分发系统1600由发送终端1601、接收终端1605 - 1608 和因特网1612构成。在图1中,以发送终端1601具有的SICC方式进^^分 类的类别分别为发送速率为1Mbps的类别A1602、发送速率为512Kbps的类 别B1603以及发送速率为256Kbps的类别CI604。发送终端1601利用类别A1602、类别B1603和类别C1604经由因特网 1612以SICC方式向接收终端1605 ~ 1608分发分组。图1表示以下的情形, 即一个接收终端1605属于类别A1602、三个接收终端1606- 1608属于类别 B1603、以及没有一个接收终端属于类別C1604,并利用XCAST方式进行分 组的分发。发送路径1610为从发送终端1601到与类别A1602对应的接收终 端1605的数据分发路径。发送路径1611为从发送终端1601到与类别B1603 对应的接收终端1606 ~ 1608的数据分发路径。此时,计测发送终端1601与 4妄收终端1608之间的RTT时的RTT计测路径1609为/人发送终端1601经由 接收终端1606和1607成串地到达接收终端1608的路径,该成串的路径的 RTT反馈到发送终端1601。
也就是说,如RTT计测路径1609所示,以往即使在成串地分发包含数 据的分组时,也利用所有区间的RTT进行了基于TFRC方式的流量控制。
然而,可认为若在RTT计测路径的区间中与其他业务的争用状况最激烈 的区间(瓶颈区间)中能维持与TCP的兼容性,则在其他的区间也能维持与TCP 的兼容性。虽然如此,在以往的方法中,计测从发送终端1601到接收终端 1608为止的所有路径,以不必要的低速率进行流量控制。
也就是说,在以往的技术中存在以下的问题,即在将SICC方式适用于 XCAST方式时,进行成串传送,而计算出较大的RTT,因此计算出较小的可 发送的速率,其结果,数据传输的性能劣化。
本发明的目的在于,提供即使在成串传送时也能够极大地提高分组传输 的性能而不会计算出较大的RTT的流量控制方法。
解决该问题的方案
本发明的流量控制方法为用于通过接收终端的中继进行分组的分发时的 流量控制方法,包括以下的步骤对所述分发的路径上每个邻接的终端的组, 获得分组在该组的终端之间往返时的往返时间;基于预先决定的基准,从所 述获得的往返时间中选择任意一个往返时间;以及基于所选择的所述往返时 间,计算分组的发送速率。
本发明的接收终端将从发送终端发送来的分组中继到其他接收终端,该 接收终端所采用的结构包括计测分组发送单元,将包含计测信息的分组发 送到所述其他接收终端,所述计测信息用于计测分组在所述接收终端与所述 其他接收终端之间往返时的往返时间;接收单元,从所述其他的接收终端接收对包含所述计测信息的分组发回的分组;往返时间信息获得单元,基于所 述接收单元所接收的所述发回的分组,获得与分组的往返时间有关的时间信 息;以及往返时间信息发送单元,将包含所述往返时间信息获得单元所获得 的所述时间信息的分组,发送到所述发送终端。
本发明的发送终端通过中继分组的接收终端进行分组的分发,该发送终
端所采用的结构包括接收单元,对所述分发的路径上邻接的终端的每个组 接收分组,所述分组包含与分组在该组的终端之间往返时的往返时间有关的 信息;往返时间获得单元,从所述接收单元所接收的分组中获得所述往返时
间;选择单元,基于预先决定的基准,从所述往返时间获得单元所获得的往
返时间中选择任意一个往返时间;以及计算单元,基于所述选择单元所选择 的往返时间,计算分组的发送速率。
本发明的分组传送系统将从发送终端发送来的分组通过接收终端的中继 进行分发,所采用的结构为,所述接收终端包括计测分组发送单元,将包 含计测信息的分组发送到其他接收终端,所述计测信息用于计测分组在与应 中继从所述发送终端发送来的分组的所述其他接收终端之间往返时的往返时 间;接收终端接收单元,从所述其他接收终端接收对包含所述计测信息的分 组的发回的分组;往返时间信息获得单元,基于所述接收终端接收单元所接 收的所述发回的分组,获得与所述往返时间有关的时间信息;以及往返时间 信息发送单元,将包含所述往返时间信息获得单元所获得的所述时间信息的 分组发送到所述发送终端,所述发送终端包括发送终端接收单元,从所述 接收终端接收包含所述时间信息的分组;往返时间获得单元,从所述发送终 端接收单元所接收的分组中获得所述往返时间;选择单元,基于预先决定的
基准,从所述往返时间获得单元所获得的往返时间中选择任意一个往返时间; 以及计算单元,基于所述选择单元所选择的往返时间,计算分组的发送速率。 发明的效果
根据本发明,即使在成串传送时也能够极大地提高分组传输的性能而不 极大地计算RTT。


图1是用于说明以往的SICC方式的图。方式的结构图。
图3是表示本发明的一实施方式中的分组传送系统的RTT分割计测处理
的流程的流程图。
图4是表示本实施方式中的XCAST分组A的结构的说明图。
图5是表示本实施方式中的XCAST分组B的结构的说明图。
图6是表示本实施方式的发送终端的结构的结构图。
图7是表示本实施方式的接收终端的结构的结构图。
图8是表示本实施方式中的XCAST分组生成处理的流程的流程图。
图9是表示本实施方式中的RTT用时间追加处理的流程的流程图。
图IO是表示本实施方式中的SICC-DATA-R报头(header)的结构的说明图。
图11是表示本实施方式中的RR分组的结构的说明图。
图12是表示本实施方式中的报告请求分组的结构的说明图。
图13是表示本实施方式中的RTT信息报告处理的流程的流程图。
图14是表示本实施方式中的报告分组的结构的说明图。
图15是表示本实施方式中的RTT估计处理的流程的流程图。
图16是表示本实施方式中的、报告分组超时发生时的处理的流程图。
具体实施例方式
以下,参照

本发明的实施方式。
图2是本发明的一实施方式中的分组传送系统的结构图。利用图2,说 明本实施方式中的计测分组的往返时间即RTT的方法的概要。
可认为若在RTT计测路径的瓶颈区间能维持与TCP的兼容性,则在其 他的区间也能维持与TCP的兼容性。因此,只要能够计算出RTT计测路径的 瓶颈区间中的可发送速率Xcal(以下,称为"Xcal-N,,),则可避免以不必要的低 速率进行流量控制。
根据上述的式(l)的说明,在计算Xcal-N时对每个区间变动的参数为RTT 的R和损失事件概率的p。对损失事件概率p而言,可认为分组的损失大部 分发生在瓶颈区间,所以所有区间的损失概率p近似于瓶颈区间的损失事件 概率p的可能性较高。另一方面,R为单纯地将各个区间的RTT相加,所以 可以预想成串越长,R越不必要比并瓦颈区间的RTT(以下,称为"RTT-N")大。因此,可认为只要计算瓶颈区间的RTT-N,并将其作为R而计算Xcal-N, 即使损失事件概率p等其他的参数原封不动地使用与成串时相同的计测值, 也能够在实用上期待较大的效果。因此,在本实施方式中,采用以进行中继 的每个接收终端为终端进行RTT的计测的RTT计测方法(以下,称为"RTT分 割计测")。
图2所示的分组传送系统100由发送终端101、接收终端105 ~ 108和因 特网115构成。
与图1的以往技术中的说明同样,在图2中的发送终端101具有SICC 方式的类别即发送速率为1Mbps的类别A102、发送速率为512kbps的类别 B103以及发送速率为256kbps的类别C104。假设接收终端105属于类别 A102、接收终端106 ~ 108属于类别B103、以及没有接收终端属于类别C104。
在本实施方式中,说明发送终端101向属于类别B103的接收终端106 ~ 108分发数据的情况。在发送终端101向属于其他类别的接收终端分发数据 时也能够同样地进行。
RTT计测路径109表示计测发送终端101与接收终端106之间的RTT时 的路径。RTT计测路径IIO表示计测接收终端106与接收终端107之间的RTT 时的路径。RTT计测路径111表示计测接收终端107与接收终端108之间的 RTT时的5各径。
数据分发路径112为在分发从发送终端101分发到三个接收终端106 ~ 108的XCAST分组时,到达与发送终端101邻接的第一个接收终端106的路 径。数据分发路径113为分发到上述接收终端106的、发往三个接收终端106 ~ 108的XCAST分组,被分发到与接收终端106成串地邻接的接收终端107时 的路径。同样地,数据分发路径114为分发到接收终端107的XCAST分组, 被分发到与接收终端107成串地邻接的接收终端108时的^各径。也就是说, 在本实施方式中,发送终端101和接收终端106~ 108在分组的发送路径上邻 接而不是物理地邻接。具体而言,在分发分组时,接收终端106与发送终端 101邻接,接收终端107与接收终端106邻接,接收终端108与接收终端107 邻接。
如图2所示,在本实施方式中说明了一例将SICC方式适用于XCAST 方式的情况,与以往的结构的不同之处在于,将RTT的计测以中继分组的分 发的各个接收终端106~107进行端接(terminating )。也就是说,在图2中,发送终端101沿着各个数据分发路径112- 114通过XCAST方式向属于类别 B103的接收终端106 ~ 108分发分组。也就是说,从发送终端101分发的分 组在分发时经由邻接的接收终端106和107成串地中继而分发到接收终端 108。根据本实施方式,沿着RTT计测路径109-111的各个路径进行此时的 RTT的计测,由中继分组的分发的接收终端106和接收终端107进行端接。
发回路径201为将用于计测时戳(time stamp)等RTT的RTT计测信息从 接收终端107发回到接收终端106的路径。同样地,发回路径202为将RTT 计测信息从接收终端108发回到接收终端107的路径。报告路径203为将计 测到的接收终端106与接收终端107之间的RTT等与RTT有关的RTT信息 从接收终端106报告给发送终端101的路径。同样地,报告路径204为将计 测到的接收终端107与接收终端108之间的RTT信息从接收终端107报告给 发送终端101的^各径。
然后,发送终端101选择并采用沿着报告路径203和203发送的、计测 到的RTT中最大的RTT,作为用于估计可发送的速率的RTT。
这样,本实施方式采用RTT分割计测。以下,说明RTT分割计测。
首先,说明本实施方式中的接收终端与发送终端之间的RTT分割计测的 日于序(sequence )。
图3是表示本实施方式中的RTT分割计测处理的时序的图。
首先,发送终端101生成对多地点分组(以下,称为"XCAST分组"),所 述分组具有要分发的数据和包含了分发目的地的列表(在本实施方式中为接 收终端106~ 108)的报头(S501)。如后面叙述,在XCAST分组中存在两个方 式,在本实施方式中将各个方式的XCAST分组称为"XCAST分组A',和 "XCAST分组B"。在步骤S501,生成XCAST分组A。
发送终端101在生成XCAST分组A后,通过图2的数据分发路径112 向接收终端106分发以接收终端106 ~ 108作为分发目的地的XCAST分组 A(S502)。
这里,说明发送终端101所生成的XCAST分组A的结构。 图4是表示本实施方式中的XCAST分组A的结构的图。 如图4所示,XCAST分组A1005由IP报头1001、 XCAST报头1002、 SICC-DATA报头1003和分发数据1004构成。
这里,IP报头1001是存储例如由RFC2460规定的IPv6的IP报头的区域 。XCAST 报头 1002 是存储由因特网草案 "draft - ooms - xcast - basic - spec - 09.txt,,规定的XCAST的报头的区域。在 本实施方式中,XCAST报头1002中如图4的目的地列表1006那样存储有接 收终端106- 108的各个终端的IP地址。SICC-DATA报头1003是存储在通 过方式分发数据时规定为必要的项目的区域。例如,SICC-DATA报头1003 中存储有表示数据格式的数据类型、RTT分割计测请求的有无或发送时间等。 分发数据1004是存储发送终端101所存储的分发数据的区域。
接着,4妻收终端106在接收到XCAST分组A后,进行分割计测RTT用 时间设定处理作为RTT分割计测的前处理(图3的步骤S503)。也就是说,在 步骤S503中,接收终端106首先从XCAST分组A1005的目的地列表1006 中获得本终端应中继的下一个传送目的地即接收终端107的识别符。接着, 接收终端106从设定在XCAST分组A1005的SICC-DATA报头1003的规定 区域中的值中,获得是否需要对发送终端101进行分割计测的报告的指示。 例如,如后面叙述,XCAST分组A1005的SICC-DATA报头1003具有用于 表示是否需要进行分割计测的报告的指示的报告请求标记。然后,例如,若 在该报告请求标记中比特起作用,则接收终端106判断为需要进行分割计测 的报告,进行分割计测并将其结果报告给发送终端101。在获得了需要进行 分割计测的指示时,接收终端106将接收终端106自身的IP地址和接收到 XCAST分组A的当前时间的中继时戳追加到XCAST分组A1005中,从而 生成XCAST分组B。
图5表示本实施方式中的XCAST分组B的结构,与XCAST分组A1005 并列地表示。XCAST分组A1005的结构与图4相同,所以省略其说明。
在图5中,如上所述,XCAST分组B1104为对XCAST分组A1005进 行了 RTT用时间设定处理所得的分组,其结构为XCAST分组A1005的 SICC-DATA报头1003被变更为SICC-DATA-R报头1101的结构。这里, SICC-DATA-R报头1101除了 SICC-DATA报头1003所存储的数据之外,还 追加了中继IP地址1102和中继时戳1103。
接着,接收终端106通过图2所示的数据分发路径113将所生成的上述 XCAST分组B传送到接收终端107(图3的步骤S504)。
接着,接收终端106将接收报告(Receive Report)分组(以下,称为"RR分 组")发送到发送终端101,所述接收报告分组用于发送终端101获得与接收终端106之间的RTT(S505)。如后面叙述,在RR分组中,除了发送终端101 发送了分组的时间即时戳之外,还存储有接收终端106计测出的实际频带和 损失事件概率等。由此,发送终端101能够从接收到RR分组的时间与时戳 所表示的时间之间的差分,获得发送终端101与接收终端106之间的RTT。
接着,接收到XCAST分组B的接收终端107进行用于生成报告请求分 组的RTT信息报告请求处理(图3的步骤S506)。这里所生成的"^艮告请求分组 用于使接收终端106计测RTT并将该计测结果报告给发送终端101。报告请 求分组包含表示报告目的地的发送终端101的IP地址以及包含在接收终端 107从接收终端106接收到的XCAST分组B中的中继时戳。
接着,接收终端107向数据的传送源即上游的接收终端106的IP地址发 送在步骤S506所生成的报告请求分组(S507)。
接着,接收终端106进行用于计测RTT并将其结果报告给发送终端101 的RTT信息报告处理(S508)。也就是说,接收终端106在从下游的接收终端 107接收到报告请求分组后,根据接收到的报告请求分组中存储的中继时戳 与本终端的当前的时间之间的差分,计测接收终端106和接收终端107之间 的往返时间即RTT。然后,接收终端106将这样计测出的RTT存储在后面叙 述其结构的报告分组中。
接着,接收终端106将存储有计测出的RTT等RTT信息的报告分组发 送到发送终端101(S509)。
这样,通过从接收终端106接收报告分组,发送终端101能够获得分割 了 XCAST分组的分发路径的、接收终端106与接收终端107之间的数据分 发路径113的RTT。
接着,在步骤S506进行了 RTT信息报告请求处理的接收终端107,与 接收终端106的情况下的步骤S503同样地,对XCAST分组B进行RTT用 时间设定处理(S510)。然后,接收终端107将改写了内容的XCAST分组B传 送到下一个数据传送目的地的接收终端108(S511)。
另外,与由接收终端106进行的步骤S505的处理同样地,接收终端107 将RR分组发送到发送终端101(S513)。
接着,接收到来自接收终端107的XCAST分组B的接收终端108,与 由接收终端107进行的步骤S506的处理同样地,进行RTT信息报告请求处 理(S512)。也就是说,与接收终端107同样地,接收终端108将发送终端101的IP地址以及接收终端108从接收终端107接收到的XCAST分组B的中继 时戳存储在报告请求分组中。
然后,接收终端108对接收终端107发送报告请求分组(S515)。
接收到报告请求分组的接收终端107,与由接收终端106进行的步骤S508 的处理同样地,计算接收终端107与接收终端108之间的数据分发路径114 的RTT,并进行RTT信息报告处理(S516)。然后,接收终端107将RTT计测 结果存储在报告分组中,并发送到发送终端101(S517)。
另外,接收终端108也在步骤S512中进行RTT计测信息报告请求处理 后,将后述的RR分组发送到发送终端101(S514)。
这样,通过从接收终端107和接收终端108接收报告分组,发送终端101 能够获得分割了 XCAST分组的分发路径的、接收终端107与接收终端108 之间的数据分发路径114的RTT。
如上所述,发送终端101从4妾收终端106和107的各个终端一妻收^^告分 组。由此,发送终端101能够获得发送终端101与接收终端106之间的数据 分发路径112的RTT、接收终端106与接收终端107之间的数据分发路径113 的RTT、以及接收终端107与才妄收终端108之间的数据分发路径114的RTT。 发送终端101进行作为估计可发送的速率时采用的RTT的值而对这样获得的 多个RTT中的最大RTT进行估计的处理(S518)。
发送终端101利用在上述步骤S518估计出的RTT以及每个接收终端 106- 108计测出的、分别存储在RR分组所包含的实际频带和损失事件概率 中的值,基于TFRC方式计算发送速率,并进行流量控制。
也就是说,根据本实施方式,在基于TFRC方式计算发送速率时,采用 对通过以往的方式计测出的RTT进行分割后所得的RTT中最大的RTT作为 式(1)中的R。因此,通过本实施方式获得的R小于以往的方式的值,其结果, 可发送速率Xcal大于以往的值,从而能够极大地提高数据传输的性能。
利用在各个终端之间收发的XCAST分组的具体结构,详细地说明以上 说明了的本实施方式中的、RTT分割计测处理的顺序中的发送终端101和接 收终端106的详细结构和动作。
首先,详细地说明本实施方式中的发送终端101和接收终端106的结构。
图6是表示本实施方式的发送终端101的结构的结构图。
发送终端101由分发数据存储单元401、接收单元402、控制单元403、接收终端识别符信息生成单元404、面向多地点分组生成单元405、往返时间 信息获得单元406、选择单元407、计算单元408、发送单元409、接收终端 类别分类单元410和类别保持单元411构成。
分发数据存储单元401存储向接收终端106~ 108分发的视频内容等分发 数据。接收单元402接收报告分组和后述的RR分组,同时接收例如IP地址 那样的分发目的地信息或内容信息等,所述报告分组中存储有来自接收终端 106 ~ 108的RTT信息。接收终端识别符信息生成单元404生成分发目的地信 息,该分发目的地信息为对分发数据存储单元401所存储的分发数据进行分 发的接收终端106- 108的识别符。该分发目的地信息例如为接收终端106 ~ 108的IP地址。面向多地点分组生成单元405将接收终端识别符信息生成单 元404所生成的分发目的地信息追加到分发数据存储单元401所存储的分发 数据,从而生成分发到多地点的对多地点分组。
往返时间信息获得单元406分别从由接收单元402所接收的、来自接收 终端106 ~ 108的存储有RTT信息的报告分组中获得RTT。选择单元407基 于预先决定的基准,从往返时间信息获得单元406所获得的RTT中选择规定 的RTT。对预先决定的基准而言,例如在本实施方式中,选择单元407选择 所获得的多个RTT中最大的RTT。但是,除此之外,若利用第二大的RTT 或第三大的RTT对减小式(1)的Xcal有效,则还可以选4奪这些RTT。例如, 通过将利用式(l)计算出的Xcal与预先决定的值进行比较,能够判断是否对减 少Xcal有效。由此,在因网络的状况导致RTT暂时增大到极端的值那样的 情况下,能够避免选择该RTT。或者,也可将多个RTT分为多个组,从属于 最大组的RTT中采用任意一个。根据时间相应时间的数据分发的状况,能够 改变这些条件。计算单元408基于选择单元407所选择的RTT,计算对各个 接收终端的发送速率。发送单元409将面向多地点分组生成单元405所生成 的对多地点分组发送到最初的接收终端106。
接收终端类别分类单元410基于计算单元408计算出的对各个接收终端 的发送速率,将各个接收终端105~ 108分类为适当的发送速率的类别即在本 实施方式中的类别A102-类别C104。类别保持单元411使接收终端类别分 类单元410分类出的结果与分别属于各个类别A102 ~类别C104的接收终端 105~ 108关联对应后进行存储。在本实施方式中,对接收终端类别分类单元 410进行类别的分类而在类别保持单元411存储各个类别A102-C104与接收终端105 ~ 108的对应关系之后的动作进4亍i兌明。
另外,接收终端识别符信息生成单元404基于类别保持单元411所记录 的接收终端的类别分类,生成分发目的地信息,并将其传送给面向多地点分 组生成单元405。发送单元409基于接收终端识别符信息生成单元404所生 成的分发目的地信息,发送由面向多地点分组生成单元405生成的对多地点 分组。另外,控制单元403以数据的分发或报告分组的接收等作为契机,控 制以上说明了的各个单元的动作。
图7是表示本实施方式的接收终端的结构的结构图。
接收终端106由接收单元301、控制单元302、接收终端识别符信息获得 单元303、面向多地点分组生成单元304、计测分组发送单元305、往返时间 信息获得单元306和往返时间信息发送单元307构成。
接收单元301接收来自发送终端101或下一个传送目的地即接收终端 107的报告请求分组。接收终端识别符信息获得单元303从接收单元301所 接收的XCAST分组中获得下一个应传送的接收终端的识别符。这里,假设 接收终端识别符信息获得单元303获得该接收终端的IP地址作为接收终端的 识别符。面向多地点分组生成单元304对接收单元301所接收的XCAST分 组,进行用于将该分组中继到下一个应传送的接收终端107的处理。具体而 言,面向多地点分组生成单元304对XCAST分组的报头进行所需的处理, 该处理为记录对自身地址已分发完毕等的处理。计测分组发送单元305对由 对多地点分组生成单元304进行所需的处理后的XCAST分组,追加用于计 测与下一个应传送的"l妄收终端107之间的RTT所需的RTT计测信息,并将其 发送到接收终端107。往返时间信息获得单元306通过接收单元301接收来 自接收终端107的回复,计算RTT信息,所述回复为对从计测分组发送单元 305发送的、追加了用于计测RTT所需的RTT计测信息的分组的回复。RRT 信息例如包含与接收终端107之间的RTT。往返时间信息发送单元307将存 储有往返时间信息获得单元306计算出的RTT信息的分组发送到发送终端 101作为报告分组。控制单元302以接收来自发送终端101等的分组等作为 契机,控制以上说明过的各个单元的动作。另外,本实施方式中的接收终端 105、接收终端107和接收终端108具有与接收终端106相同的结构。
以下,参照图6和图7并利用图8~图16详细地说明图3所示的本实施 方式的时序图的主要部分的处理。图8是表示图3所示的流程图的发送终端101的XCAST分组生成处理 (S501)的细节的流程图。另外,这里,为了简化说明,将图3的步骤S502处 理为包含在XCAST分组生成处理中。
发送终端101通过控制单元403从分发数据存储单元401获得进行分发 的数据(S201)。控制单元403中预先注册有期望获得该进行分发的数据的接 收终端的IP地址等。例如,在分发数据存储单元401存储有IP电视的内容 信息时,控制单元403能够从提供IP节目表的Web服务器等得到期望分发的 接收终端的IP地址并进行注册。
接着,接收终端识别符信息生成单元404生成分发数据的目的地的列表 (分发目的地列表)(S202)。例如,接收终端识别符信息生成单元404利用上述 进行了注册的接收终端的IP地址生成目的地列表。在本实施方式中,接收终 端识别符信息生成单元404生成记述有4妻收终端106 ~ 108的IP地址的目的 地列表。接着,面向多地点分组生成单元405将接收终端识别符信息生成单 元404所生成的分发目的地信息追加到分发数据存储单元401所存储的分发 数据中,从而生成图4所示的结构的分发分组即XCAST分组A1005(S203)。
接着,发送单元409沿着图2的数据分发路径112分发由面向多地点分 组生成单元405生成的XCAST分组A1005(S204)。
接着,说明图3的RTT用时间设定处理(S503)。
另外,在接收终端107中,也在图3的步骤S510进行RTT用时间设定 处理。步骤S503的处理与步骤S510的处理之间的不同之处在于,处理的
说明两处理。
图9是表示RTT用时间追加处理的流程的流程图。另外,这里,为了简 化说明,将图3的步骤S504、 S505、 S511和S513处理为包含在RTT用时间 追加处理中。
在接收终端106的情况下,接收单元301从发送终端101接收XCAST 分组A1005,而在接收终端107的情况下,接收单元301从接收终端106接 收XCAST分组B1104(S601)。接着,在接收终端106的情况下,接收终端识 别符信息获得单元303从接收到的XCAST分组A1005的XCAST报头1002 的目的地列表1006中获得自身应中继的下一个传送目的地的接收终端识别 符,而在接收终端107的情况下,接收终端识别符信息获得单元303从XCAST分组B1104的XCAST报头1002的目的地列表1006中获得自身应中继的下 一个传送目的地的接收终端识别符(S602)。在本实施方式中,在接收终端106 的情况下,获得接收终端107的IP地址,而在接收终端107的情况下,获得 才妄收终端108的IP地址。
接着,在接收终端106的情况下,控制单元302判断在接收到的XCAST 分组A1005中,图10所示的SICC-DATA报头1003的l艮告请求标记1212的 比特是否起作用,而在接收终端107的情况下,控制单元302判断在XCAST 分组B1104中,图10所示的SICC-DATA报头1003的报告请求标记1212的 比特是否起作用(S603)。如上所述,报告请求标记1212为表示是否需要进行 分割计测的报告的指示的标记,若在该标记中比特起作用,则接收终端106 和107进行分割计测,并将其结果报告给发送终端101。在本实施方式中, 如图IO所示,假设在报告请求标记1212中比特起作用。将在后面利用图10 说明SICC-DATA报头1003的结构。
在步骤S603中报告请求标记1212不为1时(S603:"否"),在接收终端 106的情况下,面向多地点分组生成单元304根据XCAST方式改写XCAST 分组A1005,而在接收终端107的情况下,面向多地点分组生成单元304才艮 据XCAST方式改写XCAST分组B1104。由此,在接收终端106的情况下, 面向多地点分组生成单元304生成用于传送到下一个传送目的地的接收终端 107的分组,而在接收终端107的情况下,面向多地点分组生成单元304生 成用于传送到下一个传送目的地的接收终端108的分组,从而将其成串传送 (S604)。
在步骤S603中报告请求标记1212起作用时(S603:"是"),为了进行分 发状况的反馈,控制单元302将RR分组发回到发送终端101(S605)。将在后 面叙述RR分组的结构的细节。
接着,面向多地点分组生成单元304判断接收到的分组是XCAST分组 A1005还是XCAST分组B1104(S606)。对该判断而言,能够基于图10所示 的SICC-DATA报头1003或SICC-DATA-R报头1101中存储的分组中的数 据类型1206的区域进行判断。在本实施方式中,在数据类型1206的值为"1" 时,面向多地点分组生成单元304判断为XCAST分组A1005,而如图10所 示,数据类型1206的值为"2"时,面向多地点分组生成单元304判断为XCAST 分组B1104。将在后面叙述图IO所示的SICC-DATA报头1003。分组A1005时(S606:"是"), 面向多地点分组生成单元304将XCAST分组A1005加工成XCAST分组 B1104的形式。也就是说,面向多地点分组生成单元304确保中继IP地址1102 和中继时戳1103的区域,还将表示数据类型的区域1206改写为表示XCAST 分组Bl 104的类型即本实施方式中的"2"(S609),并进入下一个步骤S607。
在步骤S606中接收到的分组已为XCAST分组B1104时(S606:"否"), 面向多地点分组生成单元304不进行改写为XCAST分组B1104的形式的处 理,而进入下一个步骤S607。
接着,计测分组发送单元305对XCAST分组BU04的形式的分组,将 在因特网上用于确定自身(接收终端)的识别符设定给中继IP地址1102 ,将当 前时间设定给中继时戳1103(S607)。这里,计测分组发送单元305将自身的 IP地址i殳定l会XCAST分组B1104的形式的分组作为上述识别符。
最后,计测分组发送单元305根据XCAST方式将这样加工后的XCAST 分组B1104成串地传送到下一个传送目的地(S608)。也就是说,在接收终端 106的情况下,计测分组发送单元305将XCAST分组B1104传送到接收终端 107,而在^^妄收终端107的情况下,计测分组发送单元305将XCAST分组 B1104传送到接收终端108。
图10是表示上述加工后的XCAST分组B1104的SICC-DATA-R报头 1101的具体结构的图。利用图10并通过具体的数据结构详细地叙述XCAST 分组A加工成XCAST分组B的处理。
SICC-DATA-R报头1101具有发送端口号1203 ~分组序列号1218、中 继IP地址1102和中继时戳1103。中继IP地址1102和中继时戳1103在图9 所示的步骤S609被追加到XCAST分组A1005中。这样,图4和图5所示的 XCAST分组A1005的SICC-DATA报头1003为从图5和图10所示的 SICC-DATA-R报头1101中去除了中继IP地址1102和中继时戳1103的报头。
发送源端口 1203和目的地端口 1204为用于SICC协议的栈(stack)确定传 送数据的对方目的地的应用程序的区域。另外,版本序号1205是表示SICC 协议的版本号的版本序号。数据类型1206是表示用于规定SICC协议中的分 组形式的数据类型的区域。例如,能够将在该数据类型1206中记述了"l"的 XCAST分组B1104规定为通过SICC协议进行数据的分发的分组。此时,如 上所述,能够将数据类型1206为"l"的分组判断为XCAST分组A。另一方面,如图10所示,能够将数据类型1206为"2"的分组判断为XCAST分组B。另 外,报头长度1207存储SICC-DATA报头1003的长度。序列号1208存储已 发送的分组的序列号。时戳1209存储发送终端IOI发送分发数据时的时间。 最大RTT1210是通过发送终端设定发送终端与接收终端之间的RTT中最大的 RTT的区域。但是,在本实施方式中,发送终端101未利用最大RTT1210的 区域,仅在图3的步骤S518求最大RTT,估计RTT。
另外,类别(class)1211是表示图2中所说明的发送速率的类别的区域。 报告请求标记1212是表示有无RTT的分割计测的报告请求的标记。例如, 如上所述,在本实施方式中,报告请求标记1212的比特起作用表示在进行分 割计测的报告请求,而报告请求标记1212的比特不起作用表示不在进行分割 计测的报告请求。最大RTT1210、预备区域1213、全序列(total s叫uence)12M、 ADU序列号1215、分组长度1216、分组数1217和分组序列号1218是SICC 方式在数据的分发中对分组进行分割或重构时利用的区域。分组序列号1218 用作这样分割后的分组内的序列号,省略这些序列号的详细的说明。
叙述在如发送端口号1203 ~分组序列号1218那样,构成了 SICC-DATA-R报头时,如何生成XCAST分组A1005和XCAST分组B1104、 以及在接收终端106中进行成串传送时如何进行改写处理。
本实施方式的XCAST分组A1005例如将数据类型栏1206设定为"1"、 将报头长度1207设定为"28"(字节)。XCAST分组B1104例如将数据类型栏 1206设定为"0xl0"(以十进制表记为16)、将报头长度1207设定为"48,,(字节)。 XCAST分组A1005与XCAST分组B1104之间的报头长度的差分为20字节 相当于将中继IP地址1102的长度设为16字节、将中继时戳1103设为4字 节而将其相加所得的字节。另外,在以IPv4进行分发时,能够以4字节记述 中继IP地址1102的长度。此时,例如,将数据类型栏1206设定为"0xll"(以 十进制表记为17)、将报头长度1207设定为"36"(字节)。
因此,接收终端106的面向多地点分组生成单元304改写XCAST分组 A1005的数据类型1206和报头长度1207,如上所述,能够将作为在因特网 上确定接收终端106自身的识别符的IP地址设定给中继IP地址1102,将接 收终端106的当前时间追加到中继时戳1103 ,人而加工成XCAST分组B1104 。
另夕卜,如图3中进行的说明,在SICC-DATA报头1003中存在报告请求 标记1212时,接收到XCAST分组A1005的接收终端106在步骤S504立刻将包含时戳1209的信息的RR分组发送到发送终端101。这样,发送终端101 能够计测发送终端101与接收终端106之间的RTT。
这里,说明从接收终端106发送到发送终端101的RR分组。 图11是表示本实施方式中的RR分组的具体结构的图。 在图11中,RR分组1301具有发送端口号1203 ~版本1205以及数据类 型1304-损失事件概率1312。发送端口序号1203 ~版本1205与图10所示 的XCAST分组B相同。数据类型1304是表示分组的形式的区域。例如,预 先将"7,,定义为RR分组形式,从而接收终端105~108或发送终端101能够 从数据类型1304识别RR分组1031。另夕卜,在报头长度1305中设定RR分 组的长度即"28"(字节)。在发送源识别符1307中存储本终端即接收终端106 的IP地址。时戳1308是用于接收终端106对XCAST分组A1005中所记载 的时戳1209进行转记的区域。这里,时戳1209是发送终端101发送分组时 记录的发送时的时间。接收终端106发回发送时间,从而发送终端101能够 计测接收终端106与发送终端101之间的RTT。实际频带1311是用于报告在 接收终端能够观测到的实际频带的区域,用于基于TFRC方式计算发送终端 101与接收终端之间的可发送的速率时限制上限值。损失事件概率1312用于 基于以TFRC方式规定的观测方式,记载并报告在接收终端观测到的损失事 件概率。RR分组1301除了上述各个区域之外,还具有分组序列号1306、响 应顺序(reply sequence)1309和预备区域1310。
接着,利用报告请求分组的结构说明图3所示的RTT信息报告请求处理 (S506和S512)。另外,这里,以步骤S506为例进行说明。另外,为了简化 说明,将图3的步骤S507处理为包含在RTT信息报告请求处理中。
接收到XCAST分组B1104的接收终端107通过控制单元302生成报告 请求分组,并进行RTT信息报告请求处理。说明接收终端107的控制单元302 所生成的报告请求分组。
图12是表示报告请求分组的具体结构的例子的图。
在图12中,报告请求分组1401具有发送端口号1203 ~版本1205以及 数据类型1404 ~发回目的地IP地址1409。发送端口号1203 ~版本1205与图 IO所示的XCAST分组B相同。数据类型1404是表示分组的形式的区域。例 如,预先将"8,,定义为报告请求分组形式,从而接收终端105 - 108或发送终 端101能够从数据类型1404识别报告请求分组1401。在报头长度1405中报告请求分组的长度即"32,,(字节)。发送源识别符1407是表示用于确定本分组 的发送源的IP地址等信息的区域。中继时戳1408是用于接收终端107将时 戳发回到上游的接收终端106的区域。该中继时戳1408为从收到数据分发的 上游的接收终端106接收到的XCAST分组B1104的中继时戳1103,例如转 记了接收终端106的时戳(S506的情况)或接收终端107的时戳(S512的情况)。 发送目的地1409是存储发送报告的目的地的区域,记载有作为确定发送终端 101的识别符的IP地址。报告请求分组1401除了上述各个区域之外,还具有 分组序列号1406。
接收终端107将表示报告目的地的发送终端101的IP地址存储在报告请 求分组1401的发送目的地1409中。另外,接收终端107将接收终端107从 接收终端106接收到的XCAST分组Bl 104的中继时戳1103的值转记并存储 在中继时戳1408中。
然后,如图3的步骤S507所示,接收终端107向上游的接收终端106 的IP地址发回报告请求分组1401。接收到报告请求分组1401的接收终端106 以时戳1408中记载的信息和当前时间计算RTT,并将该计算出的RTT作为 报告分组报告给发送目的地识别符1409中记载的目的地即发送终端101。
接着,说明图3的RTT信息报告处理(S508和S516)。另外,这里,以 步骤S508为例进行说明。另外,为了简化说明,将图3的步骤S509处理为 包含在RTT信息报告处理中。
图13是表示RTT信息报告处理的流程的流程图。
接收终端106在将XCAST分组B1104传送到应进行数据传送的下游的 接收终端107(图3的步骤S504)后,接收单元301等待回复即报告请求分组 1401(S701)。
在接收终端106中,在接收单元301接收到报告请求分组1401时(S702: "是"),控制单元302将接收单元301所接收的报告请求分组1401传送给 往返时间信息获得单元306。往返时间信息获得单元306获得报告请求分组 1401的中继时戳1408中存储的信息,并且参照本终端的当前的时间,从而 根据其差分计测接收终端106与接收终端107之间的往返时间即RTT(S703)。
最后,接收终端106将如上所述地计测出的RTT存储在报告分组中,并 发送到发送终端101(S704)。
这里,说明报告分,组。图14是表示报告分组的具体结构的图。
在图14中,报告分组1501具有发送端口号1203 ~版本1205以及数据 类型1504-计测目的地1509。发送端口序号1203 ~版本1205与图10所示 的XCAST分组B相同。数据类型1504是表示分组的形式的区域。例如,预 先将"9,,定义为报告分组形式,从而接收终端105~108或发送终端101能够 从数据类型1504识别报告分组1501。另外,在报头长度1505中设定报告分 组的长度即"32,,(字节)。发送源识别符1507是表示用于确定发送源的IP地址 等识别符的区域。计测RTT1508是存储计测出的RTT的区域。该计测RTT1508 中例如记载有接收终端106与接收终端107之间的RTT或接收终端107与接 收终端108之间的RTT。另外,计测目的地1509是存储用于确定计测对方目 的地的IP地址等识别符的区域。该计测目的地1509中例如存储有接收终端 107或接收终端108的IP地址等识別符。也就是说,计测目的地1509中存储 有能够确定计测出计测RTT1508的RTT的接收终端的IP地址等识别符。报 告请求分组1401除了上述各个区域之外,还具有分组序列号1506。
如上所述,接收到该报告分组1501的发送终端101能够获得分割了 XCAST分组的分发路径上的数据分发路径的一部分的RTT。
接着,说明图3所示的发送终端101进行的RTT估计处理(S518)。
图15是表示RTT估计处理的流程的流程图。
发送终端101从以上述的方式获得的多个RTT中选择最大的RTT,并利 用该RTT作为可计算TFRC方式的发送速率的值进行RTT估计处理。发送终 端101的接收单元402为对应多个接收终端106- 108中一部分的接收终端的 报告分组没有被发回的情况,利用计时器设定超时值(S801)。该超时值例如 采用比从发送终端101经由所有的接收终端106- 108到达最后的接收终端时 的RTT大的值。
接着,接收单元402等待来自接收终端106和107的报告分组(S802)。 在接收单元402从RTT估计所需的所有的接收终端106和107接收到报告分 组时(S803:"是"),往返时间信息获得单元406从各个报告分组1501的计 测RTT1508获得RTT计测3各径110和111的RTT。对于RTT计测路径109, 获得基于来自接收终端106的RR分组计算出的RTT。选择单元407从这些 RTT计测路径109 ~ 111的RTT中选择最大的RTT,并采用该最大的RTT作 为以TFRC方式进行计算时利用的RTT(将其设为R)(S805)。此时,计算单元408从分割计测出的RTT中的、各个接收终端105 ~ 108 的上游的RTT中选择最大的RTT并进行计算。例如,在本实施方式中,若利 用图2的RTT计测路径109-111进行说明,则计算单元408利用RTT计测 路径109的RTT计算接收终端106的发送速率、利用RTT计测路径109和 110中较大的RTT计算接收终端107的发送速率、以及利用RTT计测路径109、 110和111中最大的RTT计算接收终端108的发送速率。
"否"),接收单元402等待相应的接收终端的RR分组(S807)。
在接收单元402从所有的接收终端105-108接收到RR分组1301时
(S806:"是,,),计算单元408利用选择单元407所选择的R、以及存储在RR
分组1301的实际频带1311和损失事件概率1312中的内容,基于TFRC方式
计算发送速率(S808)。
另一方面,在步骤S803中,在存在没有向接收单元402发送报告分组
1501的接收终端时(S803:"否"),控制单元403判断是否发生超时,在未发
生时回到等待报告分组的状态(S804:"否,,)。
在发生超时时(S804:"是"),控制单元403转移到发生报告分组超时时
的处理。也就是说,在发生了超时时,意味着接收单元402无法接收所有的
接收终端105 ~ 108的报告分组1501,所以选择单元407像往常一样采用通
过成串路径计测出的RTT。
图16是表示发生报告分组超时时的处理的流程图。
控制单元403判断来自接收终端的RR分组1301是否到达(S901),在判 断为未到达时(S901:"否"),等待RR分组的到达(S902)。在控制单元403 判断为RR分组1301已到达时(S901:"是"),往返时间信息获得单元406根 据RR分组1301的时戳1308中存储的时戳、以及接收RR分组时的发送终端 101的当前时间,计算RTT(S903)。该RTT为XCAST分组未以各个接收终端 为终端而成串地传送到多个接收终端时的RTT。选择单元407将该RTT设为 R(S904),并将其传送给计算单元408作为以TFRC方式计算发送速率时的 RTT。计算单元408利用RR分组1301所记载的实际频带1311和损失事件概 率1312,以TFRC方式计算发送速率(S905)。也就是说,在发生了超时时, 发送终端101进行以通常的SICC方式规定的动作而不进行RTT分割计测。
如上说明,在未发生超时时,适用于估计接收终端108的可发送的速率的RTT小于通过/人发送终端101经由接收终端106和接收终端107到达接收 终端108的路径计测出的RTT,所以其结果,计算出的可发送的速率变大。 也就是说,不发生数据的传输的性能不必要地劣化的问题。
接着,利用图6所示的发送终端101的结构图说明计算发送速率后的发 送终端101的动作。
接收终端类别分类单元410基于计算单元408计算出的各个接收终端 105 ~ 108的发送速率,将各个接收终端105 - 108分配给适当的发送速率的 类别。类别保持单元411存储由上述接收终端类别分类单元410进行分类所 得的结果即地址与分类后的类别之间的对应。接收终端识别符信息生成单元 404在类别保持单元411所记录的接收终端的类别分类被更新时,重新生成 分发目的地信息,并将其传送给面向多地点分组生成单元405。发送单元409 将面向多地点分组生成单元405所生成的分组发送到最初的接收终端。
这里,以具体的数值的例子说明本实施方式中的计算发送速率的例子。
假设基于从发送终端101经由接收终端106和接收终端107到达接收终 端108的路径计测出的RTT为50ms(微秒)、发送终端101与接收终端106之 间的RTT为10ms、接收终端106与接收终端107之间的RTT为15ms、以及 与接收终端107与接收终端108之间的RTT为15ms。此时,基于从发送终 端101经由接收终端106和接收终端107到达接收终端108的路径计测出的 RTT即50ms为通过以往方式得出的计测结果。因此,在以往方式中,式(l) 中的分母的R为50ms,其他的p、s和t一RTO为固定值,所以计算出(l/50)x50, 从而可发送速率Xcal=lMps。
另一方面,在本实施方式中,采用上述的计测结果即10ms和15ms中最 大的一方的15ms作为式(l)中的分母的R。若将p、 s和t—RTO作为与以往同 样的固定的值,则其计算的结果为(l/15)x50,所以计算出可发送速率Xcal= 约3.33Mbps。也就是说,若采用本发明的方式,与以往方式相比,能够以三 倍以上的速度进行传输。
接着,表示能够以这样计算出的可发送的速率进行发送时满足与TCP的 兼容性的情形。
在本实施方式中,在通过从发送终端101经由接收终端106和接收终端 107到达接收终端108的路径进行分发时,为了满足与TCP的兼容性,只要 在以下三个路径满足与TCP的兼容性即可。(i) 从发送终端101到接收终端106的路径
(ii) 从接收终端106到接收终端107的路径
(iii) 从接收终端107到接收终端108的路径
如上所述,计算可发送的速率时所需的信息为RTT和损失事件概率。以 接收终端108所计测的损失为基础,基于以TFRC方式(RFC3448)规定的方式 计算损失事件概率。这里,RTT为基于路径(i)、 (ii)和(iii)观测出的RTT的最 大值。如上所述,RTT为式(1)的分母的元素,所以计算出的可发送的速率等 于或小于将路径(i)、 (ii)和(iii)的RTT适用于相同的式子的情况。将该值称为 "Xcalmin"。因此,若发送终端101利用Xcalmin进行数据的分发,在路径(i)、 (ii)和(iii)的任一路径上也能够利用等于或小于满足与TCP的兼容性的速率的 值进行数据的分发。也就是说,能够维持与TCP的兼容性。
如上所述,根据本实施方式,对SICC方式或者与SICC方式同样地利用 TFRC方式对多个终端分发数据的流量控制方式适用上述的RTT分割计测, 从而在通过SICC方式的发送终端计测与接收终端之间的RTT时,不会计算 大到不必要程度的RTT,其结果,不发生数据的传输的性能不必要地劣化的 问题。具体而言,将本发明的方式适用于对经由因特网向涉及多个国家的多 个终端发送会议的视频那样的场面下适用SICC方式的情况,或通过SICC方 式对涉及多个ISP或通信运营商(carrier)的状态下配置的多个终端进行流传输 那样的情况,从而能够在接收终端接收高质量、高清晰的图像。
另外,能够维持与TCP的兼容性,所以在进行了上述的适用时,也不会 发生使因特网或多个ISP通信运营商的网络陷入拥塞状态的情况。也就是说, 即使在同一个因特网或多个ISP通信运营商的网络上同时大量地进行同样的 视频的分发时,作为结果,也能够持续进行最佳的图像分发。
另外,在本实施方式中,将具有往返时间信息的分组从接收终端发送到 发送终端,但不用说,对本发明而言,即使通过其他的终端中继具有往返时 间信息的分组,将其发送到发送终端,也实现同样的效果。
另外,在本实施方式中,通过接收终端进行了往返时间的具体的计算, 但不用说,即使以接收终端报告的时戳等可获得往返时间的信息为基础,在 发送终端或其他的进行中继的接收终端计算往返时间,也实现同样的效果。
本发明的一个形态涉及的流量控制方法为通过多个接收终端的中继进行 分组的分发时的流量控制方法,该方法包括以下的步骤获得与应进行分组的分发的邻接的接收终端之间的、分组的往返时间;基于预先决定的基准, 从所获得的与邻接的接收终端之间的多个的分组往返时间中选择规定的往返
时间;以及根据所选择的往返时间计算分组的发送速率。
根据该结构,能够在分组的分发时,在邻接的接收终端之间分别计测用 于估计分组的可发送速率的分组往返时间。
另外,本发明的一个形态涉及的流量控制方法包括计算发送速率的步 骤,其为利用TFRC进行计算的步骤。
根据该结构,能够进行满足与TCP的兼容性的流量控制。
另外,本发明的一个形态涉及的流量控制方法包括选择M^定的往返时 间的步骤,从多个的分组往返时间中选择最大的往返时间。
根据该结构,能够利用瓶颈区间中的RTT估计可发送的速率。
另外,本发明的一个形态涉及的接收终端,通过中继向其他的接收终端 分发分组,该接收终端所采用的结构包括计测分组发送单元,发送分组, 该分组包含用于计测在接收终端与应进行分组的分发的邻接的其他的接收终 端之间的分组的往返时间的计测信息;接收单元,从邻接的其他的接收终端 接收对包含计测信息的分组的发回的分组;往返时间信息获得单元,基于接 收单元所接收的发回的分组,获得与分组的往返时间有关的时间信息;以及 往返时间信息发送单元,将包含与往返时间信息获得单元所获得的分组的往 返时间有关的时间信息的分组,发送到发送终端。
根据该结构,能够在分组的分发时,在邻接的接收终端之间分别计测用 于估计分组的可发送速率的往返时间,并将其结果发送到发送终端。
另外,本发明的一个形态涉及的接收终端所采用的结构还包括接收终 端识别符信息获得单元,从由外部发送来的、应分发分组的其他的接收终端 的列表中获得应分发的其他的接收终端的接收终端识别符,计测分组发送单 元将包含用于计测往返时间的计测信息的分组,发送到通过接收终端识别符 信息获得单元所获得的接收终端识别符确定的邻接的其他的接收终端。
根据该结构,能够计测通过由外部发送来的、应分发分组的邻接的其他 的接收终端的列表确定的接收终端之间的RTT。
另外,本发明的一个形态涉及的发送终端,通过中继向进行分组的分发 的接收终端分发分组,该发送终端所采用的结构包括接收单元,接收分组, 该分组包含与应分发分组的邻接的接收终端之间的分组的往返时间有关的信息;往返时间信息获得单元,从接收单元所接收的分组中获得往返时间;选 择单元,基于预先决定的基准,从往返时间信息获得单元所获得的多个往返 时间中选择规定的往返时间;以及计算单元,基于选择单元所选择的规定的 往返时间,计算数据分发的发送速率。
根据该结构,能够在计测用于估计分组的可发送速率的往返时间时,基 于在分组的分发时,在邻接的接收终端之间分别计测出的结果,计算分组分 发的发送速率。
另外,本发明的一个形态涉及的分组传送系统通过接收终端的中继将分 组从发送终端分发到多个接收终端,该系统所采用的结构包括接收终端和发 送终端,所述接收终端包括计测分组发送单元,发送分组,所述分组包含
测信息;接收终端接收单元,从邻接的其他的接收终端接收对包含计测信息 的分组的发回的分组;往返时间信息获得单元,基于接收终端接收单元所接 收的发回的分组,获得与分组的往返时间有关的时间信息;以及往返时间信
的时间信息的分组发送到发送终端,所述发送终端包括发送终端接收单元, 接收包含从往返时间信息发送单元发送的、与分组的往返时间有关的时间信 息的分组;往返时间获得单元,从发送终端接收单元所接收的分组中获得往 返时间;选择单元,基于预先决定的基准,从往返时间获得单元所获得的多 个往返时间中选择规定的往返时间;以及计算单元,基于选择单元所选择的 规定的往返时间,计算数据分发的发送速率。
根据该结构,能够在分组的分发时,在邻接的接收终端之间分开计测用 于估计分组的可发送速率的往返时间。
也就是说,在发送终端,在计测邻接的接收终端之间的RTT时,分开获 得与应进行分组的分发的邻接的接收终端之间的、分组的往返时间,从而不 会计算出较小的可发送速率,能够不破坏与TCP的兼容性而提高数据传输的 性能。
2006年10月2日提交的特愿第2006-270410号的日本专利申请中所包 含的说明书、附图及说明书摘要公开的内容全部引用于本申请。
工业实用性根据本发明的流量控制方法,在通过SICC方式的发送终端计测与接收 终端之间的往返时间时,不会计算出过大的值,其结果,能够不破坏与TCP 的兼容性而提高数据的传输的性能。因此,在将视频或语音等数据分发到多 个终端时,在对应于接收终端的能力或网络的状况进行流量控制的情况下很有用。
权利要求
1. 用于通过接收终端的中继进行分组的分发时的流量控制方法,包括以下的步骤对所述分发的路径上每个邻接的终端的组,获得分组在该组的终端之间往返时的往返时间;基于预先决定的基准,从所述获得的往返时间中选择任意一个往返时间;以及基于所述选择出的往返时间,计算分组的发送速率。
2. 如权利要求1所述的流量控制方法,在计算所述发送速率的步骤中,利用TCP友好速率控制计算所述发送速率。
3. 如权利要求1所述的流量控制方法,在选择所述往返时间的步骤中,从所获得的所述往返时间中选择最大的 往返时间。
4. 接收终端,将从发送终端发送来的分组中继到其他接收终端,包括 计测分组发送单元,将包含计测信息的分组发送到所述其他接收终端,所述计测信息用于计测分组在所述接收终端与所述其他接收终端之间往返时 的往返时间;接收单元,从所述其他接收终端接收对包含所述计测信息的分组发回的 分组;往返时间信息获得单元,基于所述接收单元所接收的所述发回的分组, 获得与分组的往返时间有关的时间信息;以及往返时间信息发送单元,将包含所述往返时间信息获得单元所获得的所 述时间信息的分组,发送到所述发送终端。
5. 如权利要求4所述的接收终端,还包括接收终端识别符信息获得单元,从记述了应中继由所述发送终端发送来 的分组的其他接收终端的接收终端识别符的列表中,获得所述接收终端识别 付,所述计测分组发送单元将包含所述计测信息的分组发送到由所述接收终 端识别符信息获得单元所获得的所述接收终端识别符确定的其他接收终端。
6. 发送终端,通过中继分组的接收终端进行分组的分发,包括 接收单元,对所述分发的路径上每个邻接的终端的组,接收包含了与分组在该组的终端之间往返时的往返时间有关的信息的分组;往返时间获得单元,从所述接收单元所接收的分组中获得所迷往返时间; 选择单元,基于预先决定的基准,从所述往返时间获得单元所获得的往返时间中选择任意一个往返时间;以及计算单元,基于所述选择单元所选择的往返时间,计算分组的发送速率。
7. 将从发送终端发送来的分组通过接收终端的中继进行分发的分组传送 系统,所述接收终端包括计测分组发送单元,将包含计测信息的分组发送到其他接收终端,所述 计测信息用于计测分组在所述接收终端与应中继从所述发送终端发送来的分 组的所述其他接收终端之间往返时的往返时间;接收终端接收单元,从所述其他接收终端接收对包含所述计测信息的分 组的发回的分组;往返时间信息获得单元,基于所述接收终端接收单元所接收的所述发回 的分组,获得与所述往返时间有关的时间信息;以及往返时间信息发送单元,将包含所述往返时间信息获得单元所获得的所 述时间信息的分组发送到所述发送终端,所述发送终端包括发送终端接收单元,从所述接收终端接收包含所述时间信息的分组; 往返时间获得单元,从所述发送终端接收单元所接收的分组中获得所述 往返时间;选择单元,基于预先决定的基准,从所述往返时间获得单元所获得的往 返时间中选择任意一个往返时间;以及计算单元,基于所述选择单元所选择的往返时间,计算分组的发送速率。
全文摘要
公开了即使在通过多个接收终端的中继传送分组的成串传送时,也不会计算出较大的分组的往返时间,不使性能上出现不必要以上的劣化的流量控制方法。该方法为通过多个接收终端的中继进行分组的分发时的流量控制方法,包括以下的步骤对所述分发的路径上每个邻接的终端的组,获得分组在该组的终端之间往返时的往返时间(S501~S517);基于预先决定的基准,从所述获得的往返时间中选择任意一个往返时间;以及根据所述选择出的往返时间,计算分组的发送速率(S518),由此计测各个接收终端之间的分组的往返时间,并基于该计测结果计算发送速率。由此,不会极大地计算分组的往返时间,能够提高数据传输的性能。
文档编号H04L12/56GK101523825SQ20078003688
公开日2009年9月2日 申请日期2007年8月29日 优先权日2006年10月2日
发明者小西一畅, 村本卫一, 米田孝弘 申请人:松下电器产业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1