JPWO2012108194A1 - 通信装置 - Google Patents

通信装置 Download PDF

Info

Publication number
JPWO2012108194A1
JPWO2012108194A1 JP2012556793A JP2012556793A JPWO2012108194A1 JP WO2012108194 A1 JPWO2012108194 A1 JP WO2012108194A1 JP 2012556793 A JP2012556793 A JP 2012556793A JP 2012556793 A JP2012556793 A JP 2012556793A JP WO2012108194 A1 JPWO2012108194 A1 JP WO2012108194A1
Authority
JP
Japan
Prior art keywords
communication device
transmission rate
communication
transmission
data
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.)
Granted
Application number
JP2012556793A
Other languages
English (en)
Other versions
JP5572724B2 (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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co 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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2012556793A priority Critical patent/JP5572724B2/ja
Publication of JPWO2012108194A1 publication Critical patent/JPWO2012108194A1/ja
Application granted granted Critical
Publication of JP5572724B2 publication Critical patent/JP5572724B2/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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/22Traffic shaping
    • 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/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]

Abstract

通信機器(11)は、一対の通信機器間で異なる複数の伝送速度で負荷データを伝送する間に、テストデータを通信機器(11、12)間で伝送したときの伝送時間を示す応答時間と、対応する伝送速度とを格納した伝送速度テーブルを保持する。通信機器(11)は、実データの必要伝送速度を決定し、テストデータを通信機器(11、12)間で伝送したときの伝送時間を示す応答時間を検出し、伝送速度テーブルに基づいて応答時間に対応する伝送速度を使用済み伝送速度として決定し、通信ネットワーク(10)の最大伝送速度(Rmax)及び使用済み伝送速度から有効残留伝送速度を決定し、有効残留伝送速度が必要伝送速度よりも高いとき、実データの伝送を開始する。

Description

本発明は、通信システム及び通信方法に関し、さらに詳しくは、複数の通信機器を備えた宅内ネットワーク環境の通信システムにおいてストリーム配信をより確実に実行する通信システム及び通信方法に関する。
近年、宅内のパーソナルコンピュータをインターネットに接続する方式として、FTTH(Fiber To The Home)が普及してきている。宅内でも家電機器やコンピュータ、その他の周辺機器をネットワーク接続して機器間通信を実現した宅内ネットワークが利用されて始めている。今後、宅内ネットワークは、ネットワーク接続機器間におけるコンテンツ送受信を可能とし、ユーザに利便性及び快適性を提供するものとして、ますます普及することが予測される。
例えば、宅内では、TVチューナなどの映像受信装置及びハードディスクなどの記憶装置を有するAV機器をサーバ装置として使用し、サーバ装置が保有する映像コンテンツを、宅内ネットワークを介して別部屋のクライアント装置に送信することができる。これにより、クライアント装置において映像コンテンツを受信しながら再生するといった、データのストリーミング配信及び再生処理が可能となる。
このようなストリーミング配信を行うサーバ装置は、エンコード処理などを実行して送信データを生成し、宅内ネットワークに送出する。一方、ストリーミング配信されたデータの再生を行うクライアント装置は、受信データをバッファに一時蓄積し、その後、順次にデコード処理及び再生処理を行う。
しかし、宅内ネットワーク上には複数のデータ通信が競合する場合がある。このような複数のデータ通信が競合すると、通信帯域が不足し、ストリーミング配信の遅れなどの問題が発生する。
この競合するデータ通信の処理法については、さまざまな提案がなされている。例えば特許文献1は、各通信データに対して優先度に応じた帯域割り当てを行うプライオリティベースのQoS(Quality of Service)技術に関する構成を開示している。例えば、動画像のストリーミングデータ配信においてリアルタイム再生を実現するためには、動画像を構成するパケットを遅延することなく、ストリーミングサーバからストリーミングクライアントに送信することが必要となる。一方、時間的な遅れが許容されるデータパケットもある。従って、ストリーミングの配信データに対して通常の通信データより高いプライオリティを設定し、処理優先度を判別して通信処理を実行するようにしている。
プライオリティを用いるとき、データ通信の競合の検査は、例えば以下のように行われる。サーバ装置から新たなストリーミングのデータ配信を開始する前に一定の検査期間を設け、ストリーミングのデータ配信に対応して設定された本来の規定のプライオリティより低いプライオリティの負荷データを送信する。この低プライオリティ設定下での負荷データの送信状況を検証し、ストリーミング伝送に対応する本来の規定のプライオリティに移行してもよいか否かを判断する。移行が許容されると判断した場合、本来の規定のプライオリティでストリーミングデータ送信を実行する。
この検査期間において同時に別のストリーミング伝送が行われていたとしても、低プライオリティの負荷データが高プライオリティの既存のストリーミング伝送に与える影響は防止される。すなわち、既存のストリーミング配信がある場合、その既存ストリーミングの帯域を奪うことがないので、既存のストリーミングを再生しているクライアントの再生画像を乱さないとしている。
特開2007−74225号公報
しかしながら、この検査期間において低プライオリティかつ大量の負荷データを伝送する場合、負荷データが、続いて伝送するストリーミングデータと同程度の大容量の伝送速度を有するので、いくつかの課題を発生させる。1つ目の課題は、負荷データが低プライオリティであっても、検査期間の間、同程度以下のプライオリティのデータ伝送を妨害することである。妨害の程度が大きければ、この間通信不能となる可能性もある。2つ目の課題は、負荷データが大量かつ低プライオリティであるので、場合によっては度重なる遅延により検査期間が長期化しやすいことである。特許文献1には1分程度と例示されているが、これ以上の検査期間を必要とすることもある。このため、ストリーミングデータの伝送を開始する前に、1分以上の検査期間が必要となり、クライアントでストリーミングデータを享受するユーザは、その間、待機していなければならない。3つ目の課題は、ストリーミング伝送を行うごとに、毎回事前に大量の負荷データを伝送しなければならないことである。従って、1つ目及び2つ目の課題は、ストリーミング伝送を行うごとに毎回発生することになる。
本発明の目的は、上述した課題を解決するものであり、大量の負荷データを用いることによる種々の問題を軽減する通信システム及び通信方法を提供することにある。
本発明の第1の態様に係る通信システムによれば、
通信ネットワークを介して互いに接続された少なくとも第1通信機器及び第2通信機器を含む複数の通信機器を備えた通信システムにおいて、
上記第1通信機器は、上記複数の通信機器のうちの任意の一対の通信機器間で異なる複数の伝送速度で負荷データを伝送するときに、上記負荷データよりも小さなサイズのテストデータを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第1応答時間と、上記第1応答時間に対応する伝送速度とを含む伝送速度テーブルを記憶装置に格納し、
上記第1通信機器から上記第2通信機器に実データを伝送するとき、上記第1通信機器は、
上記実データを伝送するための必要伝送速度を決定し、
上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第2応答時間を検出し、
上記伝送速度テーブルに基づいて、上記第2応答時間に対応する伝送速度を使用済み伝送速度として決定し、
上記通信ネットワークの最大伝送速度及び上記使用済み伝送速度から、上記実データを伝送するために利用可能な上記通信ネットワークの有効残留伝送速度を決定し、
上記有効残留伝送速度が上記必要伝送速度よりも高いとき、上記実データの伝送を開始することを特徴とする通信システム。
上記通信システムにおいて、
上記第1通信機器は上記最大伝送速度を取得し、
上記第1通信機器及び上記第2通信機器は、上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始し、
上記専有状態において、上記第1通信機器は、
上記第1通信機器及び上記第2通信機器の間で異なる複数の伝送速度で負荷データを伝送するときに、上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送して上記第1応答時間を測定し、
上記第1応答時間と、上記第1応答時間に対応する上記負荷データの伝送速度とを上記伝送速度テーブルに格納することを特徴とする。
上記通信システムにおいて、
上記第1通信機器は上記最大伝送速度を取得し、
上記第1通信機器、上記第2通信機器、第3通信機器、及び第4通信機器は、上記通信ネットワークにおいて上記第1通信機器、上記第2通信機器、上記第3通信機器、及び上記第4通信機器のみが通信を行う専有状態を開始し、
上記専有状態において、上記第1通信機器は、
上記第3通信機器及び上記第4通信機器の間で異なる複数の伝送速度で負荷データを伝送するときに、上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送して上記第1応答時間を測定し、
上記第1応答時間と、上記第1応答時間に対応する上記負荷データの伝送速度とを上記伝送速度テーブルに格納することを特徴とする。
上記通信システムにおいて、
上記第1通信機器及び上記第2通信機器は、上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始し、
上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で負荷データを伝送することで上記最大伝送速度を測定することを特徴とする。
上記通信システムにおいて、
上記第3通信機器及び上記第4通信機器は、上記通信ネットワークにおいて上記第3通信機器及び上記第4通信機器のみが通信を行う専有状態を開始し、
上記第3通信機器は、上記第3通信機器及び上記第4通信機器の間で負荷データを伝送することで上記最大伝送速度を測定し、
上記第1通信機器は、上記第3通信機器から上記最大伝送速度を取得することを特徴とする。
上記通信システムにおいて、
上記第1通信機器及び上記第2通信機器は、上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始し、
上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で負荷データを伝送することで上記最大伝送速度を測定し、
上記第3通信機器及び上記第4通信機器は、上記通信ネットワークにおいて上記第3通信機器及び上記第4通信機器のみが通信を行う専有状態を開始し、
上記第3通信機器は、上記第3通信機器及び上記第4通信機器の間で負荷データを伝送することで上記最大伝送速度を測定することを特徴とする。
上記通信システムにおいて、上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の平均値を取得することで、上記第1応答時間を測定することを特徴とする。
上記通信システムにおいて、上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最大値を取得することで、上記第1応答時間を測定することを特徴とする。
上記通信システムにおいて、上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最小値を取得することで、上記第1応答時間を測定することを特徴とする。
上記通信システムにおいて、上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の平均値を取得することで、上記第2応答時間を検出することを特徴とする。
上記通信システムにおいて、上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最大値を取得することで、上記第2応答時間を検出することを特徴とする。
上記通信システムにおいて、上記第1通信機器は、上記伝送速度テーブルに格納された上記第1応答時間及び上記伝送速度の内挿値又は外挿値と、上記第2応答時間とを比較して、上記第2応答時間に対応する伝送速度を上記使用済み伝送速度として決定することを特徴とする。
上記通信システムにおいて、上記有効残留伝送速度は、上記最大伝送速度から上記使用済み伝送速度を減算した残りの伝送速度であることを特徴とする。
上記通信システムにおいて、上記有効残留伝送速度は、上記最大伝送速度から上記使用済み伝送速度及び所定の余裕値を減算した残りの伝送速度であることを特徴とする。
上記通信システムにおいて、
上記第1通信機器は、
第1表示器を備え、
上記有効残留伝送速度が上記必要伝送速度以下であるとき、上記実データの伝送を中止して、上記実データの伝送が中止されたことを上記第1表示器に表示することを特徴とする。
上記通信システムにおいて、
上記実データの伝送の開始後、上記第1通信機器は、
上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第3応答時間を検出し、
上記伝送速度テーブルに基づいて、上記第3応答時間に対応する伝送速度を使用済み伝送速度として決定し、
上記通信ネットワークの最大伝送速度及び上記使用済み伝送速度から上記有効残留伝送速度を決定し、
上記有効残留伝送速度が所定のしきい値以下であるとき、上記実データの伝送が不安定であることを上記第1表示器に表示することを特徴とする。
上記通信システムにおいて、
上記第1通信機器は、上記有効残留伝送速度が上記必要伝送速度以下であるとき、上記実データの伝送を中止して、上記実データの伝送が中止されたことを上記第2通信機器に通知し、
上記第2通信機器は、
第2表示器を備え、
上記実データの伝送が中止されたことを上記第2表示器に表示することを特徴とする。
本発明の第2に態様に係る通信方法によれば、
通信ネットワークを介して互いに接続された少なくとも第1通信機器及び第2通信機器を含む複数の通信機器を備えた通信システムの通信方法において、
上記第1通信機器は、上記複数の通信機器のうちの任意の一対の通信機器間で異なる複数の伝送速度で負荷データを伝送するときに、上記負荷データよりも小さなサイズのテストデータを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第1応答時間と、上記第1応答時間に対応する伝送速度とを含む伝送速度テーブルを記憶装置に格納し、
上記通信方法は、上記第1通信機器から上記第2通信機器に実データを伝送するとき、上記第1通信機器において、
上記実データを伝送するための必要伝送速度を決定するステップと、
上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第2応答時間を検出するステップと、
上記伝送速度テーブルに基づいて、上記第2応答時間に対応する伝送速度を使用済み伝送速度として決定するステップと、
上記通信ネットワークの最大伝送速度及び上記使用済み伝送速度から、上記実データを伝送するために利用可能な上記通信ネットワークの有効残留伝送速度を決定するステップと、
上記有効残留伝送速度が上記必要伝送速度よりも高いとき、上記実データの伝送を開始するステップとを含むことを特徴とする。
上記通信方法は、
上記第1通信機器において上記最大伝送速度を取得するステップと、
上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始するステップと、
上記専有状態において、
上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で異なる複数の伝送速度で負荷データを伝送するときに、上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送して上記第1応答時間を測定するステップと、
上記第1通信機器において、上記第1応答時間と、上記第1応答時間に対応する上記負荷データの伝送速度とを上記伝送速度テーブルに格納するステップとを含むことを特徴とする。
上記通信方法は、
上記第1通信機器において上記最大伝送速度を取得するステップと、
上記通信ネットワークにおいて上記第1通信機器、上記第2通信機器、上記第3通信機器、及び上記第4通信機器のみが通信を行う専有状態を開始するステップと、
上記専有状態において、
上記第1通信機器において、上記第3通信機器及び上記第4通信機器の間で異なる複数の伝送速度で負荷データを伝送するときに、上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送して上記第1応答時間を測定するステップと、
上記第1通信機器において、上記第1応答時間と、上記第1応答時間に対応する上記負荷データの伝送速度とを上記伝送速度テーブルに格納するステップとを含むことを特徴とする。
上記通信方法は、
上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始するステップと、
上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で負荷データを伝送することで上記最大伝送速度を測定するステップとを含むことを特徴とする。
上記通信方法は、
上記通信ネットワークにおいて上記第3通信機器及び上記第4通信機器のみが通信を行う専有状態を開始するステップと、
上記第3通信機器及び上記第4通信機器の間で負荷データを伝送することで上記最大伝送速度を測定するステップと、
上記第1通信機器において、上記第3通信機器から上記最大伝送速度を取得するステップとを含むことを特徴とする。
上記通信方法は、
上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始するステップと、
上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で負荷データを伝送することで上記最大伝送速度を測定するステップと、
上記通信ネットワークにおいて上記第3通信機器及び上記第4通信機器のみが通信を行う専有状態を開始するステップと、
上記第3通信機器において、上記第3通信機器及び上記第4通信機器の間で負荷データを伝送することで上記最大伝送速度を測定するステップとを含むことを特徴とする。
上記通信方法は、上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の平均値を取得することで、上記第1応答時間を測定するステップを含むことを特徴とする。
上記通信方法は、上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最大値を取得することで、上記第1応答時間を測定するステップを含むことを特徴とする。
上記通信方法は、上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最小値を取得することで、上記第1応答時間を測定するステップを含むことを特徴とする。
上記通信方法は、上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の平均値を取得することで、上記第2応答時間を検出するステップを含むことを特徴とする。
上記通信方法は、上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最大値を取得することで、上記第2応答時間を検出するステップを含むことを特徴とする。
上記通信方法は、上記第1通信機器において、上記伝送速度テーブルに格納された上記第1応答時間及び上記伝送速度の内挿値又は外挿値と、上記第2応答時間とを比較して、上記第2応答時間に対応する伝送速度を上記使用済み伝送速度として決定するステップを含むことを特徴とする。
上記通信方法において、上記有効残留伝送速度は、上記最大伝送速度から上記使用済み伝送速度を減算した残りの伝送速度であることを特徴とする。
上記通信方法において、上記有効残留伝送速度は、上記最大伝送速度から上記使用済み伝送速度及び所定の余裕値を減算した残りの伝送速度であることを特徴とする。
上記通信方法において、
上記第1通信機器は第1表示器を備え、
上記方法は、上記第1通信機器において、上記有効残留伝送速度が上記必要伝送速度以下であるとき、上記実データの伝送を中止して、上記実データの伝送が中止されたことを上記第1表示器に表示するステップを含むことを特徴とする。
上記通信方法において、
上記実データの伝送の開始後、
上記第1通信機器において、上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第3応答時間を検出し、
上記第1通信機器において、上記伝送速度テーブルに基づいて、上記第3応答時間に対応する伝送速度を使用済み伝送速度として決定し、
上記第1通信機器において、上記通信ネットワークの最大伝送速度及び上記使用済み伝送速度から上記有効残留伝送速度を決定し、
上記第1通信機器において、上記有効残留伝送速度が所定のしきい値以下であるとき、上記実データの伝送が不安定であることを上記第1表示器に表示するステップを含むことを特徴とする。
上記通信方法において、
上記第2通信機器は第2表示器を備え、
上記方法は、
上記第1通信機器において、上記有効残留伝送速度が上記必要伝送速度以下であるとき、上記実データの伝送を中止して、上記実データの伝送が中止されたことを上記第2通信機器に通知し、
上記第2通信機器において、上記実データの伝送が中止されたことを上記第2表示器に表示するステップを含むことを特徴とする。
本明細書に開示された技術の通信システム及び通信方法によれば、複数の通信機器を含む通信システムでは、例えば第1通信機器が設置されるときに、第1通信機器、第2通信機器、第3通信機器、及び第4通信機器による専有状態を開始し、大量の負荷データを用いて通信ネットワークのトラフィック状態を検査し、伝送速度テーブル(すなわち、伝送速度と第1応答時間との対応関係)を生成する。その後、非専有状態で大量の実データを伝送するとき、第1通信機器は、実データの伝送前に小量のテストデータを用いて第2応答時間を検出することにより、実データの安定的な伝送を開始することができるか否かを判断する。それゆえに、実データの伝送前には、第2応答時間を検出するための小量のテストデータを伝送するだけで済み、通信ネットワークへの追加のトラフィック量は、負荷データを伝送する場合に比べて最小限に抑制することができる。その結果、非専有状態であってもテストデータが他の通信を妨害することはなく、また実データの伝送前の所定テスト期間は、例えば10秒程度以下に大幅に短縮化することができる。このようなテストデータの伝送が実データの伝送前に毎回実行されても、ユーザは、その実行に負担を感じることもなく実データを享受することが可能となる。
さらに、専有状態を2つの第1通信機器及び第2通信機器で構成することにより、複数の通信機器間における各種データの伝送を簡略化することができ、伝送速度テーブル及び最大伝送速度を簡単に調べることができる。
本発明の実施形態に係る通信システムの構成を示すブロック図である。 図1の通信機器11、13、15の詳細構成を示すブロック図である。 図1の通信機器12、14、16の詳細構成を示すブロック図である。 図1の通信機器11によって実行される伝送速度テーブル生成処理を示すフローチャートである。 図4のステップS1の第1の実施例を示すサブルーチンである。 図4のステップS1の第2の実施例を示すサブルーチンである。 図4のステップS1の第3の実施例を示すサブルーチンである。 図1の通信機器11によって実行される変形例の伝送速度テーブル生成処理を示すフローチャートである。 図1の通信機器11によって実行されるデータ伝送処理を示すフローチャートである。 図4のステップS57を示すサブルーチンである。 図1の通信システム1で送受信される実データ及び負荷データのデータ構成D10を示す図である。 図1の通信システム1で送受信されるテストデータのデータ構成D11を示す図である。 図1の通信機器11の伝送速度テーブル29aに格納される伝送速度R(n)及び応答時間T(n)の一例を示す表である。 図1の通信機器11の伝送速度テーブル29aに格納される伝送速度R(n)及び応答時間T(n)の一例を示すグラフである。
以下、いくつかの例示的な実施形態について、図面を参照しながら説明する。図面において、実質的に同一の構成、動作、及び効果を表す要素には、同一の符号を付す。
(1)通信システム1及び通信ネットワーク10
図1は、本発明の実施形態に係る通信システムの構成を示すブロック図である。通信システム1は、通信機器11、通信機器12、通信機器13、通信機器14、通信機器15、通信機器16、及び通信ネットワーク10を含む。通信機器11〜16は、通信ネットワーク10を介して互いに通信することができる。一例では、通信機器11〜16は通信機能を有する家庭用デジタルAV機器であり、通信ネットワーク10は宅内ネットワークである。他の例では、通信システム1は、商業施設内、構内、又は放送スタジオ内などのネットワークシステムであってもよい。通信ネットワーク10は、無線ネットワークであっても有線ネットワークであってもよい。
通信ネットワーク10の通信帯域は、通信機器11〜16によって共有することができる。この通信帯域とは、通信ネットワーク10内で伝送可能な最大の伝送速度のことであり、本明細書では「最大伝送速度」と呼ぶ。通信機器11〜16は、同時に伝送するデータの伝送速度の総和が最大伝送速度以下となるように、通信ネットワーク10を所望の比率で共有することができる。
通信ネットワーク10の例としては、無線の場合、無線LAN(Local Area Network)、例えばIEEE802.11n(IEEE:Institute of Electrical and Electronic Engineers=米国電気電子学会)で規定される無線LANがあり、有線の場合、リピータハブで結合されたイーサネット(ETHERNET:登録商標)がある。IEEE802.11n方式無線LANの場合、現在の日本では通信帯域は最大300Mビット/秒であるが、各種ヘッダなどの冗長度分を取り除いた実効的な正味の最大伝送速度は、この最大値よりもある程度低下する。
共有型の通信ネットワーク10では、無線LANの場合、CSMA/CA(Carrier Sense Multiple Access with Collision Avoidance=衝突回避機能付き搬送波感知多重アクセス方式)、及びイーサネットの場合、CSMA/CD(Carrier Sense Multiple Access with Collision Detection=衝突検出機能付き搬送波感知多重アクセス方式)、のような多重アクセス制御方式を用いて共有ネットワークにおける多重アクセスが制御される。この場合、通信ネットワーク10内のトラフィック量が多くなって、伝送速度が最大伝送速度に近づくにつれて衝突回避又は衝突検出頻度が高くなり、伝送遅延が大きくなる。
通信機器11〜16以外にも、通信ネットワーク10に接続される通信機器があってもよい。このような通信システム1において、本明細書において、特定の複数の通信機器だけが通信ネットワーク10を専有的に用いて当該通信機器のみが互いに通信することができる状態を「専有状態」と呼び、さらに、任意の複数の通信機器が通信ネットワーク10を非専有的に用いて互いに通信することができる状態を「非専有状態」と呼ぶ。例えば4つの通信機器11〜14が専有状態にある場合、各通信機器15、16は通信システム1内のいずれの通信機器とも通信することができない。この場合、例えば各通信機器15、16の電源は、オフされている。例えば4つの通信機器11〜14が非専有状態にある場合、各通信機器15、16は自身を除く他の5つの通信機器と通信することができる。
(2)通信機器11〜16
各通信機器11、13、15は、例えばハードディスクドライブ(Hard Disk Drive:HDD)レコーダであり、ハードディスク内又はブルーレイディスク内に記憶された例えば映像コンテンツなどの実データを再生し、かつ通信ネットワーク10へ送信することができる。各通信機器12、14、16は、例えばデジタルテレビジョン放送受像機であり、通信ネットワーク10を介して受信した実データを表示することができる。すなわち各通信機器11、13、15はサーバとして動作し、各通信機器12、14、16はクライアントとして動作する。
図2は、図1の通信機器11、13、15の詳細構成を示すブロック図である。通信機器11は、本体部20、インターフェース部21、及び配線22を含む。本体部20はHDDレコーダの本体部分を含み、インターフェース部21はHDDレコーダのインターフェース部分を含む。配線22は、バス構成、スイッチ構成、もしくは一対一の直接配線構成のうちのいずれであってもよく、又はこれらの混成構成であってもよい。本体部20は、メインコントローラ23、信号処理回路24、インジケータ25、デジタルテレビジョン放送のチューナ26、ハードディスクドライブ27、及びブルーレイディスク(BD)ドライブ28を含む。信号処理回路24は、デコーダ及びエンコーダを含む。インジケータ25は、例えばHDDレコーダの正面部に設けられた各種の動作情報を表示する比較的小さな表示器である。ブルーレイディスクドライブ28に代えて、DVD(Digital Versatile Disc)ディスクドライブ等の他の媒体のドライブを備えてもよい。インターフェース部21は、不揮発性メモリ29、インターフェースコントローラ30、バッファメモリ31、及びネットワークインターフェース32を含む。通信機器11、13、15は、チューナ26、ハードディスクドライブ27、及びブルーレイディスクドライブ28のすべてを備えていなくてもよく、例えば、これらのうちのいずれか1つをそれぞれ備えていてもよい。
図3は、図1の通信機器12、14、16の詳細構成を示すブロック図である。通信機器12は、インターフェース部40、本体部41、及び配線42を含む。インターフェース部40はデジタルテレビジョン放送受像機のインターフェース部分を含み、本体部41はデジタルテレビジョン放送受像機の本体部分を含む。配線42は、配線22と同様に構成される。インターフェース部40は、インターフェースコントローラ43、不揮発性メモリ44、ネットワークインターフェース45、及びバッファメモリ46を含む。本体部41は、メインコントローラ47、信号処理回路48、デジタルテレビジョン放送のチューナ49、及びディスプレイ50を含む。信号処理回路48は、TS(Transport Stream)デコーダ(図示せず)及びMPEG−2(Moving Picture Experts Group−2)デコーダ(図示せず)を含む。
各インターフェースコントローラ30、43は、後述する図4〜図10のフローチャートに従って、各種データ処理を行う。各インターフェースコントローラ30、43は、図4〜図10のフローチャートに基づくプログラムが組み込まれたマイクロプロセッサ又はマイクロコンピュータで構成されてもよい。各インターフェースコントローラ30、43は、図4〜図10のフローチャートに基づくタイミング信号を発生するFPGA(Field Programmable Gate Array=フィールドプログラマブルゲートアレイ)などのワイヤードロジック回路で構成されてもよい。さらに各インターフェースコントローラ30、43は、マイクロプロセッサもしくはマイクロコンピュータ及びワイヤードロジック回路による混成回路で構成されてもよい。インターフェースコントローラ30、43は、それぞれ本体部20、41内のメインコントローラ23、47と統合されてもよい。
不揮発性メモリ29、44は、EPROM(Erasable Programmable Read−Only Memory)などで構成され、後述する伝送速度テーブル29a(図13を参照)を格納する。各バッファメモリ31、46は、RAM(Random Access Memory)などの揮発性メモリで構成され、データを一時的に記憶する。各ネットワークインターフェース32、45は、ワイヤードロジック回路、マイクロプロセッサもしくはマイクロコンピュータ、又はこれらの混成回路で構成され、データリンク層における各種データ処理及び物理層における各種信号処理を行う。
ハードディスクドライブ27は、例えばMPEG−2 TSデータを記憶している。ハードディスクドライブ27は、チューナ26で受信されたデジタルテレビジョン放送のAVコンテンツとしてのMPEG−2 TSデータを信号処理回路24を介して取得して記憶してもよい。さらに、ブルーレイディスクドライブ28は、ブルーレイディスクから、AVコンテンツとして記憶されたMPEG−2 TSデータを読み出す。
図11は、図1の通信システム1で送受信される実データ及び負荷データのデータ構成D10を示す図である。本明細書では、受信側の通信機器の要求に応じて送信側の通信機器から受信側の通信機器に伝送されるAVコンテンツを含むデータを「実データ」と呼び、通信ネットワーク10における伝送速度などを測定するための(AVコンテンツではない)データを「負荷データ」と呼ぶ。データ構成D10は、複数のMAC(Media Access Control)フレーム60を含む。1つのMACフレーム60は、MACヘッダ61、IP(Internet Protocol)ヘッダ62、TCP(Transmission Control Protocol)ヘッダ63、及びペイロード64を時系列順に含む。MPEG−2 TSデータは、データ構成D10の形式に変換される。この場合、ペイロード64は、MACフレーム60のサイズが規定の1518バイト以下となるように、188バイトのサイズのTSパケットが例えば7つとHTTP(HyperText Transfer Protocol)プロトコルに関するデータとで構成される。このペイロード64は、TCPプロトコルによってカプセル化され、さらにIPパケットにカプセル化され、さらにMACフレームにカプセル化される。
図2においてインターフェースコントローラ30は、チューナ26、ハードディスクドライブ27、及びブルーレイディスクドライブ28のいずれかから、MPEG−2 TSデータを読み出し、バッファメモリ31に一時記憶しながらMPEG−2 TSデータをカプセル化し、TCPパケットを生成し、次いでIPパケットを生成する。ネットワークインターフェース32は、インターフェースコントローラ30の命令に従い、このIPパケットをMACフレームにカプセル化し、無線の場合には無線帯域への変調又は有線の場合にはベースバンド符号化、などの物理層の信号処理を行って実データを生成する。ネットワークインターフェース32は、この実データを、無線の場合にはCSMA/CA又は有線の場合にはCSMA/CDなどの媒体アクセス制御に基づくタイミングで通信ネットワーク10へ送信する。このように通信機器11は、MPEG−2 TSデータをデータ構成D10の形式に変換することにより、実データを生成する。
図3においてネットワークインターフェース45は、この実データを受信し、インターフェースコントローラ43の命令に従い、無線の場合には無線帯域からの復調又は有線の場合にはベースバンド復号化、などの物理層の信号処理を行ってMACフレームを生成する。ネットワークインターフェース45は、このMACフレームを逆カプセル化し、IPパケットを生成する。インターフェースコントローラ43は、このIPパケットをバッファメモリ46に一時記憶しながら逆カプセル化し、TCPパケットを生成し、次いでMPEG−2 TSデータを生成する。本体部41は、このMPEG−2 TSデータを、信号処理回路48内のTSデコーダ及びMPEG−2デコーダにおいてそれぞれTS復号化及びMPEG−2復号化し、ディスプレイ50に表示する。
上述した例では、各通信機器11〜16はHTTP及びTCPプロトコルを使用するとしたが、これらのプロトコルの組み合わせは伝送誤り率の比較的高い無線ネットワークにおいて特に有効である。一方、伝送誤り率の比較的低い有線ネットワークにおいては、HTTP及びTCPプロトコルの代わりに、伝送におけるリアルタイム性及び低遅延化を重視したRTP(Real−time Transport Protocol)及びUDP(User Datagram Protocol)プロトコルの組み合わせを使用してもよい。この場合、バッファメモリ46の容量はより小さくすることができる。さらに上述した例では、ネットワークインターフェース32、45は、それぞれMACフレームのカプセル化及び逆カプセル化を行うとしたが、インターフェースコントローラ30、43がそれぞれカプセル化及び逆カプセル化を行ってもよい。逆に、各インターフェースコントローラ30、43は、HTTP及びTCPプロトコル又はRTP及びUDPプロトコルを処理するとしたが、各ネットワークインターフェース32、45がこれらのプロトコルを処理してもよい。さらに上述した例では、各通信機器11〜16はTSパケットがIPパケットでカプセル化されるTSオーバーIPを使用するとしたが、IPパケットが分割されTSパケットでカプセル化されるIPオーバーTSを使用してもよい。
以下、図4〜図10を参照して、本実施形態の通信システム1において実行されるデータ伝送について説明する。
(3)伝送速度テーブル生成処理
図4は、図1の通信機器11によって実行される伝送速度テーブル生成処理を示すフローチャートである。本実施形態の通信システム1では、受信側の通信機器12の要求に応じて送信側の通信機器11から受信側の通信機器12へのデータ伝送(実データの伝送)を行う前に、通信システム1は、その初期設定として「伝送速度テーブル29a」を生成する。伝送速度テーブル29aは、通信機器11〜16のうちの任意の一対の通信機器間で異なる複数の伝送速度で負荷データを伝送する間に、負荷データよりも小さなサイズの「テストデータ」を通信機器11及び通信機器12の間で伝送したときのテストデータの伝送時間の長さを示す応答時間と、この応答時間に対応する伝送速度とを格納する。伝送速度テーブル29aは、通信機器11の不揮発性メモリ29に格納される。本実施形態の通信システム1では、予め生成された伝送速度テーブル29aを用いることにより、従来技術のように大量の負荷データを用いることによる種々の問題を軽減することができる。
図13は、図1の通信機器11の伝送速度テーブル29aに格納される伝送速度R(n)及び応答時間T(n)の一例を示す表である。各伝送速度R(n)及び各応答時間T(n)は、伝送速度テーブル29aの初期状態では空白である。ここで、伝送速度R(n)は、例えば通信ネットワーク10上で伝送される実データ内のペイロード64の伝送速度に相当する。ただしこれは速度の基準をどこに置くかの問題なので、伝送速度R(n)は例えばIPパケットのペイロード(すなわちTCPヘッダ63及びペイロード64)の伝送速度としてもよいが、以下の説明ではペイロード64の伝送速度とする。
通信機器11のインターフェースコントローラ30は、例えば、伝送速度テーブル29aが空白のとき(例えば、通信機器11を通信ネットワーク10に初めて接続して、最初に電源をオンにしたとき)、図4の伝送速度テーブル生成処理を実行する。
図4のステップS1において、通信機器11のインターフェースコントローラ30は、最大伝送速度取得処理を実行し、通信ネットワーク10の最大伝送速度Rmaxを取得する。最大伝送速度Rmaxは、ユーザにより入力される既知の値であってもよく、又は、図5〜図7を参照して説明する方法(後述)のいずれかにより取得されてもよい。
ステップS2において、通信機器11〜14による通信ネットワーク10の専有状態を開始する。専有状態は、例えば通信機器11が設置されるときに、この通信機器11と通信ネットワーク10の他の通信機器12〜16との接続確認を行う場合の状態に相当する。通信機器11のインターフェースコントローラ30は、通信機器12〜14に、図4の処理に必要な動作を実行するように指示し、残りの通信機器15、16に送信を行うことなく待機するように指示する。
通信機器11の指示によって専有状態を開始することに代えて、ユーザが通信機器11〜14のみの電源をオンにして残りの通信機器15、16の電源をオフにすることにより専有状態を開始してもよい。
ステップS3において、通信機器11のインターフェースコントローラ30は、最大伝送速度Rmax以下の任意の伝送速度R(n)を選択する。このとき、通信機器11のインターフェースコントローラ30は、例えば、図13の伝送速度R(n)のいずれか1つを選択する。図13の例では、伝送速度テーブル29aは、パラメータn=1〜6に関して、伝送速度R(1)=10Mbps(ビット/秒)から、通信ネットワーク10の最大伝送速度Rmaxに等しい伝送速度R(6)=60Mbpsまで、10Mbpsのステップ幅で6つの伝送速度を有する。以下の説明では、最初に図13のn=1の場合、すなわち、伝送速度R(1)=10Mbpsを選択するものとする。
ステップS4において、通信機器11のインターフェースコントローラ30は、選択された伝送速度R(n)で通信機器13から通信機器14に負荷データを送信させる。負荷データの送信は、所定テスト期間(例えば10秒間)にわたって継続される。負荷データは、MPEG−2 TSデータに基づく実データのデータ構成D10と同様な形式になっている。ただし負荷データのペイロード64は、実データの場合のようなMPEG−2 TSデータではなく、関数で算出可能なランダムデータ又は各バイトが16進数表現で「FF」などを含む定数データである。インターフェースコントローラ30は、本体部20とは無関係に、ランダムデータ又は定数データなどの固定データを生成することができる。
MACヘッダ61のサイズは18バイトである。詳しくはヘッダが14バイト及びトレーラが4バイトであるが、図11では説明の簡単化のためヘッダの位置にまとめて表している。IPヘッダ62のサイズは、IPv4(internet Protocol version 4)の場合、通常20バイトである。TCPヘッダ63のサイズは、通常20バイトである。MACフレーム60のサイズが規定の1518バイト以下となるためには、ペイロード64のサイズは最大1460バイトとなる。インターフェースコントローラ30は、このようなペイロード64の伝送速度が例えば10Mbpsとなるように、上述した実データの生成法と同様にして、ペイロード64を含むIPパケットを生成し、ネットワークインターフェース32へ送る。ネットワークインターフェース32は、上述した実データの生成法と同様にして、入力された10MbpsのIPパケットに基づき、10Mbpsの伝送速度を有する負荷データを生成することができる。10Mbpsの伝送速度を有する負荷データを、通信機器13が通信機器14へ例えば10秒間の所定テスト期間の間にわたって伝送する場合、ペイロード64の合計サイズは、10/8×10秒=約12Mバイトとなる。
通信機器13から通信機器14に負荷データを送信している間(ステップS4)、ステップS5において、通信機器11のインターフェースコントローラ30は、通信機器11から通信機器12にテストデータを送信してから返信されたテストデータを受信するまでの応答時間T(n)を測定する。図12は、図1の通信システム1で送受信されるテストデータのデータ構成D11を示す図である。データ構成D11は1つのMACフレーム65を含み、MACフレーム65は、MACヘッダ66、IPヘッダ67、ICMP(Internet Control Message Protocol=インターネット制御通知プロトコル)ヘッダ68、及びペイロード69を時系列順に含む。MACヘッダ66及びIPヘッダ67は、データ構成D10のMACヘッダ61及びIPヘッダ62と同様である。ICMPヘッダ68は、タイプ、識別子、及びシーケンス番号を含む。
ICMPヘッダ68のタイプは、ICMPヘッダ68を用いて実行可能な種々の機能を表す。テストデータは、ICMPヘッダ68のこれらの機能のうち、エコー要求通知(Echo Message)及びエコー応答通知(Echo Reply Message)の両機能を用いる。複数のテストデータが通信機器11、12間で伝送される場合、これらのテストデータは、ICMPヘッダ68の識別子によって個々に区別することができ、ICMPヘッダ68のシーケンス番号によって時系列順に順序付けをすることができる。ペイロード69は、送信時点のタイムコードを含む。
上述したように、MACヘッダ66のサイズは18バイトであり、及びIPヘッダ67のサイズは20バイトである。ICMPヘッダ68のサイズは、エコー要求通知及びエコー応答通知の場合、8バイトである。タイムコードが例えば4バイトで表される場合、ペイロード69は4バイトとなる。テストデータのサイズは、これらのサイズの合計であり、18+20+8+4=50バイトとなる。MACフレームの規定の最小サイズが64バイトであるので、ペイロード69を18バイトにすれば、テストデータのサイズは64バイトとなる。
インターフェースコントローラ30は、現在の時刻、すなわち送信時点のタイムコードを含むペイロード69を生成し、次にエコー要求通知に設定されたICMPヘッダ68を追加する。インターフェース部21は、このペイロード69及びICMPヘッダ68で構成されるデータを、上述した負荷データの生成法と同様にしてIPパケットにカプセル化し、次いでMACフレームにカプセル化することにより、テストデータを生成する。通信機器11は、このテストデータを通信機器12へ送る。
通信機器12のインターフェース部40は、このテストデータを逆カプセル化する。インターフェースコントローラ43は、ICMPヘッダ68を抽出し、ICMPヘッダ68のタイプをエコー要求通知からエコー応答通知へ変更する。インターフェース部40は、ペイロード69及び変更されたICMPヘッダ68で構成されるデータを、IPパケットにカプセル化し、次いでMACフレームにカプセル化することにより、テストデータを生成する。通信機器12は、このテストデータを通信機器11へ送る。インターフェース部21は、このテストデータを逆カプセル化し、ペイロード69を抽出する。インターフェースコントローラ30は、ペイロード69内のタイムコードと、現在の時刻、すなわち受信時点のタイムコードとの差分から、テストデータが通信機器11、12間を往復するのに要した伝送時間を表す応答時間を求めることができる。
通信機器11は、所定テスト期間(例えば10秒間)の間、テストデータを通信機器11及び通信機器12の間で複数回にわたって伝送してもよい。インターフェースコントローラ30は、複数回の伝送時間の平均値を応答時間T(n)としてもよい。これにより、通信ネットワーク10のトラフィック状態に依存して変化しがちな応答時間T(n)の信頼性を向上させることができる。図13に示す応答時間T(n)は、平均値の一例である。また、インターフェースコントローラ30は、複数回の伝送時間の最大値を応答時間T(n)としてもよい。これにより、通信ネットワーク10のトラフィック状態に依存して応答時間が最も悪化する場合を考慮することができる。インターフェースコントローラ30は、上述した複数回分の伝送について、ICMPヘッダ68の識別子、シーケンス番号、送信時点のタイムコード、及び受信時点のタイムコードを記載したテーブルを有してもよい。これにより、ペイロード69が送信時点のタイムコードを含まなくてもよいことになる。
通信ネットワーク10のトラフィック状態は、所定テスト期間の間、通信ネットワーク10を行き交うデータの量(すなわち、トラフィック量)に依存する。換言すれば、トラフィック状態は、通信ネットワーク10を行き交う全データの総伝送速度に依存する。伝送速度R(n)が10Mbpsで所定テスト期間が10秒間の場合、負荷データの量は上述したように12Mバイトである。テストデータが通信機器11及び通信機器12の間を所定テスト期間の間5回往復すると仮定すると、テストデータのサイズは、64バイト×2×5=640バイトであり、伝送速度は640バイト×8/10秒=512bpsである。すなわち、通信ネットワーク10に対して、負荷データは10Mbps及び12Mバイトのトラフィック量を与え、テストデータは512bps及び640バイトのトラフィック量を与える。従って、テストデータは、負荷データよりも大略1/20000のトラフィック量しか通信ネットワーク10に与えない。それゆえに、テストデータのトラフィック量への影響は、無視することができる。
通信ネットワーク10のトラフィック状態における伝送制御に、IPv4のIPヘッダ62、67内に規定される1バイトサイズのTOS(Type Of Service)フィールドが利用されてもよい。TOSフィールドを用いることにより、通信ネットワーク10を伝送するデータの優先レベルを選択することができる。4つの通信機器11〜14による専有状態において、テストデータの優先レベルは負荷データの優先レベルに等しく設定される。上述したように、両者の優先レベルが同一であっても、テストデータのトラフィック量への影響は、無視することができる。
このように、図4のステップS5において、通信機器13が最大伝送速度Rmax以下の任意の伝送速度R(n)の負荷データを通信機器14へ伝送している間、通信機器11は、負荷データよりもサイズの小さいテストデータを通信機器12との間で送受信することにより通信機器12に対する応答時間T(n)を検出する。その結果、図13のn=1について、伝送速度R(1)=10Mbpsに対する応答時間T(1)=2msが得られ、伝送速度R(n)及び応答時間T(n)からなる1つのデータ対が得られる。
ステップS6において、通信機器11のインターフェースコントローラ30は、取得された一対の伝送速度R(n)及び応答時間T(n)を伝送速度テーブル29aに格納する。
ステップS7において、通信機器11のインターフェースコントローラ30は、すべての伝送速度R(n)について応答時間T(n)を測定したか否かを判断し、YESのときはステップS8に進み、NOのときはステップS3に戻る。本明細書では、以降、例えば図13のn=2〜6について検査するため、ステップS3〜S6を残りの5回繰り返す。その結果、図13の伝送速度テーブル29a全体が得られる。
上述したように、通信ネットワーク10のトラフィック状態は、通信ネットワーク10を行き交う全データの総伝送速度に依存する。負荷データの伝送速度R(n)が増大するとき、通信ネットワーク10のトラフィック量は単調に増加する。そのため、共有ネットワークでは上述したような衝突回避(無線LANの場合)又は衝突検出(イーサネットの場合)が生じる頻度が高くなり、通信機器11、12間でテストデータを伝送するときの送信タイミングは遅延する。従って、図13に示すように、伝送速度R(n)が10Mbpsから60Mbpsへと増加すると、応答時間T(n)は2msから7msへと増加する。
ステップS8において、通信機器11〜14による通信ネットワーク10の専有状態を終了する。ステップS8では、例えば、通信機器11が通信機器12〜16に専有状態の終了を通知し、通信機器11〜14によって専有されていた通信ネットワーク10を開放する。
以上説明したように、図4の伝送速度テーブル生成処理を実行することにより、図13の伝送速度テーブル29aを生成することができる。生成された伝送速度テーブル29aは、不揮発性メモリ29に格納される。
以上のように構成された実施形態では、通信機器11が伝送速度R(n)を選択し(ステップS3)、選択された伝送速度R(n)で負荷データを送信するように通信機器13に指示したが(ステップS4)、通信機器13が伝送速度R(n)を選択してもよい。この場合、通信機器13は、最大伝送速度Rmax以下の伝送速度R(n)を選択し、選択された伝送速度R(n)で通信機器13から通信機器14に負荷データを送信するとともに、選択された伝送速度R(n)を通信機器11に通知する。通信機器11のインターフェースコントローラ30は、通知された伝送速度R(n)と測定された応答時間T(n)とのデータ対を伝送速度テーブル29aに格納する。
(4)最大伝送速度Rmaxの測定
最大伝送速度Rmaxは、前述のように、ユーザにより入力される既知の値であってもよく、又は、通信機器11〜14が測定を行うことにより取得されてもよい。
通信ネットワーク10の最大伝送速度Rmaxは、通信機器11〜16のうちの任意の一対の通信機器(例えば通信機器11、12)間で負荷データを伝送し、この負荷データの伝送速度を徐々に増加させ、以下に示すいくつかの測定法で通信ネットワーク10の輻輳状態を検出することにより、求めることができる。1つ目の測定法では、特にTCPプロトコルを用いる場合、通信機器11のインターフェースコントローラ30がネットワークインターフェース32内のバッファメモリ(図示せず)の込み具合を調べ、満杯になると最大伝送速度Rmaxを超えていると判断する。2つ目の測定法では、特にUDPプロトコルを用いる場合、通信機器12のインターフェースコントローラ43が、通信機器11から受信した負荷データの誤り率を算出し、この誤り率情報を通信機器11へ送り返す。通信機器11のインターフェースコントローラ30は、この誤り率が所定の上限値以上になると最大伝送速度Rmaxを超えていると判断する。この上限値は、例えばTSパケットのリードソロモン符号が訂正可能な誤り率の上限値である。また、負荷データの誤り率は、負荷データが上述したような固定データであることに基づいて算出することができる。2つ目の測定法において、通信機器12は、通信機器11から受信した負荷データをそのまま通信機器11へ送り返し、通信機器11のインターフェースコントローラ30が負荷データの誤り率を算出してもよい。これが3つ目の測定法である。なお、上述したネットワークインターフェース32内のバッファメモリ(図示せず)は、バッファメモリ31と統合されてもよい。
以下、図5〜図7を参照して、上述した測定法のうちの任意のものに基づき最大伝送速度Rmaxを測定する例について説明する。
図5は、図4のステップS1の第1の実施例を示すサブルーチンである。図5の処理では、通信機器11、12により最大伝送速度Rmaxを測定する。図5のステップS11において、通信機器11、12による通信ネットワークの専有状態を開始する。通信機器11のインターフェースコントローラ30は、通信機器12に、図6の処理に必要な動作を実行するように指示し、残りの通信機器13〜16に送信を行うことなく待機するように指示する。ステップS12において、通信機器11のインターフェースコントローラ30は、通信機器11から通信機器12に負荷データを送信することで、通信ネットワーク10の最大伝送速度Rmaxを測定する。通信機器11のインターフェースコントローラ30は、測定された最大伝送速度Rmaxを不揮発性メモリ29に格納する。ステップS13において、通信機器11、12による通信ネットワークの専有状態を終了する。ステップS13では、例えば、通信機器11が通信機器12〜16に専有状態の終了を通知し、通信機器11、12によって専有されていた通信ネットワーク10を開放する。その後、図4のステップS2に進む。
図6は、図4のステップS1の第2の実施例を示すサブルーチンである。図6の処理では、通信機器13、14により最大伝送速度Rmaxを測定する。図6のステップS21において、通信機器11のインターフェースコントローラ30は、通信機器13、14による通信ネットワークの専有状態を開始させる。通信機器11のインターフェースコントローラ30は、通信機器13、14に、図6の処理に必要な動作を実行するように指示し、残りの通信機器12、15、16に送信を行うことなく待機するように指示する。ステップS22において、通信機器11のインターフェースコントローラ30は、通信機器13から通信機器14に負荷データを送信させることで、通信機器13のインターフェースコントローラ43に、通信ネットワーク10の最大伝送速度Rmaxを測定させる。通信機器13のインターフェースコントローラ43は、測定された最大伝送速度Rmaxを不揮発性メモリ44に格納する。ステップS23において、通信機器11のインターフェースコントローラ30は、通信機器13から最大伝送速度Rmaxを受信する。通信機器11のインターフェースコントローラ30は、受信された最大伝送速度Rmaxを不揮発性メモリ29に格納する。ステップS24において、通信機器11のインターフェースコントローラ30は、通信機器13、14による通信ネットワークの専有状態を終了させる。ステップS24では、例えば、通信機器11が通信機器12〜16に専有状態の終了を通知し、通信機器13、14によって専有されていた通信ネットワーク10を開放する。その後、図4のステップS2に進む。
図7は、図4のステップS1の第3の実施例を示すサブルーチンである。図7の処理では、通信機器11、12により最大伝送速度Rmaxを測定し、さらに、通信機器13、14により最大伝送速度Rmaxを測定する。図7のステップS31において、通信機器11、12による通信ネットワークの専有状態を開始する。ステップS32において、通信機器11のインターフェースコントローラ30は、通信機器11から通信機器12に負荷データを送信することで、通信ネットワーク10の最大伝送速度Rmaxを測定する。通信機器11のインターフェースコントローラ30は、測定された最大伝送速度Rmaxを不揮発性メモリ29に格納する。ステップS33において、通信機器11、12による通信ネットワークの専有状態を終了する。ステップS34において、通信機器11のインターフェースコントローラ30は、通信機器13、14による通信ネットワークの専有状態を開始させる。ステップS35において、通信機器11のインターフェースコントローラ30は、通信機器13から通信機器14に負荷データを送信させることで、通信機器13に、通信ネットワーク10の最大伝送速度Rmaxを測定させる。通信機器13は、測定された最大伝送速度Rmaxを不揮発性メモリ44に格納する。ステップS36において、通信機器11のインターフェースコントローラ30は、通信機器13、14による通信ネットワークの専有状態を終了させる。その後、図4のステップS2に進む。
図7の処理によれば、例えば、無線環境において通信機器の組み合わせごと(通信機器11、12間と通信機器13、14間)に最大伝送速度が異なる場合に、適切な最大伝送速度を測定することができる。また、図5のように2つの通信機器11、12のみによる専有状態を用いることで、通信機器間における各種データの伝送を簡略化することができ、最大伝送速度Rmaxを簡単に測定することができる。
(5)伝送速度テーブル生成処理の変形例
図8は、図1の通信機器11によって実行される変形例の伝送速度テーブル生成処理を示すフローチャートである。伝送速度テーブル生成処理において、負荷データの伝送は、通信機器13、14間で行うことに限定されず、通信機器11、12間(すなわち、テストデータを伝送する通信機器と同じ通信機器)で行ってもよい。この場合、図4のような4つの通信機器11〜14による専有状態ではなく、2つの通信機器11、12のみによる専有状態を用いることができる。
図8のステップS41において、通信機器11のインターフェースコントローラ30は、最大伝送速度Rmaxを取得する。ステップS41は図4のステップS1と同様であり、詳しくは、図5〜図7のいずれかの処理に従って行うことができる。ステップS42において、通信機器11、12による通信ネットワーク10の専有状態を開始する。ステップS43において、通信機器11のインターフェースコントローラ30は、図13の伝送速度R(n)のいずれか1つを選択する。ステップS44において、通信機器11のインターフェースコントローラ30は、選択された伝送速度R(n)で通信機器11から通信機器12に負荷データを送信しながら、通信機器11から通信機器12にテストデータを送信してから返信されたテストデータを受信するまでの応答時間T(n)を測定する。ステップS45において、通信機器11のインターフェースコントローラ30は、伝送速度R(n)及び応答時間T(n)を伝送速度テーブル29aに格納する。ステップS46において、通信機器11のインターフェースコントローラ30は、すべての伝送速度R(n)について応答時間T(n)を測定したか否かを判断し、YESのときはステップS47に進み、NOのときはステップS43に戻る。ステップS47において、通信機器11のインターフェースコントローラ30は、通信機器11、12による通信ネットワーク10の専有状態を終了する。
図8のように2つの通信機器11、12のみによる専有状態を用いることで、通信機器間における各種データの伝送を簡略化することができ、伝送速度テーブル29aの生成を簡略化することができる。
(6)データ伝送処理
図9は、図1の通信機器11によって実行されるデータ伝送処理を示すフローチャートである。図9の処理は、受信側の通信機器12の要求に応じて送信側の通信機器11から受信側の通信機器12へのデータ伝送(実データの伝送)を行うために実行される。図9の処理は、通信ネットワーク10の非専有状態で行われる。従って、通信ネットワーク10の通信帯域(伝送速度)の一部は、他の通信によってすでに使用されている可能性があるが、通信機器11のインターフェースコントローラ30は、この使用済み伝送速度を、図4又は図8の伝送速度テーブル生成処理で生成された伝送速度テーブル29aを用いて評価することで、通信ネットワーク10のトラフィック状態を検査し、さらに、実データの伝送の可否を判断する。
図9のステップS51において、通信機器11のインターフェースコントローラ30は、通信機器12からデータ伝送要求を受信したか否かを定期的に判断し、YESのときはステップS52に進む。ステップS52において、通信機器11のインターフェースコントローラ30は、要求されたデータ伝送を行うための「必要伝送速度」を決定する。通信機器11はさらに、伝送する実データの優先レベルも決定する。
ステップS53において、通信機器11のインターフェースコントローラ30は、通信機器11から通信機器12にテストデータを送信してから返信されたテストデータを受信するまでの応答時間を検出する。テストデータは、図4のステップS5で伝送したテストデータと同じである。ステップ53で伝送するテストデータの優先レベルは、実データの優先レベルと等しく設定される。以下の説明では、検出された応答時間は例えば4msであったとする。図4のステップS5と同様に、通信機器11のインターフェースコントローラ30は、所定テスト期間(例えば10秒間)の間、テストデータを通信機器11及び通信機器12の間で複数回にわたって伝送してもよい。インターフェースコントローラ30は、複数回の伝送時間の平均値を、検出された応答時間としてもよい。また、インターフェースコントローラ30は、複数回の伝送時間の最大値を、検出された応答時間としてもよい。このステップS53は、後のステップS57において大量の実データを伝送する前に、通信ネットワーク10のトラフィック状態を検査するために行われる。テストデータのサイズは、実データのサイズよりも小さい。
ステップS54において、通信機器11のインターフェースコントローラ30は、伝送速度テーブル29aに基づいて、検出された応答時間に対応する伝送速度を「使用済み伝送速度」として決定する。検出された応答時間は例えば4msであったとき、図13のn=3のときのデータ対から、使用済み伝送速度は30Mbpsになる。従って、応答時間が検出された時点において、非専有状態の通信ネットワーク10におけるトラフィック量が30Mbpsであったことになる。
なお、ステップS53で検出される応答時間は、通常は、図13の複数の応答時間T(n)のうちのいずれにも一致せず、2〜7msの間の値をとることになる。この場合、インターフェースコントローラ30は、伝送速度テーブル29aに格納された複数の応答時間T(n)の内挿値又は外挿値と、ステップS53で検出された応答時間とを比較して、検出された応答時間に対応する伝送速度を推定する。図14は、図1の通信機器11の伝送速度テーブル29aに格納される伝送速度R(n)及び応答時間T(n)の一例を示すグラフである。詳しくは、インターフェースコントローラ30は、伝送速度テーブル29aに格納された伝送速度R(n)の内挿値又は外挿値から、検出された応答時間に一致する値を決定し、伝送速度テーブル29aにおいて、決定された伝送速度R(n)の内挿値又は外挿値に対応する応答時間T(n)の内挿値又は外挿値を、使用済み伝送速度として決定する。これにより、検出された応答時間が伝送速度テーブル29aに格納された応答時間T(n)のうちのいずれにも一致しなくても、伝送速度テーブル29aに格納された応答時間T(n)及び伝送速度R(n)の内挿値又は外挿値を用いることにより、検出された応答時間に対応する使用済み伝送速度をより正確に推定することができる。
ステップS55において、通信機器11のインターフェースコントローラ30は、最大伝送速度Rmax及び使用済み伝送速度から、要求されたデータ伝送を行うために利用可能な「有効残留伝送速度」を決定する。有効残留伝送速度は、所定のトラフィック量が生じている通信ネットワーク10において、追加で伝送可能なデータ量を示している。有効残留伝送速度は、実データを安定的に伝送するのに十分な大きさを有することが必要である。ここで、「安定的な伝送」とは、通信機器12が伝送後の実データから生成したMPEG−2 TSデータを例えばディスプレイ50に表示する場合、破綻のない、伝送前と大略同一の品質を得ることができることを表す。換言すれば、「安定的な伝送」とは、通信システム1が有する安定的な伝送を可能にする各種の仕組みが破綻しない範囲内で実データを伝送可能であることを表す。
詳しくは、特にTCPプロトコルを用いる場合には、安定的な伝送の状態では、例えばネットワークインターフェース32内のバッファメモリ(図示せず)のデータ量が常に満杯より少ない状態で、実データの遅延量が推移する。TCPプロトコルによるフロー制御によって伝送速度R(n)が増加するにつれて、ネットワークインターフェース32が実データを送信するタイミングが遅延し、そのためネットワークインターフェース32内のバッファメモリのデータ量は増加する。しかし、安定的な伝送の状態では、ネットワークインターフェース32内のバッファメモリのデータ量が満杯まで増加することはない。一方、特にUDPプロトコルを用いる場合には、安定的な伝送の状態では、例えばTSパケットのリードソロモン符号(Reed−Solomon Coding)の復号化が常に訂正可能な状態で、実データの誤り率が推移する。リードソロモン符号の復号化は、信号処理回路48内のTSデコーダ(図示せず)において行われる。
安定的な伝送の可否の判断基準は、通信機器11の設計段階において、最大伝送速度Rmax、伝送速度テーブル(すなわち、伝送速度R(n)と応答時間T(n)との対応関係)、及び検出される応答時間に基づいて、実験及びシミュレーションによって求めることができる。通信機器11のインターフェースコントローラ30内には、このような安定的な伝送の可否の判断基準が実装されている。
例えば、有効残留伝送速度として、最大伝送速度Rmaxから使用済み伝送速度を減算した残りの伝送速度を使用可能である。上述した例では、有効残留伝送速度は、60Mbps−30Mbps=30Mbpsである。それに代わって、有効残留伝送速度として、最大伝送速度Rmaxから使用済み伝送速度及び所定の余裕値を減算した残りの伝送速度を使用可能である。余裕値は、通信ネットワーク10における種々の不確実な状況を考慮し、例えば最大伝送速度Rmaxの0〜10%を留保する。最大伝送速度Rmaxの10%とすると、上述した例では余裕値は6Mbpsとなる。従って、余裕値を考慮した有効残留伝送速度は、60Mbps−30Mbps−6Mbps=24Mbpsである。
ステップS56において、通信機器11のインターフェースコントローラ30は、有効残留伝送速度が必要伝送速度よりも高いか否かを判断し、YESのときはステップS57に進み、NOのときはステップS58に進む。換言すれば、通信機器11のインターフェースコントローラ30は、最大伝送速度Rmax、伝送速度テーブル29a(すなわち、図13の伝送速度R(n)と応答時間T(n)との対応関係)、及びステップS53で検出された応答時間に基づき、必要伝送速度の実データを所定優先レベルで伝送することができるか否かを判断する。実データの必要伝送速度を20Mbpsとすれば、上述した例では、余裕値を考慮した有効残留伝送速度24Mbpsは実データの必要伝送速度20Mbpsを超えるので、通信機器11は実データの安定的な伝送を開始する。
通信ネットワーク10の総トラフィック量は最大伝送速度Rmax以下でなければならないので、有効残留伝送速度は、少なくとも、実データの必要伝送速度より高くなければならない。有効残留伝送速度として、最大伝送速度Rmaxから使用済み伝送速度を減算した残りの伝送速度を使用した場合には、実データの安定的な伝送がほとんど不可能な状態を伝送中止とすることができるので、伝送中止の判断を間違う恐れがほとんどないことになる。また、余裕値を考慮した有効残留伝送速度を使用した場合には、実データの伝送中に通信ネットワーク10のトラフィック状態が所定の余裕値だけ悪化しても、実データは良好に伝送することができ、安定性の高い実データ伝送が可能となる。
ステップS57において、通信機器11は、データ伝送サブルーチン処理を実行し、ステップS51で通信機器12から要求された実データの伝送を実行する。データ伝送の詳細については、図10を参照して後述する。
ステップS58において、通信機器11は、データ伝送を中止し、データ伝送が中止されたことをインジケータ25に表示する。これにより、実データを享受するユーザに、データ伝送の中止を適切に知らせることができる。ステップS59において、通信機器11のインターフェースコントローラ30は、データ伝送が中止されたことを通信機器12に通知し、通信機器12のディスプレイ50に表示させ、処理を終了する。これにより、実データを享受するユーザに、データ伝送の中止を適切に知らせることができる。
図10は、図4のステップS57を示すサブルーチンである。通信機器11のインターフェースコントローラ30は、データ伝送を開始した後で、通信ネットワーク10のトラフィック状態を検査してもよい。図10のステップS61において、通信機器11は、通信機器11から通信機器12へのデータ伝送を開始する。ステップS62において、通信機器11のインターフェースコントローラ30は、通信機器11から通信機器12にテストデータを送信してから返信されたテストデータを受信するまでの応答時間を検出する。ステップS63において、通信機器11のインターフェースコントローラ30は、伝送速度テーブル29aに基づいて、検出された応答時間に対応する伝送速度を、データ伝送中の使用済み伝送速度として決定する。ステップS63で決定される使用済み伝送速度には、ステップS61で伝送開始された実データの伝送速度も含まれている。ステップS64において、通信機器11のインターフェースコントローラ30は、最大伝送速度Rmax及び使用済み伝送速度からデータ伝送中の有効残留伝送速度を決定する。
ステップS62で検出された応答時間が例えば6msであったとすると、使用済み伝送速度は50Mbpsとなる。従って、実データを伝送中の通信ネットワーク10のトラフィック量は、実データを伝送する前の(余裕値を考慮しない)有効残留伝送速度30Mbpsに、実データの必要伝送速度20Mbpsを加えた値に一致する。すなわち、実データを伝送中の通信ネットワーク10のトラフィック量は、伝送前の目論見通りに推移している。伝送中の(余裕値を考慮しない)有効残留伝送速度は、60−50=10Mbpsとなる。
ステップS65において、通信機器11のインターフェースコントローラ30は、データ伝送中の有効残留伝送速度がしきい値よりも高いか否かを判断し、YESのときはステップS66に進み、NOのときはステップS67に進む。ステップS65のしきい値は、例えば、ステップS55に関連して説明した有効残留伝送速度の余裕値(上述の例では、6Mbps)と同じ値にしてもよい。
ステップS67において、通信機器11のインターフェースコントローラ30は、データ伝送が不安定であることをインジケータ25に表示して、ステップS66に進む。上述した例では、伝送中の有効残留伝送速度10Mbpsは所定の余裕値6Mbpsを超えるので、通信機器11は実データの伝送を続行する。これにより、実データの伝送中に通信ネットワーク10のトラフィック量が多くなり、有効残留伝送速度が少なくなった場合に、実データを享受するユーザに、実データの伝送が不安定であることを警告することができる。
通信機器11のインターフェースコントローラ30は、データ伝送を継続する間、ステップS62〜S67を所定周期で実行する。この周期は、例えば5分である。
上述した例では、ステップS5、S53などで取得される応答時間は、テストデータを2つの通信機器の間で複数回にわたって伝送したときの複数回の伝送時間の平均値及び最大値に限定されず、複数回の伝送時間の最小値でもよい。特に、専有状態(例えば図4のステップS5)で測定される応答時間T(n)が伝送時間の最小値を表し、非専有状態(例えば図9のステップS53)で検出される応答時間が伝送時間の平均値を表してもよい。例えば、図4のステップS5において伝送時間の最小値により専有状態の応答時間T(n)を測定したとき、伝送速度R(n)=10、20、30、40、50、60[Mbps]及び応答時間T(n)=1、2、3、4、5、6[ms]の各データ対を含む伝送速度テーブル29aが得られたとする。この場合、図9のステップS53において、伝送時間の平均値により非専有状態の応答時間4msを検出したとすると、応答時間に対応する伝送速度は40Mbpsとなる。従って、図13の例では30Mbpsであったのに対して、10Mbps増加する。このように、複数の伝送時間の最小値で応答時間T(n)を表すことにより、通信ネットワーク10のトラフィック量の最大値を考慮して、実データの安定的な伝送の可否を厳格に判断することができ、より確実に実データの安定的な伝送を行うことができる。
上述した例では、通信機器11〜14は、それぞれ個別のステップ及び処理を実行するように説明された。しかしながら、これらの個別のステップ及び処理のうちの少なくとも一部又は全部を各通信機器11〜14に実行させるプログラムを、各通信機器11〜14が実装してもよい。例えば通信機器11は、通信機器13に上述したステップ及び処理を実行させるプログラムを、自身のプログラムと統合して実装されてもよく、この統合されたプログラムは通信機器13においても同様に実装されてもよい。例えば通信機器12は、通信機器14に上述したステップ及び処理を実行させるプログラムを、自身のプログラムと統合して実装されてもよく、この統合されたプログラムは通信機器14においても同様に実装されてもよい。これにより、上述した例において、通信機器11と通信機器13とは同一仕様で製造することができ、通信機器12と通信機器14とは同一仕様で製造することができる。例えば、各通信機器11、13に実装される上述したプログラムはインターフェースコントローラ30に実装され、各通信機器12、14に実装される上述したプログラムはインターフェースコントローラ43に実装される。
一般には、任意の一対の通信機器ごとに無線環境が異なる可能性があるので、図4又は図8の伝送速度テーブル生成処理を通信機器11〜16のそれぞれが実行する必要がある。しかしながら、通信機器11〜16が同一のタイプの機器であるならば、いずれか1つの通信機器が生成した伝送速度テーブルの内容を他の通信機器にコピーしてもよい。
(7)結び
このように、通信システム1では、例えば通信機器11が設置されるときに、通信機器11、12又は通信機器11〜14による専有状態を開始し、大量の負荷データを用いて通信ネットワーク10のトラフィック状態を検査し、伝送速度テーブル29a(すなわち、伝送速度R(n)と応答時間T(n)との対応関係)を生成する。その後、非専有状態で大量の実データを伝送するとき、通信機器11は、実データの伝送前に小量のテストデータを用いて応答時間を検出することにより、実データの安定的な伝送を開始することができるか否かを判断する。それゆえに、実データの伝送前には、応答時間を検出するための小量のテストデータを伝送するだけで済み、通信ネットワーク10への追加のトラフィック量は、負荷データを伝送する場合に比べて最小限に抑制することができる。その結果、非専有状態であってもテストデータが他の通信を妨害することはなく、また実データの伝送前の所定テスト期間は、例えば10秒程度以下に大幅に短縮化することができる。このようなテストデータの伝送が実データの伝送前に毎回実行されても、ユーザは、その実行を負担を感じることもなく実データを享受することが可能となる。
さらに、専有状態を2つの通信機器11、12で構成することにより、通信機器間における各種データの伝送を簡略化することができ、伝送速度テーブル29a及び最大伝送速度Rmaxを簡単に調べることができる。
以上において記述された数字は、実施形態を具体的に説明するために例示したものであり、本明細書に開示された技術は例示された数字に限定されない。フローチャート内の各ステップは、本明細書に開示された技術の趣旨を逸脱しない範囲内で、上述した順序とは異なる順序で実行されてもよく、かつ複数のフローチャートにおけるすべてのステップのいくつかについて、上述したフローチャートとは異なる組み合わせで再構成してもよい。これらにより、異なる順序又は組み合わせの効果を奏することが可能である。上述した実施形態におけるすべての構成要素のいくつかについて、本明細書に開示された技術の趣旨を逸脱しない範囲内で、上述した実施形態とは異なる組み合わせで再構成することにより、異なる組み合わせの効果を奏することが可能である。
以上説明した実施形態はすべて、本明細書に開示された技術を具体化した一例であって、本明細書に開示された技術はこれらの例に限定されず、本明細書に開示された技術を用いて当業者が容易に構成可能な種々の例に展開可能である。
本明細書に開示された技術は、宅内ネットワークなどの共有ネットワーク環境において、ストリーム配信を確実に行う通信技術として利用できる。
1…通信システム、
10…通信ネットワーク、
11〜16…通信機器、
20、41…本体部、
21、40…インターフェース部、
22、42…配線、
23、47…メインコントローラ、
24、48…信号処理回路、
25…インジケータ、
26、49…チューナ、
27…ハードディスクドライブ、
28…BDドライブ、
29、44…不揮発性メモリ、
30、43…インターフェースコントローラ、
31、46…バッファメモリ、
32、45…ネットワークインターフェース、
50…ディスプレイ、
60、65…MACフレーム、
61,66…MACヘッダ、
62、6742…IPヘッダ、
63…TCPヘッダ、
64、69…ペイロード、
68…ICMPヘッダ、
D10、D11…データ構成、
Rmax…最大伝送速度。
本発明は、通信システム及び通信方法に関し、さらに詳しくは、複数の通信機器を備えた宅内ネットワーク環境の通信システムにおいてストリーム配信をより確実に実行する通信システム及び通信方法に関する。
近年、宅内のパーソナルコンピュータをインターネットに接続する方式として、FTTH(Fiber To The Home)が普及してきている。宅内でも家電機器やコンピュータ、その他の周辺機器をネットワーク接続して機器間通信を実現した宅内ネットワークが利用されて始めている。今後、宅内ネットワークは、ネットワーク接続機器間におけるコンテンツ送受信を可能とし、ユーザに利便性及び快適性を提供するものとして、ますます普及することが予測される。
例えば、宅内では、TVチューナなどの映像受信装置及びハードディスクなどの記憶装置を有するAV機器をサーバ装置として使用し、サーバ装置が保有する映像コンテンツを、宅内ネットワークを介して別部屋のクライアント装置に送信することができる。これにより、クライアント装置において映像コンテンツを受信しながら再生するといった、データのストリーミング配信及び再生処理が可能となる。
このようなストリーミング配信を行うサーバ装置は、エンコード処理などを実行して送信データを生成し、宅内ネットワークに送出する。一方、ストリーミング配信されたデータの再生を行うクライアント装置は、受信データをバッファに一時蓄積し、その後、順次にデコード処理及び再生処理を行う。
しかし、宅内ネットワーク上には複数のデータ通信が競合する場合がある。このような複数のデータ通信が競合すると、通信帯域が不足し、ストリーミング配信の遅れなどの問題が発生する。
この競合するデータ通信の処理法については、さまざまな提案がなされている。例えば特許文献1は、各通信データに対して優先度に応じた帯域割り当てを行うプライオリティベースのQoS(Quality of Service)技術に関する構成を開示している。例えば、動画像のストリーミングデータ配信においてリアルタイム再生を実現するためには、動画像を構成するパケットを遅延することなく、ストリーミングサーバからストリーミングクライアントに送信することが必要となる。一方、時間的な遅れが許容されるデータパケットもある。従って、ストリーミングの配信データに対して通常の通信データより高いプライオリティを設定し、処理優先度を判別して通信処理を実行するようにしている。
プライオリティを用いるとき、データ通信の競合の検査は、例えば以下のように行われる。サーバ装置から新たなストリーミングのデータ配信を開始する前に一定の検査期間を設け、ストリーミングのデータ配信に対応して設定された本来の規定のプライオリティより低いプライオリティの負荷データを送信する。この低プライオリティ設定下での負荷データの送信状況を検証し、ストリーミング伝送に対応する本来の規定のプライオリティに移行してもよいか否かを判断する。移行が許容されると判断した場合、本来の規定のプライオリティでストリーミングデータ送信を実行する。
この検査期間において同時に別のストリーミング伝送が行われていたとしても、低プライオリティの負荷データが高プライオリティの既存のストリーミング伝送に与える影響は防止される。すなわち、既存のストリーミング配信がある場合、その既存ストリーミングの帯域を奪うことがないので、既存のストリーミングを再生しているクライアントの再生画像を乱さないとしている。
特開2007−74225号公報
しかしながら、この検査期間において低プライオリティかつ大量の負荷データを伝送する場合、負荷データが、続いて伝送するストリーミングデータと同程度の大容量の伝送速度を有するので、いくつかの課題を発生させる。1つ目の課題は、負荷データが低プライオリティであっても、検査期間の間、同程度以下のプライオリティのデータ伝送を妨害することである。妨害の程度が大きければ、この間通信不能となる可能性もある。2つ目の課題は、負荷データが大量かつ低プライオリティであるので、場合によっては度重なる遅延により検査期間が長期化しやすいことである。特許文献1には1分程度と例示されているが、これ以上の検査期間を必要とすることもある。このため、ストリーミングデータの伝送を開始する前に、1分以上の検査期間が必要となり、クライアントでストリーミングデータを享受するユーザは、その間、待機していなければならない。3つ目の課題は、ストリーミング伝送を行うごとに、毎回事前に大量の負荷データを伝送しなければならないことである。従って、1つ目及び2つ目の課題は、ストリーミング伝送を行うごとに毎回発生することになる。
本発明の目的は、上述した課題を解決するものであり、大量の負荷データを用いることによる種々の問題を軽減する通信システム及び通信方法を提供することにある。
本発明の第1の態様に係る通信システムによれば、
通信ネットワークを介して互いに接続された少なくとも第1通信機器及び第2通信機器を含む複数の通信機器を備えた通信システムにおいて、
上記第1通信機器は、上記複数の通信機器のうちの任意の一対の通信機器間で異なる複数の伝送速度で負荷データを伝送するときに、上記負荷データよりも小さなサイズのテストデータを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第1応答時間と、上記第1応答時間に対応する伝送速度とを含む伝送速度テーブルを記憶装置に格納し、
上記第1通信機器から上記第2通信機器に実データを伝送するとき、上記第1通信機器は、
上記実データを伝送するための必要伝送速度を決定し、
上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第2応答時間を検出し、
上記伝送速度テーブルに基づいて、上記第2応答時間に対応する伝送速度を使用済み伝送速度として決定し、
上記通信ネットワークの最大伝送速度及び上記使用済み伝送速度から、上記実データを伝送するために利用可能な上記通信ネットワークの有効残留伝送速度を決定し、
上記有効残留伝送速度が上記必要伝送速度よりも高いとき、上記実データの伝送を開始することを特徴とする通信システム。
上記通信システムにおいて、
上記第1通信機器は上記最大伝送速度を取得し、
上記第1通信機器及び上記第2通信機器は、上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始し、
上記専有状態において、上記第1通信機器は、
上記第1通信機器及び上記第2通信機器の間で異なる複数の伝送速度で負荷データを伝送するときに、上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送して上記第1応答時間を測定し、
上記第1応答時間と、上記第1応答時間に対応する上記負荷データの伝送速度とを上記伝送速度テーブルに格納することを特徴とする。
上記通信システムにおいて、
上記第1通信機器は上記最大伝送速度を取得し、
上記第1通信機器、上記第2通信機器、第3通信機器、及び第4通信機器は、上記通信ネットワークにおいて上記第1通信機器、上記第2通信機器、上記第3通信機器、及び上記第4通信機器のみが通信を行う専有状態を開始し、
上記専有状態において、上記第1通信機器は、
上記第3通信機器及び上記第4通信機器の間で異なる複数の伝送速度で負荷データを伝送するときに、上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送して上記第1応答時間を測定し、
上記第1応答時間と、上記第1応答時間に対応する上記負荷データの伝送速度とを上記伝送速度テーブルに格納することを特徴とする。
上記通信システムにおいて、
上記第1通信機器及び上記第2通信機器は、上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始し、
上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で負荷データを伝送することで上記最大伝送速度を測定することを特徴とする。
上記通信システムにおいて、
上記第3通信機器及び上記第4通信機器は、上記通信ネットワークにおいて上記第3通信機器及び上記第4通信機器のみが通信を行う専有状態を開始し、
上記第3通信機器は、上記第3通信機器及び上記第4通信機器の間で負荷データを伝送することで上記最大伝送速度を測定し、
上記第1通信機器は、上記第3通信機器から上記最大伝送速度を取得することを特徴とする。
上記通信システムにおいて、
上記第1通信機器及び上記第2通信機器は、上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始し、
上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で負荷データを伝送することで上記最大伝送速度を測定し、
上記第3通信機器及び上記第4通信機器は、上記通信ネットワークにおいて上記第3通信機器及び上記第4通信機器のみが通信を行う専有状態を開始し、
上記第3通信機器は、上記第3通信機器及び上記第4通信機器の間で負荷データを伝送することで上記最大伝送速度を測定することを特徴とする。
上記通信システムにおいて、上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の平均値を取得することで、上記第1応答時間を測定することを特徴とする。
上記通信システムにおいて、上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最大値を取得することで、上記第1応答時間を測定することを特徴とする。
上記通信システムにおいて、上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最小値を取得することで、上記第1応答時間を測定することを特徴とする。
上記通信システムにおいて、上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の平均値を取得することで、上記第2応答時間を検出することを特徴とする。
上記通信システムにおいて、上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最大値を取得することで、上記第2応答時間を検出することを特徴とする。
上記通信システムにおいて、上記第1通信機器は、上記伝送速度テーブルに格納された上記第1応答時間及び上記伝送速度の内挿値又は外挿値と、上記第2応答時間とを比較して、上記第2応答時間に対応する伝送速度を上記使用済み伝送速度として決定することを特徴とする。
上記通信システムにおいて、上記有効残留伝送速度は、上記最大伝送速度から上記使用済み伝送速度を減算した残りの伝送速度であることを特徴とする。
上記通信システムにおいて、上記有効残留伝送速度は、上記最大伝送速度から上記使用済み伝送速度及び所定の余裕値を減算した残りの伝送速度であることを特徴とする。
上記通信システムにおいて、
上記第1通信機器は、
第1表示器を備え、
上記有効残留伝送速度が上記必要伝送速度以下であるとき、上記実データの伝送を中止して、上記実データの伝送が中止されたことを上記第1表示器に表示することを特徴とする。
上記通信システムにおいて、
上記実データの伝送の開始後、上記第1通信機器は、
上記データを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第3応答時間を検出し、
上記伝送速度テーブルに基づいて、上記第3応答時間に対応する伝送速度を使用済み伝送速度として決定し、
上記通信ネットワークの最大伝送速度及び上記使用済み伝送速度から上記有効残留伝送速度を決定し、
上記有効残留伝送速度が所定のしきい値以下であるとき、上記実データの伝送が不安定であることを上記第1表示器に表示することを特徴とする。
上記通信システムにおいて、
上記第1通信機器は、上記有効残留伝送速度が上記必要伝送速度以下であるとき、上記実データの伝送を中止して、上記実データの伝送が中止されたことを上記第2通信機器に通知し、
上記第2通信機器は、
第2表示器を備え、
上記実データの伝送が中止されたことを上記第2表示器に表示することを特徴とする。
本発明の第2に態様に係る通信方法によれば、
通信ネットワークを介して互いに接続された少なくとも第1通信機器及び第2通信機器を含む複数の通信機器を備えた通信システムの通信方法において、
上記第1通信機器は、上記複数の通信機器のうちの任意の一対の通信機器間で異なる複数の伝送速度で負荷データを伝送するときに、上記負荷データよりも小さなサイズのテストデータを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第1応答時間と、上記第1応答時間に対応する伝送速度とを含む伝送速度テーブルを記憶装置に格納し、
上記通信方法は、上記第1通信機器から上記第2通信機器に実データを伝送するとき、上記第1通信機器において、
上記実データを伝送するための必要伝送速度を決定するステップと、
上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第2応答時間を検出するステップと、
上記伝送速度テーブルに基づいて、上記第2応答時間に対応する伝送速度を使用済み伝送速度として決定するステップと、
上記通信ネットワークの最大伝送速度及び上記使用済み伝送速度から、上記実データを伝送するために利用可能な上記通信ネットワークの有効残留伝送速度を決定するステップと、
上記有効残留伝送速度が上記必要伝送速度よりも高いとき、上記実データの伝送を開始するステップとを含むことを特徴とする。
上記通信方法は、
上記第1通信機器において上記最大伝送速度を取得するステップと、
上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始するステップと、
上記専有状態において、
上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で異なる複数の伝送速度で負荷データを伝送するときに、上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送して上記第1応答時間を測定するステップと、
上記第1通信機器において、上記第1応答時間と、上記第1応答時間に対応する上記負荷データの伝送速度とを上記伝送速度テーブルに格納するステップとを含むことを特徴とする。
上記通信方法は、
上記第1通信機器において上記最大伝送速度を取得するステップと、
上記通信ネットワークにおいて上記第1通信機器、上記第2通信機器、上記第3通信機器、及び上記第4通信機器のみが通信を行う専有状態を開始するステップと、
上記専有状態において、
上記第1通信機器において、上記第3通信機器及び上記第4通信機器の間で異なる複数の伝送速度で負荷データを伝送するときに、上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送して上記第1応答時間を測定するステップと、
上記第1通信機器において、上記第1応答時間と、上記第1応答時間に対応する上記負荷データの伝送速度とを上記伝送速度テーブルに格納するステップとを含むことを特徴とする。
上記通信方法は、
上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始するステップと、
上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で負荷データを伝送することで上記最大伝送速度を測定するステップとを含むことを特徴とする。
上記通信方法は、
上記通信ネットワークにおいて上記第3通信機器及び上記第4通信機器のみが通信を行う専有状態を開始するステップと、
上記第3通信機器及び上記第4通信機器の間で負荷データを伝送することで上記最大伝送速度を測定するステップと、
上記第1通信機器において、上記第3通信機器から上記最大伝送速度を取得するステップとを含むことを特徴とする。
上記通信方法は、
上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始するステップと、
上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で負荷データを伝送することで上記最大伝送速度を測定するステップと、
上記通信ネットワークにおいて上記第3通信機器及び上記第4通信機器のみが通信を行う専有状態を開始するステップと、
上記第3通信機器において、上記第3通信機器及び上記第4通信機器の間で負荷データを伝送することで上記最大伝送速度を測定するステップとを含むことを特徴とする。
上記通信方法は、上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の平均値を取得することで、上記第1応答時間を測定するステップを含むことを特徴とする。
上記通信方法は、上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最大値を取得することで、上記第1応答時間を測定するステップを含むことを特徴とする。
上記通信方法は、上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最小値を取得することで、上記第1応答時間を測定するステップを含むことを特徴とする。
上記通信方法は、上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の平均値を取得することで、上記第2応答時間を検出するステップを含むことを特徴とする。
上記通信方法は、上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最大値を取得することで、上記第2応答時間を検出するステップを含むことを特徴とする。
上記通信方法は、上記第1通信機器において、上記伝送速度テーブルに格納された上記第1応答時間及び上記伝送速度の内挿値又は外挿値と、上記第2応答時間とを比較して、上記第2応答時間に対応する伝送速度を上記使用済み伝送速度として決定するステップを含むことを特徴とする。
上記通信方法において、上記有効残留伝送速度は、上記最大伝送速度から上記使用済み伝送速度を減算した残りの伝送速度であることを特徴とする。
上記通信方法において、上記有効残留伝送速度は、上記最大伝送速度から上記使用済み伝送速度及び所定の余裕値を減算した残りの伝送速度であることを特徴とする。
上記通信方法において、
上記第1通信機器は第1表示器を備え、
上記方法は、上記第1通信機器において、上記有効残留伝送速度が上記必要伝送速度以下であるとき、上記実データの伝送を中止して、上記実データの伝送が中止されたことを上記第1表示器に表示するステップを含むことを特徴とする。
上記通信方法において、
上記実データの伝送の開始後、
上記第1通信機器において、上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第3応答時間を検出し、
上記第1通信機器において、上記伝送速度テーブルに基づいて、上記第3応答時間に対応する伝送速度を使用済み伝送速度として決定し、
上記第1通信機器において、上記通信ネットワークの最大伝送速度及び上記使用済み伝送速度から上記有効残留伝送速度を決定し、
上記第1通信機器において、上記有効残留伝送速度が所定のしきい値以下であるとき、上記実データの伝送が不安定であることを上記第1表示器に表示するステップを含むことを特徴とする。
上記通信方法において、
上記第2通信機器は第2表示器を備え、
上記方法は、
上記第1通信機器において、上記有効残留伝送速度が上記必要伝送速度以下であるとき、上記実データの伝送を中止して、上記実データの伝送が中止されたことを上記第2通信機器に通知し、
上記第2通信機器において、上記実データの伝送が中止されたことを上記第2表示器に表示するステップを含むことを特徴とする。
本明細書に開示された技術の通信システム及び通信方法によれば、複数の通信機器を含む通信システムでは、例えば第1通信機器が設置されるときに、第1通信機器、第2通信機器、第3通信機器、及び第4通信機器による専有状態を開始し、大量の負荷データを用いて通信ネットワークのトラフィック状態を検査し、伝送速度テーブル(すなわち、伝送速度と第1応答時間との対応関係)を生成する。その後、非専有状態で大量の実データを伝送するとき、第1通信機器は、実データの伝送前に小量のテストデータを用いて第2応答時間を検出することにより、実データの安定的な伝送を開始することができるか否かを判断する。それゆえに、実データの伝送前には、第2応答時間を検出するための小量のテストデータを伝送するだけで済み、通信ネットワークへの追加のトラフィック量は、負荷データを伝送する場合に比べて最小限に抑制することができる。その結果、非専有状態であってもテストデータが他の通信を妨害することはなく、また実データの伝送前の所定テスト期間は、例えば10秒程度以下に大幅に短縮化することができる。このようなテストデータの伝送が実データの伝送前に毎回実行されても、ユーザは、その実行に負担を感じることもなく実データを享受することが可能となる。
さらに、専有状態を2つの第1通信機器及び第2通信機器で構成することにより、複数の通信機器間における各種データの伝送を簡略化することができ、伝送速度テーブル及び最大伝送速度を簡単に調べることができる。
本発明の実施形態に係る通信システムの構成を示すブロック図である。 図1の通信機器11、13、15の詳細構成を示すブロック図である。 図1の通信機器12、14、16の詳細構成を示すブロック図である。 図1の通信機器11によって実行される伝送速度テーブル生成処理を示すフローチャートである。 図4のステップS1の第1の実施例を示すサブルーチンである。 図4のステップS1の第2の実施例を示すサブルーチンである。 図4のステップS1の第3の実施例を示すサブルーチンである。 図1の通信機器11によって実行される変形例の伝送速度テーブル生成処理を示すフローチャートである。 図1の通信機器11によって実行されるデータ伝送処理を示すフローチャートである。 図4のステップS57を示すサブルーチンである。 図1の通信システム1で送受信される実データ及び負荷データのデータ構成D10を示す図である。 図1の通信システム1で送受信されるテストデータのデータ構成D11を示す図である。 図1の通信機器11の伝送速度テーブル29aに格納される伝送速度R(n)及び応答時間T(n)の一例を示す表である。 図1の通信機器11の伝送速度テーブル29aに格納される伝送速度R(n)及び応答時間T(n)の一例を示すグラフである。
以下、いくつかの例示的な実施形態について、図面を参照しながら説明する。図面において、実質的に同一の構成、動作、及び効果を表す要素には、同一の符号を付す。
(1)通信システム1及び通信ネットワーク10
図1は、本発明の実施形態に係る通信システムの構成を示すブロック図である。通信システム1は、通信機器11、通信機器12、通信機器13、通信機器14、通信機器15、通信機器16、及び通信ネットワーク10を含む。通信機器11〜16は、通信ネットワーク10を介して互いに通信することができる。一例では、通信機器11〜16は通信機能を有する家庭用デジタルAV機器であり、通信ネットワーク10は宅内ネットワークである。他の例では、通信システム1は、商業施設内、構内、又は放送スタジオ内などのネットワークシステムであってもよい。通信ネットワーク10は、無線ネットワークであっても有線ネットワークであってもよい。
通信ネットワーク10の通信帯域は、通信機器11〜16によって共有することができる。この通信帯域とは、通信ネットワーク10内で伝送可能な最大の伝送速度のことであり、本明細書では「最大伝送速度」と呼ぶ。通信機器11〜16は、同時に伝送するデータの伝送速度の総和が最大伝送速度以下となるように、通信ネットワーク10を所望の比率で共有することができる。
通信ネットワーク10の例としては、無線の場合、無線LAN(Local Area Network)、例えばIEEE802.11n(IEEE:Institute of Electrical and Electronic Engineers=米国電気電子学会)で規定される無線LANがあり、有線の場合、リピータハブで結合されたイーサネット(ETHERNET:登録商標)がある。IEEE802.11n方式無線LANの場合、現在の日本では通信帯域は最大300Mビット/秒であるが、各種ヘッダなどの冗長度分を取り除いた実効的な正味の最大伝送速度は、この最大値よりもある程度低下する。
共有型の通信ネットワーク10では、無線LANの場合、CSMA/CA(Carrier Sense Multiple Access with Collision Avoidance=衝突回避機能付き搬送波感知多重アクセス方式)、及びイーサネットの場合、CSMA/CD(Carrier Sense Multiple Access with Collision Detection=衝突検出機能付き搬送波感知多重アクセス方式)、のような多重アクセス制御方式を用いて共有ネットワークにおける多重アクセスが制御される。この場合、通信ネットワーク10内のトラフィック量が多くなって、伝送速度が最大伝送速度に近づくにつれて衝突回避又は衝突検出頻度が高くなり、伝送遅延が大きくなる。
通信機器11〜16以外にも、通信ネットワーク10に接続される通信機器があってもよい。このような通信システム1において、本明細書において、特定の複数の通信機器だけが通信ネットワーク10を専有的に用いて当該通信機器のみが互いに通信することができる状態を「専有状態」と呼び、さらに、任意の複数の通信機器が通信ネットワーク10を非専有的に用いて互いに通信することができる状態を「非専有状態」と呼ぶ。例えば4つの通信機器11〜14が専有状態にある場合、各通信機器15、16は通信システム1内のいずれの通信機器とも通信することができない。この場合、例えば各通信機器15、16の電源は、オフされている。例えば4つの通信機器11〜14が非専有状態にある場合、各通信機器15、16は自身を除く他の5つの通信機器と通信することができる。
(2)通信機器11〜16
各通信機器11、13、15は、例えばハードディスクドライブ(Hard Disk Drive:HDD)レコーダであり、ハードディスク内又はブルーレイディスク内に記憶された例えば映像コンテンツなどの実データを再生し、かつ通信ネットワーク10へ送信することができる。各通信機器12、14、16は、例えばデジタルテレビジョン放送受像機であり、通信ネットワーク10を介して受信した実データを表示することができる。すなわち各通信機器11、13、15はサーバとして動作し、各通信機器12、14、16はクライアントとして動作する。
図2は、図1の通信機器11、13、15の詳細構成を示すブロック図である。通信機器11は、本体部20、インターフェース部21、及び配線22を含む。本体部20はHDDレコーダの本体部分を含み、インターフェース部21はHDDレコーダのインターフェース部分を含む。配線22は、バス構成、スイッチ構成、もしくは一対一の直接配線構成のうちのいずれであってもよく、又はこれらの混成構成であってもよい。本体部20は、メインコントローラ23、信号処理回路24、インジケータ25、デジタルテレビジョン放送のチューナ26、ハードディスクドライブ27、及びブルーレイディスク(BD)ドライブ28を含む。信号処理回路24は、デコーダ及びエンコーダを含む。インジケータ25は、例えばHDDレコーダの正面部に設けられた各種の動作情報を表示する比較的小さな表示器である。ブルーレイディスクドライブ28に代えて、DVD(Digital Versatile Disc)ディスクドライブ等の他の媒体のドライブを備えてもよい。インターフェース部21は、不揮発性メモリ29、インターフェースコントローラ30、バッファメモリ31、及びネットワークインターフェース32を含む。通信機器11、13、15は、チューナ26、ハードディスクドライブ27、及びブルーレイディスクドライブ28のすべてを備えていなくてもよく、例えば、これらのうちのいずれか1つをそれぞれ備えていてもよい。
図3は、図1の通信機器12、14、16の詳細構成を示すブロック図である。通信機器12は、インターフェース部40、本体部41、及び配線42を含む。インターフェース部40はデジタルテレビジョン放送受像機のインターフェース部分を含み、本体部41はデジタルテレビジョン放送受像機の本体部分を含む。配線42は、配線22と同様に構成される。インターフェース部40は、インターフェースコントローラ43、不揮発性メモリ44、ネットワークインターフェース45、及びバッファメモリ46を含む。本体部41は、メインコントローラ47、信号処理回路48、デジタルテレビジョン放送のチューナ49、及びディスプレイ50を含む。信号処理回路48は、TS(Transport Stream)デコーダ(図示せず)及びMPEG−2(Moving Picture Experts Group−2)デコーダ(図示せず)を含む。
各インターフェースコントローラ30、43は、後述する図4〜図10のフローチャートに従って、各種データ処理を行う。各インターフェースコントローラ30、43は、図4〜図10のフローチャートに基づくプログラムが組み込まれたマイクロプロセッサ又はマイクロコンピュータで構成されてもよい。各インターフェースコントローラ30、43は、図4〜図10のフローチャートに基づくタイミング信号を発生するFPGA(Field Programmable Gate Array=フィールドプログラマブルゲートアレイ)などのワイヤードロジック回路で構成されてもよい。さらに各インターフェースコントローラ30、43は、マイクロプロセッサもしくはマイクロコンピュータ及びワイヤードロジック回路による混成回路で構成されてもよい。インターフェースコントローラ30、43は、それぞれ本体部20、41内のメインコントローラ23、47と統合されてもよい。
不揮発性メモリ29、44は、EPROM(Erasable Programmable Read−Only Memory)などで構成され、後述する伝送速度テーブル29a(図13を参照)を格納する。各バッファメモリ31、46は、RAM(Random Access Memory)などの揮発性メモリで構成され、データを一時的に記憶する。各ネットワークインターフェース32、45は、ワイヤードロジック回路、マイクロプロセッサもしくはマイクロコンピュータ、又はこれらの混成回路で構成され、データリンク層における各種データ処理及び物理層における各種信号処理を行う。
ハードディスクドライブ27は、例えばMPEG−2 TSデータを記憶している。ハードディスクドライブ27は、チューナ26で受信されたデジタルテレビジョン放送のAVコンテンツとしてのMPEG−2 TSデータを信号処理回路24を介して取得して記憶してもよい。さらに、ブルーレイディスクドライブ28は、ブルーレイディスクから、AVコンテンツとして記憶されたMPEG−2 TSデータを読み出す。
図11は、図1の通信システム1で送受信される実データ及び負荷データのデータ構成D10を示す図である。本明細書では、受信側の通信機器の要求に応じて送信側の通信機器から受信側の通信機器に伝送されるAVコンテンツを含むデータを「実データ」と呼び、通信ネットワーク10における伝送速度などを測定するための(AVコンテンツではない)データを「負荷データ」と呼ぶ。データ構成D10は、複数のMAC(Media Access Control)フレーム60を含む。1つのMACフレーム60は、MACヘッダ61、IP(Internet Protocol)ヘッダ62、TCP(Transmission Control Protocol)ヘッダ63、及びペイロード64を時系列順に含む。MPEG−2 TSデータは、データ構成D10の形式に変換される。この場合、ペイロード64は、MACフレーム60のサイズが規定の1518バイト以下となるように、188バイトのサイズのTSパケットが例えば7つとHTTP(HyperText Transfer Protocol)プロトコルに関するデータとで構成される。このペイロード64は、TCPプロトコルによってカプセル化され、さらにIPパケットにカプセル化され、さらにMACフレームにカプセル化される。
図2においてインターフェースコントローラ30は、チューナ26、ハードディスクドライブ27、及びブルーレイディスクドライブ28のいずれかから、MPEG−2 TSデータを読み出し、バッファメモリ31に一時記憶しながらMPEG−2 TSデータをカプセル化し、TCPパケットを生成し、次いでIPパケットを生成する。ネットワークインターフェース32は、インターフェースコントローラ30の命令に従い、このIPパケットをMACフレームにカプセル化し、無線の場合には無線帯域への変調又は有線の場合にはベースバンド符号化、などの物理層の信号処理を行って実データを生成する。ネットワークインターフェース32は、この実データを、無線の場合にはCSMA/CA又は有線の場合にはCSMA/CDなどの媒体アクセス制御に基づくタイミングで通信ネットワーク10へ送信する。このように通信機器11は、MPEG−2 TSデータをデータ構成D10の形式に変換することにより、実データを生成する。
図3においてネットワークインターフェース45は、この実データを受信し、インターフェースコントローラ43の命令に従い、無線の場合には無線帯域からの復調又は有線の場合にはベースバンド復号化、などの物理層の信号処理を行ってMACフレームを生成する。ネットワークインターフェース45は、このMACフレームを逆カプセル化し、IPパケットを生成する。インターフェースコントローラ43は、このIPパケットをバッファメモリ46に一時記憶しながら逆カプセル化し、TCPパケットを生成し、次いでMPEG−2 TSデータを生成する。本体部41は、このMPEG−2 TSデータを、信号処理回路48内のTSデコーダ及びMPEG−2デコーダにおいてそれぞれTS復号化及びMPEG−2復号化し、ディスプレイ50に表示する。
上述した例では、各通信機器11〜16はHTTP及びTCPプロトコルを使用するとしたが、これらのプロトコルの組み合わせは伝送誤り率の比較的高い無線ネットワークにおいて特に有効である。一方、伝送誤り率の比較的低い有線ネットワークにおいては、HTTP及びTCPプロトコルの代わりに、伝送におけるリアルタイム性及び低遅延化を重視したRTP(Real−time Transport Protocol)及びUDP(User Datagram Protocol)プロトコルの組み合わせを使用してもよい。この場合、バッファメモリ46の容量はより小さくすることができる。さらに上述した例では、ネットワークインターフェース32、45は、それぞれMACフレームのカプセル化及び逆カプセル化を行うとしたが、インターフェースコントローラ30、43がそれぞれカプセル化及び逆カプセル化を行ってもよい。逆に、各インターフェースコントローラ30、43は、HTTP及びTCPプロトコル又はRTP及びUDPプロトコルを処理するとしたが、各ネットワークインターフェース32、45がこれらのプロトコルを処理してもよい。さらに上述した例では、各通信機器11〜16はTSパケットがIPパケットでカプセル化されるTSオーバーIPを使用するとしたが、IPパケットが分割されTSパケットでカプセル化されるIPオーバーTSを使用してもよい。
以下、図4〜図10を参照して、本実施形態の通信システム1において実行されるデータ伝送について説明する。
(3)伝送速度テーブル生成処理
図4は、図1の通信機器11によって実行される伝送速度テーブル生成処理を示すフローチャートである。本実施形態の通信システム1では、受信側の通信機器12の要求に応じて送信側の通信機器11から受信側の通信機器12へのデータ伝送(実データの伝送)を行う前に、通信システム1は、その初期設定として「伝送速度テーブル29a」を生成する。伝送速度テーブル29aは、通信機器11〜16のうちの任意の一対の通信機器間で異なる複数の伝送速度で負荷データを伝送する間に、負荷データよりも小さなサイズの「テストデータ」を通信機器11及び通信機器12の間で伝送したときのテストデータの伝送時間の長さを示す応答時間と、この応答時間に対応する伝送速度とを格納する。伝送速度テーブル29aは、通信機器11の不揮発性メモリ29に格納される。本実施形態の通信システム1では、予め生成された伝送速度テーブル29aを用いることにより、従来技術のように大量の負荷データを用いることによる種々の問題を軽減することができる。
図13は、図1の通信機器11の伝送速度テーブル29aに格納される伝送速度R(n)及び応答時間T(n)の一例を示す表である。各伝送速度R(n)及び各応答時間T(n)は、伝送速度テーブル29aの初期状態では空白である。ここで、伝送速度R(n)は、例えば通信ネットワーク10上で伝送される実データ内のペイロード64の伝送速度に相当する。ただしこれは速度の基準をどこに置くかの問題なので、伝送速度R(n)は例えばIPパケットのペイロード(すなわちTCPヘッダ63及びペイロード64)の伝送速度としてもよいが、以下の説明ではペイロード64の伝送速度とする。
通信機器11のインターフェースコントローラ30は、例えば、伝送速度テーブル29aが空白のとき(例えば、通信機器11を通信ネットワーク10に初めて接続して、最初に電源をオンにしたとき)、図4の伝送速度テーブル生成処理を実行する。
図4のステップS1において、通信機器11のインターフェースコントローラ30は、最大伝送速度取得処理を実行し、通信ネットワーク10の最大伝送速度Rmaxを取得する。最大伝送速度Rmaxは、ユーザにより入力される既知の値であってもよく、又は、図5〜図7を参照して説明する方法(後述)のいずれかにより取得されてもよい。
ステップS2において、通信機器11〜14による通信ネットワーク10の専有状態を開始する。専有状態は、例えば通信機器11が設置されるときに、この通信機器11と通信ネットワーク10の他の通信機器12〜16との接続確認を行う場合の状態に相当する。通信機器11のインターフェースコントローラ30は、通信機器12〜14に、図4の処理に必要な動作を実行するように指示し、残りの通信機器15、16に送信を行うことなく待機するように指示する。
通信機器11の指示によって専有状態を開始することに代えて、ユーザが通信機器11〜14のみの電源をオンにして残りの通信機器15、16の電源をオフにすることにより専有状態を開始してもよい。
ステップS3において、通信機器11のインターフェースコントローラ30は、最大伝送速度Rmax以下の任意の伝送速度R(n)を選択する。このとき、通信機器11のインターフェースコントローラ30は、例えば、図13の伝送速度R(n)のいずれか1つを選択する。図13の例では、伝送速度テーブル29aは、パラメータn=1〜6に関して、伝送速度R(1)=10Mbps(ビット/秒)から、通信ネットワーク10の最大伝送速度Rmaxに等しい伝送速度R(6)=60Mbpsまで、10Mbpsのステップ幅で6つの伝送速度を有する。以下の説明では、最初に図13のn=1の場合、すなわち、伝送速度R(1)=10Mbpsを選択するものとする。
ステップS4において、通信機器11のインターフェースコントローラ30は、選択された伝送速度R(n)で通信機器13から通信機器14に負荷データを送信させる。負荷データの送信は、所定テスト期間(例えば10秒間)にわたって継続される。負荷データは、MPEG−2 TSデータに基づく実データのデータ構成D10と同様な形式になっている。ただし負荷データのペイロード64は、実データの場合のようなMPEG−2 TSデータではなく、関数で算出可能なランダムデータ又は各バイトが16進数表現で「FF」などを含む定数データである。インターフェースコントローラ30は、本体部20とは無関係に、ランダムデータ又は定数データなどの固定データを生成することができる。
MACヘッダ61のサイズは18バイトである。詳しくはヘッダが14バイト及びトレーラが4バイトであるが、図11では説明の簡単化のためヘッダの位置にまとめて表している。IPヘッダ62のサイズは、IPv4(internet Protocol version 4)の場合、通常20バイトである。TCPヘッダ63のサイズは、通常20バイトである。MACフレーム60のサイズが規定の1518バイト以下となるためには、ペイロード64のサイズは最大1460バイトとなる。インターフェースコントローラ30は、このようなペイロード64の伝送速度が例えば10Mbpsとなるように、上述した実データの生成法と同様にして、ペイロード64を含むIPパケットを生成し、ネットワークインターフェース32へ送る。ネットワークインターフェース32は、上述した実データの生成法と同様にして、入力された10MbpsのIPパケットに基づき、10Mbpsの伝送速度を有する負荷データを生成することができる。10Mbpsの伝送速度を有する負荷データを、通信機器13が通信機器14へ例えば10秒間の所定テスト期間の間にわたって伝送する場合、ペイロード64の合計サイズは、10/8×10秒=約12Mバイトとなる。
通信機器13から通信機器14に負荷データを送信している間(ステップS4)、ステップS5において、通信機器11のインターフェースコントローラ30は、通信機器11から通信機器12にテストデータを送信してから返信されたテストデータを受信するまでの応答時間T(n)を測定する。図12は、図1の通信システム1で送受信されるテストデータのデータ構成D11を示す図である。データ構成D11は1つのMACフレーム65を含み、MACフレーム65は、MACヘッダ66、IPヘッダ67、ICMP(Internet Control Message Protocol=インターネット制御通知プロトコル)ヘッダ68、及びペイロード69を時系列順に含む。MACヘッダ66及びIPヘッダ67は、データ構成D10のMACヘッダ61及びIPヘッダ62と同様である。ICMPヘッダ68は、タイプ、識別子、及びシーケンス番号を含む。
ICMPヘッダ68のタイプは、ICMPヘッダ68を用いて実行可能な種々の機能を表す。テストデータは、ICMPヘッダ68のこれらの機能のうち、エコー要求通知(Echo Message)及びエコー応答通知(Echo Reply Message)の両機能を用いる。複数のテストデータが通信機器11、12間で伝送される場合、これらのテストデータは、ICMPヘッダ68の識別子によって個々に区別することができ、ICMPヘッダ68のシーケンス番号によって時系列順に順序付けをすることができる。ペイロード69は、送信時点のタイムコードを含む。
上述したように、MACヘッダ66のサイズは18バイトであり、及びIPヘッダ67のサイズは20バイトである。ICMPヘッダ68のサイズは、エコー要求通知及びエコー応答通知の場合、8バイトである。タイムコードが例えば4バイトで表される場合、ペイロード69は4バイトとなる。テストデータのサイズは、これらのサイズの合計であり、18+20+8+4=50バイトとなる。MACフレームの規定の最小サイズが64バイトであるので、ペイロード69を18バイトにすれば、テストデータのサイズは64バイトとなる。
インターフェースコントローラ30は、現在の時刻、すなわち送信時点のタイムコードを含むペイロード69を生成し、次にエコー要求通知に設定されたICMPヘッダ68を追加する。インターフェース部21は、このペイロード69及びICMPヘッダ68で構成されるデータを、上述した負荷データの生成法と同様にしてIPパケットにカプセル化し、次いでMACフレームにカプセル化することにより、テストデータを生成する。通信機器11は、このテストデータを通信機器12へ送る。
通信機器12のインターフェース部40は、このテストデータを逆カプセル化する。インターフェースコントローラ43は、ICMPヘッダ68を抽出し、ICMPヘッダ68のタイプをエコー要求通知からエコー応答通知へ変更する。インターフェース部40は、ペイロード69及び変更されたICMPヘッダ68で構成されるデータを、IPパケットにカプセル化し、次いでMACフレームにカプセル化することにより、テストデータを生成する。通信機器12は、このテストデータを通信機器11へ送る。インターフェース部21は、このテストデータを逆カプセル化し、ペイロード69を抽出する。インターフェースコントローラ30は、ペイロード69内のタイムコードと、現在の時刻、すなわち受信時点のタイムコードとの差分から、テストデータが通信機器11、12間を往復するのに要した伝送時間を表す応答時間を求めることができる。
通信機器11は、所定テスト期間(例えば10秒間)の間、テストデータを通信機器11及び通信機器12の間で複数回にわたって伝送してもよい。インターフェースコントローラ30は、複数回の伝送時間の平均値を応答時間T(n)としてもよい。これにより、通信ネットワーク10のトラフィック状態に依存して変化しがちな応答時間T(n)の信頼性を向上させることができる。図13に示す応答時間T(n)は、平均値の一例である。また、インターフェースコントローラ30は、複数回の伝送時間の最大値を応答時間T(n)としてもよい。これにより、通信ネットワーク10のトラフィック状態に依存して応答時間が最も悪化する場合を考慮することができる。インターフェースコントローラ30は、上述した複数回分の伝送について、ICMPヘッダ68の識別子、シーケンス番号、送信時点のタイムコード、及び受信時点のタイムコードを記載したテーブルを有してもよい。これにより、ペイロード69が送信時点のタイムコードを含まなくてもよいことになる。
通信ネットワーク10のトラフィック状態は、所定テスト期間の間、通信ネットワーク10を行き交うデータの量(すなわち、トラフィック量)に依存する。換言すれば、トラフィック状態は、通信ネットワーク10を行き交う全データの総伝送速度に依存する。伝送速度R(n)が10Mbpsで所定テスト期間が10秒間の場合、負荷データの量は上述したように12Mバイトである。テストデータが通信機器11及び通信機器12の間を所定テスト期間の間5回往復すると仮定すると、テストデータのサイズは、64バイト×2×5=640バイトであり、伝送速度は640バイト×8/10秒=512bpsである。すなわち、通信ネットワーク10に対して、負荷データは10Mbps及び12Mバイトのトラフィック量を与え、テストデータは512bps及び640バイトのトラフィック量を与える。従って、テストデータは、負荷データよりも大略1/20000のトラフィック量しか通信ネットワーク10に与えない。それゆえに、テストデータのトラフィック量への影響は、無視することができる。
通信ネットワーク10のトラフィック状態における伝送制御に、IPv4のIPヘッダ62、67内に規定される1バイトサイズのTOS(Type Of Service)フィールドが利用されてもよい。TOSフィールドを用いることにより、通信ネットワーク10を伝送するデータの優先レベルを選択することができる。4つの通信機器11〜14による専有状態において、テストデータの優先レベルは負荷データの優先レベルに等しく設定される。上述したように、両者の優先レベルが同一であっても、テストデータのトラフィック量への影響は、無視することができる。
このように、図4のステップS5において、通信機器13が最大伝送速度Rmax以下の任意の伝送速度R(n)の負荷データを通信機器14へ伝送している間、通信機器11は、負荷データよりもサイズの小さいテストデータを通信機器12との間で送受信することにより通信機器12に対する応答時間T(n)を検出する。その結果、図13のn=1について、伝送速度R(1)=10Mbpsに対する応答時間T(1)=2msが得られ、伝送速度R(n)及び応答時間T(n)からなる1つのデータ対が得られる。
ステップS6において、通信機器11のインターフェースコントローラ30は、取得された一対の伝送速度R(n)及び応答時間T(n)を伝送速度テーブル29aに格納する。
ステップS7において、通信機器11のインターフェースコントローラ30は、すべての伝送速度R(n)について応答時間T(n)を測定したか否かを判断し、YESのときはステップS8に進み、NOのときはステップS3に戻る。本明細書では、以降、例えば図13のn=2〜6について検査するため、ステップS3〜S6を残りの5回繰り返す。その結果、図13の伝送速度テーブル29a全体が得られる。
上述したように、通信ネットワーク10のトラフィック状態は、通信ネットワーク10を行き交う全データの総伝送速度に依存する。負荷データの伝送速度R(n)が増大するとき、通信ネットワーク10のトラフィック量は単調に増加する。そのため、共有ネットワークでは上述したような衝突回避(無線LANの場合)又は衝突検出(イーサネットの場合)が生じる頻度が高くなり、通信機器11、12間でテストデータを伝送するときの送信タイミングは遅延する。従って、図13に示すように、伝送速度R(n)が10Mbpsから60Mbpsへと増加すると、応答時間T(n)は2msから7msへと増加する。
ステップS8において、通信機器11〜14による通信ネットワーク10の専有状態を終了する。ステップS8では、例えば、通信機器11が通信機器12〜16に専有状態の終了を通知し、通信機器11〜14によって専有されていた通信ネットワーク10を開放する。
以上説明したように、図4の伝送速度テーブル生成処理を実行することにより、図13の伝送速度テーブル29aを生成することができる。生成された伝送速度テーブル29aは、不揮発性メモリ29に格納される。
以上のように構成された実施形態では、通信機器11が伝送速度R(n)を選択し(ステップS3)、選択された伝送速度R(n)で負荷データを送信するように通信機器13に指示したが(ステップS4)、通信機器13が伝送速度R(n)を選択してもよい。この場合、通信機器13は、最大伝送速度Rmax以下の伝送速度R(n)を選択し、選択された伝送速度R(n)で通信機器13から通信機器14に負荷データを送信するとともに、選択された伝送速度R(n)を通信機器11に通知する。通信機器11のインターフェースコントローラ30は、通知された伝送速度R(n)と測定された応答時間T(n)とのデータ対を伝送速度テーブル29aに格納する。
(4)最大伝送速度Rmaxの測定
最大伝送速度Rmaxは、前述のように、ユーザにより入力される既知の値であってもよく、又は、通信機器11〜14が測定を行うことにより取得されてもよい。
通信ネットワーク10の最大伝送速度Rmaxは、通信機器11〜16のうちの任意の一対の通信機器(例えば通信機器11、12)間で負荷データを伝送し、この負荷データの伝送速度を徐々に増加させ、以下に示すいくつかの測定法で通信ネットワーク10の輻輳状態を検出することにより、求めることができる。1つ目の測定法では、特にTCPプロトコルを用いる場合、通信機器11のインターフェースコントローラ30がネットワークインターフェース32内のバッファメモリ(図示せず)の込み具合を調べ、満杯になると最大伝送速度Rmaxを超えていると判断する。2つ目の測定法では、特にUDPプロトコルを用いる場合、通信機器12のインターフェースコントローラ43が、通信機器11から受信した負荷データの誤り率を算出し、この誤り率情報を通信機器11へ送り返す。通信機器11のインターフェースコントローラ30は、この誤り率が所定の上限値以上になると最大伝送速度Rmaxを超えていると判断する。この上限値は、例えばTSパケットのリードソロモン符号が訂正可能な誤り率の上限値である。また、負荷データの誤り率は、負荷データが上述したような固定データであることに基づいて算出することができる。2つ目の測定法において、通信機器12は、通信機器11から受信した負荷データをそのまま通信機器11へ送り返し、通信機器11のインターフェースコントローラ30が負荷データの誤り率を算出してもよい。これが3つ目の測定法である。なお、上述したネットワークインターフェース32内のバッファメモリ(図示せず)は、バッファメモリ31と統合されてもよい。
以下、図5〜図7を参照して、上述した測定法のうちの任意のものに基づき最大伝送速度Rmaxを測定する例について説明する。
図5は、図4のステップS1の第1の実施例を示すサブルーチンである。図5の処理では、通信機器11、12により最大伝送速度Rmaxを測定する。図5のステップS11において、通信機器11、12による通信ネットワークの専有状態を開始する。通信機器11のインターフェースコントローラ30は、通信機器12に、図の処理に必要な動作を実行するように指示し、残りの通信機器13〜16に送信を行うことなく待機するように指示する。ステップS12において、通信機器11のインターフェースコントローラ30は、通信機器11から通信機器12に負荷データを送信することで、通信ネットワーク10の最大伝送速度Rmaxを測定する。通信機器11のインターフェースコントローラ30は、測定された最大伝送速度Rmaxを不揮発性メモリ29に格納する。ステップS13において、通信機器11、12による通信ネットワークの専有状態を終了する。ステップS13では、例えば、通信機器11が通信機器12〜16に専有状態の終了を通知し、通信機器11、12によって専有されていた通信ネットワーク10を開放する。その後、図4のステップS2に進む。
図6は、図4のステップS1の第2の実施例を示すサブルーチンである。図6の処理では、通信機器13、14により最大伝送速度Rmaxを測定する。図6のステップS21において、通信機器11のインターフェースコントローラ30は、通信機器13、14による通信ネットワークの専有状態を開始させる。通信機器11のインターフェースコントローラ30は、通信機器13、14に、図6の処理に必要な動作を実行するように指示し、残りの通信機器12、15、16に送信を行うことなく待機するように指示する。ステップS22において、通信機器11のインターフェースコントローラ30は、通信機器13から通信機器14に負荷データを送信させることで、通信機器13のインターフェースコントローラ30に、通信ネットワーク10の最大伝送速度Rmaxを測定させる。通信機器13のインターフェースコントローラ30は、測定された最大伝送速度Rmaxを不揮発性メモリ29に格納する。ステップS23において、通信機器11のインターフェースコントローラ30は、通信機器13から最大伝送速度Rmaxを受信する。通信機器11のインターフェースコントローラ30は、受信された最大伝送速度Rmaxを不揮発性メモリ29に格納する。ステップS24において、通信機器11のインターフェースコントローラ30は、通信機器13、14による通信ネットワークの専有状態を終了させる。ステップS24では、例えば、通信機器11が通信機器12〜16に専有状態の終了を通知し、通信機器13、14によって専有されていた通信ネットワーク10を開放する。その後、図4のステップS2に進む。
図7は、図4のステップS1の第3の実施例を示すサブルーチンである。図7の処理では、通信機器11、12により最大伝送速度Rmaxを測定し、さらに、通信機器13、14により最大伝送速度Rmaxを測定する。図7のステップS31において、通信機器11、12による通信ネットワークの専有状態を開始する。ステップS32において、通信機器11のインターフェースコントローラ30は、通信機器11から通信機器12に負荷データを送信することで、通信ネットワーク10の最大伝送速度Rmaxを測定する。通信機器11のインターフェースコントローラ30は、測定された最大伝送速度Rmaxを不揮発性メモリ29に格納する。ステップS33において、通信機器11、12による通信ネットワークの専有状態を終了する。ステップS34において、通信機器11のインターフェースコントローラ30は、通信機器13、14による通信ネットワークの専有状態を開始させる。ステップS35において、通信機器11のインターフェースコントローラ30は、通信機器13から通信機器14に負荷データを送信させることで、通信機器13に、通信ネットワーク10の最大伝送速度Rmaxを測定させる。通信機器13は、測定された最大伝送速度Rmaxを不揮発性メモリ29に格納する。ステップS36において、通信機器11のインターフェースコントローラ30は、通信機器13、14による通信ネットワークの専有状態を終了させる。その後、図4のステップS2に進む。
図7の処理によれば、例えば、無線環境において通信機器の組み合わせごと(通信機器11、12間と通信機器13、14間)に最大伝送速度が異なる場合に、適切な最大伝送速度を測定することができる。また、図5のように2つの通信機器11、12のみによる専有状態を用いることで、通信機器間における各種データの伝送を簡略化することができ、最大伝送速度Rmaxを簡単に測定することができる。
(5)伝送速度テーブル生成処理の変形例
図8は、図1の通信機器11によって実行される変形例の伝送速度テーブル生成処理を示すフローチャートである。伝送速度テーブル生成処理において、負荷データの伝送は、通信機器13、14間で行うことに限定されず、通信機器11、12間(すなわち、テストデータを伝送する通信機器と同じ通信機器)で行ってもよい。この場合、図4のような4つの通信機器11〜14による専有状態ではなく、2つの通信機器11、12のみによる専有状態を用いることができる。
図8のステップS41において、通信機器11のインターフェースコントローラ30は、最大伝送速度Rmaxを取得する。ステップS41は図4のステップS1と同様であり、詳しくは、図5〜図7のいずれかの処理に従って行うことができる。ステップS42において、通信機器11、12による通信ネットワーク10の専有状態を開始する。ステップS43において、通信機器11のインターフェースコントローラ30は、図13の伝送速度R(n)のいずれか1つを選択する。ステップS44において、通信機器11のインターフェースコントローラ30は、選択された伝送速度R(n)で通信機器11から通信機器12に負荷データを送信しながら、通信機器11から通信機器12にテストデータを送信してから返信されたテストデータを受信するまでの応答時間T(n)を測定する。ステップS45において、通信機器11のインターフェースコントローラ30は、伝送速度R(n)及び応答時間T(n)を伝送速度テーブル29aに格納する。ステップS46において、通信機器11のインターフェースコントローラ30は、すべての伝送速度R(n)について応答時間T(n)を測定したか否かを判断し、YESのときはステップS47に進み、NOのときはステップS43に戻る。ステップS47において、通信機器11のインターフェースコントローラ30は、通信機器11、12による通信ネットワーク10の専有状態を終了する。
図8のように2つの通信機器11、12のみによる専有状態を用いることで、通信機器間における各種データの伝送を簡略化することができ、伝送速度テーブル29aの生成を簡略化することができる。
(6)データ伝送処理
図9は、図1の通信機器11によって実行されるデータ伝送処理を示すフローチャートである。図9の処理は、受信側の通信機器12の要求に応じて送信側の通信機器11から受信側の通信機器12へのデータ伝送(実データの伝送)を行うために実行される。図9の処理は、通信ネットワーク10の非専有状態で行われる。従って、通信ネットワーク10の通信帯域(伝送速度)の一部は、他の通信によってすでに使用されている可能性があるが、通信機器11のインターフェースコントローラ30は、この使用済み伝送速度を、図4又は図8の伝送速度テーブル生成処理で生成された伝送速度テーブル29aを用いて評価することで、通信ネットワーク10のトラフィック状態を検査し、さらに、実データの伝送の可否を判断する。
図9のステップS51において、通信機器11のインターフェースコントローラ30は、通信機器12からデータ伝送要求を受信したか否かを定期的に判断し、YESのときはステップS52に進む。ステップS52において、通信機器11のインターフェースコントローラ30は、要求されたデータ伝送を行うための「必要伝送速度」を決定する。通信機器11はさらに、伝送する実データの優先レベルも決定する。
ステップS53において、通信機器11のインターフェースコントローラ30は、通信機器11から通信機器12にテストデータを送信してから返信されたテストデータを受信するまでの応答時間を検出する。テストデータは、図4のステップS5で伝送したテストデータと同じである。ステップ53で伝送するテストデータの優先レベルは、実データの優先レベルと等しく設定される。以下の説明では、検出された応答時間は例えば4msであったとする。図4のステップS5と同様に、通信機器11のインターフェースコントローラ30は、所定テスト期間(例えば10秒間)の間、テストデータを通信機器11及び通信機器12の間で複数回にわたって伝送してもよい。インターフェースコントローラ30は、複数回の伝送時間の平均値を、検出された応答時間としてもよい。また、インターフェースコントローラ30は、複数回の伝送時間の最大値を、検出された応答時間としてもよい。このステップS53は、後のステップS57において大量の実データを伝送する前に、通信ネットワーク10のトラフィック状態を検査するために行われる。テストデータのサイズは、実データのサイズよりも小さい。
ステップS54において、通信機器11のインターフェースコントローラ30は、伝送速度テーブル29aに基づいて、検出された応答時間に対応する伝送速度を「使用済み伝送速度」として決定する。検出された応答時間は例えば4msであったとき、図13のn=3のときのデータ対から、使用済み伝送速度は30Mbpsになる。従って、応答時間が検出された時点において、非専有状態の通信ネットワーク10におけるトラフィック量が30Mbpsであったことになる。
なお、ステップS53で検出される応答時間は、通常は、図13の複数の応答時間T(n)のうちのいずれにも一致せず、2〜7msの間の値をとることになる。この場合、インターフェースコントローラ30は、伝送速度テーブル29aに格納された複数の応答時間T(n)の内挿値又は外挿値と、ステップS53で検出された応答時間とを比較して、検出された応答時間に対応する伝送速度を推定する。図14は、図1の通信機器11の伝送速度テーブル29aに格納される伝送速度R(n)及び応答時間T(n)の一例を示すグラフである。詳しくは、インターフェースコントローラ30は、伝送速度テーブル29aに格納された伝送速度R(n)の内挿値又は外挿値から、検出された応答時間に一致する値を決定し、伝送速度テーブル29aにおいて、決定された伝送速度R(n)の内挿値又は外挿値に対応する応答時間T(n)の内挿値又は外挿値を、使用済み伝送速度として決定する。これにより、検出された応答時間が伝送速度テーブル29aに格納された応答時間T(n)のうちのいずれにも一致しなくても、伝送速度テーブル29aに格納された応答時間T(n)及び伝送速度R(n)の内挿値又は外挿値を用いることにより、検出された応答時間に対応する使用済み伝送速度をより正確に推定することができる。
ステップS55において、通信機器11のインターフェースコントローラ30は、最大伝送速度Rmax及び使用済み伝送速度から、要求されたデータ伝送を行うために利用可能な「有効残留伝送速度」を決定する。有効残留伝送速度は、所定のトラフィック量が生じている通信ネットワーク10において、追加で伝送可能なデータ量を示している。有効残留伝送速度は、実データを安定的に伝送するのに十分な大きさを有することが必要である。ここで、「安定的な伝送」とは、通信機器12が伝送後の実データから生成したMPEG−2 TSデータを例えばディスプレイ50に表示する場合、破綻のない、伝送前と大略同一の品質を得ることができることを表す。換言すれば、「安定的な伝送」とは、通信システム1が有する安定的な伝送を可能にする各種の仕組みが破綻しない範囲内で実データを伝送可能であることを表す。
詳しくは、特にTCPプロトコルを用いる場合には、安定的な伝送の状態では、例えばネットワークインターフェース32内のバッファメモリ(図示せず)のデータ量が常に満杯より少ない状態で、実データの遅延量が推移する。TCPプロトコルによるフロー制御によって伝送速度R(n)が増加するにつれて、ネットワークインターフェース32が実データを送信するタイミングが遅延し、そのためネットワークインターフェース32内のバッファメモリのデータ量は増加する。しかし、安定的な伝送の状態では、ネットワークインターフェース32内のバッファメモリのデータ量が満杯まで増加することはない。一方、特にUDPプロトコルを用いる場合には、安定的な伝送の状態では、例えばTSパケットのリードソロモン符号(Reed−Solomon Coding)の復号化が常に訂正可能な状態で、実データの誤り率が推移する。リードソロモン符号の復号化は、信号処理回路48内のTSデコーダ(図示せず)において行われる。
安定的な伝送の可否の判断基準は、通信機器11の設計段階において、最大伝送速度Rmax、伝送速度テーブル(すなわち、伝送速度R(n)と応答時間T(n)との対応関係)、及び検出される応答時間に基づいて、実験及びシミュレーションによって求めることができる。通信機器11のインターフェースコントローラ30内には、このような安定的な伝送の可否の判断基準が実装されている。
例えば、有効残留伝送速度として、最大伝送速度Rmaxから使用済み伝送速度を減算した残りの伝送速度を使用可能である。上述した例では、有効残留伝送速度は、60Mbps−30Mbps=30Mbpsである。それに代わって、有効残留伝送速度として、最大伝送速度Rmaxから使用済み伝送速度及び所定の余裕値を減算した残りの伝送速度を使用可能である。余裕値は、通信ネットワーク10における種々の不確実な状況を考慮し、例えば最大伝送速度Rmaxの0〜10%を留保する。最大伝送速度Rmaxの10%とすると、上述した例では余裕値は6Mbpsとなる。従って、余裕値を考慮した有効残留伝送速度は、60Mbps−30Mbps−6Mbps=24Mbpsである。
ステップS56において、通信機器11のインターフェースコントローラ30は、有効残留伝送速度が必要伝送速度よりも高いか否かを判断し、YESのときはステップS57に進み、NOのときはステップS58に進む。換言すれば、通信機器11のインターフェースコントローラ30は、最大伝送速度Rmax、伝送速度テーブル29a(すなわち、図13の伝送速度R(n)と応答時間T(n)との対応関係)、及びステップS53で検出された応答時間に基づき、必要伝送速度の実データを所定優先レベルで伝送することができるか否かを判断する。実データの必要伝送速度を20Mbpsとすれば、上述した例では、余裕値を考慮した有効残留伝送速度24Mbpsは実データの必要伝送速度20Mbpsを超えるので、通信機器11は実データの安定的な伝送を開始する。
通信ネットワーク10の総トラフィック量は最大伝送速度Rmax以下でなければならないので、有効残留伝送速度は、少なくとも、実データの必要伝送速度より高くなければならない。有効残留伝送速度として、最大伝送速度Rmaxから使用済み伝送速度を減算した残りの伝送速度を使用した場合には、実データの安定的な伝送がほとんど不可能な状態を伝送中止とすることができるので、伝送中止の判断を間違う恐れがほとんどないことになる。また、余裕値を考慮した有効残留伝送速度を使用した場合には、実データの伝送中に通信ネットワーク10のトラフィック状態が所定の余裕値だけ悪化しても、実データは良好に伝送することができ、安定性の高い実データ伝送が可能となる。
ステップS57において、通信機器11は、データ伝送サブルーチン処理を実行し、ステップS51で通信機器12から要求された実データの伝送を実行する。データ伝送の詳細については、図10を参照して後述する。
ステップS58において、通信機器11は、データ伝送を中止し、データ伝送が中止されたことをインジケータ25に表示する。これにより、実データを享受するユーザに、データ伝送の中止を適切に知らせることができる。ステップS59において、通信機器11のインターフェースコントローラ30は、データ伝送が中止されたことを通信機器12に通知し、通信機器12のディスプレイ50に表示させ、処理を終了する。これにより、実データを享受するユーザに、データ伝送の中止を適切に知らせることができる。
図10は、図のステップS57を示すサブルーチンである。通信機器11のインターフェースコントローラ30は、データ伝送を開始した後で、通信ネットワーク10のトラフィック状態を検査してもよい。図10のステップS61において、通信機器11は、通信機器11から通信機器12へのデータ伝送を開始する。ステップS62において、通信機器11のインターフェースコントローラ30は、通信機器11から通信機器12にテストデータを送信してから返信されたテストデータを受信するまでの応答時間を検出する。ステップS63において、通信機器11のインターフェースコントローラ30は、伝送速度テーブル29aに基づいて、検出された応答時間に対応する伝送速度を、データ伝送中の使用済み伝送速度として決定する。ステップS63で決定される使用済み伝送速度には、ステップS61で伝送開始された実データの伝送速度も含まれている。ステップS64において、通信機器11のインターフェースコントローラ30は、最大伝送速度Rmax及び使用済み伝送速度からデータ伝送中の有効残留伝送速度を決定する。
ステップS62で検出された応答時間が例えば6msであったとすると、使用済み伝送速度は50Mbpsとなる。従って、実データを伝送中の通信ネットワーク10のトラフィック量は、実データを伝送する前の(余裕値を考慮しない)有効残留伝送速度30Mbpsに、実データの必要伝送速度20Mbpsを加えた値に一致する。すなわち、実データを伝送中の通信ネットワーク10のトラフィック量は、伝送前の目論見通りに推移している。伝送中の(余裕値を考慮しない)有効残留伝送速度は、60−50=10Mbpsとなる。
ステップS65において、通信機器11のインターフェースコントローラ30は、データ伝送中の有効残留伝送速度がしきい値よりも高いか否かを判断し、YESのときはステップS66に進み、NOのときはステップS67に進む。ステップS65のしきい値は、例えば、ステップS55に関連して説明した有効残留伝送速度の余裕値(上述の例では、6Mbps)と同じ値にしてもよい。
ステップS67において、通信機器11のインターフェースコントローラ30は、データ伝送が不安定であることをインジケータ25に表示して、ステップS66に進む。上述した例では、伝送中の有効残留伝送速度10Mbpsは所定の余裕値6Mbpsを超えるので、通信機器11は実データの伝送を続行する。これにより、実データの伝送中に通信ネットワーク10のトラフィック量が多くなり、有効残留伝送速度が少なくなった場合に、実データを享受するユーザに、実データの伝送が不安定であることを警告することができる。
通信機器11のインターフェースコントローラ30は、データ伝送を継続する間、ステップS62〜S67を所定周期で実行する。この周期は、例えば5分である。
上述した例では、ステップS5、S53などで取得される応答時間は、テストデータを2つの通信機器の間で複数回にわたって伝送したときの複数回の伝送時間の平均値及び最大値に限定されず、複数回の伝送時間の最小値でもよい。特に、専有状態(例えば図4のステップS5)で測定される応答時間T(n)が伝送時間の最小値を表し、非専有状態(例えば図9のステップS53)で検出される応答時間が伝送時間の平均値を表してもよい。例えば、図4のステップS5において伝送時間の最小値により専有状態の応答時間T(n)を測定したとき、伝送速度R(n)=10、20、30、40、50、60[Mbps]及び応答時間T(n)=1、2、3、4、5、6[ms]の各データ対を含む伝送速度テーブル29aが得られたとする。この場合、図9のステップS53において、伝送時間の平均値により非専有状態の応答時間4msを検出したとすると、応答時間に対応する伝送速度は40Mbpsとなる。従って、図13の例では30Mbpsであったのに対して、10Mbps増加する。このように、複数の伝送時間の最小値で応答時間T(n)を表すことにより、通信ネットワーク10のトラフィック量の最大値を考慮して、実データの安定的な伝送の可否を厳格に判断することができ、より確実に実データの安定的な伝送を行うことができる。
上述した例では、通信機器11〜14は、それぞれ個別のステップ及び処理を実行するように説明された。しかしながら、これらの個別のステップ及び処理のうちの少なくとも一部又は全部を各通信機器11〜14に実行させるプログラムを、各通信機器11〜14が実装してもよい。例えば通信機器11は、通信機器13に上述したステップ及び処理を実行させるプログラムを、自身のプログラムと統合して実装されてもよく、この統合されたプログラムは通信機器13においても同様に実装されてもよい。例えば通信機器12は、通信機器14に上述したステップ及び処理を実行させるプログラムを、自身のプログラムと統合して実装されてもよく、この統合されたプログラムは通信機器14においても同様に実装されてもよい。これにより、上述した例において、通信機器11と通信機器13とは同一仕様で製造することができ、通信機器12と通信機器14とは同一仕様で製造することができる。例えば、各通信機器11、13に実装される上述したプログラムはインターフェースコントローラ30に実装され、各通信機器12、14に実装される上述したプログラムはインターフェースコントローラ43に実装される。
一般には、任意の一対の通信機器ごとに無線環境が異なる可能性があるので、図4又は図8の伝送速度テーブル生成処理を通信機器11〜16のそれぞれが実行する必要がある。しかしながら、通信機器11〜16が同一のタイプの機器であるならば、いずれか1つの通信機器が生成した伝送速度テーブルの内容を他の通信機器にコピーしてもよい。
(7)結び
このように、通信システム1では、例えば通信機器11が設置されるときに、通信機器11、12又は通信機器11〜14による専有状態を開始し、大量の負荷データを用いて通信ネットワーク10のトラフィック状態を検査し、伝送速度テーブル29a(すなわち、伝送速度R(n)と応答時間T(n)との対応関係)を生成する。その後、非専有状態で大量の実データを伝送するとき、通信機器11は、実データの伝送前に小量のテストデータを用いて応答時間を検出することにより、実データの安定的な伝送を開始することができるか否かを判断する。それゆえに、実データの伝送前には、応答時間を検出するための小量のテストデータを伝送するだけで済み、通信ネットワーク10への追加のトラフィック量は、負荷データを伝送する場合に比べて最小限に抑制することができる。その結果、非専有状態であってもテストデータが他の通信を妨害することはなく、また実データの伝送前の所定テスト期間は、例えば10秒程度以下に大幅に短縮化することができる。このようなテストデータの伝送が実データの伝送前に毎回実行されても、ユーザは、その実行を負担を感じることもなく実データを享受することが可能となる。
さらに、専有状態を2つの通信機器11、12で構成することにより、通信機器間における各種データの伝送を簡略化することができ、伝送速度テーブル29a及び最大伝送速度Rmaxを簡単に調べることができる。
以上において記述された数字は、実施形態を具体的に説明するために例示したものであり、本明細書に開示された技術は例示された数字に限定されない。フローチャート内の各ステップは、本明細書に開示された技術の趣旨を逸脱しない範囲内で、上述した順序とは異なる順序で実行されてもよく、かつ複数のフローチャートにおけるすべてのステップのいくつかについて、上述したフローチャートとは異なる組み合わせで再構成してもよい。これらにより、異なる順序又は組み合わせの効果を奏することが可能である。上述した実施形態におけるすべての構成要素のいくつかについて、本明細書に開示された技術の趣旨を逸脱しない範囲内で、上述した実施形態とは異なる組み合わせで再構成することにより、異なる組み合わせの効果を奏することが可能である。
以上説明した実施形態はすべて、本明細書に開示された技術を具体化した一例であって、本明細書に開示された技術はこれらの例に限定されず、本明細書に開示された技術を用いて当業者が容易に構成可能な種々の例に展開可能である。
本明細書に開示された技術は、宅内ネットワークなどの共有ネットワーク環境において、ストリーム配信を確実に行う通信技術として利用できる。
1…通信システム、
10…通信ネットワーク、
11〜16…通信機器、
20、41…本体部、
21、40…インターフェース部、
22、42…配線、
23、47…メインコントローラ、
24、48…信号処理回路、
25…インジケータ、
26、49…チューナ、
27…ハードディスクドライブ、
28…BDドライブ、
29、44…不揮発性メモリ、
30、43…インターフェースコントローラ、
31、46…バッファメモリ、
32、45…ネットワークインターフェース、
50…ディスプレイ、
60、65…MACフレーム、
61,66…MACヘッダ、
62、6…IPヘッダ、
63…TCPヘッダ、
64、69…ペイロード、
68…ICMPヘッダ、
D10、D11…データ構成、
Rmax…最大伝送速度。

Claims (34)

  1. 通信ネットワークを介して互いに接続された少なくとも第1通信機器及び第2通信機器を含む複数の通信機器を備えた通信システムにおいて、
    上記第1通信機器は、上記複数の通信機器のうちの任意の一対の通信機器間で異なる複数の伝送速度で負荷データを伝送するときに、上記負荷データよりも小さなサイズのテストデータを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第1応答時間と、上記第1応答時間に対応する伝送速度とを含む伝送速度テーブルを記憶装置に格納し、
    上記第1通信機器から上記第2通信機器に実データを伝送するとき、上記第1通信機器は、
    上記実データを伝送するための必要伝送速度を決定し、
    上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第2応答時間を検出し、
    上記伝送速度テーブルに基づいて、上記第2応答時間に対応する伝送速度を使用済み伝送速度として決定し、
    上記通信ネットワークの最大伝送速度及び上記使用済み伝送速度から、上記実データを伝送するために利用可能な上記通信ネットワークの有効残留伝送速度を決定し、
    上記有効残留伝送速度が上記必要伝送速度よりも高いとき、上記実データの伝送を開始することを特徴とする通信システム。
  2. 上記第1通信機器は上記最大伝送速度を取得し、
    上記第1通信機器及び上記第2通信機器は、上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始し、
    上記専有状態において、上記第1通信機器は、
    上記第1通信機器及び上記第2通信機器の間で異なる複数の伝送速度で負荷データを伝送するときに、上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送して上記第1応答時間を測定し、
    上記第1応答時間と、上記第1応答時間に対応する上記負荷データの伝送速度とを上記伝送速度テーブルに格納することを特徴とする請求項1記載の通信システム。
  3. 上記第1通信機器は上記最大伝送速度を取得し、
    上記第1通信機器、上記第2通信機器、第3通信機器、及び第4通信機器は、上記通信ネットワークにおいて上記第1通信機器、上記第2通信機器、上記第3通信機器、及び上記第4通信機器のみが通信を行う専有状態を開始し、
    上記専有状態において、上記第1通信機器は、
    上記第3通信機器及び上記第4通信機器の間で異なる複数の伝送速度で負荷データを伝送するときに、上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送して上記第1応答時間を測定し、
    上記第1応答時間と、上記第1応答時間に対応する上記負荷データの伝送速度とを上記伝送速度テーブルに格納することを特徴とする請求項1記載の通信システム。
  4. 上記第1通信機器及び上記第2通信機器は、上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始し、
    上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で負荷データを伝送することで上記最大伝送速度を測定することを特徴とする請求項2又は3記載の通信システム。
  5. 上記第3通信機器及び上記第4通信機器は、上記通信ネットワークにおいて上記第3通信機器及び上記第4通信機器のみが通信を行う専有状態を開始し、
    上記第3通信機器は、上記第3通信機器及び上記第4通信機器の間で負荷データを伝送することで上記最大伝送速度を測定し、
    上記第1通信機器は、上記第3通信機器から上記最大伝送速度を取得することを特徴とする請求項3記載の通信システム。
  6. 上記第1通信機器及び上記第2通信機器は、上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始し、
    上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で負荷データを伝送することで上記最大伝送速度を測定し、
    上記第3通信機器及び上記第4通信機器は、上記通信ネットワークにおいて上記第3通信機器及び上記第4通信機器のみが通信を行う専有状態を開始し、
    上記第3通信機器は、上記第3通信機器及び上記第4通信機器の間で負荷データを伝送することで上記最大伝送速度を測定することを特徴とする請求項3記載の通信システム。
  7. 上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の平均値を取得することで、上記第1応答時間を測定することを特徴とする請求項2〜6のうちのいずれか1つに記載の通信システム。
  8. 上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最大値を取得することで、上記第1応答時間を測定することを特徴とする請求項2〜6のうちのいずれか1つに記載の通信システム。
  9. 上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最小値を取得することで、上記第1応答時間を測定することを特徴とする請求項2〜6のうちのいずれか1つに記載の通信システム。
  10. 上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の平均値を取得することで、上記第2応答時間を検出することを特徴とする請求項1〜9のうちのいずれか1つに記載の通信システム。
  11. 上記第1通信機器は、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最大値を取得することで、上記第2応答時間を検出することを特徴とする請求項1〜9のうちのいずれか1つに記載の通信システム。
  12. 上記第1通信機器は、上記伝送速度テーブルに格納された上記第1応答時間及び上記伝送速度の内挿値又は外挿値と、上記第2応答時間とを比較して、上記第2応答時間に対応する伝送速度を上記使用済み伝送速度として決定することを特徴とする請求項1〜11のうちのいずれか1つに記載の通信システム。
  13. 上記有効残留伝送速度は、上記最大伝送速度から上記使用済み伝送速度を減算した残りの伝送速度であることを特徴とする請求項1〜12のうちのいずれか1つに記載の通信システム。
  14. 上記有効残留伝送速度は、上記最大伝送速度から上記使用済み伝送速度及び所定の余裕値を減算した残りの伝送速度であることを特徴とする請求項1〜12のうちのいずれか1つに記載の通信システム。
  15. 上記第1通信機器は、
    第1表示器を備え、
    上記有効残留伝送速度が上記必要伝送速度以下であるとき、上記実データの伝送を中止して、上記実データの伝送が中止されたことを上記第1表示器に表示することを特徴とする請求項1〜14のうちのいずれか1つに記載の通信システム。
  16. 上記実データの伝送の開始後、上記第1通信機器は、
    上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第3応答時間を検出し、
    上記伝送速度テーブルに基づいて、上記第3応答時間に対応する伝送速度を使用済み伝送速度として決定し、
    上記通信ネットワークの最大伝送速度及び上記使用済み伝送速度から上記有効残留伝送速度を決定し、
    上記有効残留伝送速度が所定のしきい値以下であるとき、上記実データの伝送が不安定であることを上記第1表示器に表示することを特徴とする請求項15記載の通信システム。
  17. 上記第1通信機器は、上記有効残留伝送速度が上記必要伝送速度以下であるとき、上記実データの伝送を中止して、上記実データの伝送が中止されたことを上記第2通信機器に通知し、
    上記第2通信機器は、
    第2表示器を備え、
    上記実データの伝送が中止されたことを上記第2表示器に表示することを特徴とする請求項1〜16のうちのいずれか1つに記載の通信システム。
  18. 通信ネットワークを介して互いに接続された少なくとも第1通信機器及び第2通信機器を含む複数の通信機器を備えた通信システムの通信方法において、
    上記第1通信機器は、上記複数の通信機器のうちの任意の一対の通信機器間で異なる複数の伝送速度で負荷データを伝送するときに、上記負荷データよりも小さなサイズのテストデータを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第1応答時間と、上記第1応答時間に対応する伝送速度とを含む伝送速度テーブルを記憶装置に格納し、
    上記通信方法は、上記第1通信機器から上記第2通信機器に実データを伝送するとき、上記第1通信機器において、
    上記実データを伝送するための必要伝送速度を決定するステップと、
    上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第2応答時間を検出するステップと、
    上記伝送速度テーブルに基づいて、上記第2応答時間に対応する伝送速度を使用済み伝送速度として決定するステップと、
    上記通信ネットワークの最大伝送速度及び上記使用済み伝送速度から、上記実データを伝送するために利用可能な上記通信ネットワークの有効残留伝送速度を決定するステップと、
    上記有効残留伝送速度が上記必要伝送速度よりも高いとき、上記実データの伝送を開始するステップとを含むことを特徴とする通信方法。
  19. 上記第1通信機器において上記最大伝送速度を取得するステップと、
    上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始するステップと、
    上記専有状態において、
    上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で異なる複数の伝送速度で負荷データを伝送するときに、上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送して上記第1応答時間を測定するステップと、
    上記第1通信機器において、上記第1応答時間と、上記第1応答時間に対応する上記負荷データの伝送速度とを上記伝送速度テーブルに格納するステップとを含むことを特徴とする請求項18記載の通信方法。
  20. 上記第1通信機器において上記最大伝送速度を取得するステップと、
    上記通信ネットワークにおいて上記第1通信機器、上記第2通信機器、上記第3通信機器、及び上記第4通信機器のみが通信を行う専有状態を開始するステップと、
    上記専有状態において、
    上記第1通信機器において、上記第3通信機器及び上記第4通信機器の間で異なる複数の伝送速度で負荷データを伝送するときに、上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送して上記第1応答時間を測定するステップと、
    上記第1通信機器において、上記第1応答時間と、上記第1応答時間に対応する上記負荷データの伝送速度とを上記伝送速度テーブルに格納するステップとを含むことを特徴とする請求項18記載の通信方法。
  21. 上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始するステップと、
    上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で負荷データを伝送することで上記最大伝送速度を測定するステップとを含むことを特徴とする請求項19又は20記載の通信方法。
  22. 上記通信ネットワークにおいて上記第3通信機器及び上記第4通信機器のみが通信を行う専有状態を開始するステップと、
    上記第3通信機器及び上記第4通信機器の間で負荷データを伝送することで上記最大伝送速度を測定するステップと、
    上記第1通信機器において、上記第3通信機器から上記最大伝送速度を取得するステップとを含むことを特徴とする請求項20記載の通信方法。
  23. 上記通信ネットワークにおいて上記第1通信機器及び上記第2通信機器のみが通信を行う専有状態を開始するステップと、
    上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で負荷データを伝送することで上記最大伝送速度を測定するステップと、
    上記通信ネットワークにおいて上記第3通信機器及び上記第4通信機器のみが通信を行う専有状態を開始するステップと、
    上記第3通信機器において、上記第3通信機器及び上記第4通信機器の間で負荷データを伝送することで上記最大伝送速度を測定するステップとを含むことを特徴とする請求項20記載の通信方法。
  24. 上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の平均値を取得することで、上記第1応答時間を測定するステップを含むことを特徴とする請求項19〜23のうちのいずれか1つに記載の通信方法。
  25. 上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最大値を取得することで、上記第1応答時間を測定するステップを含むことを特徴とする請求項19〜23のうちのいずれか1つに記載の通信方法。
  26. 上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最小値を取得することで、上記第1応答時間を測定するステップを含むことを特徴とする請求項19〜23のうちのいずれか1つに記載の通信方法。
  27. 上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の平均値を取得することで、上記第2応答時間を検出するステップを含むことを特徴とする請求項18〜26のうちのいずれか1つに記載の通信方法。
  28. 上記第1通信機器において、上記第1通信機器及び上記第2通信機器の間で上記テストデータを複数回にわたって伝送したときの上記テストデータの伝送時間の最大値を取得することで、上記第2応答時間を検出するステップを含むことを特徴とする請求項18〜26のうちのいずれか1つに記載の通信方法。
  29. 上記第1通信機器において、上記伝送速度テーブルに格納された上記第1応答時間及び上記伝送速度の内挿値又は外挿値と、上記第2応答時間とを比較して、上記第2応答時間に対応する伝送速度を上記使用済み伝送速度として決定するステップを含むことを特徴とする請求項18〜28のうちのいずれか1つに記載の通信方法。
  30. 上記有効残留伝送速度は、上記最大伝送速度から上記使用済み伝送速度を減算した残りの伝送速度であることを特徴とする請求項18〜29のうちのいずれか1つに記載の通信方法。
  31. 上記有効残留伝送速度は、上記最大伝送速度から上記使用済み伝送速度及び所定の余裕値を減算した残りの伝送速度であることを特徴とする請求項18〜29のうちのいずれか1つに記載の通信方法。
  32. 上記第1通信機器は第1表示器を備え、
    上記方法は、上記第1通信機器において、上記有効残留伝送速度が上記必要伝送速度以下であるとき、上記実データの伝送を中止して、上記実データの伝送が中止されたことを上記第1表示器に表示するステップを含むことを特徴とする請求項18〜31のうちのいずれか1つに記載の通信方法。
  33. 上記実データの伝送の開始後、
    上記第1通信機器において、上記テストデータを上記第1通信機器及び上記第2通信機器の間で伝送したときの上記テストデータの伝送時間を示す第3応答時間を検出し、
    上記第1通信機器において、上記伝送速度テーブルに基づいて、上記第3応答時間に対応する伝送速度を使用済み伝送速度として決定し、
    上記第1通信機器において、上記通信ネットワークの最大伝送速度及び上記使用済み伝送速度から上記有効残留伝送速度を決定し、
    上記第1通信機器において、上記有効残留伝送速度が所定のしきい値以下であるとき、上記実データの伝送が不安定であることを上記第1表示器に表示するステップを含むことを特徴とする請求項32記載の通信方法。
  34. 上記第2通信機器は第2表示器を備え、
    上記方法は、
    上記第1通信機器において、上記有効残留伝送速度が上記必要伝送速度以下であるとき、上記実データの伝送を中止して、上記実データの伝送が中止されたことを上記第2通信機器に通知し、
    上記第2通信機器において、上記実データの伝送が中止されたことを上記第2表示器に表示するステップを含むことを特徴とする請求項18〜33のうちのいずれか1つに記載の通信方法。
JP2012556793A 2011-02-10 2012-02-08 通信装置 Expired - Fee Related JP5572724B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012556793A JP5572724B2 (ja) 2011-02-10 2012-02-08 通信装置

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2011026825 2011-02-10
JP2011026825 2011-02-10
PCT/JP2012/000837 WO2012108194A1 (ja) 2011-02-10 2012-02-08 通信システム及び通信方法
JP2012556793A JP5572724B2 (ja) 2011-02-10 2012-02-08 通信装置

Publications (2)

Publication Number Publication Date
JPWO2012108194A1 true JPWO2012108194A1 (ja) 2014-07-03
JP5572724B2 JP5572724B2 (ja) 2014-08-13

Family

ID=46638415

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012556793A Expired - Fee Related JP5572724B2 (ja) 2011-02-10 2012-02-08 通信装置

Country Status (3)

Country Link
US (1) US8954532B2 (ja)
JP (1) JP5572724B2 (ja)
WO (1) WO2012108194A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9053311B2 (en) * 2011-11-30 2015-06-09 Red Hat, Inc. Secure network system request support via a ping request
TWI517615B (zh) 2014-01-02 2016-01-11 瑞昱半導體股份有限公司 無線通訊裝置與決定無線通訊裝置之傳輸速率的方法
WO2015128134A1 (en) 2014-02-28 2015-09-03 Sony Corporation Telecommunications apparatus and methods
JP6241319B2 (ja) * 2014-02-28 2017-12-06 富士通株式会社 情報処理装置、通信経路決定プログラム及び通信経路決定方法
US10505851B1 (en) * 2017-11-29 2019-12-10 Innovium, Inc. Transmission burst control in a network device
WO2022176266A1 (ja) * 2021-02-16 2022-08-25 三菱電機株式会社 制御システムに含まれるネットワークの通信帯域を最適化する方法、装置、プログラム、および制御システム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005184471A (ja) * 2003-12-19 2005-07-07 Fujitsu Ltd 通信機器の負荷計測方法及び装置
KR100677425B1 (ko) * 2005-01-13 2007-02-02 엘지전자 주식회사 무선 데이터 망의 성능 점검 장치 및 그 방법
JP2007074225A (ja) 2005-09-06 2007-03-22 Sony Corp 通信処理装置、および通信制御方法、並びにコンピュータ・プログラム
JP4606338B2 (ja) 2006-01-30 2011-01-05 富士通株式会社 検出方法及び検出装置
JP4783179B2 (ja) * 2006-03-07 2011-09-28 株式会社日立製作所 エリア管理システム
US8250227B2 (en) * 2007-03-02 2012-08-21 International Business Machines Corporation Providing different rates to different users of a download service
JP4935635B2 (ja) * 2007-11-07 2012-05-23 富士通株式会社 ネットワーク帯域推定プログラム、ネットワーク帯域推定装置、ネットワーク帯域推定方法および計測装置
US8706910B2 (en) * 2008-10-28 2014-04-22 Panzura, Inc. Dynamically adaptive network-based data processing system and method
KR101178570B1 (ko) * 2010-10-28 2012-08-30 삼성에스디에스 주식회사 이더넷 환경에서 udp 데이터 전송의 공정성 확보장치 및 방법

Also Published As

Publication number Publication date
WO2012108194A1 (ja) 2012-08-16
JP5572724B2 (ja) 2014-08-13
US20130060898A1 (en) 2013-03-07
US8954532B2 (en) 2015-02-10

Similar Documents

Publication Publication Date Title
JP5572724B2 (ja) 通信装置
EP2814013B1 (en) Isochronous transmission for ip-oriented network
US7843848B2 (en) Methods and apparatus for round trip time measurements
JP5060618B2 (ja) 無線通信装置および無線通信制御方法
CN105765925B (zh) 在由网络设备运行的进行中业务会话之间分布网络的可用带宽的方法以及相应设备
US8014400B2 (en) Method for allocating data packet transmission among multiple links of a network, and network device and computer program product implementing the method
CA2693388C (en) Method and apparatus for mitigating layer-2 looping in home networking applications
US7751439B2 (en) Method of allocation of resources for transmission of a data content, corresponding computer program product, storage means and device
US7965639B2 (en) Dynamic adaptation of MAC-layer retransmission value
JP2008118548A (ja) 通信装置および通信装置としてコンピュータを機能させるためのプログラム
EP2606620B1 (en) Method and apparatus for transmitting and receiving data based on secured path bandwidth in network established by using audio/video interface
CN107211188B (zh) 信息处理方法、信息处理设备和程序
JP2008236742A (ja) ネットワークにおけるサービス品質の提供方法、中間ノード装置、およびシステム
KR20050009061A (ko) 모바일 애드 혹 네트워크 환경에서 효율적인 데이터송수신을 위한 네트워크 장치 및 데이터 전송 방법
CN105828112A (zh) 基于竞争的网络中的带宽获取
JP4282686B2 (ja) 通信装置、方法およびプログラム
JP2010161616A (ja) 通信装置、通信システム、通信方法、プログラム、及び集積回路
EP1850562A1 (en) Apparatus and method for structuring IP identification packets and alloting IP addresses
US20050180430A1 (en) Packet communication device and method
KR101590707B1 (ko) 적응형 스트리밍 제공방법
KR100467269B1 (ko) 데이터의 전송속도 확인방법
JP2009010552A (ja) フレーム制御方法及び通信システム
JP5052578B2 (ja) 通信装置および通信装置としてコンピュータを機能させるためのプログラム
Ferreira et al. Modelling for TDMA under an AFR scheme over HomePlug AV (HPAV)
JP2009027327A (ja) データ送受信装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140401

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140530

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: 20140624

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140630

LAPS Cancellation because of no payment of annual fees