説明

データ送信方法及び装置

【課題】データ受信率に基づいて送信率を算定してデータ送信を制御できる送信方法及び装置を提供する。
【解決手段】データ送信装置の運営体制上にインストールされた仮想マシンから、受信装置から受信されたパケットの受信情報を獲得し、ネットワーク帯域幅の混雑程度を予測して、次に送信するパケットの送信周期、すなわち、送信率を調節し、これによりネットワークの混雑を回避しながらデータ損失幅を最小化し、效率的にデータを送信できるようにする。

【発明の詳細な説明】
【技術分野】
【0001】
例示的実施の形態に係る装置及び方法は、データ送信方法及び装置に関し、さらに詳細には、データ受信率に基づいて送信率を算定してデータ送信を制御できる送信方法及び装置に関する。
【背景技術】
【0002】
ネットワーク技術が発展するにつれて、動画ファイル、音楽ファイル、停止映像ファイルなど大容量マルチメディアだけでなく、オンライン環境を介して多様な情報を共有しようとする需要が増加している。また、スマートフォンのような多様な形態のモバイルデバイスが普及するにつれて、ネットワーク使用量が増加している。このような需要は、大容量マルチメディアファイルを速く、かつ正確に送信する技術を必要とする。
【0003】
データを送信する方式には、TCPのような信頼性基盤の方式とUDPのような非信頼性基盤の方式とがあり、大量のデータを高速に送信するために非信頼性方式が好まれている傾向にある。これにより、非信頼性方式を利用してデータ送信の信頼性を保障しながらデータを高速に送信するための方法が提案されてきた。
【発明の概要】
【発明が解決しようとする課題】
【0004】
そこで、例示的実施の形態の一つ以上の側面によれば、ネットワークの混雑程度を予め予測してデータ送信周期を制御することによって、帯域幅を效率的に使用し、データをさらに速く送信できるデータ送信方法及び装置が提供される。
【0005】
また、例示的実施の形態の一つ以上の側面によれば、非信頼性送信プロトコルを利用して高速にデータを送信しながら信頼性を保障できるデータ送信方法及び装置が提供される。
【課題を解決するための手段】
【0006】
例示的実施の形態の一側面によれば、送信装置のデータ送信方法であって、受信装置からデータの受信情報を受信するステップと、前記受信情報に基づいて、次の送信率を算定するステップと、前記次の送信率に応じてデータを送信するステップと、を含むデータ送信方法が提供される。
【0007】
また、例示的実施の形態の一側面によれば、データを送信するための装置であって、受信装置からデータの受信情報を受信する受信部と、前記受信情報に基づいて、次の送信率を算定する制御部と、前記次の送信率に応じて、パケットを送信する通信部と、を備えるデータ送信装置が提供される。
【0008】
また、例示的実施の形態の一側面によれば、受信装置に送信するデータの送信率を制御する方法であって、前記受信装置のデータ受信率が増加すると、前記受信装置に送信するデータの送信率を増加させるステップと、前記受信装置のデータ受信率が減少すると、前記受信装置に送信するデータの送信率を減少させるステップと、を含み、前記データ送信率の増加幅は、前記データ伝達率に比例し、前記データ送信率の減少幅は、前記データ伝達率に反比例することを特徴とするデータ送信率制御方法が提供される。
【0009】
また、例示的実施の形態の一側面によれば、時刻tでのデータ送信率決定方法であって、時刻t−Tでのデータ受信率と、時刻t−2Tでのデータ受信率をそれぞれ算定するステップと、時刻t−Tでのデータ受信率が時刻t−2Tでのデータ受信率より大きな場合には、時刻tでのデータ送信率を時刻t−Tでのデータ送信率より所定増加幅分だけ大きな値に決定するステップと、時刻t−Tでのデータ受信率が時刻t−2Tでのデータ受信率より小さな場合には、時刻tでのデータ送信率を時刻t−Tでのデータ送信率より所定減少幅分だけ小さな値に決定するステップと、を含み、前記Tは、送信率の制御周期で、前記増加幅は、前記時刻t−Tでのデータ送信率に反比例し、前記減少幅は、前記時刻t−Tでのデータ送信率に比例することを特徴とするデータ送信率決定方法が提供される。
【0010】
また、例示的実施の形態の一側面によれば、上述の方法のうちの何れか1つの方法をコンピュータに実行させるためのプログラムが提供される。
【0011】
また、例示的実施の形態の一側面によれば、上述のプログラムを記録したコンピュータ読み取り可能な記録媒体が提供される。
【発明の効果】
【0012】
ネットワーク帯域幅の混雑程度を予測して、次に送信するパケットの送信周期、すなわち、送信率を調節でき、これによりネットワークの混雑を回避しながらデータ損失幅を最小化し、效率的にデータを送信できる。
【0013】
非信頼性基盤プロトコルを基盤としてアプリケーション層でパケットの送信周期を制御することによって送信率を高めることができ、特に、ネットワーク網を交替せずにも送信率を高めることができ、費用を低減できる。
【0014】
ネットワーク状態を速く反映してパケットを送信することによって、仮想マシンやモバイルデバイスのようにコンピュータパワーが不足した環境でも、パケットの高速送信を可能にすることができる。
【図面の簡単な説明】
【0015】
【図1】データ送信システムを概略的に示す図である。
【図2】例示的実施の形態に係るデータ送信装置の機能ブロック図である。
【図3】例示的実施の形態に係るデータ送信装置を説明するために提供される図である。
【図4】受信率変化増減率の算定方法を説明するための図である。
【図5】例示的実施の形態に係るデータ送信方法を説明するためのフローチャートである。
【発明を実施するための形態】
【0016】
以上の本発明の目的、他の目的、特徴及び利点は、添付された図面と関連した以下の好ましい実施の形態により容易に理解されるはずである。しかしながら、本発明は、ここで説明される実施の形態に限定されずに他の形態で具体化されうる。むしろ、ここで紹介される実施の形態は、開示された内容が徹底かつ完全になるように、そして当業者に、本発明の思想を十分に伝達させるために提供されるものである。本明細書において、ある構成要素が他の構成要素上にあると言及される場合には、それは、他の構成要素上に直接形成されうるか、又はそれらの間に第3の構成要素が介在されうることを意味する。
【0017】
また、あるエレメント(又は構成要素)が他のエレメント(又は構成要素)上で動作又は実行されると言及されるとき、そのエレメント(又は構成要素)は、他のエレメント(又は構成要素)が動作又は実行される環境で動作又は実行されるか、又は他のエレメント(又は構成要素)と直接又は間接的に相互作用により動作又は実行されると理解されなければならない。
【0018】
あるエレメント、構成要素、装置、又はシステムがプログラム若しくはソフトウェアからなる構成要素を含むと言及される場合には、明示的な言及がなくても、そのエレメント、構成要素、装置、又はシステムは、そのプログラム若しくはソフトウェアが実行又は動作するのに必要なハードウェア(例えば、メモリ、CPU(Central Processing Unit)等)や他のプログラム又はソフトウェア(例えば、運営体制やハードウェアを駆動するのに必要なドライバー等)を含むと理解されなければならない。
【0019】
また、あるエレメント(又は構成要素)が具現化されるに当たって、特別な言及がない限り、そのエレメント(又は構成要素)は、ソフトウェア、ハードウェア、又はソフトウェア及びハードウェアのうち、如何なる形態によっても具現化可能であると理解されなければならない。
【0020】
本明細書で使用された用語は、実施の形態を説明するためのものであって、本発明を限定するものではない。本明細書において、単数形は、特に言及しない限り、複数形も含む。明細書で使用される「含む」と言及された構成要素は、一つ以上の他の構成要素の存在又は追加を排除しない。
【0021】
以下、図面を参照して本発明を詳細に説明する。以下の特定実施の形態を述べるにおいて、様々な特定の内容は、発明をさらに具体的に説明し理解を助けるために作成された。しかしながら、本発明を理解することができる程度のこの分野における知識を有した読者は、このような様々な特定の内容がなくても使用されうることを認知できる。ある場合には、発明を述べるにおいて周知で発明と大きく関連のない部分は、本発明を説明するにおいて特別な理由なしで混乱を引き起こすことを防止するために述べないことを予め言及しておく。
【0022】
図1は、例示的実施の形態に係るデータ送信システムを概略的に示す図である。
【0023】
同図に示すように、データ送信システムは、第1ないし第nデータ送信装置10、20、30及びデータ受信装置40を備える。第1ないし第nデータ送信装置10、20、30とデータ受信装置40とは、ネットワークを介して有線及び/又は無線通信できる。第1ないし第nデータ送信装置10、20、30は、データパケット(以下、「データパケット」、「データ」又は「パケット」という)データ受信装置40に送信し、データ受信装置40からデータ受信装置40が受信したデータパケットに対する受信情報を受信することができる。第1ないし第nデータ送信装置10、20、30は、受信されたデータパケットの受信情報に基づいてネットワークの状態を予測し、予測結果に基づいて次に送信するデータの送信率を算定できる。
【0024】
一般に、データパケットの送信速度(送信率)は、ネットワークの可用帯域幅の大きさに比例するように設定されるので、データパケットの送信速度は、ネットワークの可用帯域幅と関係がある。すなわち、ネットワークの可用帯域幅が大きいと、データパケットは速く送信され、可用帯域幅が小さいと、データパケットは遅く送信される。しかしながら、一般に多数の多様な帯域幅と時間遅延特性を有したネットワークは複合的に接続されており、各ネットワークには互いに異なる量の帯域幅を使用する多くの端末装置が接続されている。接続した端末装置間の可用帯域幅はリアルタイムで変わるので、リアルタイムで可用帯域幅を推定することは困難である。
【0025】
したがって、例示的実施の形態によれば、送信率を制御するために、可用帯域幅を最大限に使用していると判断される送信速度、すなわち、送信率を推定する方式を使用する。また、任意の送信速度でデータパケットを送信したとき、可用帯域幅を最大限に使用しているかどうかを判断するために、本実施の形態では、ネットワークの状態を表す要素を考慮する。例えば、考慮される要素は、パケット受信率及び損失率を含むことができる。
【0026】
図2は、例示的実施の形態に係るデータ送信装置200の機能ブロック図である。
【0027】
図2のデータ送信装置200は、図1の第1ないし第nデータ送信装置10、20、30のうちの何れか一つでありうる。図2に示すように、データ送信装置200は、通信部210、受信部220、格納部230及び制御部240を備えることができる。
【0028】
通信部210は、ネットワークを介してデータ受信装置40に、送信率算定部241により算定される現在送信率に応じてデータパケットを送信する。データ受信装置40は、データパケットを送信装置200から受信すると、受信したデータパケットに対する受信情報(以下、「データパケットの受信情報」とする)を通信部210に送信できる。データパケットの受信情報は、例えばデータ受信装置200が任意時間の間に受信したパケットの数、受信情報収集時間の間隔、及びパケット受信率のうち、少なくとも何れか一つでありうる。
【0029】
受信部220は、データ送信装置200が有する運営体制上にインストールされた仮想マシン上で動作するアプリケーションでありえ、受信装置40からパケットの受信情報を受ける動作を行うことができる。例示的実施の形態によれば、受信部220は、図3を参照して説明するアプリケーション部340に備えられうる。
【0030】
格納部230は、データ送信装置200の全般的な動作を行うのに必要なプログラム及び/又はデータを格納することができる。また、格納部230は、データ受信装置に送信するデータ、及び/又はデータ受信装置から受信されたデータパケットの受信情報を格納することができる。
【0031】
制御部240は、格納部230に格納されたプログラムを利用してデータ送信装置200の動作を制御する。例えば、制御部240は、受信部220がデータパケットの受信情報を提供されると、パケットの受信情報に基づいて、次に送信するデータの送信率(以下、「次の送信率」)を予測及び算定できる。次の送信率は、送信待機中であるデータパケットを送信する時に用いられることができる。通信部210は、制御部240の制御により、次のデータパケットを制御部240により算定される次の送信率を利用して送信する。
【0032】
例示的実施の形態に係る制御部240は、所定の周期別に送信率を算定できる。例えば、制御部240が所定の周期(T[sec])間隔で送信率を算定すると仮定すれば、時刻t[sec]でのデータパケットの送信率を次のように算定できる。
【0033】
制御部240は、まず、時刻t−T[sec]でのデータ受信率と、時刻t−2T[sec]でのデータ受信率とをそれぞれ計算し、仮に時刻t−T[sec]でのデータ受信率が時刻t−2T[sec]でのデータ受信率より大きいか又は同じである場合、時刻t[sec]でのデータ送信速度(すなわち、送信率)を時刻t−T[sec]でのデータ送信速度より所定の幅だけ増加した値として算定する。ここで、増加幅は時刻t−T[sec]でのデータ送信率に反比例し、データの平均伝達率とデータ受信率の変化増減率に比例するように算定される。
【0034】
一方、制御部240は、時刻t−T[sec]でのデータ受信率が時刻t−2T[sec]でのデータ受信率より小さな場合、時刻t[sec]でのデータ送信率を時刻t−T[sec]でのデータ送信率より所定幅だけ減少した値として算定する。ここでの減少幅は、前記データの平均伝達率に反比例し、前記データ受信率変化増減率と時刻t−T[sec]でのデータ送信率に比例するように算定される。
【0035】
通信部210は、上述したように、制御部240により算定された送信率に応じて送信動作を行うようになる。すなわち、通信部210は、受信装置のデータ受信率が増加すると、受信装置に送信するデータの送信率を所定の幅だけ増加させるようになり、受信装置のデータ受信率が減少すると、前記受信装置に送信するデータの送信率を所定の幅だけ減少させる。ここで、データ送信率の増加幅は、上述した方法によって決定されうる。
【0036】
上述した実施の形態における制御部240は、周期別にデータ送信率を制御すると説明したが、これは例示に過ぎず、制御部240は、非周期的にデータ送信率を制御することも可能である。
【0037】
一実施の形態に係る制御部240は、送信率算定部241を具備し、送信率算定部241が次に送信するデータの送信率を算定できる。例示的実施の形態によれば、送信率算定部241は、データパケットの数に基づいて受信率変化増減率を算定し、受信率変化増減率、現在送信率及び伝達率に基づいて次の送信率を算定できる。次の送信率を算定する具体的な方法については後述する。
【0038】
図2の例示的実施の形態において、送信率算定部241は、制御部240に備えられると説明されたが、このような例示的構成のみに本発明的概念が限定されないことを理解しなければならない。例えば、送信率算定部241が制御部240に備えられずに独立的な構成要素として具現化できる。
【0039】
図3は、例示的実施の形態に係るデータ送信装置200を説明するために提供される図である。
【0040】
図3に示すように、データ送信装置200は、ハードウェア部310、運営体制部320、仮想マシン(Virtual Machine)330及びアプリケーション部340を備えることができる。図3には、説明の便宜上、一つの運営体制部320、一つの仮想マシン330及び一つのアプリケーション部340を示しており、その個数はこれに限定されない。
【0041】
ハードウェア部310は、HDD(Hard Disk Drive)のような格納装置、キーボード及びマウスのような入力装置、スピーカ及びディスプレイのような出力装置など、実際のハードウェア装置を備えることができる。
【0042】
運営体制部320は、ハードウェア部310と仮想マシン330とのインタフェースとして機能し、アプリケーション部のプログラムがハードウェアを容易に使用できるように支援し、装置200の効率を極大化できるようにハードウェア部及びソフトウェア資源(resource)を管理する。
【0043】
仮想マシン140は、プログラムが多様な種類の運営体制で実行されうるようにする。仮想マシンの例として、Java(登録商標)仮想マシンが挙げられる。
【0044】
アプリケーション部340は、本発明的概念の例示的実施の形態に係る送信率を制御することができる。
【0045】
以下、図2の送信率算定部241により次の送信率を算出する方法について説明する。
【0046】
送信率算定部241は、データ受信装置のパケット受信率に基づく2種類の概念を利用して、ネットワークの混雑(congestion)状態を予測できる。前記2種類の概念は、それぞれ伝達率(DR:Delivery Rate)とパケット受信率変化の増減率(GARC:Gradient of Arrival Rate Change)である。
【0047】
送信率算定部241が使用するデータパケット受信率は、データ受信装置がパケットを受信する速度を表し、データ受信装置から直接提供されるか、又はデータ受信装置により受信されたパケットの数に基づいて送信率算定部241で算出できる。
【0048】
データパケット受信率に基づいて導出される伝達率(DR)又は平均伝達率(ADR)は、単位時間当りのネットワークに流入するパケットを成功的に受信側に伝達できる能力、すなわち、現在ネットワークのパケット処理率を示す。したがって、制御部240は、伝達率(DR)を介して現在ネットワークの混雑程度を予測できる。また、特定時点(i)の伝達率を決定するにおいて、送信率算定部241は、過去の状況(すなわち、以前の伝達率)を反映するために、移動平均法を使用して平均伝達率(ADR)を使用することができる。下記式1は、伝達率(DR)を算出するための式、下記式2は、平均伝達率を算出するための式である。
【数1】

式中、伝達率(DR)は、通信部210のパケット送信率(Sending Rate)に対するデータ受信装置のパケット受信率(Arrival Rate)の割合である。DRは、i時点での伝達率、RateSiは、i時点での送信率、RateAiは、i時点でのパケット受信率である。
【数2】

式中、ADRは、i時点での平均伝達率、DRは、i時点での伝達率、DRi−1は、i−1時点での伝達率、DRi−2は、i−2時点での伝達率、α、β及びγは、各伝達率に割り当てられる加重値であって、最も最近時点にγ、最も後日時点にαが割り当てられる。i時点は、現在送信率によりパケットが送信されている時点である。
【0049】
一方、送信率算定部241は、パケットの受信情報がパケットの数である場合、パケットの数に基づいてパケット受信率を算定し、算定したパケット受信率に基づいて受信率変化増減率(GARC)を算定できる。受信率変化増減率(GARC)は、後ほどネットワークの状況を予測できる要素として使用されることができる。例えば、パケット受信率が増加モードにある場合、送信率の増加幅がより大きくなるか、持続するか、又は減少するかを予測して、パケット受信率が減少モードにある場合、送信率の減少幅がより大きくなるか、持続するか、又は減少するかを予測する。
【0050】
図4は、受信率変化増減率(GARC)の算定方法を説明するための図である。
【0051】
図4に示すように、横軸は、パケットが送信される時間、縦軸は、時間の経過によるパケット受信率である。受信率変化増減率(GARC)は、一定時間間隔に分けられた二区間に対して以前区間(i−1〜i−2)の受信率変化量(Gi−1)に対した現在区間(i〜i−1)の受信率変化量(Gi)の割合で定義できる。これを式で表したものが下記式3である。
【数3】

式中、GARCは、i時点での受信率変化増減率、Gは、i時点で受信率変化程度、Gi−1は、i時点より以前時点であるi−1時点での受信率変化程度、Aiは、i時点での受信率、Ai−1は、i−1時点での受信率、ΔTは、i時点とi−1時点との受信率変化測定時間差、ΔTi−1は、i−1時点とi−2時点との受信率変化測定時間差である。
【0052】
図4及び式3を参照すれば、受信率変化増減率(GARC)は、受信率グラフの2次微分原理を適用して算定され、後ほどネットワークの状態を予測できる基盤になる。例えば、図12にて、受信率が凸形態の増加曲線で表現される場合、ネットワーク状況が好転する可能性が高いことを意味し、凸形態の下降曲線で表現される場合、ネットワークが急速に混雑になるのを意味する。
【0053】
表1は、各時点での送信率、パケット受信率、伝達率及び受信率変化増減率の一例を示す。
【表1】

【0054】
制御部240は、表1のように、3個の時点に対する伝達率及び受信率変化増減率を介してネットワーク状況を予測できる。制御部240は、区間[i−2]〜[i]にてパケット送信率を増加させ、これにより、データ受信装置でのパケット受信率も向上した。しかしながら、パケット受信率変化量の変動推移を見ると、パケット受信率の増加幅が9から3に減少しており、これは、後ほどネットワーク状況が悪くなる可能性が大きいということを意味する。
【0055】
したがって、送信率算定部241は、パケット受信率、伝達率(DR)、受信率変化増減率(GARC)及び現在送信率(RateSi)などを利用して後ほどネットワークの状況を予測し、予測結果を反映して次の送信率を算定できる。本実施の形態によれば、パケット受信率に基づいてネットワーク状況を予測できるだけでなく、攻撃的に送信速度を増加させると同時にパケット損失率を最小化してパケット送信の効率性を高め、高い受信率を維持できるようにする。
【0056】
送信率算定部241は、下記式4を利用して次の送信率を算定できる。
【数4】

式中、RateSi+1は、i+1時点で使用される次の送信率、RateSiは、i時点での送信率、GARCは、パケットの受信率変化増減率、ADRは、平均伝達率、kは、+1及び−1のうち一つ、STEPは、ネットワークの環境によって変わる変数であって、基本増減幅を示す。kは、パケット受信率の変化量が+値を有した場合、+1を有し、パケット受信率の変化量が−値を有した場合、−1を有する。このようなパケット受信率の変化量に応じて、次の送信率を算定するためのアルゴリズムは、増加モードと減少モードとを含むことができる。すなわち、パケット受信率が増加又は維持された場合、増加モード、パケット受信率が減少する場合、減少モードに区分される。
【0057】
式4から分かるように、例示的実施の形態に係る送信率は、現在送信率(RateSi)、伝達率(DR)及び受信率変化増減率(GARC)に基づいて決定される。ここで、伝達率は、平均伝達率が使用されうる。送信率の増減幅は、現在の送信率を基準に次の送信率が増加又は減少する幅を示す。
【0058】
以下、一つ以上の例示的実施の形態に係る送信率を算定するにおいて考慮しなければならない事項について詳細に説明する。
【0059】
第1に、本発明的概念の例示的実施の形態によって決定される送信率(RateSi)の増減幅は、パケット損失率を減らすことができる範囲内で決定されることができる。例えば、現在送信率(RateSi)が以前送信率に比べて相対的に高い場合、パケット受信率の増加モードでは、安定性を維持するために送信率の増加幅を小さくし、パケット受信率の減少モードでは、パケット流入量を大幅に減ってパケット損失を最小化するために送信率の減少幅を大きくするようにする。
【0060】
反面、現在送信率(RateSi)が以前送信率(RateSi−1)に比べて相対的に低い場合、パケット受信率の増加モードでは送信率の増加幅を大きくし、減少モードでは送信率の減少幅を小さくする。増加及び減少モードで高い送信率の場合と反対にその幅を決定する。
【0061】
第2に、本発明的概念の例示的実施の形態によって決定される送信率の増減幅は、伝達率(DR)によって決定されうる。ここで、伝達率は、ネットワークのパケット処理率を意味し、現在のネットワーク状態を反映する。したがって、伝達率(DR)が高い場合、パケット受信率の増加モードでは送信率の増加幅を大きくし、パケット受信率の減少モードでは減少幅を小さくして可用資源を十分に活用できるようにする。一方、伝達率(DR)が低い場合、パケット受信率の増加モードでは送信率の増加幅を小さくし、パケット受信率の減少モードでは減少幅を大きくしてネットワークの混雑状況に適切に備えるようにする。
【0062】
第3に、本発明的例示的実施の形態によって決定される送信率の増減幅は、受信率の変化増減率(GARC)によって決定されることができる。ここで、受信率変化増減率(GARC)は、後ほどネットワーク状態を反映し、したがって受信率変化増減率(GARC)の絶対値が大きいほど、ネットワークの状態を維持する可能性が高いと予測できる。詳細に説明すれば、同じ制御モード(増加モード又は減少モード)で受信率変化増減率(GARC)が1より大きな場合、後ほどネットワークは現在の状態(パケット受信率の増加状態又は減少状態)を維持する可能性が高いと判断する。反面、受信率変化増減率(GARC)が1より小さな場合、後ほどネットワークは、パケット受信率増加状態から減少状態に、又は減少状態から増加状態に変化する可能性が高いと判断される。したがって、送信率の増減幅が、増加モード又は減少モードで受信率変化増減率(GARC)の絶対値に比例するようにすることによって、パケット伝達の安全性を高めることができる。
【0063】
上述したパケット受信率の増加モード及び減少モード別に、送信率の増減幅を決定する3個の要素に対する説明に基づいて、次の送信率を決定するための式は式4にて表現される。式4のkは、増加モード及び減少モードに応じて値が変更される。式4は、kに応じて送信率の増加又は減少を式にて表現し、したがって、各モードでの増減幅決定要素である平均伝達率と現在送信率を逆数に変更できる。受信率変化増減率は、増加モード及び減少モードとは無関係に、絶対値の大きさのみが比例的に適用される。式4をkに応じて、増加モードと減少モードに応じて表現すれば、以下の式5及び式6のとおりである。
【数5】

【数6】

【0064】
式5は、パケット受信率の増加モードにおいてk=1を式4に代入した結果であり、式6は、パケット受信率の減少モードにおいてk=−1を式4に代入した結果である。
【0065】
式4乃至式6を参照すれば、後ほどネットワーク状況が良くなる可能性が大きいほど、すなわち、|GARC|値が大きいほど、又は現在ネットワークのパケット処理率が良いほど、すなわち、平均伝達率(ADR)が大きいほど、送信率の増加幅は大きくなりうる。また、後ほどネットワーク状況が悪くなる可能性が大きいほど、すなわち、|GARC|値が大きいほど、又は現在ネットワークのパケット処理率が悪いほど、すなわち、平均伝達率(ADR)が小さいほど、送信率の減少幅は大きくなりうる。
【0066】
図5は、例示的実施の形態に係るパケット送信方法を説明するためのフローチャートである。
【0067】
図5のパケット送信方法は、図2を参照して説明したデータ送信装置200の制御部240又は少なくとも一つのプロセッサにより行われることができる。
【0068】
ステップS510にて、データ送信装置10がデータ受信装置40にパケットを送信した後、データ送信装置10は、データ受信装置40からパケットの受信情報を受信して格納することができる。パケットの受信情報は、データ送信装置10の要請により、又はデータ受信装置40が周期的に送信でき、受信されたパケットの数、受信情報収集時間間隔、及びパケット受信率に対する情報のうち、少なくとも一つを含むことができる。
【0069】
ステップS520にて、データ送信装置10は、データ送信装置10の運営体制上にインストールされた仮想マシンを介して、格納されたパケットの受信情報を獲得できる。
【0070】
ステップS530にて、データ送信装置10は、獲得されたパケットの受信情報から受信率、平均伝達率及び受信率変化増減率を算定できる。データ送信装置10は、式1乃至式3を利用してそれぞれの値を算定できる。
【0071】
ステップS540にて、データ送信装置10は、パケットの受信率を確認してパケット受信率のモードを判断できる。例えば、データ送信装置10は、表1のようにパケット受信率の変化量を介してパケット受信率が増加モードにあるか又は減少モードにあるかを判断する。
【0072】
パケット受信率が増加モードにある場合、ステップS550にて、データ送信装置10は、送信率の増加幅を考慮して次の送信率を算定できる。すなわち、データ送信装置10は、式4又は式5を利用して送信率の増加幅が反映された次の送信率を算定する。
【0073】
反面、パケット受信率が減少モードにある場合、ステップS560にて、データ送信装置10は送信率の減少幅を考慮して次の送信率を算定できる。すなわち、データ送信装置10は、式4又は式6を利用して送信率の減少幅が反映された次の送信率を算定する。
【0074】
ステップS570にて、データ送信装置10は、ステップS550又はステップS560にて算定された次の送信率を利用して、次のパケットをデータ受信装置40に送信する。
【0075】
上述した一つ以上の例示敵意実施の形態によれば、パケット受信率に基づいて平均伝達率と受信率変化増減率という2種類の概念を定義し、これを利用して非信頼性送信プロトコル上においてネットワークの可用帯域幅を最大限に使用することができる送信速度を正確に算出できる。
【0076】
以上、本発明は、限定された実施の形態と図面により説明されたが、本発明は、上記の実施の形態に限定されるものではなく、本発明が属する分野における通常の知識を有した者であればこのような記載から多様な修正及び変形が可能である。したがって、本発明の範囲は、説明された実施の形態に限って決まってはならず、後述する特許請求の範囲だけでなく、この特許請求の範囲と均等なものによって決まらなければならない。

【特許請求の範囲】
【請求項1】
送信装置のデータ送信方法であって、
受信装置からデータの受信情報を受信するステップと、
前記受信情報に基づいて、次の送信率を算定するステップと、
前記次の送信率に応じてデータを送信するステップと、
を含むデータ送信方法。
【請求項2】
前記次の送信率を算定するステップは、
データパケットの数に基づいて、受信率変化増減率を算定するステップと、
前記受信率変化増減率、現在送信率及び伝達率に基づいて、前記次の送信率を算定するステップと、を含み、
前記伝達率は、次の式
【数1】

によって算定され、
式中、DRは、i時点での伝達率、RateSiは、i時点での送信率、RateAiは、i時点での受信率であることを特徴とする請求項1に記載のデータ送信方法。
【請求項3】
前記受信率変化増減率は、次の式
【数2】

により算定され、
式中、GARCは、前記受信率変化増減率、Gは、i時点で受信率変化程度、Gi−1は、i時点より以前時点であるi−1時点での受信率変化程度、Aは、i時点での受信率、Ai−1は、i−1時点での受信率、ΔTは、i時点とi−1時点との時間差、ΔTi−1は、i−1時点とi−2時点との時間差であることを特徴とする請求項2に記載のデータ送信方法。
【請求項4】
前記伝達率は、次の式
【数3】

により算定される平均伝達率であり、
式中、ADRは、i時点での平均伝達率、DRは、i時点での伝達率、DRi−1は、i−1時点での伝達率、DRi−2は、i−2時点での伝達率、α、β及びγは、各伝達率に割り当てられる加重値であることを特徴とする請求項2に記載のデータ送信方法。
【請求項5】
前記送信率は、次の式
【数4】

により算定され、
式中、RateSi+1は、i+1時点で使用される送信率、RateSiは、i時点で使用される送信率、GARCは、パケットの受信率変化増減率、ADRは、平均伝達率、kは、+1及び−1のうちの何れか一つ、STEPは、ネットワークの環境によって変わる変数であることを特徴とする請求項1に記載のデータ送信方法。
【請求項6】
前記送信率を算定するステップは、前記送信装置の運営体制上にインストールされた仮想マシン上で行われることを特徴とする請求項1に記載のデータ送信方法。
【請求項7】
データを送信するための装置であって、
受信装置からデータの受信情報を受信する受信部と、
前記受信情報に基づいて、次の送信率を算定する制御部と、
前記次の送信率に応じて、パケットを送信する通信部と、
を備えるデータ送信装置。
【請求項8】
前記制御部は、前記受信情報に含まれたパケットの数に基づいて受信率変化増減率を算定し、前記受信率変化増減率と現在伝送率に基づいて前記次の送信率を算定し、
前記受信率変化増減率は、次の式
【数5】

により算定され、
式中、GARCは、前記受信率変化増減率、Gは、i時点での受信率変化程度、Gi−1は、i時点より以前時点であるi−1時点での受信率変化程度、Aは、i時点での受信率、Ai−1は、i−1時点での受信率、ΔTは、i時点とi−1時点との時間差、ΔTi−1は、i−1時点とi−2時点との時間差であることを特徴とする請求項7に記載のデータ送信装置。
【請求項9】
前記制御部は、
前記受信率変化増減率、現在送信率及び伝達率に基づいて前記次の送信率を算定し、
前記伝達率は、次の式
【数6】

により算定され、
式中、DRは、i時点での伝達率、RateSiは、i時点での送信率、RateAiは、i時点での受信率であることを特徴とする請求項8に記載のデータ送信装置。
【請求項10】
前記伝達率は、次の式
【数7】

により算定される平均伝達率であり、
式中、ADRは、i時点での平均伝達率、DRは、i時点での伝達率、DRi−1は、i−1時点での伝達率、DRi−2は、i−2時点での伝達率、α、β及びγは、各伝達率に割り当てられる加重値であることを特徴とする請求項9に記載のデータ送信装置。
【請求項11】
前記送信率は、次の式
【数8】

により算定され、
ここで、Ratesi+1は、i+1時点で使用される送信率、Ratesiは、i時点で使用される送信率、GARCは、パケットの受信率変化増減率、ADRは、平均伝達率、kは、+1及び−1のうちの何れか一つ、STEPは、ネットワークの環境に応じて変わる変数であることを特徴とする請求項7乃至10の何れか1項に記載のデータ送信装置。
【請求項12】
前記受信部が前記受信装置からデータの受信情報を受信する動作は、前記データの送信のための装置の運営体制上にインストールされた仮想マシン上で行われ、
前記パケットの受信率が増加する場合には、kは、+1であり、前記パケットの受信率が減少する場合には、kは、−1であることを特徴とする請求項11に記載のデータ送信装置。
【請求項13】
受信装置に送信するデータの送信率を制御する方法であって、
前記受信装置のデータ受信率が増加すると、前記受信装置に送信するデータの送信率を増加させるステップと、
前記受信装置のデータ受信率が減少すると、前記受信装置に送信するデータの送信率を減少させるステップと、を含み、
前記データ送信率の増加幅は、前記データ伝達率に比例し、
前記データ送信率の減少幅は、前記データ伝達率に反比例することを特徴とするデータ送信率制御方法。
【請求項14】
前記増加幅は、
前記データの平均伝達率と前記受信率との変化増減率に比例し、現在のデータ送信率に反比例し、
前記減少幅は、
前記データの平均伝達率に反比例し、前記データ受信率変化増減率と現在データ送信率とに比例することを特徴とする請求項13に記載のデータ送信率制御方法。
【請求項15】
前記受信装置のデータ受信率に変化がないと、前記受信装置に送信するデータの送信率を増加させ、前記増加の幅は、前記データの平均伝達率と前記受信率の変化増減率とに比例し、現在のデータ送信率に反比例することを特徴とする請求項13に記載のデータ送信率制御方法。
【請求項16】
時刻tでのデータ送信率決定方法であって、
時刻t−Tでのデータ受信率と、時刻t−2Tでのデータ受信率をそれぞれ算定するステップと、
時刻t−Tでのデータ受信率が時刻t−2Tでのデータ受信率より大きな場合には、時刻tでのデータ送信率を時刻t−Tでのデータ送信率より所定増加幅分だけ大きな値に決定するステップと、
時刻t−Tでのデータ受信率が時刻t−2Tでのデータ受信率より小さな場合には、時刻tでのデータ送信率を時刻t−Tでのデータ送信率より所定減少幅分だけ小さな値に決定するステップと、を含み、
前記Tは、送信率の制御周期であり、
前記増加幅は、前記時刻t−Tでのデータ送信率に反比例し、
前記減少幅は、前記時刻t−Tでのデータ送信率に比例することを特徴とするデータ送信率決定方法。
【請求項17】
時刻t−Tでのデータ受信率が時刻t−2Tでのデータ受信率と同じである場合に、時刻tでのデータ送信率を、時刻t−Tでのデータ送信率より所定増加幅分だけ大きな値に決定するステップをさらに含むことを特徴とする請求項16に記載のデータ送信率決定方法。
【請求項18】
前記増加幅は、前記時刻t−Tでのデータ送信率に反比例し、データ伝達率に比例し、
前記減少幅は、前記時刻t−Tでのデータ送信率に比例し、データ伝達率に反比例することを特徴とする請求項16に記載のデータ送信率決定方法。
【請求項19】
前記増加幅は、
前記データの平均伝達率と前記受信率の変化増減率とに比例し、時刻t−Tでのデータ送信率に反比例し、
前記減少幅は、
前記データの平均伝達率に反比例し、前記データ受信率変化増減率と時刻t−Tでのデータ送信率とに比例することを特徴とする請求項16に記載のデータ送信率制御方法。
【請求項20】
請求項1乃至6及び13乃至19の何れか1項に記載の方法をコンピュータに実行させるためのプログラム。
【請求項21】
請求項20に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2012−100264(P2012−100264A)
【公開日】平成24年5月24日(2012.5.24)
【国際特許分類】
【出願番号】特願2011−237529(P2011−237529)
【出願日】平成23年10月28日(2011.10.28)
【出願人】(510294195)サムソン エスディーエス カンパニー リミテッド (33)
【Fターム(参考)】