(57)【要約】【課題】低価格で実質上記憶容量に上限のない仮想ストレージ装置を提供する。【解決手段】送信元ホストからの書き込み要求を受けた仮想ストレージ装置１０は、インターネット２に接続された送信先ホスト２１〜２ｎの少なくとも一つに対して格納データを含むエコー要求を送信する。エコー要求を受けた送信先ホストは、格納データを含むエコー応答を返信する。仮想ストレージ装置１０は、エコー応答を受けると、再度、格納データを含むエコー要求送信する。以後、エコー要求とエコー応答を繰り返すことにより、格納データは、送信元ホストと送信先ホストとの間の通信経路上を往復し、インターネット上に長時間保持される。【選択図】図１
2007249603.tif 000002
【特許請求の範囲】
【請求項１】
ＩＰネットワークに接続されたホストに対して格納データを含むエコー要求を送信し、前記ホストから前記格納データを含むエコー応答があったなら、再度、前記格納データを含むエコー要求を前記ホストへ送信するという動作を繰り返し、前記格納データを前記ネットワーク上に存在させ続けることにより、当該ネットワークを、前記格納データを格納するための仮想ストレージ装置として利用することを特徴とするデータストレージ方法。
【請求項２】
前記格納データを前記ＩＰネットワークに接続された複数のホストに対して送信することにより、冗長性を持たせたことを特徴とする請求項１に記載のデータストレージ方法。
【請求項３】
前記エコー要求及びエコー応答がＲＦＣ７９２に規定されるエコー要求およびエコー応答であることを特徴とする請求項１又は２に記載のデータストレージ方法。
【請求項４】
コンピュータとＩＰネットワークとの間に接続され、
前記コンピュータからの書き込み要求に応じて、前記ＩＰネットワークに接続されたホストに対して格納データを含むエコー要求を送信し、前記ホストから前記格納データを含むエコー応答があったなら、再度、前記格納データを含むエコー要求を前記ホストへ送信するという動作を繰り返し行うことを特徴とする仮想ストレージ装置。
【請求項５】
前記仮想ストレージ装置が、
前記格納データの送信先となる得るホストに関する情報を格納する送信先表と、
該送信先表を更新する送信先監視部と、
前記格納データとその送信先となった前記ホストとの関係を示す情報を格納する格納データ表と、
前記コンピュータからの要求に応じ、前記送信先表および前記格納データ表を用いて前記ＩＰネットワークとのデータの送受信を制御する送受信制御部と、
を有していることを特徴とする請求項４に記載の仮想ストレージ装置。
【請求項６】
前記送受信制御部が、同一の前記格納データを複数のホストに対して送信するようにしたことを特徴とする請求項４又は５に記載の仮想ストレージ装置。
【請求項７】
前記送受信制御部と前記ＩＰネットワークとの間に接続され、これらの間で送受信されるデータをＲＦＣ７９２に規定されるエコー要求およびエコー応答として転送する転送部を備えることを特徴とする請求項４，５又は６に記載の仮想ストレージ装置。
【請求項８】
ＲＦＣ７９２に規定されるエコー要求およびエコー応答を用いてデータをＩＰネットワーク上に存在させ続けることにより、前記ＩＰネットワークを記憶媒体として利用することを特徴とするデータストレージ方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データストレージ方法及び仮想ストレージ装置に関し、特に、インターネットを記憶媒体として利用するデータストレージ方法及び仮想ストレージ装置に関する。
【背景技術】
【０００２】
近年、管理コストの削減やセキュリティ対策を目的として、ディスクレスのクライアント（端末）を有するシンクライアント（thin client）システムの需要が増加している。しかし、既存のシンクライアントシステムは、単にクライアントがローカルにハードディスクを持たないというだけで、リモートに大規模なストレージ装置を持つサーバを必要とする。このため、シンクライアントシステムの導入には、多額の設備投資が必要となる。
【０００３】
また、サーバが備えるストレージ装置は、その記憶容量に上限がある。それゆえ、格納するデータ量がその記憶容量を超えるような場合には、ストレージ装置の増設や、より記憶容量の大きいストレージ装置への置き換えが必要となり、また、ストレージ装置を置き換えた場合には、新しいストレージ装置へのデータ移行も必要となる。したがって、その維持管理に余計な費用と労力を要する。
【０００４】
このように、従来のシンクライアントシステムは、導入及びその維持管理に多大な費用と労力を必要とする。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述したように、従来のシンクライアントシステムは、その導入及び維持管理に多大ない費用と労力を必要とするが、その費用と労力の多くは、ストレージ装置のためのものである。つまり、従来のシンクライアントシステムでは、大量のデータを格納するために、磁気ディスクなどの物理的な記憶媒体を備えるストレージ装置を用意する必要があり、その記憶容量に上限がある。
【０００６】
そこで、本発明は、ストレージ装置に関する費用を低減できるとともに、上限なく大量のデータを格納できるデータストレージ方法及び仮想ストレージ装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の第１の要旨は、データストレージ方法において、ＩＰネットワークに接続されたホストに対して格納データを含むエコー要求を送信し、前記ホストから前記格納データを含むエコー応答があったなら、再度、前記格納データを含むエコー要求を前記ホストへ送信するという動作を繰り返し、前記格納データを前記ネットワーク上に存在させ続けることにより、当該ネットワークを、前記格納データを格納するための仮想ストレージ装置として利用することを特徴とする。データストレージ方法。
【０００８】
また、本発明の第２の要旨は、仮想ストレージ装置において、コンピュータとＩＰネットワークとの間に接続され、前記コンピュータからの書き込み要求に応じて、前記ＩＰネットワークに接続されたホストに対して格納データを含むエコー要求を送信し、前記ホストから前記格納データを含むエコー応答があったなら、再度、前記格納データを含むエコー要求を前記ホストへ送信するという動作を繰り返し行うことを特徴とする。
【０００９】
前記仮想ストレージ装置は、具体的には、前記格納データの送信先となる得るホストに関する情報を格納する送信先表と、該送信先表を更新する送信先監視部と、前記格納データとその送信先となった前記ホストとの関係を示す情報を格納する格納データ表と、前記コンピュータからの要求に応じ、前記送信先表および前記格納データ表を用いて前記ＩＰネットワークとのデータの送受信を制御する送受信制御部と、を有している。
【００１０】
さらに、本発明の第３の要旨は、データストレージ方法において、ＲＦＣ７９２に規定されるエコー要求およびエコー応答を用いてデータをＩＰネットワーク上に存在させ続けることにより、前記ＩＰネットワークを記憶媒体として利用することを特徴とする。
【発明の効果】
【００１１】
第１の効果は、物理的な記憶媒体を備えることなく、データを格納できることである。
【００１２】
その理由は、インターネット上の資源を記憶媒体として利用するためである。
【００１３】
第２の効果は、記憶容量の上限が実質的に無いことにある。
【００１４】
その理由は、実質的に無尽蔵のインターネット上の資源を記憶媒体として利用するためである。
【００１５】
第３の効果は、インターネット上の通信相手のホストに手を加えることなく本発明が実施できるため、コストが抑えられることにある。
【００１６】
その理由は、本発明はインターネットの通信プロトコルとしてＲＦＣ７９２で規定されているＩＣＭＰのエコー要求およびエコー応答を用いて実現できるためである。
【発明を実施するための最良の形態】
【００１７】
以下、図面を参照して、本発明を実施するための最良の形態について説明する。
【００１８】
まず、本発明の一実施の形態に係る仮想ストレージ装置の概要について図１を参照して説明する。
【００１９】
本実施の形態に係る仮想ストレージ装置１０は、送信元ホスト１のストレージ装置としてインターネット２を利用する。つまり、仮想ストレージ装置１０は、物理的記憶媒体の代わりに、インターネット２の通信経路を記憶媒体として利用する。
【００２０】
インターネット２には、多数の送信先ホスト２１，２２，・・・，及び２ｎが接続されている。これら送信先ホスト２１〜２ｎと、同じくインターネット２に接続された送信元ホスト１との間には、多数のルータ２１１〜２１ｏ，２２１〜２２ｐ，及び２ｎ１〜２ｎｑを介して、データを送受信するための経路が形成され得る。仮想ストレージ装置１０は、後述するようにハードディスク等の大量のデータを格納するための記憶媒体を有しておらず、送信先ホスト２１〜２ｎと、各ホストに至るまでの経路及び経路上のルータ２１１〜２ｎｑのバッファ領域（図示せず）を、データを記憶するための記憶媒体として利用する。
【００２１】
送信ホスト１からの書き込み要求を受けた仮想ストレージ装置１０は、格納データｄ１，ｄ２，・・・，及びｄ６を、インターネットを介して送信先ホスト２１〜２ｎへ送信する。インターネット２上に送信されたデータは、経路上の複数のルータ２１１〜２ｎｑにバッファリング（一時的に記憶）されながら中継され、送信先ホスト２１〜２ｎに到達する。ここで、送信先ホスト２１〜２ｎが受信したデータをそのまま送信元ホスト１へ返信し、送信元ホスト１が返信された格納データｄ１〜ｄ６をそのまま再送信する、という動作を繰り返せば、格納データｄ１〜ｄ６はインターネット２の通信経路上を往復しながら長時間保持される。
【００２２】
このように、本実施の形態に係る仮想ストレージ装置１０は、インターネット上にデータを存在させ続けることにより、インターネットを記憶媒体として利用する。
【００２３】
本実施の形態に係る仮想ストレージ装置１０では、同一の送信先ホストに対して複数の格納データを多重に送信することで、通信経路あたりの見かけ上の記憶容量を増やすことができる（例えば、送信先ホスト２１宛の格納データｄ１〜ｄ３）。
【００２４】
また、複数の送信先ホストに対して複数の格納データを送信することで、異なる通信経路上にデータを存在させることができ、全体の見かけ上の記憶容量を増やすこともできる（例えば、送信先ホスト２１宛の格納データｄ１〜ｄ３及び送信先ホスト２２宛の格納データｄ４〜ｄ６）。
【００２５】
さらに、同じ格納データを複製し、複数の送信先ホストに同時に送信することで、冗長化により信頼性を高めることもできる（送信先ホスト２１及び２ｎ宛の格納データｄ１〜ｄ３）。
【００２６】
仮想ストレージ装置１０は、上記動作を実現するために、管理情報や一時的にデータを記憶するバッファ等の小さい記憶領域を持つだけで良く、全てのデータを記憶するために必要となる大容量の記憶媒体を必要としない。
【００２７】
また、上記動作はインターネット２で利用されている一般的なプロトコルを用いて実現できるため、送信先ホスト２１〜２ｎに何ら手を加える必要がない。
【００２８】
次に、図２を参照して、仮想ストレージ装置１０についてより詳細に説明する。
【００２９】
図２に示すように、送信元ホスト１は、コンピュータ１１と、仮想ストレージ部１２と、転送部１３からなる。仮想ストレージ部１２と転送部１３とが、図１の仮想ストレージ装置１０に相当する。
【００３０】
コンピュータ１１は、仮想ストレージ部１２を、ストレージ装置とみなして動作する。コンピュータ１１から仮想ストレージ部１２へのアクセス要求には、データの書き込み要求（データ格納要求）、格納データの読み出し要求、格納データの削除要求の３種類がある。
【００３１】
仮想ストレージ部１２は、送受信制御部１２１と、送信先監視部１２２と、送受信バッファ１２３と、格納データ表１２４と、送信先表１２５と、表データ操作部１２６からなる。
【００３２】
送受信制御部１２１は、コンピュータ１１から仮想ストレージ部１２へのストレージアクセスの窓口として機能する。コンピュータ１１から書き込み要求が来た場合は、１つ以上の送信先に対して新規に格納データを送信する。一方、コンピュータ１１から読み出し要求が来た場合は、所望の格納データを受信するまで待ち、受信後にコンピュータ１１に返却する。また、送受信制御部１２１は、送信先と格納データの交換（送受信）を繰り返すことで、格納データをインターネット２上で常に活性化した状態に保つ。さらに、送受信制御部１２１は、格納データ表１２４と送信先表１２５を用いて、送信先ホスト２１〜２ｎのＩＰアドレスの取得や、格納データの追加や削除、データ損失が発生したか否かの判定、およびデータ損失時の復旧処理を行う。
【００３３】
送信先監視部１２２は、送信先表１２５を定期的に監視し、各送信先ホスト２１〜２ｎの疎通状態を管理する。定期的な監視では、応答時間がタイムアウトした送信先ホストを無効化する処理と、無効化してから一定時間が経過した送信先ホストを再利用のために再有効化する処理を行う。
【００３４】
送受信バッファ１２３は、１つ以上の格納データと格納データ識別子との組を、一時的に格納するための記憶領域である。
【００３５】
格納データ表１２４と送信先表１２５については後述する。
【００３６】
表データ操作部１２６は、格納データ表１２４と送信先表１２５の集計や編集を容易にするために、構造化問い合わせ言語（ＳＱＬ）によるデータ操作処理手段を実装する。
【００３７】
転送部１３は、ＲＦＣ７９２で規定されているＩＣＭＰのエコー要求（ICMP Echo Request）を送信し、そのエコー応答（ICMP Echo Reply）を受信する機能を持つ。転送部１３は、送信時には送受信バッファ１２３の内容をエコー要求のペイロードとして利用し、受信時はエコー応答のペイロードを送受信バッファ１２３に格納する。
【００３８】
インターネット２には、送信元ホスト１の通信相手として、送信先ホスト２１〜２ｎが存在しているとする。送信先ホスト２１〜２ｎの各々は、送信元ホスト１からのエコー要求を受信し、対応するエコー応答を返信する機能を持つ。
【００３９】
次に、図３を参照して、格納データ表１２４と送信先表１２５について説明する。
【００４０】
図３は、格納データ表１２４と送信先表１２５のスキーマを示す図である。図３において、下線付き文字は主キー、斜体文字は外部キーを表している。
【００４１】
格納データ表１２４は、現時点でどの格納データがどの送信先ホストと交換されているかを示す情報を保持する記憶領域である。格納データ表１２４には、格納データ識別子１２４１とＩＰアドレスとが互いに対応付けられて格納される。格納データ表１２４は、初期状態では、行数がゼロである。
【００４２】
格納データ識別子１２４１は、現時点で有効な格納データを一意に特定する識別子である。また、ＩＰアドレス１２４２は、対応する格納データ識別子１２４１の格納データの送信先ホストのＩＰアドレスである。
【００４３】
なお、格納データ表のメンバは実際のＩＣＭＰパケット内にも含まれる。具体的には、格納データ識別子１２４１はエコー要求又はエコー応答のペイロードに、ＩＰアドレス１２４２はIPヘッダに、それぞれ含まれる。
【００４４】
送信先表１２５は、全ての送信先となり得る送信先ホストのＩＰアドレスの一覧を、疎通状態に基づいて管理するための記憶領域である。送信先表１２５には、ＩＰアドレス１２５１と、有効フラグ１２５２と、タイムスタンプとが互いに関連付けされて格納される。
【００４５】
ＩＰアドレス１２５１は、送信先ホストとなり得るインターネット２上のホストのＩＰアドレスである。
【００４６】
有効フラグ１２５２は、対応するＩＰアドレス１２５１が現時点で有効であるかどうかを示す論理値である。有効フラグ１２５２が真の場合は、対応するＩＰアドレス１２５１は送信先ホストを選択する際の候補となり、逆に偽の場合は送信先ホストの候補から除外される。初期状態では、送信先表１２５に登録されている全てのＩＰアドレスに関して有効フラグ１２５２が有効となっている。
【００４７】
タイムスタンプ１２５３は、有効フラグ１２５２の値によって異なる意味を持つ。即ち、有効フラグ１２５２が真の場合、タイムスタンプ１２５３には、対応するＩＰアドレス１２５１のホストへ最後に格納データが送信された時刻が格納される。ただし、当該ＩＰアドレスが有効になってからまだ一度も格納データを送信していない場合は、タイムスタンプ１２５３には、初期値（例えば、ゼロのような特殊な最小の時刻）が格納される。一方、有効フラグ１２５２が偽の場合、タイムスタンプ１２５３には、有効フラグ１２５２が偽に遷移した時刻が格納される。
【００４８】
次に、図４から図９までのフローチャートをも参照して、図２の仮想ストレージ装置の動作ついて説明する。なお、以下の説明では、下記の定数および変数を利用する。これらの定数及び変数の可視範囲は、本実施の形態全体とする。
【００４９】
「並列送信数」：冗長化のために、格納データの複製を何個のホストに並列に展開すべきかを示す定数。並列送信数が大きいほど格納データの冗長性は高まる。
【００５０】
「受信タイムアウト」：格納データを送信してから、その返信を受信するまでの最大待ち時間を示す定数。
【００５１】
「再利用待ち時間」：一旦無効化した送信先ホストを、送信先ホストの候補として再利用するまでの待ち時間を示す定数。
【００５２】
「読み出し待ち識別子」：データ読み出し要求の対象となる格納データ識別子を保持する変数。ただし読み出し要求が無い場合は特殊な値（ここでは、ヌルとする）を格納する。
【００５３】
図４乃至図８は、送受信制御部１２１の動作を説明するためのフローチャートであって、図４はメインループ、図５乃至図８は、図４におけるステップＡ９乃至Ａ１１にそれぞれ対応するルーチンである。また、図９は、送信先監視部１２２の動作を説明するためのフローチャートである。
【００５４】
図４に示すように、送受信制御部１２１は、初期化（ステップＡ１）された後、イベントを待ち受ける。（ステップＡ２）。そして、イベントが発生したならば、送受信制御部１２１は、そのイベントの種類を判別し（ステップＡ３）、イベントの種類に応じた処理を行うという動作を繰り返す。
【００５５】
発生するイベントには、書き込み要求（ステップＡ４）、読み出し要求（ステップＡ５）、削除要求（ステップＡ６）及び格納データ受信（ステップＡ７）がある。
【００５６】
書き込み要求、読み出し要求、削除要求の３つは、コンピュータ１１からのストレージアクセス要求を契機として発生するイベントである。一方、格納データ受信は、転送部１３からの格納データ受信通知を契機として発生するイベントである。
【００５７】
送受信制御部１２１は、各イベントを受信した後、対応する処理を行う手続きを呼び出し（ステップＡ８、Ａ９、Ａ１０、Ａ１１）、実行する。
【００５８】
イベントが、書き込み要求及び格納データ受信の場合、送受信制御部１２１は、各イベントに対応する処理を行った後、エラー判定（ステップＡ１２、Ａ１３）を行い、続けて、コンピュータ１１への結果通知（ステップ１４，１５及び１７）を行う。また、イベントが削除要求の場合は、コンピュータ１１への結果通知（ステップ１７）を行う。なお、イベントが読み出し要求の場合は、エラー判定も結果通知も行わない（結果通知は、後に所望する格納―データを受信した際に実行される図８の手続きにおいて行われる。）。
【００５９】
次に、図５を参照して書き込み要求を処理する手続きについて説明する。
【００６０】
書き込み要求には、新規に格納データを格納する場合と、すでに格納された格納データの複製の再送処理を行う場合とがある。送受信制御部１２１は、まず、書き込み要求が新規書き込み要求であるのか、並列送信数の不足分を補充するためのものであるのか判定する（ステップＢ１）。
【００６１】
新規書き込み要求の場合、送受信制御部１２１には、コンピュータ１１から新規の格納データが渡されているので、その格納データ用の格納データ識別子を生成する（ステップＢ２）。一方、並列送信数の不足分を補充するためのものである場合は、既に格納データ識別子が存在するのでステップＢ２を省略する。
【００６２】
次に、送受信制御部１２１は、送信先表１２５より、有効フラグ１２５２が真である行を、タイムスタンプ１２５３が小さいものから順に取得する。これにより、現時点で送信先の候補として有効なＩＰアドレスの一覧の中から、最近利用されていないものを順に取得する（ステップＢ３）。
【００６３】
次に、送受信制御部１２１は、取得したＩＰアドレスの個数と、現時点で交換中の格納データの複製の数との和が、並列送信数以上かどうかを判定する（ステップＢ４）。
【００６４】
ステップＢ４における判定結果が偽の場合は、並列送信数を満たすだけの格納データの複製を展開できないため、想定通りの冗長性を確保できないと判断し、手続きを失敗状態で終了する（ステップＢ１０）。
【００６５】
一方、ステップＢ４における判定結果が真の場合は、格納データの複製の数が並列送信数に達するまで(ステップＢ５)、ステップＢ３で取得したＩＰアドレスの順序に従って格納データ識別子と格納データを送信し（ステップＢ６）、格納データ表１２４に送信した格納データに対応する行を追加し（ステップＢ７）、更に送信先表１２５で送信先ホストのＩＰアドレスに関連付けられたタイムスタンプ１２５３を現在の時刻で更新する（ステップＢ８）動作を繰り返す。
【００６６】
そして、格納データの複製を全て送信し終わったとステップＢ５で判定されたなら、手続きを成功状態で終了する（ステップＢ９）。
【００６７】
次に、図６を参照して読み出し要求を処理する手続きについて説明する。
【００６８】
送受信制御部１２１は、読み出し要求があると、読み出し対象の格納データ識別子を読み出し待ち識別子に格納し（ステップＣ１）、手続きを成功状態で終了する（ステップＣ２）。
【００６９】
次に、図７を参照して削除要求を処理する手続きについて説明する。
【００７０】
送受信制御部１２１は、削除要求があると、削除対象の格納データ識別子を持つ全ての行を格納データ表１２４より削除し（ステップＤ１）、手続きを成功状態で終了する（ステップＤ２）。
【００７１】
次に、図８を参照して格納データを受信した場合の手続きについて説明する。
【００７２】
まず、送受信制御部１２１は、受信した格納データの格納データ識別子と、その格納データの送信元のＩＰアドレスを持つ行を、格納データ表１２４より検索する（ステップＥ１）。
【００７３】
格納データ表１２４に対応する行が見つからなかった場合（ステップＥ２で、いいえ）は、受信タイムアウトにより当該ＩＰアドレスが無効化されたか、もしくは削除要求により当該格納データが削除されたかの何れかであるため、再送を行うことなく手続きを成功状態で終了する（ステップＥ１２）。
【００７４】
一方、格納データ表１２４に対応する行が見つかった場合（ステップＥ２で、はい）は、当該ＩＰアドレスの送信先ホストに対して格納データを再送し（ステップＥ３）、送信先表１２５で当該ＩＰアドレスに関連付けられたタイムスタンプ１２５３を現在の時刻で更新する（ステップＥ４）。
【００７５】
次に、送受信制御部１２１は、読み出し待ち識別子を参照して現在読み出し待ち状態かどうかを判定する（ステップＥ５）。読み出し待ち状態の場合（ステップＥ５で、はい）は、コンピュータ１１に読み出し結果を通知し（ステップＥ６）、読み出し待ち状態をリセットするために読み出し待ち識別子にヌルを格納する（ステップＥ７）。
【００７６】
次に、送受信制御部１２１は、格納データ表１２４より、受信した格納データの格納データ識別子と同じ格納データ識別子を持つ行の数を数えることで、当該格納データの複製が現時点でいくつの送信先ホストと交換されているかを調べる（ステップＥ８）。続いて、送受信制御部１２１は、現時点で交換中の格納データの複製の数が並列送信数未満かどうかを判定する（ステップＥ９）。
【００７７】
ステップＥ９において、現時点で交換中の格納データの複製の数が並列送信数と等しいと判定された場合は、想定通りの冗長性が確保できていると判断し、手続きを成功状態で終了する（ステップＥ１２）。
【００７８】
一方、ステップＥ９において、複製の数が並列送信数に満たないと判定された場合は、冗長性を再確保する必要があるため、図５の手続きを実行して不足分を補充する（ステップＥ１０）。そして、送受信制御部１２１は、図５の手続きの終了状態を判定し（ステップＥ１１）、その判定結果に従って本手続きを成功状態または失敗状態で終了する（ステップＥ１２、Ｅ１３）。
【００７９】
次に、送信先監視部１２２の動作について図９を参照して説明する。
【００８０】
図９に示すように、送信先監視部１２２は、ステップＦ１からステップＦ４までを繰り返し実行する。
【００８１】
詳述すると、送信先監視部１２２は、まず、一定の時間が経過するまで待つ（ステップＦ１）。
【００８２】
次に、送信先監視部１２２は、応答時間が遅いＩＰアドレスを一時的に利用不能にするために、送信先表１２５の有効フラグ１２５２が真で、かつタイムスタンプ１２５３がゼロでない全ての行について、現在時刻とタイムスタンプ１２５３の差が受信タイムアウトを超えているかどうかを調べる。そして、受信タイムアウトを超えている行については、有効フラグ１２５２を偽に、タイムスタンプ１２５３を現在時刻に、それぞれ設定する（ステップＦ２）。
【００８３】
次に、受信タイムアウトしたＩＰアドレスとの通信を確実に中断させるため、送信先監視部１２２は、送信先表１２５の有効フラグ１２５２が偽になっている全ての行について、それらの行のＩＰアドレス１２５１と同じＩＰアドレス１２４２を持つ行を、格納データ表１２４から削除する（ステップＦ３）。
【００８４】
次に、過去に一時的に利用不能にしたＩＰアドレスを再利用するため、送信先監視部１２２は、送信先表１２５の有効フラグ１２５２が偽になっている全ての行について、現在時刻とタイムスタンプ１２５３の差が再利用待ち時間を超えているかどうかを調べる。そして、再利用待ち時間を超えている行については、有効フラグ１２５２を真に、タイムスタンプ１２５３をゼロに、それぞれ設定する（ステップＦ４）。
【００８５】
以上説明したようにして、本実施の形態に係る仮想ストレージ装置は、インターネット２を記憶媒体として利用する。インターネットには既に無数のホストやルータが存在しており、未だ増加し続けている。このため、インターネットの通信経路は、データ格納領域として無尽蔵であると言え、記憶容量に上限のないストレージ装置とみなすことができる。
【００８６】
こうして、本実施の形態によれば、ディスクレスのコンピュータに、低コストで大容量の仮想ディスクを提供することができる。
【００８７】
以上、本発明について一実施の形態に即して説明したが、本発明は上記実施の形態に限定されるものではない。
【００８８】
例えば、上記実施の形態では、図２の送信先表１２５に固定のＩＰアドレスの一覧が格納されていたが、代わりにＩＰアドレスを自動的に発見するようにして、送信先表１２５を自動拡張し、記憶容量を動的に増やすようにしてもよい。これは、例えば、検索エンジンのようにＷＷＷを自動巡回する機能を加え、ＷＥＢサーバのＩＰアドレスを自動発見することで実現できる。また、一般にピンスキャン（PING Scan）またはピンスイープ（PING Sweeps）と呼ばれる手法を用いることにより、ホストのＩＰアドレスを自動発見することもできる。
【００８９】
また、上記実施の形態では、送信先ホスト２１〜２ｎに至る経路情報の管理は行っていないが、格納データをより有効に冗長化または負荷分散するため、経路情報も管理するようにしてもよい。経路情報は、例えば、トレースルート（traceroute）と呼ばれる手法を用いることにより、格納データと同じくＩＣＭＰの範疇で取得することができる。
【００９０】
また、図２において送信元ホスト１が複数存在する場合は、それらのホスト間で格納データを転送することもできる。例えば、転送元のホストがエコー要求（ICMP Echo Request）を送信する際に、送信元ＩＰアドレスを転送先のホストのＩＰアドレスに偽装すれば、対応するエコー応答（ICMP Echo Reply）は転送元のホストに届かず、代わりに転送先のホストに到達する。ここで、転送先のホストがエコー応答（ICMP Echo Reply）を受信した際に、その受信イベントをコンピュータ１１からの書き込み要求イベントと同じように扱えば、転送されたデータは以後自ホストの格納データとして扱われるようになる。
【００９１】
さらに、上記実施の形態ではインターネットを用いる場合について説明したが、エコー要求に対してエコー応答を返すように構成されたネットワーク（ＩＰネットワーク）であればよく、例えば、イントラネットに本発明を適用して、データの格納領域を組織内のネットワークに閉じれば、セキュリティを向上させることもできる。
【図面の簡単な説明】
【００９２】
【図１】本発明の一実施の形態に係る仮想ストレージ装置の概要を説明するための図である。
【図２】図１の仮想ストレージ装置の構成を示すブロック図である。
【図３】図２の仮想ストレージ装置に含まれる格納データ表と送信先表のスキーマを示す図である。
【図４】図２の仮想ストレージ装置に含まれる送受信制御部の動作を説明するためのフローチャートであって、メインループを示す図である。
【図５】図４のフローチャートに含まれるステップＡ８の詳細を示すフローチャートである。
【図６】図４のフローチャートに含まれるステップＡ９の詳細を示すフローチャートである。
【図７】図４のフローチャートに含まれるステップＡ１０の詳細を示すフローチャートである。
【図８】図４のフローチャートに含まれるステップＡ１１の詳細を示すフローチャートである。
【図９】図２の仮想ストレージ装置に含まれる送信先監視部の動作を説明するためのフローチャートである。
【符号の説明】
【００９３】
１    送信元ホスト
１０    仮想ストレージ装置
１１    コンピュータ
１２    仮想ストレージ部
１２１    送受信制御部
１２２    送信先監視部
１２３    送受信バッファ
１２４    格納データ表
１２５    送信先表
１２６    表データ操作部
１３    転送部
２    インターネット
２１〜２ｎ    送信先ホスト
２１１〜２１ｏ，２２１〜２２ｐ，２ｎ１〜２ｎｑ    ルータ
【図１】
2007249603.tif 000003
【図２】
2007249603.tif 000004
【図３】
2007249603.tif 000005
【図４】
2007249603.tif 000006
【図５】
2007249603.tif 000007
【図６】
2007249603.tif 000008
【図７】
2007249603.tif 000009
【図８】
2007249603.tif 000010
【図９】
2007249603.tif 000011