JP2001016276A - 通信装置、通信方法、記憶媒体及び通信システム - Google Patents

通信装置、通信方法、記憶媒体及び通信システム

Info

Publication number
JP2001016276A
JP2001016276A JP11183325A JP18332599A JP2001016276A JP 2001016276 A JP2001016276 A JP 2001016276A JP 11183325 A JP11183325 A JP 11183325A JP 18332599 A JP18332599 A JP 18332599A JP 2001016276 A JP2001016276 A JP 2001016276A
Authority
JP
Japan
Prior art keywords
data
network
communication device
target value
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.)
Withdrawn
Application number
JP11183325A
Other languages
English (en)
Inventor
Tomohiko Matsuura
友彦 松浦
Hajime Futaki
一 二木
Hiroaki Sato
宏明 佐藤
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP11183325A priority Critical patent/JP2001016276A/ja
Publication of JP2001016276A publication Critical patent/JP2001016276A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Communication Control (AREA)
  • Telephonic Communication Services (AREA)

Abstract

(57)【要約】 【課題】 ネットワーク構成に応じたネットワークバッ
ファデータに関する情報を収集することにより、その時
点における最適なネットワークバッファデータ量の目標
値を自動的に設定する。 【解決手段】 送信先に向けて送信されてネットワーク
上にバッファされるデータ量を、所定の目標値にすべ
く、データ送信レートを調節しながらデータを送信する
通信装置であって、ネットワーク上に存在し、前記送信
先にむけて送信された前記データを中継する通信装置の
うちで、ネットワーク上にバッファされているデータ量
の算出の基準となる基準通信装置に応じて、ネットワー
ク上にバッファされるデータ量の目標値を設定する目標
値設定手段と、前記目標値に基づいて、データ送信レー
トを決定する決定手段とを有する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、インターネットな
どの通信回線を通じ、映像や音声などのデータを送信或
いは/及び受信する通信装置、通信方法、記憶媒体及び
通信システムに関するものである。
【0002】
【従来の技術】近年、動画や音声などの実時間データを
インターネットに代表されるようないわゆるネットワー
クを介して遠隔地に送信し、遠隔地においてそれらの動
画や音声などをライブで表示・再生可能なシステムが実
用化されている。
【0003】このような場合に、ネットワークで使用可
能な伝送容量を越えてデータを送出するとデータのロス
が起こるし、あまり送出レートを低くしすぎるとネット
ワークの仕様可能帯域を十分使いきれず、満足する送信
データの品質を得られないということになってしまい
う。例えば、通信回線の帯域を超えた送信レートで実時
間データを送信すると、(1)ネットワーク上のルータな
どのバッファに送信したデータが蓄積され伝送遅延が多
くなり、(2)その後それらのバッファが溢れるとパケッ
トロスが生じ、駒落ちなどの障害が発生する。
【0004】従って、通信回線の状態によって最適な送
信レートを決定するために、送信側での送信レート制御
が重要となる。
【0005】従来このような場合、送出レートを調整す
るために、ネットワークでのデータのロスを監視し、ロ
スが起こると送出レートを下げるという方法が取られて
いる。
【0006】しかし、ネットワークの送信側と受信側の
間に分散して存在するノードがそれぞれデータを溜める
ことのできるバッファを保有しており、過剰にデータを
送出してロスが生じる時には、ネットワーク上のバッフ
ァのいずれかが溢れている可能性が高い。従って、ロス
が生じてから送出レートを下げても、ネットワーク上の
どこかのバッファがいっぱいになっていることになり、
そのバッファに溜っているデータをネットワークが処理
できる時間分だけは、必ず伝送遅延が生じて、送信側か
らのデータが受信側に到着することになり、リアルタイ
ム性を重視するデータ通信にとっては非常に大きな問題
となる。
【0007】これに対応するため通信回線上の伝送遅延
時間を元に送信レートを制御する方式が提案されてい
る。
【0008】例えば、特願平10-111022号で提案されて
いる送信レート制御方式は、通信回線上をパケットが往
復するのにかかる時間RTT(Round Trip Time)で伝送遅延
時間を見積もって、この伝送遅延時間の変化からその時
点におけるネットワークバッファデータ量(送信側から
送信されいるが受信側で受信されていないデータの総
量)を推定し、推定ネットワークバッファデータ量があ
る一定の目標値に保たれるように送信レートを決定して
いる。
【0009】この目標値を最適に設定すれば、伝送遅延
時間を大きくしすぎることも無く、同時にネットワーク
バッファ量が空になって、通信品質を低下させることも
少なくすることが可能であり、ロスの発生を見るだけの
レート調整法に比べれば、非常に効果が期待できる。
【0010】しかし、この特願平10-111022号には、最
適な目標値について、ルータ等のネットワーク機器に搭
載されているバッファ量を超えない程度の値を指定する
ことが望ましいと開示してはいるものの、目標値の設定
に関しては通信経路上に存在するネットワーク機器の状
況を良く知ったユーザによる手動設定が必要であった。
これは、手間もかかるし、設定の間違いが発生する恐れ
もある。
【0011】また、インターネットなどのように通信路
の状況が時間的に大きく変化するようなネットワークに
おいては、一度設定したネットワークバッファデータ量
の目標値が長時間にわたり使用可能であるという保証は
ない。
【0012】従って、通信経路に即した最適な目標値の
設定については、改善の余地が有った。
【0013】
【発明が解決しようとする課題】上述のように、従来の
伝送レート調整法は、満足の行く結果を得られ得るもの
ではなかった。
【0014】このような伝送レートに関する課題は、実
際はネットワーク上の多くの通信機器のデータ伝送能力
に多く依存しているはずであるのに、これについては考
慮しておらず、パケットロスやRTTといったネットワー
クのデータ伝送状況の情報だけを見ていたので、ネット
ワークを構成する装置に応じた伝送レートを設定できな
かったからであると言える。
【0015】そこで本発明は、ネットワーク構成に応じ
たネットワークバッファデータに関する情報を収集する
ことにより、その時点における最適なネットワークバッ
ファデータ量の目標値を自動的に設定する通信装置、通
信方法、記憶媒体及び通信システムを提供することを目
的とする。
【0016】
【課題を解決するための手段】上述の目的を達成するた
め、本発明の通信装置は、送信先に向けて送信されてネ
ットワーク上にバッファされるデータ量を、所定の目標
値にすべく、データ送信レートを調節しながらデータを
送信する通信装置であって、ネットワーク上に存在し、
前記送信先にむけて送信された前記データを中継する通
信装置のうちで、ネットワーク上にバッファされている
データ量の算出の基準となる基準通信装置に応じて、ネ
ットワーク上にバッファされるデータ量の目標値を設定
する目標値設定手段と、前記目標値に基づいて、データ
送信レートを決定する決定手段とを有することを特徴と
する。
【0017】
【発明の実施の形態】〔実施例1〕本実施例では、前述
の目標値を自動的に定めるにあたり、インターネットな
どのネットワークに接続される受信端末の多くが、狭帯
域通信路(アナログ電話回線、ISDNなど)を使用して接
続されているという事実に基づいて、狭帯域通信路のも
う一方の端に存在するルータ、つまりネットワーク上で
データを中継する通信装置のうち、もっとも送信先に近
いルータに帯域的な意味でのボトルネックが存在すると
仮定している。
【0018】そして送信側端末が、ネットワークバッフ
ァ量の算出の基準通信装置としてこのルータに関する情
報を収集することにより、その時点における最適なネッ
トワークバッファデータ量の目標値を自動的に設定す
る。
【0019】本実施例では、1台のビデオカメラにより
得られるビデオ信号をリアルタイムでキャプチャできる
撮影システムにおいて、キャプチャされた映像をネット
ワークを介して遠隔地に発信するものを用いているが、
そのシステム構成は、従来のものと特に変わらず、従来
技術の説明で示したものとほぼ同様であるが、送信側端
末により能動的に収集された、ボトルネックとなってい
るルータに関する情報を使用して、ネットワークバッフ
ァデータ量の目標値を自動設定する機能が追加されてい
る。
【0020】図8に、カメラサーバで撮影した画像を、
ネットワークを介して送信側端末に送信するシステムの
概略構成図の一例を示す。
【0021】この図において、810はカメラサーバで
あって、カメラ8100で撮影した映像データをネット
ワーク8300を介してクライアント820に転送す
る。
【0022】さて、カメラサーバ810、クライアント
820のハード的な違いは、カメラ、キャプチャ部を備
えているか否かの違いであり、双方とも例えばパーソナ
ルコンピュータで実現できるものである。つまり、符号
8103〜8109と8203〜8209は実質的に同
じ構成であり、それぞれが汎用のコンピュータ(例えば
パーソナルコンピュータで実現できるものである)。
【0023】一方、ソフトウェア的には、カメラサーバ
810には、キャプチャした映像データをクライアント
に転送するためのソフトウェア(外部記憶装置8106
に格納され、RAM8104にロードし実行される)が
動作しており、クライアント820では、映像データを
受信しそれを表示するソフトウェア(外部記憶装置82
06に格納され、RAM8304にロードし実行され
る)が動作する点で異なる。
【0024】ただし、ここでは便宜的に、カメラサーバ
とクライアントに分けて示しただけであり、双方にビデ
オキャプチャ機能を付加した場合には、双方がカメラサ
ーバ及びクライアントとして機能することができるもの
である。
【0025】カメラサーバ810からクライアント82
0に向けてデータを転送する際に、以下に本実施例の構
成及び処理手順を示す。
【0026】図1は本実施例の構成を示すブロック図で
あり、送信側端末1-1が送信するデータをネットワーク1
-3、ルータ1-4を通して受信側端末1-2でデータを受信す
る場合における各装置の接続関係とその構成を示してい
る。ここでネットワーク1-3とは組織内で運営されてい
るLANから、いわゆるインターネットのような不特定多
数のネットワークが結合したような大規模なものまで含
み、その形態で限定されるものではない。以下に図1の
各端末とその動作について説明する。
【0027】送信側端末1-1はデータ生成部1-11におい
てデータを生成する。具体的にデータとしては例えばビ
デオカメラでキャプチャされた映像データなどが考えら
れる。データが映像の場合には、データ生成部1-11は、
映像の取り込みや圧縮を行うことになる。ただし、ここ
でデータの内容としては映像に限るものではない。
【0028】データ生成部1-11で生成されたデータはデ
ータ送信部1-12に送られる。データ送信部1-12が送られ
てきたデータを適当な大きさに分割し、分割されたデー
タ毎にシーケンス番号及びデータを送信する時刻の情報
を付加してネットワーク1-3上に送出する。この時、デ
ータ送信部1-12は、分割するデータの大きさや分割した
データを送り出す間隔を調整することで、送信レートを
送信レート変更部1-13によって指定されたレートに調整
する。
【0029】受信レポート受信部1-16は、受信端末1-2
から送信されてくる受信レポートを受信し、そのレポー
トの内容を受信レート計算部1-14及びネットワークバッ
ファデータ量計算部1-15に送る。
【0030】受信レート計算部1-14は、受信レポートに
含まれる受信した最大シーケンス番号及びパケット紛失
率から受信側端末の受信レートを計算し、その受信レー
トを送信レート変更部1-13に送る。
【0031】ネットワークバッファデータ量計算部1-15
は、データの往復時間を計算し、計算された往復時間に
基づいてネットワークバッファデータ量を求め、そのネ
ットワークバッファデータ量を送信レート変更部1-13に
送る。
【0032】PINGパケット送信部1-17は、ネットワ
ーク1-3に接続されており、かつ、受信側端末1-2と狭帯
域回線で結ばれたルータ1-4に対してPINGパケット
を定期的に送信する。ここでPINGパケットとは、他
のネットワーク機器が到達可能であるかどうかテストす
るプログラムが送信するパケットであり、TCP/IPプロト
コルによる通信手続きのひとつとして広く知られてい
る。このPINGパケットにより、到達可能かどうかに
加えて、対象ネットワーク機器までの往復時間が測定で
きる。
【0033】PING応答受信部1-18は、前述のルータ
1-4から返信されてくるPING応答を受信し、その結
果得られる、ルータ1-4までのパケット往復時間に関す
る情報を送信レート変更部1-13に送る。
【0034】送信レート変更部1-13は、受信レート計算
部1-14が計算した受信側端末の受信レート、ネットワー
クバッファ量計算部1-15が計算したネットワークバッフ
ァデータ量、PING応答受信部から得られる送信側端
末1-1からルータ1-4までのパケット往復時間に関する情
報を基に送信レートを決定し、データ送信部1-12に送信
レートを指定する。
【0035】一方、受信側端末1-2では、ネットワーク1
-3を通して送信されてきたデータ(ここでは映像データ
+シーケンス番号+送信時刻情報)を、データ受信部1-
22で受信する。受信されたデータはデータ処理部1-21に
送られ処理される。例えばデータが映像の場合には映像
を表示するための処理(複合化及び表示処理など)がデ
ータ処理部1-21で行われる。
【0036】また、データ受信部1-22で受け取ったデー
タのシーケンス番号、データを受け取った時刻、受け取
ったデータ量などについての情報が計測され定期的に受
信レポート生成部1-23に送られる。受信レポート生成部
1-23はその情報を基に受信レポートを生成し、受信レポ
ート送信部1-24に送る。
【0037】受信レポート送信部1-24は、ルータ1-4及
びネットワーク1-3を介して送信側端末1-1の受信レポー
ト受信部1-16へ受信レポートを送信する。
【0038】次に図2において送信側端末の動作につい
て説明する。
【0039】まず図2(a)でデータ送信時の説明をす
る。
【0040】データの送信指示をCPUから受けると、ま
ず、その時に装置が保持している送信レートを得る(S
210)。
【0041】次に、この送信レートに基づいて、送信す
べきデータが生成される(S211)。例えば映像を送信す
る場合には映像のキャプチャ、圧縮などが行われる。ま
た、そのデータが適当な大きさのデータ(パケット)に
分割される。送信データを構成する1つのパケットのフ
ォーマット例を図4に示す。1パケットのデータには、
送信シーケンス番号とデータ送信時刻、及びパケットサ
イズと送信すべきデータ(ここでは映像データ)で構成
される。
【0042】次に、このデータがネットワークに送出さ
れる(ステップS212)。この時、このパケットの大きさ
と送出間隔で送信レートが決められることになる。つま
り、このステップS212では、指定された送信レートでネ
ットワークに送出されている。送信レートの決定の仕方
については図2(b)を用いて後に説明する。
【0043】S211で生成したデータの送信が終る
と、すべてのデータを送信したか否かを調べ(S21
3)、まだ、送信すべきデータが残っているときはS21
0に戻って、データの送信を繰り返す。すべてのデータ
が送信されていれば、送信を終了する(S214)。な
お、データ送信時の動作は、これに限るものではなく、
例えば、前述のパケットの分割を行った後に、送信レー
トを取得し、これに基づいて、パケットの送出のタイミ
ングを調整するようにしても構わない。
【0044】次に図2(b)のフローチャートを用い
て、送信レートの決定方法を説明する。なお、この図2
(b)のフローチャートは、図2(a)に示すフローチャ
ートと並行して動作する、いわゆるマルチタスク処理の
うちの1つのタスク処理である。
【0045】送信側端末は上記のS212のようにデー
タを送信すると並行して、受信側端末1-2からの応答で
ある受信レポートが報告されるのを待っている(ステッ
プS220)。受信レポートのフォーマット例を図5に示
す。本実施例の受信レポートには、図示の如く、受信し
た最大シーケンス番号(受信レポートを作成した時点で
受信しているデータのシーケンス番号の中で最大のも
の)、受信時刻、受信レポート送信時刻、パケット紛失
率が含まれているものとする。
【0046】さらに、送信側端末は上記のようにデータ
を送信したり、受信レポートの到着を待ったりするのと
同時に、受信側端末1-2と狭帯域回線で接続されたネッ
トワーク1-3上のルータ1-4に対して、定期的にPING
パケットを送信しており、その応答パケットが到着する
のを待っている(ステップS220)。周知のことである
が、PINGパケットにより送信側端末1-1からルータ1
-4までのパケット往復時間を測定することができる。
【0047】送信側端末が受信レポートを受信すると、
その応答が受信レポートであるか、PING応答であるかを
判別し、受信レポートの場合はステップS222へ、PING応
答の場合はS223へうつる。S222においては、受信レポー
トの情報から、受信側端末の受信レートを計算すると同
時に、ネットワークバッファデータ量を計算する。ステ
ップS222におけるネットワークバッファデータ量の計算
に関しては、たとえば以下のような計算を行う。
【0048】実施形態における送信側端末(映像配信サ
ービスを行なう端末)では、PINGパケット往復時間
のうち、常に最小値を基準往復時間RTTbaseとして保
持する。基準往復時間RTTbaseは、データ送受信の開
始後では、最初の受信レポートを受け取った際の往復時
間RTTcurがセットされる。
【0049】つまり、送信開始した段階では、 RTTbase=RTTcur となり、その後受信レポートを受信する度に、RTTcu
rを求めるが、その都度求められる往復時間RTTcurと
RTTbassとを比較し、RTTcurがRTTbaseより小
さい場合にRTTbaseをRTTcurで更新する。
【0050】RTTbase←RTTcur (IF RTTcur
<RTTbase)
【0051】このパケット往復時間の基準値RTTbase
と最新の計測された往復時間RTTcurとの差をもと
に、受信レートを用いてネットワークバッファデータ量
を求める。
【0052】実際には、受信レポートに含まれる受信レ
ート(bits/sec)をRrnとすると、Bc=Rrn *(RT
Tcur−RTTbase)のようにして、現在のネットワー
クバッファデータ量Bcを推定することができる。
【0053】なお、ステップS222において受信レートR
nを計算する方法は幾つか考えられるが、例えば、1
個のパケット平均サイズP、パケット紛失率L、受信し
た最大シーケンス番号Sn、前回の受信レポートで報告
された最大シーケンス番号Sn-1、受信レポートを受信
した時刻Tn、前回の受信レポートを受信した時刻Tn-1
とすると、 受信レートRrn=P×(1−L)×(Sn−Sn-1)/
(Tn−Tn-1) として求めることができる。
【0054】一方、送信側端末がPING応答を受信す
ると、送信側端末1-1からルータ1-4までのパケット往復
時間RTTcurを知ることができ、これまで過去に受け
取った全てのPING応答から得られたそれぞれのRT
Tcurを保存しておけば、RTTcurのばらつきの最大値
(これをJRTTと表記する)を測定することができる
(ステップS223)。
【0055】ステップS222で計算された受信レートRr
nとネットワークバッファデータ量Bc、ステップS223
で計算されたルータ1-4までのRTTのばらつきの最大
値JR TTに基づいて送信レートを決定する(ステップS22
4)。
【0056】本実施例では、以下のように、Bcをある
目標値(Bdとする)に近づくように送信レートRsn
を決定するように処理がなされている。
【0057】Rsn=Rrn+C*(Bd−Bc) Rrnが現在の送信レートで、Rsnが新しく決定される
送信レートである。Cは適当な定数である。この処理に
よって決定された送信レートRsnがデータ送信部に伝
えられ、データ送信のステップ(ステップS210)の
送信レートを指定することになる。
【0058】以下には、Bdを自動設定するための手順
について説明する。
【0059】はじめに、Bdを設定するのに適当である
と考えられる設定範囲について説明する。設定範囲の上
限は、もちろんルータ1-4に搭載されているバッファ量
である。この上限を超えてBdを設定すると、ルータの
バッファ溢れが起こりパケットロスのなどの障害が発生
する。この上限値に関しては、パケットロスの発生や受
信レポートが届かなくなるなどの現象を監視することに
より検出可能である。より具体的には、処理S221により
報告される受信レポートにより、パケット紛失率がわか
るので、このパケット紛失率がある適当に定めた閾値P
Lthを超えた場合は、現在設定されているBdが上限
を超えていると判断できる。また処理S222において一定
時間受信レポートが到着しない場合も、同様にBdが上
限を超えていると判断できる。
【0060】つぎに設定範囲の下限であるが、これはル
ータ1-4に搭載されているバッファ内において、受信側
端末1-2に送るデータが無くならないことが条件となり
設定される。ネットワーク1-3の不安定な伝送のため
に、送信側端末1-1が受信側端末1-2のために送信したデ
ータは、到着が期待されている時間から最大JRTT遅れ
てルータ1-4に到着する。そのため、少なくともルータ
が受信側端末にJRTT時間の間に送信するデータ量だけ
は、ルータに搭載されているバッファに存在していなけ
ればならない。即ち、 Bdの下限 = JRTT ×Rrn である。
【0061】Bdを設定するのに適当であると考えられ
る上記設定範囲の間では、どの値をBdとして設定した
としても、スループットの性能面で大きな違いはない。
ただし、Bdが上記上限に近づくにつれてデータの再生
時刻に遅延が生じ、ライブ映像という意味においては性
能が低下する。これはルータのバッファ内に送信するデ
ータが無くならないことを保証する安全マージンをどれ
だけ考慮するかということと、ライブ映像の再生時刻の
遅延をどれだけ許容するかということのトレードオフで
あり、唯一の最適値は存在しない。しかし自動設定をす
るという目的を達成するためには、例えば、 Bd = (上限 + 下限)/ 2 のような安易な方法で設定しても十分である。
【0062】もし、たとえ伝送遅延時間が大きくなった
り、駒落ちしたりしてもいいからなるべく多くのデータ
を送りたいような時などは、上限やそれに近い値を目標
値としてもよいし、多くの送信先に送るデータ通信帯域
を確保するような場合のように、1つの送信先に対する
バッファ量をなるべく小さくしたいときは、下限やそれ
に近い値を目標値としてもよい。
【0063】もちろん本発明はこれに限定されるもので
はなく、本発明の本質がこの部分でないことは明らかで
ある。
【0064】以上の処理によりステップS224で計算され
た送信レートRsnは、データ送信部1-12に伝えられ、
ステップS210において送信レートを指定することにな
る。
【0065】次に、実施形態における受信側端末の動作
処理を図3のフローチャートに従って説明する。なお、
ここではデータの受信に応じて常に受信レポートを作成
する場合で説明するが、受信レポート作成及び送信のタ
イミングは、これに限るものではなく、例えば定期的に
送信するようにしてもよいし、送信側からのレポート生
成指示のみに従うようにしてもよいことは明らかであ
る。
【0066】ネットワークを介して受信したデータをデ
ータ受信部で受信する(ステップS301)。これに応じ
て、映像表示など、送信されてきたデータの処理を開始
する(ステップS302)。例えば、映像データが送られて
きた場合、映像の表示処理に受信データを渡す。また、
データを受信した時刻、データ量、受信シーケンス番号
の情報は、受信レポート生成部に送られる。そして、こ
のデータの受信に応じて、受信レポートが生成される
(ステップS303)。受信レポートは、受信した最大シー
ケンス番号、データ受信時刻、パケット紛失率、受信レ
ポート送信時刻の情報を含んで生成される。生成された
受信レポートはネットワークを通して、送信側端末の受
信レポート受信部へと送信され(ステップS304)、再び
データ受信待機状態になる。なお受信レポートのフォー
マット例は図5に示した通りである。
【0067】以上のようなステップを繰り返し、送信側
端末と受信側端末間でデータの送受信を行いつつ、受信
側端末が受信レポートを定期的に送信し、送信側端末に
報告する。一方、送信側端末では、定期的にPINGパ
ケットをルータ1-4に送信し、ネットワークの現在の状
況に関する情報を能動的に収集しながら、受信レポート
の情報を基にネットワークバッファデータ量を計算して
送信レートを決定する。
【0068】〔実施例2〕実施例1では、狭帯域通信路
の送信端末側の端に存在するルータに帯域的な意味での
ボトルネックが存在すると仮定したが、本発明はこれに
限定されるものではない。
【0069】本実施例では、送信端末からインターネッ
トなどのネットワークを介して受信端末へ至る通信路上
のどこかに存在する(と仮定した)ボトルネックとなる
ルータを検出し、検出されたルータをPINGパケット
による情報収集の対象として、実施例1と同様の処理に
より、その時点における最適なネットワークバッファデ
ータ量の目標値を自動的に設定する。
【0070】ボトルネックとなるルータの検出に関する
部分以外の処理に関しては、実施例1と同様であるので
説明を省略し、ここでは図7を用いてボトルネック検出
のみ説明を行う。
【0071】ボトルネックの検出には、目標ネットワー
ク機器までの経路を探索し、その結果を報告するtracer
outeと呼ばれるプログラムを使用する。tracerouteはTC
P/IPプロトコルによる通信手続きのひとつとして広く知
られている。
【0072】送信側端末7-1が受信側端末7-3に向けてtr
acerouteを実行すると、tracerouteはネットワーク7-2
を探索し、その結果として受信側端末までの経路を報告
する。ここで報告される結果により、例えば以下のよう
な経路を通ったことがわかったとする。
【0073】1.送信側端末 2.ルータA 3.ルータD 4.ルータI 5.ルータJ 6.受信側端末
【0074】次に、実施例1でも使用したPINGパケ
ットを、上記各ルータ及び受信側端末に対して実行し、
それぞれのルータ及び受信側端末までの往復時間を測定
する。得られる結果は例えば以下のようになる。
【0075】・ルータA: 10msec ・ルータD: 18msec ・ルータI: 320msec ・ルータJ: 337msec ・受信側端末: 360msec
【0076】この結果から、各ネットワーク機器間の伝
送時間が推定できるため、最も時間のかかっている部
分、つまりデータ転送レートがもっとも低くなっている
ボトルネックを検出することができる。例えば上記結果
によると、ルータD・ルータI間が302msecであり最も
時間がかかっており、ルータIがボトルネックになって
いる。
【0077】以上の様にして検出したルータについて、
実施例1と同様の処理を行うことによって、その時点に
おける最適なネットワークバッファデータ量の目標値を
自動的に設定することができる。
【0078】〔実施例3〕本発明は、種々のネットワー
ク、例えばIPプロトコルに基づくインターネットやL
ANにおいて実施することができる。96年1月にRF
C1889として標準化されたRTP(Real Time Prot
ocol)において本発明を実施する方法について以下に説
明する。尚、RTPはリアルタイムアプリケーション向
けのプロトコルであり、トランスポート層のTCPの代
わりに使用する。かかるRTPで決められた受信者報告
パケットの例を図6に示す。
【0079】ここで、図6のRTCP受信者報告パケッ
トから、前述の受信レートを求める方法を説明する。受
信レートは、RFC1889には規定されておらず、そ
の求め方は幾つか考えられる。RTCP受信者報告パケ
ットには、パケット紛失率L、受信した最大シーケンス
番号Snが含まれていることから、実施例1と同様に、 受信レートRrn=P×(1−L)×(Sn−Sn-1)/
(Tn−Tn-1) として求めることができる。
【0080】或いは 受信レートRrn=(時刻(n-1)から時刻nの間に送り出
したパケットの総サイズ)×(1−L)/(Tn
n-1) としてもよいし、他の方法によっても構わない。
【0081】以上の通り、本実施形態では、RTPを活
用することも可能になるのは明らかである。
【0082】なお、送信側端末及び受信側端末での基本
的な処理の流れは、上記の説明から容易に理解できるで
あろうし、図2及び図3に示したものと実質的に変わら
ないので、ここでの説明は省略する。
【0083】また、先に説明したように、パケットサイ
ズを変更することによっても、送信レートを変更するこ
とができる。パケットに含まれるアドレス情報などの制
御に対する、本来のデータ量の比率が変わるからであ
る。
【0084】本実施形態においては二者間通信を例にし
て説明したが、本発明は二者間通信に限定されるもので
はなく三者以上の通信であってもよい。
【0085】本発明は複数の機器(たとえばホストコン
ピュータ、インタフェース機器、リーダ、プリンタ等)
から構成されるシステムに適用しても、または一つの機
器(たとえば複写機、ファクシミリ装置)からなる装置
に適用してもよい。
【0086】なお、本発明は、上記の実施形態を実現す
るための装置及び方法のみに限定されるものではなく、
上記システムまたは装置内のコンピュータ(CPUある
いはMPU)に、上記実施形態を実現するためのソフト
ウェアのプログラムコードを供給し、このプログラムコ
ードに従って上記システムあるいは装置のコンピュータ
が上記各種デバイスを動作させることにより上記実施形
態を実現する場合も本発明の範疇に含まれる。
【0087】またこの場合、前期ソフトウェアのプログ
ラムコード自体が上記実施形態の機能を実現することに
なり、そのプログラムコード自体、及びそのプログラム
コードをコンピュータに供給するための手段、具体的に
は上記プログラムコードを格納した記憶媒体は本発明の
範疇に含まれる。
【0088】このようなプログラムコードを格納する記
憶媒体としては、例えば、フロッピーディスク、ハード
ディスク、光ディスク、光磁気ディスク、CD−RO
M、磁気テープ、不揮発性のメモリカード、ROMなど
を用いることができる。
【0089】また、上記コンピュータが、供給されたプ
ログラムコードのみに従って各種デバイスを制御するこ
とにより、上記実施形態の機能が実現されるだけではな
く、上記プログラムコードがコンピュータ上で稼動して
いるOS(オペレーティングシステム)、あるいは他の
アプリケーションソフトなどと共同して上記実施形態が
実現される場合にもかかるプログラムコードは発明の範
疇に含まれる。
【0090】さらに、この供給されたプログラムコード
が、コンピュータの機能拡張ボードやコンピュータに接
続された機能拡張ユニットに備わるメモリに格納された
後、そのプログラムコードの指示に基づいてその機能拡
張ボードや機能拡張ユニットに備わるCPUなどが実際
の処理の一部または全部を行い、その処理によって上記
実施形態が実現される場合も本発明の範疇に含まれる。
【0091】なお、本発明はインターネットなどの大規
模なネットワークに適用すると効果が大きい。
【0092】また、実施形態では送信側端末として、カ
メラサーバを例にして説明したが、これによっても本発
明が限定されるものではない。例えば、外部記憶装置に
記憶されている動画ファイルを再生して受信側端末にサ
ービスする場合にも適用できよう。
【0093】
【発明の効果】以上のように、本発明によれば、ネット
ワーク上にバッファされているデータ量の算出の基準と
なる基準通信装置に応じて、ネットワーク上にバッファ
されるデータ量の目標値を設定する目標値設定手段と、
前記目標値に基づいて、データ送信レートを決定する決
定手段とを有するので、その時点における最適なネット
ワークバッファデータ量の目標値が自動的に設定され、
適切なデータ通信を行うことができる。
【0094】また、送信先との間のデータ転送時間と、
送信先が受信したデータの受信レートとをもちいてネッ
トワーク上にバッファされているデータ量を算出するネ
ットワークバッファデータ量算出しているので、リアル
タイムにまた正確にネットワークバッファ量が求まる。
【0095】また、インターネットなどのネットワーク
に接続される受信端末の多くが、狭帯域通信路(アナロ
グ電話回線、ISDNなど)を使用して接続されているよう
な状況では、ネットワーク上の通信装置のうち、送信先
に最も近い通信装置を基準通信装置とすることが有効で
ある。
【0096】また、基準通信装置を、送信されたデータ
を中継した通信装置を特定する情報と、前記情報により
特定された各通信装置までの間のデータ転送時間とに基
づいて決めることによって、いかなるネットワーク上の
通信装置の構成であっても、適切な基準通信装置を設定
することができる。
【0097】またネットワークバッファ量の目標値を、
前記基準通信装置の蓄積可能なデータ量以下で、かつ
(データ転送時間のばらつきの最大値)×(前記受信レ
ート)以上の値に設定すると、ネットワークバッファデ
ータが溢れたり、空になることを効果的に防ぐことが出
来る。
【0098】また、ネットワークバッファデータ量を目
標値に近づくように、従前の転送レートを補正する転送
レート補正手段を含むことにより、常に適切な転送レー
トを維持することができる。
【図面の簡単な説明】
【図1】本発明の実施例の概略構成ブロック図
【図2】送信側端末のフローチャート
【図3】受信側端末のフローチャート
【図4】送信データのフォーマット例を示す図
【図5】受信レポートのフォーマット例を示す図
【図6】RTCP受信者報告パケットのフォーマット
【図7】tracerouteによるボトルネック検出を示す図
【図8】カメラサーバとクライアントとのデータ伝送シ
ステムの概略構成図
───────────────────────────────────────────────────── フロントページの続き (72)発明者 佐藤 宏明 東京都大田区下丸子3丁目30番2号キヤノ ン株式会社内 Fターム(参考) 5K034 AA19 CC01 DD01 EE11 FF02 FF11 HH01 HH02 HH08 HH11 HH14 HH15 HH50 MM08 MM16 MM39 NN12 NN16 NN22 NN26 5K101 KK20 LL02 NN22 SS07 TT02

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】 送信先に向けて送信されてネットワーク
    上にバッファされるデータ量を、所定の目標値にすべ
    く、データ送信レートを調節しながらデータを送信する
    通信装置であって、 ネットワーク上に存在し、前記送信先にむけて送信され
    た前記データを中継する通信装置のうちで、ネットワー
    ク上にバッファされているデータ量の算出の基準となる
    基準通信装置に応じて、ネットワーク上にバッファされ
    るデータ量の目標値を設定する目標値設定手段と、 前記目標値に基づいて、データ送信レートを決定する決
    定手段と、 を有することを特徴とする通信装置。
  2. 【請求項2】 さらに前記通信装置は、前記送信先との
    間のデータ転送時間と、前記送信先が受信したデータの
    受信レートとに基づいてネットワーク上にバッファされ
    ているデータ量を算出するネットワークバッファデータ
    量算出手段を有し、 前記決定手段は、前記目標値と前記ネットワークバッフ
    ァデータ量算出手段による算出結果とに基づいて、前記
    データ送信レートを決定することを特徴とする請求項1
    に記載の通信装置。
  3. 【請求項3】 前記基準通信装置は、前記ネットワーク
    上の通信装置のうち、前記送信先に最も近い通信装置で
    あることを特徴とする請求項1乃至2のいずれかに記載の
    通信装置。
  4. 【請求項4】 前記基準通信装置は、送信されたデータ
    を中継した通信装置を特定する情報と、前記情報により
    特定された各通信装置までの間のデータ転送時間とに基
    づいて決められることを特徴とする請求項1乃至2のいず
    れかに記載の通信装置。
  5. 【請求項5】 前記基準通信装置は、前記送信先にむけ
    て送信された前記データを中継する通信装置のうちで、
    データ転送レートのもっとも低い通信装置であることを
    特徴とする請求項4に記載の通信装置。
  6. 【請求項6】 前記目標値設定手段は、前記基準通信装
    置との間の前記データ転送時間のばらつきの最大値を計
    測し、前記目標値を、前記基準通信装置の蓄積可能なデ
    ータ量以下で、かつ(データ転送時間のばらつきの最大
    値)×(前記受信レート)以上の値に設定することを特
    徴とする請求項1乃至5のいずれかに記載の通信装置。
  7. 【請求項7】 前記通信装置は、データを送信する単位
    毎に、その単位固有のシーケンス番号及び送信時刻情報
    を付加するとともに、少なくとも前記シーケンス番号
    と、前記送信時刻情報と、当該データを受信してから送
    信先の装置が要した処理時間情報と、受信データの紛失
    率とを含む受信レポートを返信させるための情報を送信
    し、さらに、ネットワークバッファデータ量算出手段
    は、前記受信レポートから前記送信先との間のデータ転
    送時間と、前記受信レートを算出することを特徴とする
    請求項2乃至6のいずれかに記載の通信装置。
  8. 【請求項8】 前記決定手段は、ネットワークバッファ
    データ量を目標値に近づくように、前記データ送信レー
    トを補正するデータ送信レート補正手段を含むことを特
    徴とする請求項1乃至7のいずれかに記載の通信装置。
  9. 【請求項9】 前記ネットワークはRFC1889で標
    準化されたリアルタイムプロトコルに適合したネットワ
    ークであることを特徴とする請求項1乃至8のいずれか
    に記載の通信装置。
  10. 【請求項10】 送信先に向けて送信されてネットワー
    ク上にバッファされるデータ量を、所定の目標値にすべ
    く、データ送信レートを調節しながらデータを送信する
    通信方法であって、ネットワーク上に存在し、前記送信
    先にむけて送信された前記データを中継する通信装置の
    うちで、ネットワーク上にバッファされているデータ量
    の算出の基準となる基準通信装置に応じて、ネットワー
    ク上にバッファされるデータ量の目標値を設定する目標
    値設定工程と、前記目標値に基づいて、データ送信レー
    トを決定する決定工程と、を有することを特徴とする通
    信方法。
  11. 【請求項11】 さらに前記通信方法は、前記送信先と
    の間のデータ転送時間と、前記送信先が受信したデータ
    の受信レートとに基づいてネットワーク上にバッファさ
    れているデータ量を算出するネットワークバッファデー
    タ量算出工程を有し、前記決定工程は、前記目標値と前
    記ネットワークバッファデータ量算出手段による算出結
    果とに基づいて、前記データ送信レートを決定すること
    を特徴とする請求項10に記載の通信方法。
  12. 【請求項12】 前記基準通信装置は、前記ネットワー
    ク上の通信装置のうち、前記送信先に最も近い通信装置
    であることを特徴とする請求項10乃至11のいずれか
    に記載の通信方法。
  13. 【請求項13】 前記基準通信装置は、送信されたデー
    タを中継した通信装置を特定する情報と、前記情報によ
    り特定された各通信装置までの間のデータ転送時間とに
    基づいて決められることを特徴とする請求項10乃至1
    1のいずれかに記載の通信方法。
  14. 【請求項14】 前記基準通信装置は、前記送信先にむ
    けて送信された前記データを中継する通信装置のうち
    で、データ転送レートのもっとも低い通信装置であるこ
    とを特徴とする請求項13に記載の通信方法。
  15. 【請求項15】 前記目標値設定工程は、前記基準通信
    装置との間の前記データ転送時間のばらつきの最大値を
    計測し、前記目標値を、前記基準通信装置の蓄積可能な
    データ量以下で、かつ(データ転送時間のばらつきの最
    大値)×(前記受信レート)以上とすることを特徴とす
    る請求項10乃至14に記載の通信方法。
  16. 【請求項16】 前記通信方法は、データを送信する単
    位毎に、その単位固有のシーケンス番号及び送信時刻情
    報を付加するとともに、少なくとも前記シーケンス番号
    と、前記送信時刻情報と、当該データを受信してから送
    信先の装置が要した処理時間情報と、受信データの紛失
    率とを含む受信レポートを返信させるための情報を送信
    し、さらに、ネットワークバッファデータ量算出工程
    は、前記受信レポートから、前記送信先との間のデータ
    転送時間と、前記受信レートを算出することを特徴とす
    る請求項11乃至15のいずれかに記載の通信方法。
  17. 【請求項17】 前記決定工程は、ネットワークバッフ
    ァデータ量を目標値に近づくように、前記データ送信レ
    ートを補正するデータ送信レート補正工程を含むことを
    特徴とする請求項10乃至16のいずれかに記載の通信
    方法。
  18. 【請求項18】 前記ネットワークはRFC1889で
    標準化されたリアルタイムプロトコルに適合したネット
    ワークであることを特徴とする請求項10乃至17のい
    ずれかに記載の通信方法。
  19. 【請求項19】 コンピュータが読み込み実行すること
    で、送信先に向けて送信されてネットワーク上にバッフ
    ァされるデータ量を、所定の目標値にすべく、データ送
    信レートを調節しながらデータを送信する通信装置とし
    て機能させるプログラムを記憶した記憶媒体であって、 ネットワーク上に存在し、前記送信先にむけて送信され
    た前記データを中継する通信装置のうちで、ネットワー
    ク上にバッファされているデータ量の算出の基準となる
    基準通信装置に応じて、ネットワーク上にバッファされ
    るデータ量の目標値を設定する目標値設定工程と、 前記目標値に基づいて、データ送信レートを決定する決
    定工程と、 を機能させるプログラムを記憶した記憶媒体。
  20. 【請求項20】 送信先に向けて送信されてネットワー
    ク上にバッファされるデータ量を、所定の目標値にすべ
    く、データ送信レートを調節しながらデータを送信する
    送信装置、及び前記データを受信する受信装置で構成さ
    れる通信システムであって、 前記送信装置は、 ネットワーク上に存在し、前記送信先に向けて送信され
    た前記データを中継する通信装置のうちで、ネットワー
    ク上にバッファされているデータ量の算出の基準となる
    基準通信装置に応じて、ネットワーク上にバッファされ
    るデータ量の目標値を設定する目標値設定手段と、 前記目標値に基づいて、データ送信レートを決定する決
    定手段と、 を有し、前記受信装置は、送信されたデータを受信する
    受信手段を有することを特徴とする通信システム。
JP11183325A 1999-06-29 1999-06-29 通信装置、通信方法、記憶媒体及び通信システム Withdrawn JP2001016276A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11183325A JP2001016276A (ja) 1999-06-29 1999-06-29 通信装置、通信方法、記憶媒体及び通信システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11183325A JP2001016276A (ja) 1999-06-29 1999-06-29 通信装置、通信方法、記憶媒体及び通信システム

Publications (1)

Publication Number Publication Date
JP2001016276A true JP2001016276A (ja) 2001-01-19

Family

ID=16133745

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11183325A Withdrawn JP2001016276A (ja) 1999-06-29 1999-06-29 通信装置、通信方法、記憶媒体及び通信システム

Country Status (1)

Country Link
JP (1) JP2001016276A (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001274861A (ja) * 2000-03-02 2001-10-05 Matsushita Electric Ind Co Ltd データ伝送方法および装置
EP1478137A1 (en) * 2003-05-14 2004-11-17 NTT DoCoMo, Inc. Determination of a packet size in a packet communications system
KR100799419B1 (ko) * 2001-12-28 2008-01-30 엘지노텔 주식회사 단말과 스위치 간의 대역폭 협상 방법 및 장치
US7443816B2 (en) 2001-06-18 2008-10-28 Ntt Docomo, Inc. Packet transmission method, base station and mobile station
JP2009533963A (ja) * 2006-04-13 2009-09-17 ドルビー・ラボラトリーズ・ライセンシング・コーポレーション 無線処理システム装置のキュー長の推定および無線ネットワークにおける信号受信品質の推定
JP2009219075A (ja) * 2008-03-13 2009-09-24 Hitachi Ltd 通信品質監視システム
JP2012191416A (ja) * 2011-03-10 2012-10-04 Nec Corp 回線選択装置
WO2013042219A1 (ja) * 2011-09-21 2013-03-28 富士通株式会社 データ通信装置,データ送信方法及び計算機システム
JP2013085192A (ja) * 2011-10-12 2013-05-09 Mitsubishi Electric Corp 通信システム、データ送信端末、データ受信端末および送信レート制御方法

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4623616B2 (ja) * 2000-03-02 2011-02-02 パナソニック株式会社 データ伝送方法および装置
JP2001274861A (ja) * 2000-03-02 2001-10-05 Matsushita Electric Ind Co Ltd データ伝送方法および装置
US7443816B2 (en) 2001-06-18 2008-10-28 Ntt Docomo, Inc. Packet transmission method, base station and mobile station
KR100799419B1 (ko) * 2001-12-28 2008-01-30 엘지노텔 주식회사 단말과 스위치 간의 대역폭 협상 방법 및 장치
EP1478137A1 (en) * 2003-05-14 2004-11-17 NTT DoCoMo, Inc. Determination of a packet size in a packet communications system
US7477604B2 (en) 2003-05-14 2009-01-13 Ntt Docomo, Inc. Packet communications system
JP2012095326A (ja) * 2006-04-13 2012-05-17 Dolby Lab Licensing Corp バッファ占有レベルを推定する方法
JP4891392B2 (ja) * 2006-04-13 2012-03-07 ドルビー ラボラトリーズ ライセンシング コーポレイション 無線処理システム装置のキュー長の推定および無線ネットワークにおける信号受信品質の推定
JP2009533963A (ja) * 2006-04-13 2009-09-17 ドルビー・ラボラトリーズ・ライセンシング・コーポレーション 無線処理システム装置のキュー長の推定および無線ネットワークにおける信号受信品質の推定
JP2009219075A (ja) * 2008-03-13 2009-09-24 Hitachi Ltd 通信品質監視システム
JP2012191416A (ja) * 2011-03-10 2012-10-04 Nec Corp 回線選択装置
WO2013042219A1 (ja) * 2011-09-21 2013-03-28 富士通株式会社 データ通信装置,データ送信方法及び計算機システム
JP5673841B2 (ja) * 2011-09-21 2015-02-18 富士通株式会社 データ通信装置,データ送信方法及び計算機システム
US9426080B2 (en) 2011-09-21 2016-08-23 Fujitsu Limited Data communication apparatus, data transmission method, and computer system
JP2013085192A (ja) * 2011-10-12 2013-05-09 Mitsubishi Electric Corp 通信システム、データ送信端末、データ受信端末および送信レート制御方法

Similar Documents

Publication Publication Date Title
US6701372B2 (en) Data communication apparatus and method
US6085252A (en) Device, system and method for real-time multimedia streaming
US6370163B1 (en) Apparatus and method for speech transport with adaptive packet size
US6643496B1 (en) System, method, and apparatus for adjusting packet transmission rates based on dynamic evaluation of network characteristics
US8089514B2 (en) Moving image communication device, moving image communication system and semiconductor integrated circuit used for communication of moving image
JP2001094625A (ja) データ通信装置、データ通信方法及び記憶媒体
JP3882187B2 (ja) フロー制御システムおよび方法
EP2479941B1 (en) Communication apparatus and communication system for enhancing speed of communications between terminals
JP2001274861A (ja) データ伝送方法および装置
EP3780542B1 (en) Data transmission method and device
US20070147335A1 (en) Data transmission apparatus, data receiving apparatus, and data transmitting-receiving method
JPH09191314A (ja) 連続データ伝送方法および連続データ伝送装置
US6456967B1 (en) Method for assembling a voice data frame
US6965573B1 (en) Network system
JPH11308271A (ja) データ通信装置及び受信装置及び制御方法及び記憶媒体及びデータ通信システム
JP2001144802A (ja) データ通信装置及びその方法及び通信システム及び記憶媒体
JP2001016276A (ja) 通信装置、通信方法、記憶媒体及び通信システム
US7317724B2 (en) Performing compression of user datagram protocol packets
US20060209687A1 (en) Communication rate control method and device
JP4772053B2 (ja) 送信装置および送信レート制御方法
EP1351465B1 (en) Voice transmitting and receiving system
JP2008271378A (ja) 映像監視装置
JP3964806B2 (ja) 動画像伝送システム、動画像送信装置、動画像中継装置、動画像受信装置、プログラム、および記録媒体
KR20170137062A (ko) 비디오 인코더
JPH11215480A (ja) 映像通信システム及び映像送信装置及び映像受信装置及びそれらの制御方法及び記憶媒体

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060905