(57)【要約】      （修正有）【課題】データファイル転送から受信側のデータファイル起動までの時間を短縮するコンピュータによる転送方法を提供する。【解決手段】データファイル６を分割し、分割した複数の分割ファイル６ｄの夫々を、所定のアルゴリズムで圧縮したときの圧縮ファイル転送時間及び解凍時間と、圧縮しない非圧縮で転送したときの非圧縮ファイル転送時間とに基づいて、圧縮して転送する分割ファイル６ｄと、非圧縮で転送する分割ファイル６ｄとを決定する。圧縮又は非圧縮を決定した複数の分割ファイル６ｄの転送順序を決定し、決定した転送順序に従って送信する。【選択図】図１
2015176337.tif 000002
【特許請求の範囲】
【請求項１】
データファイルを分割し、
前記データファイルを分割した複数の分割ファイルの夫々を、所定のアルゴリズムで圧縮したときの圧縮ファイル転送時間及び解凍時間と、圧縮しない非圧縮で転送したときの非圧縮ファイル転送時間とに基づいて、圧縮して転送する分割ファイルと、非圧縮で転送する分割ファイルとを決定し、
圧縮又は非圧縮を決定した前記複数の分割ファイルの転送順序を決定し、
決定した前記転送順序に従って、前記複数の分割ファイルを送信する
処理をコンピュータが行うデータ転送方法。
【請求項２】
前記圧縮ファイル転送時間が最短の前記分割ファイルを最初に転送するように前記転送順序を決定することを特徴とする請求項１記載のデータ転送方法。
【請求項３】
圧縮した分割ファイルの転送後に、非圧縮の分割ファイルを転送するように前記転送順序を決定することを特徴とする請求項１又は２記載のデータ転送方法。
【請求項４】
前記分割ファイルの夫々を圧縮後のファイルサイズと前記データファイルのファイルサイズとから圧縮率を計算し、
前記データファイルの圧縮率と、圧縮後の前記分割ファイルの圧縮率との差が所定値内で最大となる分割数を決定し、
前記分割数で、前記データファイルを均等に分割することを特徴とする請求項１乃至３のいずれか一項記載のデータ転送方法。
【請求項５】
前記分割数で均等に分割した前記複数の分割ファイルに対して、前記圧縮した分割ファイルの解凍時間を合計した総解凍時間が、圧縮した分割ファイル及び前記非圧縮の分割ファイルの転送時間を合計した総転送時間以下となる圧縮及び非圧縮のパターンを決定することを特徴とする請求項４記載のデータ転送方法。
【請求項６】
データファイルを分割する分割部と、
前記データファイルを分割した複数の分割ファイルの夫々を、所定のアルゴリズムで圧縮したときの圧縮ファイル転送時間及び解凍時間と、圧縮しない非圧縮で転送したときの非圧縮ファイル転送時間とに基づいて、圧縮して転送する分割ファイルと、非圧縮で転送する分割ファイルとを決定する圧縮決定部と、
圧縮又は非圧縮を決定した前記複数の分割ファイルの転送順序を決定する転送順序決定部と、
決定した前記転送順序に従って、前記複数の分割ファイルを転送する転送部と
を有するデータ転送制御装置。
【請求項７】
データファイルをサーバから装置へ転送するデータ転送システムであって、
前記サーバは、
前記データファイルを分割し、
前記データファイルを分割した複数の分割ファイルの夫々を、所定のアルゴリズムで圧縮したときの圧縮ファイル転送時間及び解凍時間と、圧縮しない非圧縮で転送したときの非圧縮ファイル転送時間とに基づいて、圧縮して転送する分割ファイルと、非圧縮で転送する分割ファイルとを決定し、
圧縮又は非圧縮を決定した前記複数の分割ファイルの転送順序を決定し、
決定した前記転送順序に従って、前記複数の分割ファイルを送信し、
前記装置は、
前記圧縮した分割ファイル及び前記非圧縮の分割ファイルの転送時間を合計した総転送時間内に、前記圧縮した分割ファイルを解凍し、
解凍した前記分割ファイルと、非圧縮で転送された前記分割ファイルとを結合して、前記データファイルを復元する
ことを特徴とするデータ転送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ転送技術に関する。
【背景技術】
【０００２】
近年、クラウドサービスなどでは、仮想化技術を活用しアプリケーションの起動環境をＶＭ（Virtual Machine）イメージファイル等で丸ごと１つのファイルとして管理し、そのＶＭイメージファイルを起動対象のサーバに転送し、ＶＭ起動するだけでサービスを開始することができる。
【０００３】
しかし、ＶＭイメージファイルの容量は大きいもので数十Ｇｂｙｔｅとなりネットワークの負荷が増大し転送には時間が掛かる。ＶＭイメージファイルを圧縮技術によって圧縮して転送し、起動対象サーバで解凍するといった方法で転送時間を短縮することが可能である。
【０００４】
例えば、圧縮転送する際に、圧縮前と圧縮後のファイルの容量を比較し圧縮率が高いもののみを圧縮転送する技術、圧縮率や転送する回線速度のボトルネック度合いに応じて圧縮/非圧縮を選択する技術等が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−３３８７６１号公報
【特許文献２】特開２００１−１１１４３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した技術は、ＶＭイメージファイルが転送先サーバに到着するまでの時間は短縮されているが、受信後に圧縮されたファイルの解凍処理が必要で、解凍が終わるまでサービス開始が遅延するというデメリットもあった。
【０００７】
例えば、災害時にはこれらのＶＭイメージファイルを転送しこのファイルを使ってアプリケーションを起動するまでの時間を短くすることが重要となる。このような状況下では、ファイルの転送時間だけでなく、ＶＭイメージファイルの転送開始から転送先サーバでのアプリケーション起動、サービス開始までを短時間で行えることが望まれる。
【０００８】
したがって、１つの側面では、本発明は、データファイル転送から受信側のデータファイル起動までの時間を短縮することを目的としたものである。
【課題を解決するための手段】
【０００９】
一態様によれば、データファイルを分割し、前記データファイルを分割した複数の分割ファイルの夫々を、所定のアルゴリズムで圧縮したときの圧縮ファイル転送時間及び解凍時間と、圧縮しない非圧縮で転送したときの非圧縮ファイル転送時間とに基づいて、圧縮して転送する分割ファイルと、非圧縮で転送する分割ファイルとを決定し、圧縮又は非圧縮を決定した前記複数の分割ファイルの転送順序を決定し、決定した前記転送順序に従って、前記複数の分割ファイルを送信する処理をコンピュータが行うデータ転送方法が提供される。
【００１０】
また、上記課題を解決するための手段として、上記方法を行う装置、コンピュータに上記処理を実行させるためのプログラム、及び、そのプログラムを記憶した記憶媒体とすることもできる。
【発明の効果】
【００１１】
データファイル転送から受信側のデータファイル起動までの時間を短縮するができる。
【図面の簡単な説明】
【００１２】
【図１】本実施例における、データセンタの構成例を示す図である。
【図２】サーバの機能構成例について説明するための図である。
【図３】転送制御サーバのハードウェア構成を示す図である。
【図４】転送制御サーバの機能構成の実装例を説明するための図である。
【図５】テーブルのデータ構成例を示す図である。
【図６】配置対象サーバのハードウェア構成を示す図である。
【図７】配置対象サーバの機能構成の実装例を説明するための図である。
【図８】転送制御サーバによる登録処理例について説明するための図（その１）である。
【図９】転送制御サーバによる登録処理例について説明するための図（その２）である。
【図１０】転送制御サーバによる登録処理例について説明するための図（その３）である。
【図１１】転送制御サーバの転送処理例を説明するための図である。
【図１２】登録処理を説明するためのフローチャート図（その１）である。
【図１３】登録処理を説明するためのフローチャート図（その２）である。
【図１４】圧縮／非圧縮決定処理を説明するためのフローチャート図（その１）である。
【図１５】圧縮／非圧縮決定処理を説明するためのフローチャート図（その２）である。
【図１６】圧縮／非圧縮決定処理を説明するためのフローチャート図（その３）である。
【図１７】転送順序登録処理を説明するためのフローチャート図である。
【図１８】転送制御処理を説明するためのフローチャート図である。
【図１９】配置対象サーバでの分割ファイル受信処理を説明するためのフローチャート図である。
【図２０】登録処理シーケンスを示す図（その１）である。
【図２１】登録処理シーケンスを示す図（その２）である。
【図２２】登録処理シーケンスを示す図（その３）である。
【図２３】登録処理シーケンスを示す図（その４）である。
【図２４】転送制御シーケンスを示す図（その１）である。
【図２５】転送制御シーケンスを示す図（その２）である。
【図２６】本実施例の効果を説明するための図である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態を図面に基づいて説明する。クラウドサービスでは、ＶＭ（Virtual Machine）イメージファイルは１つのファイルとして転送される。圧縮転送すると、転送と解凍とがシーケンシャルに処理される。従って、転送時間を短くしても、解凍処理の時間だけサービス開始が遅くなる。
【００１４】
複数に分割して、転送処理と解凍処理とを並列処理する方法が考えられるが、最初の転送と最後の解凍処理に関しては、並列処理を行うことができない。この部分の時間短縮は困難である。
【００１５】
本実施例では、圧縮による転送時間の短縮と、並列化できない処理部分の時間を最小化して、転送開始からサービス開始までの時間を大幅に短縮する。
【００１６】
まず、クラウドサービスの一例として、データセンタの構成例を説明する。図１は、本実施例における、データセンタの構成例を示す図である。図１において、データセンタ１０００は、管理者１と、転送制御サーバ３０と、複数の配置対象サーバ４等とを有する。データセンタ１０００は、転送制御サーバ３０からＩＰ網２等のネットワークを介して配置対象サーバ４へＶＭイメージファイル６を転送するデータ転送システムに相当する。
【００１７】
管理者１は、ＶＭイメージファイル６を管理する責任者であり、転送制御サーバ３０を利用するユーザである。管理者１は、転送制御サーバ３０で、ＶＭイメージファイル６の管理に係る操作が行う。
【００１８】
転送制御サーバ３０は、管理者１からの要求に応じて、転送制御サーバ３０がファイル管理ディレクトリ３０ｄで管理しているＶＭイメージファイル６をＩＰ網２を介して配置対象サーバ４へ転送する。転送制御サーバ３０は、データ転送制御装置に相当する。配置対象サーバ４は、ＶＭイメージファイル６を配置し、サービスを起動するサーバである。
【００１９】
データセンタ１０００において、管理者１からＶＭイメージファイル６の登録を指示する操作を転送制御サーバ３０で行う（ステップＳ１１）。転送制御サーバ３０は、ＶＭイメージファイル６の登録要求に添付されたＶＭイメージファイル６をファイル管理ディレクトリ３０ｄに格納する（ステップＳ１２）。この際に、ＶＭイメージファイル６は、最適な転送方法で転送可能なように分割され、分割単位で圧縮又は非圧縮され、ファイル管理ディレクトリ３０ｄに登録される。また、分割単位の転送順序も決定される。
【００２０】
ＶＭイメージファイル６の登録後、管理者１からＶＭイメージファイル６の転送要求を転送制御サーバ３０へ行う（ステップＳ２１）。転送制御サーバ３０は、ＶＭイメージファイル６を５個に分割してＩＰ網２を介して、管理者１が指定した配置対象サーバ４へ転送する（ステップＳ２２）。
【００２１】
ここでは、ＶＭイメージファイル６が、ＶＭ−０００１、ＶＭ−０００２、ＶＭ−０００３、ＶＭ−０００４、ＶＭ−０００５の５個に分割されて配置対象サーバ４へ転送される場合を示している。ＶＭイメージファイル６を分割した５個のファイルの内、ＶＭ−０００１、ＶＭ−０００２、ＶＭ−０００３、及びＶＭ−０００４は圧縮ファイルであり、ＶＭ−０００５は非圧縮ファイルである。ＶＭ−０００１、ＶＭ−０００２、ＶＭ−０００３、ＶＭ−０００４、ＶＭ−０００５等の分割ファイルを総称して、分割ファイル６ｄとする。
【００２２】
分割単位が小さい（細分化）ほど転送時には有利であるが、分割数が多くなると、ファイル圧縮率が悪くなる傾向がある。従って、適度な分割が望ましい。発明者は、圧縮率悪化の度合いがファイルの内容に依存することに着目し、本実施例では、転送するＶＭイメージファイルで分割後の圧縮率の度合いをシミュレーションすることで適度な分割数を決定する。
【００２３】
データセンタ１０００における転送制御サーバ３０及び配置対象サーバ４の機能構成について説明する。図２は、サーバの機能構成例について説明するための図である。図２において、転送制御サーバ３０は、登録処理部３１と、圧縮解凍処理部３２と、圧縮判定部３３と、転送制御部３４と、送受信部３５とを有する。また、転送制御サーバ３０は、ファイル管理ディレクトリ３０ｄ、転送時間管理テーブル３０ｅ、転送順序制御テーブル３０ｆ等を、後述する記憶部３３０に記憶する。
【００２４】
登録処理部３１は、管理者１から受信したＶＭイメージファイル６の登録要求に応じて、登録要求に含まれるＶＭイメージファイル６を分割して、記憶領域の空いている配置対象サーバ４に転送して登録する。ＶＭイメージファイル６に係る情報は、ファイル管理ディレクトリ３０ｄに格納される。
【００２５】
圧縮解凍処理部３２は、登録処理部３１からの指示に応じて、指定された分割ファイル６ｄを圧縮又は解凍する。圧縮解凍処理部３２は、分割ファイル６ｄを圧縮した場合には、圧縮ファイルサイズを戻り値とする。
【００２６】
圧縮判定部３３は、転送時間管理テーブル３０ｅを参照して、ＶＭイメージファイル６の転送時間及び解凍時間の総時間が最も短くなる転送方法を判定する。
【００２７】
転送制御部３４は、転送順序制御テーブル３０ｆを参照して、転送順に分割ファイル６ｄを指定して、送受信部３５に配置対象サーバ４へ転送させる。
【００２８】
送受信部３５は、転送制御部３４からの転送指示に応じて、ファイル管理ディレクトリ３０ｄから指定された圧縮又は非圧縮の分割ファイル６ｄを読み出して、指定された配置対象サーバ４へ転送する。送受信部３５は、また、分割ファイル６ｄを転送する毎に、配置対象サーバ４へファイル情報通知を行う。ファイル情報通知には、圧縮状態、最終転送フラグ等の情報が含まれる。転送制御部３４と送受信部３５とが、転送部に相当する。
【００２９】
配置対象サーバ４は、送受信部４１と、配置制御部４２と、解凍部４３と、結合部４４とを有する。また、配置対象サーバ４は、配置ディレクトリ４０ｄを、後述する記憶部４３０に記憶する。
【００３０】
送受信部４１は、転送制御サーバ３０から分割ファイル６ｄを受信すると、配置ディレクトリ４０ｄに格納する。
【００３１】
配置制御部４２は、転送制御サーバ３０から受信したファイル情報通知に基づいて、解凍部４３及び結合部４４を制御して、解凍した分割ファイル６ｄを結合して、ＶＭイメージファイル６を復元する。
【００３２】
解凍部４３は、配置制御部４２の指示に応じて、配置ディレクトリ４０ｄ内の、指定された分割ファイル６ｄを解凍する。
【００３３】
結合部４４は、配置制御部４２の指示に応じて、配置ディレクトリ４０ｄ内の、指定された解凍済みの分割ファイル６ｄを結合して、ＶＭイメージファイル６を復元する。
【００３４】
上述した転送制御サーバ３０は、図３に示すようなハードウェア構成を有する。図３は、転送制御サーバのハードウェア構成を示す図である。図３において、転送制御サーバ３０は、コンピュータによって制御される端末であって、ＣＰＵ（Central Processing Unit）３１１と、メモリ３１２と、ディスク３１３と、ＮＩＣ（Network Interface Card）３１４と、ユーザインタフェース３１５と、ドライブ装置３１６とを有し、ＰＣＩバス３１９に接続される。
【００３５】
ＣＰＵ３１１は、メモリ３１２に格納されたプログラムに従って転送制御サーバ３０を制御する。メモリ３１２には、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）等が用いられ、ＣＰＵ３１１にて実行されるプログラム、ＣＰＵ３１１での処理に必要なデータ、ＣＰＵ３１１での処理にて得られたデータ等を記憶又は一時保存する。
【００３６】
ディスク３１３には、ＨＤＤ（Hard Disk Drive）等が用いられ、各種処理を実行するためのプログラム等のデータ、及びＶＭイメージファイル６を格納する。ディスク３１３に格納されているプログラムの一部がメモリ３１２にロードされ、ＣＰＵ３１１に実行されることによって、各種処理が実現される。記憶部３３０は、メモリ３１２及び／又はディスク３１３に相当する。
【００３７】
ユーザインタフェース３１５は、ディスプレイ、マウス、キーボード等を有し、ＣＰＵ３１１の制御のもとに必要な各種情報を表示し、ユーザが転送制御サーバ３０による処理に必要な各種情報を入力するために用いられる。ＮＩＣ３１４は、有線又は無線などのネットワークを通じて通信を行う。ＮＩＣ３１４による通信は無線又は有線に限定されるものではない。
【００３８】
転送制御サーバ３０によって行われる処理を実現するプログラムは、例えば、ＣＤ−ＲＯＭ（Compact Disc Read-Only Memory）等の記憶媒体３１７によって転送制御サーバ３０に提供される。
【００３９】
ドライブ装置３１６は、ドライブ装置３１６にセットされた記憶媒体３１７（例えば、ＣＤ−ＲＯＭ等）と転送制御サーバ３０とのインターフェースを行う。
【００４０】
また、記憶媒体３１７に、後述される本実施の形態に係る種々の処理を実現するプログラムを格納し、この記憶媒体３１７に格納されたプログラムは、ドライブ装置３１６を介して転送制御サーバ３０にインストールされる。インストールされたプログラムは、転送制御サーバ３０により実行可能となる。
【００４１】
尚、プログラムを格納する記憶媒体３１７としてＣＤ−ＲＯＭに限定するものではなく、コンピュータが読み取り可能な媒体であればよい。コンピュータ読取可能な記憶媒体として、ＣＤ−ＲＯＭの他に、ＤＶＤディスク、ＵＳＢメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリであっても良い。
【００４２】
次に、転送制御サーバ３０の図２で説明した機能構成の実装例を説明する。図４は、転送制御サーバの機能構成の実装例を説明するための図である。図４では、本実施例に係る機能構成の実装に関するハードウェアのみを示し、他を省略している。
【００４３】
図４において、ＣＰＵ３１１が対応するプログラムを実行することにより、登録処理部３１、圧縮解凍処理部３２、圧縮判定部３３、転送制御部３４、送受信部３５は、実現される。各部３１〜３５の処理概要は上述した通りである。したがって、ＣＰＵ３１１が、登録処理部３１、圧縮解凍処理部３２、圧縮判定部３３、転送制御部３４、送受信部３５の処理を行うことにより、夫々の処理部として動作する。
【００４４】
ファイル管理ディレクトリ３０ｄは、ディスク３１３に保持される。ファイル管理ディレクトリ３０ｄは、ＶＭイメージファイル６の実態を含むため、ディスク３１３に格納される。
【００４５】
転送時間管理テーブル３０ｅ及び転送順序制御テーブル３０ｆは、メモリ３１２に格納される。これらテーブル３０ｅ及び３０ｆは、本実施例に係る処理で作成、参照されるテーブルであり、処理の終了後には、削除されても良い。
【００４６】
ＮＩＣ３１４は、配置対象サーバ４との通信を制御し、ＶＭイメージファイル６が転送制御サーバ３０から配置対象サーバ４へと配置される。ユーザインタフェース３１５は、管理者１への情報を表示すると共に、管理者１による操作を受け付ける。ユーザインタフェース３１５は、管理者１からのＶＭイメージファイル６の登録要求を受け付けると、登録処理部３１に通知する。また、ユーザインタフェース３１５は、管理者１からのＶＭイメージファイル６の転送要求を受け付けると、転送制御部３４に通知する。
【００４７】
図５は、テーブルのデータ構成例を示す図である。図５（Ａ）では、転送時間管理テーブル３０ｅのデータ構成例を示している。図５（Ａ）において、転送時間管理テーブル３０ｅは、分割ファイル名、解凍時間、圧縮ファイル転送時間、非圧縮ファイル転送時間、圧縮状態等の項目を有する。
【００４８】
分割ファイル名は、ＶＭイメージファイル６の分割ファイル６ｄのファイル名を示す。解凍時間は、ＶＭイメージファイル６の分割ファイル６ｄの圧縮ファイルを解凍するときの時間（秒）を示す。
【００４９】
圧縮ファイル転送時間は、分割ファイル６ｄの圧縮ファイルを転送するのに掛る時間（秒）を示す。非圧縮ファイル転送時間は、分割ファイル６ｄの非圧縮ファイルを転送するのに掛る時間（秒）を示す。圧縮状態は、分割ファイル６ｄを圧縮して転送、又は、非圧縮で転送のいずれかを示す。
【００５０】
図５（Ｂ）では、転送順序制御テーブル３０ｆのデータ構成例を示している。図５（Ｂ）において、転送順序制御テーブル３０ｆは、分割ファイル名、転送順番等の項目を有する。
【００５１】
分割ファイル名は、ＶＭイメージファイル６の分割ファイル６ｄのファイル名を示す。転送順番は、分割ファイル６ｄを転送する順番を示す。
【００５２】
次に、配置対象サーバ４について説明する。上述した配置対象サーバ４は、ストレージであって、図６に示すようなハードウェア構成を有する。
【００５３】
図６は、配置対象サーバのハードウェア構成を示す図である。図６において、配置対象サーバ４は、コンピュータによって制御される端末であって、ＣＰＵ４１１と、メモリ４１２と、ディスク４１３と、ＮＩＣ４１４とを有し、ＰＣＩバス４１９に接続される。
【００５４】
ＣＰＵ４１１は、メモリ４１２に格納されたプログラムに従って配置対象サーバ４を制御する。メモリ４１２には、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）等が用いられ、ＣＰＵ４１１にて実行されるプログラム、ＣＰＵ４１１での処理に必要なデータ、ＣＰＵ４１１での処理にて得られたデータ等を記憶又は一時保存する。
【００５５】
ディスク４１３には、ＨＤＤ（Hard Disk Drive）等が用いられ、各種処理を実行するためのプログラム等のデータを格納する。ディスク４１３に格納されているプログラムの一部がメモリ４１２にロードされ、ＣＰＵ４１１に実行されることによって、各種処理が実現される。記憶部４３０は、メモリ４１２及び／又はディスク４１３を有する。
【００５６】
ＮＩＣ４１４は、有線又は無線などのネットワークを通じて通信を行う。ＮＩＣ４１４による通信は無線又は有線に限定されるものではない。
【００５７】
次に、配置対象サーバ４の図２で説明した機能構成の実装例を説明する。図７は、配置対象サーバの機能構成の実装例を説明するための図である。図７では、本実施例に係る機能構成の実装に関するハードウェアのみを示し、他を省略している。
【００５８】
図７において、ＣＰＵ４１１が対応するプログラムを実行することにより、送受信部４１、配置制御部４２、ファイル解凍部４３、結合部４４は、実現される。したがって、ＣＰＵ４１１が、送受信部４１、配置制御部４２、ファイル解凍部４３、結合部４４の処理を行うことにより、夫々の処理部として動作する。
【００５９】
配置ディレクトリ４０ｄは、ＶＭイメージファイル６の実態を含むため、ディスク４１３に格納される。
【００６０】
ＮＩＣ４１４は、転送制御サーバ３０との通信を制御し、ＶＭイメージファイル６が転送制御サーバ３０から配置対象サーバ４へと配置される。
【００６１】
次に、ＶＭイメージファイル６の登録処理例について図８〜図１０で説明する。図８〜図１０は、転送制御サーバによる登録処理例について説明するための図である。図８において、管理者１がＶＭイメージファイル６の登録要求を転送制御サーバ３０で行う（ステップＳ５１）。管理者１により、１５ＧｂｙｔｅのＶＭイメージファイル６と、０．６Ｇｂｐｓのファイル転送レートとが入力される。ＶＭイメージファイル６のファイルサイズ「１５Ｇｂｙｔｅ」、ファイル転送レート「０．６Ｇｂｐｓ」は単なる一例に過ぎない。
【００６２】
転送制御サーバ３０の登録処理部３１は、ＶＭイメージファイル６の最適な圧縮率となる分割数を取得する（ステップＳ５２）。例えば、登録処理部３１は、まず、ＶＭイメージファイル６を３分割して圧縮率を算出する。圧縮率は、
（圧縮後の分割ファイルのサイズの総和）
÷  （ＶＭイメージファイル６のファイルサイズ）
で求める。
【００６３】
３分割後の圧縮率と、分割前のＶＭイメージファイル６の圧縮率との差を算出する。分割前のＶＭイメージファイル６の圧縮率は、
（圧縮後のＶＭイメージファイル６のファイルサイズ）
÷  （ＶＭイメージファイル６のファイルサイズ）
で求める。この圧縮率を比較元圧縮率とする。
【００６４】
３分割後の圧縮率と、分割前のＶＭイメージファイル６の圧縮率との差が、所定値（例えば、０．０５（５％））以下であるか否かを判断する。所定値以下である場合、分割数を所定数分増やす。例えば、所定数を２とした場合、ＶＭイメージファイル６を５分割する。ＶＭイメージファイル６を５分割した場合の圧縮率を算出する。比較元圧縮率と５分割の圧縮率との差が所定値以下であるか否かを判断する。
【００６５】
所定値以下の間、分割数を増やして、比較元圧縮率と比較する。所定値を超えた分割数の１つ前の分割数を最適な圧縮率となる分割数（以下、最適分割数と言う）であると判断する。最適分割数とは、即ち、比較元圧縮率との差を所定値（例えば、０．０５（５％））内で維持する最大の分割数である。ここでは、７分割で圧縮率が悪くなり、結果、最適分割数は５であると判断する。
【００６６】
登録処理部３１は、ＶＭイメージファイル６を最適分割数で均等に分割する（ステップＳ５３）。１５ＧｂｙｔｅのＶＭイメージファイル６を均等に５分割する。１の分割ファイル６ｄは３Ｇｂｙｔｅである。
【００６７】
そして、登録処理部３１は、分割ファイル６ｄを夫々圧縮して、解凍することで、各分割ファイル６ｄの圧縮後のファイルサイズと、非圧縮時のファイルサイズ及び解凍時間とを取得する（ステップＳ５４）。
【００６８】
登録処理部３１は、各分割ファイル６ｄを圧縮して解凍する処理を圧縮解凍処理部３２に行わせる。圧縮解凍処理部３２は、分割ファイル６ｄを圧縮した結果の圧縮ファイルサイズと、圧縮後に解凍するまでの解凍時間とを戻り値として登録処理部３１に通知する。
【００６９】
図９にて、転送制御サーバ３０の登録処理部３１は、圧縮ファイル転送時間と、非圧縮ファイル転送時間とを算出し、ステップＳ５４（図８）で得た各分割ファイル６ｄの解凍時間と、算出した圧縮ファイル転送時間及び非圧縮ファイル転送時間とを転送時間管理テーブル３０ｅに登録する（ステップＳ５５）。
【００７０】
圧縮ファイル転送時間は、
圧縮ファイルサイズ  ×  ファイル転送レート
により求める。
また、非圧縮ファイル転送時間は、
非圧縮ファイルサイズ  ×  ファイル転送レート
により求める。
ファイル転送レートには、管理者１が入力した「０．６Ｇｂｐｓ」が代入される。
【００７１】
ステップＳ５５での登録処理によって、転送時間管理テーブル３０ｅには、５個の分割ファイル６ｄに対して、解凍時間、圧縮ファイル転送時間、非圧縮ファイル転送時間、圧縮状態が設定される。圧縮状態は、次のステップＳ５６で設定される。
【００７２】
次に、圧縮判定部３３は、分割ファイル６ｄの圧縮及び非圧縮のパターンの内、最適な転送方法を決定し、各分割ファイル６ｄの圧縮状態をファイル転送時間管理テーブルに登録する（ステップＳ５６）。
【００７３】
最適な転送方法とは、総解凍時間が総転送時間以下（総解凍時間≦総転送時間）となる、分割ファイル６ｄの圧縮及び非圧縮のパターンによる転送を言う。以下、総解凍時間が総転送時間以下（総解凍時間≦総転送時間）を転送条件と言う。
【００７４】
総解凍時間は、最初に転送する分割ファイルの転送時間に、圧縮された分割ファイル６ｄを全て解凍するのに掛る解凍時間の総和を加算した合計時間で表される。総解凍時間は、
最初の転送ファイルの転送時間  ＋  圧縮された全分割ファイルの解凍時間の総和
で求める。最初の転送ファイルは、圧縮された分割ファイル６ｄの内、一番転送時間が短いファイルである。
【００７５】
また、総転送時間は、圧縮又は非圧縮の分割ファイル６ｄを全て配置対象サーバ４に転送するのに掛る合計時間である。
【００７６】
圧縮判定部３３による、最適な転送方法となる分割ファイル６ｄの圧縮及び非圧縮のパターンの判定例について説明する。先ず、５個の分割ファイル６ｄの全てを圧縮した場合、総解凍時間は「１２５」秒であり、総転送時間は「１００」秒である。総解凍時間「１２５」秒が総転送時間「１００」秒より長いため、最適な転送方法に該当しない。
【００７７】
圧縮判定部３３は、分割ファイル「ＶＭ−０００１」から順に１つを非圧縮にした場合で、転送条件を満足するか否かを判定する。非圧縮にする分割ファｓイル６ｄの選択順は任意である。この例では、分割ファイル「ＶＭ−０００５」で、総解凍時間は「１０４」秒であり、総転送時間は「１０４」秒であるため、転送条件を満足する。
【００７８】
圧縮判定部３３は、転送条件を満足した分割ファイル６ｄの圧縮状態を、転送時間管理テーブル３０ｅの圧縮状態に設定する。
【００７９】
図１０にて、転送制御サーバ３０の登録処理部３１は、転送時間管理テーブル３０ｅの圧縮状態に従って、ファイル管理ディレクトリ３０ｄ内の各分割ファイルを圧縮又は非圧縮する。「非圧縮する」とは、圧縮せずに元のデータファイルのままにしておくことである。
【００８０】
この例では、分割ファイル「ＶＭ−０００１」〜「ＶＭ−０００４」を圧縮し、分割ファイル「ＶＭ−０００５」は非圧縮となる。
【００８１】
次に、登録処理部３１は、転送順序制御テーブル３０ｆに分割ファイル名と転送順序とを登録する（ステップＳ５８）。登録処理部３１は、以下の転送順決定方法に従い転送順序を決める。
１）転送時間管理テーブル３０ｅにおいて、圧縮状態が圧縮を示す分割ファイル６ｄの内、圧縮ファイル転送時間が短いものから順に転送する。
２）非圧縮の分割ファイル６ｄを圧縮した分割ファイル６ｄの後に転送する。
【００８２】
この例では、上記１）により、圧縮した分割ファイル「ＶＭ−０００１」〜「ＶＭ−０００４」に関して、圧縮ファイル転送時間が短い順は、「ＶＭ−０００４」、「ＶＭ−０００２」、「ＶＭ−０００１」、「ＶＭ−０００３」となる。従って、転送順序「１」から「４」が決定する。上記２）により、分割ファイル「ＶＭ−０００５」が転送順序「５」となる。
【００８３】
上述した転送順決定方法により、転送順序制御テーブル３０ｆの転送順序に順番「１」から「５」が設定される。
【００８４】
その後、転送制御サーバ３０において、管理者１からＶＭイメージファイル６の転送要求を受けると、転送制御部３４は、転送順序制御テーブル３０ｆを参照して、転送順序に従って、各分割ファイル名を指定した転送指示を送受信部３５に行う（ステップＳ５９）。送受信部３５は、指定された分割ファイル名に基づいて、ファイル管理ディレクトリ３０ｄから分割ファイル６ｄを読み出して、読み出した分割ファイル６ｄを配置対象サーバ４へ転送する。
【００８５】
次に、ステップＳ５９でのＶＭイメージファイル６の転送処理例について図１１で説明する。図１１は、転送制御サーバの転送処理例を説明するための図である。図１１において、管理者１がＶＭイメージファイル６の転送要求を行う（ステップＳ７１）。転送要求では、管理者１が、ＶＭイメージファイル６と、配置対象サーバ４のＩＰアドレスとが入力される。
【００８６】
転送制御サーバ３０の転送制御部３４は、転送順序制御テーブル３０ｆから転送順序に対応するＶＭイメージファイル６の分割ファイル名を検索する（ステップＳ７２）。最初の転送では、転送順序「１」が設定されている分割ファイル名を取得する。この場合、分割ファイル名は「ＶＭ−０００１」である。
【００８７】
転送制御部３４は、取得した分割ファイル名を指定して、送受信部３５に、分割ファイル６ｄを転送させる（ステップＳ７３）。送受信部３５は、指定された分割ファイル名を用いて、ファイル管理ディレクトリから分割ファイル６ｄを読み出して、管理者１が指定した配置対象サーバ４のＩＰアドレスに対して読み出した分割ファイル６ｄを転送する。
【００８８】
転送制御部３４は、送受信部３５によって分割ファイル６ｄが転送される毎に、全分割ファイル６ｄを転送するまで、転送順序を１加算して（ステップＳ７４）、ステップＳ７２及びＳ７３を繰り返す。管理者１が指定したＶＭイメージファイル６の分割ファイル６ｄを全て転送すると、この転送処理は終了する。
【００８９】
配置対象サーバ４では、分割ファイル６ｄを受信する毎に順次解凍し、全ての分割ファイル６ｄを解凍したら、解凍済み及び非圧縮の分割ファイル６ｄを結合して、元のＶＭイメージファイル６を復元する（ステップＳ７５）。
【００９０】
上述したように、転送制御サーバ３０は、転送条件（総解凍時間≦総転送時間）を満たす転送方法で、分割ファイル６ｄを転送するため、配置対象サーバ４において、圧縮された最後の分割ファイル「ＶＭ−０００３」が解凍した頃には、最後に転送された分割ファイル「ＶＭ−０００５」を受信できる。この例では、分割ファイル「ＶＭ−０００５」は非圧縮ファイルであるので、分割ファイル「ＶＭ−０００５」の受信により、配置対象サーバ４は、解凍処理の完了を待つことなく、全分割ファイル「ＶＭ−０００１」〜「ＶＭ−０００５」を結合することができる。
【００９１】
以下各処理についてフローチャートで説明する。転送制御サーバ３０の登録処理部３１による登録処理について説明する。図１２及び図１３は、登録処理を説明するためのフローチャート図である。
【００９２】
図１２にて、転送制御サーバ３０の登録処理部３１は、設計者１からユーザインタフェース３１５を介してＶＭイメージファイル６の登録要求を受け付ける（ステップＳ１０１）。登録処理部３１は、設計者１によって入力されたＶＭイメージファイル６のファイルサイズを原本ファイルサイズに設定する（ステップＳ１０１）。登録処理部３１は、圧縮解凍処理部３２によってＶＭイメージファイル６を圧縮し、圧縮後のファイルサイズを取得して、圧縮後サイズに設定する（ステップＳ１０２）。そして、登録処理部３１は、圧縮後サイズを原本ファイｒサイズで割って、比較元圧縮率を求める（ステップＳ１０３）。
【００９３】
登録処理部３１は、分割数に１を設定して（ステップＳ１０５）、カウンタを初期値（０より大きい整数）から開始して所定値ずつ増加し到達値に達するまで、ステップＳ１０７からＳ１１２までの処理を繰り返す（ステップＳ１０６）。例えば、初期値を５、所定値を５、到達値を５０とする。初期値、所定値、及び到達値は、管理者１によって設定されても良い。
【００９４】
登録処理部３１は、ＶＭイメージファイル６をカウンタ値で均等に分割して（ステップＳ１０７）、圧縮解凍処理部３２によって、各分割ファイル６ｄを圧縮する（ステップＳ１０８）。登録処理部３１は、圧縮解凍処理部３２から圧縮後の各分割ファイル６ｄのファイルサイズを取得する。
【００９５】
登録処理部３１は、圧縮後の各分割ファイル６ｄのファイルサイズを合計して、合計圧縮サイズを求める（ステップＳ１０９）。そして、登録処理部３１は、圧縮率を算出する（ステップＳ１１０）。
【００９６】
圧縮率  ＝  （合計圧縮サイズ）／（原本ファイルサイズ）
により、圧縮率を算出する。
【００９７】
登録処理部３１は、ステップＳ１１０で得た圧縮率とステップＳ１０４で算出した比較元圧縮率との差が所定値（例えば、０．０５）以下であるか否かを判断する（ステップＳ１１１）。所定値以下の場合、登録処理部３１は、カウンタ値を分割数に設定する（ステップＳ１１２）。従って、所定値以下の間は、分割数が更新され大きくなる。所定値より大きくなった場合、又は、到達値までカウントした場合、登録処理部３１は、図１３のステップＳ１１３へと進む。
【００９８】
図１３にて、登録処理部３１は、ＶＭイメージファイル６を分割数で均等に分割し（ステップＳ１１３）、圧縮解凍処理部３２によって、各分割ファイル６ｄを圧縮して解凍する（ステップＳ１１４）。登録処理部３１は、圧縮解凍処理部３２から各分割ファイル６ｄの解凍時間を取得する。
【００９９】
登録処理部３１は、解凍時間を転送時間管理テーブル３０ｅの解凍時間に登録する（ステップＳ１１５）。転送時間管理テーブル３０ｅの解凍時間に、圧縮解凍処理部３２から取得した各分割ファイル６ｄの解凍時間が設定される。
【０１００】
また、登録処理部３１は、各分割ファイル６ｄの非圧縮時のファイル転送時間を計算する（ステップＳ１１６）。
【０１０１】
転送時間  =  ファイルサイズ×８(bit)  ÷  転送するネットワーク帯域
により計算する。登録処理部３１は、非圧縮時の転送時間をファイル転送時間管理テーブル３０ｅの非圧縮ファイル転送時間に登録する（ステップＳ１１７）。
【０１０２】
次に、登録処理部３１は、各分割ファイル６ｄの圧縮時のファイル転送時間を計算する（ステップＳ１１８）。
【０１０３】
転送時間  =  ファイルサイズ×８(bit)  ÷  転送するネットワーク帯域
により計算する。登録処理部３１は、圧縮時の転送時間をファイル転送時間管理テーブル３０ｅの圧縮ファイル転送時間に登録する（ステップＳ１１９）。
【０１０４】
そして、登録処理部３１は、各分割ファイル６ｄの圧縮／非圧縮の最適パターン抽出及び転送時間を算出して、最短転送時間を取得する圧縮／非圧縮決定処理（図１４）を行う（ステップＳ１２０）。
【０１０５】
登録処理部３１は、分割ファイル６ｄを圧縮／非圧縮の最適パターンに従って、圧縮解凍処理部３２によって圧縮して、ファイル管理ディレクトリ３０ｄに格納することにより配置する（ステップＳ１２１）。
【０１０６】
登録処理部３１は、転送順序制御テーブル３０ｆに各分割ファイルの転送順序を登録する転送順序登録処理（図１７）を行う（ステップＳ１２２）。登録処理部３１は、最短転送時間を取得して、この登録処理を終了する。
【０１０７】
ステップＳ１２０での圧縮／非圧縮決定処理について図１４から図１６で説明する。図１４から図１６は、圧縮／非圧縮決定処理を説明するためのフローチャート図である。図１４にて、登録処理部３１は、第１カウンタを１から分割ファイル数まで１づつ増加しながら繰り返すループＡを行う（ステップＳ２０１）。
【０１０８】
登録処理部３１は、第１カウンタが１より大きいか否かを判断する（ステップＳ２０２）。第１カウンタが１である場合、登録処理部３１は、転送時間管理テーブル３０ｅの圧縮状態に「圧縮」を設定して（ステップＳ２０３）、ループＢを行うためステップＳ２０６へと進む。
【０１０９】
一方、第１カウンタが１より大きい場合、登録処理部３１は、転送時間管理テーブル３０ｅの圧縮状態が「圧縮」を示すレコードの内、圧縮ファイル転送時間が最も長い値を示すレコードの圧縮状態を「非圧縮」に変更する（ステップＳ２０４）。また、登録処理部３１は、転送時間管理テーブル３０ｅの圧縮状態が「圧縮」を示すレコードの内、圧縮ファイル転送時間が最も短い値を初回ファイル転送時間に設定して（ステップＳ２０５）、ループＢを開始する。
【０１１０】
登録処理部３１は、第２カウンタを１から分割フィル数まで１づつ増加しながら繰り返すループＢを行う（ステップＳ２０６）。登録処理部３１は、転送時間管理テーブルからレコードを１つ読み出して（ステップＳ２０７）、圧縮状態が「圧縮」を示すか否かを判断する（ステップＳ２０８）。
【０１１１】
圧縮状態が「非圧縮」を示す場合、登録処理部３１は、総転送時間に転送時間管理テーブルの非圧縮ファイル転送時間を加算して（ステップＳ２０９）、図１５のステップＳ２１２へと進む。
【０１１２】
一方、圧縮状態が「圧縮」を示す場合、登録処理部３１は、総解凍時間にレコード内の解凍時間の値を加算して（ステップＳ２１０）、総転送時間にレコード内の圧縮ファイル転送時間の値を加算する（ステップＳ２１１）。そして、登録処理部３１は、図１５のステップＳ２１２へと進む。
【０１１３】
図１５にて、登録処理部３１は、評価する分割ファイル６ｄはまだあるか否かを判断する（ステップＳ２２１）。ループＢに対して、分割ファイル数分繰り返し処理したか否かが判断される。評価する分割ファイル６ｄがまだある場合、即ち、第２カウンタが分割ファイル数に到達していない場合、登録処理部３１は、ステップＳ２０６へ戻り、第２カウンタを１インクリメントして上記同様の処理を繰り返す。
【０１１４】
一方、分割ファイル６ｄを全て評価した場合、即ち、第２カウンタが分割ファイル数に到達した場合、登録処理部３１は、総解凍時間に初回ファイル転送時間の値を加算する（ステップＳ２２２）。
【０１１５】
登録処理部３１は、第１カウンタが１より大きいか否かを判断する（ステップＳ２２３）。第１カウンタが１の場合、登録処理部３１は、総解凍時間と総転送時間の内、短い方の時間を最小転送時間に設定して（ステップＳ２２４）、図１６のステップＳ２３４へと進む。
【０１１６】
一方、第１カウンタが１より大きい場合、登録処理部３１は、総解凍時間が総転送時間以上であるか否かを判断する（ステップＳ２２５）。総解凍時間が総転送時間より短い場合、登録処理部３１は、図１６のステップＳ２２９へと進む。
【０１１７】
図１６にて、図１５のステップＳ２２４にて総解凍時間が総転送時間より短い場合、登録処理部３１は、最小転送時間と総転送時間とを比較して（ステップＳ２２９）、総転送時間が最小転送時間より長いか否かを判断する（ステップＳ２３０）。総転送時間が最小転送時間以下の場合、登録処理部３１は、ステップＳ２３４へと進む。
【０１１８】
一方、総転送時間が最小転送時間以下の場合、登録処理部３１は、最小転送時間に総転送時間を設定して（ステップＳ２３１）、評価する圧縮及び非圧縮のパターンはまだあるか否かを判断する（ステップＳ２３４）。まだある場合、登録処理部３１は、図１４のステップＳ２０１へと戻り、ループＡに関して第１カウンタを１インクリメントし、上述した同様の処理を繰り返す。
【０１１９】
一方、全ての圧縮及び非圧縮のパターンを評価した場合、ループＡに関して処理を終了したと判断し、登録処理部３１は、この圧縮／非圧縮決定処理を終了する。
【０１２０】
図１５に戻り、ステップＳ２２５にて、総解凍時間が総転送時間以上である場合、登録処理部３１は、最小転送時間と総解凍時間とを比較して（ステップＳ２２６）、総解凍時間が最小転送時間より長いか否かを判断する（ステップＳ２２７）。総解凍時間が最小転送時間以下である場合、登録処理部３１は、図１６のステップＳ２３２へと進む。
【０１２１】
図１６にて、登録処理部３１は、転送時間管理テーブル３０ｅの圧縮状態が「非圧縮」を示すレコードの内、一番短い転送時間を示すレコードの圧縮状態を「圧縮」に変更する（ステップＳ２３３）。そして、登録処理部３１は、この圧縮／非圧縮決定処理を終了する。
【０１２２】
図１５に戻り、ステップＳ２２７にて、総解凍時間が最小転送時間より長い場合、登録処理部３１は、最小転送時間に総解凍時間を設定して（ステップＳ２２８）、図１６のステップＳ２３４へと進む。
【０１２３】
図１６にて、登録処理部３１は、評価する圧縮及び非圧縮のパターンはまだあるか否かを判断する（ステップＳ２３４）。まだある場合、登録処理部３１は、図１４のステップＳ２０１へと戻り、ループＡに関して第１カウンタを１インクリメントし、上述した同様の処理を繰り返す。
【０１２４】
一方、全ての圧縮及び非圧縮のパターンを評価した場合、ループＡに関して処理を終了したと判断し、登録処理部３１は、この圧縮／非圧縮決定処理を終了する。
【０１２５】
ステップＳ１２２での転送順序登録処理について図１７で説明する。図１７は、転送順序登録処理を説明するためのフローチャート図である。図１７において、登録処理部３１は、転送時間管理テーブル３０ｅの圧縮状態が「圧縮」を示すレコードの内、圧縮ファイルを転送時間の短い順に分割ファイル名を取得し、転送順序制御テーブル３０ｆに、分割ファイル名と転送順序とを、転送順序を１からインクリメントしながら登録する（ステップＳ３０１）。
【０１２６】
例えば、図１０の例において、転送順序制御テーブル３０ｆに、分割ファイル名「ＶＭ−０００４」及び転送順序「１」、分割ファイル名「ＶＭ−０００２」及び転送順序「２」、分割ファイル名「ＶＭ−０００１」及び転送順序「３」、そして分割ファイル名「ＶＭ−０００３」及び転送順序「４」が順に設定される。
【０１２７】
また、登録処理部３１は、転送時間管理テーブル３０ｅの圧縮状態が「非圧縮」を示すレコードの分割ファイル名を取得し、転送順序制御テーブル３０ｆに、分割ファイル名と転送順序とを既に登録されている転送順番の最大値に対して１インクリメントしながら登録する（ステップＳ３０２）。
【０１２８】
図１０の例において、転送時間管理テーブル３０ｅから分割ファイル名「ＶＭ−０００５」が取得される。そして、転送時間管理テーブル３０ｅに既に登録されている転送順番のうち最大値「４」を取得する。分割ファイル名「ＶＭ−０００５」と最大値「４」を１インクリメントした転送順番「５」とが、転送順序制御テーブル３０ｆに追加設定される。
【０１２９】
次に、転送制御部３４による転送制御処理を説明する。図１８は、転送制御処理を説明するためのフローチャート図である。図１８において、転送制御部３４は、管理者１からＶＭイメージファイルの転送要求を受け付けると（ステップＳ４０１）、転送制御部３４は、転送処理を分割ファイル数分を繰り返す（ステップＳ４０２）。ステップＳ４０２〜Ｓ４０５の処理が繰り返される。
【０１３０】
転送制御部３４は、転送順序制御テーブル３０ｆから転送順序ｃ＋１番目の分割ファイル名を取得する（ステップＳ４０３）。そして、転送制御部３４は、ファイル管理ディレクトリ３０ｄからステップＳ４０３で取得した分割ファイル名の分割ファイル６ｄを読み出して、配置対象サーバ４へ転送する（ステップＳ４０４）。
【０１３１】
分割ファイル６ｄの転送後、転送制御部３４は、ステップＳ４０４で転送した分割ファイル６ｄの情報を配置対象サーバ４へ通知する（ステップＳ４０５）。分割ファイル６ｄの情報には、圧縮又は非圧縮を示す情報と、最終転送ファイルであった場合には最終転送ファイルを示す情報とを含む。
【０１３２】
そして、分割ファイル数分の転送処理を終了すると、転送制御部３４は、この転送制御処理を終了する。
【０１３３】
次に、配置対象サーバ４での分割ファイル受信処理を説明する。図１９は、配置対象サーバでの分割ファイル受信処理を説明するためのフローチャート図である。図１９において、配置対象サーバ４の送受信部４１が転送制御サーバ３０からＶＭイメージファイルの分割ファイル６ｄを受信して（ステップＳ５０１）、分割ファイル６ｄの情報を受信する（ステップＳ５０２）。転送制御サーバ３０から受信した分割ファイル６ｄは、配置ディレクトリ４０ｄに格納される。
【０１３４】
配置制御部４２は、送受信部４１が受信した分割ファイル６ｄの情報が圧縮又は非圧縮のいずれを示すか否かを確認する（ステップＳ５０３）。分割ファイル６ｄの情報が非圧縮を示す場合、ステップＳ５０５へと進む。一方、分割ファイル６ｄの情報が圧縮を示す場合、解凍部４３によって分割ファイル６ｄを解凍する（ステップＳ５０４）。解凍部４３によって解凍された分割ファイル６ｄで置き換えて、配置ディレクトリ４０に格納される。
【０１３５】
配置制御部４２は、ステップＳ５０１で受信した分割ファイル６ｄが最終転送ファイルであったか否かを判断する（ステップＳ５０５）。ステップＳ５０２で受信した分割ファイル６ｄの情報によって、ステップＳ５０１で受信した分割ファイル６ｄが最終転送ファイルであったことを示すか否かを確認すればよい。最終転送ファイルでなかった場合、配置制御部４２は、ステップＳ５０１へ戻り、送受信部４１が分割ファイル６ｄを受信するのを待つ。
【０１３６】
一方、分割ファイル６ｄが最終転送ファイルであった場合、配置制御部４２は、配置ディレクトリ４０ｄに格納された複数の分割ファイル６ｄを結合して、ＶＭイメージファイル６を復元して置き換えて、配置ディレクトリ４０に格納される。
【０１３７】
以下に、本実施例における処理シーケンスについて図２０から図２５で説明する。図２０から図２３は、登録処理シーケンスを示す図である。図２２において、登録処理３１は、ＶＭイメージファイル６の登録要求を受け付ける（ステップＳ６０１）。ＶＭイメージファイル６の登録要求には、ＶＭイメージファイル６と、ファイル転送レートとが含まれる。
【０１３８】
登録処理部３１は、分割ファイル６ｄの圧縮率の合計が最適な分割数を決定し（ステップＳ６０２）、決定した分割数でＶＭイメージファイルを均等に分割する（ステップＳ６０３）。登録処理部３１は、以下のステップＳ６０４からＳ６１７（図１２）までの処理を分割ファイル数分繰り返す。
【０１３９】
登録処理部３１は、圧縮解凍処理部３３に圧縮要求を行う（ステップＳ６０４）。圧縮要求によって分割ファイル名が指定されている。圧縮解凍処理部３３は、圧縮要求によって指定されている分割ファイル６ｄを圧縮し、圧縮後のファイルサイズを登録処理部３１に通知する（ステップＳ６０６）。登録処理部３１は、圧縮後のファイルサイズを用いて圧縮ファイル転送時間を計算する（ステップＳ６０７）。
【０１４０】
登録処理部３１は、転送時間管理テーブル３０ｅに圧縮ファイル転送時間登録を行う（ステップＳ６０８）。分割ファイル名と圧縮ファイル転送時間とが転送時間管理テーブル３０ｅに登録され、登録処理部３１は、転送時間管理テーブル３０ｅから圧縮ファイル転送時間登録応答を受信する（ステップＳ６０９）。
【０１４１】
図２１にて、登録処理部３１は、解凍要求を圧縮解凍処理部３２に行う（ステップＳ６１０）。解凍要求で分割ファイル名が指定される。圧縮解凍処理部３２は、解凍要求で指定される分割ファイル６ｄを解凍し、登録処理部３１に分割ファイル名と解凍時間とを指定した解凍応答を行う（ステップＳ６１２）。
【０１４２】
登録処理部３１は、転送時間管理テーブル３０ｅに対して、分割ファイル名と解凍時間とを含む解凍時間登録を行う（ステップＳ６１３）。転送時間管理テーブル３０ｅにおいて、解凍時間登録で指定された分割ファイル名に対応付けて解凍時間が登録される。登録処理部３１は、転送時間管理テーブル３０ｅから解凍時間登録応答を受信する（ステップＳ６１４）。
【０１４３】
登録処理部３１は、非圧縮ファイル転送時間を計算して（ステップＳ６１５）、転送時間管理テーブル３０ｅに対して、非圧縮ファイル転送時間登録を行う（ステップＳ６１６）。非圧縮ファイル転送時間登録によって、分割ファイル名と、ステップＳ６１５で計算した非圧縮ファイル転送時間とが指定される。転送時間管理テーブル３０ｅにおいて、非圧縮ファイル転送時間登録で指定された分割ファイル名に対応付けて非圧縮ファイル転送時間が登録される。登録処理部３１は、転送時間管理テーブル３０ｅから非圧縮ファイル転送時間登録応答を受信する（ステップＳ６１７）。
【０１４４】
図２２にて、登録処理部３１は、圧縮判定部３３に対して圧縮パタン抽出要求を行う（ステップＳ６１８）。圧縮判定部３３は、各分割ファイル６ｄの圧縮又は非圧縮の最適パターンを抽出し、また、転送時間を計算して（ステップＳ６１９）、転送時間管理テーブル３０ｅに圧縮管理テーブル登録要求を行う（ステップＳ６２０）。圧縮管理テーブル登録要求には、分割ファイル名と、圧縮状態(圧縮又は非圧縮)とが指定されている。
【０１４５】
転送時間管理テーブル３０ｅにおいて、圧縮管理テーブル登録要求で指定された分割ファイル名に対応付けて圧縮状態(圧縮又は非圧縮)が登録される。圧縮判定部３３は、転送時間管理テーブル３０ｅから圧縮管理テーブル登録応答を受信する（ステップＳ６２１）。
【０１４６】
圧縮判定部３３は、登録処理部３１へ圧縮パターン抽出応答を行う（ステップＳ６２２）。登録処理部３１は、分割候補パターンで分割し、最適パターンで各分割ファイル６ｄを圧縮又は非圧縮して、ファイル管理ディレクトリに配置する（ステップＳ６２３）。
【０１４７】
図２３にて、登録処理部３１は、ステップＳ６２４からＳ６２５の処理を分割ファイル数分繰り返す。転送順序制御テーブル３０ｆに各分割ファイル６ｄの転送順序を登録する（ステップＳ６２４）。登録処理部３１から転送順序登録要求が転送順序制御テーブル３０ｆに行われる。転送順序登録要求には、分割ファイル名と、転送順序とが指定される。
【０１４８】
転送順序制御テーブル３０ｆに、分割ファイル名と、転送順序とが記憶されると、転送順序登録応答が登録処理部３１へ行われ（ステップＳ６２５）、この登録処理シーケンスが終了する。
【０１４９】
次に、転送制御シーケンスについて図２４及び図２５で説明する。図２４及び図２５は、転送制御シーケンスを示す図である。図２４にて、転送制御部３４は、ＶＭイメージフィル転送要求を受けると（ステップＳ７０１）。ＶＭイメージフィル転送要求にはＶＭイメージファイルと、配置対象サーバのＩＰアドレスとが指定される。送受信部３５に対して、分割ファイル数分、以下のステップＳ７０２〜Ｓ７０９の処理を繰り返す。
【０１５０】
転送制御部３４は、転送順序制御テーブル３０ｆに転送順序を指定した転送順序参照を行う（ステップＳ７０２）。転送順序制御テーブル３０ｆは、転送順序に対応する分割ファイル名を読み出して、転送制御部３４に対して、読み出した分割ファイル名を含む転送順序応答を行う（ステップＳ７０３）。
【０１５１】
次に、転送制御部３４は、送受信部３５に対して、ファイル転送要求を行う（ステップＳ７０４）。ファイル転送要求には、分割ファイル名と、転送先ＩＰアドレスとが含まれる。送受信部３５は、ファイル転送要求に含まれる分割ファイル名を指定して、ファイル管理ディレクトリ３０ｄに分割ファイル６ｄを要求する（ステップＳ７０５）。ファイル管理ディレクトリ３０ｄは、送受信部３５によって指定された分割ファイル６ｄを送受信部３５に提供する（ステップＳ７０６）。
【０１５２】
送受信部３５は、ＩＰ網２を介して、転送先ＩＰアドレスの配置対象サーバ４へ分割ファイル６ｄのファイル転送を行い（ステップＳ７０７）、また、転送先ＩＰアドレスの配置対象サーバ４へファイル転送通知を行う（ステップＳ７０８）。ファイル転送通知によって、ステップＳ７０７でファイル転送した分割ファイル６ｄの圧縮状態と、最終転送フラグとが通知される。
【０１５３】
そして、送受信部３５は、転送制御部３４にファイル転送応答を行う（ステップＳ７０９）。全ての分割ファイル６ｄのファイル転送を終了すると、転送制御部３４は、ＶＭイメージファイル転送応答を行う（ステップＳ７１０）。送受信部３５は、一方で、ＩＰ網２を介して、配置対象サーバ４からファイル受信の通知を受けて（ステップＳ７１１）、転送制御サーバ３０でのファイル転送は終了する。
【０１５４】
図２５にて、全ての分割ファイル６ｄを受信して、ＶＭイメージファイル６を配置する配置対象サーバ４での処理シーケンスについて説明する。配置対象サーバ４の送受信部４１は、分割ファイル数分、以下のステップＳ８０１〜Ｓ８１２の処理を繰り返す。
【０１５５】
転送制御サーバ３０から分割ファイル６ｄを受信すると（ステップＳ８０１）、配置ディレクトリ４０ｄへ格納する（ステップＳ８０２）。
【０１５６】
そして、配信制御部４２は、転送制御サーバ３０からファイル転送通知を受信すると（ステップＳ８０３）、ステップＳ８０１で受信した分割ファイ６ｄは圧縮ファイルであったか否かを判断する（ステップＳ８０４）。ファイル転送通知によって、圧縮状態に「圧縮」が指定されているか否かが確認される。圧縮ファイルでない場合、配信制御部４２は、ステップＳ８０８へと進む。
【０１５７】
一方、圧縮ファイルの場合、配信制御部４２は、解凍部４３に対して、ファイル解凍要求を行う（ステップＳ８０５）。解凍部４３は、ステップＳ８０２で配置ディレクトリ４０ｄに格納された分割ファイル６ｄを解凍する解凍処理を行った後（ステップＳ８０６）、配信制御部４２へファイル解凍応答を行う（ステップＳ８０７）。
【０１５８】
配信制御部４２は、ステップＳ８０３で受信したファイル転送通知の最終転送フラグによって、最終転送が通知されたか否かを判断する（ステップＳ８０８）。最終転送の分割ファイル６ｄでない場合、配信制御部４２は、転送制御サーバ３０へファイル受信通知を行う（ステップＳ８１２）。配置対象サーバ４での転送処理シーケンスを終了する。
【０１５９】
一方、最終転送の分割ファイル６ｄの場合、配信制御部４２は、結合部４４に対してファイル結合要求を行う（ステップＳ８０９）。結合部４４は、配置ディレクトリ４０ｄに格納された分割ファイル６ｄを結合して、ＶＭイメージファイル６を復元した後（ステップＳ８１０）、配信制御部４２へファイル結合応答を行う（ステップＳ８１１）。配信制御部４２は、転送制御サーバ３０へファイル受信通知を行う（ステップＳ８１２）。配置対象サーバ４での転送処理シーケンスを終了する。
【０１６０】
図２６は、本実施例の効果を説明するための図である。図２６（Ａ）では、圧縮したＶＭイメージファイル６を転送し、圧縮したＶＭイメージファイル６の受信後に解凍した場合を例示している。転送に１００秒掛り、解凍に１２１秒掛った場合、圧縮したＶＭイメージファイル６の転送開始から、ＶＭイメージファイル６を実行可能な状態になるまで、２２１秒掛ったことになる。
【０１６１】
図２６（Ｂ）では、本実施例における一例を示している。図２６（Ｂ）において、ＶＭイメージファイル６を均等に分割した、分割ファイル「ＶＭ−０００１」から「ＶＭ−０００５」を転送した場合を例示している。分割ファイル「ＶＭ−０００１」から「ＶＭ−０００４」は圧縮ファイルであり、分割ファイル「ＶＭ−０００５」は非圧縮ファイルである。
【０１６２】
転送制御サーバ３０から、転送時間が最短の分割ファイル「ＶＭ−０００４」が最初に転送され、非圧縮の分割ファイル「ＶＭ−０００５」が、圧縮された分割ファイル「ＶＭ−０００２」、「ＶＭ−０００１」、及び「ＶＭ−０００３」の後に転送される。
【０１６３】
配置対象サーバ４では、分割ファイル「ＶＭ−０００４」を最初に受信し、解凍を開始する。「ＶＭ−０００４」の解凍処理中に、圧縮された分割ファイル「ＶＭ−０００２」を受信し、「ＶＭ−０００４」の解凍後に解凍開始する。同様に、解凍処理中に、順次、圧縮された分割ファイル「ＶＭ−０００１」と「ＶＭ−０００３」とを受信し、解凍する。
【０１６４】
配置対象サーバ４は、圧縮された分割ファイル「ＶＭ−０００４」、「ＶＭ−０００２」、「ＶＭ−０００１」、及び「ＶＭ−０００３」が解凍されたタイミングで、非圧縮の分割ファイル「ＶＭ−０００５」を転送制御サーバ３０から受信できるため、非圧縮の分割ファイル「ＶＭ−０００５」受信と略同時に、分割ファイル「ＶＭ−０００１」から「ＶＭ−０００５」を結合することができる。
【０１６５】
本実施例では、この例の場合、分割ファイル「ＶＭ−０００４」に掛った転送時間ｔ１と、圧縮された分割ファイル「ＶＭ−０００４」、「ＶＭ−０００２」、「ＶＭ−０００１」、及び「ＶＭ−０００３」の解凍時間の合計とにより、転送を開始してから配置対象サーバ４でＶＭイメージファイル６の起動まで合計１０４秒である。図２５（Ａ）で例示した場合と比べて、配置対象サーバ４は効率的に分割ファイルを受信してＶＭイメージファイル６を復元することができるため、より迅速にＶＭイメージファイル６を起動することができる。
【０１６６】
上述より、本実施例は、ＮＦＶ（Network Function Virtualizatioin）において仮想化技術を応用した仮想マシン上のアプリケーション起動に必要なファイルの物理サーバ（配置対象サーバ４に相当）へ展開する処理を短縮化できる。これによって、管理者１はいち早くサービスを開始することができる。
【０１６７】
即ち、ＶＭイメージファイルファイルの転送時間だけでなく、ＶＭイメージファイルの転送開始から転送先サーバ（配置対象サーバ４に相当）でのアプリケーション起動、サービス開始までの時間を短くできる。
【０１６８】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【０１６９】
以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
（付記１）
データファイルを分割し、
前記データファイルを分割した複数の分割ファイルの夫々を、所定のアルゴリズムで圧縮したときの圧縮ファイル転送時間及び解凍時間と、圧縮しない非圧縮で転送したときの非圧縮ファイル転送時間とに基づいて、圧縮して転送する分割ファイルと、非圧縮で転送する分割ファイルとを決定し、
圧縮又は非圧縮を決定した前記複数の分割ファイルの転送順序を決定し、
決定した前記転送順序に従って、前記複数の分割ファイルを送信する
処理をコンピュータが行うデータ転送方法。
（付記２）
前記圧縮ファイル転送時間が最短の前記分割ファイルを最初に転送するように前記転送順序を決定することを特徴とする付記１記載のデータ転送方法。
（付記３）
圧縮した分割ファイルの転送後に、非圧縮の分割ファイルを転送するように前記転送順序を決定することを特徴とする付記１又は２記載のデータ転送方法。
（付記４）
前記圧縮した分割ファイルを圧縮ファイル転送時間の短い順に前記転送順序を決定することを特徴とする付記２又は３記載のデータ転送方法。
（付記５）
前記分割ファイルの夫々を圧縮後のファイルサイズと前記データファイルのファイルサイズとから圧縮率を計算し、
前記データファイルの圧縮率と、圧縮後の前記分割ファイルの圧縮率との差が所定値内で最大となる分割数を決定し、
前記分割数で、前記データファイルを均等に分割することを特徴とする付記１乃至４のいずれか一項記載のデータ転送方法。
（付記６）
前記分割数で均等に分割した前記複数の分割ファイルに対して、前記圧縮した分割ファイルの解凍時間を合計した総解凍時間が、圧縮した分割ファイル及び前記非圧縮の分割ファイルの転送時間を合計した総転送時間以下となる圧縮及び非圧縮のパターンを決定することを特徴とする付記５記載のデータ転送方法。
（付記７）
前記データファイルは、Virtual Machineイメージファイルであることを特徴とする付記１乃至６のいずれか一項記載のデータ転送方法。
（付記８）
データファイルを分割する分割部と、
前記データファイルを分割した複数の分割ファイルの夫々を、所定のアルゴリズムで圧縮したときの圧縮ファイル転送時間及び解凍時間と、圧縮しない非圧縮で転送したときの非圧縮ファイル転送時間とに基づいて、圧縮して転送する分割ファイルと、非圧縮で転送する分割ファイルとを決定する圧縮決定部と、
圧縮又は非圧縮を決定した前記複数の分割ファイルの転送順序を決定する転送順序決定部と、
決定した前記転送順序に従って、前記複数の分割ファイルを転送する転送部と
を有するデータ転送制御装置。
（付記９）
データファイルをサーバから装置へ転送するデータ転送システムであって、
前記サーバは、
前記データファイルを分割し、
前記データファイルを分割した複数の分割ファイルの夫々を、所定のアルゴリズムで圧縮したときの圧縮ファイル転送時間及び解凍時間と、圧縮しない非圧縮で転送したときの非圧縮ファイル転送時間とに基づいて、圧縮して転送する分割ファイルと、非圧縮で転送する分割ファイルとを決定し、
圧縮又は非圧縮を決定した前記複数の分割ファイルの転送順序を決定し、
決定した前記転送順序に従って、前記複数の分割ファイルを送信し、
前記装置は、
前記圧縮した分割ファイル及び前記非圧縮の分割ファイルの転送時間を合計した総転送時間内に、前記圧縮した分割ファイルを解凍し、
解凍した前記分割ファイルと、非圧縮で転送された前記分割ファイルとを結合して、前記データファイルを復元する
ことを特徴とするデータ転送システム。
（付記１０）
データファイルを分割し、
前記データファイルを分割した複数の分割ファイルの夫々を、所定のアルゴリズムで圧縮したときの圧縮ファイル転送時間及び解凍時間と、圧縮しない非圧縮で転送したときの非圧縮ファイル転送時間とに基づいて、圧縮して転送する分割ファイルと、非圧縮で転送する分割ファイルとを決定し、
圧縮又は非圧縮を決定した前記複数の分割ファイルの転送順序を決定し、
決定した前記転送順序に従って、前記複数の分割ファイルを送信する
処理をコンピュータに行わせるデータ転送プログラム。
【符号の説明】
【０１７０】
３０          転送制御サーバ
３０ｄ        ファイル管理ディレクトリ
３０ｅ        転送時間管理テーブル
３０ｆ        転送順序制御テーブル
３１          登録処理部
３２          圧縮解凍処理部
３３          圧縮判定部
３４          転送制御部
３５          送受信部
４            配置対象サーバ
４０          配置ディレクトリ
４１          送受信部
４２          配置制御部
４３          解凍部
４４          結合部
３１１、４１１          ＣＰＵ
３１２、４１２          メモリ
３１３、４１３          ディスク
３１４、４１４          ＮＩＣ
３１５        ユーザインタフェース
３１６        ドライブ装置
３１７          記憶媒体
３１９、４１９          ＰＣＩバス
【図１】
2015176337.tif 000003
【図２】
2015176337.tif 000004
【図３】
2015176337.tif 000005
【図４】
2015176337.tif 000006
【図５】
2015176337.tif 000007
【図６】
2015176337.tif 000008
【図７】
2015176337.tif 000009
【図８】
2015176337.tif 000010
【図９】
2015176337.tif 000011
【図１０】
2015176337.tif 000012
【図１１】
2015176337.tif 000013
【図１２】
2015176337.tif 000014
【図１３】
2015176337.tif 000015
【図１４】
2015176337.tif 000016
【図１５】
2015176337.tif 000017
【図１６】
2015176337.tif 000018
【図１７】
2015176337.tif 000019
【図１８】
2015176337.tif 000020
【図１９】
2015176337.tif 000021
【図２０】
2015176337.tif 000022
【図２１】
2015176337.tif 000023
【図２２】
2015176337.tif 000024
【図２３】
2015176337.tif 000025
【図２４】
2015176337.tif 000026
【図２５】
2015176337.tif 000027
【図２６】
2015176337.tif 000028