(57)【特許請求の範囲】
【請求項１】
ネットワークを介して受信端末とデータのリアルタイム通信を行う送信端末であって、
前記ネットワークのデータ伝送状態を示す指標値に応じて、当該送信端末から出力されるべき送信データのビットレート及び単位時間当たりのパケット送信数を少なくとも決定付ける設定条件を複数算出し、算出された複数の前記設定条件夫々が前記送信データの品質及び前記ネットワークでのデータ遅延量に与える影響を評価し、複数の前記設定条件から少なくとも1つの設定条件を算出する品質制御手段と、
前記品質制御手段により算出された前記設定条件に応じて当該送信端末から出力されるべき送信パケットを生成するパケット生成手段と、
を備える送信端末。
【請求項２】
前記品質制御手段は、前記送信データの品質及び前記ネットワークでのデータ遅延量を評価する評価関数により複数の前記設定条件から少なくとも1つの設定条件を算出することを特徴とする請求項１に記載の送信端末。
【請求項３】
前記品質制御手段は、複数の前記設定条件に対する前記評価関数の適用により求めた解の絶対値が最小又は最大であるときの設定条件を最終的に求める設定条件とすることを特徴とする請求項２に記載の送信端末。
【請求項４】
前記品質制御手段は、予め前記ネットワークの最大スループットに応じて設定された目標値と前記指標値との比較により求められる前記ネットワークの現状に許容される範囲で、複数の前記設定条件を算出することを特徴とする請求項１乃至３のいずれか一項に記載の送信端末。
【請求項５】
前記指標値は、前記送信端末と前記受信端末間におけるエンド‐エンド遅延量の推定値であることを特徴とする請求項１乃至４のいずれか一項に記載の送信端末。
【請求項６】
前記指標値は、前記受信端末から当該送信端末に伝達された情報に基づいて生成されることを特徴とする請求項１乃至４のいずれか一項に記載の送信端末。
【請求項７】
ネットワークを介して受信端末とデータのリアルタイム通信を行う送信端末であって、
前記ネットワークのデータ伝送状態を示す指標値に応じて、当該送信端末から出力されるべき送信データのビットレート及び単位時間当たりのパケット送信数を少なくとも決定付ける設定条件を複数算出する第１算出手段と、
前記第１算出手段により算出された複数の前記設定条件夫々が前記送信データの品質及び前記ネットワークでのデータ遅延量に与える影響を評価することに基づいて複数の前記設定条件から少なくとも1つの設定条件を算出する第２算出手段と、
前記第２算出手段により算出された前記設定条件に応じて当該送信端末から出力されるべき送信パケットを生成するパケット生成手段と、
を備える送信端末。
【請求項８】
前記第２算出手段は、前記送信データの品質及び前記ネットワークでのデータ遅延量を評価する評価関数により複数の前記設定条件から少なくとも1つの設定条件を算出することを特徴とする請求項７に記載の送信端末。
【請求項９】
前記第２算出手段は、複数の前記設定条件に対する前記評価関数の適用により求めた解の絶対値が最小又は最大であるときの設定条件を最終的に求める設定条件とすることを特徴とする請求項８に記載の送信端末。
【請求項１０】
前記第１算出手段は、予め前記ネットワークの最大スループットに応じて設定された目標値と前記指標値との比較により求められる前記ネットワークの現状に許容される範囲で、複数の前記設定条件を算出することを特徴とする請求項７乃至９のいずれか一項に記載の送信端末。
【請求項１１】
前記指標値は、前記送信端末と前記受信端末間におけるエンド‐エンド遅延量の推定値であることを特徴とする請求項７乃至１０のいずれか一項に記載の送信端末。
【請求項１２】
前記指標値は、前記受信端末から当該送信端末に伝達された情報に基づいて生成されることを特徴とする請求項７乃至１０のいずれか一項に記載の送信端末。
【請求項１３】
ネットワークを介して接続される端末間においてデータのリアルタイム通信を行う通信システムであって、
前記ネットワークのデータ伝送状態を示す指標値に応じて、前記端末から出力されるべき送信データのビットレート及び単位時間当たりのパケット送信数を少なくとも決定付ける設定条件を複数算出する第１算出手段と、
前記第１算出手段により算出された複数の前記設定条件夫々が前記送信データの品質及び前記ネットワークでのデータ遅延量に与える影響を評価することに基づいて複数の前記設定条件から少なくとも1つの設定条件を算出する第２算出手段と、
前記第２算出手段により算出された前記設定条件に応じて当該送信端末から出力されるべき送信パケットを生成するパケット生成手段と、
を備える通信システム。
【請求項１４】
ネットワークを介して送信端末から受信端末へ送信されるデータをコンピュータに生成させるプログラムであって、
前記ネットワークのデータ伝送状態を示す指標値に応じて、前記送信端末から出力されるべき送信データのビットレート及び単位時間当たりのパケット送信数を少なくとも決定付ける設定条件を複数算出させ、
算出された複数の前記設定条件夫々が前記送信データの品質及び前記ネットワークでのデータ遅延量に与える影響を評価することに基づいて複数の前記設定条件から少なくとも1つの設定条件を算出させ、
最終的に算出された前記設定条件に応じて当該送信端末から出力されるべき送信パケットを生成させる、プログラム。
【請求項１５】
ネットワークを介して送信端末から受信端末へ送信される送信データの品質をコンピュータに制御させるデータ品質制御方法であって、
前記ネットワークのデータ伝送状態を示す指標値に応じて、前記送信端末から出力されるべき送信データのビットレート及び単位時間当たりのパケット送信数を少なくとも決定付ける設定条件を複数算出し、
算出された複数の前記設定条件夫々が前記送信データの品質及び前記ネットワークでのデータ遅延量に与える影響を評価することに基づいて複数の前記設定条件から少なくとも1つの設定条件を算出し、
最終的に算出された前記設定条件を前記送信端末から出力されるべき送信パケットの生成条件とする、データ品質制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、送信端末、通信システム、プログラム、及びデータ品質制御方法に関する。
【背景技術】
【０００２】
近年、ＩＰ電話、ソフトフォン、インスタントメッセンジャー等を活用してＩＰネットワーク上でリアルタイムに音声通信することが広く行われている。
【０００３】
ＩＰネットワークでは、帯域やパケットの保証がなく、エンド‐エンド遅延量が大きくなったり、音声品質が損なわれたりすることがある。従って、ＩＰネットワークの状態に応じて音声品質を制御することが必要になる（特許文献１乃至４参照）。なお、エンド‐エンド遅延とは、受信端末‐送信端末間の遅延を示す。
【０００４】
特許文献１には、受信端末の受信レポートに基づいて計測されるラウンドトリップタイム（ＲＴＴ）からＩＰネットワークに蓄積されているバッファ量を算出し、算出されたバッファ量から送信端末の送信レートを制御する方法が記載されている。
【０００５】
特許文献２には、上述のバッファ量に対して目標値と観測値との差分に比例する動作と積分する動作を組み合わせて送信レートを制御する方法が記載されている。
【０００６】
特許文献３には、送信側のパケット送信時間間隔を受信端末に伝え、受信側で設定された個数の連続して受信したパケットの受信時間間隔の和と送信時間間隔の和との差を検出し、前記差と閾値とを比較し、前記比較に従って送信端末に通知し、送信側は前記通知の受信によってパケットの送信時間間隔及び／又はパケット長、あるいは送信ウィンドウサイズを変化させることで送信レートを制御し、この送信レートの制御によって音声品質を制御する方法が記載されている。
【０００７】
特許文献４には、パケットロスやパケット到着間隔のジッタにより受信端末で補間した音声パケットの割合に基づいて送信端末の送信時間間隔を制御することにより、音声品質を制御する方法が記載されている。
【０００８】
なお、特許文献５には、無線ＬＡＮを利用したワイヤレスＩＰ電話機同士によるエンドツーエンドの通話に関する技術が開示されている。
【０００９】
なお、特許文献６には、複数の通信端末間で音声／画像データの送受信を行うマルチメディア通信の品質管理システムに関する技術が開示されている。
【特許文献１】特開平１１−３０８２７１号公報
【特許文献２】特開２００４−２５３８８３号公報
【特許文献３】特開平７−３０３１１７号公報
【特許文献４】特開２００５−２５２６６５号公報
【特許文献５】特開２００６−  ４１６１７号公報
【特許文献６】特開２００４−２８９７４８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
ところで、エンド‐エンド遅延量やパケットロスの原因となるパケット中継機器の最大スループット（bps(bits per second)）は、単位時間当たりのパケット送信数（pps(packet per second)）に影響される。従って、IP(Internet Protocol)ネットワークの最大スループットは、単位時間当たりのパケット送信数に依存することになる。なお、特に無線網では単位時間当たりのパケット送信数増加に伴う最大スループットの低下が著しい。
【００１１】
上記の特許文献１乃至４では、ＩＰネットワークに蓄積されているバッファ量や輻輳状態に基づいて送信時間間隔やパケット長を操作して送信レートを制御し、エンド‐エンド遅延量の縮小と音声品質の改善を図っている。しかしながら、上述のように、ＩＰネットワークは、同一送信レートでも単位時間当たりのパケット数によって処理効率が大きく異なる。従って、単純に送信レートだけに着目したとしても最適な音声品質制御を実現することはできない。
【００１２】
本発明は、IＰネットワークの最大スループットの低下を抑制しつつ、送信データの品質を高水準に維持させることを目的とする。
【課題を解決するための手段】
【００１３】
本発明の第１の態様にかかる送信端末は、ネットワークを介して受信端末とデータのリアルタイム通信を行う送信端末であって、前記ネットワークのデータ伝送状態を示す指標値に応じて、当該送信端末から出力されるべき送信データのビットレート及び単位時間当たりのパケット送信数を少なくとも決定付ける設定条件を複数算出し、算出された複数の前記設定条件夫々が前記送信データの品質及び前記ネットワークでのデータ遅延量に与える影響を評価し、複数の前記設定条件から少なくとも1つの設定条件を算出する品質制御手段と、前記品質制御手段により算出された前記設定条件に応じて当該送信端末から出力されるべき送信パケットを生成するパケット生成手段と、を備える。
【００１４】
本発明の第２の態様にかかる送信端末は、ネットワークを介して受信端末とデータのリアルタイム通信を行う送信端末であって、前記ネットワークのデータ伝送状態を示す指標値に応じて、当該送信端末から出力されるべき送信データのビットレート及び単位時間当たりのパケット送信数を少なくとも決定付ける設定条件を複数算出する第１算出手段と、前記第１算出手段により算出された複数の前記設定条件夫々が前記送信データの品質及び前記ネットワークでのデータ遅延量に与える影響を評価することに基づいて複数の前記設定条件から少なくとも1つの設定条件を算出する第２算出手段と、前記第２算出手段により算出された前記設定条件に応じて当該送信端末から出力されるべき送信パケットを生成するパケット生成手段と、を備える。
【００１５】
本発明の第１の態様にかかる通信システムは、ネットワークを介して接続される端末間においてデータのリアルタイム通信を行う通信システムであって、前記ネットワークのデータ伝送状態を示す指標値に応じて、前記端末から出力されるべき送信データのビットレート及び単位時間当たりのパケット送信数を少なくとも決定付ける設定条件を複数算出する第１算出手段と、前記第１算出手段により算出された複数の前記設定条件夫々が前記送信データの品質及び前記ネットワークでのデータ遅延量に与える影響を評価することに基づいて複数の前記設定条件から少なくとも1つの設定条件を算出する第２算出手段と、前記第２算出手段により算出された前記設定条件に応じて当該送信端末から出力されるべき送信パケットを生成するパケット生成手段と、を備える。
【００１６】
本発明の第１の態様にかかるプログラムは、ネットワークを介して送信端末から受信端末へ送信されるデータをコンピュータに生成させるプログラムであって、前記ネットワークのデータ伝送状態を示す指標値に応じて、前記送信端末から出力されるべき送信データのビットレート及び単位時間当たりのパケット送信数を少なくとも決定付ける設定条件を複数算出させ、算出された複数の前記設定条件夫々が前記送信データの品質及び前記ネットワークでのデータ遅延量に与える影響を評価することに基づいて複数の前記設定条件から少なくとも1つの設定条件を算出させ、最終的に算出された前記設定条件に応じて当該送信端末から出力されるべき送信パケットを生成させる。
【００１７】
本発明の第１の態様にかかるデータ品質制御方法は、ネットワークを介して送信端末から受信端末へ送信される送信データの品質をコンピュータに制御させるデータ品質制御方法であって、前記ネットワークのデータ伝送状態を示す指標値に応じて、前記送信端末から出力されるべき送信データのビットレート及び単位時間当たりのパケット送信数を少なくとも決定付ける設定条件を複数算出し、算出された複数の前記設定条件夫々が前記送信データの品質及び前記ネットワークでのデータ遅延量に与える影響を評価することに基づいて複数の前記設定条件から少なくとも1つの設定条件を算出し、最終的に算出された前記設定条件を前記送信端末から出力されるべき送信パケットの生成条件とする。
【発明の効果】
【００１８】
本発明によれば、IＰネットワークの最大スループットの低下を抑制しつつ、送信データの品質を高水準に維持させることができる。
【発明を実施するための最良の形態】
【００１９】
次に、本発明の実施例について図面を参照して詳細に説明する。
【００２０】
［実施例１］
本発明の実施例１について図１乃至図５を参照して説明する。図１に通信システム１の概略的な構成図を示す。図２に音声品質制御部の概略的な構成図を示す。図３に最大スループットとＰＰＳとの関係図を示す。図４に見かけの送信レート算出手段の構成図を示す。図５に、音声品質とエンド‐エンド遅延量との関係図を示す。
【００２１】
図１に示すように、通信システム１は、送信端末１０１、受信端末１１１を有する。送信端末１０１と受信端末１１１とは互いにネットワーク１２１を介して接続される。尚、  ネットワーク１２１は、インターネット、企業網、ＮＧＮをはじめとするＩＰネットワークであり、有線網と無線網のいずれも含む。また、送信端末１０１は、送信用に限定されるものではなく、受信端末としても機能する。受信端末１１１は、受信用に限定されるものではなく、送信端末としても機能する。
【００２２】
送信端末１０１は、キャプチャした音声から音声パケットを生成して送信する。送信端末１０１は、音声品質制御部（品質制御手段）１０２、音声パケット生成部(パケット生成手段)１０３、及び音声パケット送信部１０４を有する。送信端末１０１は、演算処理部、記憶部といった要素を有する一般的なコンピュータである。記憶部に格納されたプログラムの命令列が順次演算処理部で実行されることによって、送信端末１０１の各機能は実現される。
【００２３】
音声品質制御部１０２は、ネットワークの状況に最適な音声データのビットレートと単位時間当たりの音声パケット送信数を算出する。より具体的には、音声品質制御部１０２は、ネットワークの状態を示す指標値(エンド‐エンド遅延量)を求める。そして、音声品質制御部１０２は、算出した指標値に応じて、送信端末から出力されるべき音声データのビットレートと単位時間当たりの音声パケット送信数を決定付ける複数の条件を算出する。その後、音声品質制御部１０２は、評価関数に基づいてこれらの条件を評価し、複数の条件から少なくとも1つの条件を算出する。このように、音声品質制御部１０２は、第１及び第２の算出手段を有する。
【００２４】
音声パケット生成部１０３は、音声品質制御部１０２からの出力（音声品質制御部１０２にて算出された音声データのビットレート、単位時間当たりの音声パケット送信数）に基づいて音声パケットを生成する。より具体的には、音声品質制御部１０２による評価により特定された設定条件に応じて音声パケットを生成する。なお、後述するように、音声パケット生成部１０３は、後述の変数ｘ及びｙに従って音声コーデック、ペイロードサイズ、バンドリング等を決定し、音声パケットを生成する。音声パケット生成部１０３から出力される送信データは、音声品質制御部１０２の算出結果に応じたものになる。音声パケット送信部１０４は、音声パケット生成部１０３にて生成した音声パケットを受信端末１１１へ向けて送信する。
【００２５】
受信端末１１１は、送信端末１０１から送信された音声パケットを受信して再生する。受信端末１１１は、音声パケット受信部１１２、及び音声パケット処理部１１３を有する。受信端末１１１は、演算処理部、記憶部といった要素を有する一般的なコンピュータである。受信端末１１１の各機能は、記憶部に格納されたプログラムの命令列が順次演算処理部で実行されることによって実現される。
【００２６】
音声パケット受信部１１２は、送信端末１０１から送信された音声パケットを受信する。音声パケット処理部１１３は、音声パケット受信部１１２にて受信した音声パケットを処理して音声を再生する。
【００２７】
ここで、以下に説明する音声品質制御で用いる変数や値について説明する。
【００２８】
音声データのビットレートと単位時間当たりの音声パケット送信数を決めるパラメータとして、変数ｘ、変数ｙ、及び値ｈを以下のように設定する。
【００２９】
変数ｘは、音声パケットのペイロードサイズを示す。変数ｘの単位は、ｂｉｔである。変数ｘは、０より大きい整数値をとる。尚、音声パケットのペイロードとは音声コーデックによって符号化された音声データを表す。例えば、Ｇ．７１１μ、２０ｍｓ分の符号化された音声データは、１６０ｂｙｔｅ＝１２８０ｂｉｔとなる。
【００３０】
変数ｙは、単位時間当たりの音声パケット送信数を示す。変数ｙの単位は、ｐｐｓである。変数ｙは、０より大きい実数値をとる。
【００３１】
値ｈは、音声パケットのペイロードを除くサイズを示す。値ｈの単位はｂｉｔである。値ｈは、０以上の整数値をとる。例えばＲＴＰ／ＵＤＰ／ＩＰにて音声パケットを送信する場合、ｈの値はＲＴＰヘッダ１２ｂｙｔｅ、ＵＤＰヘッダ８ｂｙｔｅ、ＩＰヘッダ２０ｂｙｔｅの計４０ｂｙｔｅ＝３２０ｂｉｔである。
【００３２】
ペイロード部の送信レート、つまり正味の音声の送信レートをＵｎとおくと式１で表すことができる。
Ｕｎ＝ｘｙ            (式1)
【００３３】
また、ＩＰパケット全体としての送信レートをＵａとおくとＵａは式２で表すことができる。
Ｕａ＝（ｘ＋ｈ）ｙ        (式2)
【００３４】
ネットワーク１２１の単位時間当たりのパケット送信数とその最大スループットの関係について図３を参照して説明する。図３に示すように、ネットワーク全体の最大スループットは、単位時間当たりのパケット送信数が増加すると低下する。これは、ルータ、スイッチ、基地局等のパケット中継機器の最大スループットは、単位時間当たりのパケット送信数に依存するためである。
【００３５】
式３のようにネットワーク１２１の最大スループットをＢとおきｙの関数で表す。なお、ここでは、変数ｙと最大スループットの関数Ｂ（ｙ）は既知であるとする。Ｂ（ｙ）は事前に計測しておいてもよいし、音声パケットをプローブパケットと見立ててリアルタイムに計測してもよい。
Ｂ＝Ｂ（ｙ）        (式3)
【００３６】
さらに、ネットワーク１２１の最大スループットＢに対するＩＰパケット全体としての送信レートＵａの比率Ｕｒを式４のように定義する。以降Ｕｒを見かけの送信レートと呼ぶことにする。見かけの送信レートＵｒは、利用可能な帯域のうち送信している音声パケットが占める割合を示しており、クロストラヒックが存在しない場合０≦Ｕｒ≦１が輻輳なしに送信できる範囲を表す。
Ｕｒ＝Ｕａ／Ｂ        (式4)
【００３７】
上述の説明を踏まえて、以下、図を参酌して具体的に説明する。図２に音声品質制御部１０２の構成を示す。図２に示すように、音声品質制御部２０１は、エンド‐エンド遅延量推定手段２１１、見かけの送信レート算出手段２１２、実行可能解算出手段２１３、及び最適解算出手段２１４を有する。なお、エンド‐エンド遅延量推定手段２１１の出力は、見かけの送信レート算出手段２１２の入力に接続される。見かけの送信レート算出手段２１２の出力は、実行可能解算出手段２１３の入力に接続される。実行可能解算出手段２１３の出力は、最適解算出手段２１４の入力に接続される。最適解算出手段２１４の出力は、音声パケット生成部１０３の入力に接続される。
【００３８】
エンド‐エンド遅延量推定手段２１１は、送信端末から受信端末までのエンド‐エンド遅延量(エンドトゥエンド遅延量)を推定する。見かけの送信レート算出手段２１２は、エンド‐エンド遅延量推定手段２１１で推定したエンド‐エンド遅延量からネットワークの最大スループットに対する送信レートの割合を算出する。実行可能解算出手段２１３は、送信レートの割合から実行可能な音声データのビットレートと単位時間当たりの音声パケット送信数の組の集合を算出する。最適解算出手段２１４は、実行可能な音声データのビットレートと単位時間当たりの音声パケット送信数の組の集合から最適な音声データのビットレートと単位時間当たりの音声パケット送信数の組をただ１組算出する。
【００３９】
なお、本実施例では、第１算出手段は、見かけの送信レート算出手段２１２、及び実行可能解算出手段２１３で構成される。第２算出手段は、最適解算出手段２１４から構成される。
【００４０】
エンド‐エンド遅延量推定手段２１１では、送信端末から受信端末までのエンド‐エンド遅延量を推定する。推定方法としては、ＲＴＴを用いた推定手段であってもよく、例えば、エンド‐エンド遅延量の推定値をＤとすると、Ｄ＝ＲＴＴ／２としてもよい。
【００４１】
図４に、見かけの送信レート算出手段２１２の構成図を示す。図４に示すように、見かけの送信レート算出手段２１２は、差分処理部３１１、ＰＩＤ補償器３１２、及び積分処理部３１３を有する。なお、差分処理部３１１の出力は、ＰＩＤ補償器３１２の入力に接続される。ＰＩＤ補償器３１２の出力は、積分処理部３１３の入力に接続される。積分処理部３１３の出力は、実行可能解算出手段２１３の入力に接続される。差分処理部３１１の入力には、エンド‐エンド遅延量推定手段２１１の出力が接続される。
【００４２】
差分処理部３１１は、エンド‐エンド遅延量の目標値Ｒとエンド‐エンド遅延量の推定値Ｄとの差分ｅ＝Ｒ−Ｄを計算する。ＰＩＤ補償器３１２は、差分ｅから見かけの送信レートの増量ΔＵｒを算出する。積分処理部３１３は、ΔＵｒに積分処理を施し見かけの送信レートＵｒを算出する。
【００４３】
ＰＩＤ補償器３１２は、ＰＩＤパラメータの設定によって、エンド‐エンド遅延量の推定値Ｄをエンド‐エンド遅延量の目標値Ｒに近づけるような制御を実現させる。換言すると、ＰＩＤ補償器３１２は、差分処理部３１１で算出されるｅ＝Ｒ−Ｄを０に近づけるように制御がはたらくようにＰＩＤパラメータを設定する。
【００４４】
この制御により、エンド‐エンド遅延量が目標値より大きい場合、見かけの送信レートを下げる制御がはたらく。この結果、音声品質を下げることで、エンド‐エンド遅延量は目標値に近づけられる。また、エンド‐エンド遅延量が目標値より小さい場合、見かけの送信レートを上げる制御がはたらき、音声品質が向上する。
【００４５】
ＰＩＤ補償器３１２は、エンド‐エンド遅延量の推定値Ｄをエンド‐エンド遅延量の目標値Ｒに近づける制御の結果としてＵｒの差分であるΔＵｒを算出する。
【００４６】
式５にＰＩＤ制御を利用した場合にΔＵｒを求める式を記述する。ここで、Ｋｐ、Ｋｉ、ＫｄはＰＩＤパラメータである。また、∫［０、ｔ］ｄτは、時刻０から時刻ｔまでの積分を意味する。
ΔＵｒ＝Ｋｐ×ｅ＋Ｋｉ×∫［０、ｔ］ｅｄτ＋Ｋｄ×ｄｅ／ｄｔ    (式5)
【００４７】
積分処理部３１３では、ΔＵｒを積分することにより見かけの送信レートＵｒを算出する。Ｕｒを算出する式は式６である。このように、見かけの送信レート算出手段２１２は、目標値Ｒと推定値Ｄとの比較に応じて、ネットワークの最大スループットに対する送信レートの割合を算出する。
Ｕｒ＝∫［０、ｔ］ΔＵｒｄτ        (式6)
【００４８】
次に、実行可能解算出手段２１３について詳細に説明する。実行可能解算出手段２１３は、以下の手順に従って、複数の実行可能解を算出する。
【００４９】
まず、実行可能な（ｘ、ｙ）の集合について考える。上述したように、ｘは音声パケットのペイロードサイズであり、ｙは単位時間当たりの音声パケット送信数である。従って、送信端末１０１の実装や利用可能な音声コーデック等によって実行可能な（ｘ、ｙ）が限定される。
【００５０】
実行可能な（ｘ、ｙ）の集合をＧとおく。例えば、音声コーデックとしてＧ．７１１のみ使用でき、且つＧ．７１１にて任意のペイロードサイズを使用できる送信端末の場合の実行可能な（ｘ、ｙ）の集合をＧ１とすると、Ｇ１＝｛（ｘ、ｙ）｜ｘ＝８ｎ、ｙ＝８０００／ｎ、ｎは自然数｝となる。例えば、音声コーデックとしてＡＭＲのみ使用でき、且つバンドリングが使用できない送信端末の場合の実行可能な（ｘ、ｙ）の集合をＧ２とすると、Ｇ２＝｛（１２×８、５０）、（１３×８、５０）、（１５×８、５０）、（１７×８、５０）、（１９×８、５０）、（２０×８、５０）、（２６×８、５０）、（３１×８、５０）｝となる。また、Ｇ．７１１とＡＭＲの２つをサポートする送信端末であれば、実行可能な（ｘ、ｙ）の集合はＧ１∪Ｇ２となる。
【００５１】
次に、（ｘ、ｙ）∈Ｇであり、且つ見かけの送信レート算出手段２１２で算出されたＵｒを満足する（ｘ、ｙ）の集合である実行可能解Ｐ＝｛（ｘ、ｙ）｝を式７のように求める。Ｐの定義式における（ｘ＋ｈ）ｙ＝ＢＵｒは式２と式４から導出できる。ヘッダサイズｈは音声パケット生成部における音声パケット生成方法によって異なることに注意が必要である。
Ｐ＝｛（ｘ、ｙ）｜（ｘ＋ｈ）ｙ＝ＢＵｒ、（ｘ、ｙ）∈Ｇ｝    (式7)
【００５２】
Ｐの算出においてＰが空集合となる可能性がある。そのときはＰ＝｛（ｘ、ｙ）｜｜（ｘ＋ｈ）ｙ―ＢＵｒ｜≦δ、（ｘ、ｙ）∈Ｇ｝として（ｘ＋ｈ）ｙがある程度ＢＵｒの近傍であれば実行可能解としてもよいし、（ｘ＋ｈ）ｙが最もＢＵｒに近い（ｘ、ｙ）の組を実行可能解としてもよい。このようにして、実行可能解算出手段２１３は、送信レート算出手段２１２で算出された条件を満足する実行可能な複数の条件を算出する。
【００５３】
次に、最適解算出手段２１４について詳細に説明する。最適解算出手段２１４は、前記実行可能解算出手段２１３で求められたＰ｛（ｘ、ｙ）｝のうち、音声品質とエンド‐エンド遅延量を考慮したときに最適な（ｘ、ｙ）の組をただ１組算出する。換言すると、最適解算出手段２１４は、実行可能解算出手段２１３で求められた複数の条件(x、y)夫々について、音声品質とエンド‐エンド遅延量に与える影響を評価し、送信パケットの生成条件として最適なものを特定する。これにより、送信端末から送信されるデータの送信レートを適正なものとしつつ、送信端末から送信されるパケット数を適切に設定することが可能になる。
【００５４】
具体的には、音声品質とエンド‐エンド遅延量を考慮した評価関数Ｊを定義し、前記Ｊを最小にする（ｘ、ｙ）を選択することで最適解を算出する。Ｊはスカラ関数であり、一般に式８あるいは式９のように表現できる。ｔは転置を表す。Ｊを最小にする（ｘ、ｙ）を（ｘ＊、ｙ＊）と表すことにすると、（ｘ＊、ｙ＊）が最適解である。なお、評価関数の定義次第によっては、評価関数により求められる値が最大とする（ｘ、ｙ）を選択することが最適解を算出することも可能である。
Ｊ（ｘ、ｙ）＝ｑξ        (式8)
Ｊ（ｘ、ｙ）＝ξｔＱξ    (式9)
【００５５】
ξはｍ次元の列ベクトルであり評価指標となる変数ξ１、ξ２、・・・、ξｍからなる。ξｉ（ｉ＝１〜ｍ）は評価指標となる変数であり、ｘとｙの関数となっている。ｑはｍ次の行ベクトル、Ｑはｍ×ｍ次の正方行列であり、各評価指標ξｉに関する重み付けを行う。例えば、ξを３次として、ξ＝［Ｕｎ  Ｕａ  ｙ］ｔと選ぶことを考えよう。前記のようにξを決定した理由は、Ｕｎの大きさが音声品質と正の相関にあり、Ｕａの大きさがエンド‐エンド遅延量と正の相関にあり、ｙの大きさがエンド‐エンド遅延量と負の相関にあるからである。評価関数として式６を選択し、ｑ＝［−ｗ１  ｗ２  −ｗ３］とおく。このときｗｉ（ｉ＝１〜３）はいずれも非負の実数である。実行可能解のうち上述のように決定した評価関数を最小にする（ｘ＊、ｙ＊）を適用することにより、できる限り音声品質を高く、できる限りエンド‐エンド遅延量を小さくすることが可能になる。
【００５６】
再び図１に戻り、音声パケット生成部１０３、音声パケット送信部１０４、及び受信端末１１１の各動作について説明する。
【００５７】
音声パケット生成部１０３は、前記音声品質制御部１０２で求められた最適解（ｘ＊、ｙ＊）にしたがった音声コーデック、ペイロードサイズ、バンドリング、単位時間当たりの音声パケット送信数等にて音声データを符号化してパケット化する。パケット化では一般にＩＰ／ＵＤＰ／ＲＴＰを用いるが、ＩＰ／ＴＣＰ／ＨＴＴＰ等その他のプロトコルを使用してもよい。
【００５８】
音声パケット送信部１０４は、前記音声パケット生成部１０３で生成された音声パケットを前記音声品質制御部１０２で求められた単位時間当たりの音声パケット送信数に基づいて受信端末１１１に向けて送信する。
【００５９】
音声パケット受信部１１２では、送信端末１０１が送信した音声パケットを受信し、前記受信した音声パケットを音声パケット処理部１１３に引き渡す。
【００６０】
音声パケット処理部１１３では、前記音声パケット受信部１１２にて受信した音声パケットに対して復号処理を施して音声を再生する。ＩＰ／ＵＤＰ／ＲＴＰにて送信された音声パケットである場合、音声パケットからペイロード部を取り出し、取り出したペイロードを適切な音声コーデックにて復号することで復号処理を行う。
【００６１】
上述のように音声品質を制御して音声パケットを送信することにより、できる限り高い音声品質且つできる限り小さなエンド‐エンド遅延量を実現できる。この点について図５を参照して補足的に説明する。
【００６２】
尚、図５では、縦軸に音声品質をとり、横軸にエンド‐エンド遅延量をとっている。音声品質が縦軸上向きに高くなるように、エンド‐エンド遅延量が横軸右向きに小さくなるようにとっている。矢印で模式的に示すように、右上方向に向かうほど高音質且つ低遅延である。
【００６３】
また、縦軸、横軸、及び実線で囲まれた領域は、実現可能な音声品質とエンド‐エンド遅延量の組の集合である。グラフ上には、また、図５には点線で示す等高線１０が示されている。等高線１０は、２点間においてどちらが優れた点であるかを決定するため品質を示す。等高線１０は、上述の評価関数Ｊによって設定される。
【００６４】
最適な音声データのビットレートと単位時間当たりの音声パケット送信数にて音声パケットを送信しない場合には、図５における×印のように実現可能な音声品質とエンド‐エンド遅延量のうち最も優れた組を実現できていない。他方、本実施形態においては、上述の方法により、評価関数を最小にする最適な音声データのビットレートと単位時間当たりの音声パケット送信数を選択する。従って、図５において実現可能な音声品質とエンド‐エンド遅延量のうち最も優れた組であるポイント１１を実現することができる。すなわち、できる限り音声品質を高く、できる限りエンド‐エンド遅延量を小さくすることが可能になる。この点は、リアルタイム性を必要とされるデータ通信においては極めて有利である。
【００６５】
［実施例２］
次に、本発明の実施例２について図６乃至８を参照して説明する。図６に、通信システムの概略的な構成図を示す。図７に、音声品質制御部の概略的な構成図を示す。図８に、見かけの送信レート算出手段の概略的な構成図を示す。
【００６６】
実施例２においては、受信端末が受信レポート送信する。そして、送信端末は、受信端末から通知された受信レポートに従ってエンド‐エンド遅延量を推定する。この点について概略的に説明すれば、次のとおりである。
【００６７】
まず、受信レポートを受信した直前に送信した音声パケットのシーケンス番号と受信レポートに記載されている最大シーケンス番号の差からネットワークに蓄積されている音声パケットの個数を算出する。次に、前記蓄積されている音声パケットの個数からネットワークに蓄積されている音声パケットサイズＳを算出する。次に、２つの受信レポート間で受信端末が受信した音声パケットの個数を受信レポートに記載されている最大拡張シーケンス番号の差から算出する。次に、最大拡張シーケンス番号の差から２つの受信レポート間で受信端末が受信した音声パケットサイズを算出する。次に、音声パケットサイズを２つの受信レポート間の時間差で割り、２つの受信レポート間で受信端末が受信した音声パケットの受信レートｖを算出する。最後に、前記ネットワークに蓄積されている音声パケットサイズを前記受信端末の音声パケット受信レートで割ることにより、エンド‐エンド遅延量の推定値を算出することができる（Ｄ＝Ｓ／ｖ）。
【００６８】
以下、実施例２について具体的に説明する。
【００６９】
図６に示すように、送信端末６０１は、受信レポート受信部６０５、受信レポート解析部６０６、音声品質制御部６０２、音声パケット生成部１０３、及び音声パケット送信部１０４を有する。尚、音声パケット生成部１０３及び音声パケット送信部１０４については実施例１と同様である。
【００７０】
受信レポート受信部６０５の出力は、受信レポート解析部６０６の入力に接続される。受信レポート解析部６０６の出力は、音声品質制御部６０２の入力に接続される。なお、受信レポート受信部６０５の入力には、後述の受信レポート送信部６１５の出力がネットワーク１２１を介して接続される。
【００７１】
受信端末６１１は、音声パケット受信部１１２、音声パケット処理部１１３、受信レポート生成部６１４、及び受信レポート送信部６１５を有する。音声パケット受信部１１２及び音声パケット処理部１１３については実施例１と同様である。
【００７２】
音声パケット受信部１１２の出力は、受信レポート生成部６１４の入力に接続される。受信レポート生成部６１４の出力は、受信レポート送信部６１５の入力に接続される。受信レポート送信部６１５の出力は、ネットワーク１２１を介して、受信レポート受信部６０５に接続される。
【００７３】
受信レポート生成部６１４は、音声パケット受信部６１２における受信情報から受信レポートを生成する。
【００７４】
受信レポート送信部６１５は、受信レポート生成部６１４にて生成した受信レポートを送信端末６０１に向けて送信する。
【００７５】
送信端末６０１の受信レポート受信部６０５は、受信端末６１１が送信した受信レポートを受信する。
【００７６】
受信レポート解析部６０６は、受信レポート受信部６０５で受信した受信レポートから音声品質制御に必要なネットワークの状態を示す変数を算出する。
【００７７】
音声品質制御部６０２は、受信端末６１１から送信された受信レポートの解析結果に基づいて利用するネットワークに最適な音声データのビットレートと単位時間当たりの音声パケット送信数を算出する。より具体的には、音声品質制御部６０２は、受信レポート解析部６０６の解析結果に基づいて、利用するネットワークに最適な音声データのビットレートと単位時間当たりの音声パケット送信数を算出する。
【００７８】
図７を参照して、実施例２における音声品質制御部６０２について説明する。図７に示すように、音声品質制御部６０２は、見かけの送信レート算出手段７１１、実行可能解算出手段７１２、及び最適解算出手段７１３を有する。これらの接続関係について実施例１と同様である。但し、見かけの送信レート算出手段７１１には受信レポート解析部６０６の出力が入力される。
【００７９】
見かけの送信レート算出手段７１１は、受信レポート解析部７０２にて算出した音声品質制御に必要なネットワークの状態を示す変数からネットワークの最大スループットに対する送信レートの割合を算出する。
【００８０】
実行可能解算出手段７１２は、送信レートの割合から実行可能な音声データのビットレートと単位時間当たりの音声パケット送信数の組の集合を算出する。
【００８１】
最適解算出手段７１３は、実行可能な音声データのビットレートと単位時間当たりの音声パケット送信数の組の集合最適な実行可能な音声データのビットレートと単位時間当たりの音声パケット送信数の組をただ１組算出する。
【００８２】
なお、本実施例では、第１算出手段は、見かけの送信レート算出手段７１１及び実行可能解算出手段７１２で構成される。第２算出手段は、実行可能解算出手段７１２で構成される。
【００８３】
図８を参照して、実施例２における見かけの送信レート算出手段の構成について説明する。図８に示すように、見かけの送信レート算出手段７１１は、状態評価関数算出部８１１、差分処理部８１２、ＰＩＤ補償器８１３、及び積分処理部３１３を有する。積分処理部３１３の構成及び動作は実施例１と同様である。
【００８４】
状態評価関数算出部８１１の出力は、差分処理部３１１の入力に接続される。なお、状態評価関数算出部８１１の入力には、受信レポート解析部６０６の出力が接続される。
【００８５】
図６乃至図８を参照して、送信端末６０１の動作について詳細に説明する。
【００８６】
受信レポート受信部６０５は、受信端末６１１が送信した受信レポートを受信し、受信レポート解析部６０６に受信レポートを転送する。受信レポート解析部６０６では、この受信レポートを解析し、音声品質制御部６０２で必要となるネットワークの状態を示す変数を算出する。
【００８７】
受信レポートがＲＦＣ３５５０で規定されているＲＴＣＰである場合、受信レポートからは複数種の情報（パケットロス率、パケットロス数、受信端末６１１がこの受信レポートを送信する直前に受信した音声パケットの最大拡張シーケンス番号、パケット間隔ジッタ、送信端末６０１が送信した送信レポートのうち最新の送信レポートのタイムスタンプ、前記最新送信レポート受信時からの経過時間）が得られる。
【００８８】
受信レポートの情報に基づいて、ネットワーク１２１内に蓄積されている音声パケットサイズ、受信端末６１１の音声パケット受信レート、エンド‐エンド遅延量の推定値等を算出することができる。
【００８９】
ネットワーク１２１内に蓄積されている音声パケットサイズは、ネットワーク１２１に蓄積されている音声パケットの個数から算出される。なお、ネットワーク１２１に蓄積されている音声パケットの個数は、受信レポートを受信した直前に送信した音声パケットのシーケンス番号と受信レポートに記載されている最大シーケンス番号との差を算出することで求められる。
【００９０】
受信端末６１１の音声パケット受信レートは、次のように算出することができる。まず、２つの受信レポート間で受信端末６１１が受信した音声パケットの個数を受信レポートに記載されている最大拡張シーケンス番号の差から算出する。次に、最大拡張シーケンス番号の差から２つの受信レポート間で受信端末６１１が受信した音声パケットサイズを算出する。次に、音声パケットサイズを２つの受信レポート間の時間差で割る。このようにして、２つの受信レポート間で受信端末６１１が受信した音声パケットの受信レートを算出することができる。
【００９１】
エンド‐エンド遅延量の推定値を算出するには、ネットワーク１２１に蓄積されている音声パケットサイズを受信端末６１１の音声パケット受信レートで割ることにより、エンド‐エンド遅延量の推定値を算出することができる。
【００９２】
受信レポート解析部６０６は、上述の手順により得られるエンド‐エンド遅延量の推定値Ｄ、パケットロス率Ｌ、パケット間隔ジッタＴをネットワークの状態を示す変数として音声品質制御部６０２に通知する。このとき状態変数θを式１０のように定義し、音声品質制御部６０２への入力は状態変数θとする。
θ＝［Ｄ  Ｌ  Ｔ］ｔ        (式10)
【００９３】
受信レポート解析部６０６の出力は、音声品質制御部６０２の見かけの送信レート算出手段７１１に入力される。
【００９４】
見かけの送信レート算出手段７１１は、状態変数θからネットワークの最大スループットに対する送信レートの割合（見かけの送信レート）を算出する。見かけの送信レート算出手段７１１の出力は、実施例１と同様の実行可能解算出手段２１３に入力される。実行可能解算出手段２１３は、見かけの送信レートから実行可能な（ｘ、ｙ）の集合を算出する。実行可能解算出手段２１３の出力は、実施例１と同様の最適解算出手段２１４に入力される。
【００９５】
最適解算出手段２１４は、実行可能な（ｘ、ｙ）の集合からできる限り音質を高く、且つできる限りエンド‐エンド遅延量を小さくする（ｘ＊、ｙ＊）を算出する。
【００９６】
図８を参照して、見かけの送信レート算出手段７１１の動作について説明する。
【００９７】
まず、状態評価関数算出部８１１は、状態変数θに基づいて状態評価関数Ｖ（θ）を算出する。尚、状態評価関数Ｖとは、エンド‐エンド遅延量の推定値Ｄ、パケットロス率Ｌ、パケット間隔ジッタＴを考慮した場合にネットワークの状態を評価するための非負のスカラ関数である。
【００９８】
状態評価関数算出部８１１は、ネットワーク状態が良好である程、Ｖの値が０に近づくように設定する。例えば、式１１のようにＶを定義できる。このＶは、状態評価関数をなす。ただし、Ａは、３×３の正定行列であり、エンド‐エンド遅延量の推定値Ｄ、パケットロス率Ｌ、パケット間隔ジッタＴのいずれの評価指標に重きを置くかを定める。例えば、Ａ＝ａｉｊ（ｉ＝１〜３、ｊ＝１〜３）をａ１１＝ｗｄ＞０、ａ２２＝ｗｌ＞０、ａ３３＝ｗｔ＞０、ａｉｊ＝０（ｉ≠ｊ）とすると、Ａは正定行列であり、ｗｄ、ｗｌ、ｗｔはそれぞれエンド‐エンド遅延量の推定値Ｄ、パケットロス率Ｌ、パケット間隔ジッタＴの状態評価に関する重みを示すことになる。
Ｖ（θ）＝θｔＡθ        (式11)
【００９９】
次に、状態評価関数の目標値Ｖｒを定めておき、差分処理部８１２にてＶｒとＶの差分ｅ＝Ｖｒ−Ｖ（θ）を算出する。
【０１００】
ＰＩＤ補償器８１３は、状態評価関数目標値Ｖｒに近づける制御を実現させるにＶ（θ）を設定する。具体的には、ＰＩＤ補償器８１３は、差分処理部８１２で算出されるｅ＝Ｖｒ−Ｖ（θ）を０に近づける制御を実現させるにＶ（θ）を設定する。
【０１０１】
この制御により、エンド‐エンド遅延量が目標値より大きい場合、見かけの送信レートを下げる方向に制御がはたらく。その結果、音声品質を下げることで、エンド‐エンド遅延量を目標値に近づけることができる。
【０１０２】
エンド‐エンド遅延量が目標値より小さい場合、見かけの送信レートを上げる方向に制御がはたらき、その結果、音声品質が向上する。尚、状態評価関数Ｖ（θ）が状態評価関数目標値Ｖｒに近づけるような制御は、ＰＩＤ補償器８１３以外の任意の制御器でも実現可能である。ＰＩＤ補償器８１３では、制御の結果、Ｕｒの増分ΔＵｒを算出する。
【０１０３】
ＰＩＤ補償器８１３の出力は、積分処理部３１３に入力される。積分処理部３１３では、ΔＵｒを積分することにより見かけの送信レートＵｒを算出する。ΔＵｒおよびＵｒの算出式は式５および式６と同様である。
【０１０４】
積分処理部３１３の出力が入力される実行可能解算出手段２１３の動作は実施例１と同様である。最適解算出手段２１４の動作も実施例１と同様である。音声パケット生成部１０３、音声パケット送信部１０４についても同様である。
【０１０５】
尚、ここまで、状態変数が式８のような３次元の場合を考えてきた。しかし、状態変数をｎ次元に拡張した場合も同様にして見かけの送信レートＵｒを算出することができる。
【０１０６】
最後に、受信端末６１１の動作について補足的に説明する。
【０１０７】
音声パケット受信部６１２では、送信端末６０１が送信した音声パケットを受信し、前記受信した音声パケットを音声パケット処理部６１３に引き渡す。また、それと同時に、音声パケット受信部６１２は、複数種類の情報（音声パケットの受信時刻、前回の音声パケット受信時刻と今回の音声パケット受信時刻との差分、ある期間に受信した音声パケットの数等受信レポートに必要な情報）を受信レポート生成部６１４に引き渡す。尚、音声パケットがＲＴＰにてパケット化されている場合は、受信した音声パケットのタイムスタンプ、シーケンス番号等も受信レポートに引き渡す。
【０１０８】
音声パケット処理部６１３の動作は、本発明の第１の発明における音声パケット処理部と同様の動作である。
【０１０９】
受信レポート生成部６１４では、前記音声パケット受信部６１２から受け取る音声パケットの受信時刻、前回の音声パケット受信時刻と今回の音声パケット受信時刻との差分、タイムスタンプ、シーケンス番号等を基に受信レポートを生成する。
【０１１０】
受信レポートがＲＴＣＰである場合、パケットロス率、パケットロス数、受信端末６１１がこの受信レポートを送信する直前に受信した音声パケットの最大拡張シーケンス番号、パケット間隔ジッタ、送信端末６０１が送信した送信レポートのうち最新の送信レポートのタイムスタンプ、前記最新送信レポート受信時からの経過時間をＲＴＣＰの受信レポートに記述する。
【０１１１】
受信レポート送信部６１５では、前記受信レポート生成部６１４で生成した受信レポートを送信端末６０１に向けて送信する。
【０１１２】
上述の説明から明らかなように、本実施例においても、実施例１で説明したものと同様の効果を得ることができる。なお、受信レポートを活用することによって、より精度よくネットワークにおけるデータ伝送状態を評価することができる。
【０１１３】
本発明は上述した実施の形態のみに限定されるものではなく、既に述べた本発明の要旨を逸脱しない範囲において種々の変更が可能である。音声データに限らず、リアルタイム性が要求される他の種類のデータ（映像データ）にも活用することができる。本発明は、コンピュータプログラム、電話機、装置、システムといった様々な用途に適用できる。音声品質制御部はソフトウェア及び／又はハードウェアによって適宜具現化することが可能である。
【図面の簡単な説明】
【０１１４】
【図１】本発明の実施例１にかかる通信システムの概略的な構成図である。
【図２】本発明の実施例１にかかる音声品質制御部の概略的な構成図である。
【図３】本発明の実施例１にかかる最大スループットとＰＰＳとの関係図である。
【図４】本発明の実施例１にかかる見かけの送信レート算出手段の構成図である。
【図５】本発明の実施例１にかかる音声品質とエンド‐エンド遅延量との関係図である。
【図６】本発明の実施例２にかかる通信システムの概略的な構成図である。
【図７】本発明の実施例２にかかる音声品質制御部の概略的な構成図である。
【図８】本発明の実施例２にかかる見かけの送信レート算出手段の概略的な構成図である。
【符号の説明】
【０１１５】
１    通信システム
１０１    送信端末
１０２    音声品質制御部
１０３    音声パケット生成部
１０４    音声パケット送信部
１１１    受信端末
１１２    音声パケット受信部
１１３    音声パケット処理部
１２１    ネットワーク
２０１    音声品質制御部
２１１    エンド遅延量推定手段
２１２    送信レート算出手段
２１３    実行可能解算出手段
２１４    最適解算出手段
３０１    送信レート算出手段
３１１    差分処理部
３１２    補償器
３１３    積分処理部
【図１】
0004973453.tif 000002
【図２】
0004973453.tif 000003
【図３】
0004973453.tif 000004
【図４】
0004973453.tif 000005
【図５】
0004973453.tif 000006
【図６】
0004973453.tif 000007
【図７】
0004973453.tif 000008
【図８】
0004973453.tif 000009