(57)【要約】 【課題】メモリ上の大きなサイズのデータを転送する場合であっても、高速にデータ転送を行うことが可能なデータ転送装置、データ受信装置、データ転送方法、及びデータ転送プログラムを提供する。【解決手段】本発明は、複数の通信回線に接続された転送先の装置に対してデータを転送するデータ転送装置であって、メモリに記憶されたデータを所定単位のデータに分割するデータ分割手段と、前記分割された各データを、前記複数の通信回線を使用して並行転送するデータ転送手段と、を備える。【選択図】図１
2007259000.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信回線に接続された転送先の装置に対してデータを転送するデータ転送装置であって、
メモリに記憶されたデータを所定単位のデータに分割するデータ分割手段と、
前記分割された各データを、前記複数の通信回線を使用して並行転送するデータ転送手段と、
を備えることを特徴とするデータ転送装置。
【請求項２】
請求項１に記載のデータ転送装置において、
前記データ転送手段は、前記複数の通信回線のうち、何れかの通信回線が使用不可である場合には、使用可能な他の通信回線を使用して前記各データを並行転送することを特徴とするデータ転送装置。
【請求項３】
請求項１に記載のデータ転送装置から並行転送された各データを受信するデータ受信装置であって、
前記各データには、インデックス番号が付加されており、
前記受信した各データを、夫々の前記インデックス番号にしたがってメモリに配置して前記データを復元することを特徴とするデータ受信装置。
【請求項４】
複数の通信回線に接続された転送先の装置に対してデータを転送するデータ転送方法であって、
メモリに記憶されたデータを所定単位のデータに分割する工程と、
前記分割された各データを、前記複数の通信回線を使用して並行転送する工程と、
を備えることを特徴とするデータ転送装置。
【請求項５】
複数の通信回線に接続された転送先の装置に対してデータを転送するコンピュータを、
メモリに記憶されたデータを所定単位のデータに分割する分割手段及び、
前記分割された各データを、前記複数の通信回線を使用して並行転送するデータ転送手段として機能させることを特徴とするデータ転送プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信回線に接続された転送先の装置に対してデータを転送するデータ転送装置等の技術分野に関する。
【背景技術】
【０００２】
例えば、光ケーブル等の通信回線に接続されたサーバ間でデータ転送を行う場合、転送対象のデータが、メモリに記憶された大きなサイズのデータ（例えばイメージデータ）であると、データ転送時間が長くなり、業務の遂行に影響が発生するという問題がある。
【０００３】
高速にデータ転送時間を行う技術として、特許文献１には、ホスト間のデータ転送をディスク装置経由で行うようにした技術が開示されている。
【特許文献１】特開平１１−８５６５５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術では、単一の回線を使用してデータ転送を行うため、データ転送をディスク装置経由で行うとしても、メモリ上の大きなサイズのデータを転送する場合には、転送時間が長くなってしまう。
【０００５】
本発明は、以上の点に鑑みてなされたものであり、メモリ上の大きなサイズのデータを転送する場合であっても、高速にデータ転送を行うことが可能なデータ転送装置、データ受信装置、データ転送方法、及びデータ転送プログラムを提供することを課題とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するため、請求項１に記載の発明は、複数の通信回線に接続された転送先の装置に対してデータを転送するデータ転送装置であって、メモリに記憶されたデータを所定単位のデータに分割するデータ分割手段と、前記分割された各データを、前記複数の通信回線を使用して並行転送するデータ転送手段と、を備えることを特徴とする。
【０００７】
請求項２に記載の発明は、請求項１に記載のデータ転送装置において、前記データ転送手段は、前記複数の通信回線のうち、何れかの通信回線が使用不可である場合には、使用可能な他の通信回線を使用して前記各データを並行転送することを特徴とする。
【０００８】
請求項３に記載の発明は、請求項１に記載のデータ転送装置から並行転送された各データを受信するデータ受信装置であって、前記各データには、インデックス番号が付加されており、前記受信した各データを、夫々の前記インデックス番号にしたがってメモリに配置して前記データを復元することを特徴とする。
【０００９】
請求項４に記載の発明は、複数の通信回線に接続された転送先の装置に対してデータを転送するデータ転送方法であって、メモリに記憶されたデータを所定単位のデータに分割する工程と、前記分割された各データを、前記複数の通信回線を使用して並行転送する工程と、を備えることを特徴とする。
【００１０】
請求項５に記載の発明は、複数の通信回線に接続された転送先の装置に対してデータを転送するコンピュータを、メモリに記憶されたデータを所定単位のデータに分割する分割手段及び、前記分割された各データを、前記複数の通信回線を使用して並行転送するデータ転送手段として機能させることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、メモリに記憶されたデータを所定単位のデータに分割し、当該分割された各データを、複数の通信回線を使用して並行転送するように構成したので、メモリ上の大きなサイズのデータを転送する場合であっても、高速に短時間でデータ転送を行うことができ、単位時間でのデータ転送量を増加させることができる。
【００１２】
また、複数の通信回線のうち、何れかの通信回線が障害等により使用不可である場合には、使用可能な他の通信回線を使用して各データを並行転送するように構成したので、耐障害性を実現することができる。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照して本発明の最良の実施形態について詳細に説明する。
【００１４】
先ず、図１乃至図３を参照して、本実施形態に係るコンピュータシステムの概要構成について説明する。
【００１５】
図１は、本実施形態に係るコンピュータシステムの概要構成例を示す図であり、図２は、コンピュータＡにおける処理ルーチンの概念図を示す図であり、図３は、コンピュータＢにおける処理ルーチンの概念図を示す図である。
【００１６】
図１に示すように、本実施形態に係るコンピュータシステムは、プログラム制御により動作するコンピュータ（中央処理装置（プロセッサ）を含むデータ処理装置）Ａ及びＢと、複数（この例では３つ）の回線（通信回線）１〜３と、を含んで構成されている。
【００１７】
なお、コンピュータＡ，Ｂはどちらも、送信、受信双方可能であるが、ここでは便宜上、コンピュータＡを送信側、コンピュータＢを受信側として説明する。
【００１８】
送信側のコンピュータＡは、図示しないが、ＣＰＵ、ＲＯＭ，ＲＡＭ，ＨＤＤ等からなる記憶部、及び通信部等を備えており、ＣＰＵが記憶部に記憶されたプログラム（本発明に係るデータ転送プログラムを含む）を実行することにより、本発明のデータ転送装置として機能し、本発明のデータ分割手段及びデータ転送手段としての、図２に示す処理ルーチンＳが構成される。
【００１９】
受信側のコンピュータＢは、図示しないが、ＣＰＵ、ＲＯＭ，ＲＡＭ，ＨＤＤ等からなる記憶部、及び通信部等を備えており、ＣＰＵが記憶部に記憶されたプログラムを実行することにより、本発明のデータ受信装置として機能し、図３に示す処理ルーチンＲが構成される。
【００２０】
送信側のコンピュータＡにおける処理ルーチンＳは、記憶部におけるメモリに記憶された要求データＳＤ０を細かい単位（所定単位）のデータに分割し、分割された各データ（以下、「ピース」と称する）にインデックス番号を付加して回線に送信する。
【００２１】
一方、受信側のコンピュータＢにおける処理ルーチンＲは、回線から受信したピースをインデックス番号にしたがってメモリ上に配置し、全ピース配置完了で受信データＲＤ０とする。
【００２２】
なお、コンピュータＡでの要求データＳＤ０をコンピュータＢに転送したものを受信データＲＤ０とし、また、コンピュータＡでのピースＳＤｎをコンピュータＢに転送したものをピースＲＤｎとする。
【００２３】
そして、上記処理ルーチンＳ及び処理ルーチンＲは回線毎に存在し、並行して動作するようになっており、これにより、ピースＳＤｎは、回線１〜３により並行転送されることになる。
【００２４】
次に、図４及び図５等を参照して、コンピュータシステムの動作について詳細に説明する。
【００２５】
図４は、コンピュータＡにおける処理を示すフローチャートであり、図５は、コンピュータＢにおける処理を示すフローチャートである。
【００２６】
先ず、図２及び図４を参照して、送信側のコンピュータＡでの動作について説明する。
【００２７】
コンピュータＡは、メモリ上に存在する要求データＳＤ０についてのサイズ等の情報をコンビュータＢに送信する（ステップ１０）。
【００２８】
次いで、コンピュータＡは、要求データＳＤ０を、ある既定のサイズで区切り（ステップ１１）、当該区切られた（分割された）各ピースに対して、要求データＳＤ０の先頭から昇順にインデックスを割り当てる。
【００２９】
なお、以降のステップ１２〜ステップ１８の処理は複数の処理ルーチンＳが並行して動作するが、ここでは、代表として、図２に示す回線１を相手にする処理ルーチンＳで説明を行うものとする。
【００３０】
コンピュータＡは、上記ステップ１１の次に、回線１が接続しているかを確認し（ステップ１２）、接続されていない場合は接続処理を行う（ステップ１７）。
【００３１】
一方、接続されていた場合、コンピュータＡは、ステップ１１で区切ったピースＳＤ４に未送信のものがあるかを確認する（ステップ１３）。
【００３２】
未送信のピースが無い場合、要求データＳＤ０の送信は完了する（ステップ１８）。
【００３３】
一方、未送信のピースがある場合（ここではインデックス４のピースＳＤ４とする）は、コンピュータＡは、未送信のうち最初に見つかったピースＳＤ４を送信済状態とする（ステップ１４）。
【００３４】
次に、コンピュータＡは、コンピュータＢに対して、上記ピースＳＤ４のピース付加情報（インデックス番号、サイズ）を回線１で送信し（ステップ１５）、続けて、ピースＳＤ４を回線１で転送（送信）する（ステップ１６）。
【００３５】
以上の処理が、全てのピースがなくなるまで繰り返し行われる。
【００３６】
次に、図３及び図５を参照して、受信側のコンピュータＢでの動作について説明する。
【００３７】
コンピュータＢは、コンピュータＡからの受信データＲＤ０の情報を受信し（ステップ２０）、受信した情報に含まれている受信データＲＤ０のサイズ分、メモリを確保する（ステップ２１）。
【００３８】
なお、以降のステップ２２〜ステップ２８の処理は複数の処理ルーチンＲが並行して動作するが、ここでは、代表として、図３に示す回線１を相手にする処理ルーチンＲで説明を行うものとする。
【００３９】
コンピュータＢは、コンピュータＡから転送されたピース付加情報を回線１で受信する（ステップ２２）。
【００４０】
次いで、コンピュータＢは、受信したピース付加情報に含まれるインデックス番号のピース（ここでは受信ピースＲＤ４であったとする）が受信済みであるか確認し（ステップ２３）、未受信であれば、ピースＲＤ４を受信済として記憶し（ステップ２４）、メモリ上の先頭からの相対箇所にピースＲＤ４を受信する（ステップ２５）。
【００４１】
一方、そのピースＲＤ４が受信済みであれば、受信したピースＲＤ４は破棄される（ステップ２７）。
【００４２】
そして、上記処理は、全てのピースの受信が完了するまで繰り返され、コンピュータＢは、全ピースをステップ２１で確保したメモリ上に配置（インデックス番号にしたがってメモリに配置）すれば、受信データＲＤ０の受信完了とする（ステップ２８）。こうして、コンピュータＡにおいて分割され複数の回線で転送された要求データＳＤ０がコンピュータＢにおいて復元されることになる。
【００４３】
図６〜図８は、ある回線で障害が発生した場合における、コンピュータＡとＢ間のピースの転送の様子を示す図である。
【００４４】
図６の例は、回線２が障害により使用不可であり接続できない場合を示しており、この場合、上記ステップ１２において、障害の発生していない使用可能な他の回線を使用してピースを転送している。これにより、全ピースをコンピュータＢに転送することができる。
【００４５】
また、図７の例は、ピースＳＤ２の送信直後、回線２の障害が発生した場合を示しており、この場合、図８に示すように、他の回線３でピースＳＤ２を再送している。これにより、全ピースをコンピュータＢに転送することができる。
【００４６】
以上説明したように、上記実施形態によれば、コンピュータＡにおけるメモリに記憶されたデータを所定単位のピースに分割し、当該分割された各ピースを、複数の回線を使用してコンピュータＢに並行転送するように構成したので、メモリ上の大きなサイズの例えばイメージデータを転送する場合であっても、高速に短時間でデータ転送を行うことができ、単位時間でのデータ転送量を増加させることができる。
【００４７】
また、複数の回線のうち、何れかの回線が例えば障害により使用不可である場合には、可能な他の回線を使用して各ピースを並行転送するようにしたので、耐障害性を実現することができる。
【００４８】
また、コンピュータＡにおいて各ピースにインデックス番号を付加して転送し、コンピュータＢにおいて各ピースに付加されたインデックス番号にしたがってメモリ上に各ピースを直接配置してデータを復元するようにしたので（メモリ上から送信してメモリ上に受信する）ことにより、メモリからメモリへの高速移送が可能となる。
【００４９】
なお、本発明は、データベースなどで作成された巨大メモリイメージを複数回線で接続された他サーバに対して高速バックアップ転送するといった用途に適用できる。
【図面の簡単な説明】
【００５０】
【図１】本実施形態に係るコンピュータシステムの概要構成例を示す図である。
【図２】コンピュータＡにおける処理ルーチンの概念図を示す図である。
【図３】コンピュータＢにおける処理ルーチンの概念図を示す図である。
【図４】コンピュータＡにおける処理を示すフローチャートである。
【図５】コンピュータＢにおける処理を示すフローチャートである。
【図６】ある回線で障害が発生した場合における、コンピュータＡとＢ間のピースの転送の様子を示す図である。
【図７】ある回線で障害が発生した場合における、コンピュータＡとＢ間のピースの転送の様子を示す図である。
【図８】ある回線で障害が発生した場合における、コンピュータＡとＢ間のピースの転送の様子を示す図である。
【符号の説明】
【００５１】
１〜３  回線
Ａ，Ｂ  コンピュータ
【図１】
2007259000.tif 000003
【図２】
2007259000.tif 000004
【図３】
2007259000.tif 000005
【図４】
2007259000.tif 000006
【図５】
2007259000.tif 000007
【図６】
2007259000.tif 000008
【図７】
2007259000.tif 000009
【図８】
2007259000.tif 000010