通信システム、通信方法、通信装置、およびプログラム
【課題】通信システム、通信方法、通信装置、およびプログラムを提供すること。
【解決手段】異なるパケットサイズで送信された複数のパケットを1または2以上のリンクを介して受信する受信部と、前記受信部による受信結果に基づいて、パケットサイズごとのパケット損失率を算出する算出部と、前記受信部により受信されたパケットのパケットサイズの差分、および前記算出部により算出されたパケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定する推定部と、を備える通信装置。
【解決手段】異なるパケットサイズで送信された複数のパケットを1または2以上のリンクを介して受信する受信部と、前記受信部による受信結果に基づいて、パケットサイズごとのパケット損失率を算出する算出部と、前記受信部により受信されたパケットのパケットサイズの差分、および前記算出部により算出されたパケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定する推定部と、を備える通信装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信システム、通信方法、通信装置、およびプログラムに関する。
【背景技術】
【0002】
複数の通信装置がインターネットなどのネットワークを介してパケットを送受信すると、通信経路上の有線リンクまたは無線リンクでパケット損失が発生する場合がある。有線リンクでのパケット損失は中継装置のバッファオーバーフローにより生じ、無線リンクで
のパケット損失はエラーや干渉により頻繁に生じる。
【0003】
受信側の通信装置は、この損失したパケットを特定する情報を送信側の通信装置に通知し、送信側の通信装置は、通信経路上のパケット損失率に基づいてパケット送信を制御することができる。なお、パケット損失率やRTT(Round Trip Time)に基づいてレート制御を実現する技術については、例えば特許文献1〜3に記載されている。
【0004】
【特許文献1】特開2004−215199号公報
【特許文献2】特開2004−193991号公報
【特許文献3】特開2004−193990号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかし、従来の通信装置では、通信経路上のパケット損失率を特定することができても、パケット損失がどのような事情により発生したかを特定することは困難であった。例えば、従来の通信装置では、パケット損失が中継装置におけるバッファオーバーフローにより生じたのか、リンク伝送中のビットエラーにより生じたのかを特定することが困難であった。このため、従来の通信装置では、パケット損失の原因に応じた適切な送信制御を行えないという問題があった。
【0006】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、パケット損失の原因に関する情報を推定することが可能な、新規かつ改良された通信システム、通信方法、通信装置、およびプログラムを提供することにある。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明のある観点によれば、複数のパケットを異なるパケットサイズで送信する第1の通信装置と、前記第1の通信装置から送信されたパケットを1または2以上のリンクを介して受信する受信部、および、前記受信部による受信結果に基づいて、パケットサイズごとのパケット損失率を算出する算出部、を有する第2の通信装置とを備える、通信システムが提供される。より詳細には、この通信システムは、前記第1の通信装置から送信されたパケットのパケットサイズの差分、および前記算出部により算出されたパケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定する。
【0008】
前記受信部が、前記第1の通信装置から送信されたパケットを、パケット数に依存してバッファオーバーフローを起こす中継装置を介して受信した場合、前記第1の通信装置または前記第2の通信装置は、前記リンク伝送中におけるビットエラーレートから、任意のパケットサイズのパケットのリンク伝送中におけるパケット損失率を推定し、当該パケットサイズのパケットの前記算出部により算出されたパケット損失率から、前記リンク伝送中におけるパケット損失率を減算して、前記中継装置におけるバッファオーバーフローによるパケット損失率を推定してもよい。
【0009】
前記第1の通信装置は、前記中継装置におけるバッファオーバーフローによるパケット損失率が高いと推定されるほど、パケットの送信間隔を長くしてもよい。
【0010】
前記第1の通信装置から送信される異なるパケットサイズを有するパケットは、前記第1の通信装置から前記第2の通信装置への送信対象のデータで構成されてもよい。
【0011】
前記リンク伝送中におけるビットエラーレートが所定値を上回っている場合、前記第1の通信装置および前記第2の通信装置間の通信経路に無線リンクが存在すると判断してもよい。
【0012】
また、上記課題を解決するために、本発明の別の観点によれば、第1の通信装置が複数のパケットを異なるパケットサイズで送信するステップと、前記第1の通信装置から送信されたパケットを第2の通信装置が1または2以上のリンクを介して受信するステップと、パケットの受信結果に基づいて、パケットサイズごとのパケット損失率を算出するステップと、前記第1の通信装置から送信されたパケットのパケットサイズの差分、および前記パケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定するステップと、を含む通信方法が提供される。
【0013】
また、上記課題を解決するために、本発明の別の観点によれば、異なるパケットサイズで送信された複数のパケットを1または2以上のリンクを介して受信する受信部と、前記受信部による受信結果に基づいて、パケットサイズごとのパケット損失率を算出する算出部と、前記受信部により受信されたパケットのパケットサイズの差分、および前記算出部により算出されたパケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定する推定部と、を備える通信装置が提供される。
【0014】
また、上記課題を解決するために、本発明の別の観点によれば、コンピュータを、異なるパケットサイズで送信された複数のパケットを1または2以上のリンクを介して受信する受信部と、前記受信部による受信結果に基づいて、パケットサイズごとのパケット損失率を算出する算出部と、前記受信部により受信されたパケットのパケットサイズの差分、および前記算出部により算出されたパケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定する推定部と、として機能させるためのプログラムが提供される。
【発明の効果】
【0015】
以上説明したように本発明にかかる通信システム、通信方法、通信装置、およびプログラムによれば、パケット損失の原因に関する情報を推定することができる。
【発明を実施するための最良の形態】
【0016】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0017】
また、以下に示す項目順序に従って当該「発明を実施するための最良の形態」を説明する。
1.本実施形態にかかる画像通信システムの概要
2.画像送信装置の構成
3.画像受信装置の構成
4.画像送信装置および画像受信装置の動作
5.まとめ
【0018】
本実施形態にかかる画像通信システムの概要>
まず、図1を参照し、本実施形態にかかる画像通信システム1の全体構成について説明する。
【0019】
図1は、本実施形態にかかる画像通信システム1の全体構成を示した説明図である。図1に示したように、画像通信システム1は、画像送信装置10と、ネットワーク12と、撮像装置14と、表示装置18と、画像受信装置20と、を含む。
【0020】
撮像装置14は、被写体を撮像し、静止画または動画などの画像データを取得する。そして、撮像装置14は、画像データを画像送信装置10へ供給する。なお、本明細書においては、画像データに音声データが付加されている場合を想定する。
【0021】
画像送信装置10は、撮像装置14から供給された画像データをエンコードし、エンコードされた画像データを含むパケットを生成し、当該パケットをネットワーク12を介して画像受信装置20へ送信する通信装置である。また、画像送信装置10は、TFRC(TCP Friendly Rate Control)に従って動作する。すなわち、画像送信装置10は、パケット損失率やRTT(Round Trip Time)などの情報を含むフィードパケットを画像受信装置20から受信すると、フィードバックパケットに基づいてパケットの送信制御を行う。
【0022】
ネットワーク12は、ネットワーク12に接続されている装置から送信される情報の有線リンク、または無線リンクを含む。例えば、ネットワーク12は、インターネット、電話回線網、衛星通信網などの公衆回線網や、Ethernet(登録商標)を含む各種のLAN(Local Area Network)、WAN(Wide Area Network)などを含んでもよい。また、ネットワーク12は、IP−VPN(Internt Protocol−Virtual Private Network)などの専用回線網を含んでもよい。
【0023】
画像受信装置20は、画像送信装置10から送信されたパケットをネットワーク12を介して受信し、受信したパケットに基づいて画像データを再構築し、当該画像データをデコードして表示装置18へ供給する通信装置である。また、画像受信装置20は、例えばパケット損失率に関する情報を含むフィードバックパケットを生成し、ネットワーク12を介して画像送信装置10へ送信する。
【0024】
表示装置18は、画像受信装置20から供給された画像データを表示する。この表示装置18は、例えば、CRT(Cathode Ray Tube)ディスプレイ装置、液晶ディスプレイ(LCD)装置、OLED(Organic Light Emitting Diode)装置などであってもよい。
【0025】
このような画像通信システム1によれば、リアルタイムでの画像データの通信が可能となる。したがって、当該画像通信システム1を例えばテレビジョン電話システムやテレビジョン会議システムに適用できる。また、図1においては一対の通信装置(画像送信装置10および画像受信装置20)のみを示しているが、画像通信システム1にはより多数の通信装置を設けてもよい。
【0026】
また、上記では画像データが画像送信装置10から画像受信装置20へ送信される例を説明したが、画像送信装置10および画像受信装置20の双方に送信機能および受信機能を実装することにより、画像データの双方向通信を実現することも可能である。また、図1では、画像送信装置10や画像受信装置20などの通信装置が撮像装置14や表示装置18と分離構成される例を示しているが、撮像装置14や表示装置18は通信装置と一体構成されてもよい。
【0027】
また、上記のような画像送信装置10や画像受信装置20の機能は、テレビジョン番組をリアルタイムで提供するインターネットテレビシステムにも適用することが可能である。この場合、テレビジョン番組の提供サーバが画像送信装置10として機能する。
【0028】
また、画像送信装置10からの送信対象のデータは画像データに限定されない。例えば、画像送信装置10からの送信対象のデータは、音楽、講演およびラジオ番組などの音楽データや、ゲームおよびソフトウェアなどの任意のデータであってもよい。
【0029】
次に、図2を参照し、画像送信装置10および画像受信装置20間で行われるパケット通信の具体例について説明する。
【0030】
図2は、画像送信装置10および画像受信装置20間で行われるパケット通信の具体例を示した説明図である。なお、各パケットにはシーケンス番号が付されており、図2において長方形で示したパケット内に記載されている番号はシーケンス番号を示すものとする。
【0031】
また、本実施形態においては、2の装置間の通信路をリンクと称する。さらに、2の装置間の通信路が無線である場合には当該通信路を無線リンクと称し、有線である場合には有線リンクと称する。
【0032】
図2に示したように、画像送信装置10から送信されたパケットは、1または2以上の中継装置30を介して画像受信装置20に到達する。しかし、ネットワーク環境により、画像送信装置10から送信されたパケットのパケット損失が発生する場合がある。パケット損失の原因としては、主に以下の2つがあげられる。
【0033】
中継装置30のバッファオーバーフロー
中継装置30は、受信したバッファを一時的にバッファに格納した後に中継送信する。ここで、バッファに格納可能なパケット数を上回る数のパケットが受信された場合、バッファがオーバーフローし、受信されたパケットの一部が損失してしまう。
【0034】
(2)リンク伝送中のエラーおよび衝突
パケットのリンク伝送中、特に無線リンク伝送中には、フェージングの影響などによりビットエラーが発生し、その結果パケット損失が発生してしまう場合がある。また、他の装置から送信されたパケットとの衝突によりパケット損失が発生する場合も多い。
【0035】
なお、図2においては、シーケンス番号が「55」であるパケットが上記(1)により損失し、シーケンス番号が「52」であるパケットが上記(2)により損失した例を示している。
【0036】
ここで、画像送信装置10は、画像受信装置20からのフィードバックパケットにより、総パケット損失率(中継装置30のバッファオーバーフローによるパケット損失率、およびリンク伝送中のエラーおよび衝突によるパケット損失率を含む)を把握できる。さらに、画像送信装置10は、中継装置30のバッファオーバーフローによるパケット損失率、およびリンク伝送中のエラーおよび衝突によるパケット損失率の各々を把握できれば、パケットの送信制御をより効率的に行うことが可能となる。
【0037】
例えば、上述したように、中継装置30のバッファはデータ量でなくパケット数に依存してオーバーフローするため、中継装置30のバッファオーバーフローによるパケット損失率が高い場合、パケットの送信間隔を長くすることによりパケット損失率を抑制できる。また、総パケット損失率に対するリンク伝送中のエラーおよび衝突によるパケット損失率が高い場合には、リンク伝送中のエラーを回避するための送信制御を採用することが効果的である。
【0038】
しかし、図3に示すように、ネットワーク12の中に無線リンクが存在する場合、画像送信装置10が当該無線リンクにおけるエラーおよび衝突によるパケット損失率を把握することは困難である。
【0039】
図3は、画像送信装置10から送信されたパケットの通信経路の具体例を示した説明図である。図3に示した例では、画像送信装置10から送信されたパケットは、画像送信装置10および中継装置30間の有線リンク、中継装置30および無線送信装置40間の有線リンク、無線送信装置40および無線受信装置42間の無線リンクを介する。また、図3においては、シーケンス番号が「63」であるパケットが中継装置30のバッファオーバーフローにより損失し、シーケンス番号が「61」であるパケットが無線リンク伝送中に損失した例を示している。
【0040】
この場合、画像受信装置20は、シーケンス番号が「61」であるパケット、および「63」であるパケットの損失を検出し、総パケット損失率を算出することが可能である。しかし、本実施形態に関連する画像受信装置では、総パケット損失率の内訳を推定することが困難であった。
【0041】
そこで、上記事情を一着眼点にして本実施形態にかかる画像通信システム1を創作するに至った。本実施形態にかかる画像通信システム1によれば、中継装置30のバッファオーバーフローによるパケット損失率およびリンク伝送中のパケット損失率の双方を個別に推定することが可能である。以下、このような画像通信システム1を構成する画像送信装置10および画像受信装置20について詳細に説明する。
【0042】
画像送信装置の構成>
図4は、本実施形態にかかる画像送信装置10の構成を示した機能ブロック図である。図4に示したように、画像送信装置10は、エンコーダ110と、パケット生成部120と、送信部130と、受信部140と、送信制御部150と、を備える。
【0043】
エンコーダ110は、撮像装置14から供給される画像データを、送信制御部150による制御に基づきエンコードする。なお、エンコード方式としては、例えば、JPEG(Joint Photographic coding Experts Group)、JPEG2000、Motion JPEG、AVC(Advanced Video Coding)、MPEG(Moving Picture Experts Group)1、MPEG2またはMPEG4などがあげられる。
【0044】
パケット生成部120は、エンコーダ110によりエンコードされた画像データに基づいてパケットを生成し、送信部130へ供給する。具体的には、パケット生成部120は、エンコーダ110によりエンコードされた画像データを分割し、分割された画像データにTCP(Transmission Control Protocol)/IPヘッダを付加することによりパケットを生成する。または、パケット生成部120は、分割された画像データにUDP(User Datagram Protocol)/IPヘッダを付加することによりパケットを生成してもよい。なお、ヘッダにはパケットの各々を識別するシーケンス番号が含まれる。
【0045】
さらに、パケット生成部120は、異なるパケットサイズのパケットを生成する。より具体的は、パケット生成部120は、パケットサイズL′のパケットおよびパケットサイズL″のパケットを交互に生成する。詳細については後述するが、かかる構成により、中継装置30のバッファオーバーフローによるパケット損失率およびリンク伝送中のパケット損失率の双方を個別に推定することが可能である。
【0046】
なお、パケットサイズL′とパケットサイズL″は、ある程度の差を有することが望まれ、例えば、パケットサイズL/パケットサイズL″は0.3〜0.7の範囲内であってもよい。また、パケット生成部120は、パケットサイズL′およびパケットサイズL″を、送信制御部150による制御に従って変更してもよい。
【0047】
また、本明細書においてはパケット生成部120が2種類のパケットサイズのパケットを画像データに基づいて生成する例に重きをおいて説明するが、本実施形態はかかる例に限定されない。例えば、パケット生成部120は、数パケットにわたって同一のパケットサイズのパケットを生成してもよいし、3種類以上のパケットサイズのパケットを生成してもよいし、画像データを含まないパケットを生成してもよい。
【0048】
送信部130は、パケット生成部120から供給されたパケットを、RTPに従い、送信制御部150により制御されるタイミングで画像受信装置20へ送信する。
【0049】
受信部140は、画像受信装置20からネットワーク12を介して送信されたフィードバックパケットを受信する。フィードバックパケットには、送信部130から送信したパケットの総パケット損失率の内訳を特定可能な情報が含まれる。具体的には、フィードバックパケットには、総パケット損失率の内訳そのものが含まれても、リンク伝送中におけるビットエラー率を示す情報が含まれても、パケットサイズごとのパケット損失率が含まれてもよい。
【0050】
送信制御部150は、受信部140により受信されたフィードバックパケットに基づいて総パケット損失率の内訳を特定し、総パケット損失率の内訳に応じた送信制御を行うことによりQos(Quality of Service)を高めることができる。
【0051】
例えば、総パケット損失率に対して中継装置30のバッファオーバーフローによるパケット損失率が大部分(例えば、半分以上)を占める場合、送信制御部150は、送信部130からのパケットの送信間隔を長くさせてもよい。かかる構成により、中継装置30のバッファにパケットが蓄積されるペースを低減できるため、中継装置30におけるバッファオーバーフローの発生、およびパケット損失率の抑制を図ることができる。
【0052】
また、送信制御部150は、パケット生成部120に生成させるパケットのパケットサイズを、リンク伝送中のパケット損失率またはリンク伝送中におけるビットエラー率に応じて制御してもよい。例えば、送信制御部150は、リンク伝送中のパケット損失率またはリンク伝送中におけるビットエラー率が所定値を下回っている場合、パケット生成部120に生成させるパケットのパケットサイズを大きくしてもよい。かかる構成によれば、画像データの伝送速度の向上を図ることができる。
【0053】
同様に、送信制御部150は、リンク伝送中のパケット損失率またはリンク伝送中におけるビットエラー率が所定値を上回っている場合、パケット生成部120に生成させるパケットのパケットサイズを小さくしてもよい。かかる構成によれば、リンク伝送中のパケット損失率を抑制することができる。
【0054】
画像受信装置の構成>
次に、図5を参照し、本実施形態にかかる画像受信装置20の構成について説明する。
【0055】
図5は、本実施形態にかかる画像受信装置20の構成を示した機能ブロック図である。図5に示したように、画像受信装置20は、受信部210と、データ再構成部220と、デコーダ230と、パケット損失率算出部240と、推定部250と、フィードバックパケット生成部260と、送信部270と、を備える。
【0056】
受信部210は、画像送信装置10から送信されたパケットサイズL′およびパケットサイズL″のパケットを受信する。そして、受信部210は、受信したパケットをデータ再構成部220へ供給し、ヘッダに含まれるシーケンス番号をパケット損失率算出部240へ供給する。
【0057】
データ再構成部220は、受信部210から供給されるパケットに基づいて画像データを再構成する。すなわち、各パケットには分割された画像データが含まれているため、データ再構成部220は、複数のパケットに含まれる複数の分割された画像データを組み合わせて画像データを再構成する。
【0058】
デコーダ230は、データ再構成部220により再構成された画像データをデコードし、デコードした画像データを表示装置18へ供給する。その結果、撮像装置14により撮像された画像データを表示装置18がリアルタイムに表示することが可能となる。
【0059】
パケット損失率算出部240は、受信部210から供給されるシーケンス番号に基づいてパケット損失の検出を行う検出部、およびパケット損失率の算出を行う算出部としての機能を有する。
【0060】
具体的には、パケット損失率算出部240は、前回受信部210から供給されたシーケンス番号と、新たに受信部210から供給されたシーケンス番号が連続しているか否かによりパケット損失を検出する。すなわち、画像送信装置10は送信したが、画像受信装置20は受信できなかったパケットの存在を検出する。また、パケット損失率算出部240は、損失したパケットのシーケンス番号を特定する。例えば、前回受信部210から供給されたシーケンス番号が「56」で、新たに受信部210から供給されたシーケンス番号が「58」であったとする。この場合、シーケンス番号が連続していないため、パケット損失率算出部240は、シーケンス番号が「56」と「58」の間の「57」であるパケットが損失したことを検出する。
【0061】
さらに、パケット損失率算出部240は、パケットサイズL′のパケットの損失率、およびパケットサイズL″のパケットの損失率を個別に算出する。例えば、偶数のシーケンス番号がパケットサイズL′に対応し、奇数のシーケンス番号がパケットサイズL″に対応するとする。この場合、パケット損失率算出部240は、損失したパケットのシーケンス番号のうちで偶数の数量に基づいてパケットサイズL′のパケットの損失率を算出し、奇数の数量に基づいてパケットサイズL″のパケットの損失率を算出できる。
【0062】
推定部250は、パケット損失率算出部240により算出されたパケットサイズL′のパケットの損失率、およびパケットサイズL″のパケットの損失率を利用して、リンク伝送中におけるビットエラーレートなどを推定することができる。以下、推定部250の機能について詳細に説明する。
【0063】
上述したように、パケット損失の主な原因は、(1.中継装置30のバッファオーバーフロー)、(2.リンク伝送中のエラーおよび衝突)、であると考えられる。ここで、(1.中継装置30のバッファオーバーフロー)による損失率Pcはパケットサイズに依存せず、(2.リンク伝送中のエラーおよび衝突)による損失率Pwは、以下の数式1に示すようにパケットサイズが大きいほど頻繁に発生すると仮定する。
【0064】
【数1】
(数式1)
【0065】
数式1において、パケットサイズLの単位はビットであり、BERはリンク伝送中におけるビットエラーレートを示す。すなわち、数式1では、パケット中に1ビットでもビットエラーが発生した場合にパケット損失が生じる割合を示している。なお、パケットに誤り訂正ビットが付加される場合もあるが、その場合でも損失はパケットサイズが大きいほど頻繁に発生するため、本明細書においては誤り訂正ビットが付加されない場合を想定する。また、総パケット損失率Plossは、以下の数式2のように表現される。
【0066】
【数2】
(数式2)
【0067】
ここで、パケット損失率算出部240により算出されたパケットサイズL′のパケットの損失率をP´loss、パケットサイズL″のパケットの損失率をP″lossとすると、数式1に示したBERを以下の数式3のように表現できる。
【0068】
【数3】
(数式3)
【0069】
さらに、数式3を数式1に示したBERに代入することにより、パケットサイズL′のパケットの(2.リンク伝送中のエラーおよび衝突)による損失率P′wを、以下の数式4により推定することができる。
【0070】
【数4】
【0071】
また、パケットサイズL′のパケットの(2.リンク伝送中のエラーおよび衝突)による損失率P′wを数式2に代入することにより、パケットサイズL′のパケットの((1.中継装置30のバッファオーバーフロー)による損失率Pcを推定することも可能である。なお、推定部250は、上記推定を所定の時間周期で行っても、シーケンス番号周期で行ってもよい。
【0072】
フィードバックパケット生成部260は、推定部により推定された情報(損失率Pc、損失率P′w、BERなど)、および/またはパケット損失率算出部240により算出された情報(P´loss、P″loss)を含むフィードバックパケットを生成する。
【0073】
送信部270は、フィードバックパケット生成部260により生成されたフィードバックパケットを、所定のタイミングで画像送信装置10へ送信する。その結果、上述したように、送信制御部150によるパケット損失率の内訳に応じた送信制御を実現することができる。
【0074】
画像送信装置および画像受信装置の動作>
続いて、図6および図7を参照し、画像送信装置10および画像受信装置20の動作を説明する。
【0075】
図6は、本実施形態にかかる画像送信装置10の動作の流れを示したフローチャートである。図6に示したように、まず、画像送信装置10のエンコーダ110が、撮像装置14から供給される画像データをエンコードする(S304)。続いて、パケット生成部120が、エンコードされた画像データに基づいて、異なるパケットサイズのパケットを交互に生成する(S308)。そして、送信部130がパケット生成部120により生成されたパケットを、ネットワーク12を介して画像受信装置20へ送信する(S312)。
【0076】
その後、画像送信装置10の受信部140が画像受信装置20からフィードバックパケットを受信すると(S316)、送信制御部150がフィードバックパケットに含まれる情報に基づいてパケットの送信制御を行う(S320)。
【0077】
例えば、送信制御部150は、フィードバックパケットに含まれるBERが所定値を上回っている場合、通信経路に無線リンクが含まれると判断し、無線リンクに適切な送信制御を行ってもよい。
【0078】
図7は、本実施形態にかかる画像受信装置20の動作の流れを示したフローチャートである。図7に示したように、まず、画像受信装置20の受信部210は、画像送信装置10からパケットを受信すると(S404)、パケットのヘッダからシーケンス番号を取得してパケット損失率算出部240へ供給する(S408)。
【0079】
その後、パケット損失率算出部240がパケットサイズごとのパケット損失率を算出する(S412)。そして、推定部250が、パケットサイズごとのパケット損失率を利用し、パケットのリンク伝送中におけるビットエラーレート、およびパケット損失率の内訳を数式1〜4を利用して推定する(S416、S420)。
【0080】
続いて、フィードバックパケット生成部260が、推定部250により推定されたパケット損失率の内訳を含むフィードバックパケットを生成し(S424)、送信部270が当該フィードバックパケットを画像送信装置10へ送信する(S428)。なお、画像受信装置20のデータ再構成部220およびデコーダ230が上記処理と並行して画像データの再構成およびデコードを行い、画像データが表示装置18に供給され、表示装置18が画像データを表示する。
【0081】
<5.まとめ>
以上説明したように、本実施形態においては、画像送信装置10がパケットを異なるパケットサイズで送信するため、中継装置30のバッファオーバーフローによるパケット損失率およびリンク伝送中のパケット損失率の双方を個別に推定することが可能である。そして、画像送信装置10は、当該パケット損失率に基づいてパケットの送信制御を行うことにより、通信のQosを高めることができる。
【0082】
また、本実施形態にかかる画像送信装置10は、画像受信装置20への送信対象である画像データを異なるパケットサイズで送信するため、パケット損失率の推定のための専用パケットを送信する必要がない点でも効果的である。
【0083】
なお、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明は係る例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【0084】
例えば、上記では画像受信装置20がパケットのリンク伝送中におけるビットエラーレートおよびパケット損失率の内訳を推定する例を説明したが、本発明はかかる例に限定されない。変形例として、画像受信装置20はパケットサイズL′のパケットの損失率、およびパケットサイズL″のパケットの損失率を含むフィードバックパケットを送信してもよい。そして、画像送信装置10が、パケットサイズL′のパケットの損失率、およびパケットサイズL″のパケットの損失率から、数式1〜4に従ってパケットのリンク伝送中におけるビットエラーレートおよびパケット損失率の内訳を推定することも可能である。
【0085】
また、上記ではパケットの通信経路に無線リンクと有線リンクが混在する場合を想定して説明したが、本発明はかかる例に限定されない。例えば、パケットの通信経路は、光ファイバーなどの高信頼性リンクとADSLなどの低信頼性リンクにより構成されてもよい。この場合、画像受信装置20は、高信頼性リンクの伝送中にビットエラーが生じないと仮定すれば、数式1〜4を応用し、低信頼性リンクの伝送中におけるパケット損失率および中継装置30において生じるパケット損失率を推定することが可能である。
【0086】
また、本明細書の画像送信装置10および画像受信装置20の処理における各ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はない。例えば、画像送信装置10および画像受信装置20の処理における各ステップは、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)を含んでもよい。
【0087】
また、画像送信装置10および画像受信装置20に内蔵されるCPU、ROMおよびRAMなどのハードウェアを、上述した画像送信装置10および画像受信装置20の各構成と同等の機能を発揮させるためのコンピュータプログラムも作成可能である。また、該コンピュータプログラムを記憶させた記憶媒体も提供される。また、図4および図5の機能ブロック図で示したそれぞれの機能ブロックをハードウェアで構成することで、一連の処理をハードウェアで実現することもできる。
【図面の簡単な説明】
【0088】
【図1】本実施形態にかかる画像通信システム1の全体構成を示した説明図である。
【図2】画像送信装置および画像受信装置間で行われるパケット通信の具体例を示した説明図である。
【図3】画像送信装置から送信されたパケットの通信経路の具体例を示した説明図である。
【図4】本実施形態にかかる画像送信装置の構成を示した機能ブロック図である。
【図5】本実施形態にかかる画像受信装置の構成を示した機能ブロック図である。
【図6】本実施形態にかかる画像送信装置の動作の流れを示したフローチャートである。
【図7】本実施形態にかかる画像受信装置の動作の流れを示したフローチャートである。
【符号の説明】
【0089】
10 画像送信装置
12 ネットワーク
14 撮像装置
18 表示装置
20 画像受信装置
30 中継装置
120 パケット生成部
130、270 送信部
140、210 受信部
150 送信制御部
240 パケット損失率算出部
250 推定部
260 フィードバックパケット生成部
【技術分野】
【0001】
本発明は、通信システム、通信方法、通信装置、およびプログラムに関する。
【背景技術】
【0002】
複数の通信装置がインターネットなどのネットワークを介してパケットを送受信すると、通信経路上の有線リンクまたは無線リンクでパケット損失が発生する場合がある。有線リンクでのパケット損失は中継装置のバッファオーバーフローにより生じ、無線リンクで
のパケット損失はエラーや干渉により頻繁に生じる。
【0003】
受信側の通信装置は、この損失したパケットを特定する情報を送信側の通信装置に通知し、送信側の通信装置は、通信経路上のパケット損失率に基づいてパケット送信を制御することができる。なお、パケット損失率やRTT(Round Trip Time)に基づいてレート制御を実現する技術については、例えば特許文献1〜3に記載されている。
【0004】
【特許文献1】特開2004−215199号公報
【特許文献2】特開2004−193991号公報
【特許文献3】特開2004−193990号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかし、従来の通信装置では、通信経路上のパケット損失率を特定することができても、パケット損失がどのような事情により発生したかを特定することは困難であった。例えば、従来の通信装置では、パケット損失が中継装置におけるバッファオーバーフローにより生じたのか、リンク伝送中のビットエラーにより生じたのかを特定することが困難であった。このため、従来の通信装置では、パケット損失の原因に応じた適切な送信制御を行えないという問題があった。
【0006】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、パケット損失の原因に関する情報を推定することが可能な、新規かつ改良された通信システム、通信方法、通信装置、およびプログラムを提供することにある。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明のある観点によれば、複数のパケットを異なるパケットサイズで送信する第1の通信装置と、前記第1の通信装置から送信されたパケットを1または2以上のリンクを介して受信する受信部、および、前記受信部による受信結果に基づいて、パケットサイズごとのパケット損失率を算出する算出部、を有する第2の通信装置とを備える、通信システムが提供される。より詳細には、この通信システムは、前記第1の通信装置から送信されたパケットのパケットサイズの差分、および前記算出部により算出されたパケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定する。
【0008】
前記受信部が、前記第1の通信装置から送信されたパケットを、パケット数に依存してバッファオーバーフローを起こす中継装置を介して受信した場合、前記第1の通信装置または前記第2の通信装置は、前記リンク伝送中におけるビットエラーレートから、任意のパケットサイズのパケットのリンク伝送中におけるパケット損失率を推定し、当該パケットサイズのパケットの前記算出部により算出されたパケット損失率から、前記リンク伝送中におけるパケット損失率を減算して、前記中継装置におけるバッファオーバーフローによるパケット損失率を推定してもよい。
【0009】
前記第1の通信装置は、前記中継装置におけるバッファオーバーフローによるパケット損失率が高いと推定されるほど、パケットの送信間隔を長くしてもよい。
【0010】
前記第1の通信装置から送信される異なるパケットサイズを有するパケットは、前記第1の通信装置から前記第2の通信装置への送信対象のデータで構成されてもよい。
【0011】
前記リンク伝送中におけるビットエラーレートが所定値を上回っている場合、前記第1の通信装置および前記第2の通信装置間の通信経路に無線リンクが存在すると判断してもよい。
【0012】
また、上記課題を解決するために、本発明の別の観点によれば、第1の通信装置が複数のパケットを異なるパケットサイズで送信するステップと、前記第1の通信装置から送信されたパケットを第2の通信装置が1または2以上のリンクを介して受信するステップと、パケットの受信結果に基づいて、パケットサイズごとのパケット損失率を算出するステップと、前記第1の通信装置から送信されたパケットのパケットサイズの差分、および前記パケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定するステップと、を含む通信方法が提供される。
【0013】
また、上記課題を解決するために、本発明の別の観点によれば、異なるパケットサイズで送信された複数のパケットを1または2以上のリンクを介して受信する受信部と、前記受信部による受信結果に基づいて、パケットサイズごとのパケット損失率を算出する算出部と、前記受信部により受信されたパケットのパケットサイズの差分、および前記算出部により算出されたパケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定する推定部と、を備える通信装置が提供される。
【0014】
また、上記課題を解決するために、本発明の別の観点によれば、コンピュータを、異なるパケットサイズで送信された複数のパケットを1または2以上のリンクを介して受信する受信部と、前記受信部による受信結果に基づいて、パケットサイズごとのパケット損失率を算出する算出部と、前記受信部により受信されたパケットのパケットサイズの差分、および前記算出部により算出されたパケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定する推定部と、として機能させるためのプログラムが提供される。
【発明の効果】
【0015】
以上説明したように本発明にかかる通信システム、通信方法、通信装置、およびプログラムによれば、パケット損失の原因に関する情報を推定することができる。
【発明を実施するための最良の形態】
【0016】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0017】
また、以下に示す項目順序に従って当該「発明を実施するための最良の形態」を説明する。
1.本実施形態にかかる画像通信システムの概要
2.画像送信装置の構成
3.画像受信装置の構成
4.画像送信装置および画像受信装置の動作
5.まとめ
【0018】
本実施形態にかかる画像通信システムの概要>
まず、図1を参照し、本実施形態にかかる画像通信システム1の全体構成について説明する。
【0019】
図1は、本実施形態にかかる画像通信システム1の全体構成を示した説明図である。図1に示したように、画像通信システム1は、画像送信装置10と、ネットワーク12と、撮像装置14と、表示装置18と、画像受信装置20と、を含む。
【0020】
撮像装置14は、被写体を撮像し、静止画または動画などの画像データを取得する。そして、撮像装置14は、画像データを画像送信装置10へ供給する。なお、本明細書においては、画像データに音声データが付加されている場合を想定する。
【0021】
画像送信装置10は、撮像装置14から供給された画像データをエンコードし、エンコードされた画像データを含むパケットを生成し、当該パケットをネットワーク12を介して画像受信装置20へ送信する通信装置である。また、画像送信装置10は、TFRC(TCP Friendly Rate Control)に従って動作する。すなわち、画像送信装置10は、パケット損失率やRTT(Round Trip Time)などの情報を含むフィードパケットを画像受信装置20から受信すると、フィードバックパケットに基づいてパケットの送信制御を行う。
【0022】
ネットワーク12は、ネットワーク12に接続されている装置から送信される情報の有線リンク、または無線リンクを含む。例えば、ネットワーク12は、インターネット、電話回線網、衛星通信網などの公衆回線網や、Ethernet(登録商標)を含む各種のLAN(Local Area Network)、WAN(Wide Area Network)などを含んでもよい。また、ネットワーク12は、IP−VPN(Internt Protocol−Virtual Private Network)などの専用回線網を含んでもよい。
【0023】
画像受信装置20は、画像送信装置10から送信されたパケットをネットワーク12を介して受信し、受信したパケットに基づいて画像データを再構築し、当該画像データをデコードして表示装置18へ供給する通信装置である。また、画像受信装置20は、例えばパケット損失率に関する情報を含むフィードバックパケットを生成し、ネットワーク12を介して画像送信装置10へ送信する。
【0024】
表示装置18は、画像受信装置20から供給された画像データを表示する。この表示装置18は、例えば、CRT(Cathode Ray Tube)ディスプレイ装置、液晶ディスプレイ(LCD)装置、OLED(Organic Light Emitting Diode)装置などであってもよい。
【0025】
このような画像通信システム1によれば、リアルタイムでの画像データの通信が可能となる。したがって、当該画像通信システム1を例えばテレビジョン電話システムやテレビジョン会議システムに適用できる。また、図1においては一対の通信装置(画像送信装置10および画像受信装置20)のみを示しているが、画像通信システム1にはより多数の通信装置を設けてもよい。
【0026】
また、上記では画像データが画像送信装置10から画像受信装置20へ送信される例を説明したが、画像送信装置10および画像受信装置20の双方に送信機能および受信機能を実装することにより、画像データの双方向通信を実現することも可能である。また、図1では、画像送信装置10や画像受信装置20などの通信装置が撮像装置14や表示装置18と分離構成される例を示しているが、撮像装置14や表示装置18は通信装置と一体構成されてもよい。
【0027】
また、上記のような画像送信装置10や画像受信装置20の機能は、テレビジョン番組をリアルタイムで提供するインターネットテレビシステムにも適用することが可能である。この場合、テレビジョン番組の提供サーバが画像送信装置10として機能する。
【0028】
また、画像送信装置10からの送信対象のデータは画像データに限定されない。例えば、画像送信装置10からの送信対象のデータは、音楽、講演およびラジオ番組などの音楽データや、ゲームおよびソフトウェアなどの任意のデータであってもよい。
【0029】
次に、図2を参照し、画像送信装置10および画像受信装置20間で行われるパケット通信の具体例について説明する。
【0030】
図2は、画像送信装置10および画像受信装置20間で行われるパケット通信の具体例を示した説明図である。なお、各パケットにはシーケンス番号が付されており、図2において長方形で示したパケット内に記載されている番号はシーケンス番号を示すものとする。
【0031】
また、本実施形態においては、2の装置間の通信路をリンクと称する。さらに、2の装置間の通信路が無線である場合には当該通信路を無線リンクと称し、有線である場合には有線リンクと称する。
【0032】
図2に示したように、画像送信装置10から送信されたパケットは、1または2以上の中継装置30を介して画像受信装置20に到達する。しかし、ネットワーク環境により、画像送信装置10から送信されたパケットのパケット損失が発生する場合がある。パケット損失の原因としては、主に以下の2つがあげられる。
【0033】
中継装置30のバッファオーバーフロー
中継装置30は、受信したバッファを一時的にバッファに格納した後に中継送信する。ここで、バッファに格納可能なパケット数を上回る数のパケットが受信された場合、バッファがオーバーフローし、受信されたパケットの一部が損失してしまう。
【0034】
(2)リンク伝送中のエラーおよび衝突
パケットのリンク伝送中、特に無線リンク伝送中には、フェージングの影響などによりビットエラーが発生し、その結果パケット損失が発生してしまう場合がある。また、他の装置から送信されたパケットとの衝突によりパケット損失が発生する場合も多い。
【0035】
なお、図2においては、シーケンス番号が「55」であるパケットが上記(1)により損失し、シーケンス番号が「52」であるパケットが上記(2)により損失した例を示している。
【0036】
ここで、画像送信装置10は、画像受信装置20からのフィードバックパケットにより、総パケット損失率(中継装置30のバッファオーバーフローによるパケット損失率、およびリンク伝送中のエラーおよび衝突によるパケット損失率を含む)を把握できる。さらに、画像送信装置10は、中継装置30のバッファオーバーフローによるパケット損失率、およびリンク伝送中のエラーおよび衝突によるパケット損失率の各々を把握できれば、パケットの送信制御をより効率的に行うことが可能となる。
【0037】
例えば、上述したように、中継装置30のバッファはデータ量でなくパケット数に依存してオーバーフローするため、中継装置30のバッファオーバーフローによるパケット損失率が高い場合、パケットの送信間隔を長くすることによりパケット損失率を抑制できる。また、総パケット損失率に対するリンク伝送中のエラーおよび衝突によるパケット損失率が高い場合には、リンク伝送中のエラーを回避するための送信制御を採用することが効果的である。
【0038】
しかし、図3に示すように、ネットワーク12の中に無線リンクが存在する場合、画像送信装置10が当該無線リンクにおけるエラーおよび衝突によるパケット損失率を把握することは困難である。
【0039】
図3は、画像送信装置10から送信されたパケットの通信経路の具体例を示した説明図である。図3に示した例では、画像送信装置10から送信されたパケットは、画像送信装置10および中継装置30間の有線リンク、中継装置30および無線送信装置40間の有線リンク、無線送信装置40および無線受信装置42間の無線リンクを介する。また、図3においては、シーケンス番号が「63」であるパケットが中継装置30のバッファオーバーフローにより損失し、シーケンス番号が「61」であるパケットが無線リンク伝送中に損失した例を示している。
【0040】
この場合、画像受信装置20は、シーケンス番号が「61」であるパケット、および「63」であるパケットの損失を検出し、総パケット損失率を算出することが可能である。しかし、本実施形態に関連する画像受信装置では、総パケット損失率の内訳を推定することが困難であった。
【0041】
そこで、上記事情を一着眼点にして本実施形態にかかる画像通信システム1を創作するに至った。本実施形態にかかる画像通信システム1によれば、中継装置30のバッファオーバーフローによるパケット損失率およびリンク伝送中のパケット損失率の双方を個別に推定することが可能である。以下、このような画像通信システム1を構成する画像送信装置10および画像受信装置20について詳細に説明する。
【0042】
画像送信装置の構成>
図4は、本実施形態にかかる画像送信装置10の構成を示した機能ブロック図である。図4に示したように、画像送信装置10は、エンコーダ110と、パケット生成部120と、送信部130と、受信部140と、送信制御部150と、を備える。
【0043】
エンコーダ110は、撮像装置14から供給される画像データを、送信制御部150による制御に基づきエンコードする。なお、エンコード方式としては、例えば、JPEG(Joint Photographic coding Experts Group)、JPEG2000、Motion JPEG、AVC(Advanced Video Coding)、MPEG(Moving Picture Experts Group)1、MPEG2またはMPEG4などがあげられる。
【0044】
パケット生成部120は、エンコーダ110によりエンコードされた画像データに基づいてパケットを生成し、送信部130へ供給する。具体的には、パケット生成部120は、エンコーダ110によりエンコードされた画像データを分割し、分割された画像データにTCP(Transmission Control Protocol)/IPヘッダを付加することによりパケットを生成する。または、パケット生成部120は、分割された画像データにUDP(User Datagram Protocol)/IPヘッダを付加することによりパケットを生成してもよい。なお、ヘッダにはパケットの各々を識別するシーケンス番号が含まれる。
【0045】
さらに、パケット生成部120は、異なるパケットサイズのパケットを生成する。より具体的は、パケット生成部120は、パケットサイズL′のパケットおよびパケットサイズL″のパケットを交互に生成する。詳細については後述するが、かかる構成により、中継装置30のバッファオーバーフローによるパケット損失率およびリンク伝送中のパケット損失率の双方を個別に推定することが可能である。
【0046】
なお、パケットサイズL′とパケットサイズL″は、ある程度の差を有することが望まれ、例えば、パケットサイズL/パケットサイズL″は0.3〜0.7の範囲内であってもよい。また、パケット生成部120は、パケットサイズL′およびパケットサイズL″を、送信制御部150による制御に従って変更してもよい。
【0047】
また、本明細書においてはパケット生成部120が2種類のパケットサイズのパケットを画像データに基づいて生成する例に重きをおいて説明するが、本実施形態はかかる例に限定されない。例えば、パケット生成部120は、数パケットにわたって同一のパケットサイズのパケットを生成してもよいし、3種類以上のパケットサイズのパケットを生成してもよいし、画像データを含まないパケットを生成してもよい。
【0048】
送信部130は、パケット生成部120から供給されたパケットを、RTPに従い、送信制御部150により制御されるタイミングで画像受信装置20へ送信する。
【0049】
受信部140は、画像受信装置20からネットワーク12を介して送信されたフィードバックパケットを受信する。フィードバックパケットには、送信部130から送信したパケットの総パケット損失率の内訳を特定可能な情報が含まれる。具体的には、フィードバックパケットには、総パケット損失率の内訳そのものが含まれても、リンク伝送中におけるビットエラー率を示す情報が含まれても、パケットサイズごとのパケット損失率が含まれてもよい。
【0050】
送信制御部150は、受信部140により受信されたフィードバックパケットに基づいて総パケット損失率の内訳を特定し、総パケット損失率の内訳に応じた送信制御を行うことによりQos(Quality of Service)を高めることができる。
【0051】
例えば、総パケット損失率に対して中継装置30のバッファオーバーフローによるパケット損失率が大部分(例えば、半分以上)を占める場合、送信制御部150は、送信部130からのパケットの送信間隔を長くさせてもよい。かかる構成により、中継装置30のバッファにパケットが蓄積されるペースを低減できるため、中継装置30におけるバッファオーバーフローの発生、およびパケット損失率の抑制を図ることができる。
【0052】
また、送信制御部150は、パケット生成部120に生成させるパケットのパケットサイズを、リンク伝送中のパケット損失率またはリンク伝送中におけるビットエラー率に応じて制御してもよい。例えば、送信制御部150は、リンク伝送中のパケット損失率またはリンク伝送中におけるビットエラー率が所定値を下回っている場合、パケット生成部120に生成させるパケットのパケットサイズを大きくしてもよい。かかる構成によれば、画像データの伝送速度の向上を図ることができる。
【0053】
同様に、送信制御部150は、リンク伝送中のパケット損失率またはリンク伝送中におけるビットエラー率が所定値を上回っている場合、パケット生成部120に生成させるパケットのパケットサイズを小さくしてもよい。かかる構成によれば、リンク伝送中のパケット損失率を抑制することができる。
【0054】
画像受信装置の構成>
次に、図5を参照し、本実施形態にかかる画像受信装置20の構成について説明する。
【0055】
図5は、本実施形態にかかる画像受信装置20の構成を示した機能ブロック図である。図5に示したように、画像受信装置20は、受信部210と、データ再構成部220と、デコーダ230と、パケット損失率算出部240と、推定部250と、フィードバックパケット生成部260と、送信部270と、を備える。
【0056】
受信部210は、画像送信装置10から送信されたパケットサイズL′およびパケットサイズL″のパケットを受信する。そして、受信部210は、受信したパケットをデータ再構成部220へ供給し、ヘッダに含まれるシーケンス番号をパケット損失率算出部240へ供給する。
【0057】
データ再構成部220は、受信部210から供給されるパケットに基づいて画像データを再構成する。すなわち、各パケットには分割された画像データが含まれているため、データ再構成部220は、複数のパケットに含まれる複数の分割された画像データを組み合わせて画像データを再構成する。
【0058】
デコーダ230は、データ再構成部220により再構成された画像データをデコードし、デコードした画像データを表示装置18へ供給する。その結果、撮像装置14により撮像された画像データを表示装置18がリアルタイムに表示することが可能となる。
【0059】
パケット損失率算出部240は、受信部210から供給されるシーケンス番号に基づいてパケット損失の検出を行う検出部、およびパケット損失率の算出を行う算出部としての機能を有する。
【0060】
具体的には、パケット損失率算出部240は、前回受信部210から供給されたシーケンス番号と、新たに受信部210から供給されたシーケンス番号が連続しているか否かによりパケット損失を検出する。すなわち、画像送信装置10は送信したが、画像受信装置20は受信できなかったパケットの存在を検出する。また、パケット損失率算出部240は、損失したパケットのシーケンス番号を特定する。例えば、前回受信部210から供給されたシーケンス番号が「56」で、新たに受信部210から供給されたシーケンス番号が「58」であったとする。この場合、シーケンス番号が連続していないため、パケット損失率算出部240は、シーケンス番号が「56」と「58」の間の「57」であるパケットが損失したことを検出する。
【0061】
さらに、パケット損失率算出部240は、パケットサイズL′のパケットの損失率、およびパケットサイズL″のパケットの損失率を個別に算出する。例えば、偶数のシーケンス番号がパケットサイズL′に対応し、奇数のシーケンス番号がパケットサイズL″に対応するとする。この場合、パケット損失率算出部240は、損失したパケットのシーケンス番号のうちで偶数の数量に基づいてパケットサイズL′のパケットの損失率を算出し、奇数の数量に基づいてパケットサイズL″のパケットの損失率を算出できる。
【0062】
推定部250は、パケット損失率算出部240により算出されたパケットサイズL′のパケットの損失率、およびパケットサイズL″のパケットの損失率を利用して、リンク伝送中におけるビットエラーレートなどを推定することができる。以下、推定部250の機能について詳細に説明する。
【0063】
上述したように、パケット損失の主な原因は、(1.中継装置30のバッファオーバーフロー)、(2.リンク伝送中のエラーおよび衝突)、であると考えられる。ここで、(1.中継装置30のバッファオーバーフロー)による損失率Pcはパケットサイズに依存せず、(2.リンク伝送中のエラーおよび衝突)による損失率Pwは、以下の数式1に示すようにパケットサイズが大きいほど頻繁に発生すると仮定する。
【0064】
【数1】
(数式1)
【0065】
数式1において、パケットサイズLの単位はビットであり、BERはリンク伝送中におけるビットエラーレートを示す。すなわち、数式1では、パケット中に1ビットでもビットエラーが発生した場合にパケット損失が生じる割合を示している。なお、パケットに誤り訂正ビットが付加される場合もあるが、その場合でも損失はパケットサイズが大きいほど頻繁に発生するため、本明細書においては誤り訂正ビットが付加されない場合を想定する。また、総パケット損失率Plossは、以下の数式2のように表現される。
【0066】
【数2】
(数式2)
【0067】
ここで、パケット損失率算出部240により算出されたパケットサイズL′のパケットの損失率をP´loss、パケットサイズL″のパケットの損失率をP″lossとすると、数式1に示したBERを以下の数式3のように表現できる。
【0068】
【数3】
(数式3)
【0069】
さらに、数式3を数式1に示したBERに代入することにより、パケットサイズL′のパケットの(2.リンク伝送中のエラーおよび衝突)による損失率P′wを、以下の数式4により推定することができる。
【0070】
【数4】
【0071】
また、パケットサイズL′のパケットの(2.リンク伝送中のエラーおよび衝突)による損失率P′wを数式2に代入することにより、パケットサイズL′のパケットの((1.中継装置30のバッファオーバーフロー)による損失率Pcを推定することも可能である。なお、推定部250は、上記推定を所定の時間周期で行っても、シーケンス番号周期で行ってもよい。
【0072】
フィードバックパケット生成部260は、推定部により推定された情報(損失率Pc、損失率P′w、BERなど)、および/またはパケット損失率算出部240により算出された情報(P´loss、P″loss)を含むフィードバックパケットを生成する。
【0073】
送信部270は、フィードバックパケット生成部260により生成されたフィードバックパケットを、所定のタイミングで画像送信装置10へ送信する。その結果、上述したように、送信制御部150によるパケット損失率の内訳に応じた送信制御を実現することができる。
【0074】
画像送信装置および画像受信装置の動作>
続いて、図6および図7を参照し、画像送信装置10および画像受信装置20の動作を説明する。
【0075】
図6は、本実施形態にかかる画像送信装置10の動作の流れを示したフローチャートである。図6に示したように、まず、画像送信装置10のエンコーダ110が、撮像装置14から供給される画像データをエンコードする(S304)。続いて、パケット生成部120が、エンコードされた画像データに基づいて、異なるパケットサイズのパケットを交互に生成する(S308)。そして、送信部130がパケット生成部120により生成されたパケットを、ネットワーク12を介して画像受信装置20へ送信する(S312)。
【0076】
その後、画像送信装置10の受信部140が画像受信装置20からフィードバックパケットを受信すると(S316)、送信制御部150がフィードバックパケットに含まれる情報に基づいてパケットの送信制御を行う(S320)。
【0077】
例えば、送信制御部150は、フィードバックパケットに含まれるBERが所定値を上回っている場合、通信経路に無線リンクが含まれると判断し、無線リンクに適切な送信制御を行ってもよい。
【0078】
図7は、本実施形態にかかる画像受信装置20の動作の流れを示したフローチャートである。図7に示したように、まず、画像受信装置20の受信部210は、画像送信装置10からパケットを受信すると(S404)、パケットのヘッダからシーケンス番号を取得してパケット損失率算出部240へ供給する(S408)。
【0079】
その後、パケット損失率算出部240がパケットサイズごとのパケット損失率を算出する(S412)。そして、推定部250が、パケットサイズごとのパケット損失率を利用し、パケットのリンク伝送中におけるビットエラーレート、およびパケット損失率の内訳を数式1〜4を利用して推定する(S416、S420)。
【0080】
続いて、フィードバックパケット生成部260が、推定部250により推定されたパケット損失率の内訳を含むフィードバックパケットを生成し(S424)、送信部270が当該フィードバックパケットを画像送信装置10へ送信する(S428)。なお、画像受信装置20のデータ再構成部220およびデコーダ230が上記処理と並行して画像データの再構成およびデコードを行い、画像データが表示装置18に供給され、表示装置18が画像データを表示する。
【0081】
<5.まとめ>
以上説明したように、本実施形態においては、画像送信装置10がパケットを異なるパケットサイズで送信するため、中継装置30のバッファオーバーフローによるパケット損失率およびリンク伝送中のパケット損失率の双方を個別に推定することが可能である。そして、画像送信装置10は、当該パケット損失率に基づいてパケットの送信制御を行うことにより、通信のQosを高めることができる。
【0082】
また、本実施形態にかかる画像送信装置10は、画像受信装置20への送信対象である画像データを異なるパケットサイズで送信するため、パケット損失率の推定のための専用パケットを送信する必要がない点でも効果的である。
【0083】
なお、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明は係る例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【0084】
例えば、上記では画像受信装置20がパケットのリンク伝送中におけるビットエラーレートおよびパケット損失率の内訳を推定する例を説明したが、本発明はかかる例に限定されない。変形例として、画像受信装置20はパケットサイズL′のパケットの損失率、およびパケットサイズL″のパケットの損失率を含むフィードバックパケットを送信してもよい。そして、画像送信装置10が、パケットサイズL′のパケットの損失率、およびパケットサイズL″のパケットの損失率から、数式1〜4に従ってパケットのリンク伝送中におけるビットエラーレートおよびパケット損失率の内訳を推定することも可能である。
【0085】
また、上記ではパケットの通信経路に無線リンクと有線リンクが混在する場合を想定して説明したが、本発明はかかる例に限定されない。例えば、パケットの通信経路は、光ファイバーなどの高信頼性リンクとADSLなどの低信頼性リンクにより構成されてもよい。この場合、画像受信装置20は、高信頼性リンクの伝送中にビットエラーが生じないと仮定すれば、数式1〜4を応用し、低信頼性リンクの伝送中におけるパケット損失率および中継装置30において生じるパケット損失率を推定することが可能である。
【0086】
また、本明細書の画像送信装置10および画像受信装置20の処理における各ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はない。例えば、画像送信装置10および画像受信装置20の処理における各ステップは、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)を含んでもよい。
【0087】
また、画像送信装置10および画像受信装置20に内蔵されるCPU、ROMおよびRAMなどのハードウェアを、上述した画像送信装置10および画像受信装置20の各構成と同等の機能を発揮させるためのコンピュータプログラムも作成可能である。また、該コンピュータプログラムを記憶させた記憶媒体も提供される。また、図4および図5の機能ブロック図で示したそれぞれの機能ブロックをハードウェアで構成することで、一連の処理をハードウェアで実現することもできる。
【図面の簡単な説明】
【0088】
【図1】本実施形態にかかる画像通信システム1の全体構成を示した説明図である。
【図2】画像送信装置および画像受信装置間で行われるパケット通信の具体例を示した説明図である。
【図3】画像送信装置から送信されたパケットの通信経路の具体例を示した説明図である。
【図4】本実施形態にかかる画像送信装置の構成を示した機能ブロック図である。
【図5】本実施形態にかかる画像受信装置の構成を示した機能ブロック図である。
【図6】本実施形態にかかる画像送信装置の動作の流れを示したフローチャートである。
【図7】本実施形態にかかる画像受信装置の動作の流れを示したフローチャートである。
【符号の説明】
【0089】
10 画像送信装置
12 ネットワーク
14 撮像装置
18 表示装置
20 画像受信装置
30 中継装置
120 パケット生成部
130、270 送信部
140、210 受信部
150 送信制御部
240 パケット損失率算出部
250 推定部
260 フィードバックパケット生成部
【特許請求の範囲】
【請求項1】
複数のパケットを異なるパケットサイズで送信する第1の通信装置と;
前記第1の通信装置から送信されたパケットを1または2以上のリンクを介して受信する受信部、および、
前記受信部による受信結果に基づいて、パケットサイズごとのパケット損失率を算出する算出部、
を有する第2の通信装置と;
を備え、
前記第1の通信装置から送信されたパケットのパケットサイズの差分、および前記算出部により算出されたパケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定する、通信システム。
【請求項2】
前記受信部が、前記第1の通信装置から送信されたパケットを、パケット数に依存してバッファオーバーフローを起こす中継装置を介して受信した場合、
前記第1の通信装置または前記第2の通信装置は、
前記リンク伝送中におけるビットエラーレートから、任意のパケットサイズのパケットのリンク伝送中におけるパケット損失率を推定し、
当該パケットサイズのパケットの前記算出部により算出されたパケット損失率から、前記リンク伝送中におけるパケット損失率を減算して、前記中継装置におけるバッファオーバーフローによるパケット損失率を推定する、請求項1に記載の通信システム。
【請求項3】
前記第1の通信装置は、前記中継装置におけるバッファオーバーフローによるパケット損失率が高いと推定されるほど、パケットの送信間隔を長くする、請求項2に記載の通信システム。
【請求項4】
前記第1の通信装置から送信される異なるパケットサイズを有するパケットは、前記第1の通信装置から前記第2の通信装置への送信対象のデータで構成される、請求項3に記載の通信システム。
【請求項5】
前記リンク伝送中におけるビットエラーレートが所定値を上回っている場合、前記第1の通信装置および前記第2の通信装置間の通信経路に無線リンクが存在すると判断する、請求項1に記載の通信システム。
【請求項6】
第1の通信装置が複数のパケットを異なるパケットサイズで送信するステップと;
前記第1の通信装置から送信されたパケットを第2の通信装置が1または2以上のリンクを介して受信するステップと;
パケットの受信結果に基づいて、パケットサイズごとのパケット損失率を算出するステップと;
前記第1の通信装置から送信されたパケットのパケットサイズの差分、および前記パケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定するステップと;
を含む、通信方法。
【請求項7】
異なるパケットサイズで送信された複数のパケットを1または2以上のリンクを介して受信する受信部と;
前記受信部による受信結果に基づいて、パケットサイズごとのパケット損失率を算出する算出部と;
前記受信部により受信されたパケットのパケットサイズの差分、および前記算出部により算出されたパケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定する推定部と;
を備える、通信装置。
【請求項8】
コンピュータを、
異なるパケットサイズで送信された複数のパケットを1または2以上のリンクを介して受信する受信部と;
前記受信部による受信結果に基づいて、パケットサイズごとのパケット損失率を算出する算出部と;
前記受信部により受信されたパケットのパケットサイズの差分、および前記算出部により算出されたパケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定する推定部と;
として機能させるための、プログラム。
【請求項1】
複数のパケットを異なるパケットサイズで送信する第1の通信装置と;
前記第1の通信装置から送信されたパケットを1または2以上のリンクを介して受信する受信部、および、
前記受信部による受信結果に基づいて、パケットサイズごとのパケット損失率を算出する算出部、
を有する第2の通信装置と;
を備え、
前記第1の通信装置から送信されたパケットのパケットサイズの差分、および前記算出部により算出されたパケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定する、通信システム。
【請求項2】
前記受信部が、前記第1の通信装置から送信されたパケットを、パケット数に依存してバッファオーバーフローを起こす中継装置を介して受信した場合、
前記第1の通信装置または前記第2の通信装置は、
前記リンク伝送中におけるビットエラーレートから、任意のパケットサイズのパケットのリンク伝送中におけるパケット損失率を推定し、
当該パケットサイズのパケットの前記算出部により算出されたパケット損失率から、前記リンク伝送中におけるパケット損失率を減算して、前記中継装置におけるバッファオーバーフローによるパケット損失率を推定する、請求項1に記載の通信システム。
【請求項3】
前記第1の通信装置は、前記中継装置におけるバッファオーバーフローによるパケット損失率が高いと推定されるほど、パケットの送信間隔を長くする、請求項2に記載の通信システム。
【請求項4】
前記第1の通信装置から送信される異なるパケットサイズを有するパケットは、前記第1の通信装置から前記第2の通信装置への送信対象のデータで構成される、請求項3に記載の通信システム。
【請求項5】
前記リンク伝送中におけるビットエラーレートが所定値を上回っている場合、前記第1の通信装置および前記第2の通信装置間の通信経路に無線リンクが存在すると判断する、請求項1に記載の通信システム。
【請求項6】
第1の通信装置が複数のパケットを異なるパケットサイズで送信するステップと;
前記第1の通信装置から送信されたパケットを第2の通信装置が1または2以上のリンクを介して受信するステップと;
パケットの受信結果に基づいて、パケットサイズごとのパケット損失率を算出するステップと;
前記第1の通信装置から送信されたパケットのパケットサイズの差分、および前記パケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定するステップと;
を含む、通信方法。
【請求項7】
異なるパケットサイズで送信された複数のパケットを1または2以上のリンクを介して受信する受信部と;
前記受信部による受信結果に基づいて、パケットサイズごとのパケット損失率を算出する算出部と;
前記受信部により受信されたパケットのパケットサイズの差分、および前記算出部により算出されたパケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定する推定部と;
を備える、通信装置。
【請求項8】
コンピュータを、
異なるパケットサイズで送信された複数のパケットを1または2以上のリンクを介して受信する受信部と;
前記受信部による受信結果に基づいて、パケットサイズごとのパケット損失率を算出する算出部と;
前記受信部により受信されたパケットのパケットサイズの差分、および前記算出部により算出されたパケットサイズごとのパケット損失率から、パケットのリンク伝送中におけるビットエラーレートを推定する推定部と;
として機能させるための、プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【公開番号】特開2010−147713(P2010−147713A)
【公開日】平成22年7月1日(2010.7.1)
【国際特許分類】
【出願番号】特願2008−321546(P2008−321546)
【出願日】平成20年12月17日(2008.12.17)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
【公開日】平成22年7月1日(2010.7.1)
【国際特許分類】
【出願日】平成20年12月17日(2008.12.17)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
[ Back to top ]