(57)【特許請求の範囲】
【請求項１】
コンピュータに、
１つの論理コネクションで複数のファイルを転送することで論理コネクションの数を超える数のファイルをＳＡＮを用いて転送する送信元装置からＳＡＮを介して受信したデータの記憶装置への書き込み速度と該データの受信速度とを取得し、
取得した前記書き込み速度と前記受信速度とに基づき、ＳＡＮを介したデータの送信速度に関する情報を生成し、
生成した前記送信速度に関する情報を、前記送信元装置に送信する、
処理を実行させることを特徴とする情報生成プログラム。
【請求項２】
コンピュータが、
１つの論理コネクションで複数のファイルを転送することで論理コネクションの数を超える数のファイルをＳＡＮを用いて転送する送信元装置からＳＡＮを介して受信したデータの記憶装置への書き込み速度と該データの受信速度とを取得し、
取得した前記書き込み速度と前記受信速度とに基づき、ＳＡＮを介したデータの送信速度に関する情報を生成し、
生成した前記送信速度に関する情報を、前記送信元装置に送信する、
処理を実行することを特徴とする情報生成方法。
【請求項３】
１つの論理コネクションで複数のファイルを転送することで論理コネクションの数を超える数のファイルをＳＡＮを用いて転送する送信元装置からＳＡＮを介して受信したデータの記憶装置への書き込み速度と該データの受信速度とを取得する取得部と、
前記取得部により取得された前記書き込み速度と前記受信速度とに基づき、ＳＡＮを介したデータの送信速度に関する情報を生成する生成部と
前記生成部により生成された前記送信速度に関する情報を、前記送信元装置に送信する送信部と、
を有することを特徴とする情報生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報生成プログラム、情報生成方法及び情報生成装置に関する。
【背景技術】
【０００２】
情報処理装置がネットワークを介してデータを他の情報処理装置に送信する場合、ネットワークの通信速度に基づく送信制御が行われる。すなわち、ネットワークの空き帯域に基づいて、データの送信速度を制御することが行われる。
【０００３】
なお、データのレプリケーションに関して、マスターデータベースについてなされた更新の頻度が高いときには、一定期間差分データを溜め込んでおいたバッチファイルをサブシステムに纏めて送信することで、レプリケーションのずれを抑制する技術がある。
【０００４】
また、第１経路で隣接するＬ２スイッチとの間で輻輳が発生したことを検知すると第２経路を選択し、第２経路で隣接するＬ２スイッチを介して送信元と隣接するＬ２スイッチに第２経路を迂回経路に使用する旨を通知することで、帯域幅を有効活用する技術がある。
【０００５】
また、クライアント端末の位置座標情報から導いた最近接位置仮想マシン稼働サーバ上に仮想マシンを移行することで、回線遅延の影響が少ない仮想マシン稼働サーバに接続する技術がある。
【０００６】
また、遠隔ストレージ装置へのアクセス要求が発生した時、データサイズと対応して予め帯域制御パラメータ値を記憶したテーブルから、アクセス要求が示す転送データサイズに適合した帯域制御パラメータ値を求めて、最適帯域のパスを動的に確立する技術がある。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００６−３１８０２０号公報
【特許文献２】特開２０１３−１９７８６８号公報
【特許文献３】国際公開第２０１２／１３２８０８号
【特許文献４】特開２００４−５６７２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、ネットワークの空き帯域に基づいてデータの送信速度を制御する技術には、データ転送速度が低下する場合があるという問題がある。例えば、ファイル転送を行う場合に、受信側の記憶装置へのデータの書き込み速度が遅いと、受信側の情報処理装置が受信データを処理しきれず、データ転送速度が低下する。
【０００９】
本発明は、１つの側面では、データ転送速度の低下を抑制することを目的とする。
【課題を解決するための手段】
【００１０】
１つの態様では、情報生成プログラムは、コンピュータに、１つの論理コネクションで複数のファイルを転送することで論理コネクションの数を超える数のファイルをＳＡＮを用いて転送する送信元装置からＳＡＮを介して受信したデータの記憶装置への書き込み速度と該データの受信速度とを取得する処理を実行させる。そして、情報生成プログラムは、コンピュータに、取得した書き込み速度と受信速度とに基づき、ＳＡＮを介したデータの送信速度に関する情報を生成する処理を実行させる。そして、情報生成プログラムは、コンピュータに、生成した送信速度に関する情報を、送信元装置に送信する処理を実行させる。
【発明の効果】
【００１１】
データ転送速度の低下を抑制することができる。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施例に係るファイル転送システムの構成を示す図である。
【図２】図２は、送信されるパケットのフォーマットの一例を示す図である。
【図３】図３は、複数のファイル転送をＳＡＮの一つの論理コネクションで行う場合を説明するための図である。
【図４】図４は、応答パケットのフォーマットの一例を示す図である。
【図５】図５は、送信部による送信処理のフローを示すフローチャートである。
【図６】図６は、受信部による受信処理のフローを示すフローチャートである。
【図７】図７は、情報処理装置のハードウェア構成を示す図である。
【発明を実施するための形態】
【００１３】
以下に、本願の開示する情報生成プログラム、情報生成方法及び情報生成装置の実施例を図面に基づいて詳細に説明する。なお、この実施例は開示の技術を限定するものではない。
【実施例】
【００１４】
まず、実施例に係るファイル転送システムの構成について説明する。図１は、実施例に係るファイル転送システムの構成を示す図である。図１に示すように、ファイル転送システム１は、ファイルを送信する情報処理装置２ａとファイルを受信する情報処理装置２ｂとを有する。情報処理装置２ａと情報処理装置２ｂとの間はＳＡＮ（Storage  Area  Network）３とＬＡＮ（Local  Area  Network）４で接続される。
【００１５】
情報処理装置２ａは、ファイルをＨＤＤ（Hard  Disk  Drive）から読み出してＳＡＮ３又はＬＡＮ４を用いて情報処理装置２ｂに送信する送信部２０を有する。情報処理装置２ｂは、ＳＡＮ３又はＬＡＮ４を用いて情報処理装置２ａから送信されたファイルをＨＤＤに書き込む受信部３０を有する。
【００１６】
なお、ここでは、情報処理装置２ａが情報処理装置２ｂにファイルを転送する場合について説明するが、情報処理装置２ｂは情報処理装置２ａにファイルを転送してもよい。したがって、情報処理装置２ａは受信部３０を有してよく、情報処理装置２ｂは送信部２０を有してよい。
【００１７】
送信部２０は、ファイル読出部２１と、データ送信部２２と、応答受信部２３と、送信制御部２４とを有する。ファイル読出部２１は、ファイルのデータのＨＤＤから読み出してデータ送信部２２に渡す。
【００１８】
データ送信部２２は、ファイル読出部２１から渡されたデータをパケットに分割してＳＡＮ３又はＬＡＮ４を用いて情報処理装置２ｂに送信する。ＳＡＮ３とＬＡＮ４のいずれを用いてパケットを送信するかは送信制御部２４により指定される。また、送信速度も送信制御部２４により指定される。すなわち、データ送信部２２は、送信制御部２４により指定された送信速度及びネットワークでパケットを送信する。
【００１９】
図２は、データ送信部２２により送信されるパケットのフォーマットの一例を示す図である。図２に示すように、データ送信部２２により送信されるパケットには、通番、送信速度、送信データサイズ及びデータ部が含まれる。
【００２０】
通番は、パケットを識別するための一連番号であり、４バイトの大きさである。送信速度は、パケットを送信する速度であり、２バイトの大きさである。送信データサイズは、送信されるデータのバイト数であり、４バイトの大きさである。
【００２１】
データ部は、送信されるデータであり、大きさは可変長である。通信速度測定時には、データ部にはダミーデータが入れられる。データ送信部２２は、送信制御部２４の指示に基づいて、ＳＡＮ３又はＬＡＮ４の通信速度を測定するために、情報処理装置２ｂにダミーデータを含む回線測定パケットを送信する。
【００２２】
データ送信部２２は、送信制御部２４から複数のファイルをＳＡＮ３を用いて転送するように指示されると、１つの論理コネクションで複数のファイル転送のデータを送信する。図３は、複数のファイル転送をＳＡＮ３の一つの論理コネクションで行う場合を説明するための図である。
【００２３】
図３に示すように、データ送信部２２は、ファイル転送を識別するＩＤを実データに付加することで、複数のファイルを１つの論理コネクションで送信する。ここで、実データは、ファイルから読み出されて転送されるデータである。
【００２４】
図１に戻って、応答受信部２３は、データ送信部２２が送信したパケットに応答する応答パケットを情報処理装置２ｂから受信して送信制御部２４に渡す。応答受信部２３は、データ送信部２２が送信に用いたネットワークと同じネットワークを用いて応答パケットを受信する。
【００２５】
図４は、応答パケットのフォーマットの一例を示す図である。図４に示すように、応答パケットには、通番及び受信側速度が含まれる。通番は、パケットを識別するための一連番号であり、４バイトの大きさである。応答受信部２３は応答パケットに含まれる通番をデータ送信部２２に渡し、データ送信部２２は送信するパケットの通番を応答受信部２３から受け取った通番に基づいて作成する。
【００２６】
受信側速度は、情報処理装置２ｂがデータを受信してファイルへの書き込みが行える速度であり、２バイトの大きさである。受信側速度は、通信経路の速度とファイルへの書き込み速度に基づいて情報処理装置２ｂにより指定される。
【００２７】
送信制御部２４は、応答パケットに含まれる受信側速度に基づいて送信速度を決定する。送信制御部２４は、ＳＡＮ３の送信速度とＬＡＮ４の送信速度をそれぞれ決定し、決定した２つの送信速度に基づいてＳＡＮ３とＬＡＮ４のいずれを通信経路として使用するかを決定する。送信制御部２４は、送信速度記憶部２４ａと、決定部２４ｂと、選択部２４ｃとを有する。
【００２８】
送信速度記憶部２４ａは、決定部２４ｂにより決定された送信速度を記憶する。送信速度記憶部２４ａは、ＳＡＮ３における送信速度とＬＡＮ４における送信速度をそれぞれ記憶する。
【００２９】
決定部２４ｂは、応答受信部２３から受け取った応答パケットに含まれる受信側速度と送信速度記憶部２４ａが記憶する送信速度を比較し、受信側速度が送信速度より小さい場合には、受信側速度を新たな送信速度として決定する。そして、決定部２４ｂは、決定した送信速度を送信速度記憶部２４ａに格納すると共に、データ送信部２２に通知する。
【００３０】
決定部２４ｂは、ＳＡＮ３を介して受信した応答パケットを応答受信部２３から受け取ると、ＳＡＮ３における送信速度を決定し、ＬＡＮ４を介して受信した応答パケットを応答受信部２３から受け取ると、ＬＡＮ４における送信速度を決定する。なお、決定部２４ｂは、例えば、回線測定パケットをデータ送信部２２に送信させることにより送信速度の初期値を決定する。
【００３１】
選択部２４ｃは、決定部２４ｂによりＳＡＮ３及びＬＡＮ４について決定された送信速度に基づいて、ファイルを転送するネットワークを選択し、データ送信部２２に通知する。選択部２４ｃは、例えば、ＳＡＮ３のとＬＡＮ４のうちファイル転送開始時の送信速度の速い方をファイルを転送するネットワークとして選択する。
【００３２】
受信部３０は、データ受信部３１と、ファイル書込部３２と、応答送信部３３と、受信制御部３４とを有する。データ受信部３１は、データ送信部２２がＳＡＮ３又はＬＡＮ４を用いて送信したパケットを受信してファイル書込部３２に渡す。また、データ受信部３１は、１つの論理コネクションで複数のファイルが転送された場合には、データをファイル毎にファイル書込部３２に渡す。
【００３３】
また、データ受信部３１は、受信したパケットが回線測定パケットであるか否かを受信制御部３４に通知する。また、データ受信部３１は、受信したパケットに含まれる通番を応答送信部３３に通知する。
【００３４】
データ受信部３１は、受信速度測定部３１ａを有する。受信速度測定部３１ａは、パケットを受信したネットワークについて、受信速度を測定し、受信制御部３４に渡す。
【００３５】
ファイル書込部３２は、データ受信部３１から受け取ったパケットのデータ部からデータを取り出してＨＤＤのファイルに書き込む。ファイル書込部３２は、書込速度測定部３２ａを有する。書込速度測定部３２ａは、ファイルの書き込み時間と書き込んだデータの量から書き込み速度を算出し、受信制御部３４に渡す。
【００３６】
応答送信部３３は、データ受信部３１から通知された通番と受信制御部３４から通知された受信側速度に基づいて応答パケットを生成し、情報処理装置２ａに送信する。応答送信部３３は、データ受信部３１がパケットを受信したネットワークを用いて応答パケットを送信する。
【００３７】
受信制御部３４は、データ受信部３１がパケットを受信したネットワークの受信側速度を算出して応答送信部３３に通知する。受信制御部３４は、取得部３４ａと決定部３４ｂとを有する。取得部３４ａは、受信速度測定部３１ａが測定した受信速度と、書込速度測定部３２ａが測定した書き込み速度を取得する。
【００３８】
決定部３４ｂは、データ受信部３１が回線測定パケットを受信した場合には、取得部３４ａが取得した受信速度をパケットに含める受信側速度と決定し、応答送信部３３に通知する。
【００３９】
一方、データ受信部３１が実データを含む実パケットを受信した場合には、決定部３４ｂは、取得部３４ａが取得した受信速度と書き込み速度を比較し、書き込み速度より受信速度が小さい場合には、受信速度をパケットに含める受信側速度と決定する。そして、決定部３４ｂは、受信側速度を応答送信部３３に通知する。一方、書き込み速度より受信速度が小さくない場合には、決定部３４ｂは、書き込み速度をパケットに含める受信側速度と決定し、応答送信部３３に通知する。
【００４０】
次に、送信部２０による送信処理のフローについて説明する。図５は、送信部２０による送信処理のフローを示すフローチャートである。図５に示すように、送信部２０は、回線測定パケット又は実データを送信する（ステップＳ１）。
【００４１】
そして、送信部２０は、送信した回線測定パケット又は実データに対して受信部３０が送信した応答パケットを受信し（ステップＳ２）、送信速度が受信側速度より大きいか否かを判定する（ステップＳ３）。その結果、送信速度が受信側速度より大きくない場合には、ステップＳ１に戻る。
【００４２】
一方、送信速度が受信側速度より大きい場合には、受信側速度を新たな送信速度として送信速度記憶部２４ａに格納し（ステップＳ４）、データ送信部２２に新たな送信速度を通知する。そして、送信部２０は、ステップＳ１に戻る。
【００４３】
このように、送信部２０は、受信側速度に基づいて送信速度を決定することにより、受信側の受信速度及びファイル書き込み速度を送信速度に反映することができる。
【００４４】
次に、受信部３０による受信処理のフローについて説明する。図６は、受信部３０による受信処理のフローを示すフローチャートである。図６に示すように、受信部３０は、回線測定パケット又は実データを受信する（ステップＳ１１）。また、受信部３０は、受信速度を測定する（ステップＳ１２）。
【００４５】
そして、受信部３０は、実データを受信したか否かを判定し（ステップＳ１３）、実データではなく回線測定パケットを受信した場合には、測定した受信速度を受信側速度として設定し、応答パケットを送信する（ステップＳ２０）。そして、受信部３０は、ステップＳ１１に戻る。
【００４６】
一方、実データを受信した場合には、受信部３０は、ファイル書き込み開始時間を測定し（ステップＳ１４）、ファイル書き込みを行う（ステップＳ１５）。そして、受信部３０は、ファイル書き込みが完了すると、ファイル書き込み完了時間を測定する（ステップＳ１６）。
【００４７】
そして、受信部３０は、書き込みデータ量／（ファイル書き込み完了時間−ファイル書き込み開始時間）を計算して書き込み速度を算出し（ステップＳ１７）、書き込み速度が受信速度より大きいか否かを判定する（ステップＳ１８）。
【００４８】
そして、書き込み速度が受信速度より大きい場合には、受信部３０は、測定した受信速度を受信側速度に設定して応答パケットを送信し（ステップＳ２０）、ステップＳ１１に戻る。一方、書き込み速度が受信速度より大きくない場合には、受信部３０は、書き込み速度を受信側速度に設定して（ステップＳ１９）、応答パケットを送信し（ステップＳ２０）、ステップＳ１１に戻る。
【００４９】
このように、受信部３０は、書き込み速度が受信速度より大きくない場合に、書き込み速度を受信側速度として応答パケットを送信することで、ファイルへの書き込みがボトルネックにならないようにすることができる。
【００５０】
上述してきたように、実施例では、受信速度測定部３１ａが、パケットの受信速度を測定する。また、書込速度測定部３２ａが、ファイルへの書き込み時間を測定し、書き込み時間と書き込んだデータ量から書き込み速度を算出する。そして、取得部３４ａが、受信速度測定部３１ａから受信速度を取得し、書込速度測定部３２ａから書き込み速度を取得する。そして、決定部３４ｂが、取得部３４ａが取得した受信速度及び書き込み速度に基づいて受信側速度を決定し、応答送信部３３が、決定部３４ｂが決定した受信側速度に基づいて応答パケットを生成して情報処理装置２ａに送信する。
【００５１】
そして、応答受信部２３が応答パケットを受信し、決定部２４ｂが、応答受信部２３から受け取った応答パケットに含まれる受信側速度と送信速度記憶部２４ａが記憶する送信速度を比較し、受信側速度が送信速度より小さい場合には、受信側速度を新たな送信速度として決定する。
【００５２】
したがって、情報処理装置２ａは、情報処理装置２ｂが処理できる範囲でデータを送信することができ、情報処理装置２ｂの処理能力を超えたデータ送信によるデータ転送速度の低下を抑制することができる。
【００５３】
また、実施例では、受信制御部３４が、データ受信部３１がパケットを受信したネットワークの受信側速度を算出して応答送信部３３に通知する。そして、応答送信部３３は、データ受信部３１がパケットを受信したネットワークの受信側速度を含めた応答パケットを情報処理装置２ａに送信する。
【００５４】
そして、決定部２４ｂは、ＳＡＮ３を介して受信した応答パケットを応答受信部２３から受け取ると、ＳＡＮ３における送信速度を決定し、ＬＡＮ４を介して受信した応答パケットを応答受信部２３から受け取ると、ＬＡＮ４における送信速度を決定する。そして、選択部２４ｃが、決定部２４ｂによりＳＡＮ３及びＬＡＮ４について決定された送信速度に基づいて、ファイルを転送するネットワークを選択し、データ送信部２２に通知する。そして、データ送信部２２は、選択部２４ｃから通知されたネットワークを用いてデータを送信する。
【００５５】
したがって、情報処理装置２ａは、ＳＡＮ３とＬＡＮ４を状況に応じて使い分けることができ、効率よくデータを送信することができる。
【００５６】
また、実施例では、データ送信部２２は、ＳＡＮ３を用いてデータを送信する場合に、１つの論理コネクションで複数のファイルを転送する。したがって、情報処理装置２ａは、論理コネクションの数を超える数のファイルを転送することができる。
【００５７】
なお、実施例では、受信部３０について説明したが、受信部３０は同様の機能を有する情報生成プログラムを情報処理装置２ｂで実行することにより実現される。そこで、情報処理装置２ｂのハードウェア構成について説明する。また、情報処理装置２ａも情報処理装置２ｂと同様のハードウェア構成を有し、送信部２０は同様の機能を有するソフトウェアを情報処理装置２ａで実行することにより実現することができる。
【００５８】
図７は、情報処理装置２ｂのハードウェア構成を示す図である。図７に示すように、情報処理装置２ｂは、メインメモリ５１と、ＣＰＵ５２と、ＬＡＮインタフェース５３ａと、ＳＡＮインタフェース５３ｂとを有する。また、情報処理装置２ｂは、ＨＤＤ５４と、スーパーＩＯ（Input  Output）５５と、ＤＶＩ（Digital  Visual  Interface）５６と、ＯＤＤ（Optical  Disk  Drive）５７とを有する。
【００５９】
メインメモリ５１は、プログラムやプログラムの実行途中結果などを記憶するメモリである。ＣＰＵ５２は、メインメモリ５１からプログラムを読出して実行する中央処理装置である。ＣＰＵ５２は、メモリコントローラを有するチップセットを含む。
【００６０】
ＬＡＮインタフェース５３ａは、情報処理装置２ｂをＬＡＮ４経由で情報処理装置２ａ等他の情報処理装置に接続するためのインタフェースである。ＳＡＮインタフェース５３ｂは、情報処理装置２ｂをＳＡＮ３経由で情報処理装置２ａ等他の情報処理装置に接続するためのインタフェースである。ＨＤＤ５４は、プログラムやデータを格納するディスク装置であり、スーパーＩＯ５５は、マウスやキーボードなどの入力装置を接続するためのインタフェースである。ＤＶＩ５６は、液晶表示装置を接続するインタフェースであり、ＯＤＤ５７は、ＤＶＤの読み書きを行う装置である。
【００６１】
ＬＡＮインタフェース５３ａは、ＰＣＩエクスプレス（ＰＣＩｅ）によりＣＰＵ５２に接続され、ＨＤＤ５４及びＯＤＤ５７は、ＳＡＴＡ（Serial  Advanced  Technology  Attachment）によりＣＰＵ５２に接続される。スーパーＩＯ５５は、ＬＰＣ（Low  Pin  Count）によりＣＰＵ５２に接続される。
【００６２】
そして、情報処理装置２ｂにおいて実行される情報生成プログラムは、ＤＶＤに記憶され、ＯＤＤ５７によってＤＶＤから読出されて情報処理装置２ｂにインストールされる。あるいは、情報生成プログラムは、ＬＡＮインタフェース５３ａを介して接続された他の情報書る装置のデータベースなどに記憶され、これらのデータベースから読出されて情報処理装置２ｂにインストールされる。そして、インストールされた情報生成プログラムは、ＨＤＤ５４に記憶され、メインメモリ５１に読出されてＣＰＵ５２によって実行される。
【００６３】
また、実施例では、情報処理装置２ａと情報処理装置２ｂがＳＡＮ３とＬＡＮ４により接続される場合について説明したが、情報処理装置２ａと情報処理装置２ｂは他のネットワークにより接続されてもよい。
【００６４】
また、実施例では、ＨＤＤ５４にデータを書き込む場合について説明したが、情報処理装置２ｂは他の記憶装置にデータを書き込んでもよい。
【符号の説明】
【００６５】
１    ファイル転送システム
２ａ    情報処理装置
２ｂ    情報処理装置
３    ＳＡＮ
４    ＬＡＮ
２０    送信部
２１    ファイル読出部
２２    データ送信部
２３    応答受信部
２４    送信制御部
２４ａ    送信速度記憶部
２４ｂ    決定部
２４ｃ    選択部
３０    受信部
３１    データ受信部
３１ａ    受信速度測定部
３２    ファイル書込部
３２ａ    書込速度測定部
３３    応答送信部
３４    受信制御部
３４ａ    取得部
３４ｂ    決定部
５１    メインメモリ
５２    ＣＰＵ
５３ａ    ＬＡＮインタフェース
５３ｂ    ＳＡＮインタフェース
５４    ＨＤＤ
５５    スーパーＩＯ
５６    ＤＶＩ
５７    ＯＤＤ
【図１】
0006717008.tif 000002
【図２】
0006717008.tif 000003
【図３】
0006717008.tif 000004
【図４】
0006717008.tif 000005
【図５】
0006717008.tif 000006
【図６】
0006717008.tif 000007
【図７】
0006717008.tif 000008