(57)【特許請求の範囲】
【請求項１】
ネットワークの状況を測定する測定手段と、
該ネットワークの状況に適応した伝送速度で伝送できるように、該ネットワークの状況に応じて画像伝送プロトコルのパラメータを動的に制御する制御手段とを具備し、
該制御手段は初期ウィンドウサイズを固定にするか可変にするかを設定する手段を具備し、該初期ウィンドウサイズが固定に設定された時には前記パラメータであるコネクション数のみを第１の処理負荷を基に動的に制御し、前記初期ウィンドウサイズが可変に設定された時には、前記パラメータである初期ウィンドウサイズ、パケットサイズおよびコネクション数を、該初期ウィンドウサイズについては前記第１の処理負荷とは異なる第２の処理負荷を基に、該パケットサイズについては実効ウィンドウサイズを基に、該コネクション数については前記第１の処理負荷を基に、動的に制御することを特徴とする画像伝送プロトコル制御装置。
【請求項２】
前記実効ウィンドウサイズＷＳｅｆｆは、パケットロス率をＰＬＲ、往復遅延時間をＤＴ、コネクション数をＣＮおよびスループットをＴＰとするとき、下式により求められることを特徴とする請求項１に記載の画像伝送プロトコル制御装置。
ＴＰ＝ＷＳｅｆｆ・１／ＤＴ・ＣＮ・（１−ＰＬＲ）２
【請求項３】
前記第１の処理負荷は、初期ネゴシエーション時間であることを特徴とする請求項１または２に記載の画像伝送プロトコル制御装置。
【請求項４】
前記第２の処理負荷は、メモリ消費量およびＣＰＵ負荷量の少なくとも一つであることを特徴とする請求項１ないし３のいずれかに記載の画像伝送プロトコル制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は画像伝送プロトコル制御装置に関し、特に画像伝送プロトコルのパラメータを動的に制御し、スループットを最適化する画像伝送プロトコル制御装置に関する。
【０００２】
【従来の技術】
ＩＰネットワークにおける画像ファイル伝送の諸問題を解決するために、画像伝送プロトコルである「ＳＶ（Stream  Video）ＦＴＰプロトコル」が開発された。該ＳＶＦＴＰプロトコルには、コネクション数（ＣＮ）、初期ウィンドウサイズ（ＷＳmax）、パケットサイズ（ＰＳ）等の各種パラメータが用意されている。なお、該ＳＶＦＴＰプロトコルの関連特許として、本出願人の特許出願である、特開２０００−３２２３０９号公報、特開２００１−２４７３３号公報等がある。
【０００３】
【発明が解決しようとする課題】
従来は、ＳＶＦＴＰプロトコルのパラメータであるパケットサイズは、通信開始以前に設定されており、通信途中で変化させることはできなかった。このため、通信途中で通信環境が悪化した場合に、スループットの低下を抑制できないという問題があった。また、コネクション数についても、手動で変化させることができるものの、通信状況に適応的に自動制御することはできないという問題があった。
【０００４】
本発明の目的は、前記した従来技術の問題点を解消し、通信途中で通信環境が変動しても、コンピュータの処理負荷を考慮しつつスループットを最適化できる画像伝送プロトコル制御装置を提供することにある。また、他の目的は、初期ウィンドウサイズ、コネクション数等のパラメータを、通信状況に応じて適応的に自動制御できる画像伝送プロトコル制御装置を提供することにある。
【０００５】
【課題を解決するための手段】
前記した目的を達成するために、本発明は、ネットワークの状況を測定する測定手段と、該ネットワークの状況に適応した伝送速度で伝送できるように、該ネットワークの状況に応じて画像伝送プロトコルのパラメータを動的に制御する制御手段とを具備し、該制御手段は初期ウィンドウサイズを固定にするか可変にするかを設定する手段を具備し、該初期ウィンドウサイズが固定に設定された時には前記パラメータであるコネクション数のみを第１の処理負荷を基に動的に制御し、前記初期ウィンドウサイズが可変に設定された時には、前記パラメータである初期ウィンドウサイズ、パケットサイズおよびコネクション数を、該初期ウィンドウサイズについては前記第１の処理負荷とは異なる第２の処理負荷を基に、該パケットサイズについては実効ウィンドウサイズを基に、該コネクション数については前記第１の処理負荷を基に、動的に制御するようにした点に特徴がある。
【０００６】
この特徴によれば、通信環境に適応したパラメータを常に選定できるようになり、スループットの最適化を図れるようになる。
【０００８】
【発明の実施の形態】
以下に、図面を参照して、本発明を詳細に説明する。図１は、本発明の画像伝送プロトコル制御装置の概略の構成を示すブロック図である。
【０００９】
図において、初期値設定部１は、ＳＶＦＴＰのパラメータである初期ウィンドウサイズＷＳmax、パケットサイズＰＳ、およびコネクション数ＣＮの初期値を設定する。測定部２は、ネットワーク６からパケットロス率ＰＬＲ、往復遅延時間ＤＴ、およびスループットＴＰを測定する。制御部３は、スループットを改善し、画像伝送の効率を最適化させるために、前記各種のパラメータを、通信途中で通信状態に適応して、動的に制御する。該制御部３は、本発明の特徴部分であり、測定パラメータ記憶部３ａ、初期ウィンドウサイズＷＳmaxを可変にするか固定にするかを設定する設定部３ｂ、初期ウィンドウサイズＷＳmax可変部３ｃ、コネクション数ＣＮ可変部３ｄ、スループットＴＰ改善効果計算部３ｅ等を含んでいる。パラメータ設定部４は、前記初期値設定部１または制御部３からの指令により、各種のパラメータの設定を行う。伝送部５は、該パラメータ設定部４で設定されたパラメータに基づいて、画像ファイルの伝送を行う。
【００１０】
次に、図１の装置の動作を、図２のフローチャートを参照して詳細に説明する。ステップＳ１では、ＩＰパケットロス率ＰＬＲ、往復遅延時間ＤＴ、およびスループットＴＰの初期値の決定に役立つような通信を前処理として伝送開始前に、一度行う。ステップＳ２では、ＳＶＦＴＰのパラメータである初期ウィンドウサイズＷＳmax、パケットサイズＰＳ、およびコネクション数ＣＮの初期値を設定する。例えば、ＷＳmax＝８ｋＢ、ＰＳ＝１０００Ｂ、ＣＮ＝１と設定する。ステップＳ３では、該初期値を基に、例えば画像ファイルの伝送を開始する。
【００１１】
ステップＳ４では、前記測定部２がＩＰパケットロス率ＰＬＲ、往復遅延時間ＤＴ、およびスループットＴＰを測定する。ステップＳ５では、初期ウィンドウサイズＷＳmaxが固定に設定されているか、あるいは可変に設定されているかの判断をする。固定に設定されている場合（ステップＳ５の判断が肯定）には、ステップＳ１６へ進む。一方、可変に設定されている場合（ステップＳ５の判断が否定）には、ステップＳ６へ進む。
【００１２】
ステップＳ６では、ＩＰパケットロス率ＰＬＲがある一定値Ｃ1（例えば、１０−３）以上であるか否かの判断がなされる。この判断が肯定の場合にはステップＳ７に進み、否定の場合には、ステップＳ１６へ進む。ステップＳ７では、処理負荷、例えばメモリ消費量を取得する。ステップＳ８では、該メモリ消費量がある一定値Ｃ2より小さいか否かの判断がなされる。
【００１３】
この判断が肯定の時には伝送効率が良いと判断されるので、ステップＳ９に進んで、初期ウィンドウサイズＷＳmaxが拡大される。例えば、２倍に拡大される。前記ステップＳ８の判断が否定の時にはステップＳ１０に進んで処理負荷が前記一定値Ｃ2に等しいか否かの判断がなされる。この判断が肯定の時には、ステップＳ１１に進んで初期ウィンドウサイズＷＳmaxは維持される。一方、前記ステップＳ１０の判断が否定の時、すなわち、前記処理負荷が前記一定値Ｃ2より大きいときには伝送効率が悪いと判断されるので、初期ウィンドウサイズＷＳmaxは縮小される。例えば、１／２に縮小される。初期ウィンドウサイズＷＳmaxは、例えば、
８１９２Ｂ（バイト）、１６３８４Ｂ（バイト）、３２７６８Ｂ（バイト）および６５５３５Ｂ（バイト）から選ばれる。
【００１４】
ステップＳ１３では、前記測定部２がＩＰパケットロス率ＰＬＲ、往復遅延時間ＤＴ、およびスループットＴＰを測定する。ステップＳ１４では、実効ウィンドウサイズＷＳeffを取得する。該ＷＳeffは、下記の（1）式から求めることができる。
ＴＰ＝ＷＳeff・１／ＤＴ・ＣＮ・（１−ＰＬＲ）２  ・・・(1)
例えば、ＴＰ＝０．２０７Ｍｂ／秒、ＤＴ＝２００ｍ秒、ＣＮ＝１、ＰＬＲ＝１０−２ とすると、ＷＳeff＝５２８０．１Ｂ（バイト）となる。なお、前記(1)式は、本発明者が創出した理論式である。
【００１５】
ステップＳ１５では、前記実効ウィンドウサイズＷＳeffを基に、パケットサイズＰＳを決定する。例えば、ＷＳeff＝１５８０ｋＢの時には、その約数１５８０ｋＢ／ｎ∈Ｎ（ｎは自然数、Ｎは自然数の集合、すなわちＮ＝１，２，３，４，５，・・・）がＰＳの候補とされ、前記ＩＰパケットロス率ＰＬＲが大であれば、小さなＰＳに決定され、ＩＰパケットロス率ＰＬＲが小であれば、大きなＰＳに決定される。
【００１６】
以上のように、ステップＳ６〜Ｓ１５によれば、初期ウィンドウサイズＷＳmaxとパケットサイズＰＳを、通信途中で通信状態に適応して、動的に制御することができる。
【００１７】
次に、ステップＳ１６では、前記ステップＳ７と同様に、処理負荷、例えばＳＶＦＴＰの初期ネゴシエーション時間を取得し、記憶する。図３のステップＳ１７では、前回の初期ネゴシエーション時間との差がある一定値Ｃ3、例えば１秒より小さいかどうかの判断がなされる。この判断が肯定の時には、伝送速度は速いので、ステップＳ１８に進んで、コネクション数ＣＮを１増加する。一方、該処理負荷が一定値Ｃ3に等しい時には、コネクション数ＣＮは維持する。また、該処理負荷が一定値Ｃ3より大きい時には、ステップＳ２１に進んでコネクション数ＣＮが１減少される。ステップＳ２２では、コネクション数ＣＮを調整した後、スループットＴＰ’が測定される。ステップＳ２３では、伝送中であるか否かの判断がなされ、この判断が肯定であればステップＳ２４に進んでスループットＴＰが改善されたか否かの判断がなされる。そして、例えば、ＴＰ’−ＴＰ≧ａＭｂ／秒または増加率（ＴＰ’−ＴＰ）≧ｂ％（例えば、ａ＝０．１、ｂ＝５）が成立すれば、改善効果ありと判断して、ステップＳ２５に進む。一方、前記条件が不成立の時には、ステップＳ２６に進む。ステップＳ２５では、ｔ秒が経過したか否かの判断がなされ、経過すると前記ステップＳ４に戻って、前記した動作が繰り返される。
【００１８】
一方、ステップＳ２６では、Ｔ秒が経過したか否かが判断され、この判断が肯定になると、ステップＳ２７に進んで、伝送が終了したか否かの判断がなされる。この判断が否定の時には、ステップＳ２８に進んで、通信の状況に変動が起きたか否かの判断がなされる。変動が起きたときには前記ステップＳ４に戻って、前記した動作が繰り返される。なお、通信の状況の変動とは、パラメータが不適当で、ネットワーク環境に見合ったスループットが出ていないこと、もしくは処理負荷が大きいことを示す。一方、変動が起きなかった場合には、前記ステップＳ２６に戻って、伝送を継続する。ステップＳ２７の判断が肯定になると、画像伝送プロトコル制御の動作を終了する。
【００１９】
以上のように、本実施形態によれば、初期ウィンドウサイズ、コネクション数等のパラメータを、通信状況に応じて適応的に自動制御できるようになる。
【００２０】
次に、本発明の第２実施形態を図４、図５を参照して説明する。図４は、本実施形態の構成を示すブロック図、図５は、本実施形態の動作を説明するフローチャートである。
【００２１】
図４において、ＣＰＵ負荷監視部１０は、通信途中で、コンピュータの処理負荷を随時監視する。このＣＰＵ負荷監視部１０としては、コンピュータに既設の手段を用いることができる。ＣＮ制御部１１は、コネクション数ＣＮをＣＰＵ負荷の状態に適応して、動的に制御する。なお、他の符号は、図１と同一又は同等物を示す。
【００２２】
次に、本実施形態の動作を、図５を参照して説明する。図５において、図２と同じ符号は同一の動作であるので、説明を省略する。ステップＳ３１では、前記ＣＰＵ負荷監視部１０はＣＰＵ負荷を測定し、ＣＮ制御部１１に通知する。ステップＳ３２では、ＣＮ制御部１１は、該ＣＰＵ負荷が予め定められたＣ1より小さいか否かの判断をする。この判断が肯定の場合には、ＣＰＵ負荷は軽くＣＰＵの処理能力に余裕があるので、ステップＳ３３に進み、コネクション数ＣＮを１増加する。一方、ステップＳ３２の判断が否定の時にはステップＳ３４に進んで、ＣＰＵ負荷が、Ｃ1≦ＣＰＵ負荷≦Ｃ2（例えば、Ｃ1＝１５，Ｃ2＝２０）を満足するか否かの判断がなされる。
【００２３】
ステップＳ３４の判断が肯定の時には、ＣＰＵ負荷は所定の範囲内にあるので、ステップＳ３５に進み、コネクション数ＣＮは現状維持される。ステップＳ３４が否定の時には、ＣＰＵ負荷は重くＣＰＵの処理能力の限界に近い、又は処理能力を超えているので、ステップＳ３６に進んで、コネクション数ＣＮは１減じられる。続いて、ステップＳ３７に進み、伝送が終了したか否かの判断がなされ、この判断が否定になるとステップＳ３１に戻って前記した処理が継続される。ステップＳ３７の処理が肯定になると、画像伝送プロトコル制御の動作を終了する。
【００２４】
以上のように、本実施形態によれば、コネクション数ＣＮを、ＣＰＵ負荷に応じて適応的に自動制御することができるようになる。なお、ここでは、第２実施形態を前記第１実施形態とは切り離して説明したが、この第２実施形態は、第１実施形態に付加されてもよい。
【００２５】
【発明の効果】
以上の説明から明らかなように、本発明によれば、ネットワークの状況に適応するように、パラメータを動的に制御することができるので、従来方式に比べてスループットの最適化を図ることができるようになる。また、画像伝送を効率よく行えるようになる。また、通信途中で通信環境が変動しても、スループットを最適化できるようになる。
【００２６】
また、ネットワーク処理負荷が変化する場合でも、ＣＰＵ負荷を一定範囲内に納めて、コネクション数を動的に制御することができ、かつスループットの向上が図れるので、従来方式に比べてＣＰＵ負荷を考慮した効率的な画像伝送を行えるようになる。
【図面の簡単な説明】
【図１】  本発明の一実施形態の概略の構成を示すブロック図である。
【図２】  本実施形態の動作を説明するフローチャートである。
【図３】  図２の続きのフローチャートである。
【図４】  本発明の第２実施形態の構成を示すブロック図である。
【図５】  第２実施形態の動作を示すフローチャートである。
【符号の説明】
１・・・初期値設定部、２・・・測定部、３・・・制御部、４・・・パラメータ設定部、５・・・伝送部、６・・・ネットワーク、１０・・・ＣＰＵ負荷監視部、１１・・・ＣＮ制御部。
【図１】
0004666446.tif 000002
【図２】
0004666446.tif 000003
【図３】
0004666446.tif 000004
【図４】
0004666446.tif 000005
【図５】
0004666446.tif 000006