JP5392113B2 - 通信装置、通信方法、通信プログラム、および帯域計測システム - Google Patents

通信装置、通信方法、通信プログラム、および帯域計測システム Download PDF

Info

Publication number
JP5392113B2
JP5392113B2 JP2010015008A JP2010015008A JP5392113B2 JP 5392113 B2 JP5392113 B2 JP 5392113B2 JP 2010015008 A JP2010015008 A JP 2010015008A JP 2010015008 A JP2010015008 A JP 2010015008A JP 5392113 B2 JP5392113 B2 JP 5392113B2
Authority
JP
Japan
Prior art keywords
transmission
packets
interval
variation
measurement
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
Application number
JP2010015008A
Other languages
English (en)
Other versions
JP2011155432A (ja
Inventor
健二 尾池
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2010015008A priority Critical patent/JP5392113B2/ja
Priority to PCT/JP2011/050411 priority patent/WO2011093133A1/ja
Publication of JP2011155432A publication Critical patent/JP2011155432A/ja
Application granted granted Critical
Publication of JP5392113B2 publication Critical patent/JP5392113B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/28Timers or timing mechanisms used in protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)

Description

本発明は、ネットワークを介してデータ通信を行う場合に、帯域を計測できるようにデータを送信する通信装置、通信方法、通信プログラム、および帯域計測システムに関する。
インターネット等のネットワークを介して通信装置がデータを送受信する場合、通信装置は、帯域(帯域幅:Available Bandwidth)に適した伝送速度でデータを送受信する必要がある。通信装置が使用可能な帯域は、地域、プロバイダ、時間帯等の状況によって変動する。従って、データを送信する通信装置は、変動する帯域に合わせて伝送速度を制御することが望ましい。
非特許文献1は、変動する帯域を適宜計測するための計測方式を開示している。この計測方式では、送信側の通信装置は、パケットの送信間隔を割り出すための時間情報をパケットに含める。送信側の通信装置は、送信間隔を変更しながら複数のパケットを連続して送信する。受信側の通信装置は、パケットの受信間隔を記録する。その後、パケット内の時間情報によって割り出されるパケットの送信間隔と、受信側の通信装置で記録された受信間隔との差分が算出される。算出された複数の差分の値の変化傾向から、現在の帯域が計測される。
CaoLe Thanh Man、長谷川剛、村田正幸、「サービスオーバーレイネットワークのためのインラインネットワーク計測に関する一検討」、電子情報通信学会技術研究報告、社団法人電子情報通信学会、2003年1月17日、Vol.102、No.565、p.53−58
暗号化等の処理が行われてデータがパケット化された後は、送信側の通信装置は時間情報をパケットに含めることができない。従って、送信側の通信装置は、パケット化を行う前に、パケット化するデータに時間情報を含める必要がある。しかし、通信装置では、データのパケット化を開始してから、パケットの送信が完了するまでに、ある程度の処理時間を要する。処理時間は、例えばOSの種類、通信装置のクロック数、CPU使用率等の処理条件によってばらつく。処理時間がばらつくと、パケット内の時間情報が示す時刻の間隔と、実際のパケットの送信間隔との間に処理時間の変動分のずれが生じ、帯域を精度良く計測することは困難であった。
本発明は、パケットの送信処理の処理時間にばらつきが生じる場合であっても、帯域を精度良く計測できるようにデータを通信することができる通信装置、通信方法、通信プログラム、および帯域計測システムを提供することを目的とする。
本発明の第一の態様に係る通信装置は、連続して送信される複数のパケットの各々の送信処理を行う間隔である送信間隔と、ネットワークを経由して受信された前記複数のパケットの受信間隔とに基づいて帯域を計測できるように、パケットの通信を行う通信装置であって、前記送信間隔を割り出すための時間情報を含むパケットを生成する生成手段と、前記複数のパケットの送信処理に要する処理時間のばらつきを取得するばらつき取得手段と、前記ばらつき取得手段によって取得された前記ばらつきに基づいて、前記複数のパケットの前記送信間隔を少なくとも含む送信条件を決定する送信条件決定手段と、前記生成手段によって生成された前記複数のパケットを、前記送信条件決定手段によって決定された前記送信条件で順次送信する送信手段とを備えている。
パケットの送信処理に要する処理時間がばらつくと、各パケットに含まれる時間情報によって割り出される送信間隔(送信処理を行う間隔)と、各パケットの送信処理が完了した時点の間隔(実際の送信間隔、以下「送信完了間隔」という。)とに誤差が生じる。処理時間のばらつきが大きい程、送信間隔と送信完了間隔との間の誤差が大きくなる。しかし、誤差が生じても、送信間隔に対する誤差の割合が小さければ、誤差が計測結果に与える影響は小さい。第一の態様に係る通信装置は、複数のパケットの送信処理に要する処理時間のばらつきに基づいて、少なくとも送信間隔(送信処理を行う間隔)を含むパケットの送信条件を決定する。その結果、処理時間のばらつきが帯域の計測結果に与える影響を小さくすることができる。よって、通信装置は、帯域を精度良く計測できるようにデータを送信することができる。
前記送信条件決定手段は、前記送信間隔に含まれる複数の間隔のうちの一の間隔と、前記一の間隔の前または後の間隔との差分である送信間隔差が、前記ばらつき取得手段によって取得された前記ばらつきよりも大きくなるように、前記送信間隔を決定してもよい。送信側の通信装置がデータを送信する際の伝送速度が帯域以下であり、且つ送信処理の処理時間のばらつきがなければ、送信間隔と受信間隔とは理論的に同一となる。伝送速度が帯域よりも高ければ、受信間隔は送信間隔よりも長くなる。第一の態様に係る通信装置を含むシステムで用いられる帯域計測方式では、送信側の通信装置は、送信間隔を徐々に短くしながら、または徐々に長くしながら、複数のパケットを送信する。その結果、「受信間隔−送信間隔」の値が変化する時点における伝送速度を、使用可能な帯域とすることができる。ここで、具体的に、送信間隔を徐々に長くしながら複数のパケットを送信する場合を考える。この場合、処理時間のばらつきが送信間隔差よりも大きければ、ある送信完了間隔の長さが、この送信完了間隔よりも前の送信完了間隔よりも短くなる場合が生じ得る。その結果、「受信間隔−送信間隔」の値が変化する時点を検出することが極めて困難になる。通信装置は、送信間隔差を処理時間のばらつきよりも大きくすることで、「受信間隔−送信間隔」の値が変化する時点を精度良く検出できるように、複数のパケットを送信することができる。
前記送信条件決定手段は、前記複数のパケットによる帯域の計測対象範囲である探索範囲と、前記複数のパケットを構成するパケットの数である計測パケット数と、前記複数のパケットを構成する各パケットのパケットサイズとによって、前記送信間隔を算出する第一算出手段と、前記第一算出手段によって算出された前記送信間隔における全ての前記送信間隔差が、前記ばらつき取得手段によって取得された前記ばらつきよりも大きいか否かを判断する第一判断手段と、前記第一判断手段によって、前記送信間隔差の少なくとも一部が前記ばらつき以下であると判断された場合に、前記探索範囲、前記計測パケット数、および前記パケットサイズの少なくとも1つを変更する変更手段とを備えてもよい。この場合、通信装置は、探索範囲、計測バケット数、およびパケットサイズの少なくとも1つを変更することで、送信間隔差がばらつきよりも大きくなる送信条件を的確に決定することができる。
前記変更手段は、前記探索範囲および前記パケットサイズを固定したまま前記計測パケット数を減少させてもよい。この場合、探索範囲およびパケットサイズが同じであるため、計測パケット数を減少させることで、送信間隔差は大きくなる。従って、通信装置は、探索範囲を広げることによる帯域の計測精度の低下、および、パケットサイズを変更することによる処理負担の増大を生じさせること無く、処理時間のばらつきが帯域の計測結果に与える影響を低下させることができる。
前記送信条件決定手段は、前記送信間隔差の少なくとも一部が前記ばらつき以下であると前記第一判断手段によって判断された場合に、前記計測パケット数が第一閾値以下であるか否かを判断する第二判断手段をさらに備えてもよい。前記変更手段は、前記第二判断手段によって前記計測パケット数が前記第一閾値以下であると判断された場合は、前記探索範囲を広げて再設定するとよい。前記変更手段は、前記第二判断手段によって前記計測パケット数が前記第一閾値より大きいと判断された場合に、前記探索範囲および前記パケットサイズを固定したまま前記計測パケット数を減少させればよい。計測パケット数を減少させすぎると、「受信間隔−送信間隔」の値が変化する時点を細かく検出することができず、帯域の計測精度が大きく低下する。通信装置は、計測パケット数が第一閾値以下である場合、探索範囲を広げて再設定することで、計測パケット数の減少による計測精度の大幅な低下を防止しつつ、適切な送信条件を決定することができる。一方、計測パケット数が第一閾値よりも大きければ、計測パケット数の減少が計測精度に与える影響は小さい。この場合、通信装置は、計測パケット数を減少させることで、探索範囲を広げることによる計測精度の大幅な低下を防止しつつ、適切な送信条件を決定することができる。
前記送信条件決定手段は、全ての前記送信間隔差が前記ばらつきよりも大きいと前記第一判断手段によって判断された場合に、前記計測パケット数が第二閾値以上であるか否かを判断する第三判断手段と、前記第三判断手段によって前記計測パケット数が前記第二閾値より小さいと判断された場合に、前記計測パケット数を前記第二閾値を限度として増加させる増加手段とをさらに備えてもよい。計測パケット数を増加させすぎると、帯域の計測に要する処理負担が増大する。しかし、通信装置は、処理負担が増大しすぎない範囲内で計測パケット数を増加させることで、帯域の計測精度を向上させることができる。
前記通信装置は、前記複数のパケットの各々の送信処理に要する処理時間を複数取得する処理時間取得手段をさらに備えてもよい。前記ばらつき取得手段は、前記処理時間取得手段によって取得された複数の処理時間の標準偏差を前記ばらつきとして取得するのが望ましい。この場合、通信装置は、処理時間の標準偏差をばらつきとして用いることで、効率良く的確に送信条件を決定することができる。
前記処理時間取得手段は、前記生成手段によって生成されたパケットを自らに送信して受信するまでに要した時間から処理時間を取得してもよい。この場合、通信装置は、その時点での処理時間を的確に取得することができる。
前記通信装置は、前記通信装置のOSの種類、前記通信装置のクロック数、および前記通信装置のCPU使用率の少なくともいずれかを含む通信装置の処理条件と、前記ばらつきとを対応付けたテーブルを記憶する記憶手段から、前記テーブルの情報を取得する情報取得手段をさらに備えてもよい。前記ばらつき取得手段は、前記情報取得手段によって取得された前記テーブルの情報を参照し、現在の前記処理条件に対応付けられているばらつきを取得すればよい。この場合、通信装置は、テーブルの情報を参照するだけで容易にばらつきを取得することができる。
前記通信装置は、連続して送信された複数のパケットを受信する受信手段と、前記受信手段が受信した前記複数のパケットの受信間隔を取得する受信間隔取得手段と、前記受信手段が受信した前記複数のパケットの各々に含まれる前記時間情報から、受信した前記複数のパケットの送信間隔を取得する送信間隔取得手段と、前記受信間隔取得手段によって取得された前記受信間隔と、前記送信間隔取得手段によって取得された前記送信間隔とに基づいて帯域を計測する計測手段とをさらに備えてもよい。この場合、通信装置は、送信側の通信装置および受信側の通信装置のいずれとしても機能することができる。従って、通信装置は、他の通信装置と通信を行う場合、相手側の通信装置が送信側および受信側のいずれかの機能しか有さない場合でも、容易に帯域を計測することができる。
本発明の第二の態様に係る通信方法は、連続して送信される複数のパケットの各々の送信処理を行う間隔である送信間隔と、ネットワークを経由して受信された前記複数のパケットの受信間隔とに基づいて帯域を計測できるように、パケットの通信を行う通信装置によって行われる通信方法であって、前記送信間隔を割り出すための時間情報を含むパケットを生成する生成ステップと、前記複数のパケットの送信処理に要する処理時間のばらつきを取得するばらつき取得ステップと、前記ばらつき取得ステップによって取得された前記ばらつきに基づいて、前記複数のパケットの前記送信間隔を少なくとも含む送信条件を決定する送信条件決定ステップと、前記生成ステップによって生成された前記複数のパケットを、前記送信条件決定ステップによって決定された前記送信条件で順次送信する送信ステップとを備えている。
第二の態様に係る通信方法によると、処理時間のばらつきが帯域の計測結果に与える影響を小さくすることができる。よって、帯域を精度良く計測できるようにデータが送信される。
本発明の第三の態様に係る通信プログラムは、連続して送信される複数のパケットの各々の送信処理を行う間隔である送信間隔と、ネットワークを経由して受信された前記複数のパケットの受信間隔とに基づいて帯域を計測できるように、パケットの通信を行う通信装置の動作を制御する通信プログラムであって、コンピュータに、前記送信間隔を割り出すための時間情報を含むパケットを生成する生成ステップと、前記複数のパケットの送信処理に要する処理時間のばらつきを取得するばらつき取得ステップと、前記ばらつき取得ステップによって取得された前記ばらつきに基づいて、前記複数のパケットの前記送信間隔を少なくとも含む送信条件を決定する送信条件決定ステップと、前記生成ステップによって生成された前記複数のパケットを、前記送信条件決定ステップによって決定された前記送信条件で順次送信する送信ステップとを実行させることを特徴とする。
第三の態様に係る通信プログラムによると、処理時間のばらつきが帯域の計測結果に与える影響を小さくすることができる。よって、通信装置は、帯域を精度良く計測できるようにデータを送信することができる。
本発明の第四の態様に係る帯域計測システムは、複数のパケットを連続して送信する送信装置と、前記送信装置によって送信される前記複数のパケットをネットワークを経由して受信する受信装置とを備え、前記送信装置において前記複数のパケットの各々の送信処理を行う間隔である送信間隔と、前記受信装置における前記複数のパケットの受信間隔とに基づいて、前記送信装置と前記受信装置との間の帯域を計測する帯域計測システムであって、前記送信装置は、前記送信間隔を割り出すための時間情報を含むパケットを生成する生成手段と、前記複数のパケットの送信処理に要する処理時間のばらつきを取得するばらつき取得手段と、前記ばらつき取得手段によって取得された前記ばらつきに基づいて、前記複数のパケットの前記送信間隔を少なくとも含む送信条件を決定する送信条件決定手段と、前記生成手段によって生成された前記複数のパケットを、前記送信条件決定手段によって決定された前記送信条件で順次送信する送信手段とを備え、前記受信装置は、前記複数のパケットを受信する受信手段と、前記受信手段が受信した前記複数のパケットの受信間隔を取得する受信間隔取得手段と、前記受信手段が受信した前記複数のパケットの各々に含まれる前記時間情報から、前記複数のパケットの送信間隔を取得する送信間隔取得手段と、前記受信間隔取得手段によって取得された前記受信間隔と、前記送信間隔取得手段によって取得された前記送信間隔とに基づいて、前記送信装置との間の帯域を計測する計測手段とを備えている。
第四の態様に係る帯域計測システムは、処理時間のばらつきが帯域の計測結果に与える影響を小さくすることができる。よって、受信装置は、帯域を精度良く計測することができる。
通信装置1の電気的構成、および帯域計測システム100の構成を示す図である。 通信装置1が送信装置として動作する場合に実行する送信メイン処理のフローチャートである。 送信メイン処理中に実行されるばらつき取得処理のフローチャートである。 送信メイン処理中に実行される送信条件決定処理のフローチャートである。 送信メイン処理中に実行される送信処理のフローチャートである。 通信装置1が受信装置として動作する場合に実行する受信メイン処理のフローチャートである。 受信メイン処理中に実行される受信処理のフローチャートである。 受信装置のRAM12のパケット情報記憶エリアに記憶されるデータの構成を示す模式図である。 受信メイン処理中に実行される帯域計測処理のフローチャートである。 変形例に係る送信装置のHDD13に記憶されるばらつき決定テーブルの構成を示す模式図である。
以下、本発明の通信装置を具現化した一実施の形態である通信装置1、および複数の通信装置1を備えた帯域計測システム100について、図面を参照して説明する。なお、参照する図面は、本発明が採用し得る技術的特徴を説明するために用いられるものである。図面に記載されている装置の構成、各種処理のフローチャート等は、それのみに限定する趣旨ではなく、単なる説明例である。
帯域計測システム100について説明する。図1に示すように、帯域計測システム100は、少なくとも2つの通信装置1を備える。通信装置1は、ネットワーク8を介して他の通信装置1と接続する。通信装置1は、他の通信装置1との間で各種データの通信を行う。
本実施の形態の帯域計測システム100は、複数の拠点のユーザがテレビ会議を行うためのテレビ会議システムである。各通信装置1は、画像データおよび音声データを互いに送受信することで、複数の拠点の映像および音声を共有する。通信装置1は、ネットワーク1を介したデータ通信を実行できるものであればよい。具体的には、テレビ会議を実行するために各拠点に配置される専用のテレビ会議端末であってもよいし、種々の情報処理を行うパーソナルコンピュータであってもよい。
帯域計測システム100では、各通信装置1が画像データおよび音声データをパケット化して送受信しつつ、通信相手の通信装置1との間で使用可能な帯域が計測される。使用可能な帯域を越える伝送速度でパケットが送信されると、パケットロス、送信遅延等が生じる。一方、伝送速度を低くしすぎると、帯域を十分に活用することができず、効率が悪い。従って、各通信装置1は、計測された帯域に合わせて伝送速度を制御する。ここで、「使用可能な帯域」とは、送信側の通信装置1が送信するデータの伝送速度とほぼ等しい伝送速度で受信側の通信装置1がデータを受信できる最大の伝送速度をいう。帯域と、各通信装置1間の伝送速度とを比較するため、帯域を伝送路容量(bps)で表す。
通信装置1の電気的構成について説明する。図1に示すように、通信装置1は、通信装置1の制御を司るCPU10を備えている。CPU10には、ROM11、RAM12、ハードディスクドライブ(以下、「HDD」という。)13、および入出力インターフェース19が、バス18を介して接続されている。
ROM11は、通信装置1を動作させるためのプログラムおよび初期値等を記憶している。RAM12は、制御プログラムで使用される各種の情報を一時的に記憶する。HDD13は、制御プログラム等の各種の情報を記憶する不揮発性の記憶装置である。HDDの代わりに、EEPROMまたはメモリカード等の記憶装置を用いてもよい。
入出力インターフェース19には、音声入力処理部21、音声出力処理部22、映像入力処理部23、映像出力処理部24、操作部25、および外部通信I/F26が接続されている。音声入力処理部21は、音声を入力するマイク31からの音声データの入力を処理する。音声出力処理部22は、音声を出力するスピーカ32の動作を処理する。映像入力処理部23は、映像を撮像するカメラ33からの映像データ(動画像データ)の入力を処理する。映像出力処理部24は、映像を表示する表示装置34の動作を処理する。操作部25は、ユーザが通信装置1に各種指示を入力するために用いられる。操作部25は、通信装置1の外部から、入出力インターフェース19へ接続されるものであってもよい。外部通信I/F26は、通信装置1をネットワーク8に接続する。
次に、本実施の形態の帯域計測システム100で用いられる帯域計測方式について、概略的に説明する。帯域計測システム100で用いられる帯域計測方式は、以下の文献に記載されている公知の方式である。「CaoLe Thanh Man,長谷川剛,村田正幸,「サービスオーバーレイネットワークのためのインラインネットワーク計測に関する一検討」,電子情報通信学会技術研究報告,社団法人電子情報通信学会,2003年1月17日,Vol.102,No.565,pp.53−58」なお、本発明を適用できる帯域計測方式は、上記文献に記載されている方式に限られない。パケットの送信間隔および受信間隔を利用して帯域を計測する方式であれば、本発明の適用は可能である。
計測原理について説明する。帯域計測システム100では、データを送信する通信装置1(以下、「送信装置」という。)は、データを複数のパケットにパケット化する。送信装置は、複数のパケットを連続して他の通信装置1(以下、「受信装置」という。)にネットワーク8を介して送信する。パケットを送信する際の伝送速度(単位:bps)が、送信装置と受信装置との間で使用できる帯域(単位:bps)以下であれば、パケットは渋滞しない。この場合、送信装置によって送信された複数のパケットを受信装置が受信する間隔(受信間隔)は、理論的に送信間隔と同一となる。一方、伝送速度が帯域よりも高ければ、パケットは渋滞し、受信間隔は送信間隔よりも長くなる。
帯域を計測する場合、送信装置は、送信間隔を徐々に長くしながら、または徐々に短くしながら、複数のパケットを送信する。あるパケットが送信された場合の伝送速度は、以下の式(1)
伝送速度(bps)=パケットサイズ(bit)/前回のパケット送信時と今回のパケット送信時との時間間隔(s)・・・・・(1)
で求められる。送信間隔を徐々に長くしながら複数のパケットを送信すると、伝送速度が帯域よりも大きい間は、受信間隔が送信間隔よりも長くなる。しかし、送信間隔が長くなり、伝送速度が帯域以下となれば、受信間隔と送信間隔とが同一となる。よって、「受信間隔−送信間隔」の値が変化する時点の伝送速度を、帯域として計測することができる。
計測手順について説明する。帯域計測システム100では、大まかに、以下の手順で帯域が計測される。
1.帯域の初期探索範囲を設定する。
その時点の帯域を計測できると予想される探索範囲を限定することで、効率よく帯域を計測することができる。
2.探索範囲に対応する複数のパケット(計測ストリーム)を送受信する。
まず、探索範囲内の帯域を計測するための複数のパケットの送信条件が決定される。送信条件には、複数のパケットを構成するパケットの数(以下、「計測パケット数」という。)、各パケットのパケットサイズ、および、前回のパケット送信時から次のパケットを送信するまでの時間である送信間隔が含まれる。本実施の形態では、送信間隔は徐々に長くなるように決定されるため、探索範囲の上限値から下限値へ順に帯域が探索されることになる。次いで、決定された送信条件に従って、送信装置から複数のパケットが送信される。各パケットには、受信装置が送信間隔を割り出すための時間情報が含まれる。なお、探索範囲を複数の小区間に分割し、小区間毎に計測ストリームを送信することで、一時的な異常に対する耐性が高い計測結果を得ることができるが、この詳細については省略する。
3.受信間隔と送信間隔との差分から、送信装置と受信装置との間で利用できる帯域を計測する。
受信装置がパケットを実際に受信した時刻から、受信間隔が割り出される。受信されたパケットに含まれる時間情報から、送信間隔が割り出される。次いで、パケットが送信された際の伝送速度と、パケットが受信された際の受信レート(bps)との関係が、線形回帰法によって2本の直線で近似される。その結果、「受信間隔―送信間隔」の値が変化する時点が割り出され、帯域が計測される。「受信間隔―送信間隔」の変化が探索範囲内で割り出されなければ、探索範囲の下限または上限が暫定的に帯域とされる。
4.探索範囲を再設定し、上記2.へ戻る。
過去の計測結果から統計的に次の探索範囲を再設定することで、効率よく帯域を計測できる。探索範囲を再設定するための計算式等は、上記文献に記載されているため、説明を省略する。
以上説明したように、パケットの送信間隔および受信間隔を利用して帯域を計測する方式では、複数のパケットの送信間隔が重要である。受信装置が送信間隔を正確に割り出すために、送信装置は、パケットを送信する瞬間の時間の情報をパケットに含めることが望ましい。しかし、送信装置は、暗号化等の処理を行ってデータをパケット化した後は、時間情報をパケットに含めることができない。従って、パケットに含まれる時間情報から割り出される送信間隔は、送信装置で各パケットの送信処理を行う間隔となる。送信装置では、データをパケット化して送信を完了するまでに、ある程度の処理時間を要する。処理時間は、OSの種類、通信装置のクロック数、CPU10の使用率等の処理条件によってばらつく(揺らぐ)。処理時間がばらつくと、パケット内の時間情報によって割り出される送信間隔と、実際のパケットの送信間隔である送信完了間隔との間に、処理時間のばらつき分のずれが生じる。その結果、計測された帯域と実際の帯域との間にずれが生じ、帯域の計測精度が低下する。
上記の方式では、送信装置は送信間隔を変更しながら複数のパケットを送信するが、送信間隔を変更する度合いが細かい程、処理時間のばらつきが計測結果に与える影響は大きくなる。詳細には、送信装置は、送信完了間隔を徐々に長く、または徐々に短くする必要がある。しかし、一連の計測ストリームにおける送信間隔のうちの一の間隔と他の間隔との差分である送信間隔差が、処理時間のばらつきと同じになれば、同一の送信完了間隔でパケットが送信される場合が生じる。送信間隔差が処理時間のばらつきよりも小さければ、送信完了間隔を徐々に長くすべき場合でも、送信完了間隔の一部が、その送信完了間隔よりも前の送信完了間隔より短くなり得る。送信完了間隔を徐々に短くする場合も同様の問題が生じる。その結果、「受信間隔―送信間隔」の値が変化する時点を割り出すことが極めて困難になる。
本実施の形態の帯域計測システム100では、送信装置は、複数のパケットの送信条件のうち、少なくとも複数のパケットの送信間隔を、処理時間のばらつきに基づいて決定する。その結果、送信装置は、処理時間のばらつきが帯域の計測結果に与える影響を小さくし、帯域の計測精度を向上させることができる。以下、通信装置1が行う処理について、詳細に説明する。
図2から図5を参照して、計測パケットを送信する送信装置として通信装置1が動作する場合に実行される送信メイン処理について説明する。送信メイン処理は、受信装置との間でデータを送受信する指示が入力されると、HDD13に記憶されているプログラムに従って、送信装置のCPU10によって実行される。
図2に示すように、送信メイン処理が開始されると、帯域を計測するためのパケットの送信を終了させる指示があったか否かが判断される(S1)。終了指示がなければ(S1:NO)、ばらつき取得処理が行われる(S2)。ばらつき取得処理では、計測パケットの送信処理に要する処理時間のばらつきが取得される。次いで、送信条件決定処理が行われる(S3)。送信条件決定処理では、取得されたばらつきに基づいて、複数の計測パケットの送信間隔、帯域の探索範囲、計測パケット数N、および各々の計測パケットのパケットサイズPsが送信条件として決定される。次いで、決定された計測パケット数Nを示すデータが受信装置に送信されて(S4)、送信処理が行われる(S5)。送信処理では、複数の計測パケットが生成され、決定された送信条件に従って受信装置に順次送信される。帯域の計測結果を示すデータが受信装置から受信されて(S6)、処理はS1の判断へ戻る。パケット送信の終了指示が行われるまで(S1:NO)、S2〜S6の処理が繰り返し行われる。終了指示が行われると(S1:YES)、送信メイン処理は終了する。
図3を参照して、送信メイン処理中に実行されるばらつき取得処理について詳細に説明する。本実施の形態では、1つのパケットの送信処理に要する処理時間が複数回取得される。取得された複数の処理時間の標準偏差がばらつきとして取得される。まず、ばらつき取得処理では、現在時刻が送信時刻として取得される(S11)。取得された送信時刻の時刻情報を含むパケットが、処理時間計測パケットとして生成される(S12)。処理時間計測パケットは、特に意味のあるデータを持たないが、受信装置に前回送信された計測パケットと同じパケットサイズとされる。その結果、実際に受信装置に送信される計測パケットの処理時間と同様の処理時間を取得することができる。
次いで、生成された処理時間計測パケットが、ネットワーク8を介さずに自分宛てに送信される(S13)。送信された処理時間計測パケットが、パケットを送信した送信装置自身によって受信される(S14)。受信した時点の現在時刻が、受信時刻として取得される(S15)。取得された受信時刻と、受信した処理時間計測パケットに含まれる送信時刻との差分が算出されることで、1つのパケットに対する処理時間が取得される(S16)。次いで、所定数(例えば10)の処理時間の取得が完了したか否かが判断される(S17)。所定数の処理時間が未だ取得されていなければ(S17:NO)、S11〜S16の処理が再び行われる。所定数の処理時間が取得された場合には(S17:YES)、取得された所定数の処理時間の標準偏差が算出される。算出された標準偏差が処理時間のばらつきとして取得されて(S18)、処理は送信メイン処理へ戻る。次いで、送信条件決定処理が行われる(S3、図2参照)。
図4を参照して、送信条件決定処理について詳細に説明する。まず、繰り返し実行される帯域の計測処理における初回の計測処理であるか否かが判断される(S21)。換言すると、現在の受信装置との間の帯域が未だ1度も計測されていないか判断される。初回の計測処理であれば(S21:YES)、初期探索範囲、計測パケット数N、および各計測パケットのパケットサイズPsが、所定の値に設定される(S22)。本実施の形態では、所定の値としてデフォルト値が用いられる。一例として、初期探索範囲が0.5Mbps〜1.5Mbps、計測パケット数Nが25、パケットサイズPsが1500byteに設定される。しかし、これらの値の設定方法は変更できる。例えば、他の帯域計測方法によって計測された帯域を参照して各値を設定してもよい。一方、初回の計測処理でなければ(S21:NO)、過去に計測された受信端末との間の帯域から、統計的な手法を用いて帯域の探索範囲が再設定される。この手法は前述した文献に記載されているため、詳細な説明は省略する。統計的な手法を用いることで、帯域を効率良く、且つ精度良く計測するための探索範囲を再設定することができる。
次いで、設定された探索範囲が(N−1)で等分される(S25)。その結果、各計測パケットが探索する帯域の値である探索帯域値Ki(i=1,...,N−1)が一意に定まる。次いで、各探索帯域値Kiを探索するための、各計測パケットの送信間隔が算出される(S26)。1つの探索帯域値Ki(bps)を探索するための送信間隔は、パケットサイズ(bit)をPsとして以下の式(2)で求められる。
Ps/Ki・・・・・(2)
算出された送信間隔から送信間隔差が算出され、算出された送信間隔差のうちの最小の値がばらつきよりも大きいか否かが判断される(S27)。前述したように、送信間隔差とは、一連の計測ストリームにおける送信間隔のうちの一の間隔と他の間隔との差分である。複数の送信間隔差のうちの最小値がばらつきよりも大きければ、全ての送信間隔差はばらつきよりも大きくなる。CPU10は、最小の送信間隔差のみをばらつきと比較することで、複数の送信間隔差とばらつきとの比較を容易に行うことができる。
最小の送信間隔差がばらつきよりも大きければ(S27:YES)、計測パケット数Nがあらかじめ定められた上限値以上であるか否かが判断される(S28)。本実施形態が採用する帯域計測方式では、計測パケット数Nが多い程、「受信間隔−送信間隔」の変化時点を細かく検出できるので、精度良く帯域を計測できる。一方で、計測パケット数Nが多すぎると、計測処理の遅延等が生じるおそれがある。送信装置は、計測処理の遅延等の問題が生じる可能性が低い計測パケット数Nの上限値を、あらかじめHDD13に記憶している。計測パケット数Nが上限値より小さいと判断された場合には(S28:NO)、その時点で設定されている送信条件が記憶される(S29)。帯域の計測精度を上げるために、探索範囲およびパケットサイズPsが固定されたまま、計測パケット数Nが上限値を限度に増加されて(S30)、処理はS25へ戻る。本実施の形態では、計測パケット数Nは「1」ずつ増加されるため、上限値を超えることはない。しかし、増加させる計測パケット数Nの値は変更できる。計測パケット数Nの値が上限値を超えなければ、一度に「2」以上の値を増加させてもよい。
なお、探索範囲を変更せずに計測パケット数Nを増加させると、「受信間隔−送信間隔」の変化時点は細かく検出できるが、送信間隔差は短くなる。よって、計測パケット数Nを増加させすぎると、最小の送信間隔差がばらつき以下となる場合がある(S27:NO)。この場合、最小の送信間隔差がばらつきよりも大きくなる送信条件(以下、「処理時間条件を満たす送信条件」と言う。)が既に設定・記憶されているか否かが判断される(S32)。処理時間条件を満たす送信条件がS29で記憶されていれば(S32:YES)、最後に記憶された最新の送信条件が、実際に使用する送信条件として決定されて(S33)、処理は送信メイン処理に戻る。また、計測パケット数Nが上限値に達した場合には(S28:YES)、その時点で設定されている送信条件は変更されずに、処理は送信メイン処理に戻る。なお、処理がメイン処理に戻る際、S28で記憶された送信条件は全て消去される。
設定された送信条件が処理時間条件を満たさず(S27:NO)、それ以前にも処理時間条件を満たす送信条件が設定されていなければ(S32:NO)、計測パケット数Nが下限値以下であるか否かが判断される(S35)。計測パケット数Nを減少させすぎると、送信間隔差は長くなるが、「受信間隔−送信間隔」の変化時点を細かく検出することができず、計測精度は大きく低下する。送信装置は、帯域の計測精度が低下するおそれの低い計測パケット数Nの下限値を、あらかじめHDD13に記憶している。計測パケット数Nが下限値よりも大きい場合には(S35:NO)、探索範囲およびパケットサイズPsが固定されたまま、計測パケット数Nが減少されて(S36)、処理はS25に戻る。本実施の形態では、計測パケット数Nは「1」ずつ減少される。しかし、計測パケット数Nの値が下限値を超えなければ、一度に「2」以上の値を減少させてもよい。
なお、2回目以降の送信条件決定処理では、探索範囲は過去の帯域の計測結果から統計的な手法で設定される。統計的な手法で探索範囲を設定することで、効率良く、且つ精度良く帯域を計測することができる。従って、既に設定されている探索範囲を固定したまま、計測パケット数Nを減少、またはパケットサイズPsを増加させることで、送信間隔差を長くすることが望ましい。また、パケットサイズPsを変更すると、通信装置1の処理負担が増大する。従って、パケットサイズPsを固定して計測パケット数Nを変更することが、さらに望ましい。
計測パケット数Nが下限値以下であれば、送信間隔差が処理時間条件を満たすように、探索範囲が強制的に再設定される(S37)。以下、探索範囲を強制的に再設定する処理について説明する。まず、取得されたばらつきよりも僅かに大きい最小の送信間隔差Tが決定される。S22またはS23で設定されていた探索範囲の中央値Bが割り出される。再設定される新たな探索範囲のうち最大の探索帯域値をKmとし、新たな探索範囲の上限値と下限値との間の幅をRとすると、以下の式(3)が成立する。
Km=B+R/2・・・・・(3)
また、本実施の形態では、探索範囲を(N−1)で等分して各探索帯域値Kiを割り出す。従って、2番目に大きい探索帯域値Ksと最大の探索帯域値Kmとの差Lは、以下で求められる。
L=R/(N−1)・・・・・(4)
よって、2番目に大きい探索帯域値Ksは、以下の式(5)で表される。
Ks=Km−L=B+R/2−R/(N−1)・・・・・(5)
本実施の形態で採用される帯域計測方式では、最大の探索帯域値Kmを探索するための送信間隔と、2番目に大きい探索帯域値Ksを探索するための送信間隔との差が、最小の送信間隔差となる。最小の送信間隔差がTとなれば、処理時間条件を満たすこととなる。送信間隔は、前述した式(2)で求められるため、以下の式(6)が成立すれば処理時間条件を満たすこととなる。
T=Ps/Ks−Ps/Km・・・・・(6)
式(3)(5)(6)を解いてRの値を求めることで、新たな探索範囲を再設定することができる。なお、本実施の形態では、新たな探索範囲が再設定される場合、既に設定されている最新の計測パケット数NおよびパケットサイズPsがそのまま用いられる。
新たな探索範囲が再設定されると、S25の処理と同様に、新たな探索範囲が(N−1)で等分される(S38)。S26の処理と同様に、式(2)によって送信間隔が算出される(S39)。ここで算出された送信間隔における最小の送信間隔差はTとなり、処理時間条件を満たす。算出された送信間隔が送信条件の1つとして決定されて、処理は送信メイン処理に戻る。図2に示すように、送信条件決定処理が終了すると、計測パケット数Nが受信端末に通知されて(S4)、送信処理が行われる(S5)。
図5を参照して、送信処理について詳細に説明する。送信処理では、まず、決定されたパケットサイズPsの計測パケットが生成される(S41)。計測パケットには、画像データ等と、パケット番号の情報と、前回送信された計測パケットとの間の送信間隔を示す時間情報とが含まれる。パケット番号は、計測ストリーム中の各計測パケットの順番を示す番号であり、通し番号等が用いられる。次いで、決定されている送信間隔だけ待機される(S42)。
待機時間が経過すると、生成された計測パケットが受信端末に送信される(S43)。計測ストリーム中のN個の計測パケットが全て送信されたか否かが判断され(S44)、送信されていなければ(S44:NO)、S41〜S43の処理が繰り返し行われる。N個の計測パケットが送信された場合(S44:YES)、処理は送信メイン処理へ戻る。以上で、1回の計測ストリームの送信処理が終了する。
次に、図6から図9を参照して、受信メイン処理について説明する。受信メイン処理は、計測パケットを受信して帯域を計測する受信装置として通信装置1が動作する場合に実行される。受信メイン処理は、送信装置との間でデータを送受信する指示が入力されると、HDD13に記憶されているプログラムに従って、受信装置のCPU10によって実行される。
図6に示すように、受信メイン処理が開始されると、帯域を計測するためのパケットの受信を終了させる指示があったか否かが判断される(S51)。終了指示がなければ(S51:NO)、計測パケット数Nを示すデータが送信装置から受信されて、計測パケット数Nが認識される(S52)。受信処理において、送信端末から送信された計測パケットが受信される(S53)。帯域計測処理において、送信端末との間で使用できる帯域が計測される(S54)。帯域の計測結果が送信端末に送信されて(S55)、処理はS51の判断へ戻る。パケット受信の終了指示が行われるまで(S51:NO)、S52〜S55の処理が繰り返し行われる。終了指示が行われると(S51:YES)、受信メイン処理は終了する。
図7および図8を参照して、受信処理について詳細に説明する。受信処理では、まず、送信端末から送信された計測パケットの1つが受信される(S61)。計測パケットが受信されると、その時点の時刻が受信時刻として取得される(S62)。前回の計測パケットの受信時刻との間の時間間隔である受信間隔が算出される(S63)。受信された計測パケットに含まれるデータから、パケット番号および送信間隔が抽出される(S64)。抽出された送信間隔と算出された受信間隔とが、パケット番号に対応付けられて、受信装置のRAM12のパケット情報記憶エリア(図8参照)に順に記憶される(S65)。計測ストリーム中のN個の計測パケットが全て受信されたか否かが判断される(S66)。受信を完了していなければ(S66:NO)、S61〜S65の処理が繰り返し行われる。N個の計測パケットの受信が完了した場合(S66:YES)、処理は受信メイン処理(図6参照)に戻り、帯域計測処理(S54)が行われる。
図9を参照して、帯域計測処理について詳細に説明する。帯域計測処理が開始されると、パケット情報記憶エリア(図8参照)に記憶された受信間隔と送信間隔との差分が、パケット番号毎に算出される(S71)。線形回帰法によって、「受信間隔−送信間隔」の差分の値が変化し始める時点が検出される(S72)。変化時点が検出された場合には(S73:YES)、変化時点の探索帯域値Kiが、送信装置との間で使用できる帯域と判定されて(S74)、処理は受信メイン処理に戻る。「受信間隔−送信間隔」の差分の変化時点が検出されなかった場合(S73:NO)、探索範囲中の全範囲で差分が概ね「0」であったか否かが判断される(S75)。差分が概ね「0」であれば(S75:YES)、使用可能帯域は探索範囲を上回ると判定され(S76)、探索範囲の上限値が暫定的な計測結果とされて、処理は受信メイン処理に戻る。探索範囲中の全範囲で、「受信間隔−送信間隔」の差分が正の値をとっていれば(S75:NO)、使用可能帯域は探索範囲を下回ると判定される(S77)。この場合、探索範囲の下限値が暫定的な計測結果とされて、処理は受信メイン処理に戻る。受信メイン処理(図6参照)では、計測された帯域が送信装置に通知されて(S55)、1回の計測ストリームを受信する処理が完了する。
以上説明したように、本実施の形態に係る通信装置1は、計測パケットの送信処理に要する処理時間のばらつきに基づいて、計測パケットの送信条件を決定する。具体的に、通信装置1は、複数の送信条件のうち、少なくとも計測パケットの送信処理を行う間隔である送信間隔を、ばらつきに基づいて決定する。その結果、通信装置1は、処理時間のばらつきが帯域の計測結果に与える影響を小さくすることができる。よって、通信装置1は、帯域を精度良く計測できるように計測パケットを送信することができる。詳細には、通信装置1は、送信間隔差が処理時間のばらつきよりも大きくなるように送信間隔を決定する。従って、通信装置1は、「受信間隔−送信間隔」の差分の変化時点を精度良く検出できるように、複数の計測パケットを送信することができる。
通信装置1は、送信間隔差の少なくとも一部がばらつき以下であれば、探索範囲、計測パケット数N、およびパケットサイズPsの少なくとも1つを変更する。その結果、通信装置1は、送信間隔差がばらつきよりも大きくなる送信条件を的確に決定することができる。特に、本実施の形態の通信装置1は、送信間隔差の一部がばらつき以下であれば、探索範囲およびパケットサイズPsを固定したまま計測パケット数Nを減少させて、送信間隔差を長くする。探索範囲は、帯域を効率よく計測できるように、統計的な手法で設定されている。さらに、探索範囲を広げると帯域の計測精度は低下する。よって、探索範囲を変更することは望ましくない。また、パケットサイズPsを変更すると、通信装置1の処理負担が増大する。通信装置1は、計測パケット数Nのみを減少させることで、効率良く送信間隔差を長くすることができる。
但し、計測パケット数Nを減少させすぎると、「受信間隔−送信間隔」の変化時点の検出精度が大きく低下する。従って、通信装置1は、計測パケット数Nが下限値以下であれば、最小の送信間隔差がばらつきよりも僅かに大きくなるように探索範囲を再設定する。その結果、通信装置1は、計測パケット数Nの減少による計測精度の大幅な低下を防止しつつ、適切な送信条件を決定することができる。一方、通信装置1は、計測パケット数Nが下限値よりも大きければ、計測パケット数Nを減少させることで、探索範囲を変更することによる計測精度の大幅な低下を防止しつつ、適切な送信条件を決定することができる。
計測パケット数Nが多いほうが、帯域の計測精度は高い。しかし、計測パケット数Nを増加させすぎると、帯域の計測に要する処理負担が増大する。通信装置1は、処理負担が増大しすぎない範囲内で計測パケット数Nを増加させることで、計測精度を向上させることができる。
通信装置1は、パケットの送信処理に要する処理時間の標準偏差をばらつきとして用いることで、効率良く的確に送信条件を決定することができる。通信装置1は、生成したパケットを自らに送信して受信するまでに要した時間から処理時間を取得し、標準偏差を算出する。その結果、処理時間および標準偏差を的確に取得することができる。
通信装置1は、送信装置および受信装置のいずれとしても機能することができる。従って、通信装置1は、他の装置と通信を行う場合、相手側の装置が送信装置および受信装置のいずれかの機能しか有さない場合でも、容易に帯域を計測することができる。通信装置1は、受信装置として機能する場合、計測パケットに含まれる情報と受信間隔とを用いて、帯域を自ら計測することができる。受信装置は、計測結果のみを送信装置に通知すればよいため、送信装置との間で送受信されるデータの量を過度に増大させることなく、計測結果を送信装置との間で共有することができる。
上記実施の形態において、図3のS12および図5のS41でパケットを生成するCPU10が「生成手段」として機能する。図3に示すばらつき取得処理を行うCPU10が「ばらつき取得手段」として機能する。図4に示す送信条件決定処理を行うCPU10が「送信条件決定手段」として機能する。図5に示す送信処理を行うCPU10が「送信手段」として機能する。図4のS25,S26,S38,S39で送信間隔を算出するCPU10が「第一算出手段」として機能する。図4のS27で最小の送信間隔差がばらつきよりも大きいか否かを判断するCPU10が「第一判断手段」として機能する。図4のS36およびS37で探索範囲、計測パケット数N、およびパケットサイズPsの少なくともいずれかを変更するCPU10が「変更手段」として機能する。
本実施の形態の下限値が本発明の「第一閾値」に相当し、上限値が「第二閾値」に相当する。図4のS35で計測パケット数Nが下限値以下であるか否かを判断するCPU10が「第二判断手段」として機能する。図4のS28で計測パケット数Nが上限値以上であるか否かを判断するCPU10が「第三判断手段」として機能する。図4のS30で計測パケット数Nを増加させるCPU10が「増加手段」として機能する。図3のS11〜S17で処理時間を取得するCPU10が「処理時間取得手段」として機能する。
図7のS61で計測パケットを受信するCPU10が「受信手段」として機能する。図7のS62,S63で受信間隔を取得するCPU10が「受信間隔取得手段」として機能する。図7のS64で送信間隔を取得するCPU10が「送信間隔取得手段」として機能する。図9のS71で「受信間隔−送信間隔」の差分を算出するCPU10が「第二算出手段」として機能する。図9のS72〜S77で帯域を計測するCPU10が「計測手段」として機能する。
図3のS12および図5のS41でパケットを生成する処理が「生成ステップ」に相当する。図3に示すばらつき取得処理が「ばらつき取得ステップ」に相当する。図4に示す送信条件決定処理が「送信条件決定ステップ」に相当する。図5に示す送信処理が「送信ステップ」に相当する。
本発明は上記実施の形態に限定されることはなく、様々な変形が可能であることは言うまでもない。例えば、パケットの送信処理に要する処理時間のばらつきは、上記実施の形態で説明した方法と異なる方法で取得することも可能である。図10を参照して、送信装置の処理条件をテーブルに当てはめてばらつきを取得する変形例について説明する。変形例に係る送信装置は、図10に示すばらつき決定テーブルをHDD13に記憶している。ばらつき決定テーブルでは、OSの種類と、CPUクロックと、CPU使用率と、ばらつきの値とが複数対応付けられている。この場合のばらつきの値は、対応させる処理条件で実際に通信装置を動作させることで割り出せばよい。送信装置は、ばらつき取得処理(S2、図2参照)において、まず、自らのOSの種類、CPUクロック、およびその時点でのCPU使用率を、自らの処理条件として取得する。ばらつき決定テーブルを参照し、取得した処理条件に対応付けられているばらつきを、現在の送信装置のばらつきとして取得する。この場合、送信装置は、ばらつき決定テーブルの情報を参照するだけで容易にばらつきを取得することができる。
なお、上記変形例の通信装置1におけるHDD13が「記憶手段」に相当する。図2のS2でばらつき決定テーブルの情報を取得するCPU10が「情報取得手段」として機能する。また、上記変形例において、送信装置の処理条件として用いる情報は変更できる。例えば、上記の3つの条件(OSの種類等)のうちの1つまたは2つを処理条件として用いてもよいし、他の条件を処理条件として用いても良い。
本発明は他の変形も可能である。例えば、上記実施の形態の通信装置1は、主に計測パケット数Nを減少させることで送信間隔差を長くする。しかし、パケットサイズPsを増大させることで送信間隔差を長くすることも可能である。具体的には、図4に示す送信条件決定処理において、処理時間条件を満たす送信条件が設定されていなければ(S27:NO、S32:NO)、探索範囲および計測パケット数Nを固定したままパケットサイズPsを増加させればよい。この場合、計測パケット数Nを変更することによる計測精度の低下を考慮することなく、送信間隔差を長くすることができる。また、探索範囲、計測パケット数N、およびパケットサイズPsの2つ以上を変更してもよいことは言うまでもない。
上記実施の形態では、受信装置と送信装置との間の使用可能帯域が計測される。しかし、送信装置がネットワーク8に送信した計測パケットを自ら受信する場合でも、本発明は適用できる。ダミーパケットを送信することで、他の通信装置が利用している帯域を計測する手法にも、本発明は適用できる。また、計測する帯域の値が大きい場合に、計測パケットをバースト送信する場合もあるが、この場合にも本発明は適用できる。バースト送信を行う場合には、バースト中以外の計測パケットの送信間隔を、本発明によって決定すればよい。さらに、本発明における「帯域の計測」には、通信に適した帯域が確保されているか否かを判断することも含む。「通信に適した帯域」とは、パケットの送信時間の遅延が許容範囲に収まる帯域の値である。「通信に適した帯域」は、好ましくは送信時間の遅延が生じない使用可能帯域以下の値となる。しかし、使用可能帯域よりも大きい値であっても、送信時間の遅延を許容できる一定の値を「通信に適した帯域」としてもよい。
上記実施の形態では、受信装置が帯域を計測し、計測結果のみを送信装置に通知している。しかし、送信装置、および他のサーバ等が帯域を計測することも可能である。例えば、送信装置が帯域を計測する場合、受信装置は受信間隔と送信間隔とを算出し、算出した受信間隔および送信間隔を送信装置に通知する。送信装置は、受信装置から通知された受信間隔および送信間隔を用いて「受信間隔−送信間隔」の差分の変化時点を検出し、帯域を計測すればよい。但し、受信装置と送信装置との間で送受信されるデータの量は、受信装置から送信装置に計測結果のみを通知する場合に比べて多くなる。
上記実施の形態では、帯域の探索範囲を等分して複数の探索帯域値Kiが算出され、送信間隔が算出される。しかし、送信間隔の算出方法はこれに限られない。例えば、送信間隔差が一定となるように探索範囲を分割し、送信間隔を算出することも可能である。つまり、本発明が適用できる帯域計測方式は、受信間隔と送信間隔とに基づいて帯域を計測する方式であればよい。また、計測パケット数Nが下限値以下となった場合、探索範囲を強制的に再設定する処理(S37〜S39)を行わずに本発明を実現することも可能である。
上記実施の形態では、計測パケットの送信処理に要する処理時間のばらつきとして、複数の処理時間の標準偏差が用いられている。しかし、ばらつきとして用いることができるのは標準偏差に限られない。例えば、処理時間の最大値と最小値との差をばらつきとして用いることも可能である。複数の処理時間から、他の統計的な手法を用いてばらつきを算出してもよい。処理時間の平均値を算出し、平均値と最大値との差、および平均値と最小値との差の大きい方をばらつきとして用いても良い。最大値と最小値との差に任意のn(0<n<1、例えば、n=0.5)を掛けた値をばらつきとして用いてもよい。また、上記実施の形態では、本発明における「通信プログラム」は通信装置1のHDD13に記憶されているが、CDROM等の他の記憶媒体に記憶されていてもよいことは言うまでもない。
計測パケットを送信する際の処理を変更することで、処理時間のうち、計測パケットの生成に要する処理時間のばらつきの影響を補正することも可能である。具体的には、図5に示す送信処理において、CPU10は、S41の処理を開始して終了するまでの生成処理時間を算出する。CPU10は、S43において、待機すべき送信間隔から生成処理時間を引いた時間だけ待機してから、計測パケットを送信する。この場合、図3に示すばらつき取得処理では、S11とS12とを入れ替えて、生成されたパケットの送信に必要な処理時間のばらつきのみを取得すればよい。以上のように、計測パケットの生成に要した処理時間を補正することで、処理時間のばらつきが計測結果に与える影響を低下させることができる。
1 通信装置
8 ネットワーク
10 CPU
13 HDD
100 帯域計測システム

Claims (13)

  1. 連続して送信される複数のパケットの各々の送信処理を行う間隔である送信間隔と、ネットワークを経由して受信された前記複数のパケットの受信間隔とに基づいて帯域を計測できるように、パケットの通信を行う通信装置であって、
    前記送信間隔を割り出すための時間情報を含むパケットを生成する生成手段と、
    前記複数のパケットの送信処理に要する処理時間のばらつきを取得するばらつき取得手段と、
    前記ばらつき取得手段によって取得された前記ばらつきに基づいて、前記複数のパケットの前記送信間隔を少なくとも含む送信条件を決定する送信条件決定手段と、
    前記生成手段によって生成された前記複数のパケットを、前記送信条件決定手段によって決定された前記送信条件で順次送信する送信手段と
    を備えたことを特徴とする通信装置。
  2. 前記送信条件決定手段は、前記送信間隔に含まれる複数の間隔のうちの一の間隔と、前記一の間隔の前または後の間隔との差分である送信間隔差が、前記ばらつき取得手段によって取得された前記ばらつきよりも大きくなるように、前記送信間隔を決定することを特徴とする請求項1に記載の通信装置。
  3. 前記送信条件決定手段は、
    前記複数のパケットによる帯域の計測対象範囲である探索範囲と、前記複数のパケットを構成するパケットの数である計測パケット数と、前記複数のパケットを構成する各パケットのパケットサイズとによって、前記送信間隔を算出する第一算出手段と、
    前記第一算出手段によって算出された前記送信間隔における全ての前記送信間隔差が、前記ばらつき取得手段によって取得された前記ばらつきよりも大きいか否かを判断する第一判断手段と、
    前記第一判断手段によって、前記送信間隔差の少なくとも一部が前記ばらつき以下であると判断された場合に、前記探索範囲、前記計測パケット数、および前記パケットサイズの少なくとも1つを変更する変更手段と
    を備えたことを特徴とする請求項2に記載の通信装置。
  4. 前記変更手段は、前記探索範囲および前記パケットサイズを固定したまま前記計測パケット数を減少させることを特徴とする請求項3に記載の通信装置。
  5. 前記送信条件決定手段は、
    前記送信間隔差の少なくとも一部が前記ばらつき以下であると前記第一判断手段によって判断された場合に、前記計測パケット数が第一閾値以下であるか否かを判断する第二判断手段をさらに備え、
    前記変更手段は、
    前記第二判断手段によって前記計測パケット数が前記第一閾値以下であると判断された場合は、前記探索範囲を広げて再設定し、
    前記第二判断手段によって前記計測パケット数が前記第一閾値より大きいと判断された場合に、前記探索範囲および前記パケットサイズを固定したまま前記計測パケット数を減少させることを特徴とする請求項3に記載の通信装置。
  6. 前記送信条件決定手段は、
    全ての前記送信間隔差が前記ばらつきよりも大きいと前記第一判断手段によって判断された場合に、前記計測パケット数が第二閾値以上であるか否かを判断する第三判断手段と、
    前記第三判断手段によって前記計測パケット数が前記第二閾値より小さいと判断された場合に、前記計測パケット数を前記第二閾値を限度として増加させる増加手段と
    をさらに備えたことを特徴とする請求項3から5のいずれかに記載の通信装置。
  7. 前記複数のパケットの各々の送信処理に要する処理時間を複数取得する処理時間取得手段をさらに備え、
    前記ばらつき取得手段は、前記処理時間取得手段によって取得された複数の処理時間の標準偏差を前記ばらつきとして取得することを特徴とする請求項1から6のいずれかに記載の通信装置。
  8. 前記処理時間取得手段は、前記生成手段によって生成されたパケットを自らに送信して受信するまでに要した時間から処理時間を取得することを特徴とする請求項7に記載の通信装置。
  9. 前記通信装置のOSの種類、前記通信装置のクロック数、および前記通信装置のCPU使用率の少なくともいずれかを含む通信装置の処理条件と、前記ばらつきとを対応付けたテーブルを記憶する記憶手段から、前記テーブルの情報を取得する情報取得手段をさらに備え、
    前記ばらつき取得手段は、前記情報取得手段によって取得された前記テーブルの情報を参照し、現在の前記処理条件に対応付けられているばらつきを取得することを特徴とする請求項1から6のいずれかに記載の通信装置。
  10. 連続して送信された複数のパケットを受信する受信手段と、
    前記受信手段が受信した前記複数のパケットの受信間隔を取得する受信間隔取得手段と、
    前記受信手段が受信した前記複数のパケットの各々に含まれる前記時間情報から、受信した前記複数のパケットの送信間隔を取得する送信間隔取得手段と、
    前記受信間隔取得手段によって取得された前記受信間隔と、前記送信間隔取得手段によって取得された前記送信間隔とに基づいて帯域を計測する計測手段と
    をさらに備えたことを特徴とする請求項1から9のいずれかに記載の通信装置。
  11. 連続して送信される複数のパケットの各々の送信処理を行う間隔である送信間隔と、ネットワークを経由して受信された前記複数のパケットの受信間隔とに基づいて帯域を計測できるように、パケットの通信を行う通信装置によって行われる通信方法であって、
    前記送信間隔を割り出すための時間情報を含むパケットを生成する生成ステップと、
    前記複数のパケットの送信処理に要する処理時間のばらつきを取得するばらつき取得ステップと、
    前記ばらつき取得ステップによって取得された前記ばらつきに基づいて、前記複数のパケットの前記送信間隔を少なくとも含む送信条件を決定する送信条件決定ステップと、
    前記生成ステップによって生成された前記複数のパケットを、前記送信条件決定ステップによって決定された前記送信条件で順次送信する送信ステップと
    を備えたことを特徴とする通信方法。
  12. 連続して送信される複数のパケットの各々の送信処理を行う間隔である送信間隔と、ネットワークを経由して受信された前記複数のパケットの受信間隔とに基づいて帯域を計測できるように、パケットの通信を行う通信装置の動作を制御する通信プログラムであって、
    コンピュータに、
    前記送信間隔を割り出すための時間情報を含むパケットを生成する生成ステップと、
    前記複数のパケットの送信処理に要する処理時間のばらつきを取得するばらつき取得ステップと、
    前記ばらつき取得ステップによって取得された前記ばらつきに基づいて、前記複数のパケットの前記送信間隔を少なくとも含む送信条件を決定する送信条件決定ステップと、
    前記生成ステップによって生成された前記複数のパケットを、前記送信条件決定ステップによって決定された前記送信条件で順次送信する送信ステップと
    を実行させることを特徴とする通信プログラム。
  13. 複数のパケットを連続して送信する送信装置と、前記送信装置によって送信される前記複数のパケットをネットワークを経由して受信する受信装置とを備え、前記送信装置において前記複数のパケットの各々の送信処理を行う間隔である送信間隔と、前記受信装置における前記複数のパケットの受信間隔とに基づいて、前記送信装置と前記受信装置との間の帯域を計測する帯域計測システムであって、
    前記送信装置は、
    前記送信間隔を割り出すための時間情報を含むパケットを生成する生成手段と、
    前記複数のパケットの送信処理に要する処理時間のばらつきを取得するばらつき取得手段と、
    前記ばらつき取得手段によって取得された前記ばらつきに基づいて、前記複数のパケットの前記送信間隔を少なくとも含む送信条件を決定する送信条件決定手段と、
    前記生成手段によって生成された前記複数のパケットを、前記送信条件決定手段によって決定された前記送信条件で順次送信する送信手段とを備え、
    前記受信装置は、
    前記複数のパケットを受信する受信手段と、
    前記受信手段が受信した前記複数のパケットの受信間隔を取得する受信間隔取得手段と、
    前記受信手段が受信した前記複数のパケットの各々に含まれる前記時間情報から、前記複数のパケットの送信間隔を取得する送信間隔取得手段と、
    前記受信間隔取得手段によって取得された前記受信間隔と、前記送信間隔取得手段によって取得された前記送信間隔とに基づいて、前記送信装置との間の帯域を計測する計測手段と
    を備えたことを特徴とする帯域計測システム。
JP2010015008A 2010-01-27 2010-01-27 通信装置、通信方法、通信プログラム、および帯域計測システム Expired - Fee Related JP5392113B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010015008A JP5392113B2 (ja) 2010-01-27 2010-01-27 通信装置、通信方法、通信プログラム、および帯域計測システム
PCT/JP2011/050411 WO2011093133A1 (ja) 2010-01-27 2011-01-13 通信装置、通信方法、通信プログラム、および帯域計測システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010015008A JP5392113B2 (ja) 2010-01-27 2010-01-27 通信装置、通信方法、通信プログラム、および帯域計測システム

Publications (2)

Publication Number Publication Date
JP2011155432A JP2011155432A (ja) 2011-08-11
JP5392113B2 true JP5392113B2 (ja) 2014-01-22

Family

ID=44319124

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010015008A Expired - Fee Related JP5392113B2 (ja) 2010-01-27 2010-01-27 通信装置、通信方法、通信プログラム、および帯域計測システム

Country Status (2)

Country Link
JP (1) JP5392113B2 (ja)
WO (1) WO2011093133A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6227443B2 (ja) * 2014-02-28 2017-11-08 Kddi株式会社 送信レート算出装置、通信装置、送信レート算出方法およびコンピュータプログラム
JP6480362B2 (ja) * 2016-02-29 2019-03-06 Kddi株式会社 推定装置、推定方法及び推定プログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4522164B2 (ja) * 2004-06-25 2010-08-11 富士通株式会社 通信特性測定方法、測定装置及びコンピュータプログラム
JP2006261755A (ja) * 2005-03-15 2006-09-28 Nippon Telegr & Teleph Corp <Ntt> 測定装置、測定方法および測定プログラム
JP4699187B2 (ja) * 2005-11-29 2011-06-08 シャープ株式会社 受信装置、通信システム、および受信装置の制御プログラム
JP2008258877A (ja) * 2007-04-04 2008-10-23 Nec Corp 帯域測定システム、通信装置、帯域測定方法および帯域測定プログラム
JP4966779B2 (ja) * 2007-07-27 2012-07-04 富士通株式会社 ネットワーク遅延計測方法及び通信システム

Also Published As

Publication number Publication date
WO2011093133A1 (ja) 2011-08-04
JP2011155432A (ja) 2011-08-11

Similar Documents

Publication Publication Date Title
JP5686133B2 (ja) 利用可能帯域計測システム、送信装置、利用可能帯域計測方法およびプログラム
JP5136586B2 (ja) 通信装置、通信方法、および通信プログラム
US9131030B2 (en) Communication device, communication method and computer readable medium storing instructions for measuring available bandwidth during data communication
WO2011040006A1 (ja) 送信装置、受信装置、送受信システム、及び送受信方法
JP5187404B2 (ja) 符号化装置、符号化方法、および符号化プログラム
US20120150936A1 (en) Distribution system
JP5392208B2 (ja) 通信装置、通信方法、及び通信プログラム
US20110211469A1 (en) Communication device, communication method, and computer program product
JP5392113B2 (ja) 通信装置、通信方法、通信プログラム、および帯域計測システム
US20100086021A1 (en) Information transmission apparatus, method of controlling the same, and storage medium
JP5987798B2 (ja) 情報処理システム、情報処理装置及びプログラム
JP6680214B2 (ja) 可用帯域計測システム、可用帯域計測方法、送信側装置、受信側装置、送信側装置制御プログラムおよび受信側装置制御プログラム
JP4911238B2 (ja) パケット通信システム、パケット通信方法、送信装置、及びコンピュータプログラム
JP5397353B2 (ja) 通信装置、通信方法、及び通信プログラム
JP5195805B2 (ja) 通信装置、および通信プログラム
JP5445401B2 (ja) 通信装置、通信方法、及び通信プログラム
JP2009272800A (ja) 品質計測システム、受信装置、品質計測方法及びプログラム
JP5370242B2 (ja) 計測パケット作成装置、計測パケット作成方法及び計測パケット作成プログラム
US9473552B2 (en) Preventing omission of data in a remote conference
JP2013031011A (ja) 通信装置、通信方法、および通信プログラム
JP2005348021A (ja) データ受信装置およびデータ受信方法
JP2018195983A (ja) 通信制御装置、通信制御システム、通信制御プログラム、及び通信制御方法
JP2017130734A (ja) 可用帯域測定システム、送信端末、受信端末、測定方法、及びコンピュータプログラム
JP2016127320A (ja) 通信プログラム、通信装置、及び、通信方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120307

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130917

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130930

R150 Certificate of patent or registration of utility model

Ref document number: 5392113

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees