(57)【要約】【課題】通信装置およびネットワークに不要な負荷をかけることなく、送信するデータに応じて効率よく帯域を計測できるようにデータを通信することができる通信装置、通信方法、および通信プログラムを提供する。【解決手段】通信装置は、パケット化して送信するデータである送信データについての情報を参照することで、送信データの種別を取得する（Ｓ３３）。通信装置は、取得した送信データの種別に応じて、複数のパケットによる帯域の計測対象範囲である探索範囲を制限する（Ｓ３４〜Ｓ４１）。通信装置は、制限に従って探索範囲を設定する。通信装置は、設定した探索範囲内で帯域を計測するための複数のパケットを生成し、受信装置に送信する。【選択図】図４
2011211665.tif 000002
【特許請求の範囲】
【請求項１】
連続して送信される複数のパケットの各々の送信処理を行う間隔である送信間隔と、ネットワークを経由して受信された前記複数のパケットの受信間隔とに基づいて帯域を計測できるように、パケットの通信を行う通信装置であって、
パケット化して送信するデータである送信データについての情報を参照することで、前記送信データの種別を取得する種別取得手段と、
前記種別取得手段によって取得された前記送信データの種別に応じて、前記複数のパケットによる帯域の計測対象範囲である探索範囲を制限する範囲制限手段と、
前記範囲制限手段による制限に従って前記探索範囲を設定する範囲設定手段と、
前記範囲設定手段によって設定された前記探索範囲内で帯域を計測するための前記複数のパケットを生成して送信するパケット処理手段と
を備えたことを特徴とする通信装置。
【請求項２】
前記範囲制限手段は、
前記送信データについて、前記種別取得手段によって取得された種別毎に、通信装置が前記種別の送信データを送信するために利用する可能性のある最大の帯域を取得し、取得した種別毎の帯域の和を算出することで、前記送信データを送信するために利用される最大の帯域である最大利用帯域を算出する最大値算出手段と、
前記最大値算出手段によって算出された前記最大利用帯域を前記探索範囲の中心が位置する上限の値に設定することで、前記探索範囲を制限する、または、前記最大利用帯域を、前記探索範囲中の最大値が位置する上限の値に設定することで、前記探索範囲を制限する第一上限設定手段を備えたことを特徴とする請求項１に記載の通信装置。
【請求項３】
前記範囲制限手段は、
前記送信データについて、前記種別取得手段によって取得された種別毎に、利用される帯域の平均値を取得し、取得した種別毎の平均値の和を算出することで、前記送信データを送信するために利用される帯域の平均値である平均利用帯域を算出する平均算出手段と、
前記送信データについて、前記種別取得手段によって取得された種別毎に、利用される帯域の分散を取得し、取得した種別毎の分散の和を算出することで、前記送信データを送信するために利用される帯域の分散を算出する分散算出手段と、
前記分散算出手段によって算出された分散の平方根である標準偏差、または前記分散にＮ（Ｎ＞０）をかけた値と、前記平均算出手段によって算出された前記平均利用帯域との和を前記探索範囲の基準値として算出する基準値算出手段と、
前記基準値算出手段によって算出された前記基準値を、前記探索範囲の中心が位置する上限の値に設定することで、前記探索範囲を制限する、または、前記基準値を前記探索範囲中の最大値が位置する上限の値に設定することで、前記探索範囲を制限する第二上限設定手段を備えたことを特徴とする請求項１に記載の通信装置。
【請求項４】
前回送信された前記複数のパケットによって計測された帯域の値である最新計測結果を取得する結果取得手段と、
前記結果取得手段によって取得された前記最新計測結果が、前記範囲制限手段によって設定されている前記上限の値よりも大きいか否かを判断する結果判断手段とをさらに備え、
前記範囲設定手段は、
前記結果判断手段によって前記最新計測結果が前記上限の値よりも大きいと判断された場合に、前記範囲制限手段によって設定されている前記上限の値を前記探索範囲の中心の値として前記探索範囲を設定することを特徴とする請求項２または３に記載の通信装置。
【請求項５】
前記送信データの種別が変更されたか否かを判断する変更判断手段をさらに備え、
前記範囲制限手段は、前記変更判断手段によって前記送信データの種別が変更されたと判断される毎に前記上限の値を設定することを特徴とする請求項２から４のいずれかに記載の通信装置。
【請求項６】
前記パケット処理手段は、
前記範囲設定手段によって設定された探索範囲内で帯域を計測するための、前記複数のパケットの前記送信間隔と、前記複数のパケットを構成するパケット数と、前記複数のパケットを構成する各パケットのパケットサイズとを設定する送信条件設定手段と、
前記送信条件設定手段によって設定されたパケットサイズで前記送信データをパケット化し、且つ前記送信間隔を割り出すための時間情報を各パケットに含めることで、前記送信条件設定手段によって設定されたパケット数の前記複数のパケットを生成する生成手段と、
前記生成手段によって生成された前記複数のパケットを、前記送信条件設定手段によって設定された前記送信間隔で順次送信する送信手段と
を備えたことを特徴とする請求項１から５のいずれかに記載の通信装置。
【請求項７】
連続して送信される複数のパケットの各々の送信処理を行う間隔である送信間隔と、ネットワークを経由して受信された前記複数のパケットの受信間隔とに基づいて帯域を計測できるように、パケットの通信を行う通信装置によって行われる通信方法であって、
パケット化して送信するデータである送信データについての情報を参照することで、前記送信データの種別を取得する種別取得ステップと、
前記種別取得ステップによって取得された前記送信データの種別に応じて、前記複数のパケットによる帯域の計測対象範囲である探索範囲を制限する範囲制限ステップと、
前記範囲制限ステップによる制限に従って前記探索範囲を設定する範囲設定ステップと、
前記範囲設定ステップによって設定された前記探索範囲内で帯域を計測するための前記複数のパケットを生成して送信するパケット処理ステップと
を備えたことを特徴とする通信方法。
【請求項８】
連続して送信される複数のパケットの各々の送信処理を行う間隔である送信間隔と、ネットワークを経由して受信された前記複数のパケットの受信間隔とに基づいて帯域を計測できるように、パケットの通信を行う通信装置の動作を制御する通信プログラムであって、
コンピュータに、
パケット化して送信するデータである送信データについての情報を参照することで、前記送信データの種別を取得する種別取得ステップと、
前記種別取得ステップによって取得された前記送信データの種別に応じて、前記複数のパケットによる帯域の計測対象範囲である探索範囲を制限する範囲制限ステップと、
前記範囲制限ステップによる制限に従って前記探索範囲を設定する範囲設定ステップと、
前記範囲設定ステップによって設定された前記探索範囲内で帯域を計測するための前記複数のパケットを生成して送信するパケット処理ステップと
を実行させることを特徴とする通信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介してデータ通信を行う場合に、帯域を計測できるようにデータ通信を行う通信装置、通信方法、および通信プログラムに関する。
【背景技術】
【０００２】
インターネット等のネットワークを介して通信装置がデータを送受信する場合、通信装置は、帯域（帯域幅：Ａｖａｉｌａｂｌｅ  Ｂａｎｄｗｉｄｔｈ）に適した伝送速度でデータを送受信する必要がある。ネットワーク上で通信装置が単位時間当たりに伝送できるデータ容量である帯域（単位：ｂｐｓ）は、地域、プロバイダ、時間帯等の状況によって変動する。従って、データを送信する通信装置は、変動する帯域に合わせて、ネットワーク上に単位時間当たりに伝送するデータ容量（単位：ｂｐｓ）を制御することが望ましい。データの伝送速度が帯域以下であれば、データの輻輳、パケットロス等の問題が生じる可能性は低い。
【０００３】
非特許文献１は、音声データ等のメディアデータの送受信を行いながら、変動する帯域を計測するための計測方式を開示している。非特許文献１が開示している計測方式では、まず、送信側の通信装置は、帯域の計測対象範囲である探索範囲を設定する。設定した探索範囲内の帯域を計測するための、複数のパケットの送信条件を設定する。次いで、送信側の通信装置は、受信側の通信装置にパケットの送信間隔を算出させるための時間情報を含んだ複数のパケットを、送信間隔を変更しながら連続して送信する。受信側の通信装置は、パケットの受信間隔を記録する。その後、パケット内の時間情報によって算出されるパケットの送信間隔と、受信側の通信装置で記録された受信間隔との差分が算出される。算出された複数の差分の値の変化傾向から、現在の帯域が計測される。１回の帯域の計測が終了すると、過去の計測結果に基づいて次の帯域の探索範囲が設定され、次の計測処理が行われる。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】津川知朗、ＣａｏＬｅ  Ｔｈａｎｈ  Ｍａｎ、長谷川剛、村田正幸、「インラインネットワーク計測手法ＩｍＴＣＰおよびその応用手法の実装および性能評価」、電子情報通信学会技術研究報告（ＩＮ２００５−１２０）、ｐ．７９−８４、２００５年１２月
【発明の概要】
【発明が解決しようとする課題】
【０００５】
非特許文献１が開示している計測方式では、通信装置が利用する帯域（以下、「利用帯域」という。）の大きさに関わらず、ネットワーク上でデータを通信できる帯域（以下、「可用帯域」という。）が計測される。従って、従来の計測方式では、例えば可用帯域に比べて利用帯域が小さく、利用帯域が可用帯域を上回る可能性がない場合でも、可用帯域を計測するために、データの伝送速度が大きくされる。その結果、通信装置およびネットワークに不要な負荷がかかるという問題点があった。
【０００６】
本発明は、通信装置およびネットワークに不要な負荷をかけることなく、送信するデータに応じて効率よく帯域を計測できるようにデータを通信することができる通信装置、通信方法、および通信プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の第一の態様に係る通信装置は、連続して送信される複数のパケットの各々の送信処理を行う間隔である送信間隔と、ネットワークを経由して受信された前記複数のパケットの受信間隔とに基づいて帯域を計測できるように、パケットの通信を行う通信装置であって、パケット化して送信するデータである送信データについての情報を参照することで、前記送信データの種別を取得する種別取得手段と、前記種別取得手段によって取得された前記送信データの種別に応じて、前記複数のパケットによる帯域の計測対象範囲である探索範囲を制限する範囲制限手段と、前記範囲制限手段による制限に従って前記探索範囲を設定する範囲設定手段と、前記範囲設定手段によって設定された前記探索範囲内で帯域を計測するための前記複数のパケットを生成して送信するパケット処理手段とを備えている。
【０００８】
第一の態様に係る通信装置は、送信データの種別に基づいて、帯域の計測対象範囲である探索範囲を制限する。従って、通信装置は、送信データの種別に応じた適切な探索範囲を設定することができる。可用帯域の計測が不要な場合には、可用帯域が無駄に計測される可能性が低下する。その結果、通信装置は、通信装置自身およびネットワークに不要な負荷をかけることなく、送信データに応じて帯域の計測を適切に実行できるように、データを通信することができる。
【０００９】
前記範囲制限手段は、前記送信データについて、前記種別取得手段によって取得された種別毎に、通信装置が前記種別の送信データを送信するために利用する可能性のある最大の帯域を取得し、取得した種別毎の帯域の和を算出することで、前記送信データを送信するために利用される最大の帯域である最大利用帯域を算出する最大値算出手段と、前記最大値算出手段によって算出された前記最大利用帯域を前記探索範囲の中心が位置する上限の値に設定することで、前記探索範囲を制限する、または、前記最大利用帯域を、前記探索範囲中の最大値が位置する上限の値に設定することで、前記探索範囲を制限する第一上限設定手段を備えてもよい。通信装置は、探索範囲の中心または最大値を、送信データを送信するために利用する最大利用帯域以下とすることで、計測する必要のない可用帯域が無駄に計測される可能性を低下させることができる。従って、通信装置は、送信データに適した帯域の計測を実行できるようにデータを通信することができる。
【００１０】
前記範囲制限手段は、前記送信データについて、前記種別取得手段によって取得された種別毎に、利用される帯域の平均値を取得し、取得した種別毎の平均値の和を算出することで、前記送信データを送信するために利用される帯域の平均値である平均利用帯域を算出する平均算出手段と、前記送信データについて、前記種別取得手段によって取得された種別毎に、利用される帯域の分散を取得し、取得した種別毎の分散の和を算出することで、前記送信データを送信するために利用される帯域の分散を算出する分散算出手段と、前記分散算出手段によって算出された分散の平方根である標準偏差、または前記分散にＮ（Ｎ＞０）をかけた値と、前記平均算出手段によって算出された前記平均利用帯域との和を前記探索範囲の基準値として算出する基準値算出手段と、前記基準値算出手段によって算出された前記基準値を、前記探索範囲の中心が位置する上限の値に設定することで、前記探索範囲を制限する、または、前記基準値を前記探索範囲中の最大値が位置する上限の値に設定することで、前記探索範囲を制限する第二上限設定手段を備えてもよい。通信装置は、利用帯域の平均および分散を用いて探索範囲を制限することで、計測する必要のない可用帯域が無駄に計測される可能性を、統計的手法を用いて効果的に低下させることができる。利用帯域が可用帯域よりも大きくなる可能性が無視できる程度に、利用帯域が可用帯域よりも小さければ、可用帯域が無駄に計測される可能性は低くなる。通信装置は、利用帯域が可用帯域に収まっていることを容易に把握することができる。
【００１１】
前記通信装置は、前回送信された前記複数のパケットによって計測された帯域の値である最新計測結果を取得する結果取得手段と、前記結果取得手段によって取得された前記最新計測結果が、前記範囲制限手段によって設定されている前記上限の値よりも大きいか否かを判断する結果判断手段とをさらに備えてもよい。前記範囲設定手段は、前記結果判断手段によって前記最新計測結果が前記上限の値よりも大きいと判断された場合に、前記範囲制限手段によって設定されている前記上限の値を前記探索範囲の中心の値として前記探索範囲を設定するとよい。通信装置は、設定した上限の値よりも最新計測結果が大きければ、設定した上限の値を探索範囲の中心の値とすることで、計測する必要のない可用帯域を不要に測定することを容易に防止することができる。
【００１２】
前記通信装置は、前記送信データの種別が変更されたか否かを判断する変更判断手段をさらに備えてもよい。前記範囲制限手段は、前記変更判断手段によって前記送信データの種別が変更されたと判断される毎に前記上限の値を設定するとよい。通信装置は、送信データの種別が変更される毎に、変更された送信データの種別に応じて適切に探索範囲を制限することができる。
【００１３】
前記パケット処理手段は、前記範囲設定手段によって設定された探索範囲内で帯域を計測するための、前記複数のパケットの前記送信間隔と、前記複数のパケットを構成するパケット数と、前記複数のパケットを構成する各パケットのパケットサイズとを設定する送信条件設定手段と、前記送信条件設定手段によって設定されたパケットサイズで前記送信データをパケット化し、且つ前記送信間隔を割り出すための時間情報を各パケットに含めることで、前記送信条件設定手段によって設定されたパケット数の前記複数のパケットを生成する生成手段と、前記生成手段によって生成された前記複数のパケットを、前記送信条件設定手段によって設定された前記送信間隔で順次送信する送信手段とを備えてもよい。通信装置は、設定した探索範囲内で帯域を計測するための送信間隔、パケット数、およびパケットサイズを設定する。設定した条件に応じてパケットを生成し、送信する。その結果、通信装置は、設定した探索範囲内の帯域を的確に計測することができる。
【００１４】
本発明の第二の態様に係る通信方法は、連続して送信される複数のパケットの各々の送信処理を行う間隔である送信間隔と、ネットワークを経由して受信された前記複数のパケットの受信間隔とに基づいて帯域を計測できるように、パケットの通信を行う通信装置によって行われる通信方法であって、パケット化して送信するデータである送信データについての情報を参照することで、前記送信データの種別を取得する種別取得ステップと、前記種別取得ステップによって取得された前記送信データの種別に応じて、前記複数のパケットによる帯域の計測対象範囲である探索範囲を制限する範囲制限ステップと、前記範囲制限ステップによる制限に従って前記探索範囲を設定する範囲設定ステップと、前記範囲設定ステップによって設定された前記探索範囲内で帯域を計測するための前記複数のパケットを生成して送信するパケット処理ステップとを備えている。
【００１５】
第二の態様に係る通信方法によると、送信データの種別に基づいて、帯域の計測対象範囲である探索範囲が制限される。従って、通信装置は、送信データの種別に応じた適切な探索範囲を設定することができる。可用帯域の計測が不要な場合には、可用帯域が無駄に計測される可能性が低下する。その結果、通信装置は、通信装置自身およびネットワークに不要な負荷をかけることなく、送信データに応じて帯域の計測を適切に実行できるように、データを通信することができる。
【００１６】
本発明の第三の態様に係る通信プログラムは、連続して送信される複数のパケットの各々の送信処理を行う間隔である送信間隔と、ネットワークを経由して受信された前記複数のパケットの受信間隔とに基づいて帯域を計測できるように、パケットの通信を行う通信装置の動作を制御する通信プログラムであって、コンピュータに、パケット化して送信するデータである送信データについての情報を参照することで、前記送信データの種別を取得する種別取得ステップと、前記種別取得ステップによって取得された前記送信データの種別に応じて、前記複数のパケットによる帯域の計測対象範囲である探索範囲を制限する範囲制限ステップと、前記範囲制限ステップによる制限に従って前記探索範囲を設定する範囲設定ステップと、前記範囲設定ステップによって設定された前記探索範囲内で帯域を計測するための前記複数のパケットを生成して送信するパケット処理ステップとを実行させることを特徴とする。
【００１７】
第三の態様に係る通信プログラムによると、送信データの種別に基づいて、帯域の計測対象範囲である探索範囲が制限される。従って、通信装置は、送信データの種別に応じた適切な探索範囲を設定することができる。可用帯域の計測が不要な場合には、可用帯域が無駄に計測される可能性が低下する。その結果、通信装置は、通信装置自身およびネットワークに不要な負荷をかけることなく、送信データに応じて帯域の計測を適切に実行できるように、データを通信することができる。
【図面の簡単な説明】
【００１８】
【図１】通信装置１の電気的構成、および帯域計測システム１００の構成を示す図である。
【図２】ＨＤＤ１３に記憶されている送信データテーブルのデータ構成を示す模式図である。
【図３】通信装置１が送信装置として動作する場合に実行する送信メイン処理のフローチャートである。
【図４】送信メイン処理中に実行されるネゴシエーション処理のフローチャートである。
【図５】通信装置１が送信装置として動作する場合に実行するパケット送信処理のフローチャートである。
【図６】パケット送信処理中に実行される送信条件設定処理のフローチャートである。
【図７】通信装置１が受信装置として動作する場合に実行するパケット受信処理のフローチャートである。
【図８】可用帯域、利用帯域、および送信装置が設定する探索範囲の関係の一例を示す図である。
【図９】変形例に係る送信装置が実行する送信条件設定処理のフローチャートである。
【発明を実施するための形態】
【００１９】
以下、本発明の通信装置を具現化した一実施の形態である通信装置１、および複数の通信装置１を備えた帯域計測システム１００について、図面を参照して説明する。参照する図面は、本発明が採用し得る技術的特徴を説明するために用いられるものである。図面に記載されている装置の構成、各種処理のフローチャート等は、それのみに限定する趣旨ではなく、単なる説明例である。
【００２０】
帯域計測システム１００について説明する。図１に示すように、帯域計測システム１００は、少なくとも２つの通信装置１を備える。通信装置１は、ネットワーク８を介して他の通信装置１と接続する。通信装置１は、他の通信装置１との間で各種データの通信を行う。
【００２１】
本実施の形態の帯域計測システム１００は、複数の拠点のユーザがテレビ会議を行うためのテレビ会議システムである。各通信装置１は、音声データおよび動画データを互いに送受信することで、複数の拠点の音声および映像を共有し、テレビ会議を実現する。さらに、各通信装置１は、文書等の資料のデータをテレビ会議中に送受信することもできる。ユーザは、他のユーザと同じ資料を見ながらテレビ会議を進行させることができる。通信装置１は、ネットワーク８を介したデータ通信を実行できるものであればよい。具体的には、通信装置１は、テレビ会議を実行するために各拠点に配置される専用のテレビ会議端末であってもよいし、種々の情報処理を行うパーソナルコンピュータであってもよい。
【００２２】
帯域計測システム１００では、各通信装置１は、音声データおよび動画データ等をパケット化して送受信しつつ、可用帯域の計測、および利用帯域が確保されているか否かの判定（以下、これらをまとめて「帯域の計測」という。）を行うことができる。「可用帯域」とは、送信側の通信装置１が送信するデータの伝送速度とほぼ等しい伝送速度で受信側の通信装置１がデータを受信できる最大の伝送速度をいう。「利用帯域」とは、送信側の通信装置１がデータを送信するために利用する帯域である。帯域と、各通信装置１間の伝送速度とを比較するため、帯域を伝送路容量（ｂｐｓ）で表す。可用帯域を越える伝送速度でパケットが送信されると、パケットロス、輻輳による送信遅延等が生じる。一方、通信装置１がデータの伝送速度を低くしすぎると、帯域を十分に活用することができず、効率が悪い。従って、各通信装置１は、計測された帯域に合わせてデータの伝送速度を制御する。
【００２３】
通信装置１の電気的構成について説明する。図１に示すように、通信装置１は、通信装置１の制御を司るＣＰＵ１０を備えている。ＣＰＵ１０には、ＲＯＭ１１、ＲＡＭ１２、ハードディスクドライブ（以下、「ＨＤＤ」という。）１３、および入出力インターフェース１９が、バス１８を介して接続されている。
【００２４】
ＲＯＭ１１は、通信装置１を動作させるためのプログラムおよび初期値等を記憶している。ＲＡＭ１２は、制御プログラムで使用される各種の情報を一時的に記憶する。ＨＤＤ１３は、後述する送信データテーブル（図２参照）、および制御プログラム等の各種の情報を記憶する不揮発性の記憶装置である。ＨＤＤ１３の代わりに、ＥＥＰＲＯＭまたはメモリカード等の記憶装置を用いてもよい。
【００２５】
入出力インターフェース１９には、音声入力処理部２１、音声出力処理部２２、映像入力処理部２３、映像出力処理部２４、操作部２５、および外部通信Ｉ／Ｆ２６が接続されている。音声入力処理部２１は、音声を入力するマイク３１からの音声データの入力を処理する。音声出力処理部２２は、音声を出力するスピーカ３２の動作を処理する。映像入力処理部２３は、映像を撮像するカメラ３３からの動画データの入力を処理する。映像出力処理部２４は、映像を表示する表示装置３４の動作を処理する。操作部２５は、ユーザが通信装置１に各種指示を入力するために用いられる。操作部２５は、通信装置１の外部から、入出力インターフェース１９へ接続されるものであってもよい。外部通信Ｉ／Ｆ２６は、通信装置１をネットワーク８に接続する。
【００２６】
次に、本実施の形態の帯域計測システム１００で用いられる帯域計測方式について、概略的に説明する。帯域計測システム１００では、以下の文献に記載されている帯域計測方式が利用される。「津川知朗、ＣａｏＬｅ  Ｔｈａｎｈ  Ｍａｎ、長谷川剛、村田正幸、「インラインネットワーク計測手法ＩｍＴＣＰおよびその応用手法の実装および性能評価」、電子情報通信学会技術研究報告（ＩＮ２００５−１２０）、ｐ．７９−８４、２００５年１２月」
【００２７】
計測原理について説明する。帯域計測システム１００では、データを送信する通信装置１（以下、「送信装置」という。）は、送信するデータを複数のパケットにパケット化する。送信装置は、複数のパケットを連続して他の通信装置１（以下、「受信装置」という。）にネットワーク８を介して送信する。パケットを送信する際の伝送速度（単位：ｂｐｓ）が、送信装置と受信装置との間の可用帯域（単位：ｂｐｓ）以下であれば、パケットは渋滞（輻輳）しない。パケットが渋滞しなければ、送信装置によって送信された複数のパケットを受信装置が受信する間隔（受信間隔）は、理論的に、送信装置が複数のパケットを送信する間隔（送信間隔）と同一となる。一方、伝送速度が可用帯域よりも大きければ、パケットは渋滞し、受信間隔は送信間隔よりも長くなる。
【００２８】
帯域を計測する場合、送信装置は、送信間隔を徐々に長くしながら、または徐々に短くしながら、複数のパケットを送信する。あるパケットが送信された場合の伝送速度は、以下の式（１）で求められる。
伝送速度（ｂｐｓ）＝パケットサイズ（ｂｉｔ）／前回のパケット送信時と今回のパケット送信時との時間間隔（ｓ）・・・・・（１）
送信間隔を徐々に長くしながら複数のパケットを送信すると、伝送速度が可用帯域よりも大きい間は、受信間隔が送信間隔よりも長くなる。しかし、送信間隔が長くなり、伝送速度が可用帯域以下となれば、受信間隔と送信間隔とが同一となる。よって、「受信間隔−送信間隔」の値が変化する時点のデータの伝送速度を、可用帯域として計測することができる。
【００２９】
計測手順の概略について説明する。帯域計測システム１００では、以下の手順で帯域が計測される。
１．帯域の探索範囲を設定する。
その時点の可用帯域を計測できると予想される探索範囲を限定することで、効率よく可用帯域を計測することができる。さらに、本実施の形態の通信装置１は、送信データの種別に応じて探索範囲を制限する点に特徴を有する。その結果、通信装置１は、可用帯域が利用帯域よりも著しく大きい場合および著しく小さい場合に、可用帯域が無駄に計測されることを防止できる。この詳細については後述する。
【００３０】
２．探索範囲を１または複数の小区間に分割する。
送信装置は、帯域を計測する際、分割した小区間毎に、複数のパケットからなるパケット群（以下、「ストリーム」という。）を送信する。ストリームは、小区間内に「受信間隔−送信間隔」の値の変化時点が存在するか否かを判断するために送信される。通信装置１は、分割する小区間の数を多くする程、一時的な異常に対する耐性が高い計測結果を得ることができ、「受信間隔−送信間隔」の値の変化時点を正確に検出できる。分割する小区間の数が少ない程、計測処理に要する時間が短くなるため、通信装置１は計測結果を素早く得ることができる。
【００３１】
３．探索範囲に対応するストリームを、送信装置と受信装置との間で送受信する。
通信装置１は、それぞれの小区間内で帯域を計測するためのストリームの送信条件を決定する。送信条件には、ストリームを構成するパケットの数（以下、「計測パケット数」という。）、各パケットのパケットサイズ、および、前回のパケット送信時から次のパケットを送信するまでの時間である送信間隔が含まれる。本実施の形態では、送信間隔は徐々に長くなるように決定されるため、探索範囲の上限値から下限値へ順に帯域が探索されることになる。次いで、送信装置は、決定した送信条件に従って複数のパケットを生成し、送信する。各パケットには、受信装置が送信間隔を算出するための時間情報が含まれる。
【００３２】
４．受信間隔と送信間隔との差分から帯域を計測する。
受信装置がパケットを実際に受信した時刻から、受信間隔が算出される。受信されたパケットに含まれる時間情報から、送信間隔が算出される。パケットが送信された際のデータの伝送速度と、パケットが受信された際の受信レート（ｂｐｓ）との関係が、線形回帰法によって２本の直線で近似される。その結果、「受信間隔−送信間隔」の値の変化時点が検出される。変化時点が存在すれば、変化時点におけるデータの伝送速度が可用帯域として計測される。変化時点が存在せず、「受信間隔−送信間隔」の値が探索範囲全体を通じてゼロとなれば、探索範囲よりも大きい範囲に可用帯域が存在すると判定される。本実施の形態では、受信装置は、探索範囲内の最大値を暫定的な計測結果（図５から図７に示す最新計測結果Ｆ）として送信装置に通知する。可用帯域が探索範囲よりも大きい範囲に存在する場合、送信装置が利用する利用帯域が、探索範囲内の最大値よりも小さければ、通信装置１は利用帯域を確保できる。また、変化時点が存在せず、「受信間隔−送信間隔」の値が探索範囲全体を通じてプラスの値となれば、探索範囲よりも小さい範囲に可用帯域が存在すると判定される。受信装置は、探索範囲内の最小値を暫定的な計測結果Ｆとして送信装置に通知する。
【００３３】
５．上記１．へ戻り、探索範囲を再設定して再び帯域を計測する。
過去の計測結果に基づいて次の探索範囲を再設定することで、効率よく帯域を計測できる。
【００３４】
以上説明したように、パケットの送信間隔および受信間隔を利用して帯域を計測する方式では、通信装置１は、音声データ等を含んだパケットを送受信しながら帯域を計測することができる。通信装置１は、探索範囲内に可用帯域が含まれるように探索範囲を設定すれば、テレビ会議を実行しながら可用帯域の値を計測することができる。しかし、通信装置１は、利用帯域よりも可用帯域の方が大きいか否か（利用帯域が確保されているか否か）のみを認識すればよい場合がある。例えば、利用帯域および可用帯域が変動する場合でも、利用帯域の最大値（以下、「最大利用帯域」という。）よりも可用帯域の方が大きければ、送信遅延等の問題は生じない。よって、通信装置１は、可用帯域の値まで把握する必要はない。利用帯域が可用帯域を上回る可能性が無視できる程度に可用帯域の方が大きい場合に、可用帯域を計測するために大きい伝送速度でパケットが送信されると、通信装置１およびネットワーク８に不要な負荷がかかる。本実施の形態の通信装置１は、適切な探索範囲を設定することで、通信装置１およびネットワーク８に不要な負荷がかかることを防止することができる。以下、通信装置１が記憶するデータの構成、および通信装置１が行う処理について、詳細に説明する。
【００３５】
図２を参照して、送信装置のＨＤＤ１３に記憶されている送信データテーブルのデータ構成について説明する。送信データテーブルは、通信装置１が送信データを送信する際の利用帯域の情報を、送信データの種別毎に記憶するテーブルである。まず、通信装置１が送受信できるデータには、音声データ、動画データ、資料データ、ポインタ位置データ、および制御情報がある。例えば、音声データは、コーデックの種類、サンプリングレート、および１フレームのサイズに応じて６つの種別に分類される。同様に、動画データ等の他のデータも、１または複数の種別に分類される。通信装置１は、受信装置の性能、ユーザからの指示等に応じて、１または複数の種別のデータのいずれかを受信装置へ送信する。図２の中央より左側は、データの種別を表している。
【００３６】
それぞれのデータの種別には、利用帯域の情報が対応付けられている。利用帯域の情報は、帯域下限、帯域上限、平均帯域、および分散の情報からなる。帯域下限および帯域上限の情報は、データを送信するために利用される利用帯域の下限および上限を示す情報である。帯域下限および帯域上限の情報は、データの種別毎にあらかじめ定められている。通信装置１は、送信する１または複数のデータについての帯域上限の値の和、および帯域下限の値の最小値を用いて、探索範囲を制限することができる。なお、図２における「ＣＢＲ」は「Ｃｏｎｓｔａｎｔ  Ｂｉｔ  Ｒａｔｅ」の略であり、一定の伝送速度で送信されるデータであることを示す。
【００３７】
平均帯域は、通信装置１がデータを実際に送信した際の利用帯域の平均値である。通信装置１は、データの送信中に、データ毎に利用帯域の値を取得して平均値を算出し、送信データテーブルの平均帯域の値を更新する。分散は、通信装置１がデータを実際に送信した際の利用帯域の分散である。通信装置１は、データの送信中に取得した利用帯域の値から分散を算出し、送信データテーブルに記憶する。通信装置１は、平均帯域および分散に基づいて探索範囲を制限することができる。
【００３８】
図３から図６を参照して、帯域を計測するための計測パケットを送信する送信装置として通信装置１が動作する場合に実行される送信メイン処理およびパケット送信処理について説明する。送信メイン処理およびパケット送信処理は、ＨＤＤ１３に記憶されているプログラムに従って、送信装置のＣＰＵ１０によって実行される。送信メイン処理は、受信装置との間でデータを送受信する指示が通信装置１に入力されることを契機として実行される。パケット送信処理は、送信メイン処理の中で帯域計測開始の処理が行われることを条件に、送信メイン処理と並行して実行される。
【００３９】
図３に示すように、送信メイン処理が開始されると、テレビ会議を実行するためのアプリケーションが起動される（Ｓ１）。受信装置との間で呼が接続され、パケットを受信装置との間で送受信することが可能な状態とされる（Ｓ２）。ネゴシエーション処理が行われる（Ｓ３）。ネゴシエーション処理では、受信装置との間で送受信されるデータの種別が決定された後に、探索範囲を制限するための設定が行われて、帯域の計測を開始する処理が行われる。この詳細については、図４を参照して後述する。
【００４０】
ネゴシエーション処理（Ｓ３）が終了すると、資料データ以外のデータ（主に音声データおよび動画データ）が受信装置との間で相互に送受信されて、映像通話が行われる（Ｓ４）。送信しているデータの伝送速度が、利用帯域としてデータの種別毎に取得される（Ｓ５）。取得された利用帯域の値および過去の利用帯域の値から、利用帯域の平均値である平均利用帯域と、利用帯域の値の分散とが、データの種別毎に算出される（Ｓ６）。算出結果が、送信データテーブル（図２参照）に更新される（Ｓ７）。受信装置との間の呼を切断する指示が入力されたか否かが判断される（Ｓ８）。切断する指示が入力されていなければ（Ｓ８：ＮＯ）、送信するデータ種別を追加する指示が入力されたか否かが判断される（Ｓ９）。具体的には、本実施の形態では、音声および動画を用いたテレビ会議中に、送信装置が有する資料データを共有する指示が入力されたか否かが判断される。データ種別を追加する指示が入力されていなければ（Ｓ９：ＮＯ）、処理はＳ４へ戻り、Ｓ４〜Ｓ９の処理が繰り返し行われる。
【００４１】
データ種別を追加する指示が入力されると（Ｓ９：ＹＥＳ）、帯域の計測を中断させる処理が行われて（Ｓ１１）、Ｓ３と同様のネゴシエーション処理が再度行われる（Ｓ１２）。Ｓ１２のネゴシエーション処理では、探索範囲を制限する処理が再び行われた後に、帯域の計測が再開される。資料データを含むデータが、受信装置との間で送受信される（Ｓ１３）。送信しているデータの種別毎に、利用帯域が取得される（Ｓ１４）。データの種別毎に、平均利用帯域および分散が算出され（Ｓ１５）、算出結果が更新される（Ｓ１６）。送信するデータの種別を減少させる指示、具体的には、資料データの共有を終了する指示が入力されたか否かが判断される（Ｓ１７）。入力されていなければ（Ｓ１７：ＮＯ）、処理はＳ１３へ戻る。データの種別を減少させる指示が入力された場合には（Ｓ１７：ＹＥＳ）、探索範囲を制限する設定が、データの種別が追加される前の設定に戻される（Ｓ１８）。処理はＳ４へ戻る。
【００４２】
受信装置との間の呼を切断する指示が入力されると（Ｓ８：ＹＥＳ）、帯域の計測を終了させる処理が行われる（Ｓ２１）。呼が切断され（Ｓ２２）、アプリケーションを終了させる処理が行われて（Ｓ２３）、送信メイン処理は終了する。
【００４３】
図４を参照して、送信メイン処理中に実行されるネゴシエーション処理について説明する。本実施の形態では、送信装置と受信装置との間で送受信されるデータの種別を決定する際に、セッション記述プロトコル（ＳＤＰ）を用いたオファー・アンサーモデルが用いられる。まず、送信装置が送信可能なデータ種別、および受信可能なデータ種別の一覧を示すオファーが、受信装置に送信される（Ｓ３１）。受信装置が送信可能なデータ種別、および受信可能なデータ種別の一覧を示すアンサーが、受信装置から受信される（Ｓ３２）。受信装置に送信する送信データの種別が決定され、決定された送信データの種別の一覧が、送信データテーブル（図２参照）から取得される（Ｓ３３）。
【００４４】
利用帯域の分散を使用して探索範囲を制限する設定となっているか否かが判断される（Ｓ３４）。本実施の形態の通信装置１は、探索範囲を制限する方法として２つの方法を用いることができる。１つの方法は、最大利用帯域および最小利用帯域を使用する方法である。もう１つの方法は、利用帯域の平均および分散を使用する方法である。ユーザは、操作部２５を操作することで、２つの方法のうちのいずれを使用させるかをあらかじめ設定しておく。Ｓ３４では、いずれの方法を使用する設定となっているかが判断される。
【００４５】
分散を使用する設定となっていなければ（Ｓ３４：ＮＯ）、最大利用帯域および最小利用帯域によって探索範囲を制限する処理が行われる。まず、送信データテーブルから取得されたデータから、各データの種別の帯域上限の値が加算されることで、最大利用帯域が算出される（Ｓ３５）。算出された最大利用帯域の値が、探索範囲の中心が位置する上限の値Ｏｍａｘに設定される（Ｓ３６）。詳細は後述するが、送信装置は、送信条件設定処理（図６参照）において、探索範囲の中心がＯｍａｘを超えないように、探索範囲を設定する。その結果、探索範囲が制限される。次いで、各データ種別についての帯域下限のうちの最小値が、探索範囲の中心が位置する下限の値Ｏｍｉｎに設定される（Ｓ３７）。
【００４６】
分散を使用する設定となっていれば（Ｓ３４：ＹＥＳ）、平均利用帯域および分散によって探索範囲を制限する処理が行われる。まず、送信データテーブルから取得されたデータから、各データの種別の平均利用帯域が全て加算される（Ｓ３８）。各データの種別の分散が全て加算される（Ｓ３９）。平均利用帯域の合計値「Ｈ」と、分散の合計値「Ｂ」を３倍した値との和が算出される。算出された「Ｈ＋３Ｂ」の値が、探索範囲の中心が位置する上限の値Ｏｍａｘに設定される（Ｓ４０）。「Ｈ−３Ｂ」の値が算出され、算出された値が、探索範囲の中心が位置する下限の値Ｏｍｉｎに設定される（Ｓ４１）。
【００４７】
統計学上、分散の合計値「Ｂ」を３倍した値を用いることで、利用帯域の約９９．７％がＯｍｉｎからＯｍａｘの範囲内に収まるように、ＯｍｉｎおよびＯｍａｘの値を設定することができる。その結果、ＯｍｉｎからＯｍａｘの範囲を、利用帯域が高い確率で収まる適切な範囲に設定することができる。利用帯域がＯｍａｘ以下となれば、可用帯域の値がＯｍａｘよりも大きいことのみが計測結果として得られた場合（可用帯域の値が計測されなかった場合）でも、通信装置１は、利用帯域が確保されていることを把握することができる。なお、分散の合計値「Ｂ」にかける値は３に限られない。ＯｍａｘおよびＯｍｉｎの設定が終了すると、帯域の計測が開始されて（Ｓ４２）、処理は送信メイン処理へ戻る。
【００４８】
図５および図６を参照して、パケット送信処理について説明する。前述したように、送信装置は、送信メイン処理において帯域の計測を開始させる処理（Ｓ４２、図４参照）が行われると、送信メイン処理と並行してパケット送信処理を実行する。図５に示すように、まず、帯域の計測を終了させる処理（Ｓ２１、図３参照）、または中断させる処理（Ｓ１１、図３参照）が行われたか否かが判断される（Ｓ５１）。終了または中断させる処理が行われていなければ（Ｓ５１：ＮＯ）、送信条件設定処理が行われる（Ｓ５２）。
【００４９】
図６に示すように、送信条件設定処理が開始されると、受信装置との間で行われる初回の帯域の計測処理であるか否かが判断される（Ｓ６１）。換言すると、受信装置との間の帯域が未だ１度も計測されていないか判断される。初回の計測処理であれば（Ｓ６１：ＹＥＳ）、初期探索範囲、パケットサイズ、ストリーム数Ｓ、および計測パケット数Ｎが、所定の値に設定される（Ｓ６２）。本実施の形態では、所定の値としてデフォルト値が用いられる。しかし、これらの値の設定方法は変更できる。例えば、他の帯域計測方法によって計測された帯域に基づいて初期探索範囲を設定してもよい。
【００５０】
初回の計測処理でなければ（Ｓ６１：ＮＯ）、受信装置から通知された最新の計測結果の値Ｆに応じて、次回の帯域の計測処理における探索範囲（以下、「次回の探索範囲」という。）が設定される。詳細は後述するが、送信装置と受信装置との間の帯域は、受信装置によって計測される。送信装置は、計測結果を受信装置から受信することで、帯域を把握する。また、送信装置は、最新計測結果ＦがＯｍｉｎ以上Ｏｍａｘ以下であれば、最新計測結果Ｆまたは前回設定した探索範囲（最新計測結果Ｆを計測するために設定されていた探索範囲）を利用して、次回の探索範囲を設定する。その結果、送信装置は、可用帯域を計測するための適切な探索範囲を次回の探索範囲として設定することができる。この処理は、前述した文献に記載されている。一方、最新計測結果ＦがＯｍｉｎ以上Ｏｍａｘ以下の範囲になければ、次回の探索範囲の中心位置は制限される。その結果、可用帯域が無駄に計測されることが防止される。以下、詳細について説明する。
【００５１】
まず、最新計測結果Ｆの値が、設定されているＯｍａｘの値よりも大きいか否かが判断される（Ｓ６３）。Ｏｍａｘよりも大きい場合には（Ｓ６３：ＹＥＳ）、Ｏｍａｘの値が、次回の探索範囲の中心が位置する値に決定される（Ｓ６４）。最新計測結果Ｆの値がＯｍａｘの値以下であれば（Ｓ６３：ＮＯ）、Ｆの値がＯｍｉｎよりも小さいか否かが判断される（Ｓ６５）。Ｏｍｉｎよりも小さい場合には（Ｓ６５：ＹＥＳ）、Ｏｍｉｎの値が、次回の探索範囲の中心が位置する値に決定される（Ｓ６６）。つまり、送信装置は、探索範囲の中心位置をＳ６３〜Ｓ６６で制限することで、探索範囲を制限する。
【００５２】
最新計測結果Ｆの値がＯｍｉｎ以上であれば（Ｓ６５：ＮＯ）、前回設定された探索範囲内にＦの値が存在するか否かが判断される（Ｓ６７）。Ｆの値が前回の探索範囲内（探索範囲の上限値および下限値を除く）にあれば（Ｓ６７：ＹＥＳ）、最新計測結果Ｆの値が、次回の探索範囲の中心が位置する値に決定される（Ｓ６８）。
【００５３】
次回の探索範囲の中心が位置する値が決定されると、蓄積された帯域の計測結果から探索範囲の幅Ｄが算出されて、次回の探索範囲が設定される（Ｓ７１）。つまり、次回の探索範囲の中心が位置する値をＣとすると、次回の探索範囲の最小値は「Ｃ−Ｄ／２」、最大値は「Ｃ＋Ｄ／２」とされる。次回の探索範囲の幅Ｄは、前述した文献に記載されている方法と同様に、以下の式（２）によって算出される。式（２）におけるαは、蓄積された１または複数の計測結果の分散、βは、蓄積された１または複数の計測結果の個数の平方根である。
Ｄ＝２×１．９６×α／β・・・・・（２）
なお、計測結果が安定し、算出されたＤの値があらかじめ定められた最小幅Ｄｍｉｎよりも小さくなれば、Ｄｍｉｎが次回の探索範囲の幅として採用される。その後、処理はＳ７２へ移行する。
【００５４】
一方、最新計測結果Ｆの値がＯｍｉｎ≦Ｆ≦Ｏｍａｘの範囲内、且つ前回の探索範囲外にあれば（Ｓ６７：ＮＯ）、前回の探索範囲の最大値および最小値のいずれか一方が変更されることで探索範囲が拡大され、拡大された探索範囲が次回の探索範囲として設定される（Ｓ６９）。処理はＳ７２へ移行する。詳細には、前述したように、可用帯域が前回の探索範囲の上限値よりも大きい場合には、暫定的に前回の探索範囲の上限値が最新計測結果Ｆとされる。最新計測結果Ｆの値が、暫定的な計測結果として通知された前回の探索範囲の上限値である場合には、次回の探索範囲の最大値Ｂｕ´の値が、前回の探索範囲の最大値Ｂｕの値および最小値Ｂｌの値を用いて、以下の式（３）によって算出される。その結果、次回の探索範囲は、前回より大きい帯域まで計測する探索範囲に拡大される。なお、次回の探索範囲の最小値Ｂｌ´の値には、Ｂｌの値がそのまま用いられる。
Ｂｕ´＝Ｂｕ＋（Ｂｕ−Ｂｌ）／２・・・・・（３）
最新計測結果Ｆが、暫定的な計測結果として通知された前回の探索範囲の下限値であれば、次回の探索範囲の最小値Ｂｌ´の値が以下の式（４）によって算出される。その結果、次回の探索範囲は、前回より小さい帯域まで計測する探索範囲に拡大される。なお、次回の探索範囲の最大値Ｂｕ´の値には、前回の最大値Ｂｕの値がそのまま用いられる。
Ｂｌ´＝Ｂｌ−（Ｂｕ−Ｂｌ）／２・・・・・（４）
【００５５】
次回の探索範囲が設定されると、設定された探索範囲が、ストリーム数であるＳ個の小区間に等分される（Ｓ７２）。ストリーム数Ｓが「１」であれば、探索範囲全体がそのまま小区間とされる。次いで、分割された小区間のそれぞれが、各ストリームを構成する計測パケットの数Ｎで等分される（Ｓ７３）。その結果、各計測パケットが探索する帯域の値である探索帯域値Ｋｉ（ｉ＝１，...，Ｎ−１）が一意に定まる。分割された帯域値である探索帯域値Ｋｉ（ｂｐｓ）を探索するための、各計測パケットの送信間隔が算出される（Ｓ７４）。１つの探索帯域値Ｋｉを探索するための送信間隔（前回の計測パケットを送信してからの経過時間）は、計測パケットのパケットサイズ（ｂｉｔ）をＰｓとして、以下の式（５）で求められる。その後、処理はパケット送信処理に戻る。
Ｐｓ／Ｋｉ・・・・・（５）
【００５６】
図５の説明に戻る。送信条件設定処理（Ｓ５２）が終了すると、計測パケット数Ｎおよびストリーム数Ｓが受信装置に通知される（Ｓ５３）。設定されているパケットサイズＰｓの計測パケットが生成される（Ｓ５４）。計測パケットには、音声データ等の送信データと、パケット番号の情報と、前回送信された計測パケットとの間の送信間隔を算出するための時間情報とが含まれる。パケット番号は、計測ストリーム中の各計測パケットの順番を示す番号であり、通し番号が用いられる。次いで、設定されている送信間隔だけ待機される（Ｓ５５）。待機時間が経過すると、生成された計測パケットが受信装置に送信される（Ｓ５６）。Ｎ×Ｓ個の全ての計測パケットが送信されたか否かが判断され（Ｓ５７）、送信されていなければ（Ｓ５７：ＮＯ）、Ｓ５４〜Ｓ５６の処理が繰り返し行われる。全ての計測パケットが送信された場合（Ｓ５７：ＹＥＳ）、受信装置から最新計測結果Ｆが受信されて（Ｓ５８）、処理はＳ５１の判断へ戻る。帯域の計測を終了または中断させる処理が行われると（Ｓ５１：ＹＥＳ）、パケット送信処理は終了する。
【００５７】
次に、図７を参照して、パケット受信処理について説明する。パケット受信処理は、計測パケットを受信して帯域を計測する受信装置として通信装置１が動作する場合に実行される。つまり、通信装置１は、送信装置としても受信装置としても動作できる。パケット受信処理は、送信装置との間でデータを送受信する指示が入力されると、ＨＤＤ１３に記憶されているプログラムに従って、受信装置のＣＰＵ１０によって実行される。
【００５８】
パケット受信処理が開始されると、帯域を計測するためのパケットの受信を終了させる指示があったか否かが判断される（Ｓ８１）。終了指示がなければ（Ｓ８１：ＮＯ）、計測パケット数Ｎおよびストリーム数Ｓを示すデータが送信装置から受信されて、ＮおよびＳの値が認識される（Ｓ８２）。計測パケットが受信される（Ｓ８３）。計測パケットが受信された時点の時刻が、受信時刻として取得される（Ｓ８４）。受信された計測パケットに含まれるデータから、パケット番号が抽出され、且つ送信間隔が算出される（Ｓ８５）。Ｎ×Ｓ個の全てのパケットの受信が完了したか否かが判断される（Ｓ８６）。完了していなければ（Ｓ８６：ＮＯ）、Ｓ８３〜Ｓ８５の処理が繰り返し行われる。
【００５９】
全てのパケットの受信が完了すると（Ｓ８６：ＹＥＳ）、受信間隔と送信間隔との差分が、パケット番号毎に算出される（Ｓ８７）。算出された差分の変化時点から、帯域が計測される（Ｓ８８）。詳細には、まず、線形回帰法によって、「受信間隔−送信間隔」の差分の値が変化し始める時点が検出される。変化時点が検出された場合には、変化時点の探索帯域値Ｋｉが、可用帯域の計測結果Ｆとされる。変化時点が検出されなかった場合、探索範囲中の全範囲で差分が概ね「０」であったか否かが判断される。差分が概ね「０」であれば、可用帯域は探索範囲の最大値よりも大きいと判定され、探索範囲の最大値が暫定的な計測結果Ｆとされる。なお、送信装置が利用する利用帯域が、探索範囲の最大値よりも小さければ、送信装置は、必ずしも可用帯域の値まで認識する必要はない。送信装置は、可用帯域が探索範囲の最大値よりも大きいことを認識すれば、可用帯域の値を認識しなくても、利用帯域を確保できると判定できるためである。「受信間隔−送信間隔」の差分が、探索範囲中の全範囲で概ねプラスの値となっていれば、可用帯域は探索範囲を下回ると判定され、探索範囲の最小値が暫定的な計測結果Ｆとされる。帯域が計測されると、最新計測結果Ｆが送信装置に送信されて（Ｓ８９）、処理はＳ８１の判断へ戻る。帯域の計測を終了させる指示があれば（Ｓ８１：ＹＥＳ）、パケット受信処理は終了する。
【００６０】
図８を参照して、本実施の形態の通信装置１が設定する探索範囲と、可用帯域および利用帯域との関係について説明する。通信装置１が送信装置として動作する場合、通信装置１は、送信データテーブル（図２参照）の情報を参照して、探索範囲の中心が位置する上限の値Ｏｍａｘ、および下限の値Ｏｍｉｎを設定する。図８に示す時間帯Ｗ以外の時間帯では、帯域の最新計測結果は、Ｏｍｉｎ以上、Ｏｍａｘ以下となる。よって、通信装置１は、時間帯Ｗ以外の時間帯では、探索範囲の中心位置を制限することなく、最新計測結果の値を次回の探索範囲の中心位置とする。その結果、送信装置は、最新計測結果の値の近傍に探索範囲を設定することができる。よって、受信装置は、可用帯域の値を効率よく正確に計測することができる。
【００６１】
図８に示す時間帯Ｗでは、帯域の最新計測結果（可用帯域の値、または探索範囲の最大値）はＯｍａｘよりも大きくなる。よって、通信装置１は、次回の探索範囲の中心位置を、上限の値として設定されているＯｍａｘとする。その結果、図８に示す時間帯Ｚでは、利用帯域よりも著しく大きい可用帯域が無駄に計測されることが防止される。つまり、図８に示す時間帯Ｚでは、利用帯域が可用帯域を上回る可能性が無視できる程度に、可用帯域の方が大きい。従って、通信装置１は、利用帯域が確保できていることを認識できればよく、可用帯域の値まで計測する必要はない。可用帯域を無駄に計測しなければ、送信装置、受信装置、およびネットワーク８に不要な負荷がかかることはない。よって、通信装置１は、送信するデータに応じて、帯域を効率よく計測することができる。換言すると、通信装置１は、利用帯域が確保されていることを容易に把握することができる。
【００６２】
また、図８に示すように、送信するデータの種別が変更されると、通信装置１は、Ｏｍａｘの値およびＯｍｉｎの値を再設定する。従って、通信装置１は、送信するデータの種別が変更された場合でも、変更されたデータの種別に応じて適切に探索範囲を制限することができる。
【００６３】
以上説明したように、本実施の形態に係る通信装置１は、送信データの種別に基づいて探索範囲を制限する。従って、通信装置１は、送信データの種別に応じた適切な探索範囲を設定することができる。詳細には、通信装置１は、探索範囲の中心を最大利用帯域以下とすることで、最大利用帯域よりも著しく大きい可用帯域（利用帯域が可用帯域を上回る可能性が無視できる程度に大きい可用帯域）が無駄に計測されることを、効率よく防止することができる。また、通信装置１は、利用帯域の平均および分散を用いて探索範囲を制限することもできる。通信装置１は、可用帯域が無駄に計測されることを、平均および分散を用いた統計的な手法によって効果的に防止することができる。なお、通信装置１は、最大利用帯域の値、または平均と分散とを用いて算出した「Ｈ＋３Ｂ」の値よりも、Ｄ／２（Ｄは探索範囲の幅）だけ大きい範囲であれば、可用帯域の値を計測することができる。従って、仮に利用帯域が一時的に増加した場合であっても、利用帯域の増加量がＤ／２以内であれば、増加した利用帯域が確保できているか否かを、既に計測されている結果を用いて素早く判断することができる。
【００６４】
通信装置１は、送信するデータの種別が変更される毎にＯｍａｘの値を設定することで、変更された送信データの種別に応じて適切に探索範囲を制限することができる。通信装置１は、設定した探索範囲内で帯域を計測するための送信間隔、計測パケット数Ｎ、およびパケットサイズＰｓを設定する。設定した条件に応じてパケットを生成し、送信する。その結果、通信装置１は、設定した探索範囲内の帯域を的確に受信装置に計測させることができる。
【００６５】
上記実施の形態において、図４のＳ３３で送信データの種別の一覧を送信データテーブルから取得するＣＰＵ１０が、本発明の「種別取得手段」として機能する。図４のＳ３４〜Ｓ４１、および図３のＳ１８で探索範囲を制限するＣＰＵ１０が「範囲制限手段」として機能する。図６のＳ６３〜Ｓ７１で制限に従って探索範囲を設定するＣＰＵ１０が「範囲設定手段」として機能する。図６のＳ７２〜Ｓ７４および図５のＳ５４〜Ｓ５７でパケットを生成して送信するＣＰＵ１０が「パケット処理手段」として機能する。
【００６６】
図３のＳ５，Ｓ６，Ｓ１４，Ｓ１５、および図４のＳ３５で最大利用帯域を算出するＣＰＵ１０が「最大値算出手段」として機能する。図４のＳ３６で探索範囲の中心が位置する上限の値を設定するＣＰＵ１０が「第一上限設定手段」として機能する。図３のＳ５，Ｓ６，Ｓ１４，Ｓ１５、および図４のＳ３８で分散を算出するＣＰＵ１０が「分散算出手段」として機能する。図４のＳ４０で「Ｈ＋３Ｂ」の値を基準値として算出するＣＰＵ１０が「基準値算出手段」として機能する。図４のＳ４０で探索範囲の中心が位置する上限の値を設定するＣＰＵ１０が「第二上限設定手段」として機能する。
【００６７】
図５のＳ５８で最新計測結果Ｆを取得するＣＰＵ１０が「結果取得手段」として機能する。図６のＳ６３でＦの値がＯｍａｘより大きいか否かを判断するＣＰＵ１０が「結果判断手段」として機能する。図３のＳ９およびＳ１７で送信データの種別が変更されたか否かを判断するＣＰＵ１０が「変更判断手段」として機能する。図６のＳ７２〜７４で送信条件を設定するＣＰＵ１０が「送信条件設定手段」として機能する。図５のＳ５４で計測パケットを生成するＣＰＵ１０が「生成手段」として機能する。図５のＳ５５，Ｓ５６でパケットを送信するＣＰＵ１０が「送信手段」として機能する。
【００６８】
図４のＳ３３で送信データの種別の一覧を送信データテーブルから取得する処理が、本発明の「種別取得ステップ」に相当する。図４のＳ３４〜Ｓ４１、および図３のＳ１８で探索範囲を制限する処理が「範囲制限ステップ」に相当する。図６のＳ６３〜Ｓ７１で、制限に従って探索範囲を設定する処理が、「範囲設定ステップ」に相当する。図６のＳ７２〜Ｓ７４および図５のＳ５４〜Ｓ５７でパケットを生成して送信する処理が「パケット処理ステップ」に相当する。
【００６９】
本発明は上記実施の形態に限定されることはなく、様々な変形が可能であることは言うまでもない。以下、図９を参照して、上記実施の形態の一変形例について説明する。図９に示す変形例は、探索範囲の設定方法（Ｓ１０１〜Ｓ１０８）等が、図６に示した送信条件設定処理における設定方法（Ｓ６３〜Ｓ７１）と異なるのみである。従って、上記実施の形態と同一の構成および処理については同一の番号を付し、説明を省略または簡略化する。
【００７０】
まず、変形例に係る通信装置１が実行するネゴシエーション処理（図４参照）について説明する。変形例に係るネゴシエーション処理のＳ３６では、最大利用帯域は、探索範囲の中心が位置する上限の値Ｏｍａｘでなく、探索範囲の最大値が位置する上限の値Ｒｍａｘに設定される。Ｓ３７では、利用帯域の最小値は、探索範囲の中心が位置する下限の値Ｏｍｉｎでなく、探索範囲の最小値が位置する下限の値Ｒｍｉｎに設定される。同様に、Ｓ４０では「Ｈ＋３Ｂ」の値がＲｍａｘに設定され、Ｓ４１では「Ｈ−３Ｂ」の値がＲｍｉｎに設定される。
【００７１】
図９に示すように、変形例に係る送信条件設定処理では、初回の計測でないと判断されると（Ｓ６１：ＮＯ）、最新計測結果Ｆの値が前回の探索範囲内にあるか否かが判断される（Ｓ１０１）。Ｆの値が前回の探索範囲内にあれば（Ｓ１０１：ＹＥＳ）、ＲｍａｘおよびＲｍｉｎの値に関わらず、次回の探索範囲の中心が一旦Ｆの値に仮決定される（Ｓ１０２）。探索範囲の幅が算出されて、Ｆの値を中心とする次回の探索範囲が仮設定される（Ｓ１０３）。Ｓ１０３において探索範囲の幅を算出する処理は、上記実施の形態におけるＳ７１（図６参照）の処理と同じである。最新計測結果Ｆの値が前回の探索範囲外にあれば（Ｓ１０１：ＮＯ）、上記実施の形態におけるＳ６９（図６参照）と同様に、前回の探索範囲が一方向に拡大されることで、次回の探索範囲が仮設定される（Ｓ１０４）。
【００７２】
次いで、仮設定された探索範囲の最大値がＲｍａｘより大きいか否かが判断される（Ｓ１０５）。最大値がＲｍａｘよりも大きい場合には（Ｓ１０５：ＹＥＳ）、探索範囲の幅は変更されることなく、探索範囲の最大値がＲｍａｘと一致するように、次回の探索範囲が再設定される（Ｓ１０６）。最大値がＲｍａｘ以下であれば（Ｓ１０５：ＮＯ）、仮設定された探索範囲の最小値がＲｍｉｎより小さいか否かが判断される（Ｓ１０７）。最小値がＲｍｉｎよりも小さい場合には（Ｓ１０７：ＹＥＳ）、探索範囲の幅は変更されることなく、探索範囲の最小値がＲｍｉｎと一致するように、次回の探索範囲が再設定される（Ｓ１０８）。最小値がＲｍｉｎ以上であれば（Ｓ１０７：ＮＯ）、仮設定されていた探索範囲がそのまま次回の探索範囲として採用されて、処理はＳ７２へ移行する。
【００７３】
以上のように、通信装置１は、最大利用帯域または分散を用いて、探索範囲の最大値が位置する上限の値を制限してもよい。通信装置１は、探索範囲の最大値が位置する上限の値を設定することで、利用帯域よりも大きい可用帯域を計測する可能性をさらに低くすることができる。従って、通信装置１は、送信するデータに応じて効率よく帯域を計測することができる。なお、上記変形例において、図９のＳ１０１〜Ｓ１０８で探索範囲を設定するＣＰＵ１０が、本発明の「範囲設定手段」として機能する。
【００７４】
上記実施の形態は、他の変形も可能である。例えば、通信装置１は、前述した文献に記載されている帯域計測方式の一部を利用している。しかし、前述した文献に記載されている帯域計測方式以外の方式を利用する場合であっても、本発明を適用できる。例えば、２つのパケットの送信間隔と受信間隔とから帯域を計測する方式（所謂「パケットペア方式」）、および３つのパケットの送信間隔と受信間隔とから帯域を計測する方式（所謂「トレインベース方式」）等の他の方式にも、本発明は適用できる。つまり、複数のパケットの送信間隔と受信間隔とを用いて、メディアデータを送受信しながら帯域を計測する方式であれば、前述した文献に記載されている方式以外の方式であっても本発明を適用できる。
【００７５】
上記の通信装置１は、統計学的な手法を用いて探索範囲を制限する場合、平均利用帯域Ｈと分散Ｂとから「Ｈ＋３Ｂ」および「Ｈ−３Ｂ」を算出する。算出した値を、ＯｍａｘおよびＯｍｉｎの値、またはＲｍａｘおよびＲｍｉｎの値に設定する。しかし、通信装置は、利用帯域の値の標準偏差を算出し、算出した標準偏差と平均利用帯域との和をＯｍａｘまたはＲｍａｘの値に設定してもよい。通信装置は、平均利用帯域と、利用帯域の値の標準偏差との差を、ＯｍｉｎまたはＲｍｉｎの値に設定してもよい。通信装置は、標準偏差を用いることで、探索範囲を効率よく制限することができる。また、前述したように、分散Ｂを用いる場合、分散Ｂにかける値は「３」に限られない。
【００７６】
本発明における「帯域の計測」には、可用帯域を計測することだけでなく、通信に適した帯域が確保されているか否かを判断することも含む。「通信に適した帯域」とは、パケットの送信時間の遅延が許容範囲に収まる帯域の値である。「通信に適した帯域」は、好ましくは送信時間の遅延が生じない使用可能帯域以下の値となる。しかし、使用可能帯域よりも大きい値であっても、送信時間の遅延を許容できる一定の値を「通信に適した帯域」としてもよい。
【００７７】
上記実施の形態では、受信装置が帯域を計測し、計測結果のみを送信装置に通知している。しかし、送信装置、および他のサーバ等が帯域を計測することも可能である。例えば、送信装置が帯域を計測する場合、受信装置は受信間隔と送信間隔とを算出し、算出した受信間隔および送信間隔を送信装置に通知する。送信装置は、受信装置から通知された受信間隔および送信間隔を用いて「受信間隔−送信間隔」の差分の変化時点を検出し、帯域を計測すればよい。但し、受信装置と送信装置との間で送受信されるデータの量は、受信装置から送信装置に計測結果のみを通知する場合に比べて多くなる。
【符号の説明】
【００７８】
１    通信装置
８    ネットワーク
１０  ＣＰＵ
１３    ＨＤＤ
１００    帯域計測システム
【図１】
2011211665.tif 000003
【図２】
2011211665.tif 000004
【図３】
2011211665.tif 000005
【図４】
2011211665.tif 000006
【図５】
2011211665.tif 000007
【図６】
2011211665.tif 000008
【図７】
2011211665.tif 000009
【図８】
2011211665.tif 000010
【図９】
2011211665.tif 000011