(57)【要約】【課題】  パケットロスの影響をより短い時間で回復できる、回復したものを除外したパケットロス率を目標値以下にできる、ストリームデータの通信システムを提供する。【解決手段】  受信側の通信装置は、いずれかのデータパケットのパケットロスを検出したとき、予め設定されている再送要求回数だけ再送要求パケットを繰り返して連続的に送信する。送信側の通信装置は、再送要求パケットの最初の受信に応じ、予め設定されている再送回数だけ、再送が要求されたデータパケットを繰り返して連続的に送信する。【選択図】      図３
2015008409.tif 000002
【特許請求の範囲】
【請求項１】
送信側の通信装置から受信側の通信装置へデータパケットによってストリームデータを授受する通信システムにおいて、
上記受信側の通信装置は、
いずれかのデータパケットのパケットロスを検出するパケットロス検出手段と、
パケットロスのデータパケットの再送を要求する再送要求パケットを繰り返して連続的に送信する回数である再送要求回数を保持する再送要求回数保持手段と、
パケットロスのデータパケットが生じたときに、上記再送要求回数保持手段に保持されている再送要求回数だけ再送要求パケットを繰り返して連続的に送信する再送要求パケット送信手段とを有し、
上記送信側の通信装置は、
上記再送要求パケットを受信する再送要求パケット受信手段と、
再送が要求されたデータパケットを繰り返して連続的に送信する回数である再送回数を保持する再送回数保持手段と、
上記再送要求パケットの最初の受信に応じ、上記再送回数保持手段に保持されている再送回数だけ、再送が要求されたデータパケットを繰り返して連続的に送信する再送パケット送信手段とを有する
ことを特徴とする通信システム。
【請求項２】
上記再送要求回数保持手段が保持する再送要求回数及び上記再送回数保持手段が保持する再送回数を決定する回数決定手段を当該通信システム内に有し、
上記回数決定手段は、再送に仕組みによってもカバーできなかったパケットロスに関するパケットロス率をその目標値以下にし、かつ、再送要求パケット及び再送パケットの転送によるトラフィック量の増加量を最小限に抑えるように、上記再送要求回数保持手段が保持する再送要求回数及び上記再送回数保持手段が保持する再送回数を決定する
ことを特徴とする請求項１に記載の通信システム。
【請求項３】
上記回数決定手段が、上記送信側の通信装置に設けられていることを特徴とする請求項２に記載の通信システム。
【請求項４】
上記回数決定手段は、データパケット及び再送パケットの転送方向でのネットワークでのパケットロス率、再送要求パケットの転送方向でのネットワークでのパケットロス率、再送に仕組みによってもカバーできなかったパケットロスに関するパケットロス率の目標値、上記データパケットのパケット長、並びに、上記再送要求パケットのパケット長の入力を受けて、上記再送要求回数保持手段が保持する再送要求回数及び上記再送回数保持手段が保持する再送回数を決定することを特徴とする請求項２又は３に記載の通信システム。
【請求項５】
上記回数決定手段に入力させる、再送要求パケットの転送方向でのネットワークでのパケットロス率と、上記再送要求パケットのパケット長とを、受信パケットの統計処理により得る第１のパケット統計処理手段を上記送信側の通信装置が有すると共に、
上記回数決定手段に入力させる、データパケット及び再送パケットの転送方向でのネットワークでのパケットロス率と、上記データパケットのパケット長とを、受信パケットの統計処理により得る第２のパケット統計処理手段を上記受信側の通信装置が有する
ことを特徴とする請求項４に記載の通信システム。
【請求項６】
送信側の通信装置から受信側の通信装置へデータパケットによってストリームデータを授受する通信システムにおける上記受信側の通信装置が該当する通信装置において、
いずれかのデータパケットのパケットロスを検出するパケットロス検出手段と、
パケットロスのデータパケットの再送を要求する再送要求パケットを繰り返して連続的に送信する回数である再送要求回数を保持する再送要求回数保持手段と、
パケットロスのデータパケットが生じたときに、上記再送要求回数保持手段に保持されている再送要求回数だけ再送要求パケットを繰り返して連続的に送信する再送要求パケット送信手段と
を有することを特徴とする通信装置。
【請求項７】
送信側の通信装置から受信側の通信装置へデータパケットによってストリームデータを授受する通信システムにおける上記送信側の通信装置が該当する通信装置において、
上記受信側の通信装置が送信した再送要求パケットを受信する再送要求パケット受信手段と、
再送が要求されたデータパケットを繰り返して連続的に送信する回数である再送回数を保持する再送回数保持手段と、
上記再送要求パケットの最初の受信に応じ、上記再送回数保持手段に保持されている再送回数だけ、再送が要求されたデータパケットを繰り返して連続的に送信する再送パケット送信手段と
を有することを特徴とする通信装置。
【請求項８】
対向する受信側の通信装置が、パケットロスのデータパケットの再送を要求する再送要求パケットを繰り返して連続的に送信する回数である再送要求回数を保持する再送要求回数保持手段と、パケットロスのデータパケットが生じたときに、上記再送要求回数保持手段に保持されている再送要求回数だけ再送要求パケットを繰り返して連続的に送信する再送要求パケット送信手段とを有するものであり、
再送に仕組みによってもカバーできなかったパケットロスに関するパケットロス率をその目標値以下にし、かつ、再送要求パケット及び再送パケットの転送によるトラフィック量の増加量を最小限に抑えるように、上記再送要求回数保持手段が保持する再送要求回数及び上記再送回数保持手段が保持する再送回数を決定する回数決定手段をさらに有する
ことを特徴とする請求項７に記載の通信装置。
【請求項９】
送信側の通信装置から受信側の通信装置へデータパケットによってストリームデータを授受する通信方法において、
上記受信側の通信装置の再送要求パケット送信手段は、パケットロス検出手段が、いずれかのデータパケットのパケットロスを検出したとき、再送要求回数保持手段に保持されている再送要求回数だけ再送要求パケットを繰り返して連続的に送信し、
上記送信側の通信装置の再送パケット送信手段は、上記再送要求パケットの最初の受信に応じ、再送回数保持手段に保持されている再送回数だけ、再送が要求されたデータパケットを繰り返して連続的に送信する
ことを特徴とする通信方法。
【請求項１０】
送信側の通信装置から受信側の通信装置へデータパケットによってストリームデータを授受する通信システムにおける上記受信側の通信装置に搭載されるコンピュータを、
いずれかのデータパケットのパケットロスを検出するパケットロス検出手段と、
パケットロスのデータパケットの再送を要求する再送要求パケットを繰り返して連続的に送信する回数である再送要求回数を保持する再送要求回数保持手段と、
パケットロスのデータパケットが生じたときに、上記再送要求回数保持手段に保持されている再送要求回数だけ再送要求パケットを繰り返して連続的に送信する再送要求パケット送信手段と
して機能させることを特徴とする通信プログラム。
【請求項１１】
送信側の通信装置から受信側の通信装置へデータパケットによってストリームデータを授受する通信システムにおける上記送信側の通信装置が該当する通信装置に搭載されるコンピュータを、
上記受信側の通信装置が送信した再送要求パケットを受信する再送要求パケット受信手段と、
再送が要求されたデータパケットを繰り返して連続的に送信する回数である再送回数を保持する再送回数保持手段と、
上記再送要求パケットの最初の受信に応じ、上記再送回数保持手段に保持されている再送回数だけ、再送が要求されたデータパケットを繰り返して連続的に送信する再送パケット送信手段と
して機能させることを特徴とする通信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム、通信装置、通信方法及び通信プログラムに関し、例えば、テレビ会議システムに適用し得るものである。
【背景技術】
【０００２】
リアルタイム通信が求められるシステムとして、例えば、多地点テレビ会議システムがある。多地点テレビ会議システムは、例えば、図１１に示すように、各地点のテレビ会議端末１−１〜１−Ｎが当該地点の画像データをＭＣＵ（Ｍｕｌｔｉｐｏｉｎｔ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ；多地点通信制御装置）２に送信し、ＭＣＵ２が各地点からの画像データを並置した合成画像データを各地点のテレビ会議端末１−１〜１−Ｎに配信することにより、多地点の会議室の様子をどの地点でも目視し得るようにしている。ここで、テレビ会議をできるだけ自然な会議に近付けるためには、各テレビ会議端末１−１〜１−ＮからＭＣＵ２への画像データの通信も、ＭＣＵ２から各テレビ会議端末１−１〜１−Ｎへの合成画像データの通信もリアルタイム通信であることが望まれる。
【０００３】
しかしながら、ネットワークの状況によっては、リアルタイム通信が求められていてもパケットロスが生じることがある。
【０００４】
ビデオ会議の映像ストリームについては、パケットロスが生じて受信側で映像を再構成できない場合、映像送信端末に完全な映像フレーム（イントラフレーム）の再送を要求する仕組みがあり、代表的なものとしてＨ．３２３規格に関わるＨ．２４５規格において、ｖｉｄｅｏ  ｆａｓｔ  ｕｐｄａｔｅ  Ｃｏｍｍａｎｄの１つである「ｖｉｄｅｏＦａｓｔＵｐｄａｔｅＰｉｃｔｕｒｅ」が規定されている（非特許文献１参照）。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Ｈ．２４５規格：ＪＴ−Ｈ２４５、マルチメディア通信用制御プロトコル、第８版、２００２年５月３０日制定、社団法人情報通信技術委員会、１６８−１６９頁
【発明の概要】
【発明が解決しようとする課題】
【０００６】
通常、送信ビットレートとの関係から、イントラフレームを受信した場合、ぼやけた映像フレームが再生され、後続のインターフレームにより徐々に精彩な映像が再生される方式が取られることが多い。従って、ユーザから見ると、新たなイントラフレームが受信及び再生される度に、再生映像がにじむように感じられる。また、パケットロスが生じたためにイントラフレームの再送要求を行ってから、イントラフレームが到着するまでの時間区間では、崩れた映像を再生し続ける、若しくは、新しいイントラフレームが到着するまで最後に再生された映像フレームを表示し続ける（この場合は、映像が一時的に停止したように見える）のいずれかの方法が取られることが多いが、いずれの方法においても、映像品質の低下が発生する。
【０００７】
そのため、パケットロスの影響をより短い時間で回復できる、回復したものを除外したパケットロス率を所望するパケットロス率以下にできる通信システム、通信装置、通信方法及び通信プログラムが望まれている。
【課題を解決するための手段】
【０００８】
第１の本発明は、送信側の通信装置から受信側の通信装置へデータパケットによってストリームデータを授受する通信システムにおいて、（１）上記受信側の通信装置は、（１−１）いずれかのデータパケットのパケットロスを検出するパケットロス検出手段と、（１−２）パケットロスのデータパケットの再送を要求する再送要求パケットを繰り返して連続的に送信する回数である再送要求回数を保持する再送要求回数保持手段と、（１−３）パケットロスのデータパケットが生じたときに、上記再送要求回数保持手段に保持されている再送要求回数だけ再送要求パケットを繰り返して連続的に送信する再送要求パケット送信手段とを有し、（２）上記送信側の通信装置は、（２−１）上記再送要求パケットを受信する再送要求パケット受信手段と、（２−２）再送が要求されたデータパケットを繰り返して連続的に送信する回数である再送回数を保持する再送回数保持手段と、（２−３）上記再送要求パケットの最初の受信に応じ、上記再送回数保持手段に保持されている再送回数だけ、再送が要求されたデータパケットを繰り返して連続的に送信する再送パケット送信手段とを有することを特徴とする。
【０００９】
第２の本発明は、送信側の通信装置から受信側の通信装置へデータパケットによってストリームデータを授受する通信システムにおける上記受信側の通信装置が該当する通信装置において、（１）いずれかのデータパケットのパケットロスを検出するパケットロス検出手段と、（２）パケットロスのデータパケットの再送を要求する再送要求パケットを繰り返して連続的に送信する回数である再送要求回数を保持する再送要求回数保持手段と、（３）パケットロスのデータパケットが生じたときに、上記再送要求回数保持手段に保持されている再送要求回数だけ再送要求パケットを繰り返して連続的に送信する再送要求パケット送信手段とを有することを特徴とする。
【００１０】
第３の本発明は、送信側の通信装置から受信側の通信装置へデータパケットによってストリームデータを授受する通信システムにおける上記送信側の通信装置が該当する通信装置において、（１）上記受信側の通信装置が送信した再送要求パケットを受信する再送要求パケット受信手段と、（２）再送が要求されたデータパケットを繰り返して連続的に送信する回数である再送回数を保持する再送回数保持手段と、（３）上記再送要求パケットの最初の受信に応じ、上記再送回数保持手段に保持されている再送回数だけ、再送が要求されたデータパケットを繰り返して連続的に送信する再送パケット送信手段とを有することを特徴とする。
【００１１】
第４の本発明は、送信側の通信装置から受信側の通信装置へデータパケットによってストリームデータを授受する通信方法において、（１）上記受信側の通信装置の再送要求パケット送信手段は、パケットロス検出手段が、いずれかのデータパケットのパケットロスを検出したとき、再送要求回数保持手段に保持されている再送要求回数だけ再送要求パケットを繰り返して連続的に送信し、（２）上記送信側の通信装置の再送パケット送信手段は、上記再送要求パケットの最初の受信に応じ、再送回数保持手段に保持されている再送回数だけ、再送が要求されたデータパケットを繰り返して連続的に送信することを特徴とする。
【００１２】
第５の本発明の通信プログラムは、送信側の通信装置から受信側の通信装置へデータパケットによってストリームデータを授受する通信システムにおける上記受信側の通信装置に搭載されるコンピュータを、（１）いずれかのデータパケットのパケットロスを検出するパケットロス検出手段と、（２）パケットロスのデータパケットの再送を要求する再送要求パケットを繰り返して連続的に送信する回数である再送要求回数を保持する再送要求回数保持手段と、（３）パケットロスのデータパケットが生じたときに、上記再送要求回数保持手段に保持されている再送要求回数だけ再送要求パケットを繰り返して連続的に送信する再送要求パケット送信手段として機能させることを特徴とする。
【００１３】
第６の本発明の通信プログラムは、送信側の通信装置から受信側の通信装置へデータパケットによってストリームデータを授受する通信システムにおける上記送信側の通信装置が該当する通信装置に搭載されるコンピュータを、（１）上記受信側の通信装置が送信した再送要求パケットを受信する再送要求パケット受信手段と、（２）再送が要求されたデータパケットを繰り返して連続的に送信する回数である再送回数を保持する再送回数保持手段と、（３）上記再送要求パケットの最初の受信に応じ、上記再送回数保持手段に保持されている再送回数だけ、再送が要求されたデータパケットを繰り返して連続的に送信する再送パケット送信手段として機能させることを特徴とする。
【発明の効果】
【００１４】
本発明によれば、パケットロスの影響をより短い時間で回復できる、回復したものを除外したパケットロス率を所望するパケットロス率以下にできる通信システム、通信装置、通信方法及び通信プログラムを提供できる。
【図面の簡単な説明】
【００１５】
【図１】第１の実施形態に係る通信システムの構成を示すブロック図である。
【図２】第１の実施形態に係る通信装置の内部構成を示すブロック図である。
【図３】第１の実施形態に係る一方の通信装置から他方の通信装置に対して、送出データをＲＴＰストリームとして送信する場合のシーケンス図である。
【図４】第１の実施形態に係る通信システムにおける受信側のアプリケーションから見たパケットロス率の算出式の定性的な意味合いの説明図である。
【図５】第１の実施形態に係る通信システムにおける、双方向のネットワークのパケットロス率と、受信側のアプリケーションから見たパケットロス率の関係を示す説明図である。
【図６】映像フレームの通信に第１の実施形態に係る通信システムを適用した場合の通信を評価するための２つのパラメータの関係を示す説明図である。
【図７】第２の実施形態に係る通信装置の内部構成を示すブロック図である。
【図８】第２の実施形態に係る通信装置における最適な再送要求回数及び再送回数の第１の探索方法を示すフローチャートである。
【図９】第２の実施形態に係る通信装置における最適な再送要求回数及び再送回数の第２の探索方法を示すフローチャートである。
【図１０】第２の実施形態に係る通信装置における最適な再送要求回数及び再送回数の第３の探索方法を示すフローチャートである。
【図１１】多地点テレビ会議システムの一般的な構成を示すブロック図である。
【発明を実施するための形態】
【００１６】
（Ａ）第１の実施形態
以下、本発明による通信システム、通信装置、通信方法及び通信プログラムの第１の実施形態を、図面を参照しながら説明する。
【００１７】
（Ａ−１）第１の実施形態の構成
図１は、第１の実施形態に係る通信システムの構成を示すブロック図である。
【００１８】
図１において、第１の実施形態に係る通信システム１０は、リアルタイム通信を行う２つの通信装置１１Ａ及び１１Ｂを有する。各通信装置１１Ａ、１１Ｂは、映像、音声等のメディアデータをＲＴＰ（Ｒｅａｌ−ｔｉｍｅ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ）パケットとして送受信するものである。また、各通信装置１１Ａ、１１Ｂは、付帯する情報をＲＴＣＰ（ＲＴＰ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）パケットとして送受信するものである。
【００１９】
通信装置１１Ａ及び１１Ｂの具体的な装置の種類は限定されない。但し、一例を挙げれば、通信装置１１Ａ及び１１Ｂの一方が、図１１に示した多地点テレビ会議システムのいずれかのテレビ会議端末１−ｎ（ｎは１〜Ｎ）に搭載されるものであり、通信装置１１Ａ及び１１Ｂの他方が、ＭＣＵ２に搭載されるものである態様を挙げることができる。
【００２０】
図２は、通信装置１１（１１Ａ又は１１Ｂ）の内部構成を示すブロック図である。図２に示す構成はハードウェアで構築しても良く、また、種々の送受信部における物理レイヤの構成を除いた部分を、ＣＰＵが実行するソフトウェア（通信プログラム）として実現するように構築しても良いが、いずれの構築方法を採用しても、機能的には、図２で表すことができる。
【００２１】
図２において、通信装置１１は、ＲＴＰ送受信部２０、ＲＴＣＰ送受信部２１、データ送受信部２２、制御部２３、送出データ保存部２４、送出データ抽出部２５、パケットロス検出部２６、再送要求回数／再送回数記憶部２７及びデータ通信バス２８を有する。
【００２２】
ＲＴＰ送受信部２０は、対向する通信装置との間で通信ネットワークを介して送受信されるＲＴＰパケットの送受信を担当している。ＲＴＰ送受信部２０は、制御部２３の制御下で、対向する通信装置から再送が要求されたことにより再送するＲＴＰパケットに関しては、再送要求回数／再送回数記憶部２７に記憶されている再送回数だけ繰り返して連続的に送信する。すなわち、再送回数に到達していない状況では、前に送信（再送）したＲＴＰパケットが対向する通信装置に到達したか否かを判別することなく、ＲＴＰパケットの前の送信が終了後に直ちに、同一のＲＴＰパケットを対向する通信装置に向けて送信する。
【００２３】
ＲＴＣＰ送受信部２１は、対向する通信装置との間で通信ネットワークを介して送受信されるＲＴＣＰパケットの送受信を担当している。ＲＴＣＰ送受信部２１は、制御部２３の制御下で、対向する通信装置へＲＴＰパケットの再送を要求するＲＴＣＰパケット（例えば、ＲＦＣ４５８５で定義されているＲＴＣＰ  Ｇｅｎｅｒｉｃ−ＮＡＣＫパケット）を送信する際には、再送要求回数／再送回数記憶部２７に記憶されている再送要求回数だけ繰り返して連続的に送信する。すなわち、再送要求回数に到達していない状況では、前に送信（再送）したＲＴＣＰパケットが対向する通信装置に到達したか否かを判別することなく、ＲＴＣＰパケットの前の送信が終了後に直ちに、同一のＲＴＣＰパケットを対向する通信装置に向けて送信する。
【００２４】
データ送受信部２２は、当該通信装置１１を外付け若しくは内蔵する情報処理装置におけるアプリケーションプログラム（以下、上位のアプリケーション、又は、単にアプリケーションと呼ぶ）との間でデータの送受信を担当している。
【００２５】
図２に示した各部は、データ通信バス２８を介してデータの授受を行うことが可能であり、制御部２３は、当該通信装置１１内の各部や各部間のデータの授受などを制御するものである。
【００２６】
送出データ保存部２４は、過去に送信したＲＴＰデータ（ＲＴＰパケットに挿入したデータ）を所定パケット数分だけ保存する機能を有している。
【００２７】
送出データ抽出部２５は、送出データ保存部２４に保存されたデータから指定されたデータを抽出する機能を有している。
【００２８】
パケットロス検出部２６は、当該通信装置１１を宛先としたＲＴＰパケットに対して発生したパケットロスを検出する機能を有している。
【００２９】
再送要求回数／再送回数記憶部２７は、再送を要求するＲＴＣＰパケットの繰り返し送信回数である再送要求回数や、再送が要求されたＲＴＰパケットの繰り返し送信回数である再送回数を記憶しているものである。再送要求回数及び再送回数は同一であっても異なっていても良い。再送要求回数／再送回数記憶部２７は、再送要求回数や再送回数を書き換え可能に記憶しているものである。ここで、再送要求回数／再送回数記憶部２７に記憶させる再送要求回数や再送回数をオペレータが任意に指定するようにしても良い。例えば、当該通信装置１１がテレビ会議端末やＭＣＵである場合には、多地点テレビ会議システムの各構成要素が設置される際に、後述する第２の実施形態で説明する決定方法によって再送要求回数や再送回数を定め、定めた再送要求回数や再送回数をオペレータが再送要求回数／再送回数記憶部２７に書き込むようにしても良い。また、外部装置（例えば、ネットワーク管理装置）から与えられた再送要求回数や再送回数を再送要求回数／再送回数記憶部２７に書き込むようにしても良い。
【００３０】
ここで、当該通信装置１１が、多地点テレビ会議システムのテレビ会議端末に搭載されるものであれば、上位のアプリケーションは、撮像カメラからの画像データを所定の符号化方式に従って符号化した後のデータを当該通信装置１１に入力すると共に、当該通信装置１１からのデータを復号して得た合成画像データを表示装置に表示させるものとなる。
【００３１】
また、当該通信装置１１が、多地点テレビ会議システムのＭＣＵに搭載される各地点対応のものであれば、上位のアプリケーションは、当該通信装置１１からのデータを復号して得たある地点の画像データと、同様にして得た他の地点の画像データとを合成した後、合成画像データを所定の符号化方式に従って符号化し、その符号化後のデータを当該通信装置１１に入力するものとなる。
【００３２】
（Ａ−２）第１の実施形態の動作
次に、第１の実施形態に係る通信システム１０の動作を、図３をも参照しながら説明する。
【００３３】
図３は、通信装置１１Ａから通信装置１１Ｂに対して、送出データ（例えば、画像データや音声データでなるメディアデータ）をＲＴＰストリームとして送信する場合のシーケンス図である。以下の説明において、通信装置１１Ａの構成要素については、図２の符号末尾にさらに符号「Ａ」を追加して記述し、通信装置１１Ｂの構成要素については、図２の符号末尾にさらに符号「Ｂ」を追加して記述する。図３は、再送要求回数／再送回数記憶部２７Ｂに記憶されている再送要求回数ｎ１が３回であり、再送要求回数／再送回数記憶部２７Ａに記憶されている再送回数ｎ２が２回の場合を示している。
【００３４】
通信装置１１ＡのＲＴＰ送受信部２０Ａは、制御部２３Ａの制御下で、アプリケーションから与えられた送出データをＲＴＰパケットに振り分けて挿入し、各ＲＴＰパケットＲＴＰ＃１０１、＃１０２、…を順次送出し、制御部２３Ａは、対向する通信装置１１Ｂからの再送要求に応じられるように、内蔵する送出データ保存部２４Ａに、送出済みのＲＴＰパケットであり、送出直後から過去所定数のＲＴＰパケットに挿入された送出データを、ＲＴＰパケットを特定する情報と共に保存させておく。
【００３５】
通信装置１１ＡからのＲＴＰパケットが到来する通信装置１１Ｂにおいては、ＲＴＰ送受信部２０Ｂが、到来するＲＴＰパケットを受信処理するが、パケットロス検出部２６Ｂが、受信したＲＴＰパケットのヘッダ情報（例えば、シーケンス番号ＳＮ）などに基づいて、公知の検出方法によって、パケットロスの発生を監視している。パケットロス検出部２６Ｂが、通信装置１１ＡからのいずれかのＲＴＰパケットの損失（ロス）を検出すると、即座に、ＲＴＣＰ送受信部２１Ｂは、制御部２３Ｂの制御下で、パケットロスを検出したＲＴＰパケットを特定する情報（例えば、シーケンス番号ＳＮ）が盛り込まれた、再送を要求するＲＴＣＰパケットを再送要求回数／再送回数記憶部２７Ｂに記憶されている再送要求回数ｎ１（＝３回）だけ繰り返し送信する（ＲＴＣＰ＃２０１−１〜＃２０１−ｎ１）。
【００３６】
例えば、パケットロス検出部２６Ｂが、図３に示すように、シーケンス番号ＳＮが２のＲＴＰパケットＲＴＰ＃１０２のパケットロスを検出した場合には、即座に、ＲＴＣＰ送受信部２１Ｂは、シーケンス番号ＳＮが２のＲＴＰパケットの再送を要求するＲＴＣＰパケットＲＴＣＰ＃２０１を再送要求回数／再送回数記憶部２７Ｂに記憶されている再送要求回数ｎ１である３回だけ繰り返し送信する（ＲＴＣＰ＃２０１−１〜＃２０１−３）。
【００３７】
通信装置１１ＡのＲＴＣＰ送受信部２１Ａが、対向する通信装置１１Ｂからの再送を要求するＲＴＣＰパケットを受信し、今回の受信が再送要求されたシーケンス番号のパケットに対する最初の受信であると、即座に、ＲＴＰ送受信部２０Ａは、制御部２３Ａの制御下で、再送が要求されたシーケンス番号のＲＴＰパケットに係る送出データを送出データ抽出部２５によって送出データ保存部２４から抽出させてＲＴＰパケット＃３０１を組立てて、再送要求回数／再送回数記憶部２７Ａに記憶されている再送回数ｎ２（＝２回）だけ繰り返し送信する（ＲＴＰ＃３０１−１〜＃３０１−ｎ２）。
【００３８】
図３の例は、通信装置１１Ｂが再送要求のために順次送出した３個のＲＴＣＰパケットＲＴＣＰ＃２０１−１〜＃２０１−３のうち、最初のＲＴＣＰパケットＲＴＣＰ＃２０１−１が通信装置１１Ａに到達しなかったが、２番目及び３番目のＲＴＣＰパケットＲＴＣＰ＃２０１−２及び＃２０１−３に通信装置１１Ａに到達した場合を示している。通信装置１１Ａは、ＲＴＣＰパケットＲＴＣＰ＃２０１−２の到来が、同一のＲＴＰパケットの再送を要求するＲＴＣＰパケットの中の最初の到来であるので、その受信時に即座に、要求されたＲＴＰパケット＃３０１を組立てて、再送要求回数／再送回数記憶部２７Ａに記憶されている再送回数ｎ２である２回だけ繰り返し送信する（ＲＴＰ＃３０１−１及び＃３０１−２）。通信装置１１Ａは、ＲＴＣＰパケットＲＴＣＰ＃２０１−３の到来時には、同一内容のＲＴＣＰパケット＃２０１−２が既に到来していて再送動作を開始しているので（若しくは再送を既に行ったので）、ＲＴＣＰパケットＲＴＣＰ＃２０１−３の到来を無視する。
【００３９】
通信装置１１Ａからｎ２回だけ再送されたＲＴＰパケットは、対向する通信装置１１Ｂに到達することもあれば到達し得ないこともある。通信装置１１ＢのＲＴＰ送受信部２０Ｂは、再送されたＲＴＰパケットが複数到来しても、最初に到来した再送されたＲＴＰパケットを有効なパケットとして処理し、その後に到来した再送されたＲＴＰパケットの到来を無視する。
【００４０】
図３の例は、通信装置１１Ａが順次再送した２個のＲＴＰパケットＲＴＰ＃３０１−１〜及び３０１−２のうち、最初のＲＴＰパケットＲＴＰ＃３０１−１が通信装置１１Ｂに到達したが、２番目のＲＴＰパケットＲＴＰ＃３０１−２に通信装置１１Ｂに到達しなかった場合を示している。通信装置１１Ｂは、ＲＴＰパケットＲＴＰ＃３０１−１の到来により、当初にパケットロスを検出したＲＴＰパケットＲＴＰ＃１０２のロスを補償する。このような補償により、通信装置１１Ｂの上位のアプリケーションから見ると、ＲＴＰパケットＲＴＰ＃１０２に挿入されていたデータも与えられるので、ＲＴＰパケットＲＴＰ＃１０２のロスがなかったものとみなすことができる。
【００４１】
上述のように、再送を要求するＲＴＣＰパケットを再送要求回数ｎ１だけ繰り返し送出すると、少なくとも１個のＲＴＣＰパケットが相手側の通信装置に到達する可能性は、ＲＴＣＰパケットを１個だけ送出する場合よりかなり大きくなり、また、再送のＲＴＰパケットを再送回数ｎ２だけ繰り返し送出すると、少なくとも１個のＲＴＰパケットが相手側の通信装置に到達する可能性は、ＲＴＰパケットを１個だけ送出する場合よりかなり大きくなる。
【００４２】
（Ａ−３）第１の実施形態の効果
第１の実施形態によれば、再送を要求するＲＴＣＰパケットを再送要求回数ｎ１だけ繰り返し送出すると共に、再送のＲＴＰパケットを再送回数ｎ２だけ繰り返し送出するようにしたので、アプリケーションから見たパケットロス率を従来より小さいものとすることができる。かかる効果は、再送要求回数ｎ１及び再送回数ｎ２が多くなればなるほど大きなものとなる。以下、かかる効果を具体的に説明する。
【００４３】
通信装置１１ＡからのＲＴＰパケットのシーケンスが到来する受信側の通信装置１１Ｂにおけるアプリケーションから見たパケットロス率ｚは、本願発明者が導き出した（１）式で表すことができる。（１）式において、通信装置１１Ａから通信装置１１Ｂへの通信方向（以下、順方向と呼ぶ）におけるネットワークパケットロス率をｘ、それとは逆の通信方向（通信装置１１Ｂから通信装置１１Ａへの通信方向；以下、逆方向と呼ぶ）のネットワークパケットロス率をｙ、再送要求回数をｎ１、再送回数をｎ２としている。但し、（１）式は、再送要求時点から再送が完了する時間（仮に、ｎ１及びｎ２が共に１の場合であればＲＴＴ（Ｒｏｕｎｄ  Ｔｒｉｐ  Ｔｉｍｅ））に比べ、アプリケーションの受信バッファに格納されている時間が長いとする。
【数１】
2015008409.tif 000003
【００４４】
図４は、（１）式、すなわち、受信側のアプリケーションから見たパケットロス率の算出式の定性的な意味合いの説明図である。
【００４５】
アプリケーションから見てパケットロスとなる場合は、（ａ）通信装置１１Ａから通信装置１１Ｂへの当初のＲＴＰパケットが通信装置１１Ｂに到達せず、（ｂ）通信装置１１Ｂが再送要求のＲＴＣＰパケットをｎ１回繰り返し送信しても再送のＲＴＰパケットが１個も通信装置１１Ｂに到達しない場合である。事象（ａ）は、再送が必要となる場合を表しており、事象（ｂ）は、再送の仕組みが機能しなかった場合を表している。
【００４６】
図４に示すように、順方向のネットワークパケットロス率がｘであるので、通信装置１１Ａから通信装置１１Ｂへの当初のＲＴＰパケットが通信装置１１Ｂに到達する確率（期待値；以下、同様）は１−ｘであり、通信装置１１Ａから通信装置１１Ｂへの当初のＲＴＰパケットが通信装置１１Ｂに到達しない確率はｘである。すなわち、上述した事象（ａ）が生じる確率はｘである。
【００４７】
事象（ｂ）の確率は、再送のＲＴＰパケットが１個でも通信装置１１Ｂに到達する事象（ｃ）の確率を、１から減算したものに等しい。事象（ｃ）は、（ｃ１）再送要求のＲＴＣＰパケットが１個でも通信装置１１Ａに到達し、かつ、（ｃ２）再送のＲＴＰパケットが１個でも通信装置１１Ｂに到達する場合に生じる。
【００４８】
逆方向のネットワークパケットロス率がｙであるので、ｎ１個送出したＲＴＣＰパケットが１個も通信装置１１Ａに到達しない確率は、ｙｎ１で表すことができる。従って、事象（ｃ１）の確率は、１−ｙｎ１で表すことができる。同様に考えると、事象（ｃ２）の確率は、１−ｘｎ２で表すことができる。事象（ｃ）は、事象（ｃ１）及び（ｃ２）が共に起こるものであるので、その確率は、（１−ｙｎ１）（１−ｘｎ２）で表すことができる。事象（ｂ）の確率は、上述したように事象（ｃ）の確率を１から減算したものに等しいので、１−（１−ｙｎ１）（１−ｘｎ２）で表すことができる。
【００４９】
アプリケーションから見てパケットロスとなる場合は、上述したように、事象（ａ）と事象（ｂ）とが共に生じる場合であるので、受信側のアプリケーションから見たパケットロス率の算出式として、上述した（１）式が得られる。
【００５０】
（１）式からは、ネットワークパケットロス率ｘ及びｙが共に０より大きく１未満であるので、再送要求回数ｎ１や再送回数ｎ２の増加に伴い、アプリケーションから見たパケットロス率ｚが小さくなることが分かる。以下、このことを図５を用いて説明する。
【００５１】
例えば、双方向のネットワークのパケットロス率が同じである場合を仮定すると（ｘ＝ｙ）、ネットワークのパケットロス率と、受信側のアプリケーションから見たパケットロス率の関係は、図５に示すようになる。図５の横軸は、ネットワークのパケットロス率を表し、図５の縦軸は、アプリケーションから見たパケットロス率を表している。縦軸、横軸ともに、ｌｏｇスケールを適用している。曲線ＣＵＲ１〜ＣＵＲ３はそれぞれ、再送要求回数ｎ１及ぶ再送回数ｎ２の組み合わせ（ｎ１，ｎ２）が（１，１）、（２，２）、（３，３）の場合を表している。
【００５２】
例えば、ネットワークのパケットロス率が１０％の場合（ｘ＝ｙ＝０．１）、再送要求回数ｎ１及び再送回数ｎ２がともに１回のときは、アプリケーションから見たパケットロス率は約１．９％に低減され（再送の仕組みが機能しない場合は当然に１０％）、再送要求回数ｎ１及び再送回数ｎ２がともに２回のときは、アプリケーションから見たパケットロス率は約０．１９％まで低減され、再送要求回数ｎ１及び再送回数ｎ２がともに３回のときは、アプリケーションから見たパケットロス率は約０．０２％まで低減される。
【００５３】
アプリケーションから見たパケットロス率ｚの減少は、アプリケーションの機能を向上させることができる。
【００５４】
以下、一方の通信装置１１Ａが多地点テレビ会議システムのテレビ会議端末に搭載され、上位のアプリケーションが、撮像カメラからの画像データを所定の符号化方式に従って符号化した後のデータを当該通信装置１１Ａに入力し、他方の通信装置１１Ｂが多地点テレビ会議システムのＭＣＵに搭載され、上位のアプリケーションが、入力された符号化データを復号して画像データに戻す場合を考える。
【００５５】
そして、第１の実施形態の通信システムを利用することにより、「発明が解決しようとする課題」の項で言及したイントラフレーム要求の発生頻度をどの程度下げることができるのかについて、以下、定量的に計算した結果を説明する。
【００５６】
ここで、計算を簡略化するため、下記の前提条件（Ｒ１）及び（Ｒ２）を仮定する。（Ｒ１）映像ストリームの１フレームに対応するパケット数はフレームのタイプ（イントラフレーム、インターフレーム）に関わらず一定とする。（Ｒ２）映像フレームレートは一定とする。
【００５７】
これらの仮定下で、映像ストリームの帯域（ビットレートＢ（ｂｐｓ））と映像パケットの平均サイズＬ（ｂｙｔｅ）から、平均パケットレートｋ（ｐａｃｋｅｔｓ／ｓ）が（２）式に従って計算することができる。
【００５８】
ｋ＝Ｂ／Ｌ／８      …（２）
映像ストリームの送信方向のネットワークパケットロス率をｘとし、パケットロスが発生しない連続時間がｔとなる確率について計算する。まず、ｍ個のパケットが連続してパケットロスせず、ｍ＋１個目のパケットがロスする確率ｐは、（３）式で表される。また、ｍ個のパケットが送出される時間幅ｔは、（２）式の平均パケットレートｋを用いて、（４）式で表すことができる。（３）式及び（４）式から、パケットロスが発生しない連続時間の期待値ＭＴＢＦは、（５）式で表すことができる。
【数２】
2015008409.tif 000004
【００５９】
（５）式で表される連続時間の期待値ＭＴＢＦは、０＜ｘ＜１の条件下では、（６）式で表現される値に漸近する。
【００６０】
ＭＴＢＦ＝（１−ｘ）／ｘ／ｋ      …（６）
例えば、映像ストリームのビットレートＢが１０００ｋｂｐｓ、映像パケットの平均サイズＬが１０００ｂｙｔｅの条件下で、連続時間の期待値ＭＴＢＦを評価する。上述の条件下では、ｋ＝１２５となり、（６）式におけるＭＴＢＦとパケットロス率ｘの関係は、図６に示すようになる（縦軸、横軸共に対数目盛り）。
【００６１】
例えば、イントラフレーム要求が発生するようなネットワークのパケットロス率が１％の場合、連続時間の期待値ＭＴＢＦは０．７９２（ｓｅｃ）となるが、第１の実施形態の方法を、再送要求回数ｎ１及び再送回数ｎ２がともに２回で適用した場合、順方向のパケットロス率も逆方向のパケットロス率も同様に１％と仮定して、アプリケーションから見たパケットロス率が０．０００１９％に低減され、連続時間の期待値ＭＴＢＦは４２１０（ｓｅｃ）（約１時間１０分）に延長される。
【００６２】
従って、上記条件下で約１時間のビデオ会議を実施する場合において、第１の実施形態を利用しないときには、ほぼ毎秒パケットロスによる映像乱れや停止、及び、イントラフレーム再送による映像にじみを会議者が経験するのに対し、第１の実施形態を利用することで、その回数を１時間で１回弱まで低減することが可能である。
【００６３】
（Ｂ）第２の実施形態
次に、本発明による通信システム、通信装置、通信方法及び通信プログラムの第２の実施形態を、図面を参照しながら説明する。
【００６４】
（Ｂ−１）第２の実施形態の構成
第２の実施形態の通信システム１０も、上述した図１に示すように、ＲＴＰパケットやＲＴＣＰパケットを授受し合う２つの通信装置１１Ａ又は１１Ｂが対向しているものである。
【００６５】
しかしながら、第２の実施形態の場合、通信装置１１（１１Ａ又は１１Ｂ）の内部構成が第１の実施形態のものと異なっている。なお、内部構成は異なっているが、以下の説明においては、通信装置に対する符号は、第１の実施形態のものと同一のものを用いる。
【００６６】
図７は、第２の実施形態に係る通信装置１１（１１Ａ又は１１Ｂ）の内部構成を示すブロック図であり、第１の実施形態に係る図２との同一、対応部分には同一符号を付して示している。
【００６７】
図７において、第２の実施形態に係る通信装置１１は、ＲＴＰ送受信部２０、ＲＴＣＰ送受信部２１、データ送受信部２２、制御部２３、送出データ保存部２４、送出データ抽出部２５、パケットロス検出部２６、パケット統計情報集計部３０、再送要求回数／再送回数計算部３１及びデータ通信バス２８を有する。すなわち、第１の実施形態における再送要求回数／再送回数記憶部２７に代えて、パケット統計情報集計部３０及び再送要求回数／再送回数計算部３１が設けられており、その他の構成要素は、第１の実施形態のものと同様である。
【００６８】
パケット統計情報集計部３０は、制御部２３の制御下で、当該通信装置から送信したＲＴＰパケットや対向する通信装置から到来したＲＴＰパケットやＲＴＣＰパケットの情報などから、当該通信装置１１へ向かう方向のネットワークのパケットロス率や、送信したＲＴＰパケットや受信したＲＴＣＰパケットの平均パケット長を算出するものである。ここで、ＲＴＰパケットの平均パケット長は、再送するＲＴＰパケットの平均パケット長として用いられるものであり、再送に関係しないＲＴＰパケットをも含めて求めた平均パケット長を適用しても良く、再送したＲＴＰパケットだけから求めた平均パケット長を適用しても良い。また、ＲＴＣＰパケットの平均パケット長は、再送要求するＲＴＣＰパケットの平均パケット長として用いられるものであり、再送要求に関係しないＲＴＣＰパケットをも含めて求めた平均パケット長を適用しても良く、再送要求のＲＴＣＰパケットだけから求めた平均パケット長を適用しても良い。
【００６９】
再送要求回数／再送回数計算部３１は、パケット統計情報集計部３０が得た情報や、対向する通信装置のパケット統計情報集計部が得た情報や、制御部２３によって指示された対向する通信装置のアプリケーションから見た目標パケットロス率等から、第１の実施形態で言及した再送要求回数ｎ１や再送回数ｎ２を計算するものである。再送要求回数ｎ１や再送回数ｎ２の具体的な計算方法については、動作の項で明らかにする。
【００７０】
（Ｂ−２）第２の実施形態の動作
次に、第２の実施形態に係る通信システム１０の動作を説明する。第２の実施形態の動作で、第１の実施形態と異なるのは、再送要求回数／再送回数計算部３１が行う再送要求回数ｎ１や再送回数ｎ２の決定（計算）動作と、その決定動作で利用する情報の収集動作であるので、以下では、これら動作について説明する。以下の説明において、当該通信装置が図１における通信装置１１Ａであり、対向する通信装置が図１における通信装置１１Ｂであるとする。また、以下の説明において、通信装置１１Ａの構成要素には符号末尾に「Ａ」を付与し、通信装置１１Ｂの構成要素には符号末尾に「Ｂ」を付与して区別する。
【００７１】
通信装置１１Ａの制御部２３Ａは、例えば、オペレータによる図示しない操作キーの操作によって再送要求回数ｎ１や再送回数ｎ２の再計算が指示されたときには、又は、１週間に１回など予め定まった見直しタイミングになると、再送要求回数ｎ１や再送回数ｎ２を決定し直すように各部を制御する。
【００７２】
ここで、当該通信装置１１Ａにおける再送要求回数ｎ１や再送回数ｎ２の決定し直しと、対向する通信装置１１Ｂにおける再送要求回数ｎ１や再送回数ｎ２の決定し直しとが、並行的に実行されることが好ましい。
【００７３】
再送要求回数ｎ１や再送回数ｎ２を決定し直す動作は、その前処理として、決定動作で利用する情報の収集動作を行った後、決定動作を行う順序となる。なお、決定動作で利用する情報の収集動作は、再送要求回数ｎ１や再送回数ｎ２を決定し直す動作の起動とは無関係に、定期的に行われるようになっていても良い。
【００７４】
パケット統計情報集計部３０Ａは、制御部２３Ａから情報収集が起動されたときには、当該通信装置１１Ａから送信したＲＴＰパケットや対向する通信装置１１Ｂから到来したＲＴＰパケットやＲＴＣＰパケットの情報などから、当該通信装置１１Ａへ向かう方向のネットワークのパケットロス率ｙや、再送要求のＲＴＣＰパケットのパケット長（平均パケット長）Ｌ１や、再送したＲＴＰパケットのパケット長（平均パケット長）Ｌ２を算出し、得られたパラメータｙ、Ｌ１、Ｌ２を再送要求回数／再送回数計算部３１Ａに与える。
【００７５】
当該通信装置１１Ａの制御部２３Ａは、再送要求回数／再送回数計算部３１Ａが逆方向のネットワークのパケットロス率ｙを得たときには、その情報を、対向する通信装置１１Ｂに送信すると共に、対向する通信装置１１Ｂから、順方向のネットワークのパケットロス率ｘを取込んで、再送要求回数／再送回数計算部３１Ａに与える。このようなパケットロス率ｙ及びｘの交換を、独自の通信方式で実現することも可能であるが、ＲＴＣＰのＲＲ（レシーバレポート）を利用して行うようにしても良い。
【００７６】
上記では、パケット統計情報集計部３０Ａが、再送要求のＲＴＣＰパケットのパケット長Ｌ１及び再送したＲＴＰパケットのパケット長Ｌ２を共に算出するものを示したが、対向する通信装置１１Ｂのパケット統計情報集計部３０Ｂが一方のパケット長（例えば、Ｌ１）の算出機能を備え、情報交換により、当該通信装置１１Ａが２つのパケット長Ｌ１、Ｌ２を完備するようにしても良い。
【００７７】
また、当該通信装置１１Ａの制御部２３Ａは、再送要求回数／再送回数計算部３１Ａに対して、対向する通信装置１１Ｂのアプリケーションから見た目標パケットロス率Ｚを与える。対向する通信装置１１Ｂのアプリケーションから見た目標パケットロス率Ｚは、オペレータが図示しない操作入力部を用いて当該通信装置１１Ａの上位のアプリケーションに入力しておくようにしても良く、また、対応する通信装置１１Ｂのアプリケーションが保持するものを通信によって取込むようにしても良い。
【００７８】
以上のようにして、順方向のネットワークのパケットロス率ｘ、逆方向のネットワークのパケットロス率ｙ、再送要求のＲＴＣＰパケットのパケット長Ｌ１、再送のＲＴＰパケットのパケット長Ｌ２、及び、対向する通信装置１１Ｂのアプリケーションから見た目標パケットロス率Ｚの５つのパラメータが揃った段階で、再送要求回数／再送回数計算部３１Ａは、再送要求回数ｎ１や再送回数ｎ２の具体的な決定動作を実行する。
【００７９】
再送要求回数ｎ１や再送回数ｎ２を決定する方法の基本的な考え方は、以下の通りである。
【００８０】
第１に、再送要求回数ｎ１や再送回数ｎ２が定まった場合に上述した（１）式に従って算出された、対向する通信装置１１Ｂのアプリケーションから見たパケットロス率ｚは、その目標パケットロス率Ｚ以下であることを要する。従って、（７）式の不等式を満たすことを要する。
【数３】
2015008409.tif 000005
【００８１】
第２に、再送が機能した場合における、再送の仕組みによるネットワークトラフィックの増加量ｅをできるだけ抑える。
【００８２】
トラフィック増加量ｅは、（８）式で表すことができる。（８）式の右辺第１項は、再送要求のＲＴＣＰパケットがｎ１回送信されることによるトラフィックの増加量である。再送のＲＴＰパケットがｎ２回送信されるのは、再送要求のＲＴＣＰパケットが当該通信装置１１Ａに１個でも到達する場合であるので、再送のＲＴＰパケットがｎ２回送信される確率は１−ｙｎ１である。従って、再送のＲＴＰパケットがｎ２回送信されることによるトラフィックの増加量は、（８）式の右辺第２項で表される。
【数４】
2015008409.tif 000006
【００８３】
再送要求回数／再送回数計算部３１Ａは、（７）式を満たす再送要求回数ｎ１及び再送回数ｎ２の組み合わせの中で、（８）式に示すネットワークトラフィックの増加量ｅが最小となる組み合わせを探索し、探索できた組み合わせの再送要求回数ｎ１及び再送回数ｎ２を、適用する再送要求回数ｎ１及び再送回数ｎ２に決定する。なお、再送要求回数ｎ１及び再送回数ｎ２は当然に正の整数である。
【００８４】
上述した最適な再送要求回数ｎ１及び再送回数ｎ２の探索を実行できるのであれば、具体的な探索方法（再送要求回数ｎ１及び再送回数ｎ２の決定方法）は問われない。以下、具体的な探索方法の３例（第１〜第３の探索方法）を順に説明する。なお、第１〜第３の探索方法においては、再送要求回数ｎ１の上限値ｎ１ｍａｘと、再送回数ｎ２の上限値ｎ２ｍａｘとを導入している。また、アプリケーションから見た目標パケットロス率Ｚが、順方向のネットワークのパケットロス率ｘ以上である場合には、第２の実施形態の技術思想を適用せずとも目標パケットロス率Ｚを達成できるため、以下の説明及びフローチャートでは、この場合の取扱いの記載を省略している。
【００８５】
図８は、最適な再送要求回数及び再送回数の第１の探索方法を示すフローチャートである。
【００８６】
再送要求回数／再送回数計算部３１Ａは、まず、順方向のネットワークのパケットロス率ｘ、逆方向のネットワークのパケットロス率ｙ、再送要求のＲＴＣＰパケットのパケット長Ｌ１、再送のＲＴＰパケットのパケット長Ｌ２、及び、対向する通信装置１１Ｂのアプリケーションから見た目標パケットロス率Ｚの５つのパラメータを設定すると共に（ステップＳ１００）、再送要求回数候補ｎ１を初期値０に設定する（ステップＳ１０１）。
【００８７】
その後、再送要求回数候補ｎ１を１インクリメントした後（ステップＳ１０２）、（９）式を満足する中で最も小さい値ｎ２を、今回の再送要求回数候補ｎ１と組み合わせる再送回数候補ｎ２とし（但し、最も小さい値ｎ２がその上限値ｎ２ｍａｘより大きい場合には、（９）式を満足する値ｎ２は１つも存在しないと取り扱う）、今回得られた組み合わせを保持する（ステップＳ１０３）。ここで、（９）式は、上述した（７）式に示す不等式を、左辺にｎ２がくるように変形した不等式であり（なお、ｘやｙが０より大きく１より小さいため、変形の中で対数に変換したときに不等号の向きが変化している）、（９）式を満足することは（７）式を満足することに等しい。
【数５】
2015008409.tif 000007
【００８８】
その後、そのときの再送要求回数候補ｎ１が上限値ｎ１ｍａｘか否かを判別し（ステップＳ１０４）、再送要求回数候補ｎ１が上限値ｎ１ｍａｘでなければ、上述したステップＳ１０２に移行する。
【００８９】
これに対して、そのときの再送要求回数候補ｎ１が上限値ｎ１ｍａｘであると、再送要求回数／再送回数計算部３１Ａは、保持されているｎ１ｍａｘ個の組み合わせの中で、再送回数候補ｎ２が同一値のものをグループにし、各グループの中から再送要求回数候補ｎ１が最も小さい組み合わせだけを残し、また、同一値の再送回数候補ｎ２がないためグループ化されない組み合わせもそのまま残し、候補となっている組み合わせを絞り込む（ステップＳ１０５）。
【００９０】
そして、残った再送要求回数候補ｎ１及び再送回数候補ｎ２の組み合わせ候補のそれぞれについて、（８）式に従って、トラフィック増加量ｅを計算し、トラフィック増加量ｅが最も小さい組み合わせ候補の再送要求回数候補ｎ１及び再送回数候補ｎ２を、適用する再送要求回数ｎ１及び再送回数ｎ２に決定する（ステップＳ１０６）。
【００９１】
図９は、最適な再送要求回数及び再送回数の第２の探索方法を示すフローチャートである。
【００９２】
再送要求回数／再送回数計算部３１Ａは、まず、順方向のネットワークのパケットロス率ｘ、逆方向のネットワークのパケットロス率ｙ、再送要求のＲＴＣＰパケットのパケット長Ｌ１、再送のＲＴＰパケットのパケット長Ｌ２、及び、対向する通信装置１１Ｂのアプリケーションから見た目標パケットロス率Ｚの５つのパラメータを設定すると共に（ステップＳ２００）、再送要求回数候補ｎ１及び再送回数候補ｎ２をそれぞれ初期値０に設定する（ステップＳ２０１）。
【００９３】
その後、再送回数候補ｎ２及び再送要求回数候補ｎ１を１インクリメントした後（ステップＳ２０２、Ｓ２０３）、今回の再送要求回数候補ｎ１及び再送回数候補ｎ２の組み合わせについて、（８）式に従って、トラフィック増加量ｅを計算して保持する（ステップＳ２０４）。
【００９４】
次に、そのときの再送要求回数候補ｎ１が上限値ｎ１ｍａｘか否かを判別し（ステップＳ２０５）、再送要求回数候補ｎ１が上限値ｎ１ｍａｘでなければ、上述したステップＳ２０３に移行する。
【００９５】
これに対して、そのときの再送要求回数候補ｎ１が上限値ｎ１ｍａｘであると、再送要求回数／再送回数計算部３１Ａは、再送要求回数候補ｎ１を初期値０に設定した上で（ステップＳ２０６）、そのときの再送回数候補ｎ２が上限値ｎ２ｍａｘか否かを判別し（ステップＳ２０７）、再送回数候補ｎ２が上限値ｎ２ｍａｘでなければ、上述したステップＳ２０２に移行する。
【００９６】
ステップＳ２０２〜Ｓ２０７間のループ処理を、ループ処理を抜け出すまで繰り返すことにより、再送要求回数候補ｎ１及び再送回数候補ｎ２の全ての組み合わせについて、トラフィック増加量ｅが計算されて保持される。
【００９７】
このときには、再送要求回数／再送回数計算部３１Ａは、再送要求回数候補ｎ１及び再送回数候補ｎ２の全ての組み合わせを、トラフィック増加量ｅが小さい順にソートする（ステップＳ２０８）。そして、ソートした先頭側から、上述した（７）式の不等式を満たす最初の組み合わせを見付け出し、見付け出した組み合わせの再送要求回数候補ｎ１及び再送回数候補ｎ２を、適用する再送要求回数ｎ１及び再送回数ｎ２に決定する（ステップＳ２０９）。
【００９８】
図１０は、最適な再送要求回数及び再送回数の第３の探索方法を示すフローチャートである。
【００９９】
再送要求回数／再送回数計算部３１Ａは、まず、順方向のネットワークのパケットロス率ｘ、逆方向のネットワークのパケットロス率ｙ、再送要求のＲＴＣＰパケットのパケット長Ｌ１、再送のＲＴＰパケットのパケット長Ｌ２、及び、対向する通信装置１１Ｂのアプリケーションから見た目標パケットロス率Ｚの５つのパラメータを設定すると共に（ステップＳ３００）、再送要求回数候補ｎ１及び再送回数候補ｎ２をそれぞれ初期値０に設定する（ステップ３０１）。
【０１００】
その後、再送回数候補ｎ２及び再送要求回数候補ｎ１を１インクリメントした後（ステップＳ３０２、Ｓ３０３）、今回の再送要求回数候補ｎ１及び再送回数候補ｎ２の組み合わせについて、（７）式の不等式の条件を満足するか確認し、満足する場合に、今回の組み合わせの情報を保持する（ステップＳ３０４）。
【０１０１】
次に、そのときの再送要求回数候補ｎ１が上限値ｎ１ｍａｘか否かを判別し（ステップＳ３０５）、再送要求回数候補ｎ１が上限値ｎ１ｍａｘでなければ、上述したステップＳ３０３に移行する。
【０１０２】
これに対して、そのときの再送要求回数候補ｎ１が上限値ｎ１ｍａｘであると、再送要求回数／再送回数計算部３１Ａは、再送要求回数候補ｎ１を初期値０に設定した上で（ステップＳ３０６）、そのときの再送回数候補ｎ２が上限値ｎ２ｍａｘか否かを判別し（ステップＳ３０７）、再送回数候補ｎ２が上限値ｎ２ｍａｘでなければ、上述したステップＳ３０２に移行する。
【０１０３】
ステップＳ３０２〜Ｓ３０７間のループ処理を、ループ処理を抜け出すまで繰り返すことにより、再送要求回数候補ｎ１及び再送回数候補ｎ２の全ての組み合わせのうち、（７）式の不等式の条件を満足する組み合わせの情報だけが保持される。
【０１０４】
このときには、再送要求回数／再送回数計算部３１Ａは、（７）式の不等式の条件を満足するそれぞれの組み合わせについて、（８）式に従ってトラフィック増加量ｅを計算し（ステップＳ３０８）、計算されたトラフィック増加量ｅが最小の組み合わせを見付け出し、見付け出した組み合わせの再送要求回数候補ｎ１及び再送回数候補ｎ２を、適用する再送要求回数ｎ１及び再送回数ｎ２に決定する（ステップＳ３０９）。
【０１０５】
図８〜図１０では省略しているが、再送要求回数／再送回数計算部３１Ａは、ＲＴＰパケットの再送が必要となったときに、その再送回数ｎ２だけ再送するように、決定した再送回数ｎ２を内部に記憶する。一方、決定された再送要求回数ｎ１だけ、再送を要求するＲＴＣＰパケットを送信するのは、対向する通信装置１１Ｂであるので、再送要求回数／再送回数計算部３１Ａから、決定された再送要求回数ｎ１の通知を受けた制御部２３Ａの制御下で、決定された再送要求回数ｎ１は、対向する通信装置１１Ｂに転送される。
【０１０６】
以上では、通信装置１１Ａから通信装置１１ＢへのＲＴＰパケットの転送に関する再送要求回数ｎ１及び再送回数ｎ２の決定動作を説明したが、通信装置１１Ｂから通信装置１１ＡへのＲＴＰパケットの転送に関しては、通信装置１１Ｂの再送要求回数／再送回数計算部３１Ｂが再送要求回数ｎ１及び再送回数ｎ２を決定し、決定した再送要求回数ｎ１が通信装置１１Ａに通知される。通信装置１１Ａにおいては、例えば、再送要求回数／再送回数計算部３１Ａが通知された再送要求回数ｎ１を保持し、対向する通信装置１１Ｂへ再送を要求する際には、再送要求のＲＴＣＰパケットを通知されたｎ１回だけ送信する。
【０１０７】
（Ｂ−３）第２の実施形態の効果
第２の実施形態によれば、再送要求回数ｎ１及び再送回数ｎ２を定めて適用するようにしたので、ネットワークの負荷増加を最小に抑えつつ、アプリケーションが要求するパケットロス率を実現することができる。
【０１０８】
ここで、再送要求回数ｎ１及び再送回数ｎ２の決定を定期的に実施し、決定結果を再送の仕組みに反映することにより、ネットワークパケットロス率の時間による変化に動的に対応することが可能となる。
【０１０９】
因みに、第１の実施形態の場合、再送要求回数及び再送回数を大きくすることで、アプリケーションから見たパケットロス率を大幅に低減することができる。しかしながら、必要以上に、再送要求のＲＴＣＰパケットや再送のＲＴＰパケットを送信することは、有限の資源であるネットワーク帯域を無駄に消費することになってしまう。第２の実施形態では、再送要求回数ｎ１及び再送回数ｎ２がいたずらに多くなることはなく、アプリケーションからみたパケットロス率を要求される率以下に抑えながら、ネットワークへの負荷増加も最小限に抑えることができる。
【０１１０】
（Ｃ）他の実施形態
上記各実施形態の説明においても、種々変形実施形態に言及してきたが、さらに、以下に例示するような変形実施形態を挙げることができる。
【０１１１】
上記第２の実施形態では、順方向のネットワークのパケットロス率と逆方向のネットワークのパケットロス率とを区別して扱うものを示したが、順方向及び逆方向のネットワークのパケットロス率とが等しいとみなして、再送要求回数及び再送回数を決定するようにしても良い。
【０１１２】
上記第２の実施形態では、再送要求のＲＴＣＰパケットのパケット長をも計測するものを示したが、再送要求のＲＴＣＰパケットのパケット長として、予めシステムが用意している固定長を適用するようにしても良い。また、上位のアプリケーションにおける符号化方式が固定長符号化方式を適用しているような場合など、ＲＴＰパケットのペイロードが固定の場合にも、再送のＲＴＰパケットのパケット長として、予めシステムが用意している固定長を適用するようにしても良い。
【０１１３】
上記第２の実施形態では、再送要求回数の上限及び再送回数の上限を設けて、最適な再送要求回数及び再送回数を探索するものを示したが、再送要求回数及び再送回数の少なくとも一方には意図的な下限（例えば２回）を設けて、最適な再送要求回数及び再送回数を探索するようにしても良い。
【０１１４】
上記第２の実施形態では、通信装置１１Ａから通信装置１１ＢへのＲＴＰパケットの送信において、通信装置１１Ａが、最適な再送要求回数及び再送回数を決定し、決定したうちの最適な再送要求回数を通信装置１１Ｂに通知するものを示したが、決定主体は通信装置１１Ａに限定されない。
【０１１５】
例えば、通信装置１１Ａから通信装置１１ＢへのＲＴＰパケットの送信において、通信装置１１Ｂが、必要な情報を収集したり提供を受けたりして、最適な再送要求回数及び再送回数を決定し、決定したうちの最適な再送回数を通信装置１１Ａに通知するようにしても良い。また例えば、通信装置１１Ａから通信装置１１ＢへのＲＴＰパケットの送信において、通信装置１１Ａが最適な再送回数を決定して格納し、通信装置１１Ｂが最適な再送要求回数を決定して格納するものであっても良い。さらに例えば、ネットワーク管理装置が、通信装置１１Ａ及び通信装置１１Ｂから必要な情報の提供を受けて、最適な再送要求回数及び再送回数を決定し、決定した最適な再送要求回数を通信装置１１Ｂに通知し、決定した最適な再送回数を通信装置１１Ａに通知するものであっても良い。この場合には、ネットワーク管理装置も、当該通信システムの構成要素となっている。
【０１１６】
上記各実施形態においては、通信装置の上位がアプリケーションプログラム（ソフトウェア）であるものを示したが、上位がハードウェア構成のものであっても良い。
【０１１７】
上記各実施形態では、双方向にストリームデータを送受信する通信システムを示したが、片方向にのみストリームデータを送受信する通信システムに対しても、本発明の技術思想を適用することができる。例えば、映像データを配信する映像配信装置と配信を受ける端末との通信に、本発明の技術思想を適用することができる。このような片方向の通信システムの場合、送信側の通信装置には最適な再送回数だけを設定し、受信側の通信装置には最適な再送要求回数だけを設定すれば良い。
【符号の説明】
【０１１８】
１０…通信システム、１１、１１Ａ、１１Ｂ…通信装置、２０…ＲＴＰ送受信部、２１…ＲＴＣＰ送受信部、２２…データ送受信部、２３…制御部、２４…送出データ保存部、２５…送出データ抽出部、２６…パケットロス検出部、２７…再送要求回数／再送回数記憶部、２８…データ通信バス、３０…パケット統計情報集計部、３１…再送要求回数／再送回数計算部。
【図１】
2015008409.tif 000008
【図２】
2015008409.tif 000009
【図３】
2015008409.tif 000010
【図４】
2015008409.tif 000011
【図５】
2015008409.tif 000012
【図６】
2015008409.tif 000013
【図７】
2015008409.tif 000014
【図８】
2015008409.tif 000015
【図９】
2015008409.tif 000016
【図１０】
2015008409.tif 000017
【図１１】
2015008409.tif 000018