説明

通信システム、データ送信端末、データ受信端末および送信レート制御方法

【課題】送信レートを推定する際に使用するネットワークの帯域を低減可能な通信システムを得ること。
【解決手段】データ受信端末20は、データ受信量、前回の通知メッセージを送信してから応答メッセージを受信するまでの経過時間、今回の通知メッセージの送信時刻の情報を含む通知メッセージを定期的にデータ送信端末10へ送信し、データ送信端末10は、通知メッセージの情報および前回の最大送信レート推定値の決定処理までに取得した情報に基づいて、送信したデータをネットワークがロスなく転送できていたかどうかを判定し、判定の結果に基づいてつぎに通知メッセージを受信するまでの間の最大送信レート推定値を決定し、決定した最大送信レート推定値に従ってデータ受信端末20に送信するデータの送信レートを制御する、また、通知メッセージに対する応答メッセージをデータ受信端末20へ送信する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ送信端末からデータ受信端末へデータを送信するときの送信レートを制御する通信システムに関する。
【背景技術】
【0002】
従来、車や列車等の移動体が携帯電話網やWiMAXといった公衆サービスの無線アクセス回線上でデータ通信を行う場合、移動による無線環境変化や同じ基地局に接続する他ユーザの通信量変化により、無線アクセス回線で利用可能な送信レートは、上り(移動体から基地局方向)/下り(基地局から移動体方向)のいずれの方向も動的に変化する。
【0003】
移動体通信において無線アクセス回線の送信レートが低い時にVoIPの電話音声データ伝送等の高優先度の通信を優先的に行うためには、無線アクセス回線で利用可能な送信レートを推定し、推定した送信レート以下で送信するように送信レートを制御し、複数通信に対する優先制御を行う必要がある。送信レートの推定が必要な理由は、無線アクセス回線を構成する基地局や無線移動局が内部で管理する送信レートの情報に装置外からアクセスできず、移動体上の送信端末は現在の送信レートを知ることができないためである。
【0004】
ネットワークが有線回線のみから構成される場合も、公衆サービスのネットワークではネットワーク構成が一般ユーザには公開されていないこと、他ユーザの通信量変化により利用可能な送信レートが変化することから、同様に送信レートの推定が必要となる。
【0005】
送信レート推定に適用可能な技術として、例えば、下記非特許文献1では、packet pairやpacket trainと呼ばれるプローブパケットを用いて送信レートを推定する技術が開示されている。プローブパケット方式では、正確な送信データレート推定を行うために多数のプローブパケット送信が必要となる(100Mbps程度の送信レート推定の場合、1回の推定のために130KBから2.5MBのプローブパケット送信が必要)。送信データレートが絶えず変化するネットワークの場合、1秒毎等頻繁に送信データレート推定を行う必要がある。
【0006】
また、下記非特許文献2では、IPネットワークのレイヤ4プロトコルとして使用されるTCP(Transmission Control Protocol)の輻輳制御技術が複数種類開示されている。TCPの輻輳制御処理は、輻輳が発生したか否か、即ち、送信端末が現在使用している送信レートがネットワークの最大送信レートを超過したか否かの判定と、判定結果に基づく次に使用する送信レートの決定の2つの要素から構成される。TCPの輻輳判定処理では、高信頼通信機能実現の目的で使われるパケットに付与するシーケンス番号と、受信済みシーケンス番号を示す送達確認メッセージから推測されるパケットロス発生、ラウンドトリップ時間(RTT)増加等の情報を用いて輻輳発生を判定する。そして、輻輳発生時に送信側が送信可能なデータ量(輻輳制御ウィンドウ)を減らし、輻輳無しで通信している間は輻輳制御ウィンドウを増やすという形で、次の送信レート決定を行う。
【先行技術文献】
【非特許文献】
【0007】
【非特許文献1】J.Strauss他 ”A Measurement Study of Available Bandwidth Estimation Tools” in proceedings of IMC '03
【非特許文献2】A.Afanasyev他 ”Host-to-Host Congestion Control for TCP” in IEEE Communication Surveys and Tutorials VOL.12 No.3
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、上記従来の技術(非特許文献1)によれば、頻繁に送信データレート推定を行う場合、プローブパケット送信に使用するネットワーク帯域がネットワーク自体の送信データレート(例えば、WiMAXの場合で数百kbps〜20Mbps程度)に対して無視できない。そのため、本来の送信対象のデータ送信の妨げとなる、という問題があった。
【0009】
また、上記従来の技術(非特許文献2)によれば、TCPの輻輳制御技術を適用する場合、送信パケットにシーケンス番号を含むヘッダを付与する必要がある。また、送信パケットに対する送達確認メッセージを送信パケットに対して一定以上(例えば、2パケットに1回)の割合で送信する必要がある。そのため、本来のデータ送信に利用可能な帯域が減少する、という問題があった。
【0010】
本発明は、上記に鑑みてなされたものであって、送信レートを推定する際に使用するネットワークの帯域を低減可能な通信システムを得ることを目的とする。
【課題を解決するための手段】
【0011】
上述した課題を解決し、目的を達成するために、本発明は、データを送信するデータ送信端末、前記データを受信するデータ受信端末、および前記データ送信端末と前記データ受信端末との間で前記データの転送を行うネットワーク、から構成される通信システムであって、前記データ受信端末は、データ受信量、前回の通知メッセージを送信してからその応答である応答メッセージを受信するまでの経過時間、および今回の通知メッセージの送信時刻の情報を含む通知メッセージを定期的に前記データ送信端末へ送信し、前記データ送信端末は、前記通知メッセージの情報および前回の最大送信レート推定値の決定処理までに取得した情報に基づいて、自端末が送信したデータをネットワークがロスなく転送できていたかどうかを判定し、判定の結果に基づいてつぎに通知メッセージを受信するまでの間の最大送信レート推定値を決定し、決定した最大送信レート推定値に従って前記データ受信端末に送信するデータの送信レートを制御する、また、前記通知メッセージに対する応答メッセージを前記データ受信端末へ送信する、ことを特徴とする。
【発明の効果】
【0012】
本発明によれば、送信レートを推定する際に使用するネットワークの帯域を低減することができる、という効果を奏する。
【図面の簡単な説明】
【0013】
【図1】図1は、データ送信端末の構成例を示す図である。
【図2】図2は、データ受信端末の構成例を示す図である。
【図3】図3は、各端末間で送受信されるメッセージおよびデータの送受信状態を示すシーケンス図である。
【図4】図4は、送信レートを制御する処理を示すフローチャートである。
【図5】図5は、ネットワークがロスなく転送できていたかどうかを判定する処理を示すフローチャートである。
【図6】図6は、最大送信レート推定値を決定する処理を示すフローチャートである。
【発明を実施するための形態】
【0014】
以下に、本発明にかかる通信システムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【0015】
実施の形態1.
本実施の形態の送信レート制御方法を実現する通信システムは、データを送信するデータ送信端末と、データ送信端末から送信されたデータを受信するデータ受信端末と、データ送信端末とデータ受信端末との間でデータ転送を行うネットワークと、から構成される。まず、それぞれの構成について説明する。
【0016】
図1は、本実施の形態のデータ送信端末10の構成例を示す図である。データ送信端末10は、データ送信アプリケーション部11と、シェーパ部12と、ネットワークインタフェース部13と、通知メッセージ受信処理部14と、最大送信レート推定値管理部15と、時計部16と、を備える。
【0017】
データ送信アプリケーション部11は、一般的なデータ送信を行うアプリケーションである。従来からある構成と同等の機能を備えるものであり、後述する送信レート制御機能を利用する。
【0018】
シェーパ部12は、データ送信アプリケーション部11が送信する通信データと、通知メッセージ受信処理部14が送信する応答メッセージを合わせたトラヒックに対して、最大送信レート推定値でのシェーピングを行い、ネットワークインタフェース部13に対してネットワークへの送信を要求する。
【0019】
ネットワークインタフェース部13は、ネットワークと自端末との間の通信データの送受信に関わる通信プロトコル処理を行う。また、送信データ量の累積値を管理し、最大送信レート推定値管理部15の読み出し要求に対して送信データ量の累積値を返す。
【0020】
通知メッセージ受信処理部14は、データ受信端末からの通知メッセージを受信し、応答メッセージを返すと共に、通知メッセージに含まれる情報を最大送信レート推定値管理部15へ通知する。
【0021】
最大送信レート推定値管理部15は、通知メッセージの情報と、ネットワークインタフェース部13から得られる送信データ量の情報と、時計部16から得られる自端末内ローカル時刻情報と、に基づいて最大送信レート推定値の更新を行う。そして、最大送信レート推定値をシェーパ部12に設定する。
【0022】
時計部16は、自端末内部のローカル時刻を計測する。後述するデータ受信端末の時計部との絶対時刻の同期は不要だが、経過時間の測定精度は一定程度あるものとする。
【0023】
図2は、本実施の形態のデータ受信端末20の構成例を示す図である。データ受信端末20は、ネットワークインタフェース部21と、データ受信アプリケーション部22と、通知メッセージ送信処理部23と、時計部24と、を備える。
【0024】
ネットワークインタフェース部21は、ネットワークと自端末との間の通信データの送受信に関わる通信プロトコル処理を行う。また、受信データ量の累積値を管理し、通知メッセージ送信処理部23の読み出し要求に対して受信データ量の累積値を返す。
【0025】
データ受信アプリケーション部22は、一般的なデータ受信を行うアプリケーションである。従来からある構成と同等の機能を備えるものであり、後述する送信レート制御機能を利用する。
【0026】
通知メッセージ送信処理部23は、ネットワークインタフェース部21から受信データ量の累積値を読み出し、時計部24から自端末内部のローカル時刻を読み出し、通知メッセージを定期的にデータ送信端末10へ送信する。また、応答メッセージを受信し通知メッセージ送信からの経過時間を時計部24から読み出すローカル時刻に基づき記録し、データ送信端末10が送信するデータの受信処理を行う。
【0027】
時計部24は、自端末内部のローカル時刻を計測する。データ送信端末10の時計部16との絶対時刻の同期は不要だが、経過時間の測定精度は一定程度あるものとする。
【0028】
ネットワークは、データ送信端末10とデータ受信端末20との間でデータやメッセージの転送を行う。ネットワークは、データ送信端末10から送信されたデータを滞留するバッファを内部に備える。
【0029】
つづいて、本実施の形態における送信レート制御方法による送信レートを制御する方法について説明する。図3は、各端末間で送受信されるメッセージおよびデータの送受信状態を示すシーケンス図である。また、図4は、送信レートを制御する処理を示すフローチャートである。一例として、データ受信端末20から通知メッセージMSiを送信する処理およびその前後の処理を中心に説明するが、他の通知メッセージMSi-1や通知メッセージMSi+1を送信する場合にも適用可能である。なお、通知メッセージMSiはi番目の通知メッセージを示すものとする。
【0030】
まず、データ受信端末20では、通知メッセージ送信処理部23が、ネットワークインタフェース部21から受信データ量の累積値を読み出し、また、時計部24から時刻情報を取得し、ネットワークインタフェース部21を介して、データ送信端末10に対して定期的に通知メッセージMSiを送信する(ステップS1)。通知メッセージMSiには、(1)通知メッセージMSiの送信時刻tiにおけるデータ受信量、(2)時計部24で計測した前回通知メッセージMSi-1を送信してデータ送信端末10からその応答である応答メッセージRSi-1を受信するまでの経過時間(di-1,1+di-1,2)、(3)時計部24で計測した今回の通知メッセージの送信時刻ti、の情報を含む。
【0031】
つぎに、データ送信端末10では、通知メッセージ受信処理部14が、ネットワークインタフェース部13を介してデータ受信端末20から受信した通知メッセージMSiに含まれる情報を最大送信レート推定値管理部15へ転送する。最大送信レート推定値管理部15は、通知メッセージMSiに含まれる情報、前回の最大送信レート推定値Ri-1の更新処理までに取得した情報、ネットワークインタフェース部13から得られる送信データ量の情報、および時計部16からの時刻情報を用いて、自端末が送信したデータをネットワークがロスなく転送できていたかどうかを判定する(ステップS2)。
【0032】
ここで、データ受信端末20が通知メッセージMSiで通知する受信データ量は、最大送信レート推定値Ri-1、Ri-2だけでなく、通知メッセージMSi-1送信から応答メッセージRSi-1受信までの経過時間(di-1,1+di-1,2)の影響も受ける。したがって、データ送信端末10では、最大送信レート推定値管理部15が、各最大送信レート推定値で送信されたデータ等の合計値と、前回の通知メッセージMSi-1に示される受信データ量と今回の通知メッセージMSiに示される受信データ量の差分(=2つの通知メッセージを送信する間にデータ受信端末20が受信した受信データ量)とを、通知メッセージMSi-1送信から応答メッセージRSi-1受信までの経過時間(di-1,1+di-1,2)の情報を考慮した形で比較することで、データ送信端末10が送信したデータをネットワークがロスなく転送できたか否かを判定することが可能となる。
【0033】
データ送信端末10では、最大送信レート推定値管理部15が、送信したデータをネットワークがロスなく転送できたと判定した場合は現在(更新前)の最大送信レート推定値Ri-1でネットワークがデータを転送できていたと判断し、その他の場合は現在(更新前)の最大送信レート推定値Ri-1でネットワークがデータを転送できていないと判断することができる。
【0034】
データ送信端末10では、最大送信レート推定値管理部15が、前記判定の結果に基づいて、データ受信端末20からつぎの通知メッセージMSi+1を受信するまで用いるつぎの最大送信レート推定値Riを決定する(ステップS3)。
【0035】
そして、データ送信端末10では、最大送信レート推定値管理部15が、時刻Tiのタイミングで最大送信レート推定値をRi-1からRiへ更新し、データ受信端末20からつぎの通知メッセージMSi+1を受信するまで、データ送信アプリケーション部11からのデータをシェーパ部12およびネットワークインタフェース部13を介して、最大送信レート推定値Riに従ってデータを送信する制御を行う(ステップS4)。具体的には、最大送信レート推定値Riを超えないように送信レートを制御する。
【0036】
また、データ送信端末10では、通知メッセージ受信処理部14が、シェーパ部12およびネットワークインタフェース部13を介してデータ受信端末20へ通知メッセージMSiに対する応答メッセージRSiを送信する(ステップS5)。
【0037】
データ受信端末20では、応答メッセージRSiを受信後、データ受信アプリケーション部22が、ネットワークインタフェース部21を介して最大送信レート推定値Riで送信されたデータを受信する(ステップS6)。
【0038】
このように、データ受信端末20が通知メッセージを定期的(例えば、1秒周期)に1度送信することで、大量のプローブパケット等を送信することなく、また送信データへのシーケンス番号付与や送達確認等を行うことなく、データ送信端末10では、最大送信レートの推定値を定期的に更新することができる。
【0039】
つづいて、データ送信端末10の最大送信レート推定値管理部15において、ネットワークがロスなく転送できていたかどうかを判定する処理(ステップS2)について詳細に説明する。図5は、ネットワークがロスなく転送できていたかどうかを判定する処理を示すフローチャートである。
【0040】
まず、データ受信端末20が、連続する通知メッセージMSi-1、MSiを送信する間に受信する受信データ量について、図3を用いて説明する。データ受信端末20が連続する通知メッセージMSi-1、MSiの間に受信するデータは、(x)通知メッセージMSi-1の送信時点ti-1においてネットワーク内部のバッファに滞留しているデータ(図3に示す滞留データ量推定値b0i-1)、(y)通知メッセージMSi-1に対する応答メッセージRSi-1を受信するまでの間にデータ送信端末10が前回の最大送信レート推定値Ri-2で送信したデータの一部(図3に示す受信データ量推定値b1i-1)、(z)通知メッセージMSi送信時点tiまでの間にデータ送信端末10が現在(更新前)の最大送信レート推定値Ri-1で送信したデータの一部、として表すことができる。(x)〜(z)のデータの中で、ネットワークでロスなくデータ受信端末20へ転送されたものが受信データ量に含まれる。
【0041】
ここで、つぎの周期(通知メッセージMSi、MSi+1を用いたとき)の(y)に相当する受信データ量推定値b1iと(z)の値の間には、「受信データ量推定値b1i=最大送信レート推定値Ri-1でデータ送信端末10が送信したデータ量−(z)の値」の関係が成り立つ。通知メッセージMSi-1、MSiを用いてつぎの周期の(y)に相当する受信データ量推定値b1iを求めることができるということは、前回の周期で通知メッセージMSi-2、MSi-1を用いて今回の周期の(y)である受信データ量推定値b1i-1を求めることができることを意味する。また、データ送信端末10による送信開始時の受信データ量推定値の初期値(=受信データ量推定値b10)は、今までデータ送信が行われていないので0と置くことが妥当である。すなわち、1回目の通知メッセージMS1を受信したときも、必要な受信データ量推定値b10が既知である。以上のことから、データ送信端末10は、通知メッセージMSiを受信した時点で、受信データ量推定値b1i-1が既知であるとみなすことができる。
【0042】
また、最大送信レート推定値Ri-1でデータ送信端末10が送信したデータ量は、データ送信端末10が自ら測定することが可能である。(z)の値は、データ送信端末10が最大送信レート推定値をRi-1に更新後、データ受信端末20が応答メッセージRSi-1を受信してから通知メッセージMSiを送信するまでの経過時間と同じ長さの時間の間に送信したデータ量で近似推定することが可能である。そのため、データ送信端末10では、最大送信レート推定値管理部15が、データ受信端末20において応答メッセージRSi-1を受信してから通知メッセージMSiを送信するまでの経過時間を、通知メッセージMSi-1で通知される送信時刻ti-1と通知メッセージMSiで通知される送信時刻tiおよび経過時間(di-1,1+di-1,2)とを用いて、「(ti−ti-1)−(di-1,1+di-1,2)」として算出する。これにより、データ送信端末10では、最大送信レート推定値管理部15が、通知メッセージMSi受信時点で、最大送信レート推定値をRi-1および算出した経過時間を用いて(z)の値を算出する(ステップS11)。
【0043】
また、データ送信端末10では、最大送信レート推定値管理部15が、つぎの周期(通知メッセージMSi、MSi+1を用いたとき)のために、最大送信レート推定値Ri-1でデータ送信端末10が送信したデータ量と(z)の値とを用いて、受信データ量推定値b1iを算出する(ステップS12)。
【0044】
ここで、データ送信端末10の最大送信レート推定値管理部15は、通知メッセージMSi受信時、受信データ量推定値b1i-1が既知であることから、滞留データ量推定値b0i-1が既知であれば、データ受信端末20が通知メッセージMSi-1送信から通知メッセージMSi送信までの間にネットワークでのロスがなければ受信するデータ量を「b0i-1+b1i-1+(z)の値」として算出することができる。後述するように、通知メッセージMSi受信時、滞留データ量推定値b0i-1も既知であるので、最大送信レート推定値管理部15は、これらの値を用いて「データ受信端末20が通知メッセージMSi-1送信から通知メッセージMSi送信までの間にネットワークでのロスがなければ受信するデータ量」を算出する(ステップS13)。
【0045】
データ送信端末10では、最大送信レート推定値管理部15が、上記「データ受信端末20が通知メッセージMSi-1送信から通知メッセージMSi送信までの間にネットワークでのロスがなければ受信するデータ量」と、通知メッセージMSi-1、MSiに示される受信データ量の累積値の差分から得られるこの期間における受信データ量とを比較し、ネットワークが最大送信レート推定値で転送できているかどうかを判定する(ステップS14)。最大送信レート推定値管理部15は、比較した結果、前者が後者より大きい場合はネットワークが最大送信レート推定値で転送できていないと判定し、その他の場合はネットワークが最大送信レート推定値で転送できていると判定する。
【0046】
また、データ送信端末10では、最大送信レート推定値管理部15が、上記判定の結果に基づいて、つぎの周期(通知メッセージMSi、MSi+1を用いたとき)のために、ネットワーク内部のバッファに滞留している滞留データ量推定値b0iを算出する(ステップS15)。最大送信レート推定値管理部15は、ネットワークが最大送信レート推定値で転送できていると判断した場合、滞留データは無いとみなし滞留データ量推定値b0i=0とし、ネットワークが最大送信レート推定値で転送できていないと判断した場合、上記「データ受信端末20が通知メッセージMSi-1送信から通知メッセージMSi送信までの間にネットワークでのロスがなければ受信するデータ量」からこの期間におけるデータ受信端末20の受信データ量を引いた値と、ネットワーク内部のバッファ量推定値(バッファに滞留できるデータの最大値)の小さい方を滞留データ量推定値b0iとする。
【0047】
受信データ量推定値b1i-1のときと同様、通知メッセージMSi-1、MSiを用いてつぎの周期の(x)に相当する受信データ量推定値b0iを求めることができるということは、前回の周期で通知メッセージMSi-2、MSi-1を用いて滞留データ量推定値b0i-1を求めることができることを意味する。また、データ送信端末10による送信開始時の滞留データ量推定値の初期値(=滞留データ量推定値b00)は、今までデータ送信が行われていないので0と置くことが妥当である。すなわち、1回目の通知メッセージMS1を受信したときも、必要な滞留データ量推定値b00が既知である。以上のことから、データ送信端末10は、通知メッセージMSiを受信した時点で、滞留データ量推定値b0i-1が既知であるとみなすことができる。
【0048】
このように、データ送信端末10では、通知メッセージMSi受信時点において、滞留データ量推定値b0i-1、受信データ量推定値b1i-1が既知であることから、(z)の値を算出し、「データ受信端末20が通知メッセージMSi-1送信から通知メッセージMSi送信までの間にネットワークでのロスがなければ受信するデータ量」と、通知メッセージMS1、MS2に示される受信データ量の累積値の差分から得られるこの期間における受信データ量とを比較し、ネットワークが最大送信レート推定値で転送できているかどうかを判定することができる。
【0049】
以上説明したように、本実施の形態では、データ送信端末10は、通知メッセージMSi受信時に、ネットワーク内部のバッファに滞留するデータ量である滞留データ量推定値b0i-1と、データ受信端末20が通知メッセージMSi-1を送信してから応答メッセージRSi-1を受信するまでの間にデータ送信端末10が送信した受信データ量推定値b1i-1を更新管理し、これらの値を用いて現在の最大送信レート推定値Ri-1でデータ送信がロスなく行われているかどうかを判定することとした。これにより、プローブパケットやシーケンス番号付与/送達確認メッセージを用いることなくネットワークの送信レートを推定できることから、送信レートの制御に使用する帯域を低減し、ネットワークの帯域を本来の送信対象のデータ送信に使用することが可能となる、という効果が得られる。
【0050】
実施の形態2.
本実施の形態では、実施の形態1における最大送信レート推定値Riを決定する処理(ステップS3)において、具体的にどのような推定値に更新するかについて詳細に説明する。実施の形態1と異なる部分について説明する。
【0051】
図6は、最大送信レート推定値Riを決定する処理を示すフローチャートである。データ送信端末10の最大送信レート推定値管理部15は、現在の最大送信レート推定値Ri-1でネットワークがロスなくデータを転送できていると判定した場合(ステップS21:Yes)、ネットワークの最大送信レートは現在の最大送信レート推定値Ri-1より大きい可能性があるとして、つぎの最大送信レート推定値Riを現在の最大送信レート推定値Ri-1より増加させる(ステップS22)。これにより、最大送信レート推定値管理部15は、最大送信レート推定値Riをネットワークの最大送信レートにより近い値とすることができる。
【0052】
また、最大送信レート推定値管理部15は、現在の最大送信レート推定値Ri-1でネットワークがデータを転送できていないと判定した場合(ステップS21:No)、つぎの最大送信レート推定値Riをネットワークの最大送信レートに合わせることとする(ステップS23)。このときに使用するネットワークの最大送信レートの推定値は、例えば、受信した通知メッセージMSiに示される受信データ累積値と送信時刻ti、1つ前に受信した通知メッセージMSi-1に示される受信データ累積値と送信時刻ti-1とを用いて平均受信レートを求めることができる。なお、ネットワークの最大送信レートの推定値を求める方法はこれに限定するものではなく、他の方法を用いてもよい。
【0053】
以上説明したように、本実施の形態では、データ送信端末10において、現在の最大送信レート推定値Ri-1でネットワークがデータを転送できていたと判定した場合は、つぎの最大送信レート推定値Riを現在よりも増加し、現在の最大送信レート推定値Ri-1でネットワークがデータを転送できていないと判定した場合は、つぎの最大送信レート推定値Riをネットワークの最大送信レートに合わせることとした。これにより、ネットワークの最大送信レートの増加減少に対して、最大送信レート推定値を追従する形で増加減少させることが可能となる、効果が得られる。
【0054】
実施の形態3.
実施の形態2において、つぎの最大送信レート推定値を現在の最大送信レート推定値より増加させるときの増加値について詳細に説明する。実施の形態2と異なる部分について説明する。
【0055】
最大送信レート推定値を更新する場合において、つぎの2つのことが考えられる。
【0056】
(a)ネットワークの最大送信レートが現在の最大送信レート推定値よりもかなり大きい場合、増加値が小さいと、最大送信レート推定値がネットワークの最大送信レートに至るまでに時間がかかる。そのため、短時間で最大送信レート推定値をネットワークの最大送信レートに近づける方法が必要となる。
【0057】
(b)ネットワークの最大送信レートが安定しており、最大送信レート推定値がネットワークの最大送信レートに一致する場合でも、最大送信レート推定値を増加させる処理をとる。そのため、最大送信レート推定値を増加すると、つぎの判定時に現在の最大送信レート推定値でネットワークがデータを転送できていないと判定し、最大送信レート推定値をネットワークの最大送信レートに合わせる、というサイクルを繰り返し実行することとなる。最大送信レート推定値を増加させた時に生じるデータロス量を抑制するため、このときの最大送信レート推定値の増加分を小さくすることが必要である。
【0058】
上記(a)に対して、データ送信端末10では、最大送信レート推定値管理部15は、通知メッセージ受信時に連続して現在の最大送信レート推定値でネットワークがデータを転送できていたと判定する場合、最大送信レート推定値の増加値を指数関数的に大きくする。ネットワークの最大送信レートと現在の最大送信レート推定値の差が大きいほど、連続して現在の最大送信レート推定値でネットワークがデータを転送できていると判定する回数が増える。このとき、最初のネットワークの最大送信レートと現在の最大送信レート推定値の差分値の対数オーダーの回数の最大送信レート推定値更新で、最大送信レート推定値をネットワークの最大送信レート以上の値にすることが可能となる。なお、増加値を指数関数的に大きくする方法としては、例えば、現在の増加値に対してあらかじめ定める定数(1以上の値)を乗算する方法があるが、これに限定するものではなく、他の方法を用いてもよい。
【0059】
また、上記(b)に対して、データ送信端末10では、最大送信レート推定値管理部15は、現在の最大送信レート推定値でネットワークがデータを転送できていないと判定した場合、つぎに現在の最大送信レート推定値でネットワークがデータを転送できていたと判定したときのために、最大送信レート推定値の増加値を初期値で指定する小さな値に初期化する。これにより、上記(b)のケースの様に現在の最大送信レート推定値でネットワークがデータを転送できている状態と現在の最大送信レート推定値でネットワークがデータを転送できていない状態を繰り返す場合において、不必要な最大送信レート推定値の増加によるパケットロス発生量を抑制する。
【0060】
以上説明したように、本実施の形態では、ネットワークの最大送信レートとの関係に応じて、最大送信レート推定値を増加させるときに増加値の大きさを適宜変更することとした。これにより、ネットワークの最大送信レート増加に対する追従性向上と、ネットワークの最大送信レート安定時の最大送信レート推定値の安定性、という2つを可能とする効果が得られる。
【産業上の利用可能性】
【0061】
以上のように、本発明にかかる通信システムは、データの送信に有用であり、特に、送信レートを変更する場合に適している。
【符号の説明】
【0062】
10 データ送信端末
11 データ送信アプリケーション部
12 シェーパ部
13 ネットワークインタフェース部
14 通知メッセージ受信処理部
15 最大送信レート推定値管理部
16 時計部
20 データ受信端末
21 ネットワークインタフェース部
22 データ受信アプリケーション部
23 通知メッセージ送信処理部
24 時計部

【特許請求の範囲】
【請求項1】
データを送信するデータ送信端末、前記データを受信するデータ受信端末、および前記データ送信端末と前記データ受信端末との間で前記データの転送を行うネットワーク、から構成される通信システムであって、
前記データ受信端末は、データ受信量、前回の通知メッセージを送信してからその応答である応答メッセージを受信するまでの経過時間、および今回の通知メッセージの送信時刻の情報を含む通知メッセージを定期的に前記データ送信端末へ送信し、
前記データ送信端末は、前記通知メッセージの情報および前回の最大送信レート推定値の決定処理までに取得した情報に基づいて、自端末が送信したデータをネットワークがロスなく転送できていたかどうかを判定し、判定の結果に基づいてつぎに通知メッセージを受信するまでの間の最大送信レート推定値を決定し、決定した最大送信レート推定値に従って前記データ受信端末に送信するデータの送信レートを制御する、また、前記通知メッセージに対する応答メッセージを前記データ受信端末へ送信する、
ことを特徴とする通信システム。
【請求項2】
前記データ送信端末は、
前記通知メッセージの情報および前回の最大送信レート推定値の決定処理までに取得した情報を用いて、前記データ受信端末が前回の通知メッセージを送信する時点において前記ネットワーク内のバッファに滞留している滞留データ量推定値、および前記データ受信端末が前回の送信メッセージを送信してから応答メッセージを受信するまでの期間に受信した受信データ量推定値を算出し、算出したこれらの値を用いて判定を行う、
ことを特徴とする請求項1に記載の通信システム。
【請求項3】
前記データ送信端末は、
前回および今回受信した通知メッセージに含まれるデータ受信量の差分と、前記滞留データ量推定値、前記受信データ量推定値、および前記データ受信端末が応答メッセージを受信してから今回の通知メッセージを送信するまでの間に受信したデータ量の合計値と、を比較した結果、前記差分の方が小さいときは、自端末が送信したデータをネットワークがロスなく転送できていないと判定し、その他のときは、自端末が送信したデータをネットワークがロスなく転送できていると判定する、
ことを特徴とする請求項2に記載の通信システム。
【請求項4】
前記データ送信端末は、
前記判定の結果、自端末が送信したデータをネットワークがロスなく転送できていると判定した場合、現在の最大送信レート推定値に前記データ送信端末が管理する増加値を加算した値をつぎの最大送信レート推定値とし、自端末が送信したデータをネットワークがロスなく転送できていないと判定した場合、これまでに受信した通知メッセージの情報に基づいて算出したネットワークの最大送信レートをつぎの最大送信レート推定値とする、
ことを特徴とする請求項1、2または3に記載の通信システム。
【請求項5】
前記データ送信端末は、
連続して自端末が送信したデータをネットワークがロスなく転送できていると判定した場合、前回加算した増加値よりも大きな値の増加値を用いて加算を行い、
その後、自端末が送信したデータをネットワークがロスなく転送できていないと判定した場合、前記増加値を初期値の値に戻す、
ことを特徴とする請求項4に記載の通信システム。
【請求項6】
データ受信端末およびデータの転送を行うネットワークとともに通信システムを構成するデータ送信端末であって、
前記データ受信端末から、データ受信量、前回の通知メッセージを送信してからその応答である応答メッセージを受信するまでの経過時間、および今回の通知メッセージの送信時刻の情報を含む通知メッセージを定期的に受信する場合に、
前記通知メッセージの情報および前回の最大送信レート推定値の決定処理までに取得した情報に基づいて、自端末が送信したデータをネットワークがロスなく転送できていたかどうかを判定し、判定の結果に基づいてつぎに通知メッセージを受信するまでの間の最大送信レート推定値を決定し、決定した最大送信レート推定値に従って前記データ受信端末に送信するデータの送信レートを制御する、また、前記通知メッセージに対する応答メッセージを前記データ受信端末へ送信する、
ことを特徴とするデータ送信端末。
【請求項7】
前記通知メッセージの情報および前回の最大送信レート推定値の決定処理までに取得した情報を用いて、前記データ受信端末が前回の通知メッセージを送信する時点において前記ネットワーク内のバッファに滞留している滞留データ量推定値、および前記データ受信端末が前回の送信メッセージを送信してから応答メッセージを受信するまでの期間に受信した受信データ量推定値を算出し、算出したこれらの値を用いて判定を行う、
ことを特徴とする請求項6に記載のデータ送信端末。
【請求項8】
前回および今回受信した通知メッセージに含まれるデータ受信量の差分と、前記滞留データ量推定値、前記受信データ量推定値、および前記データ受信端末が応答メッセージを受信してから今回の通知メッセージを送信するまでの間に受信したデータ量の合計値と、を比較した結果、前記差分の方が小さいときは、自端末が送信したデータをネットワークがロスなく転送できていないと判定し、その他のときは、自端末が送信したデータをネットワークがロスなく転送できていると判定する、
ことを特徴とする請求項7に記載のデータ送信端末。
【請求項9】
前記判定の結果、自端末が送信したデータをネットワークがロスなく転送できていると判定した場合、現在の最大送信レート推定値に前記データ送信端末が管理する増加値を加算した値をつぎの最大送信レート推定値とし、自端末が送信したデータをネットワークがロスなく転送できていないと判定した場合、これまでに受信した通知メッセージの情報に基づいて算出したネットワークの最大送信レートをつぎの最大送信レート推定値とする、
ことを特徴とする請求項6、7または8に記載のデータ送信端末。
【請求項10】
連続して自端末が送信したデータをネットワークがロスなく転送できていると判定した場合、前回加算した増加値よりも大きな値の増加値を用いて加算を行い、
その後、自端末が送信したデータをネットワークがロスなく転送できていないと判定した場合、前記増加値を初期値の値に戻す、
ことを特徴とする請求項9に記載のデータ送信端末。
【請求項11】
データ送信端末およびデータの転送を行うネットワークとともに通信システムを構成するデータ受信端末であって、
データ受信量、前回の通知メッセージを送信してからその応答である応答メッセージを受信するまでの経過時間、および今回の通知メッセージの送信時刻の情報を含む通知メッセージを定期的に前記データ送信端末へ送信する、
ことを特徴とするデータ受信端末。
【請求項12】
データ送信端末がネットワークを経由してデータ受信端末へデータを送信するときの最大送信レート推定値を制御する送信レート制御方法であって、
前記データ受信端末が、データ受信量、前回の通知メッセージを送信してからその応答である応答メッセージを受信するまでの経過時間、および今回の通知メッセージの送信時刻の情報を含む通知メッセージを定期的に前記データ送信端末へ送信する通知メッセージ送信ステップと、
前記データ送信端末が、前記通知メッセージの情報および前回の最大送信レート推定値の決定処理までに取得した情報に基づいて、自端末が送信したデータをネットワークがロスなく転送できていたかどうかを判定するネットワーク判定ステップと、
前記データ送信端末が、前記ネットワーク判定ステップにおける判定の結果に基づいてつぎに通知メッセージを受信するまでの間の最大送信レート推定値を決定する最大送信レート推定値決定ステップと、
前記データ送信端末が、前記最大送信レート推定値決定ステップで決定した最大送信レート推定値に従って前記データ受信端末に送信するデータの送信レートを制御する最大送信レート制御ステップと、
前記データ送信端末が、前記通知メッセージに対する応答メッセージを送信する応答メッセージ送信ステップと、
を含むことを特徴とする送信レート制御方法。
【請求項13】
前記ネットワーク判定ステップでは、
前記データ送信端末が、前記通知メッセージの情報および前回の最大送信レート推定値の決定処理までに取得した情報を用いて、前回の前記データ受信端末が通知メッセージを送信する時点において前記ネットワーク内のバッファに滞留している滞留データ量推定値、および前記データ受信端末が前回の送信メッセージを送信してから応答メッセージを受信するまでの期間に受信した受信データ量推定値を算出し、算出したこれらの値を用いて判定を行う、
ことを特徴とする請求項12に記載の送信レート制御方法。
【請求項14】
前記ネットワーク判定ステップでは、
前記データ送信端末が、前回および今回受信した通知メッセージに含まれるデータ受信量の差分と、前記滞留データ量推定値、前記受信データ量推定値、および前記データ受信端末が応答メッセージを受信してから今回の通知メッセージを送信するまでの間に受信したデータ量の合計値と、を比較した結果、前記差分の方が小さいときは、自端末が送信したデータをネットワークがロスなく転送できていないと判定し、その他のときは、自端末が送信したデータをネットワークがロスなく転送できていると判定する、
ことを特徴とする請求項13に記載の送信レート制御方法。
【請求項15】
前記最大送信レート推定値決定ステップでは、
前記データ送信端末が、前記ネットワーク判定ステップにおける判定の結果、自端末が送信したデータをネットワークがロスなく転送できていると判定した場合、現在の最大送信レート推定値に前記データ送信端末が管理する増加値を加算した値をつぎの最大送信レート推定値とし、自端末が送信したデータをネットワークがロスなく転送できていないと判定した場合、これまでに受信した通知メッセージの情報に基づいて算出したネットワークの最大送信レートをつぎの最大送信レート推定値とする、
ことを特徴とする請求項12、13または14に記載の送信レート制御方法。
【請求項16】
前記最大送信レート推定値決定ステップでは、
前記ネットワーク判定ステップにおいて連続して自端末が送信したデータをネットワークがロスなく転送できていると判定した場合、前記データ送信端末が、前回加算した増加値よりも大きな値の増加値を用いて加算を行い、
その後、前記ネットワーク判定ステップにおいて自端末が送信したデータをネットワークがロスなく転送できていないと判定した場合、前記データ送信端末が、前記増加値を初期値の値に戻す、
ことを特徴とする請求項15に記載の送信レート制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2013−85192(P2013−85192A)
【公開日】平成25年5月9日(2013.5.9)
【国際特許分類】
【出願番号】特願2011−225160(P2011−225160)
【出願日】平成23年10月12日(2011.10.12)
【出願人】(000006013)三菱電機株式会社 (33,312)
【Fターム(参考)】