(57)【特許請求の範囲】
【請求項１】
送信装置のデータ送信方法であって、
受信装置からデータの受信情報を受信するステップと、
前記送信装置の運営体制上にインストールされた仮想マシン上で、前記受信情報に基づいて、次の送信率を算定するステップと、
前記次の送信率に応じてデータを送信するステップと、
を含むデータ送信方法。
【請求項２】
前記次の送信率を算定するステップは、
データパケットの数に基づいて、受信率変化増減率を算定するステップと、
前記受信率変化増減率、現在送信率及び伝達率に基づいて、前記次の送信率を算定するステップと、を含み、
前記伝達率は、次の式
【数１】
0005362801.tif 000009
によって算定され、
式中、ＤＲｉは、ｉ時点での伝達率、ＲａｔｅＳｉは、ｉ時点での送信率、ＲａｔｅＡｉは、ｉ時点での受信率であることを特徴とする請求項１に記載のデータ送信方法。
【請求項３】
前記受信率変化増減率は、次の式
【数２】
0005362801.tif 000010
により算定され、
式中、ＧＡＲＣｉは、前記受信率変化増減率、Ｇｉは、ｉ時点で受信率変化程度、Ｇｉ−１は、ｉ時点より以前時点であるｉ−１時点での受信率変化程度、Ａｉは、ｉ時点での受信率、Ａｉ−１は、ｉ−１時点での受信率、ΔＴｉは、ｉ時点とｉ−１時点との時間差、ΔＴｉ−１は、ｉ−１時点とｉ−２時点との時間差であることを特徴とする請求項２に記載のデータ送信方法。
【請求項４】
前記伝達率は、次の式
【数３】
0005362801.tif 000011
により算定される平均伝達率であり、
式中、ＡＤＲｉは、ｉ時点での平均伝達率、ＤＲｉは、ｉ時点での伝達率、ＤＲｉ−１は、ｉ−１時点での伝達率、ＤＲｉ−２は、ｉ−２時点での伝達率、α、β及びγは、各伝達率に割り当てられる加重値であることを特徴とする請求項２に記載のデータ送信方法。
【請求項５】
前記送信率は、次の式
【数４】
0005362801.tif 000012
により算定され、
式中、ＲａｔｅＳｉ＋１は、ｉ＋１時点で使用される送信率、ＲａｔｅＳｉは、ｉ時点で使用される送信率、ＧＡＲＣｉは、パケットの受信率変化増減率、ＡＤＲｉは、平均伝達率、ｋは、＋１及び−１のうちの何れか一つ、ＳＴＥＰは、ネットワークの環境によって変わる変数であることを特徴とする請求項１に記載のデータ送信方法。
【請求項６】
データを送信するための装置であって、
受信装置からデータの受信情報を受信する受信部と、
前記受信部が前記受信装置からデータの受信情報を受信する動作は、前記データの送信のための装置の運営体制上にインストールされた仮想マシン上で行われ、
前記受信情報に基づいて、次の送信率を算定する制御部と、
前記次の送信率に応じて、パケットを送信する通信部と、
を備えるデータ送信装置。
【請求項７】
前記制御部は、前記受信情報に含まれたパケットの数に基づいて受信率変化増減率を算定し、前記受信率変化増減率と現在伝送率に基づいて前記次の送信率を算定し、
前記受信率変化増減率は、次の式
【数５】
0005362801.tif 000013
により算定され、
式中、ＧＡＲＣは、前記受信率変化増減率、Ｇｉは、ｉ時点での受信率変化程度、Ｇｉ−１は、ｉ時点より以前時点であるｉ−１時点での受信率変化程度、Ａｉは、ｉ時点での受信率、Ａｉ−１は、ｉ−１時点での受信率、ΔＴｉは、ｉ時点とｉ−１時点との時間差、ΔＴｉ−１は、ｉ−１時点とｉ−２時点との時間差であることを特徴とする請求項６に記載のデータ送信装置。
【請求項８】
前記制御部は、
前記受信率変化増減率、現在送信率及び伝達率に基づいて前記次の送信率を算定し、
前記伝達率は、次の式
【数６】
0005362801.tif 000014
により算定され、
式中、ＤＲｉは、ｉ時点での伝達率、ＲａｔｅＳｉは、ｉ時点での送信率、ＲａｔｅＡｉは、ｉ時点での受信率であることを特徴とする請求項７に記載のデータ送信装置。
【請求項９】
前記伝達率は、次の式
【数７】
0005362801.tif 000015
により算定される平均伝達率であり、
式中、ＡＤＲｉは、ｉ時点での平均伝達率、ＤＲｉは、ｉ時点での伝達率、ＤＲｉ−１は、ｉ−１時点での伝達率、ＤＲｉ−２は、ｉ−２時点での伝達率、α、β及びγは、各伝達率に割り当てられる加重値であることを特徴とする請求項８に記載のデータ送信装置。
【請求項１０】
前記送信率は、次の式
【数８】
0005362801.tif 000016
により算定され、
ここで、Ｒａｔｅｓｉ＋１は、ｉ＋１時点で使用される送信率、Ｒａｔｅｓｉは、ｉ時点で使用される送信率、ＧＡＲＣｉは、パケットの受信率変化増減率、ＡＤＲｉは、平均伝達率、ｋは、＋１及び−１のうちの何れか一つ、ＳＴＥＰは、ネットワークの環境に応じて変わる変数であることを特徴とする請求項６乃至９の何れか１項に記載のデータ送信装置。
【請求項１１】
前記パケットの受信率が増加する場合には、ｋは、＋１であり、前記パケットの受信率が減少する場合には、ｋは、−１であることを特徴とする請求項１０に記載のデータ送信装置。
【請求項１２】
受信装置に送信するデータの送信率を制御する方法であって、
前記受信装置のデータ受信率が増加すると、前記受信装置に送信するデータの送信率を増加させるステップと、
前記受信装置のデータ受信率が減少すると、前記受信装置に送信するデータの送信率を減少させるステップと、を含み、
前記データ送信率の増加幅は、前記データ伝達率に比例し、
前記データ送信率の減少幅は、前記データ伝達率に反比例することを特徴とするデータ送信率制御方法。
【請求項１３】
前記増加幅は、
前記データの平均伝達率と前記受信率との変化増減率に比例し、現在のデータ送信率に反比例し、
前記減少幅は、
前記データの平均伝達率に反比例し、前記データ受信率変化増減率と現在データ送信率とに比例することを特徴とする請求項１２に記載のデータ送信率制御方法。
【請求項１４】
前記受信装置のデータ受信率に変化がないと、前記受信装置に送信するデータの送信率を増加させ、前記増加の幅は、前記データの平均伝達率と前記受信率の変化増減率とに比例し、現在のデータ送信率に反比例することを特徴とする請求項１２に記載のデータ送信率制御方法。
【請求項１５】
時刻ｔでのデータ送信率決定方法であって、
時刻ｔ−Ｔでのデータ受信率と、時刻ｔ−２Ｔでのデータ受信率をそれぞれ算定するステップと、
時刻ｔ−Ｔでのデータ受信率が時刻ｔ−２Ｔでのデータ受信率より大きな場合には、時刻ｔでのデータ送信率を時刻ｔ−Ｔでのデータ送信率より所定増加幅分だけ大きな値に決定するステップと、
時刻ｔ−Ｔでのデータ受信率が時刻ｔ−２Ｔでのデータ受信率より小さな場合には、時刻ｔでのデータ送信率を時刻ｔ−Ｔでのデータ送信率より所定減少幅分だけ小さな値に決定するステップと、を含み、
前記Ｔは、送信率の制御周期であり、
前記増加幅は、前記時刻ｔ−Ｔでのデータ送信率に反比例し、
前記減少幅は、前記時刻ｔ−Ｔでのデータ送信率に比例することを特徴とするデータ送信率決定方法。
【請求項１６】
時刻ｔ−Ｔでのデータ受信率が時刻ｔ−２Ｔでのデータ受信率と同じである場合に、時刻ｔでのデータ送信率を、時刻ｔ−Ｔでのデータ送信率より所定増加幅分だけ大きな値に決定するステップをさらに含むことを特徴とする請求項１５に記載のデータ送信率決定方法。
【請求項１７】
前記増加幅は、前記時刻ｔ−Ｔでのデータ送信率に反比例し、データ伝達率に比例し、
前記減少幅は、前記時刻ｔ−Ｔでのデータ送信率に比例し、データ伝達率に反比例することを特徴とする請求項１５に記載のデータ送信率決定方法。
【請求項１８】
前記増加幅は、
前記データの平均伝達率と前記受信率の変化増減率とに比例し、時刻ｔ−Ｔでのデータ送信率に反比例し、
前記減少幅は、
前記データの平均伝達率に反比例し、前記データ受信率変化増減率と時刻ｔ−Ｔでのデータ送信率とに比例することを特徴とする請求項１５に記載のデータ送信率制御方法。
【請求項１９】
請求項１乃至５及び１２乃至１８の何れか１項に記載の方法をコンピュータに実行させるためのプログラム。
【請求項２０】
請求項１９に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
例示的実施の形態に係る装置及び方法は、データ送信方法及び装置に関し、さらに詳細には、データ受信率に基づいて送信率を算定してデータ送信を制御できる送信方法及び装置に関する。
【背景技術】
【０００２】
ネットワーク技術が発展するにつれて、動画ファイル、音楽ファイル、停止映像ファイルなど大容量マルチメディアだけでなく、オンライン環境を介して多様な情報を共有しようとする需要が増加している。また、スマートフォンのような多様な形態のモバイルデバイスが普及するにつれて、ネットワーク使用量が増加している。このような需要は、大容量マルチメディアファイルを速く、かつ正確に送信する技術を必要とする。
【０００３】
データを送信する方式には、ＴＣＰのような信頼性基盤の方式とＵＤＰのような非信頼性基盤の方式とがあり、大量のデータを高速に送信するために非信頼性方式が好まれている傾向にある。これにより、非信頼性方式を利用してデータ送信の信頼性を保障しながらデータを高速に送信するための方法が提案されてきた。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
そこで、例示的実施の形態の一つ以上の側面によれば、ネットワークの混雑程度を予め予測してデータ送信周期を制御することによって、帯域幅を效率的に使用し、データをさらに速く送信できるデータ送信方法及び装置が提供される。
【０００５】
また、例示的実施の形態の一つ以上の側面によれば、非信頼性送信プロトコルを利用して高速にデータを送信しながら信頼性を保障できるデータ送信方法及び装置が提供される。
【課題を解決するための手段】
【０００６】
例示的実施の形態の一側面によれば、送信装置のデータ送信方法であって、受信装置からデータの受信情報を受信するステップと、前記送信装置の運営体制上にインストールされた仮想マシン上で、前記受信情報に基づいて、次の送信率を算定するステップと、
前記次の送信率に応じてデータを送信するステップと、を含むデータ送信方法が提供される。
【０００７】
また、例示的実施の形態の一側面によれば、データを送信するための装置であって、
受信装置からデータの受信情報を受信する受信部と、前記受信部が前記受信装置からデータの受信情報を受信する動作は、前記データの送信のための装置の運営体制上にインストールされた仮想マシン上で行われ、前記受信情報に基づいて、次の送信率を算定する制御部と、前記次の送信率に応じて、パケットを送信する通信部と、を備えるデータ送信装置が提供される。
【０００８】
また、例示的実施の形態の一側面によれば、受信装置に送信するデータの送信率を制御する方法であって、前記受信装置のデータ受信率が増加すると、前記受信装置に送信するデータの送信率を増加させるステップと、前記受信装置のデータ受信率が減少すると、前記受信装置に送信するデータの送信率を減少させるステップと、を含み、前記データ送信率の増加幅は、前記データ伝達率に比例し、前記データ送信率の減少幅は、前記データ伝達率に反比例することを特徴とするデータ送信率制御方法が提供される。
【０００９】
また、例示的実施の形態の一側面によれば、時刻ｔでのデータ送信率決定方法であって、時刻ｔ−Ｔでのデータ受信率と、時刻ｔ−２Ｔでのデータ受信率をそれぞれ算定するステップと、時刻ｔ−Ｔでのデータ受信率が時刻ｔ−２Ｔでのデータ受信率より大きな場合には、時刻ｔでのデータ送信率を時刻ｔ−Ｔでのデータ送信率より所定増加幅分だけ大きな値に決定するステップと、時刻ｔ−Ｔでのデータ受信率が時刻ｔ−２Ｔでのデータ受信率より小さな場合には、時刻ｔでのデータ送信率を時刻ｔ−Ｔでのデータ送信率より所定減少幅分だけ小さな値に決定するステップと、を含み、前記Ｔは、送信率の制御周期で、前記増加幅は、前記時刻ｔ−Ｔでのデータ送信率に反比例し、前記減少幅は、前記時刻ｔ−Ｔでのデータ送信率に比例することを特徴とするデータ送信率決定方法が提供される。
【００１０】
また、例示的実施の形態の一側面によれば、上述の方法のうちの何れか１つの方法をコンピュータに実行させるためのプログラムが提供される。
【００１１】
また、例示的実施の形態の一側面によれば、上述のプログラムを記録したコンピュータ読み取り可能な記録媒体が提供される。
【発明の効果】
【００１２】
ネットワーク帯域幅の混雑程度を予測して、次に送信するパケットの送信周期、すなわち、送信率を調節でき、これによりネットワークの混雑を回避しながらデータ損失幅を最小化し、效率的にデータを送信できる。
【００１３】
非信頼性基盤プロトコルを基盤としてアプリケーション層でパケットの送信周期を制御することによって送信率を高めることができ、特に、ネットワーク網を交替せずにも送信率を高めることができ、費用を低減できる。
【００１４】
ネットワーク状態を速く反映してパケットを送信することによって、仮想マシンやモバイルデバイスのようにコンピュータパワーが不足した環境でも、パケットの高速送信を可能にすることができる。
【図面の簡単な説明】
【００１５】
【図１】データ送信システムを概略的に示す図である。
【図２】例示的実施の形態に係るデータ送信装置の機能ブロック図である。
【図３】例示的実施の形態に係るデータ送信装置を説明するために提供される図である。
【図４】受信率変化増減率の算定方法を説明するための図である。
【図５】例示的実施の形態に係るデータ送信方法を説明するためのフローチャートである。
【発明を実施するための形態】
【００１６】
以上の本発明の目的、他の目的、特徴及び利点は、添付された図面と関連した以下の好ましい実施の形態により容易に理解されるはずである。しかしながら、本発明は、ここで説明される実施の形態に限定されずに他の形態で具体化されうる。むしろ、ここで紹介される実施の形態は、開示された内容が徹底かつ完全になるように、そして当業者に、本発明の思想を十分に伝達させるために提供されるものである。本明細書において、ある構成要素が他の構成要素上にあると言及される場合には、それは、他の構成要素上に直接形成されうるか、又はそれらの間に第３の構成要素が介在されうることを意味する。
【００１７】
また、あるエレメント（又は構成要素）が他のエレメント（又は構成要素）上で動作又は実行されると言及されるとき、そのエレメント（又は構成要素）は、他のエレメント（又は構成要素）が動作又は実行される環境で動作又は実行されるか、又は他のエレメント（又は構成要素）と直接又は間接的に相互作用により動作又は実行されると理解されなければならない。
【００１８】
あるエレメント、構成要素、装置、又はシステムがプログラム若しくはソフトウェアからなる構成要素を含むと言及される場合には、明示的な言及がなくても、そのエレメント、構成要素、装置、又はシステムは、そのプログラム若しくはソフトウェアが実行又は動作するのに必要なハードウェア（例えば、メモリ、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等）や他のプログラム又はソフトウェア（例えば、運営体制やハードウェアを駆動するのに必要なドライバー等）を含むと理解されなければならない。
【００１９】
また、あるエレメント（又は構成要素）が具現化されるに当たって、特別な言及がない限り、そのエレメント（又は構成要素）は、ソフトウェア、ハードウェア、又はソフトウェア及びハードウェアのうち、如何なる形態によっても具現化可能であると理解されなければならない。
【００２０】
本明細書で使用された用語は、実施の形態を説明するためのものであって、本発明を限定するものではない。本明細書において、単数形は、特に言及しない限り、複数形も含む。明細書で使用される「含む」と言及された構成要素は、一つ以上の他の構成要素の存在又は追加を排除しない。
【００２１】
以下、図面を参照して本発明を詳細に説明する。以下の特定実施の形態を述べるにおいて、様々な特定の内容は、発明をさらに具体的に説明し理解を助けるために作成された。しかしながら、本発明を理解することができる程度のこの分野における知識を有した読者は、このような様々な特定の内容がなくても使用されうることを認知できる。ある場合には、発明を述べるにおいて周知で発明と大きく関連のない部分は、本発明を説明するにおいて特別な理由なしで混乱を引き起こすことを防止するために述べないことを予め言及しておく。
【００２２】
図１は、例示的実施の形態に係るデータ送信システムを概略的に示す図である。
【００２３】
同図に示すように、データ送信システムは、第１ないし第ｎデータ送信装置１０、２０、３０及びデータ受信装置４０を備える。第１ないし第ｎデータ送信装置１０、２０、３０とデータ受信装置４０とは、ネットワークを介して有線及び／又は無線通信できる。第１ないし第ｎデータ送信装置１０、２０、３０は、データパケット（以下、「データパケット」、「データ」又は「パケット」という）データ受信装置４０に送信し、データ受信装置４０からデータ受信装置４０が受信したデータパケットに対する受信情報を受信することができる。第１ないし第ｎデータ送信装置１０、２０、３０は、受信されたデータパケットの受信情報に基づいてネットワークの状態を予測し、予測結果に基づいて次に送信するデータの送信率を算定できる。
【００２４】
一般に、データパケットの送信速度（送信率）は、ネットワークの可用帯域幅の大きさに比例するように設定されるので、データパケットの送信速度は、ネットワークの可用帯域幅と関係がある。すなわち、ネットワークの可用帯域幅が大きいと、データパケットは速く送信され、可用帯域幅が小さいと、データパケットは遅く送信される。しかしながら、一般に多数の多様な帯域幅と時間遅延特性を有したネットワークは複合的に接続されており、各ネットワークには互いに異なる量の帯域幅を使用する多くの端末装置が接続されている。接続した端末装置間の可用帯域幅はリアルタイムで変わるので、リアルタイムで可用帯域幅を推定することは困難である。
【００２５】
したがって、例示的実施の形態によれば、送信率を制御するために、可用帯域幅を最大限に使用していると判断される送信速度、すなわち、送信率を推定する方式を使用する。また、任意の送信速度でデータパケットを送信したとき、可用帯域幅を最大限に使用しているかどうかを判断するために、本実施の形態では、ネットワークの状態を表す要素を考慮する。例えば、考慮される要素は、パケット受信率及び損失率を含むことができる。
【００２６】
図２は、例示的実施の形態に係るデータ送信装置２００の機能ブロック図である。
【００２７】
図２のデータ送信装置２００は、図１の第１ないし第ｎデータ送信装置１０、２０、３０のうちの何れか一つでありうる。図２に示すように、データ送信装置２００は、通信部２１０、受信部２２０、格納部２３０及び制御部２４０を備えることができる。
【００２８】
通信部２１０は、ネットワークを介してデータ受信装置４０に、送信率算定部２４１により算定される現在送信率に応じてデータパケットを送信する。データ受信装置４０は、データパケットを送信装置２００から受信すると、受信したデータパケットに対する受信情報（以下、「データパケットの受信情報」とする）を通信部２１０に送信できる。データパケットの受信情報は、例えばデータ受信装置２００が任意時間の間に受信したパケットの数、受信情報収集時間の間隔、及びパケット受信率のうち、少なくとも何れか一つでありうる。
【００２９】
受信部２２０は、データ送信装置２００が有する運営体制上にインストールされた仮想マシン上で動作するアプリケーションでありえ、受信装置４０からパケットの受信情報を受ける動作を行うことができる。例示的実施の形態によれば、受信部２２０は、図３を参照して説明するアプリケーション部３４０に備えられうる。
【００３０】
格納部２３０は、データ送信装置２００の全般的な動作を行うのに必要なプログラム及び／又はデータを格納することができる。また、格納部２３０は、データ受信装置に送信するデータ、及び／又はデータ受信装置から受信されたデータパケットの受信情報を格納することができる。
【００３１】
制御部２４０は、格納部２３０に格納されたプログラムを利用してデータ送信装置２００の動作を制御する。例えば、制御部２４０は、受信部２２０がデータパケットの受信情報を提供されると、パケットの受信情報に基づいて、次に送信するデータの送信率（以下、「次の送信率」）を予測及び算定できる。次の送信率は、送信待機中であるデータパケットを送信する時に用いられることができる。通信部２１０は、制御部２４０の制御により、次のデータパケットを制御部２４０により算定される次の送信率を利用して送信する。
【００３２】
例示的実施の形態に係る制御部２４０は、所定の周期別に送信率を算定できる。例えば、制御部２４０が所定の周期（Ｔ［ｓｅｃ］）間隔で送信率を算定すると仮定すれば、時刻ｔ［ｓｅｃ］でのデータパケットの送信率を次のように算定できる。
【００３３】
制御部２４０は、まず、時刻ｔ−Ｔ［ｓｅｃ］でのデータ受信率と、時刻ｔ−２Ｔ［ｓｅｃ］でのデータ受信率とをそれぞれ計算し、仮に時刻ｔ−Ｔ［ｓｅｃ］でのデータ受信率が時刻ｔ−２Ｔ［ｓｅｃ］でのデータ受信率より大きいか又は同じである場合、時刻ｔ［ｓｅｃ］でのデータ送信速度（すなわち、送信率）を時刻ｔ−Ｔ［ｓｅｃ］でのデータ送信速度より所定の幅だけ増加した値として算定する。ここで、増加幅は時刻ｔ−Ｔ［ｓｅｃ］でのデータ送信率に反比例し、データの平均伝達率とデータ受信率の変化増減率に比例するように算定される。
【００３４】
一方、制御部２４０は、時刻ｔ−Ｔ［ｓｅｃ］でのデータ受信率が時刻ｔ−２Ｔ［ｓｅｃ］でのデータ受信率より小さな場合、時刻ｔ［ｓｅｃ］でのデータ送信率を時刻ｔ−Ｔ［ｓｅｃ］でのデータ送信率より所定幅だけ減少した値として算定する。ここでの減少幅は、前記データの平均伝達率に反比例し、前記データ受信率変化増減率と時刻ｔ−Ｔ［ｓｅｃ］でのデータ送信率に比例するように算定される。
【００３５】
通信部２１０は、上述したように、制御部２４０により算定された送信率に応じて送信動作を行うようになる。すなわち、通信部２１０は、受信装置のデータ受信率が増加すると、受信装置に送信するデータの送信率を所定の幅だけ増加させるようになり、受信装置のデータ受信率が減少すると、前記受信装置に送信するデータの送信率を所定の幅だけ減少させる。ここで、データ送信率の増加幅は、上述した方法によって決定されうる。
【００３６】
上述した実施の形態における制御部２４０は、周期別にデータ送信率を制御すると説明したが、これは例示に過ぎず、制御部２４０は、非周期的にデータ送信率を制御することも可能である。
【００３７】
一実施の形態に係る制御部２４０は、送信率算定部２４１を具備し、送信率算定部２４１が次に送信するデータの送信率を算定できる。例示的実施の形態によれば、送信率算定部２４１は、データパケットの数に基づいて受信率変化増減率を算定し、受信率変化増減率、現在送信率及び伝達率に基づいて次の送信率を算定できる。次の送信率を算定する具体的な方法については後述する。
【００３８】
図２の例示的実施の形態において、送信率算定部２４１は、制御部２４０に備えられると説明されたが、このような例示的構成のみに本発明的概念が限定されないことを理解しなければならない。例えば、送信率算定部２４１が制御部２４０に備えられずに独立的な構成要素として具現化できる。
【００３９】
図３は、例示的実施の形態に係るデータ送信装置２００を説明するために提供される図である。
【００４０】
図３に示すように、データ送信装置２００は、ハードウェア部３１０、運営体制部３２０、仮想マシン（Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ）３３０及びアプリケーション部３４０を備えることができる。図３には、説明の便宜上、一つの運営体制部３２０、一つの仮想マシン３３０及び一つのアプリケーション部３４０を示しており、その個数はこれに限定されない。
【００４１】
ハードウェア部３１０は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）のような格納装置、キーボード及びマウスのような入力装置、スピーカ及びディスプレイのような出力装置など、実際のハードウェア装置を備えることができる。
【００４２】
運営体制部３２０は、ハードウェア部３１０と仮想マシン３３０とのインタフェースとして機能し、アプリケーション部のプログラムがハードウェアを容易に使用できるように支援し、装置２００の効率を極大化できるようにハードウェア部及びソフトウェア資源（ｒｅｓｏｕｒｃｅ）を管理する。
【００４３】
仮想マシン３３０は、プログラムが多様な種類の運営体制で実行されうるようにする。仮想マシンの例として、Ｊａｖａ（登録商標）仮想マシンが挙げられる。
【００４４】
アプリケーション部３４０は、本発明的概念の例示的実施の形態に係る送信率を制御することができる。
【００４５】
以下、図２の送信率算定部２４１により次の送信率を算出する方法について説明する。
【００４６】
送信率算定部２４１は、データ受信装置のパケット受信率に基づく２種類の概念を利用して、ネットワークの混雑（ｃｏｎｇｅｓｔｉｏｎ）状態を予測できる。前記２種類の概念は、それぞれ伝達率（ＤＲ：Ｄｅｌｉｖｅｒｙ  Ｒａｔｅ）とパケット受信率変化の増減率（ＧＡＲＣ：Ｇｒａｄｉｅｎｔ  ｏｆ  Ａｒｒｉｖａｌ  Ｒａｔｅ  Ｃｈａｎｇｅ）である。
【００４７】
送信率算定部２４１が使用するデータパケット受信率は、データ受信装置がパケットを受信する速度を表し、データ受信装置から直接提供されるか、又はデータ受信装置により受信されたパケットの数に基づいて送信率算定部２４１で算出できる。
【００４８】
データパケット受信率に基づいて導出される伝達率（ＤＲ）又は平均伝達率（ＡＤＲ）は、単位時間当りのネットワークに流入するパケットを成功的に受信側に伝達できる能力、すなわち、現在ネットワークのパケット処理率を示す。したがって、制御部２４０は、伝達率（ＤＲ）を介して現在ネットワークの混雑程度を予測できる。また、特定時点（ｉ）の伝達率を決定するにおいて、送信率算定部２４１は、過去の状況（すなわち、以前の伝達率）を反映するために、移動平均法を使用して平均伝達率（ＡＤＲ）を使用することができる。下記式１は、伝達率（ＤＲ）を算出するための式、下記式２は、平均伝達率を算出するための式である。
【数１】
0005362801.tif 000002
式中、伝達率（ＤＲ）は、通信部２１０のパケット送信率（Ｓｅｎｄｉｎｇ  Ｒａｔｅ）に対するデータ受信装置のパケット受信率（Ａｒｒｉｖａｌ  Ｒａｔｅ）の割合である。ＤＲｉは、ｉ時点での伝達率、ＲａｔｅＳｉは、ｉ時点での送信率、ＲａｔｅＡｉは、ｉ時点でのパケット受信率である。
【数２】
0005362801.tif 000003
式中、ＡＤＲｉは、ｉ時点での平均伝達率、ＤＲｉは、ｉ時点での伝達率、ＤＲｉ−１は、ｉ−１時点での伝達率、ＤＲｉ−２は、ｉ−２時点での伝達率、α、β及びγは、各伝達率に割り当てられる加重値であって、最も最近時点にγ、最も後日時点にαが割り当てられる。ｉ時点は、現在送信率によりパケットが送信されている時点である。
【００４９】
一方、送信率算定部２４１は、パケットの受信情報がパケットの数である場合、パケットの数に基づいてパケット受信率を算定し、算定したパケット受信率に基づいて受信率変化増減率（ＧＡＲＣ）を算定できる。受信率変化増減率（ＧＡＲＣ）は、後ほどネットワークの状況を予測できる要素として使用されることができる。例えば、パケット受信率が増加モードにある場合、送信率の増加幅がより大きくなるか、持続するか、又は減少するかを予測して、パケット受信率が減少モードにある場合、送信率の減少幅がより大きくなるか、持続するか、又は減少するかを予測する。
【００５０】
図４は、受信率変化増減率（ＧＡＲＣ）の算定方法を説明するための図である。
【００５１】
図４に示すように、横軸は、パケットが送信される時間、縦軸は、時間の経過によるパケット受信率である。受信率変化増減率（ＧＡＲＣｉ）は、一定時間間隔に分けられた二区間に対して以前区間（ｉ−１〜ｉ−２）の受信率変化量（Ｇｉ−１）に対した現在区間（ｉ〜ｉ−１）の受信率変化量（Ｇｉ）の割合で定義できる。これを式で表したものが下記式３である。
【数３】
0005362801.tif 000004
式中、ＧＡＲＣｉは、ｉ時点での受信率変化増減率、Ｇｉは、ｉ時点で受信率変化程度、Ｇｉ−１は、ｉ時点より以前時点であるｉ−１時点での受信率変化程度、Ａｉは、ｉ時点での受信率、Ａｉ−１は、ｉ−１時点での受信率、ΔＴｉは、ｉ時点とｉ−１時点との受信率変化測定時間差、ΔＴｉ−１は、ｉ−１時点とｉ−２時点との受信率変化測定時間差である。
【００５２】
図４及び式３を参照すれば、受信率変化増減率（ＧＡＲＣｉ）は、受信率グラフの２次微分原理を適用して算定され、後ほどネットワークの状態を予測できる基盤になる。例えば、図１２にて、受信率が凸形態の増加曲線で表現される場合、ネットワーク状況が好転する可能性が高いことを意味し、凸形態の下降曲線で表現される場合、ネットワークが急速に混雑になるのを意味する。
【００５３】
表１は、各時点での送信率、パケット受信率、伝達率及び受信率変化増減率の一例を示す。
【表１】
0005362801.tif 000005
【００５４】
制御部２４０は、表１のように、３個の時点に対する伝達率及び受信率変化増減率を介してネットワーク状況を予測できる。制御部２４０は、区間［ｉ−２］〜［ｉ］にてパケット送信率を増加させ、これにより、データ受信装置でのパケット受信率も向上した。しかしながら、パケット受信率変化量の変動推移を見ると、パケット受信率の増加幅が９から３に減少しており、これは、後ほどネットワーク状況が悪くなる可能性が大きいということを意味する。
【００５５】
したがって、送信率算定部２４１は、パケット受信率、伝達率（ＤＲ）、受信率変化増減率（ＧＡＲＣ）及び現在送信率（ＲａｔｅＳｉ）などを利用して後ほどネットワークの状況を予測し、予測結果を反映して次の送信率を算定できる。本実施の形態によれば、パケット受信率に基づいてネットワーク状況を予測できるだけでなく、劇的に送信速度を増加させると同時にパケット損失率を最小化してパケット送信の効率性を高め、高い受信率を維持できるようにする。
【００５６】
送信率算定部２４１は、下記式４を利用して次の送信率を算定できる。
【数４】
0005362801.tif 000006
式中、ＲａｔｅＳｉ＋１は、ｉ＋１時点で使用される次の送信率、ＲａｔｅＳｉは、ｉ時点での送信率、ＧＡＲＣｉは、パケットの受信率変化増減率、ＡＤＲｉは、平均伝達率、ｋは、＋１及び−１のうち一つ、ＳＴＥＰは、ネットワークの環境によって変わる変数であって、基本増減幅を示す。ｋは、パケット受信率の変化量が＋値を有した場合、＋１を有し、パケット受信率の変化量が−値を有した場合、−１を有する。このようなパケット受信率の変化量に応じて、次の送信率を算定するためのアルゴリズムは、増加モードと減少モードとを含むことができる。すなわち、パケット受信率が増加又は維持された場合、増加モード、パケット受信率が減少する場合、減少モードに区分される。
【００５７】
式４から分かるように、例示的実施の形態に係る送信率は、現在送信率（ＲａｔｅＳｉ）、伝達率（ＤＲ）及び受信率変化増減率（ＧＡＲＣ）に基づいて決定される。ここで、伝達率は、平均伝達率が使用されうる。送信率の増減幅は、現在の送信率を基準に次の送信率が増加又は減少する幅を示す。
【００５８】
以下、一つ以上の例示的実施の形態に係る送信率を算定するにおいて考慮しなければならない事項について詳細に説明する。
【００５９】
第１に、本発明的概念の例示的実施の形態によって決定される送信率（ＲａｔｅＳｉ）の増減幅は、パケット損失率を減らすことができる範囲内で決定されることができる。例えば、現在送信率（ＲａｔｅＳｉ）が以前送信率に比べて相対的に高い場合、パケット受信率の増加モードでは、安定性を維持するために送信率の増加幅を小さくし、パケット受信率の減少モードでは、パケット流入量を大幅に減ってパケット損失を最小化するために送信率の減少幅を大きくするようにする。
【００６０】
反面、現在送信率（ＲａｔｅＳｉ）が以前送信率（ＲａｔｅＳｉ−１）に比べて相対的に低い場合、パケット受信率の増加モードでは送信率の増加幅を大きくし、減少モードでは送信率の減少幅を小さくする。増加及び減少モードで高い送信率の場合と反対にその幅を決定する。
【００６１】
第２に、本発明的概念の例示的実施の形態によって決定される送信率の増減幅は、伝達率（ＤＲ）によって決定されうる。ここで、伝達率は、ネットワークのパケット処理率を意味し、現在のネットワーク状態を反映する。したがって、伝達率（ＤＲ）が高い場合、パケット受信率の増加モードでは送信率の増加幅を大きくし、パケット受信率の減少モードでは減少幅を小さくして可用資源を十分に活用できるようにする。一方、伝達率（ＤＲ）が低い場合、パケット受信率の増加モードでは送信率の増加幅を小さくし、パケット受信率の減少モードでは減少幅を大きくしてネットワークの混雑状況に適切に備えるようにする。
【００６２】
第３に、本発明的例示的実施の形態によって決定される送信率の増減幅は、受信率の変化増減率（ＧＡＲＣ）によって決定されることができる。ここで、受信率変化増減率（ＧＡＲＣ）は、後ほどネットワーク状態を反映し、したがって受信率変化増減率（ＧＡＲＣ）の絶対値が大きいほど、ネットワークの状態を維持する可能性が高いと予測できる。詳細に説明すれば、同じ制御モード（増加モード又は減少モード）で受信率変化増減率（ＧＡＲＣ）が１より大きな場合、後ほどネットワークは現在の状態（パケット受信率の増加状態又は減少状態）を維持する可能性が高いと判断する。反面、受信率変化増減率（ＧＡＲＣ）が１より小さな場合、後ほどネットワークは、パケット受信率増加状態から減少状態に、又は減少状態から増加状態に変化する可能性が高いと判断される。したがって、送信率の増減幅が、増加モード又は減少モードで受信率変化増減率（ＧＡＲＣ）の絶対値に比例するようにすることによって、パケット伝達の安全性を高めることができる。
【００６３】
上述したパケット受信率の増加モード及び減少モード別に、送信率の増減幅を決定する３個の要素に対する説明に基づいて、次の送信率を決定するための式は式４にて表現される。式４のｋは、増加モード及び減少モードに応じて値が変更される。式４は、ｋに応じて送信率の増加又は減少を式にて表現し、したがって、各モードでの増減幅決定要素である平均伝達率と現在送信率を逆数に変更できる。受信率変化増減率は、増加モード及び減少モードとは無関係に、絶対値の大きさのみが比例的に適用される。式４をｋに応じて、増加モードと減少モードに応じて表現すれば、以下の式５及び式６のとおりである。
【数５】
0005362801.tif 000007
【数６】
0005362801.tif 000008
【００６４】
式５は、パケット受信率の増加モードにおいてｋ＝１を式４に代入した結果であり、式６は、パケット受信率の減少モードにおいてｋ＝−１を式４に代入した結果である。
【００６５】
式４乃至式６を参照すれば、後ほどネットワーク状況が良くなる可能性が大きいほど、すなわち、｜ＧＡＲＣ｜値が大きいほど、又は現在ネットワークのパケット処理率が良いほど、すなわち、平均伝達率（ＡＤＲ）が大きいほど、送信率の増加幅は大きくなりうる。また、後ほどネットワーク状況が悪くなる可能性が大きいほど、すなわち、｜ＧＡＲＣ｜値が大きいほど、又は現在ネットワークのパケット処理率が悪いほど、すなわち、平均伝達率（ＡＤＲ）が小さいほど、送信率の減少幅は大きくなりうる。
【００６６】
図５は、例示的実施の形態に係るパケット送信方法を説明するためのフローチャートである。
【００６７】
図５のパケット送信方法は、図２を参照して説明したデータ送信装置２００の制御部２４０又は少なくとも一つのプロセッサにより行われることができる。
【００６８】
ステップＳ５１０にて、データ送信装置１０がデータ受信装置４０にパケットを送信した後、データ送信装置１０は、データ受信装置４０からパケットの受信情報を受信して格納することができる。パケットの受信情報は、データ送信装置１０の要請により、又はデータ受信装置４０が周期的に送信でき、受信されたパケットの数、受信情報収集時間間隔、及びパケット受信率に対する情報のうち、少なくとも一つを含むことができる。
【００６９】
ステップＳ５２０にて、データ送信装置１０は、データ送信装置１０の運営体制上にインストールされた仮想マシンを介して、格納されたパケットの受信情報を獲得できる。
【００７０】
ステップＳ５３０にて、データ送信装置１０は、獲得されたパケットの受信情報から受信率、平均伝達率及び受信率変化増減率を算定できる。データ送信装置１０は、式１乃至式３を利用してそれぞれの値を算定できる。
【００７１】
ステップＳ５４０にて、データ送信装置１０は、パケットの受信率を確認してパケット受信率のモードを判断できる。例えば、データ送信装置１０は、表１のようにパケット受信率の変化量を介してパケット受信率が増加モードにあるか又は減少モードにあるかを判断する。
【００７２】
パケット受信率が増加モードにある場合、ステップＳ５５０にて、データ送信装置１０は、送信率の増加幅を考慮して次の送信率を算定できる。すなわち、データ送信装置１０は、式４又は式５を利用して送信率の増加幅が反映された次の送信率を算定する。
【００７３】
反面、パケット受信率が減少モードにある場合、ステップＳ５６０にて、データ送信装置１０は送信率の減少幅を考慮して次の送信率を算定できる。すなわち、データ送信装置１０は、式４又は式６を利用して送信率の減少幅が反映された次の送信率を算定する。
【００７４】
ステップＳ５７０にて、データ送信装置１０は、ステップＳ５５０又はステップＳ５６０にて算定された次の送信率を利用して、次のパケットをデータ受信装置４０に送信する。
【００７５】
上述した一つ以上の例示的実施の形態によれば、パケット受信率に基づいて平均伝達率と受信率変化増減率という２種類の概念を定義し、これを利用して非信頼性送信プロトコル上においてネットワークの可用帯域幅を最大限に使用することができる送信速度を正確に算出できる。
【００７６】
以上、本発明は、限定された実施の形態と図面により説明されたが、本発明は、上記の実施の形態に限定されるものではなく、本発明が属する分野における通常の知識を有した者であればこのような記載から多様な修正及び変形が可能である。したがって、本発明の範囲は、説明された実施の形態に限って決まってはならず、後述する特許請求の範囲だけでなく、この特許請求の範囲と均等なものによって決まらなければならない。
【図１】
0005362801.tif 000017
【図２】
0005362801.tif 000018
【図３】
0005362801.tif 000019
【図４】
0005362801.tif 000020
【図５】
0005362801.tif 000021