(57)【要約】  データ伝送システム１００において、送信端末２と受信端末１がネットワーク３により接続され、送信端末２がネットワーク３を介してデータパケットを受信端末１に送信し、受信端末１が送信端末２からのデータパケットの受信に応じて送信端末２に制御パケットを返送する。受信端末１のネットワークデータ測定部１１は、ネットワークの混雑度を予測可能なネットワークデータを測定する。制御パケット送信速度決定手段は、所定長の期間毎に、該期間に亘ってネットワークデータ測定部１１が測定したネットワークデータを用いてネットワークの混雑度を予測すると共に、予測した混雑度に応じて受信端末１から送信する制御パケットの送信速度を決定する。これにより、ネットワーク混雑度に確実に追従することができる。
2011048740.tif 000002
【特許請求の範囲】
【請求項１】
送信端末と受信端末がネットワークにより接続され、前記送信端末が前記ネットワークを介してデータパケットを受信端末に送信し、前記受信端末が前記送信端末からのデータパケットの受信に応じて前記送信端末に確認応答パケットを返送するデータ伝送システムにおける送信速度制御方法であって、
前記受信端末により、前記ネットワークの混雑度を予測可能なネットワークデータを測定し、
所定長の期間毎に、該期間に亘って測定した前記ネットワークデータを用いてネットワークの混雑度を予測し、
予測した前記混雑度に応じて前記受信端末から送信する確認応答パケットの送信速度を決定することを特徴とする送信速度制御方法。
【請求項２】
さらに、予測した前記ネットワークの混雑度に応じて前記送信端末から送信するデータパケットの送信速度を決定することを特徴とする請求項１に記載の送信速度制御方法。
【請求項３】
送信端末と受信端末がネットワークにより接続され、前記送信端末が前記ネットワークを介してデータパケットを受信端末に送信し、前記受信端末が前記送信端末からのデータパケットの受信に応じて前記送信端末に確認応答パケットを返送するデータ伝送システムであって、
前記受信端末は、
前記ネットワークの混雑度を予測可能なネットワークデータを測定するネットワークデータ測定手段と、
所定長の期間毎に、該期間に亘って前記ネットワークデータ測定手段が測定した前記ネットワークデータを用いて前記ネットワークの混雑度を予測する第１の混雑度予測手段と、
前記第１の混雑度予測手段が予測した混雑度に応じて前記確認応答パケットの送信速度を決定する確認応答パケット送信速度決定手段とを備えることを特徴とするデータ伝送システム。
【請求項４】
前記ネットワークデータは、前記送信端末から送信されたデータパケットのうちのロスパケットの発生状況を示しうる情報を含むことを特徴とする請求項３に記載のデータ伝送システム。
【請求項５】
前記受信端末は、さらに、
前記第１の混雑度予測手段が予測した混雑度に応じて、前記送信端末が前記受信端末にデータパケットを送信する際の送信速度を決定するデータパケット送信速度決定手段と、
前記確認応答パケットを作成する確認応答パケット作成手段とをさらに有し、
該確認応答パケット作成手段は、前記データパケット送信速度決定手段が決定した前記データパケット送信速度を前記確認応答パケットに含め、
前記送信端末は、前記受信端末から返送された確認応答パケットに含まれる前記データパケット送信速度で、データパケットを前記受信端末に送信することを特徴とする請求項３または４に記載のデータ伝送システム。
【請求項６】
前記受信端末は、前記確認応答パケットを作成する確認応答パケット作成手段をさらに備え、
前記送信端末は、
ネットワークの混雑度を予測する第２の混雑度予測手段と、
該第２の混雑度予測手段が予測した混雑度に応じて、前記受信端末にデータパケットを送信する際の送信速度を決定するデータパケット送信速度決定手段とを有し、
前記確認応答パケット作成手段は、前記第２の混雑度予測手段と前記データパケット送信速度決定手段が必要とする情報であって、前記ネットワークデータ測定手段が測定したネットワークデータの少なくも一部または前記ネットワークデータから算出されるデータである前記情報を前記確認応答パケットに含め、
前記第２の混雑度予測手段は、所定長の期間毎に、該期間内に受信した複数の制御パケットに含まれる前記情報からネットワークの混雑度を予測し、
前記データパケット送信速度決定手段は、前記第２の混雑度予測手段が予測した混雑度に応じて、データパケットの送信速度を決定することを特徴とする請求項３または４に記載のデータ伝送システム。
【請求項７】
データパケットを送信する送信端末とネットワークにより接続され、前記送信端末からのデータパケットの受信に応じて前記送信端末に確認応答パケットを返送する受信端末であって、
前記ネットワークの混雑度を予測可能なネットワークデータを測定するネットワークデータ測定手段と、
所定長の期間毎に、該期間に亘って前記ネットワークデータ測定手段が測定した前記ネットワークデータを用いて前記ネットワークの混雑度を予測する第１の混雑度予測手段と、
前記第１の混雑度予測手段が予測した混雑度に応じて前記確認応答パケットの送信速度を決定する確認応答パケット送信速度決定手段とを備えることを特徴とする受信端末。
【請求項８】
前記ネットワークデータは、前記送信端末から送信されたデータパケットのうちのロスパケットの発生状況を示しうる情報を含むことを特徴とする請求項７に記載の受信端末。
【請求項９】
前記第１の混雑度予測手段が予測した混雑度に応じて、前記送信端末が前記受信端末にデータパケットを送信する際の送信速度を決定するデータパケット送信速度決定手段と、
前記確認応答パケットを作成する確認応答パケット作成手段とをさらに有し、
該確認応答パケット作成手段は、前記データパケット送信速度決定手段が決定した前記データパケット送信速度を前記確認応答パケットに含めることを特徴とする請求項７または８に記載の受信端末。
【請求項１０】
前記確認応答パケットを作成する確認応答パケット作成手段をさらに備え、
該確認応答パケット作成手段は、前記送信端末によるネットワークの混雑度の予測と、予測した混雑度に応じたデータパケットの送信速度の決定とに必要な情報であって、前記ネットワークデータ測定手段が測定したネットワークデータの少なくも一部または前記ネットワークデータから算出されるデータである前記情報を前記確認応答パケットに含めることを特徴とする請求項７または８に記載の受信端末。
【請求項１１】
ネットワークを介して受信端末と接続され、前記受信端末にデータパケットを送信すると共に、データパケットの受信に応じて前記受信端末が返送する確認応答パケットを受信する送信端末であって、
前記確認応答パケットには、前記受信端末が予測したネットワークの混雑度に応じて決定したデータパケットの送信速度が含まれており、
前記確認応答パケットに含まれる前記データパケットの送信速度で、前記受信端末にデータパケットを送信することを特徴とする送信端末。
【請求項１２】
前記送信端末は、
所定のサイズになるように前記受信端末に送信するデータパケットを整形するデータパケット整形手段を有することを特徴とする請求項１１に記載の送信端末。
【請求項１３】
ネットワークを介して受信端末と接続され、前記受信端末にデータパケットを送信すると共に、データパケットの受信に応じて前記受信端末が返送する確認応答パケットを受信する送信端末であって、
ネットワークの混雑度を予測する第２の混雑度予測手段と、
該第２の混雑度予測手段が予測した混雑度に応じて、前記受信端末にデータパケットを送信する際の送信速度を決定するデータパケット送信速度決定手段とを有し、
前記確認応答パケットには、前記第２の混雑度予測手段と前記データパケット送信速度決定手段とが必要とする情報であって、前記受信端末装置側で測定したネットワークデータの少なくも一部または前記ネットワークデータから算出されるデータである前記情報が含まれており、
前記第２の混雑度予測手段は、所定長の期間毎に、該期間内に受信した複数の制御パケットに含まれる前記情報からネットワークの混雑度を予測し、
前記データパケット送信速度決定手段は、前記第２の混雑度予測手段が予測した混雑度に応じて、データパケットの送信速度を決定することを特徴とする送信端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークで接続された端末間のデータ伝送技術に関する。
【背景技術】
【０００２】
近年、ＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）検索、データ通信、コンテンツ配信、サーバホスティング、シンクライアント（Ｔｈｉｎ  Ｃｌｉｅｎｔ）等の各種サービスを提供するデータセンタの大規模化が進んでいる。例えば、ＷＷＷ検索サービス、データ通信サービス、コンテンツ配信サービスを中核事業とする一般的なインターネットサービスプロバイダが保有するデータセンタは、数千台規模のデータセンタ構成機器（サーバ、ストレージ、ルータおよびスイッチなどのネットワーク機器）で構成されている。【０００３】
データセンタは、各種サービスをユーザに無停止で提供する必要がある。これを実現するために、データセンタ内に設置する運用管理サーバが、数千台規模のデータセンタ構成機器の稼働状況を常時監視し、データセンタ構成機器の故障や不具合を迅速に検出できるように運用管理を行っている。具体的には、例えば、運用管理サーバは、データセンタ構成機器が生成する稼働状況ログファイルを、データセンタ内の運用管理ネットワークを経由して収集する。上記運用管理サーバは、収集した稼働状況ログファイルを解析してデータセンタ構成機器の稼働状況を把握する。【０００４】
運用管理ネットワークでは、数千台規模のデータセンタ構成機器により生成される様々なサイズの稼働状況ログファイルの伝送がランダムに発生するため、通信トラヒック、ひいてはネットワーク混雑度（例えば「ネットワーク帯域−通信トラヒック」）は、短周期に変化する。ネットワーク混雑度が高い状態（輻輳状態）で、大量のデータパケットを送信しても、ネットワーク輻輳により、伝送遅延やパケットロスが頻発し、高速なデータ伝送はできない。一方、ネットワーク混雑度が低い状態（通常状態）で高速にデータ伝送するには、伝送遅延やパケットロスが発生しない範囲で送信可能なデータパケット量を見極める必要がある。【０００５】
このようなことから、高速なデータ伝送を実現するために、時々刻々と変化するネットワーク混雑度に追従して適切な速度でデータパケットを送信することが要求されている。【０００６】
特許文献１には、データパケットの受信速度に応じて、該データパケットを受信した端末（以下受信端末という）から、データパケットを送信した端末（以下送信端末という）に返送する確認応答パケットの送信速度と、上記送信端末から上記受信端末に以降に送信するデータパケットの送信速度とを設定する技術が開示されている。【０００７】
具体的には、受信端末は、データパケットを受信すると、その受信速度を測定すると共に、測定した受信速度が含まれる確認応答パケットを生成して送信端末に返送する。この際、受信端末は、上記受信速度に応じて確認応答パケットの送信速度を設定する。送信端末は、受信端末からの確認応答パケットに含まれる受信速度を取得し、該受信速度に応じて以降のデータパケットの送信速度を設定する。【０００８】
すなわち、この技術は、受信端末におけるデータパケットの受信速度をネットワーク混雑度の指標として利用し、それに応じて上記データパケットの受信後に行われる、受信端末からの確認応答パケットの送信の速度と送信端末からのデータパケットの送信の速度を調整している。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００４−８００７０号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、特許文献１の技術は、受信端末におけるデータパケットの過去の受信速度に基づいて、受信端末が現在送信する確認応答パケットの送信速度と、送信端末が現在送信するデータパケットの送信速度を設定している。受信端末におけるデータパケットの受信速度は、そのデータパケットが受信されたときのネットワーク混雑度の指標になり得るものの、受信端末が確認応答パケットを送信する際と、送信端末が以降のデータパケットを送信する際のネットワーク混雑度の指標になり得るとは限らない。【００１１】
例えば、前述したデータセンタ内の運用管理ネットワークのような、ネットワーク混雑度が短周期に変化するネットワークを想定してみる。該ネットワークでは、受信端末におけるデータパケットの受信時のネットワーク混雑度と、受信端末が上記データパケットを受信し該データパケットに対して送信速度を設定する際のネットワーク混雑度および送信端末が上記データパケットに対する応答確認パケットを受信した後にデータパケットの送信速度を設定する際のネットワーク混雑度とは、大きく異なる場合がある。このような場合、特許文献１に開示された技術では、現在のネットワーク混雑度に追従した適切な送信速度によるデータパケットの送信ができない。【００１２】
本発明は、上記事情に鑑みてなされたものであり、ネットワーク混雑度に確実に追従することができるデータパケットの送信技術を提供する。
【課題を解決するための手段】
【００１３】
本発明の１つの態様は、データ伝送システムにおける送信速度の制御方法である。データ伝送システムは、送信端末と受信端末がネットワークにより接続されている。送信端末は、ネットワークを介してデータパケットを受信端末に送信し、受信端末は、送信端末からのデータパケットの受信に応じて送信端末に確認応答パケットを返送する。
本発明の態様にかかる該制御方法は、上記のようなデータ伝送システムにおいて、受信端末により、ネットワークの混雑度を予測可能なネットワークデータを測定し、所定長の期間毎に、該期間に亘って測定したネットワークデータを用いてネットワークの混雑度を予測し予測した混雑度に応じて受信端末から送信する確認応答パケットの送信速度を決定する。【００１４】
なお、上記態様の方法をデータ伝送システムに置き換えて表現したもの、該データ伝送システムにおける受信端末または送信端末、該方法の一部をコンピュータに実行せしめるプログラムも、本発明の態様としては有効である。
【発明の効果】
【００１５】
本発明にかかる技術によれば、ネットワーク混雑度に確実に追従した適切な速度でデータ伝送ができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の第１の実施の形態にかかるデータ伝送システムを示す図である。
【図２】図１に示すデータ伝送システムによる処理の流れを示すフローチャートである。
【図３】受信端末側におけるデータパケットの受信状況の一例を示す図である。
【図４】ネットワーク混雑度モデルの一例を示す図である。
【図５】図１に示すデータ伝送システムにおける受信端末が作成した制御パケットの構成例を示す図である。
【図６】図１に示すデータ伝送システムにおいてデータパケット送信速度を決定する際に用いる制御パケットの例を説明するための図である（その１）。
【図７】図１に示すデータ伝送システムにおいてデータパケット送信速度を決定する際に用いる制御パケットの例を説明するための図である（その２）。
【図８】図１に示すデータ伝送システムにおいてデータパケット送信速度を決定する際の手法を説明するための図である（その１）。
【図９】図１に示すデータ伝送システムにおいてデータパケット送信速度を決定する際の手法を説明するための図である（その２）。
【図１０】図１に示すデータ伝送システムにおいてデータパケット送信速度を決定する際の別の手法を説明するための図である。
【図１１】本発明の第２の実施の形態にかかるデータ伝送システムを示す図である。
【図１２】図１１に示すデータ伝送システムによる処理の流れを示すフローチャートである。
【図１３】図１１に示すデータ伝送システムの送信端末におけるデータパケット整形部を説明するための図である。
【図１４】図１に示すデータ伝送システムの受信端末が作成した制御パケットの構成を示す図である。
【発明を実施するための形態】
【００１７】
説明の明確化のため、以下の記載及び図面は、適宜、省略及び簡略化がなされている。また、様々な処理を行う機能ブロックとして図面に記載される各要素は、ハードウェア的には、ＣＰＵ、メモリ、その他の回路で構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
＜第１の実施の形態＞
【００１８】
図１は、本発明の第１の実施の形態にかかるデータ伝送システム１００を示す。データ伝送システム１００は、受信端末１と送信端末２を備える。受信端末１と送信端末２は、データ通信機能、プログラム制御によるデータ処理機能、情報記憶機能等を具備するコンピュータやワークステーションであり、相互にデータ通信ができるようにネットワーク３で接続されている。
【００１９】
受信端末１は、送信端末２からのデータパケットを受信すると共に、後述する制御パケットを送信端末２に返送する。受信端末１は、ネットワークデータ測定部１１、制御パケット送信速度決定部１２、ネットワーク混雑度モデル記憶部１３、制御パケット作成部１４、制御パケット送信速度制御部１５を備える。
【００２０】
受信端末１が送信端末２からデータパケットを受信すると、ネットワークデータ測定部１１は、今後のネットワーク混雑度を予測するためのネットワークデータを測定する。これらのネットワークデータは、たとえばロスパケットの有無、データパケットの受信時刻等を示すデータである。ネットワークデータ測定部１１は、受信したデータパケットのシーケンス番号を確認することにより、上記ネットワークデータを測定する。
【００２１】
制御パケット作成部１４は、送信端末２に返送する確認応答パケットを作成する。以下の説明において、確認応答パケットを制御パケットともいう。
【００２２】
ネットワーク混雑度モデル記憶部１３は、ネットワークデータから計算するパケットロス率やデータパケット受信間隔ジッタ（データパケット受信間隔の分散値）等と、将来時刻におけるネットワーク混雑度との関係を示すネットワーク混雑度モデルを記憶している。
【００２３】
制御パケット送信速度決定部１２は、制御パケットの送信速度を決定するものである。具体的には、まず、制御パケット送信速度決定部１２は、ネットワークデータ測定部１１が測定したネットワークデータを用いて、パケットロス率、データパケット受信間隔ジッタ等を計算する。そして、制御パケット送信速度決定部１２は、ネットワーク混雑度モデル記憶部１３に予め記憶されたネットワーク混雑度モデルを参照して、上記パケットロス率、データパケット受信間隔ジッタの計算結果に基づき将来時刻のネットワーク混雑度を予測する。その後、制御パケット送信速度決定部１２は、将来時刻のネットワーク混雑度の予測結果に基づき制御パケットの最適な送信速度を決定する。すなわち、本実施の形態において、制御パケット送信速度決定部１２は、請求項でいう第１の混雑度予測部（図示せず）を含む。なお、制御パケットの送信速度の決定に関しては、制御パケット送信速度決定部１２は、例えば次のようにする。輻輳状態では、データパケット送信速度をきめ細かく制御する必要があるため、制御パケット送信速度決定部１２は、制御パケット送信速度を高速化する。一方、通常状態では、ネットワーク帯域に余裕があるためデータパケット送信速度を厳密に制御しなくとも伝送効率に大きな影響がないので、制御パケット送信速度決定部１２は、制御パケット送信速度を低速化する。
【００２４】
制御パケット送信速度制御部１５は、ネットワーク３を介して、制御パケット送信速度決定部１２が決定した送信速度で、制御パケット作成部１４が作成した制御パケットを送信端末２に送信する。
【００２５】
送信端末２は、受信端末１にデータパケットを送信するものであり、データパケット送信速度制御部２１、ロスパケット再送部２２、データパケット記憶部２３、制御パケット解析部２４およびデータパケット送信速度決定部２５を備える。
【００２６】
データパケット記憶部２３は、送信端末２が受信端末１に伝送するデータパケットを記憶する。
【００２７】
制御パケット解析部２４は、受信端末１から受信した制御パケットを解析して、ロスパケットのシーケンス番号およびパケットロス時刻を抽出する。なお、ロスパケットは、送信端末２から受信端末１に伝送する全データパケットの内、受信端末１が正常に受信できなかったデータパケットである。パケットロス時刻は、ロスパケットの推定受信時刻である。また、制御パケット解析部２４は、解析結果に基づき、１つ目のロスパケットの前に送信したすべてのデータパケットをデータパケット記憶部２３から削除する。
【００２８】
データパケット送信速度決定部２５は、受信端末１に送信するデータパケットの送信速度を決定する。なお、データパケット送信速度決定部２５は、初めて受信端末１に送信するデータパケットの送信速度のみならず、ロスパケットを再送する際の送信速度も決定する。また、詳細については後述するが、データパケット送信速度決定部２５は、ネットワークの混雑度を予測すると共に、予測した混雑度に応じてデータパケットの送信速度を決定するものである。すなわち、本実施の形態において、データパケット送信速度決定部２５は、請求項でいう第２の混雑度予測部（図示せず）を含む。
【００２９】
データパケット送信速度制御部２１は、データパケット送信速度決定部２５が決定した送信速度でデータパケット（ロスパケットに対応するデータパケットを含む）を受信端末１に送信する。
【００３０】
ロスパケット再送部２２は、制御パケット解析部２４による解析結果を参照して、受信端末１に正常送信できたと確認できたデータパケットをデータパケット記憶部２３から消去する。一方、ロスパケットについては、ロスパケット再送部２２は、制御パケット解析部２４からのロスパケットのシーケンス番号に対応するデータパケットをデータパケット記憶部２３から読み出して、データパケット送信速度制御部２１に出力して再送させる。
【００３１】
次いで、図２のフローチャートを参照して本実施の形態のデータ伝送システム１００による処理の流れを説明する。
送信端末２によるデータ伝送開始時に、受信端末１がデータパケット受信可能な状態にあると仮定して動作を説明する。本仮定は、例えば、受信端末１がデータパケットを常時受信できるようにデータパケット受信処理（図２におけるステップＤ１）を担うプログラムをサーバプログラムとして受信端末１に常時起動しておく等の方法により成立する。
【００３２】
送信端末２は、例えばログファイルから生成されるデータパケットがデータパケット記憶部２３に一定量以上記憶された場合、データ伝送を開始する（ステップＳ１）。送信端末２は、データパケット記憶部２３から、データパケットを読み込んで、受信端末１にデータパケット送信を開始する（ステップＳ１１）。さらに、送信端末２は、受信端末１が送信する制御パケットを受信するために、制御パケット受信を開始する（ステップＳ２１）。
【００３３】
受信端末１は、送信端末２が送信するデータパケットを一定期間に渡って受信しながら（ステップＳ１２、Ｄ１）、ネットワークデータを測定する（ステップＤ２）。次に、受信端末１は、測定したネットワークデータからパケットロス率、データパケット受信間隔ジッタ等を算出すると共に、ネットワーク混雑度モデル記憶部１３に記憶されたネットワーク混雑度モデルを参照して将来時刻でのネットワーク混雑度を予測する。そして、受信端末１は、予測した将来時刻でのネットワーク混雑度に基づき制御パケット送信速度を決定する（ステップＤ３）。その後、制御パケット作成部１４は、ロスパケットのシーケンス番号およびパケットロス時刻等を記載した制御パケットを作成する（ステップＤ４）。制御パケット送信速度制御部１５は、ステップＤ３で決定された制御パケット送信速度に従って、制御パケット作成部１４が作成した制御パケットを送信端末２に送信する（ステップＤ５）。
【００３４】
送信端末２において、制御パケット解析部２４は、受信端末１から受信した制御パケットを解析し、ロスパケットのシーケンス番号およびパケットロス時刻等を抽出する（ステップＳ２２、Ｓ２３）と共に、制御パケットの後述する最終受信パケットフィールドに記載されたシーケンス番号以前のシーケンス番号に対応するデータパケットをデータパケット記憶部２３から削除する。
【００３５】
ロスパケット再送部２２は、制御パケット解析部２４から通知されたロスパケットのシーケンス番号に対応するデータパケットをデータパケット記憶部２３から読み出して、データパケット送信速度制御部２１に出力して再送させる（ステップＳ１２）。並行して、データパケット送信速度決定部２５は、制御パケット解析部２４が抽出したロスパケットのシーケンス番号、パケットロス時刻、および該ロスパケットのパケットサイズに基づきデータパケット送信速度を決定する（ステップＳ１３）。
【００３６】
データパケット送信速度制御部２１は、ロスパケットを含む全データパケットを、ステップＳ１３で決定したデータパケット送信速度に従って受信端末１に順次送信し、データパケット記憶部２３に記憶される全データパケットが正常伝送された時点で処理を終了する（ステップＳ１４、Ｓ２）。
【００３７】
次に、具体例を挙げながらデータ伝送システム１００をより詳細に説明する。
受信端末１および送信端末２は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等の演算処理部、入出力インターフェイス、記憶部等を備えたコンピュータ、ワークステーション、専用端末等により実現される。記憶部は、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）やＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）等である。また、受信端末１および送信端末２は、データパケットおよび制御パケットを伝送するための、イーサネット（登録商標）や無線ＬＡＮ等に対応したネットワーク通信部を備えている。
【００３８】
受信端末１と送信端末２は、データパケット伝送のためにＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）トランスポートプロトコルを使用することが望ましい。その理由は、ＵＤＰトランスポートプロトコルは、パケットの到着順序、ロスパケット再送等が保証されないが、高速にデータ伝送できるからである。本第１の実施の形態で想定するデータセンタ構成機器の稼働状況ログファイルから生成されるデータパケットは、データ伝送完了時（図２のステップＳ２）に全データパケットがパケットロスなく伝送されていれば、伝送過程のデータパケット到着順序の入れ替わりは問題にならない。
【００３９】
一方、受信端末１と送信端末２は、制御パケット伝送のためにＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）トランスポートプロトコルを使用することが望ましい。その理由は、本第１の実施の形態では、受信端末１が送信する制御パケットが、到着順序が入れ替わることなく送信端末２に到着することが望ましいからである。なぜならば、送信端末２がデータパケット送信速度を決定するために使用する制御パケットに記載されたネットワークデータは、パケットロス時刻に基づく時系列データであり、制御パケット到着順序が入れ替わった場合、適切にデータパケット送信速度を決定できないからである。
【００４０】
データ伝送が開始されると、送信端末２はデータパケット記憶部２３に記憶されているデータパケットを抽出して、受信端末１に送信を開始する。上記データパケットには、データパケットの送信順序を示すシーケンス番号が少なくとも記載される。但し、当該データパケットのロスが起きた場合に当該データパケットは再送される必要があるため、送信端末２がデータパケット記憶部２３からデータパケットを抽出した後も、当該データパケットはデータパケット記憶部２３に記憶されたままである。
【００４１】
受信端末１において、ネットワークデータ測定部１１は、送信端末２から受信したデータパケットのシーケンス番号を確認して、ロスパケットの発生有無、データパケットの受信時刻等のネットワークデータを測定する。そして、制御パケット送信速度決定部１２は、ネットワークデータ測定部１１により一定期間に渡って測定したネットワークデータを用いて制御パケット送信速度を決定する。ネットワークデータの測定期間は、例えば時間単位または受信データパケット数単位等で設定される。
【００４２】
制御パケット送信速度決定部１２による、制御パケット送信速度の決定を詳細に説明する。図３に示す状況を例に説明する。なお、図３において、実線枠は正常に受信できたデータパケットを示し、点線枠は、正常に受信できなかったデータパケット（ロスパケット）を示す。また、各枠中における数字は、該データパケットのシーケンス番号を示し、時刻Ｔの添え字が小さくなるほど過去時刻を示す。
【００４３】
図３に示す例では、シーケンス番号１、３、６、７、８のデータパケット（以降ではデータパケット１、３、６、７、８と示す）は、それぞれ時刻Ｔ１、Ｔ３、Ｔ６、Ｔ７、Ｔ８に正常に受信されたデータパケットであり、データパケット２、４、５は、正常に受信できなかったロスパケットである。なお、時刻Ｔ８は、現在の時刻であり、ロスパケットとなるデータパケット２、４、５は、受信の失敗により、それらの受信時刻は不明である。
【００４４】
図３に示す状況では、ネットワークデータ測定部１１は、ネットワークデータとして、各ロスパケットのシーケンス番号（２、４、５）と、正常に受信できたデータパケットの受信時刻（Ｔ１、Ｔ３、Ｔ６、Ｔ７、Ｔ８）を取得する。
【００４５】
制御パケット送信速度決定部１２は、ネットワークデータ測定部１１が取得したネットワークデータからパケットロス率、データパケット受信間隔ジッタを計算する。本実施の形態において、制御パケット送信速度決定部１２は、ロスパケット数がデータパケットの総数に占める割合をパケットロス率として算出する。また、式（１）に従って、制御パケット送信速度決定部１２は、正常に受信できたデータパケットの受信間隔の分散値Ｖをデータパケット受信間隔ジッタとして算出する。
【数１】
2011048740.tif 000003
【００４６】
図３に示す例では、８個のデータパケットのうちに３個のロスパケットが生じたため、パケットロス率は３７．５％になる。また、正常に受信できた５個のデータパケット１、３、６、７、８の受信間隔Ｔ３−Ｔ１、Ｔ６−Ｔ３、Ｔ７−Ｔ６、Ｔ８−Ｔ７の分散値Ｖは、データパケット受信間隔ジッタとして算出される。
【００４７】
制御パケット送信速度決定部１２は、制御パケット送信速度を決定するために、ネットワーク混雑度モデル記憶部１３を参照する。ネットワーク混雑度モデル記憶部１３には、パケットロス率およびデータパケット受信間隔ジッタに応じたネットワーク混雑度の状態遷移モデルが記憶されている。図４は、ネットワーク混雑度モデルの一例を示す。
【００４８】
図４に示すモデルでは、ネットワーク混雑度が「通常状態」および「輻輳状態」に大別されている。また、データ伝送開始時の初期状態は通常状態とされている。通常状態とは、利用可能ネットワーク帯域が十分に残されている状態であり、輻輳状態とは、利用可能ネットワーク帯域が残されていない状態である。
【００４９】
図４に示すように、該モデルでは、通常状態において、パケットロス率ａ［％］がパケットロス率閾値ａｔｈ［％］より低く、且つデータパケット受信間隔ジッタｂがデータパケット受信間隔ジッタ閾値ｂｔｈ以上である条件（図４における条件１）が成立した場合、ネットワーク輻輳が発生し、輻輳状態に遷移したと判定される。上記条件１が成立する以外の場合には、通常状態が継続していると判定される。
【００５０】
一方、輻輳状態において、パケットロス率ａ［％］がパケットロス閾値ａｔｈ［％］以上であり、且つデータパケット受信間隔ジッタｂがデータパケット受信間隔ジッタ閾値ｂｔｈより短い条件（図４における条件２）が成立した場合、ネットワーク輻輳が解消され、通常状態に遷移したと判定される。上記条件２が成立する以外の場合には、輻輳状態が継続していると判定される。
【００５１】
制御パケット送信速度決定部１２は、通常状態にて条件１が成立したことにより、ネットワーク混雑度が通常状態から輻輳状態に遷移した場合、制御パケットの送信タイミングを短周期に変更する。すなわち、制御パケット送信速度決定部１２は、制御パケットの送信速度を高速にする。
【００５２】
一方、輻輳状態にて条件２が成立したことにより、ネットワーク混雑度が輻輳状態から通常状態に遷移した場合、制御パケット送信速度決定部１２は、制御パケットの送信タイミングを長周期に変更する。すなわち、制御パケット送信速度決定部１２は、制御パケット送信速度を低速にする。
【００５３】
なお、高速時の制御パケット送信速度と低速時の制御パケット送信速度は、予め受信端末１に対して設定しておけばよい。
【００５４】
次に制御パケット作成部１４による制御パケットの作成を詳細に説明する。
図５は、制御パケットの一例を示す。制御パケットは、少なくとも最終受信パケットフィールドおよびロスパケットリストフィールドを含む。最終受信パケットフィールドには、制御パケット作成部１４は、受信端末が正常に受信できたデータパケットのシーケンス番号の最大値と受信時刻を記載する。ロスパケットリストフィールドには、制御パケット作成部１４は、受信端末１が受信失敗した全データパケット（ロスパケット）のシーケンス番号およびパケットロス時刻を記載する。ロスパケットの受信時刻が不明であるため、制御パケット作成部１４は、各ロスパケットについて、当該ロスパケットの前後に受信成功したデータパケットの時刻から、その受信時刻を推定してパケットロス時刻としてロスパケットリストフィールドに記載する。
【００５５】
例えば、図３に示す状況に対応する制御パケットの場合、その最終受信パケットフィールドには、データパケットＴ１のシーケンス番号１と受信時刻Ｔ１が記載され、ロスパケットリストフィールドには、データパケット２、４、５のシーケンス番号（２、４、５）とこれらのパケットロス時刻が記載される。なお、データパケット２のパケットロス時刻は、データパケット１、３の受信時刻Ｔ１とＴ３から推定され、データパケット４、５のパケットロス時刻は、データパケット３、６の受信時刻Ｔ３とＴ６から推定される。具体的には、たとえば、制御パケット作成部１４は、式（２）に従い受信時刻Ｔ１、Ｔ３で内挿して、データパケット２のパケットロス時刻Ｔ２を算出する。
Ｔ２＝Ｔ１＋（Ｔ３−Ｔ１）／２            （２）
【００５６】
受信端末１から送信端末２に送信された制御パケットは、送信端末２の制御パケット解析部２４により解析される。
【００５７】
制御パケット解析部２４は、まず、制御パケットの最終受信パケットフィールドおよびロスパケットリストフィールドを抽出する。そして、制御パケット解析部２４は、最終受信パケットフィールドに含まれるシーケンス番号に対応するデータパケット、および該データパケット以前のシーケンス番号に対応する各データパケットをデータパケット記憶部２３から削除する。これにより、１回目のパケットロスが生じる前に送信したデータパケットは、データパケット記憶部２３から削除される。これらのデータパケットは、受信端末１で正常に受信できている。
【００５８】
さらに、制御パケット解析部２４は、ロスパケットリストフィールドに記載されているロスパケットのシーケンス番号をロスパケット再送部２２に通知すると共に、最終受信パケットフィールドおよびロスパケットリストフィールドの記載内容をデータパケット送信速度決定部２５に出力する。
【００５９】
ロスパケット再送部２２は、制御パケット解析部２４から通知された各ロスパケットのシーケンス番号に対応するデータパケットをデータパケット記憶部２３から読み出して、データパケット送信速度制御部２１に出力して再送させる。
【００６０】
データパケット送信速度決定部２５は、制御パケット解析部２４から受け取る最終受信パケットフィールドおよびロスパケットリストフィールドの記載内容に基づきデータパケット送信速度を決定する。ここで、データパケット送信速度決定部２５は、複数の最終受信パケットフィールドおよびロスパケットリストフィールドに基づきデータパケット送信速度を決定することが望ましい。つまり、制御パケット解析部２４が予め設定された所定数の制御パケットを受信し、該所定数の制御パケットの最終受信パケットフィールドおよびロスパケットリストフィールドをデータパケット送信速度決定部２５に受け渡した時点で、データパケット送信速度決定部２５はデータパケット送信速度を決定することが好ましい。
【００６１】
図６は、制御パケット解析部２４に対して設定された制御パケットの所定数が３である場合に、制御パケット解析部２４が３つの制御パケットを受信した際にデータパケット送信速度決定部２５に出力した最終受信パケットフィールドおよびロスパケットリストフィールドの具体例を示す。なお、小さい番号の制御パケットほど先に受信されたものである。
【００６２】
図６に示すように、制御パケット１の最終受信パケットフィールドには、データパケット１のシーケンス番号と受信時刻Ｔ１が記載されており、ロスパケットリストフィールドには、ロスパケットとなるデータパケット２、４、５のシーケンス番号とパケットロス時刻が記載されている。
【００６３】
また、制御パケット２の最終受信パケットフィールドには、データパケット４のシーケンス番号と受信時刻Ｔ４が記載されており、ロスパケットリストフィールドには、ロスパケットとなるデータパケット５、６、１０、１１、１５のシーケンス番号とパケットロス時刻が記載されている。
【００６４】
同様に、制御パケット３の最終受信パケットフィールドには、データパケット１５のシーケンス番号と受信時刻Ｔ１５が記載されており、ロスパケットリストフィールドには、ロスパケットとなるデータパケット１６、１８、２０、２４、２５、３０のシーケンス番号とパケットロス時刻が記載されている。
【００６５】
データパケット送信速度決定部２５は、ロスパケット数の時間変動に基づき、将来時刻のネットワーク混雑度を予測してデータパケット送信速度を決定する。データパケット送信速度決定部２５がロスパケット数の時間変動を算出する過程を説明する。
【００６６】
データパケット送信速度決定部２５は、まず、３つの制御パケットのロスパケットリストの中で重複して記載されているロスパケット（以下重複ロスパケットという）を特定する。図６の場合、制御パケット１および制御パケット２のロスパケットリストに記載されているロスパケット５が該当する。そして、データパケット送信速度決定部２５は、「該重複ロスパケットが最後に記載されたロスパケットリスト」を除く全ロスパケットリストから当該重複ロスパケットを除外する。図６の例の場合、制御パケット１のロスパケットリストからロスパケット５が削除される。その結果、図７に示すように、３つのロスパケットリストの中で、ロスパケット５は、制御パケット２のロスパケットリストにのみ記載されるようになる。
【００６７】
次に、データパケット送信速度決定部２５は、図７に示す３つのロスパケットリストに記載されている各ロスパケットのシーケンス番号を参照し、データパケット記憶部２３に記憶された、各ロスパケットのシーケンス番号と同一のシーケンス番号を有するデータパケットのデータサイズを取得する。そして、データパケット送信速度決定部２５は、図７に示す３つの最終受信パケットフィールドに記載された受信時刻およびロスパケットリストフィールドに記載のパケットロス時刻を横軸に設定し、ロスパケットサイズ累計値を縦軸に設定した図８の二次元グラフを生成する。ロスパケット累計値とは、当該パケットロス時刻以前の時刻で、ロスパケットリストに記載されているロスパケットの合計データサイズである。
【００６８】
例えば、図７に示すように、ロスパケット１０のパケットロス時刻Ｔ１０以前には、ロスパケット５、６が存在するので、パケットロス時刻Ｔ１０におけるロスパケットサイズ累計値は、ロスパケット５、６、１０のデータサイズ合計値となる（制御パケット２を参照すると最終受信パケットのシーケンス番号が４であるため、制御パケット１記載のロスパケット２、４のサイズは含まれない）。
【００６９】
次に、データパケット送信速度決定部２５は、図８に示すパケットロス時刻とロスパケットサイズ累計値から成る直線グラフを、制御パケット毎に最小二乗法等の近似アルゴリズムを用いて近似する。図８の制御パケット１、２、３毎の直線グラフを線形近似した結果を、図９に直線１、２、３として示す。直線１、２、３それぞれの傾き１（＝Ｓｚ１／（Ｔ４−Ｔ１））、２（＝Ｓｚ２／（Ｔ１５−Ｔ４））、３（＝Ｓｚ３／（Ｔ３０−Ｔ１５））は、各時刻幅（直線１の場合、Ｔ１〜Ｔ４）における、送信端末２が受信端末１に伝送したデータパケットトラヒックの内の、パケットロスしているトラヒック（ロスパケットトラヒック）に該当する。
【００７０】
そして、データパケット送信速度決定部２５は、図９に示す３つの直線の傾き１、２、３の分散値を求めてデータパケットの送信速度を決定する。具体的には、例えば、上記分散値が予め設定された閾値より小さい場合、「パケットロスが発生しているが、ネットワーク混雑度が低い」と判定して、データパケット送信速度を所定分だけ高速化する。この所定分は、予め設定しておけばよい。一方、傾き１、２、３の分散値が予め設定された閾値以上である場合には、ネットワーク混雑度が高まりつつあると判定して、傾き１、２、３の内の最大値に相当する分だけ、データパケット送信速度を低速化する。
【００７１】
データパケット送信速度決定部２５は、上記以外の方法を用いてデータパケット送信速度を決定してもよい。例えば、データパケット送信速度決定部２５は、ロスパケットトラヒックである図９に示す３つの直線１、２、３の傾きを最小二乗法等の近似アルゴリズムで線形近似し、図１０に示す直線を作成する。その後、データパケット送信速度決定部２５は、送信端末２が現在未受信で、将来時刻に受信する制御パケット（この場合制御パケット４になる）のロスパケットトラヒックを、図１０における直線を用いて予測する。該直線の傾きが正の場合、データパケット送信速度決定部２５は、ネットワーク混雑度が高いと判定して、ロスパケットトラヒック４に相当する分だけ、データパケット送信速度を低速化する。一方、該直線の傾きが負である場合には、データパケット送信速度決定部２５は、ネットワーク混雑度が低いと判定して、ロスパケットトラヒック１、２、３、４の内の最小値に相当する分だけ、データパケット送信速度を高速化する。
【００７２】
データパケット送信速度制御部２１は、再送するロスパケットを含むすべてのデータパケットに対して、データパケット送信速度制御部２１により設定されたデータパケットの送信速度で送信する。
【００７３】
このように、本実施の形態のデータ伝送システム１００は、受信端末によりネットワークデータを測定すると共に、受信端末が測定したネットワークデータに基づいて、将来時刻のネットワーク混雑度を予測し、予測したネットワーク混雑度に応じて受信端末の制御パケット送信速度と送信端末のデータパケット送信速度を決定する。こうすることにより、ネットワークの混雑度に確実に追従して制御パケットとデータパケットの送信速度を設定することができ、ひいてはネットワーク輻輳による伝送遅延、パケットロス等を未然に防止できる。従って、ネットワーク混雑度が短周期に変化するネットワークにおいても、データ伝送を効率良くできる。
＜第２の実施の形態＞
【００７４】
図１１は、本発明の第２の実施の形態にかかるデータ伝送システム２００を示す。データ伝送システム２００は、ネットワーク３により接続された受信端末５と送信端末６を備える。図１１のデータ伝送システム２００においては、図１に示す第１の実施の形態のデータ伝送システム１００のものと同様の構成または機能を有する構成要素に対して同一の符号を付与しており、以下の説明において、これらの構成要素の詳細な説明を省略する。
【００７５】
受信端末５は、ネットワークデータ測定部１１、データパケット送信速度決定部５５、制御パケット送信速度決定部５２、制御パケット作成部５４、制御パケット送信速度制御部１５を有する。データパケット送信速度決定部５５は、データ伝送システム１００の受信端末１に備えられていないものである。また、制御パケット送信速度決定部５２は、受信端末１の制御パケット送信速度決定部１２と異なる手法で制御パケットの送信速度を決定し、制御パケット作成部５４は、受信端末１の制御パケット作成部１４が作成する制御パケットと異なる制御パケットを作成する。また、受信端末５には、受信端末１に備えられていた制御パケット送信速度決定部１２が設けられていない。
【００７６】
データパケット送信速度決定部５５は、ネットワークデータ測定部１１により測定されたネットワークデータを用いて、将来時刻において送信端末６が送信するデータパケットの送信速度を決定する。その決定の手法は、データ伝送システム１００の送信端末２におけるデータパケット送信速度決定部２５によるものと同一であり、ここでは詳細な説明を省略する。
【００７７】
制御パケット送信速度決定部５２は、データパケット送信速度決定部５５が送信端末６によるデータパケットの送信速度を決定する際に得たネットワーク混雑度に応じて、受信端末５から送信端末６に送信する制御パケットの送信速度を決定する。
【００７８】
制御パケット作成部５４が作成する制御パケットは、データ伝送システム１００の受信端末１における制御パケット解析部２４が作成する制御パケットと同一の最終受信パケットフィールドおよびロスパケットリストフィールド以外に、さらにデータパケット送信速度フィールドが含まれる。制御パケット作成部５４は、このデータパケット送信速度フィールドに、データパケット送信速度決定部５５により決定されたデータパケットの送信速度を記載する。
【００７９】
制御パケット作成部５４により作成された制御パケットは、制御パケット送信速度制御部１５により、ネットワークデータ測定部１１が決定した送信速度で送信端末６に送信される。
【００８０】
送信端末６は、データパケット送信速度制御部２１、データパケット整形部６６、ロスパケット再送部２２、データパケット記憶部２３、制御パケット解析部６４を有する。データパケット整形部６６は、データ伝送システム１００の送信端末２に備えられていないものである。また、本実施の形態において、受信端末５から送信端末６に送信する制御パケットは、データ伝送システム１００における受信端末１から送信端末２に送信する制御パケットと異なる。このため、制御パケット解析部６４の処理対象は、送信端末２における制御パケット解析部２４の解析対象とは異なる制御パケットである。また、送信端末６には、送信端末２に備えられていたデータパケット送信速度決定部２５が設けられていない。
【００８１】
制御パケット解析部６４は、データ伝送システム１００の送信端末２における制御パケット解析部２４が行う処理以外に、制御パケットのデータパケット送信速度フィールドに記載されたデータパケット送信速度の抽出をさらに行う。制御パケット解析部６４は、抽出したデータパケット送信速度をデータパケット送信速度制御部２１に出力する。
【００８２】
データパケット整形部６６は、送信する全てのデータパケット（再送するロスパケットを含む）を、予め設定されたパケットサイズになるように整形する。
【００８３】
データパケット送信速度制御部２１は、データパケット整形部６６により整形されたデータパケットを、制御パケット解析部６４から出力されたデータパケット送信速度で受信端末５に送信する。
【００８４】
次いで、図１２のフローチャートを参照して本実施の形態のデータ伝送システム２００による処理の流れを説明する。
図１２のステップＳ１、Ｓ１１、Ｓ１２、Ｓ１４、Ｓ２１、Ｓ２２、Ｓ２で示されるデータ伝送システム２００の送信端末６におけるデータパケット送信速度制御部２１、ロスパケット再送部２２の動作は、データ伝送システム１００の送信端末２におけるデータパケット送信速度制御部２１、ロスパケット再送部２２の動作と同一であるため、説明を省略する。
【００８５】
また、図１２のステップＤ１、Ｄ２、Ｄ５で示されるデータ伝送システム２００の受信端末５におけるネットワークデータ測定部１１、制御パケット送信速度制御部１５の動作は、データ伝送システム１００の受信端末１におけるネットワークデータ測定部１１、制御パケット送信速度制御部１５の動作と同一であるため、説明を省略する。
【００８６】
データ伝送システム１００では、送信端末２が受信端末１に送信するデータパケットのサイズはデータパケット毎に異なっており、データパケットサイズは統一されていなかった。本実施の形態のデータ伝送システム２００では、送信端末６のデータパケット整形部６６は、データパケット記憶部２３から読み出されたデータパケットのサイズが予め設定された所定サイズになるように整形を行う（ステップＳ１５）。具体的には、データパケットのサイズが上記所定サイズより小さい場合に、データパケット整形部６６は、ダミーデータをパディングすることによりそのサイズを所定サイズにしてから、該データパケットをデータパケット送信速度制御部２１に出力して受信端末５に送信させる。一方、データパケットのサイズが上記所定サイズより大きい場合に、データパケット整形部６６は、該データパケットを所定サイズ以下の複数のパケットに分割する。そして、分割後のデータパケットのサイズが所定サイズより小さい場合には、データパケット整形部６６は、パディングなどによりそれらのサイズを所定サイズにする。
【００８７】
データ伝送システム１００では、制御パケットの送信速度は、受信端末１の制御パケット送信速度決定部１２により、ネットワーク混雑度モデル記憶部１３に記憶されたネットワーク混雑度モデルを用いて決定されていた。また、データパケット送信速度は、送信端末２のデータパケット送信速度決定部２５により制御パケットの解析結果に基づいて決定されていた。本実施の形態のデータ伝送システム２００では、制御パケット送信速度とデータパケット送信速度のいずれも、受信端末５側で決定される。具体的には、受信端末５のデータパケット送信速度決定部５５によりデータパケット送信速度が決定され（ステップＤ６）、制御パケット送信速度決定部５２により制御パケットの送信速度が決定される。また、制御パケット送信速度とデータパケットの送信速度のいずれを決定する際にも、ネットワーク混雑度モデルが用いられていない。
【００８８】
また、データ伝送システム１００では、データパケット送信速度を決定する際に（図２におけるＳ１３）、再送するロスパケットのサイズを取得する必要があった。本実施の形態のデータ伝送システム２００では、全てのデータパケットは、同一の所定サイズに整形されてから受信端末５に送信されるので、図１２のステップＤ６でデータパケット送信速度を決定する際に、予め設定された所定サイズを用いてデータパケット送信速度を決定すればよい。
【００８９】
また、制御パケット送信速度決定部５２により制御パケット送信速度を決定する際に（図１２のステップＤ３）、制御パケット送信速度決定部５２は、ステップＤ６においてデータパケット送信速度決定部５５が判定したネットワーク混雑度に基づき制御パケット送信速度を決定する。具体的には、例えば、データパケット送信速度決定部５５がネットワーク混雑度を輻輳状態と判定した場合、制御パケット送信速度決定部５２は、制御パケット送信速度を高速化する。一方、データパケット送信速度決定部５５がネットワーク混雑度を通常状態と判定した場合、制御パケット送信速度決定部５２は、制御パケット送信速度を低速化する。
【００９０】
制御パケット作成部５４は、最終受信パケットフィールドおよびロスパケットリストフィールドに夫々の記載内容を記載する。それと共に、データパケット送信速度決定部５５が決定したデータパケット送信速度を送信端末６に通知するために、制御パケット作成部５４は、さらに送信速度フィールドにデータパケット送信速度を記載して制御パケットを作成する（ステップＤ４）。
【００９１】
制御パケット送信速度制御部１５は、ステップＤ４で制御パケット作成部５４が作成した制御パケットを、ステップＤ３で制御パケット送信速度決定部５２が決定した制御パケット送信速度で送信端末６に送信する（ステップＤ５）。
【００９２】
送信端末６の制御パケット解析部６４は、データ伝送システム１００の送信端末２における制御パケット解析部２４が行う各処理以外に、さらに、受信した制御パケット内のデータパケット送信速度フィールドからデータパケット送信速度を抽出してデータパケット送信速度制御部２１に設定する（ステップＳ２３）。
【００９３】
次に、データ伝送システム２００における、データ伝送システム１００と異なる点について、具体例を挙げながらより詳細に説明する。
データ伝送システム２００において、データパケットのサイズを統一するために、受信端末５と送信端末６に対してデータパケットの所定サイズが設定される。送信端末６は、受信端末５に送信するデータパケットが上記所定サイズになるように、データパケットを整形する。図１３を参照して、送信端末６によるデータパケットの整形過程の一例を説明する。
【００９４】
図１３は、送信端末６が、設定された所定サイズより小さいデータパケット１と、上記所定サイズより大きいデータパケット２を所定サイズのデータパケットになるように整形する場合の例である。送信端末６は、まず、データパケット２を２つのデータパケット２ａと２ｂに分割する。その際、データパケット２ａとデータパケット１のサイズの和が所定サイズになるようにする。そして、送信端末６は、データパケット１とデータパケット２ａを連結して、整形後のデータパケット１を作成する。データパケット２を分割して得た他方のデータパケット２ｂに対しては、送信端末６は、ダミーデータをパディングすることによりそのサイズを所定サイズにして、整形後のデータパケット２を得る。
【００９５】
なお、図１３に示す例では、分割によって得たデータパケット２ｂのサイズが所定サイズより小さい。データパケット２ｂのサイズが所定サイズよりも大きい場合には、さらにデータパケット２ｂを、例えば所定サイズのデータパケットと別のデータパケットに分割したりすることで整形すればよい。
【００９６】
図１４は、データ伝送システム２００の受信端末５における制御パケット作成部５４が作成した制御パケットの構成を示す。データ伝送システム１００における制御パケットの構成（図５）と比較すると分かるように、データ伝送システム２００における制御パケットは、受信端末５側で決定されたデータパケット送信速度が記載されたデータパケット送信速度フィールドを有する。また、データ伝送システム２００では、受信端末５側でデータパケット送信速度を決定して送信端末６に通知し、送信端末６側は通知された該データパケット送信速度で送信する。このため、データ伝送システム２００における制御パケットの最終受信パケットフィールドには、受信端末が正常に受信できたデータパケットのシーケンス番号の最大値のみが記載され、該データパケットの受信時刻は必要なしとして記載されていない。同様に、ロスパケットリストフィールドにも、各ロスパケットのシーケンス番号のみが記載され、パケットロス時刻は必要なしとして記載されていない。
【００９７】
本実施の形態のデータ伝送システム２００は、データ伝送システム１００が得られる効果以外に、さらに以下の利点を有する。
【００９８】
データ伝送システム２００において、送信端末６は、受信端末５にデータパケット（再送するロスパケットを含む）を送信する際に、サイズが同一になるようにデータパケットを整形する。これにより、受信端末５から送信端末６に返送する制御パケットには、最終受信パケットの受信時刻及びパケットロス時刻を記載する必要がなくなり、制御パケットのサイズを削減することができる。また、制御パケット送信速度決定部５２とデータパケット送信速度決定部５５が同一の手法で制御パケット送信速度とデータパケット送信速度を決定するため、制御パケット送信速度決定部５２は、データパケット送信速度決定部５５により得られた一部の計算結果を利用することができ、制御パケットの送信速度の決定処理を高速にできる。これらは、特に送信端末の数が増えた場合でも高速なデータ伝送を実現することができるという、有利な特徴がある。
【００９９】
また、受信端末５は、ネットワーク混雑度モデルを用いずに制御パケット送信速度とデータパケット送信速度を決定するので、ネットワーク混雑度モデルのサイズ分、記憶容量の節約ができる。
【０１００】
以上、実施の形態をもとに本発明を説明した。実施の形態は例示であり、本発明の主旨から逸脱しない限り、さまざまな変更や増減、第１と第２の実施の形態の組合せなどをしてもよい。これらの変更、増減、組合せが加えられた変形例も本発明の範囲にあることは当業者に理解されるところである。
【０１０１】
例えば、第１の実施の形態のデータ伝送システム１００では、図４に示すような、ネットワーク混雑度が通常状態および輻輳状態に大別されたモデルが用いられたが、ネットワーク混雑度の他の状態および状態遷移条件を追加したモデルを用いてもよい。
【０１０２】
また、データ伝送システム１００においては、制御パケット送信速度の決定にネットワーク混雑度モデルが用いられ、データパケット送信速度の決定にネットワーク混雑度モデルが用いられないようになっている。逆に、ネットワーク混雑度モデルを用いずに制御パケット送信速度決定部が制御パケット送信速度を決定し、ネットワーク混雑度モデルを用いてデータパケット送信速度決定部がデータパケット送信速度を決定するようにしてもよい。
【０１０３】
勿論、制御パケット送信速度とデータパケット送信速度のいずれを決定する際にも、ネットワーク混雑度モデルを用いるようにしてもよい。
【０１０４】
また、データパケット送信速度の決定の手法について、上述した各手法に限られることが無い。
【０１０５】
この出願は、２００９年１０月１９日に出願された日本出願特願２００９−２４０２２６を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０１０６】
本発明にかかる技術は、データセンタ運用管理のためのログファイルを収集するデータ伝送システム、映像や音声等のコンテンツ配信システム、シンクライアントサービスにおけるデータ通信システムなどに利用できる。
【符号の説明】
【０１０７】
１００  データ伝送システム  １  受信端末
２  送信端末  ３  ネットワーク
５  受信端末  ６  送信端末
１１  ネットワークデータ測定部  １２  制御パケット送信速度決定部
１３  ネットワーク混雑度モデル記憶部  １４  制御パケット作成部
１５  制御パケット送信速度制御部  ２１  データパケット送信速度制御部
２２  ロスパケット再送部  ２３  データパケット記憶部
２４  制御パケット解析部  ２５  データパケット送信速度決定部
２００  データ伝送システム  ５２  制御パケット送信速度決定部
５４  制御パケット作成部  ５５  データパケット送信速度決定部
６４  制御パケット解析部  ６６  データパケット整形部
【図１】
2011048740.tif 000004
【図２】
2011048740.tif 000005
【図３】
2011048740.tif 000006
【図４】
2011048740.tif 000007
【図５】
2011048740.tif 000008
【図６】
2011048740.tif 000009
【図７】
2011048740.tif 000010
【図８】
2011048740.tif 000011
【図９】
2011048740.tif 000012
【図１０】
2011048740.tif 000013
【図１１】
2011048740.tif 000014
【図１２】
2011048740.tif 000015
【図１３】
2011048740.tif 000016
【図１４】
2011048740.tif 000017
【国際調査報告】
2011048740.tif 000018
2011048740.tif 000019